首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

仓储物流机器人,在多启发蚁群路径规划中,如何达到安全行驶需求

当前物流业存在人力需求高、智能化程度低等问题,因此智能化仓库是仓储物流行业的一个主要发展方向,仓储物流机器人路径规划质量决定了机器人之间能否协同配合,也决定了机器人行驶的安全性和工作效率。

研究仓储物流机器人路径规划问题具有重要的安全和经济意义。根据机器人对工作环境信息掌握的完备程度,可以将机器人路径规划分为全局路径规划和局部路径规划。

全局路径规划是指环境信息完全已知时,在静态环境中规划出一条由起点到终点的路径,常用方法包括快速搜索随机树、拓扑图、以及粒子群算法、蚁群算法等智能方法。

局部路径规划是指在环境信息部分已知时,在动态环境中规划局部行驶路径,常用方法包括滚动窗口法、人工势场法、模糊策略等。

就目前而言,在各自设定环境下规划较优路径是主流的研究方向,但是不同应用场景下的规划方法、规划目标区别较大,因此机器人路径规划问题仍是机器人导航的一个研究热点。

那么仓储物流背景下的机器人路径规划和避障,在仓储物流环境下的障碍物特点进行了分析和建模中,通过多启发蚁群算法的全局路径规划策略,如何实现机器人在仓储物流环境中沿较优路径的安全行驶呢?

?——【·仓储物流机器人路径规划描述·】——?

仓储物流机器人路径规划问题描述:假设仓库空间和货物信息已知,机器人任务设定为点到点之间的货物搬运任务,在智能仓库中,障碍物可以分为以下3类:

静态障碍物,即静止不动的货物架等;

其他移动机器人,此类障碍物为活动轨迹已知的动态障碍物,其避障策略可以使用固定避障策略;

操作人员,此类障碍物为活动轨迹未知的动态障碍物,需根据其活动的随机性制定避障策略。

移动机器人路径规划目标设置为两个,一是路径长度最短,从而提高工作效率并降低能耗;二是规划时间最短,从而提高规划实时性和避障实时性。

动态栅格模型:传统栅格模型只适用于静态环境下,而在仓储物流的动态环境中无法适用。

对于二维平面仓储环境,使用尺寸固定的栅格将二维环境进行分割,并将环境信息存储在栅格中。

建模过程分为障碍物膨化和信息存储两个步骤,障碍物膨化是指当栅格中包含障碍物时,对于未充满栅格的障碍物,使用膨化方法使其充满栅格。

信息存储是指依据栅格类型为栅格存储不同信息,当栅格中包含障碍物时,该栅格存储信息为1;当栅格中无障碍物时,该栅格存储信息为0。

按照上述方式,可以将环境中的静态信息全部表示出来。真实静态环境如图1(a)所示,膨化处理后如图1(b)所示,最终建立的0-1矩阵模型如图1(c)所示。

运动轨迹已知的机器人和工作轨迹未知的操作人员使用动态栅格法进行建模。对于运动轨迹已知的机器人,将其视为运动的障碍物栅格,每个周期进行环境更新时,轨迹上机器人所在栅格为障碍物栅格,其余栅格为自由栅格。

对于工作轨迹未知的操作人员,将机器人对障碍物探测范围设定为2,那么以操作人员当前栅格为中心,其邻域内1个步长栅格全部设定为障碍物栅格。

每个周期进行环境更新时,均以操作人员为中心向外扩散1步长栅格作为障碍物栅格,同时将上一周期相应的障碍物栅格释放为自由栅格。

?——【·点到点全局路径规划·】——?

蚁群算法原理与分析栅格环境下基于蚁群算法的路径规划描述为:将所有蚂蚁放置在起点栅格,蚂蚁按照公式计算邻域内自由栅格的选择概率,并使用轮盘赌确定所选栅格,蚂蚁按照上述步骤前进直至到达目标点。

将蚁群中蚂蚁数量记为M,假设蚂蚁m在算法迭代至t次时所在栅格为i,其对邻域内自由栅格的选择概率为:

