一种基于遗传算法的仓储多AGV路径规划方法与流程
一种基于遗传算法的仓储多agv路径规划方法
技术领域
1.本发明属于路径规划技术领域,尤其涉及一种基于遗传算法的仓储多agv路径规划方法。
背景技术:
2.随着快消品制造行业的蓬勃发展,建立无人化的智能仓储系统对提高整个仓库运输与储存效率起到至关重要的作用,而其中的核心系统即为多自动导引小车(agv)系统,多自动导引小车系统的目标是为每一台agv分配合适的任务并规划好对应的任务路径,规划的任务路径需要满足各agv在移动过程不会发生碰撞,并且尽可能的满足最优轨迹或者接近最优轨迹。
3.目前,对于智能仓储系统的多agv路径规划的实现已经有多方面的研究,所采用的算法主要分为两大类:其一为启发式算法,另一类为元启发式算法。
4.但是,传统的遗传算法具有收敛速度慢、容易陷入局部最优等缺点。
技术实现要素:
5.本发明提供一种基于遗传算法的仓储多agv路径规划方法,旨在解决上述存在的问题。
6.本发明是这样实现的,一种基于遗传算法的仓储多agv路径规划方法,每个agv初始位置设置于停靠点,每个agv完成任务后返回停靠点,其中,任务类型包括取和送;包括以下步骤:s1:利用栅格图法建立无人仓库环境的二维模型,得到栅格地图,所述栅格地图的位置信息使用栅格的线性索引代替,各个agv的完整路径由各自的停靠点和所经过的栅格决定,agv所经过的每个栅格为agv的必经点,相邻两个必经点之间生成一条路径,其中,停靠点为栅格地图中的一个栅格;s2:在遗传算法上加入双种策略与保留致死个体策略,对agv路径进行优化以获取agv路径规划方案;s3:依据agv路径规划方案,控制agv执行运送任务。
7.进一步的,在步骤s2中,所述遗传算法生成的个体为agv数量乘以三的元胞数组,每个元胞数组的第一部分为agv规划好的完整路径,第二部分为agv经过的所有栅格,第三部分为agv所执行的任务序号和任务类型。
8.进一步的,在步骤s2中,设置两个不同的适应度函数以测试遗传算法的性能:
其中,式(1)计算的是所有agv的路径的长度,表征整个任务执行所需要的总运行消耗;式(2)计算的是所有agv中最大路径长度,表征了整个任务执行所需要的总时间。
9.进一步的,在步骤s2中,对agv路径进行优化具体包括:生成一个包含多个个体的初始种;将初始种划分为两个种,种一中对所有个体进行修正;种二中不对种内个体修正,仅对所有个体的适应度值施加惩罚;对种二采用保留致死个体的策略,即对于种二中的个体,不限制其处于可行解的区域内,而是对其中不在可行解区域内的个体在计算适应度时施加一个惩罚系数kp;对种一中的个体采用锦标赛法,在体内随机选择两个个体进行比较,选取适应度值高的个体进行复制进入下一代的种一,直至下一代体数量与上一代相同;种二中的个体不进行选择操作,直接复制进入下一代种二。
10.进一步的,所述种二中的每个个体被选择成为父代的概率相同,在每次选取两个父代后,直接交换其相邻两个必经点的路径,并进入下一代,随后对新生成的种二中的个体使用修正策略并加入到新种一中;种一中每个个体依据适应度做为被选中成为父代的概率,在每次选取两个父代后,依据交叉概率判断两个父代是否进行交叉融合,是则将其中位于两个相邻必经点的路径进行交换后进入新种一,否则直接复制进入新种一;此时的新种一中个体数为100,依据适应度保留其中的前五十个个体,构成新的种一。
11.进一步的,所述种一中的个体,依据其适应度大小做为被选中成为父代的概率,每次选取父代后,依据变异概率判断父代是否进行变异,是则随机选中一个agv,取出其中两个相邻必经点的路径重新生成并使用修正策略后进入下一代种中,否则直接复制父代个体进入下一代;对于种二中的个体,对每个个体进行变异操作,并进入下一代。
12.进一步的,所述惩罚系数kp为1.5或者2。
13.进一步的,在所述agv路径规划方案中,当两个agv发生相向冲突和追击时,选择其中一个agv进行避让,避让后将其复位。
14.与现有技术相比,本发明的有益效果是:本发明通过模拟真实环境下无人仓储的运行状态,建立了合适的栅格地图模型;其次,提出了双种遗传算子扩大了整个种的搜索范围,能在一定程度上避免收敛于局部最优,在此基础上借助惩罚函数的加入,加快了收敛过程;最后通过对不同适应度函数的测试确保了改进后的遗传算法在不同情况下的计算效率,均能够更快的收敛并得到更优的结果,即本发明可以克服传统遗传收敛速度慢、容易陷入局部最优等缺点,同时针对无人仓储环境下agv任务的特殊性,提出了回路路径下的遗传算法,对选择算子、交叉算子和变异算子改进。
附图说明
15.图1为本发明无人仓库环境模型图;图2为本发明环形任务路径示意图;图3为本发明agv个体示意图;图4为本发明消除冗余路径示意图;图5为本发明消除agv间冲突示意图;
图6为本发明适应度(1-1)下的单任务对比示意图一;图7为本发明适应度(1-1)下的单任务对比示意图二;图8为本发明适应度(1-1)下的单任务对比示意图三;图9为本发明适应度(1-1)下的多任务对比示意图一;图10为本发明适应度(1-1)下的多任务对比示意图二;图11为本发明适应度(1-1)下的多任务对比示意图三;图12为本发明适应度(1-2)下的单任务对比示意图一;图13为本发明适应度(1-2)下的单任务对比示意图二;图14为本发明适应度(1-2)下的单任务对比示意图三;图15为本发明适应度(1-2)下的多任务对比示意图一;图16为本发明适应度(1-2)下的多任务对比示意图二;图17为本发明适应度(1-2)下的多任务对比示意图三;图18为本发明agv最优路径规划示意图一;图19为本发明agv最优路径规划示意图二;图20为本发明agv最优路径规划示意图三;图21为本发明agv最优路径规划示意图四。
具体实施方式
16.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
实施例
17.请参阅图1-5,本发明提供一种基于遗传算法的仓储多agv路径规划,包括以下步骤:第一步:地图信息建立:利用栅格图法建立二维模型,得到栅格地图,并模拟在简化无人仓库环境下进行研究,该类型的仓库具有以下特点:s1:无人仓库内货架的摆放是规则的;s2:agv在该仓库内是四向移动的,并且运动状态是停止或者匀速;s3:agv执行任务类型为取或送;s4:agv在任务开始时位于停靠点,任务结束后返回停靠点;s5:在执行取任务时,货架上的物品在agv到达时自动落入agv上,并在agv运送到取货点时自动捡取;s6:在执行送任务时,agv在到达送货点时物品自动落入agv上,并在agv到达货架时自动捡取;第二步:问题描述:在实际的无人仓储运作下,以一个完整的环形路径作为一个任务(如图2所示),其中路径上的圆圈标志代表agv的必经点或者启停点,采用遗传算法将分配和路径规划同时
进行;第三步:改进的遗传算法:s1:在传统的遗传算法上加入双种策略与保留致死个体策略;通过在传统的遗传算法上加入双种策略与保留致死个体策略,可避免传统的遗传算法由于只考虑个体与环境间的关系,没有将不同个体间的差异性考虑进去,因此对于多agv路径规划产生问题,从而使得传统的遗传算法难以得到最优解的问题;s2:个体生成:改进的遗传算法所生成的个体由三部分组成:第一部分为agv所执行的任务序号与任务类型;第二部分为agv执行该任务所必须经历的栅格点;第三部分为由各个必经点所连接起来的路径;通过不同任务所导致的agv经过的必经点不同,使得改进的遗传算法所生成的个体由三部分组成;本发明将任务类型区分为取任务与送任务:取任务是将位于货架上的物品运送至取货点进行使用;送任务是将送货点处的物品运输至货架进行保存;在算法中将取任务的属性设置为1,送任务的属性设置为2;与此同时,agv的任务执行状态也分为两种情况:即agv在起始位置执行某一任务或agv执行完上一任务再继续执行下一任务;因此agv的任务分配也需要通过算法优化来确定最优的分配情况;下述表中给出了部分任务的属性与所需执行到达的栅格位置:如图1至图3所示,在一个实施例中,所述栅格地图的位置信息使用该点的线性索引代替,所述各个agv的路径由各自所经过的必经点所决定,每两个必经点之间生成一条路径,路径的生成遵循以下伪代码算法:
算法生成的个体通常表示为agv数量乘以三的元胞数组,每个元胞数组的第一部分为agv规划好的路径,第二部分为agv的必经点,第三部分为agv所执行的任务以及任务属性。
18.如图1所示,在一个实施例中,适应度计算:设置两个不同的适应度函数用以测试所提出的双种遗传算法的性能:适应度(1)计算的是所有agv的路径的长度,表征整个任务执行所需要的总运行消耗。适应度(2)计算的是所有agv中最大路径长度,表征了整个任务执行所需要的总时间;通过现有的适应度函数通常能够反应个体的优劣程度,不同的适应度函数能够反映出实际案例中的不同层面对问题的影响,传统路径规划的目标函数通常是基于路径长度来反映个体优劣,但对于多agv路径规划问题,总路径长度并不一定能反映出解的优劣性以及是否能够反映种个体间的竞争关系,对此,本发明设置了两个不同的适应度函数用以测试所提出的双种遗传算法的性能。
19.如图4所示,在一个实施例中,双种策略:s1: 对于种一,对所有个体进行修正,对于种二,不对种内个体修正,仅对所有个体的适应度值施加惩罚;通过为了提高遗传算法的性能,保证算法能够收敛到全局最优解,提出了一种基于并行双种策略的遗传算法,并对不同种实施不同的遗传策略,对于种一,为保证种内所有个体都是有效解,对所有个体进行修正,排除个体内部生成的路径存在冲突的情况;对于种二,为保证体的多样性,不对种内个体修正,仅对所有个体的适应度值施加惩罚,以保证个体尽可能的遍布在所有可行域内;s2:一个agv在两个相邻必经点间的四步路径,依次按照顺序运行,去掉中间的两步,并不改变该agv的最终路径结果;通过对于冗余路径问题,直接对路径进行缩减,解决agv的路径规划问题,即解决
随机生成的个体在很大程度上存在相互之间路径冲突的问题与单独个体冗余路径的问题,如4图所示,由图4左图所示变成图4右图所示;s3:两个agv发生相向冲突和追击问题,选择其中一个agv进行避让,在避让后将其复位;通过本发明考虑的是多agv路径规划,所以在生成个体与消除冗余路径问题后,不可避免的产生路径间的冲突问题,如图5左图所示,agv1与agv2相向行驶,本文所采用的修正策略即是处理agv路径间的冲突问题,对于图5左图所示的相向冲突,选择其中一个agv进行避让,在避让后将其复位,如图5右图所示,除了agv间的相向冲突问题,还存在agv间的追击问题,即一个agv处于原地等待状态,另一个agv需要经过该位置,可以证明采用上述修正策略同样可以解决追击问题;s4:对种二采用保留致死个体的策略,即对于种二中的个体,不限制其处于可行解的区域内,而是对其中不在可行解区域内的个体在计算适应度时施加一个惩罚系数k
p
,一般选取k
p
为1.5或者2。
20.通过保留致死个体的策略确保了种二在进行遗传操作后任然能够保证较大的搜索范围,这样在两个种间进行相互的信息交流后,即能扩大种一中的个体搜索范围,还可解决s1和s2两个步骤确保种一内的个体一直处于可行解的区域,但同时采用不断的修正策略会让种一内的个体趋向同化,致使整个种一的搜索范围不断缩小的问题。
21.如图5所示,在一个实施例中,选择算子:对种一中的个体采用了锦标赛法:在体内随机选择两个个体进行比较,选取适应度值高的个体进行复制进入下一代的种一,直至下一代体数量与上一代相同,种二中的个体不进行选择操作,直接复制进入下一代种二;通过对种一中的个体采用了锦标赛法:在体内随机选择两个个体进行比较,选取适应度值高的个体进行复制进入下一代的种一,直至下一代体数量与上一代相同,种二中的个体不进行选择操作,直接复制进入下一代种二,可以更好地保持种个体多样性和维持个体数量。
22.如图5所示,在一个实施例中,多点交叉算子:种二中的每个个体被选择成为父代的概率相同,在每次选取两个父代后,直接交换其相邻两个必经点的路径,并进入下一代,随后对新生成的种二中的个体使用修正策略并加入到新种一中;种一中每个个体依据适应度做为被选中成为父代的概率,在每次选取两个父代后,依据交叉概率判断两个父代是否进行交叉融合,是则将其中位于两个相邻必经点的路径进行交换后进入新种,否则直接复制进入新种;此时的新种一个体数为100,依据适应度保留其中的前五十个个体,构成新的种一;通过种二中的每个个体被选择成为父代的概率相同,在每次选取两个父代后,直接交换其相邻两个必经点的路径,并进入下一代,随后对新生成的种二中的个体使用修正策略并加入到新种一中;种一中每个个体依据适应度做为被选中成为父代的概率,在每次选取两个父代后,依据交叉概率判断两个父代是否进行交叉融合,是则将其中位于两个相邻必经点的路径进行交换后进入新种,否则直接复制进入新种;此时的新种一个体数为100,依据适应度保留其中的前五十个个体,构成新的种一,可以进一步提高种多样性。
23.如图5所示,在一个实施例中,多点变异算子:对于种一中的个体,依据其适应度大小做为被选中成为父代的概率,每次选取父代后,依据变异概率判断父代是否进行变异,是则随机选中一个agv,取出其中两个相邻必经点的路径并重新生成并使用修正策略后进入下一代种中,否则直接复制父代个体进入下一代;对于种二中的个体,对每个个体进行变异操作,并进入下一代;通过对于种一中的个体,依据其适应度大小做为被选中成为父代的概率,每次选取父代后,依据变异概率判断父代是否进行变异,是则随机选中一个agv,取出其中两个相邻必经点的路径并重新生成并使用修正策略后进入下一代种中,否则直接复制父代个体进入下一代;对于种二中的个体,对每个个体进行变异操作,并进入下一代,可以提高种多样性。
24.试验例基于遗传算法的仓储多agv路径规划实验和结果分析:本文所使用的仿真实验平台为matlab2022a,所使用的电脑配置为amd ryzen7-5800h cpu@3.2ghz,ram为16gb;仿真实验参数分别为:种规模=100,进化代数=100,交叉概率=0.7,变异概率=0.1,惩罚系数=1.5,agv数量分别为4、5、6。
25.图6至图11是在(1)的适应度函数计算下得到的最优结果;其中图6至图8是agv任务数与agv数量保持一致的遗传曲线,可以看到原始遗传算法在最后结果的收敛上均差于双种遗传算法,并且双种遗传算法在算法的开始阶段即可以到较优解,从而使其能够更快的收敛得到最优结果;原始的遗传算法在算法最后也能得到较优解,但受限于初始解较差导致最后的收敛结果劣于改进后的遗传算法;图9至图11是在agv的任务数量二倍于agv数量的情况下测得的优化曲线,传统的遗传算法在50至70代开始收敛,改进后的遗传算法在20代过后就开始收敛,并且能够收敛至更优的结果;图12和图17是在适应度函数(2)的情况下计算得到的优化曲线;受到初始生成体的影响下,在agv任务数量为8,agv数量为4的情况下,改进后的算法生成的初始个体劣于传统的遗传算法,其他情况下,改进后的遗传算法均优于传统的遗传算法。这是因为初代种的个体随机性比较大,可能会出现整个体适应度较差的情况,但最终的优化结果仍然是双种算法优于原始遗传算法,这表明在本文所测试的算例上,改进后的遗传算法在收敛结果上均优于原始遗传算法,并且相较于适应度函数(1-1),在多任务的优化上收敛速度更快,并且收敛结果更优;图18至图21展示了在agv数量与任务数量都为4的情况下,其中选取的任务为表1中的序号1至4,改进后的遗传算法给出的各个agv最优路径;本发明提出了改进遗传算法的路径规划方法:首先为模拟真实环境下无人仓储的运行状态,建立了合适的栅格地图模型;其次,提出了双种遗传算子扩大了整个种的搜索范围,能在一定程度上避免收敛于局部最优,在此基础上借助惩罚函数的加入,加快了收敛过程;最后通过对不同适应度函数的测试确保了改进后的遗传算法在不同情况下的计算效率,均能够更快的收敛并得到更优的结果。
26.以上仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
技术特征:
1.一种基于遗传算法的仓储多agv路径规划方法,每个agv初始位置设置于停靠点,每个agv完成任务后返回停靠点,其中,任务类型包括取和送;其特征在于,包括以下步骤:s1:利用栅格图法建立无人仓库环境的二维模型,得到栅格地图,所述栅格地图的位置信息使用栅格的线性索引代替,各个agv的完整路径由各自的停靠点和所经过的栅格决定,agv所经过的每个栅格为agv的必经点,相邻两个必经点之间生成一条路径,其中,停靠点为栅格地图中的一个栅格;s2:在遗传算法上加入双种策略与保留致死个体策略,对agv路径进行优化以获取agv路径规划方案;s3:依据agv路径规划方案,控制agv执行运送任务。2.根据权利要求1所述的一种基于遗传算法的仓储多agv路径规划方法,其特征在于,在步骤s2中,所述遗传算法生成的个体为agv数量乘以三的元胞数组,每个元胞数组的第一部分为agv规划好的完整路径,第二部分为agv经过的所有栅格,第三部分为agv所执行的任务序号和任务类型。3.根据权利要求1所述的一种基于遗传算法的仓储多agv路径规划方法,其特征在于,在步骤s2中,设置两个不同的适应度函数以测试遗传算法的性能:其中,式(1)计算的是所有agv的路径的长度,表征整个任务执行所需要的总运行消耗;式(2)计算的是所有agv中最大路径长度,表征了整个任务执行所需要的总时间。4.根据权利要求3所述的一种基于遗传算法的仓储多agv路径规划方法,其特征在于:在步骤s2中,对agv路径进行优化具体包括:生成一个包含多个个体的初始种;将初始种划分为两个种,种一中对所有个体进行修正;种二中不对种内个体修正,仅对所有个体的适应度值施加惩罚;对种二采用保留致死个体的策略,即对于种二中的个体,不限制其处于可行解的区域内,而是对其中不在可行解区域内的个体在计算适应度时施加一个惩罚系数kp;对种一中的个体采用锦标赛法,在体内随机选择两个个体进行比较,选取适应度值高的个体进行复制进入下一代的种一,直至下一代体数量与上一代相同;种二中的个体不进行选择操作,直接复制进入下一代种二。5.根据权利要求4所述的一种基于遗传算法的仓储多agv路径规划方法,其特征在于:所述种二中的每个个体被选择成为父代的概率相同,在每次选取两个父代后,直接交换其相邻两个必经点的路径,并进入下一代,随后对新生成的种二中的个体使用修正策略并加入到新种一中;种一中每个个体依据适应度做为被选中成为父代的概率,在每次选取两个父代后,依据交叉概率判断两个父代是否进行交叉融合,是则将其中位于两个相邻必经点的路径进行交换后进入新种一,否则直接复制进入新种一;此时的新种一中个体数为100,依
据适应度保留其中的前五十个个体,构成新的种一。6.根据权利要求4所述的一种基于遗传算法的仓储多agv路径规划方法,其特征在于:所述种一中的个体,依据其适应度大小做为被选中成为父代的概率,每次选取父代后,依据变异概率判断父代是否进行变异,是则随机选中一个agv,取出其中两个相邻必经点的路径重新生成并使用修正策略后进入下一代种中,否则直接复制父代个体进入下一代;对于种二中的个体,对每个个体进行变异操作,并进入下一代。7.根据权利要求4所述的一种基于遗传算法的仓储多agv路径规划方法,其特征在于:所述惩罚系数kp为1.5或者2。8.根据权利要求1所述的一种基于遗传算法的仓储多agv路径规划方法,其特征在于:在所述agv路径规划方案中,当两个agv发生相向冲突和追击时,选择其中一个agv进行避让,避让后将其复位。
技术总结
本发明公开一种基于遗传算法的仓储多AGV路径规划方法,每个AGV初始位置设置于停靠点,每个AGV完成任务后返回停靠点;本发明通过模拟真实环境下无人仓储的运行状态,建立了合适的栅格地图模型;其次,提出了双种遗传算子扩大了整个种的搜索范围,能在一定程度上避免收敛于局部最优,在此基础上借助惩罚函数的加入,加快了收敛过程;最后通过对不同适应度函数的测试确保了改进后的遗传算法在不同情况下的计算效率,均能够更快的收敛并得到更优的结果,即本发明可以克服传统遗传收敛速度慢、容易陷入局部最优等缺点,同时针对无人仓储环境下AGV任务的特殊性,提出了回路路径下的遗传算法,对选择算子、交叉算子和变异算子改进。改进。改进。