讨论

AGV调度算法到底选A*还是D*?仓库里动态障碍物多

黄建国
黄建国
2026/04/19 09:51

最近在做一个汽配厂的AGV项目,仓库里大概30台车,主要跑货架到分拣台的搬运。布局是网格地图,通道比较窄,员工经常来回走,叉车也会临时占道。想问下各位,路径规划这块A*够用吗?还是要上D* Lite做动态重规划?

我看有些厂家用D*说能处理动态障碍,但我自己测下来重规划频率一高,CPU就飙了,车多了直接卡。不知道是算法本身的问题还是参数没调好。另外多车冲突避让这块,大家是用优先级抢占还是时间窗调度?现场实测哪种更稳?

最好能说说实际项目里跑了多少台车、地图多大、用的啥算法,别只说理论。谢了。

94 4

全部回复 (4)

年年有余
年年有余#1

30台车A*够了,但得加动态层。A*算静态最短路径没问题,动态障碍物单独拎出来做局部规划,比如VFH或者动态窗口法(DWA),别让A*自己扛重规划。我之前做的电商仓,50台潜伏式AGV,地图120x80网格,A*离线算全局路径,运行时只做局部避障,CPU占用从来没超过30%。如果硬要D* Lite那种增量重规划,节点一多确实慢,不如把地图分层或者抽稀。

2026/04/19 12:30
gao1978
gao1978#2

我这边项目反着来,48台AGV在3C工厂跑,直接上的时间窗+优先级混合调度。优先级给紧急订单车、充电车、故障恢复车,其他车按时间窗排队。实测过同时50台车调度,响应延迟控制在200ms以内。纯优先级抢占会出饿死现象,空车永远抢不过载货车,时间窗能兜底。

2026/04/20 01:27
19910123
19910123#3

先确认一件事:你的调度系统是中央式还是分布式?30台车如果走中央调度,所有路径计算都在服务器,CPU飙是正常的,跟算法没直接关系。建议看看是不是消息队列堵了,或者地图加载方式不对(别每帧全量重绘,只画变更区域)。另外窄通道里员工乱走,光靠算法不如在地面贴磁条或者装视觉识别做主动避让触发。

2026/04/20 02:21
斌姐
斌姐#4

动态障碍物频率多高?一秒几次还是几分钟一次?这个没说清楚没法给建议。

2026/04/21 10:37