蚁群算法在迭代过程中伴随着信息素的挥发和蚂蚁的信息素残留过程,为:

栅格环境下基于蚁群算法的路径规划方法存在以下问题:

传统蚁群算法的信息素使用均匀初始化方法,因此算法初期搜索效率较低;

传统蚁群算法中的启发信息只有距离这一要素,无法对路径进行多目标优化。

针对这2个方面进行改进有:

梯度分布的信息素初始化:按照数学常识,机器人最短路径为起点与终点之间的直线段。

一般来说,机器人最优路径应当围绕直线段两边栅格紧密分布,传统信息素的均匀初始化方法未充分利用这一先验知识,提出了梯度分布的初始化方法。

梯度初始化的核心思想为:以起点S、终点G的连线为对称轴,按照各栅格中心与起点S、终点G的距离进行栅格信息素浓度初始化,如图2所示。

图中SGd为起点栅格S与终点栅格G距离,Sjd为起点栅格S与栅格j距离,jGd为栅格j与终点栅格G距离。

根据图2,得到栅格j的信息素浓度梯度初始化为:

分析式(3)的信息素浓度初始化方法可知,线段SG连线上的栅格信息素浓度最高,其余栅格信息素浓度以SG为对称轴依次递减,这样就实现了信息素浓度初始化的梯度分布。

在算法初期,蚂蚁在信息素浓度引导下优先选择SG连线附近的栅格,可以有效提高蚂蚁搜索效率。

多启发因子:传统蚁群算法中只有距离启发因子,也即只能对路径长度进行优化,为了实现多个优化目标。

距离启发因子:设置距离启发因子是为了实现路径最短的优化目标,在栅格环境下,将距离启发因子设置为:

路径平滑启发因子。首先定义机器人转角,根据实际情况,将机器人转角定义为机器人前进方向转过的角度,如图3所示。

按照图3对机器人转角的定义,将路径平滑启发因子定义为:

将多种启发因子引入到式(1)中,得到多启发蚁群算法对栅格的选择概率为:

按照以上改进方法,基于多启发蚁群算法的路径规划步骤为:

Step1:建立栅格环境模型,设置多启发蚁群算法参数;

Step2:蚂蚁放置在起点栅格;

Step3:蚂蚁按照式(5)计算邻域栅格选择概率,并使用轮盘赌确定所选栅格;

Step4:判断是否所有蚂蚁到达目标点,若否则转至Step3;若是输出最优路径,算法结束。

?——【·基于滚动窗口的避障策略·】——?

滚动窗口避障原理:使用前文内容可以获得机器人由起点到终点的最优路径,机器人沿此路径行驶时实时探测周围环境中的障碍物,探测距离为2个步长范围。

当在探测范围内发现动态障碍物时,需调动避障策略避开动态障碍物。机器人按照边行驶边探测、边探测边避障的循环过程前进,直至到达目标点。

综上所述,滚动窗口的避障策略主要包括两个核心内容:

障碍物探测:设定机器人探测范围为邻域2个步长范围内栅格,当探测范围内出现静态环境中未标注的障碍物时,说明机器人发现了动态障碍物,需调用避撞策略。

避障行为决策与实施:根据探测到的障碍物类型,实施不同的避障行为。

避撞策略:在仓储环境中动态障碍物分为机器人和工作人员两类,其中机器人的工作路径是固定的,而工作人员的行驶路径的随机的。针对两者的运动特点,分别设计避撞行为。

对于行驶路径固定且已知的机器人,分以下两种情况设计避撞行为:

当前机器人与障碍物机器人在同一栅格发生侧面碰撞时,按照优先级,优先级高的机器人优先行驶,另一机器人原地等待一个周期;

当前机器人与障碍物机器人发生正面碰撞时,按照优先级,优先级高的机器人正常行驶,优先级低的机器人向邻域内栅格行驶一步进行躲避,而后继续行驶。

进行躲避时,邻域内栅格的选择优先级设置方法如图4所示。

躲避后以目标点为终点再次进行路径规划。

