我执行的Monte-Carlo定位为我的机器人,它被赋予地图的环境和它的起始位置和方向。我的方法如下:蒙特卡洛定位的移动机器人
- 一致在每一步产生围绕给定的位置500米的颗粒
- 然后:
- 运动更新所有与里程计的颗粒(我的当前方法是下一页末= oldX + odometryX(1 + standardGaussianRandom)等)
- 使用声纳数据(公式为每个传感器概率* = gaussianPDF(realReading)其中高斯具有平均predictedReading)
- 返回的粒子与最大概率作为升分配权重给每个粒子ocation在该步骤
- 然后新粒子的9/10从旧的根据权重和1/10围绕预测位置
均匀采样的再采样现在,我写一个模拟器机器人的环境,这里是这个本地化如何表现:http://www.youtube.com/watch?v=q7q3cqktwZI
我非常害怕,在较长的时间内机器人可能会迷路。如果将粒子添加到更广的区域,机器人会更容易丢失。
我期待更好的表现。有什么建议?
请不要在[多个堆栈交换站点](http://robotics.stackexchange.com/q/2337/37)上提出同样的问题。如果您不小心问错了网站,可以将其迁移到正确的网站。 –
将其迁移到机器人 – Neo