【发布时间】:2015-04-09 17:15:25
【问题描述】:
这是我面临的问题:我有一个计划,但充满了障碍。我有一个愚蠢的迷路机器人。机器人不知道自己在哪里!但他知道他可以看到障碍物的一些顶点……并且使用它的传感器,他可以知道自己与每个可见顶点之间的距离。每个顶点都是障碍物的一部分。机器人不知道他的位置,所以他假设他的位置是 (0, 0)。机器人怎么知道他在地图上的位置。我正在尝试通过多点定位来解决这个问题。
问题是:如何找到N个圆之间的交点,并告诉它发生的确切点?
在任何情况下,我还没有说清楚,请问,我可以提供更多信息。
编辑:(考虑到相关的问题,我会尽量说清楚)
- 我确实想知道是否所有的圆都有一个(并且只有一个)交点,我想知道它是什么点。
- 考虑到机器人是 (0, 0),将顶点位置提供给机器人,因为他不知道自己在哪里!所以,他只能告诉每个顶点的距离和角度(实际上,他收到了坐标)。
- N大于3
【问题讨论】:
-
那么...trilateration?
-
机器人是否知道顶点的位置?
-
是的,他们是!但是……它们是相对于机器人而言的。机器人不知道与地图上 (0, 0) 相关的 X 顶点的坐标。只对他自己。
-
所以你想知道所有的圆是否有一个共同的交点?或者你想知道每对圆相交的地方吗?在这一点上问题尚不清楚。同样,你可以从你所知道的开始。如果两个圆相等,则它们在所有点相交;如果它们不相等,技术上它们可能会在一点或两点相交。当然,我说的是无穷大;但这就是你应该开始的地方。但在我说更多之前先澄清一下。
-
我很困惑。所以你有 N 个顶点 V0, V1... VN;并且每一个都是 R0, R1, ... RN 在 (0,0) 处与机器人的距离;你画圆心和半径为 (V0, R0), (V1, R1),... (VN, RN);你想找到所有这些圆圈的交点吗?当然,它们在 (0,0) 处相交。这实际上是同义反复。
标签: algorithm math geometry artificial-intelligence robotics