-5
給出一條線並給出一組點。我必須在線上找到一個距離給定點距離最小的點。 我找不到任何算法在c中執行。請提前幫助,謝謝。如何在一條線上找到最佳位置點?
給出一條線並給出一組點。我必須在線上找到一個距離給定點距離最小的點。 我找不到任何算法在c中執行。請提前幫助,謝謝。如何在一條線上找到最佳位置點?
不失一般性,該線是X軸(否則旋轉整個幾何體)。然後,你希望儘量減少
Sum √[(X - Xk)² + Yk²]
,您可以通過取消一階導數
Sum (X - Xk)/√[(X - Xk)² + Yk²] = 0
遺憾的是,這是一個非線性方程,將需要的數值方法。
作爲起始近似,您可以用平方距離之和的最小化,
Sum [(X - Xk)² + Yk²]
通過解決
Sum (X - Xk) = 0
它只是給點(X*, 0)
其中是平均橫座標。
只要沒有一個給定的點就行了,對此使用Newton-Raphson似乎工作得很好。但是,如果某些要點在線上,那麼目標是不可區分的(在這些點上),事情就不那麼好了。 – dmuir
這是一個經典*最小化問題*。你應該瞭解它。 –
從找到包含所有點的矩形開始。這給你一個X和Y的大致搜索範圍。 – user3386109
@ user3386109這個矩形不一定包含該行的任何部分。 –