二维三角测量

我正在编写一些代码来参与AI挑战。 AI挑战的主要目标是采用模拟机器人,并通过迷宫导航到目标区域。 可选的次要目标是找到放置在迷宫中的未知位置的充电器。 这全部在2D网格中完成。

我的程序可以调用一种方法从充电器获取距离测量值。 因此,使用三边测量法,我应该能够通过调用此方法来定位充电器,记录我的ai的当前位置以及充电器距离该点3次的距离。

我在维基百科http://en.wikipedia.org/wiki/Trilateration上发现了三边测量的例子,但这适用于三维空间。 我只处理2D空间。 此外,我不明白如何使用维基百科中显示的公式,在网络上搜索插入数字的工作示例,并且Google搜索中最终的坐标很少。

我不是数学专业; 我只是一个探索AI问题的爱好者。

如何计算问题的解释和步骤示例是我需要的,因为数学不是我的强项。 以下是一些示例数据:

  • 点1:x = 39,y = 28,距离= 8
  • 点2:x = 13,y = 39,距离= 11
  • 第3点:x = 16,y = 40,距离= 8
  • 任何使用我的示例数据的例子将不胜感激。 一旦我可以将我的头围绕数学,编程将非常直接。


    正如维基百科的文章所描述的那样,通过连续计算:ex,i,ey,d,j,x,y来计算(x,y)坐标。 您必须熟悉向量表示法,例如,ex =(P2 - P1)/‖P2 - P1‖表示:

  • ex,x =(P2x-P1x)/ sqrt((P2x-P1x)2 +(P2y-P1y)2)
  • ex,y =(P2y-P1y)/ sqrt((P2x-P1x)2 +(P2y-P1y)2)
  • 您的数据是:

  • P1 =(39,28); r1 = 8
  • P2 =(13,39); r2 = 11
  • P3 =(16,40); r3 = 8
  • 计算步骤是:

  • ex =(P2-P1)/‖P2-P1“
  • i = ex(P3-P1)
  • ey =(P3-P1-i·ex)/‖P3-P1-i·ex‖
  • d =‖P2 - P1“
  • j = ey(P3-P1)
  • x =(r12-r22 + d2)/ 2d
  • y =(r12-r32 + i2 + j2)/ 2j-ix / j
  • 链接地址: http://www.djcxy.com/p/84951.html

    上一篇: 2d trilateration

    下一篇: Trilateration different approaches and issues