I have a limited set of "occupied" circular areas on a 2D-area ($x$ and $y$ axes). These circles are defined by a center point $(x_n,y_n)$, with $n=1,2,\ldots$ and a common fixed radius $r$. Those values are known.
For a game I’m making, I want to find the closest point to the user’s location $(x_u,y_u)$ that is not within the circles. I think this means I want to find the $x$ and $y$ such that
$$(x-x_u)^2+(y-y_u)^2$$
is minimized, while for each $n$,
$$(x-x_n)^2+(y-y_n)^2> r^2.$$
Note: In case the optimal solution differs from a fast one, I do not need to find the optimal solution every time, but a fast algorithm that gives me a reasonably good result. (Reasonably meaning that a user will not instantly react and see that it is wrong).
I guess this has been already solved somewhere but I could not find where. Pointers to question/answer are welcome.
P.S. Maybe making "guesses" on a spiral out from the user location could work, but I think there are much better solutions.
Update to clarify 1: All circles are occupied area. I want to find a location outside all circles.
Update 2: Sometimes the user location itself can be the solution. If outside of all circles.
Update 3: Circles can be anywhere, overlap etc.
Example image when user is inside circle(s). Then the task is to find the closest non-colored area near the star(the user). Note that intersections are marked also as I think they are relevant.

Update 4 More info based on a comment about optimization: The circles will stay and the user may move, when next calculation is done. When a spot is found another circle may be added there (based on user actions).
I think you can iterate over all arcs that don’t lie inside any circle or form the boundary of the area of union of all circles and for each arc find the minimum distance from that point where you’re standing. Exception would be when current position is the answer.