1

我有一个涉及 3d 定位的问题 - 有点像 GPS。给定一组已知的 3d 坐标(发射器)及其与未知点的距离 d,我想找到未知点(接收器)。有 8 个已知点。距离精确到大约 0.3 毫米,我想进行多点定位以找到接收器的最精确位置。

但是在任何给定的时间点,从这些已知点之一到未知点的距离可能会受到阻碍,并且会给出不正确的距离结果。此外,在任何给定点,非阻塞(和可用)范围可能会偏离 8.7 毫米的恒定误差(尽管如果我检测到这一点,我可以很容易地纠正它)。

解决此问题的最佳方法是什么?由于我的数据不太可能有一个精确的解决方案(所有 4 个以上的球体都可能没有一个完美的交点),因此算法需要能够对其进行近似。我见过依靠迭代来确定最小误差的算法,但是如何过滤掉不正确的范围并识别“非常数”范围?

编辑:一旦我找到一个相当自信的位置,我就可以使用这个先前的位置数据和我的更新率来过滤掉不好的结果。困难在于找到第一个位置。

4

1 回答 1

0

不要尝试使用牛顿-高斯。成本函数在成本函数的一阶导数中有一个不连续点,这使得基于牛顿的算法无法使用(它们几乎永远不会收敛)。尝试使用直接搜索算法系列(我试过了,效果很好)。有用。谷歌直接搜索功能优化算法。有很多很好的例子。这是一个相当简单的算法 - 所以它使计算变得“便宜”。但它对起点的选择有点敏感。

于 2016-12-04T14:26:25.730 回答