移动机器人导航与编程:从路径规划到代码实现
1. 基于遗传算法的导航
在充满半动态障碍物的环境中,移动机器人的导航和路径重规划是一个重要问题。利用遗传算法,机器人可以先对环境进行探索,然后确定从起始位置到目标位置的可能轨迹。
1.1 节点编码与双极性值转换
首先,我们有一系列节点,如 A4 = (2,4) 编码为 (0 1 1 1 0 0) ,B1 = (2,5) 编码为 (0 1 0 1 0 1) 等。将这些序列编码为双极性值后,结果如下:
| 节点 | 原始编码 | 双极性值编码 |
| ---- | ---- | ---- |
| A4 | (0 1 1 1 0 0) | (-1 1 1 1 -1 -1) |
| B1 | (0 1 0 1 0 1) | (-1 1 -1 1 -1 1) |
| B2 | (0 1 1 1 1 0) | (-1 1 1 1 1 -1) |
| B3 | (1 0 0 1 1 1) | (1 -1 -1 1 1 1) |
| B4 | (1 0 1 1 1 1) | (1 -1 1 1 1 1) |
| A9 | (1 1 0 1 1 1) | (1 1 -1 1 1 1) |
| A10 | (1 1 1 1 1 1) | (1 1 1 1 1 1) |
1.2 路径记忆与重规划
使用时间关联记忆(TAM)来记忆路径段。在之前的模拟中,当机器人暂时被障碍物 F 阻挡时,它可以利用 TAM 矩阵找到替代路径。在训练不同路径段的 W 矩阵时,为了更好的近似,只考虑八个连续的节点。
超级会员免费看
订阅专栏 解锁全文
954

被折叠的 条评论
为什么被折叠?