按照图4设定的优先级,机器人首先从优先级1中随机选择栅格,若优先级1栅格均不可选,则从优先级2中选择栅格,按照优先级降低顺序选择直至确定避撞栅格、对于行走路径随机的工作人员,按照动态栅格法建立栅格模型。

机器人对工作人员的避撞策略为:以工作人员为中心,将其1步范围内邻域栅格全部设置为障碍物栅格,而后机器人按照新的障碍物环境,以目标栅格为终点再次进行全局路径规划,实现对工作人员避撞。

?——【·验证与分析·】——?

多启发蚁群算法的规划性能验证:在30×30规模栅格环境下对多启发蚁群算法的规划性能进行验证,分别使用传统蚁群算法和多启发蚁群算法进行路径规划。

算法参数设置为:蚁群规模M=50、信息素因子a=1、启发因子β=5、平滑因子y=1、基础信息素浓度?To=0.8、信息素增量系数λ=0.8、最大迭代次数为200。

使用两种算法在30×30环境中各自规划10次,选择两个算法规划出的最短路径进行比较,结果如图5所示。

对比图5中两种算法规划的路径可以直观看出,传统算法规划路径拐点较多,相应的长度较大;而多启发蚁群算法规划路径的拐点少,路径较为平滑,同时路径长度较短。

为了进一步进行比较,统计两种算法规划路径的长度、拐点数、迭代次数,如表1所示。

由表1可以看出,与传统蚁群算法比,多因子启发蚁群算法的路径长度减少了7.01%,拐点数量减少了9个,收敛次数减少了一半。

这一因为:多启发蚁群算法的信息素使用梯度初始化方法,算法前期搜索效率较高,使得算法次数大大减少;

信息素梯度初始化方法使得蚂蚁选择路径时更倾向于线段SG周围栅格,蚂蚁所规划路径更加集中在最优区域;

多启发信息的引入,使得蚂蚁选择栅格同时受到距离和平滑度影响,因此规划路径更加平滑。

根据以上分析可以看出,多启发蚁群算法在栅格环境下的路径规划具有一定的优越性。

滚动窗口避撞策略验证:在20×20规模的栅格环境中对基于滚动窗口的避撞策略进行验证,首先使用多启发蚁群算法得到全局最优路径,如图6(a)所示。

与机器人发生侧面碰撞的避撞情况如图6(b)所示,与机器人发生侧面碰撞的避撞情况如图6(c)所示,与工作人员碰撞避撞如图6(d)所示。

图6(b)(c)(d)中,虚线为规划路径,实线为实际避障行驶路径。

在图6(b)中,机器人在A1栅格探测到机器人R1位于B1栅格,机器人行驶路径是固定且已知的,当前机器人与机器人R1在P1栅格会发生侧面碰撞,当前机器人调用避障策略,在栅格(5.5,14.5)处等待一个周期后继续前进。

在图6(c)中,当前机器人在A2栅格检测到机器人R2位于(6.5,11.5)栅格,在A2位置会发生正面碰撞,按照邻域栅格优先级,选择(7.5,12.5)栅格作为避撞栅格,而后以G栅格为目标再次规划出行驶路径,如图6(c)中虚线所示。

在图6(d)中,红色栅格为工作人员所在栅格。

当前机器人在A3位置探测到工作人员,由于工作人员行走轨迹随机,因此以工作人员栅格为中心,在其邻域向外扩展一步全部视为障碍物栅格,而后重新进行路径规划,得到避撞路径如图6(d)中实线所示。

由以上分析和避撞过程可知,设计的基于滚动窗口的避撞策略具有可行性,可以保证机器人在较优路径上的行驶安全。

?——【·结语·】——?

关于机器人在仓储物流环境下的路径规划和避障问题,文章提出了多启发蚁群的路径规划方法,并给出了动态环境下避撞策略。

经验证得出以下结论:多启发蚁群算法规划的路径更短、收敛次数更少、平滑性更好;

基于滚动窗口的避障策略能够保证机器人的行驶安全,可以解决仓储物流环境下的避障问题。

  • 发表于:
  • 原文链接https://page.om.qq.com/page/O7FwgJNrMuXlOePlosXlIamg0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券