一般情况很复杂,但特殊情况
A=(x1,y1) 和 B=(x1,-y1) 和 r > sqrt(x1^2+y1^2)
以圆心为原点的圆具有足够的对称性,至少在某些情况下可以使解决方案变得可访问。我假设A ≠ B,(相当于y1 ≠ 0),否则这个问题对于一个圈子来说是微不足道的。
让dist(P,Q) 是点P 和Q 之间的欧几里得距离。连接A 和B 的(闭合)线段是点P 与
的轨迹
dist(P,A) + dist(P,B) = dist(A,B)
对于D > dist(A,B),点的轨迹与
f(P) = dist(P,A) + dist(P,B) = D
是一个椭圆E(D),其焦点是A和B。设P 为圆上的一个点,D = f(P)。
- 如果在点
P 中圆和椭圆E(D) 的切线不重合,则P 既不是局部最小值也不是局部最大值f 仅限于圆。李>
- 如果切线重合,并且圆的曲率大于
P 中E(D) 的曲率,则P 是限制在圆内的f 的孤立局部最大值。
- 如果切线重合,并且圆的曲率小于
P 中E(D) 的曲率,则P 是限制在圆内的f 的孤立局部最小值。
- 如果切线重合并且圆的曲率等于
P中E(D)的曲率,则
-
P 是f 的孤立局部最小值,如果dist(P,A) = dist(P,B) 限制在圆圈内,
-
P 既不是局部最大值,也不是 f 的局部最小值,否则仅限于圆圈。
首先,如果x1 = 0,很容易看出(如果几何上不明显)最小化f的圆上的点是x坐标为0的点,即P1 = (0,r)和@ 987654363@。 [如果r² ≤ x1² + y1²,那甚至是真的。]
现在,假设x1 ≠ 0,不失一般性x1 > 0。那么很明显,圆上最小化f 的点P = (x,y) 必须有x > x1。根据情况的对称性,点R = (r,0) 必须是局部最小值或局部最大值f 限制在圆内。
计算f 在R 附近的行为,发现R 是局部最小值当且仅当
r ≥ (x1² + y1²) / x1
由于R 是E(f(R)) 的最小曲率点(R 到E(f(R)) 的切线与圆重合),因此R 也是全局最小值。
如果r < (x1² + y1²) / x1,则R 是限制在圆内的f 的局部最大值。然后f 在圆上有两个全局最小值,具有相同的 x 坐标。不幸的是,我没有一个很好的公式来计算它们,所以我无法提供比迭代搜索更好的方法。