韩 召 ,韩宏飞,于会敏 ,王延忠
(1.辽宁科技学院 电气与自动化学院,辽宁 本溪 117004;
2.株洲中车时代电气股份有限公司,湖南 株洲 412000;
3.北京航空航天大学 机械工程及自动化学院,北京 100191)
物流AGV小车为了高效地完成运输任务,需要从起点到目标点规划出一条最短且安全的最优路径,这条路径是所有可到达的路径中长度最短、耗时最少的路径。如果物流小车的路径规划得不理想,将影响整个车间的工作节拍和车间调度效率。
目前,物流AGV小车的路径规划的算法分全局路径规划和局部路径规划,在大多数情况下,需要2种路径规划的算法同时使用。在局部路径规划算法中,应用比较多的有人工势场算法[1]、神经网络算法、遗传算法、模糊逻辑法、强化学习算法[2]等。强化学习算法是机器学习方法的一种,其在物流AGV小车的路径规划中得到越来越多的应用。强化学习是通过对环境信息的获取,不断与环境进行交互的在线学习方法[3]。近年来,越来越多的学者将强化学习算法应用于移动机器人的路径规划中,其中应用非常多的是强化学习算法中的Q-learning算法,传统的Q-learning算法在程序初始化过程中将Q值设置成随机值或者0,这导致AGV小车在起始阶段的搜索范围盲目且无效迭代次数过多;
其次,传统的Q-learning算法在智能体的动作选择时,采用的是ε探索策略,如果探索因子ε的值选取太大,会导致AGV小车搜索环境太大而不容易收敛,如果ε的值选取太小,则会导致AGV小车搜索环境不够而得不到次优解,这最终导致智能小车不能很好地平衡探索和利用之间的关系[4]。
文章针对强化学习中的Q-learning算法中存在的收敛速度过慢、探索与利用的冲突问题,提出了探索因子ε根据不同阶段动态调整方法对路径规划算法进行优化,最后在仿真平台及实体AGV小车上进行实验,证明这种改进的算法可行且有效。
强化学习的算法主要有蒙特卡洛算法[5]、时间差分(TD)算法、Q-learning与SARSA学习算法[6]及Dyna学习算法[7]。其中的时间差分(TD)算法的思想是解决时间信度分配问题,它借鉴了蒙特卡洛和动态规划的思想,相比于蒙特卡洛算法具有与模型无关的优点,且具有更加充分利用环境的经验[7]。Q-learning算法是在时间差分(TD)算法的基础上提出的通过状态-动作对值函数Q(S,A)来进行值函数迭代的算法,这是一种与模型无关的迭代学习过程,Q-learning算法的迭代公式如下:
α)-Q(St,At))
(1)
式中,St是系统环境状态集;
At是智能体可采取的动作集;
α是学习率,其取值是小于1的正数;
γ是折扣率,其取值范围是0~1。Rt+1是智能体在状态St做出的动作At后的奖励值,Q(St,At)称为动作-值函数,即Q函数。在Q-learning算法中首先建立一个Q值的表,智能体不断与环境进行交互,并得到反馈,通过对智能体的状态-动作的奖赏值来进行迭代修改查抄表,从而达到与环境交互迭代筛选,最终使智能体的动作集区趋近最优动作解。
Q-learning算法的Q值通过一个查找表来存储Q值相对应的每个状态。从公式(1)中可以得知,想要得到对于状态St对应的最终Q值,首先要使状态St+1对应的maxQ(St+1,At)=Qt+1恒定,否则,上一个时刻状态所对应的Q值会受到下一个状态Q值的影响,因为,强化学习算法是一个整体的回溯过程。假设St+1状态是稳定的,那么Qt+1值恒定,为了使Q(St,At)所对应的状态稳定,借助公式1进行n次迭代后,其结果如下:
Q(St,At)=(1-α)nQt+[1-(1-α)n]
(γ+γQt+1)
(2)
其中,0<(1-α)<1,当n取足够大的时候,可以得到如下结果:
(1-α)n→0,
=γ+γQt+1
(3)
Q值不断迭代更新,当n趋近于正无穷时,Q(St,At)将以概率1收敛于最优值,此时,再继续更新迭代则不会改变Q值,此时Q(St,At)收敛。
在Q-learning算法中,不同的优先级对应不同的状态,前一时刻状态的收敛由后一时刻的条件决定,不同状态的收敛优先级也是有区别的,越接近最终状态的Q值收敛越早,越远离目标状态的Q值收敛越迟,当算法通过不断的迭代,其训练次数达到最多的次数时,Q值会达到理想值,Q学习的查表值是Q学习的体现,这个查表值记录了每个状态对应的Q值,这也是智能体采取动作后所获得的回报函数[10]。当环境满足马尔可夫性、回报函数r有界、折扣因子γ在0~1之间、Q函数用查找表来表示、状态-动作对Q(S,A)有可重复性且步长选取合适这些条件时,该算法收敛,这种算法是基于平均化取样回报解决强化学习问题。
物流AGV小车在路径规划中使用强化学习算法来搜寻最优路径,机器人为了获得更好的回报函数,需要执行不同的动作来获得更多的经验和信息,这就是探索与利用的平衡问题。太少的探索会阻碍系统收敛到最优策略,太多的探索会影响收敛速度,为了解决这个问题,学者们在智能体的动作选择策略中提出了ε探索策略,这种策略在选择动作时,每次都选择最大Q值函数的状态-动作对,经过不断迭代与学习,最终找到全局最优解。
在传统Q-learning算法基于差分策略的动作选择策略中,ε探索策略在一定程度上平衡了探索与利用的关系,但是由于它奖赏值最大的方法是利用当前的知识,它通常智能得到一个次优结果,系统就容易陷入局部最优解中。ε探索策略引入一个概率值ε,智能体AGV小车每次都以ε的概率在动作集合中随机选择动作,最优和最差动作都以同样的概率被选中,这样就会导致整个过程的收敛速度放慢,且最后动作选择结果也会有波动,为了解决这个问题,文章在研究几种常用的动作策略方法的基础上,提出一种改进的探索因子动态调整策略,该算法流程伪代码如表1所示。
表1 基于改进的强化学习算法
基于改进强化学习Q-learning算法中的探索因子ε取值如下:
(4)
其中:tanh函数的具体形式如下:
(5)
其中:e是自然对数的底,当自变量t>0时,0 在强化学习算法起始阶段,由于算法不收敛,Stdn的值较大,智能体AGV以εmax的概率进行随机动作的选取,随着算法的运行,Stdn的值减小,使得ε的取值在εmin和εmax之间。Stdn的值越大,说明迭代次数之间的步数差别越大,环境越需要探索,ε的取值就会越大; 文章的物流AGV小车的模型是通过URDF(Unified Robot Description Format)文件搭建的,在Gazebo仿真软件中,URDF文件可以用XML格式进行描述,机器人操作系统ROS也提供了URDF文件的C++解析器,文章所搭建的AGV小车的模型如图1所示。 图1 物流AGV小车模型 路径规划算法仿真环境是30 cm*30 cm的栅格地图,设置的障碍与调研的某加工车间基本相同,图中蓝色区域是设置的障碍物,黄色区域是表示无障碍物,随机设置的起始点(SP)和目标点(EP)如图中所示。文章搭建的环境二维地图如图2所示。 图2 仿真空间中的环境二维地图 文章借助MATLAB软件对改进后的强化学习算法进行仿真实验,在应用改进强化学习算法的小车路径规划中,使用探索因子动态调整策略的参数是:εmax=0.7和εmin=0.05,T=400,n=500,学习率α=0.05,折扣因子γ=0.9。在仿真空间中程序运行500次后,小车的第500次路径规划图如图3所示。图中在起点SP和终点EP之间的连线就是小车最终的路径规划路线,从图3中,我们也可以看出,此路径是非常合理的。 图3 路径规划 图4是运行500次后,每100次小车路径的长度和迭代次数变化趋势图,图4中纵坐标是表示AGV小车规划的路径步数,横坐标是小车算法的迭代次数,图中的蓝色曲线是小车第100次运行的长度与迭代次数曲线,紫色是第200次运行结果,黄色是第300次运行结果,橙色是第400次运行结果,绿色是第500次运行结果。 图4 路径规划趋势变化图 由图3和图4可以看出,在采用基于动态因子调整策略的强化学习算法后,在仿真环境中,当程序运行500次后,其自主规则路径长度变短,且算法的迭代次数也在减少,算法的收敛速度较快且规划路径的结果稳定。 为了验证算法的有效性,本课题的科研团队将仿真空间设计的AGV物流小车模型做成了实体,其实物的前后对照图如图5所示。 图5 AGV小车实物前后照 物流AGV小车底盘上安装2轮差速轮,下位机的主控芯片是STM32F103ZET6。上位机采用Intel QM77芯片组,集成Intel Celeron I5-2430M处理器,提供增强图像处理性能和3D视频性能。小车上安装有激光雷达、防碰撞传感器及惯性检测单元IMU。小车最上层搭载有显示器,显示器上实时显示规划路径及构建的环境地图信息。 文章所调研的加工车间实际尺寸是:120 m*50 m。实际车间的工作台、数控机床、加工车床与仿真空间中的数量相同。图6是调研某加工车间两个部分的实际照片。 图6 调研车间部分图 将改进的基于强化学习的路径规划算法加载于物流AGV小车后,启动程序,AGV小车的显示屏上呈现出加载创建的地图,地图中物流AGV小车周围有许多绿色箭头,这些绿色箭头就是通过概率定位的方法来确定AGV小车的位置,在绿色箭头最密集的地方是AGV小车最有可能出现的位置。小车真实的起始位置与小车屏幕上RVIZ软件中的起始位置对比如图7所示。 图7 小车导航起始位置 环境地图中所有的障碍物都做了膨胀,蓝色区域就是膨胀出来的安全区域,AGV小车应尽量避免进入蓝色区域里。AGV小车首先会通过全局路径规划方法获得最优的全局路径,在遇到障碍物后,小车会结合局部路径规划方法来避开障碍物。小车遇到障碍物时进行避障规划及小车显示屏幕上RVIZ软件显示出来的小车路径规划如图8所示。 小车到达终点后,小车按预定的位置准确地停 图8 物流小车自主避障路径规划 在了预设的目标点上,小车到达终点时的实际位置及小车显示屏上RVIZ软件中的位置如图9所示。 图9 小车到达目标点 物流AGV小车的整体规划路径如图10所示,图中红色箭头是设置目标点的位置及方向,小车到目标点之间的绿色线就是小车结合全局与局部路径规划得到的最优路径。 图10 AGV小车路径规划 将改进的基于强化学习的算法运用于实物AGV物流小车路径规划,经运行后,可看出,小车的路径规划更合理,且小车的耗时更短,效果更稳定。 文章针对物流行业AGV小车的路径规划问题提供了解决方案,将强化学习算法应用于小车的自主导航和避障控制中,并针对传统的强化学习算法中的Q-learning算法进行了改进,为了提高传统Q-learning算法中的收敛速度和收敛结果的稳定性,文章提出了在动作选择时,动态调整探索因子ε策略。仿真实验表明算法的收敛速度和收敛结果的稳定性明显提升。
t是一个系数,t值越大随机性越小;
εmin和εmax分别是探索率的最小值和最大值。< p>
而Stdn的值较小时,强化学习算法趋于收敛,ε值稳定在εmin。通过以上分析可以得出,这样设计的探索因子动态调整策略可以在算法起始阶段以更大的概率对环境进行搜索,随着算法的进行,ε值逐渐减小并稳定在εmin,小车动作选择策略逐渐趋于利用,这样就会更好地解决探索和利用之间的矛盾。4.1 物流AGV实物
4.2 加工车间环境地图
4.3 改进算法后小车路径规划
扩展阅读文章
推荐阅读文章
恒微文秘网 https://www.sc-bjx.com Copyright © 2015-2024 . 恒微文秘网 版权所有
Powered by 恒微文秘网 © All Rights Reserved. 备案号:蜀ICP备15013507号-1