Picking the point on a sphere furthest from all points?

82 Views Asked by At

2D Version of the problem (With tentative solution)

You are given a set of vectors $V = \{v_i\}$ And you are guaranteed that they are all unit length.

You want to find a vector $x$ such that $x$ is as far away on the surface of the circle from all other points.

In 2D you can pick a random $v_0$ then pick an orientation for your space. Sort all $v_i$ relative to the angle they form with $v_0$. Then for every pair of consecutive points, pick the largest oriented angle (i.e. angles > $\pi$ are allowed). Add a new point at the bisectrice of this angle.

So for example in this case, the point F is added in between points E and B because they form the largest angle.

enter image description here enter image description here

3D version of the problem

I am looking for solving the same problem in 3D, i.e. finding a point such that it maximizes it's geodesic distance/angle with its closest point in the original set. More formally.

Given $v_i$ s.t $\|v_i\| = 1$ find $x$ such that $\|x|\ = 1$ and for all $v in \mathbb{R}$ with $\|v\| = 1$, $x \cdot v_\alpha <= v \cdot v_\beta$ where $v_\alpha$ is the closest point to $x$ and $v_beta$ is the closest pint to $v$.

I am struggling finding a solution because you cannot sort points in 3D by angle the way you can in 2D. And in 2D you can easily define where to add the point based on a triangle, but the equivalent terahedron in the 3D problem is trickier to define.

2

There are 2 best solutions below

8
On BEST ANSWER

In 2D, we are motivated to bisect the angle because the point furthest from all given points has to be at the same distance from two of them. If the maximizer were, theoretically, closer to one point than all the others, then you could move it away from that point by a tiny bit and improve the minimum distance.

Similarly, in 3D, we can start there: given the points $v_1, v_2, \dots, v_n$ on the sphere, the optimal point $x$ minimizing $\max\{x \cdot v_1, \dots, x \cdot v_n\}$) cannot have one single point $v_i$ such that $x \cdot v_i > x \cdot v_j$ for all $j \ne i$. If that were so, we would just move $x$ by a tiny amount away from $v_i$, decreasing $x \cdot v_i$ while possibly increasing all other angles, and possibly improving the minimum angle.

What's more, if we reach a point where $x \cdot v_i = x \cdot v_j$, we are still not done. In this case, $x$ lies on the great circle of all points on the sphere equidistant from $v_i$ and $v_j$: the intersection of the sphere with the plane perpendicular to $v_i - v_j$. There is (usually, see caveat later) some direction to go in on the great circle that decreases both $x \cdot v_i$ and $x \cdot v_j$. So in fact, we know that the best point $x$ must satisfy $x \cdot v_i = x \cdot v_j = x \cdot v_k$ for three points $v_i, v_j, v_k$.

At this point, we can solve the problem by a finite search: for each triple $\{v_i, v_j, v_k\}$, find the two points on the circle such that $x \cdot v_i = x \cdot v_j = x \cdot v_k$, and then see which of the $2\binom n3$ points we found is best.

There is, finally, a caveat that some very unbalanced point configurations might defy the analysis above. Suppose that $v_i$ and $v_j$ are the two points closest to $x$, $x \cdot v_i = x\cdot v_j > x \cdot v_k$ for all other points $k$, and the reason we cannot move $x$ along the great circle of points equidistant from $v_i$ and $v_j$ is that $x$ is already the point on that circle furthest from $v_i$ and $v_j$. (It is really weird that $v_i$ and $v_j$ are the two points closest to $x$, and yet $x$ cannot get any further away from them, but it can happen when all the other points are contained in a spherical cap between $v_i$ and $v_j$.)

There are $\binom n2$ more points of this type: they satisfy $x \cdot v_i = x \cdot v_j$ as well as $x \cdot (v_i \times v_j) = 0$, so once again we can find such a point for each pair $\{v_i, v_j\}$ and check them as well. Actually, for each pair $\{v_i, v_j\}$, this system of equations gives us two points on the sphere; we might as well check them both, even though one of them is just the midpoint of the chord joining $v_i$ to $v_j$ and definitely isn't optimal.

1
On

Take two points $A$ and $B$ on the circle's circumference, If $O$ is the center then, there are two angles formed viz. $\angle AOB = X$ and $\angle (360 - \angle AOB) = Y$

$X + Y = 360$

Both $X$ and $Y$ are (angular) distances and you want $X$ and $Y$ to be as large as possible.

Suppose there's an upper limit to the values $X$ and $Y$ can take on, say U. Then for both $X$ and $Y$ to be as large as possible, $X = Y = U$ i.e $X - Y = 0$

i) $X + Y = 360$
ii) $X - Y = 0$
Ergo,
$X = Y = 180$ degrees.

For a point to be as far away as possible from all other points on a circle, it must, cogito, satisfy this condition.