數論人生

數論是一門學科,也是我的人生。有人把酒論英雄,我用數字描天下。
正文

最短總距離

(2022-05-12 08:29:11) 下一個

在n維歐氏空間中,給定任意p( > 2)個點Pk,k = 1, 2,…, p, 我們需要找到一個點Q,使得它到每個點Pk的距離之和最小。這種點Q一定存在,可要具體找出來,卻是很難很難。多麵體的形心(centroid)不一定是Q點,某種加權平均或許能行。微積分的方法要解含有p個根式的方程,可是去掉平方根式後的高次多項式方程是無法解的。
當n=1時,問題很簡單:把PK按順序排列(可以重複),中間的任何一點都是解(當p為奇數時,隻有一個解,p為偶數時有無窮多個解)。對於一般的n,如果采用絕對值(格點)距離,即定義兩點P= (x1, x2, …, xn),Q = (y1, y2, …, yn) 之間的距離為 sigma{|xi – yi|: i = 1, 2, …, n},那麽,還是找Pk的各個分量(坐標)的中位值即可。可偏偏人類習慣的卻是歐氏距離,這還是Minkowski距離的特殊情形:d(P, Q) ^ r = sigma{ |xi – yi|^r, r = 1, 2, …, n}, r ≥ 1.
對於n = 2,即坐標平麵的情形,p = 3時的解稱為Fermat點:如果三角形有一個角至少是120度,那麽,這個頂點就是要找的點。如果所有角都小於120度,Fermat點可以按如下方式作出:以任何一條邊AB為邊長,在三角形外部作一個等邊三角形ABD;再作此等邊三角形的外接圓。連接原三角形ABC的頂點C和D;CD與外接圓的交點就是Fermat點。其證明需要用到圓內幾何的知識,如Ptolemy定理。
對於平麵四邊形的情形,如果是凸四邊形(即每個內角都小於180度),那麽,兩條對角形的交點就是要找的點;這可以用三角形不等式很容易地證明。對於凹四邊形,即有一個內角大於180度,那麽,此頂點就是要找的點;這可以用餘弦定理以及Heron公式來證明。一般地可以證明,對於一個鈍角三角形,鈍角處的兩條鄰邊之和,小於其對邊與2倍對邊上的高之和。
對於平麵上的其它m邊形,為了找到一點Q = (x, y),使得它到各點Pk的距離之和 S =: sigma{|QPk|: k = 1, 2, …, p} 達到最小,可以對x和y分別求偏導數,讓它們等於零,得到兩個根式方程。即使是p = 3,平方兩次以消去根式後,得到的是x和y的12次方程組,那是很難解出的。Minkowski不等式,
sigma{sqrt[(x – xk)^2 + (y – yk)^2]: k = 1, 2, …, p} ≥ sqrt{[sigma|x – xk|]^2 + [sigma|y – yk|]^2} 
可以給出和式S的一個下界估計。右邊的根式,當x取xk的中位值,y取yk的中位值時,達到最小。但是,這個最小值隻有當|x - xk|與|y – yk|都成比例時才能夠達到。AIME在1991年就出個一種特殊情形的問題,即要求使和式 sigma{sqrt[(2k-1)^2 + (ak)^2]: k = 1, 2, …, n} 最小,其中正實數ak之和等於17。用上述不等式,很容易得出答案。
假設點PK處具有質量(或電量)mk;那麽這個質點係的質量中心是點Po = sigma{mkPk: k = 1, 2, …, p}/M,其中,M = sigma(mk)。由此,我們可以構造集合C = {sigma[ckPk]: ck 非負, 且和為1} 。質量中心是此集合中的一點。C是凸集,即對其中任意兩個點P和Q,對任意的實數t在0與1之間,tP + (1-t)Q還在集合C中 。設P*是一個中位值點(當p為奇數時,此點唯一);如果P*在凸集C中,則它就是要找的點。否則,我們找出P*到C的最短距離:min{d(P*, P): P ∈ C} = d(P, Q),Q ∈ C,那麽此點Q就是要找的點。這個結論的證明較難,我隻能把它當作一個猜想;您若有興趣的話,可以試著去證明或否定它。

[ 打印 ]
閱讀 ()評論 (0)
評論
目前還沒有任何評論
登錄後才可評論.