最小化坐标之间的距离方差的算法

时间:2012-05-25 03:57:02

标签: algorithm

我一直在寻找能够优化2个坐标列表之间的距离并选择哪个坐标应该在一起的算法。

说我有清单1:

205|200
220|210
200|220
200|180

清单2:

210|200
207|190
230|200
234|190

Coords之间的距离计算:

205|200 to 210|200 == 5.00
205|200 to 207|190 == 10.20
205|200 to 230|200 == 25.00
205|200 to 234|190 == 30.68

220|210 to 210|200 == 14.14
220|210 to 207|190 == 23.85
220|210 to 230|200 == 14.14
220|210 to 234|190 == 24.41

200|220 to 210|200 == 22.36
200|220 to 207|190 == 30.81
200|220 to 230|200 == 36.06
200|220 to 234|190 == 45.34

200|180 to 210|200 == 22.36
200|180 to 207|190 == 12.21
200|180 to 230|200 == 36.06
200|180 to 234|190 == 35.44

此算法将选择:

205|200 to 230|200 == 25.00
220|210 to 207|190 == 23.85
200|220 to 210|200 == 22.36
200|180 to 234|190 == 35.44

算法会选择这些数字,因为它们将是距离之间最小差异的组。 条件:

  1. 每个列表中只能使用一个坐标
  2. 如果List 1或List2大于它仍然只使用每个坐标一次,但它会尝试获得最小的距离方差,并且对未使用的坐标不做任何操作。
  3. 如果您需要更多说明,请询问。

    P.S。我看过匈牙利语算法,看起来它会完成这项工作,但不完全是我的预期。匈牙利算法只会尝试与所有坐标建立最小距离,这可能意味着最小的方差,但不是每次都是因为方差在这里最重要,所以最小距离优化。

1 个答案:

答案 0 :(得分:1)

值得一看ICP algorithm。它旨在解决类似的问题