无人仓的搬运机器人调度问题
胡钰
成都环宇芯科技有限公司
二、研究背景
无人仓利用AGV 机器人进行物品搬运与管理,极大提升了仓库的作业效率与精度。然而,AGV 搬运机器人在执行任务时,可能因为同时处理多个任务而导致路径拥堵、任务延迟等问题,影响整体效率。因此,如何优化 AGV 的调度与路径规划,成为了提升无人仓系统效率的关键[2]。
三、问题分析
问题的主要任务是通过合理的调度算法,最小化 AGV 搬运机器人的总路径,并确保每个 AGV 都尽可能地忙碌。在此基础上,路径规划问题通过 Dijkstra 算法来求解,目的是计算不同点之间的最短路径,以便为后续调度优化提供数据支持。
四、模型的建立与求解
4.1 问题的模型建立与求解
问题一主要解决的是 AGV 搬运机器人的路径优化与调度问题。首先,使用 Dijkstra 算法计算仓库地图中不同节点之间的最短路径,以获得路径规划的数据支持。采用遗传算法对任务调度进行优化,确保每个AGV 的任务负载均匀,最小化所有AGV 的总路径。
根据原始数据 Map.csv 中所定义的仓库坐标以及节点类型,使用 Matlab 对其可视化以后得到图1,如下所示:
图1. 可视化仓库地图

图片说明:1. 紫色的各点之间可以移动 2. 蓝色为储位点,机器人可以到该点进行存储货物,但是不能通过(可到达但不能经过)3. 补货位节点(橙色):从高密度区补货的商品放置点,一般通过传送带输送。
迪杰斯特拉常用于计算一个节点到其他节点的最短路径,若要实现迪杰斯特拉算法,则必须求解地图节点信息中的邻接矩阵,根据数据文件可视化可知该图中共有 32*22 个点,所以邻接矩阵的大小为 704*704,又因图中除了灰色的点与黑色的点都是可到达但是不可经过的,如果我们将对应节点设置成无穷大,则这些节点也会被视为不可到达点,所以为了避免这种情况的发生对结果产生影响,我们将这些节点周围的节点到达该节点的距离设置的较大,从求解最短路径的维度上来说,这些不可经过可达到的点就跟不可经过不可达到节点区分开来,最终按照 map.csv 中每个点的可到达点以及各点的类型,算出该图的邻接矩阵。通过Matlab 对迪杰斯特拉算法进行实现求解。
对于最短路径的调度方案优化求解:在采用迪杰斯塔拉算法求解出最短路径之后,此时就需要 20 个机器人之间的协同调度优化,建立 AGV 统筹调度的最佳策略模型,首先确定其目标函数为:
min=stop_time
Stop_time 代表全部订单所完成的时间,为了使每个 AGV 都尽可能忙,所以必须使得每个AGV 都在工作,所以就有如下约束:
约束① 
其中 Xi,t 表示第 i 个 AGV 第 Ωt 时刻所正在进行的工作,其中有如下取值: =1-675 :正在进行第1-675 号的订单的工作, =-1 :正在进行回库任务, =-2 :正在进行回收任务 =-3 :正在进行拣选任务 =0 :刚结束回库或者回收任务准备进行新的任务。约束一表示所有的 AGV在第一时刻都有订单任务进行。
约束② 
约束二表示如果 AGV 在上一时刻刚刚完成了上一个任务,那么他在下一时刻必须进行新的任务。上述两个约束限制了每个 AGV 都充分地忙。还需要对订单还剩余需求的商品数量以及订单是否完成情况进行约束:
约束 ③

uk,t 代表第 k 个托盘在第 t 时刻所拥有需要的商品数量, yi,t 代表第 i 个 AGV 在第 t 时刻正在使用的托盘编号,sj,t 代表第j 个在k 时刻仍然缺少的商品数量,此时还需要考虑,虽然该AGV 没有进行该订单任务,但是托盘里面的其余商品能够完成别的订单的情况。
约束 ④

fi,t 代表第 j 个订单第 t 时刻有没有被完成,此外需要对 AGV 每个时刻正在执行的任务进行优化,有如下优化:
约束 ⑤ : xi,t=ε 1>0,if(xi,t-1=0)
代表如果上一时刻 AGV 刚刚完成任务,则下一时刻到拿托盘到送到拣选的时刻下都在进行该任务,且:
约束 ⑥
代表如果上一时刻在进行拣选,并且拣选后的托盘里面没有商品的话,则需要把他放入空托盘回收处,如果托盘里面还有商品的话,则需要进行回库。
xi,t+ε2+1=0, if(X1,t-1=-3)
代表在进行回收或者回库任务之后,AGV 会进行变成空操作,然后再进行后续的接订单操作。还有结束的标志:约束⑨ stop_time=t,t=max {fi,t=1}
X1,1+ε 1+1; 1+ε 1+1+10=-3,if(xi,t-1=0) 运输到拣选节点一直在t0 时刻都在进行拣选任务。
代表最后一个订单被结束时候的时间。上述模型如果采用遍历求解的话太过复杂,所以在此采用启发式算法中的遗传算法进行求解 [4]。
其主要思想步骤如下:
约束 ⑦ :
Step1 :评估所有染色体对各自个体的适应程度;
约束⑧:
Step2 :按照适应程度越高,所偏向选择概率越高的原则,从对应种群中选取两个体作为父本母本;
Step3 :抽取父本母本个体所携带染色体进行杂交
Step4 :对子代的染色体进行变异处理;

Step5 :重复 Step2 和 Step3 以及 Step4 直到产生了新的种群。
由于在原始题目中给出在拣选节点上的数据,采用遗传算法对该模型进行求解,本文对遗传算法的初始参数设置为:

对遗传算法给定参数后, 目标函数随着迭代次数的变化如下图所示:
图 3 灵敏性检查

由上图不难看出,整体上图像大致符合线性变化,并且 t 变化对于整体完成时间的影响并不明显,所以我们可以认 为 t 参数的灵敏度较差,模型建立较优。并且 t 变化对于整体完成时间的影响并不明显,所以我们可以认 为 t 参数的灵敏度较差,模型建立较优。
五、评价与改进
模型考虑了多个 AGV 处理多个任务以及多个 AGV 同时处理一个任务的情况,比 较符合实际的运营情况。收敛速度较快,模型求解出较优解的速度较快。可推广性很强,可以应用于多种场景。但是模型对于避障的敏感度不高,在避障算法上有待加强。没有考虑 AGV进行斜向移动以及多方向运动的情况。
后期可以考虑采用模拟虚拟力场求解,该算法优点为算法思路简单清晰且易于编程实现,
参考文献
[1] 郭超 , 陈香玲 , 郭鹏 , 王强 , 汪世杰 . 基于时空算法的多 AGV 无冲突路径规划 [J]. 计算 机系统应用 ,2022,31(04):360-368.DOI:10.15888/j.cnki.csa.008454.
[2] 郭鹏 , 汪世杰 , 周士祺 , 史海超 . 基于并行搜索遗传算法的 AGV 自适应集群调度 [J/OL]. 华中科技大学学报 ( 自然科学版 ):1-7[2022-04-16].DOI:10.13245/j.hust.220521.
[3] 魏重洁 , 王委 , 王嘉 , 何启明 , 宋博文 .Dijkstra 算法在 BIM 审查中的应用 [J]. 中国建设 信息化 ,2022(06):76-78.
[4] 张 慧 娟 . 无 线 传 感 网 络 中 基 于 Dijkstra 算 法 的 分 簇 路 由 [J]. 火 力 与 指 挥 控制 ,2022,47(02):134-139+145.