遗传算法在多AGV小车路径规划中避免冲突的方法主要有以下几种:
路径规划与冲突检测
单独路径规划:首先使用A*算法等对各AGV小车单独的路径进行规划,得到各AGV小车的初始路径种群。
冲突检测:在初始路径种群中寻找各AGV小车规划方案的冲突,例如节点冲突(两台AGV小车在同一时间到达相同节点,此后驶向不同方向)和相向冲突(两台AGV小车在到达相同节点后,对向行驶,在重合路径上发生冲突)。
冲突规避策略
停车等待策略:针对节点冲突情况,采用优先通行策略,即根据任务属性、剩余路径长度等因素为AGV小车赋予不同优先级。当两台AGV小车到达同一节点时,优先根据任务属性分配临时优先级,当任务属性无法区分时,分别计算两台AGV小车剩余路径长度,为剩余路径较短的AGV小车赋予较高的临时优先级并优先通行,另一台临时停靠等待。通过冲突节点后清空临时优先级。
重新寻路-临时避让策略:针对相向冲突的两种情况,除了重新寻路解决冲突问题外,还要考虑是否可以通过临时避让解决冲突。具体表现为:当AGV间出现相向冲突时,若优先级较低、AGV小车当前所在节点上存在其他可通行方向,且转向其他方向后等待另一AGV小车通过时间和原剩余路径长度行驶时间的和小于从当前节点重新规划的路径行驶时间,则优先采用临时避让策略;否则从当前节点重新规划到目标点的路径。
遗传算法优化
适应度函数设计:将冲突情况纳入适应度函数的考量,例如设置一个惩罚项,当路径存在冲突时,降低该路径方案的适应度值,使遗传算法在选择、交叉和变异操作中更倾向于选择无冲突或冲突较少的路径方案。
交叉和变异操作:在交叉和变异操作中,对产生的新路径方案进行冲突检测和规避处理,确保新生成的路径个体满足无冲突或低冲突的要求。例如,在交叉操作后,对新生成的子代染色体进行冲突检测,若存在冲突,则通过调整路径点或采用上述冲突规避策略进行修正。
其他辅助方法
时间窗模型:引入时间窗模型,为每个AGV小车的路径规划分配时间窗,确保在同一时间内不同AGV小车不会占用相同的节点或路径段,从而避免冲突。
动态路径规划:在AGV小车运行过程中,实时监测路径情况和AGV小车状态,当出现新的冲突或干扰时,及时调整路径规划,重新计算无冲突的路径方案。