1、Computer Engineering and Applications计算机工程与应用2023,59(6)近年来,在“工业4.01”的大环境、大背景下,智能算法、云计算、自动化大数据与机器人技术等前沿技术,获得迅速发展与广泛应用。工业系统中机械臂的运动控制算法的研究对生产效率的提高,生产成本的降低,工业产品质量的提升有着深远的意义。六轴机械臂属于上述工业机械臂的范畴,六轴机械臂在投入应用之前,需要对其控制系统进行调试,以适应当前的作业环境。在工业环境中,机械臂精度要求高,任务作业复杂,因此需要改进其运动控制算法。在面对多变的环境以及应用场景具有不确定性的情况下,传统算法稍显不足。使用人工智
2、能技术对机器人进行应用对人工智能技术的理论发展与算法应用有着重要意义。随着机器多智能体强化学习的机械臂运动控制决策研究羊波1,王琨1,2,马祥祥1,范彪1,徐磊1,闫浩11.江南大学 机械工程学院,江苏 无锡 2141222.中国科学院 合肥智能机械研究所,合肥 230031摘要:针对传统运动控算法存在环境适应性较差,效率低的问题。可以利用强化学习在环境中不断去探索试错,并通过奖励函数对神经网络参数进行调节的方法对机械臂的运动进行控制。但是在现实中无法提供机械臂试错的环境,采用Unity引擎平台来构建机械臂的数字孪生仿真环境,设置观察状态变量和设置奖励函数机制,并提出在该模型环境中对PPO(p
3、roximal policy optimization)与多智能体(agents)结合的M-PPO算法来加快训练速度,实现通过强化学习算法对机械臂进行智能运动控制,完成机械臂执行末端有效避障快速到达目标物体位置,并通过该算法与M-SAC(多智能体与Soft Actor-Critic结合)和PPO算法的实验结果进行分析,验证M-PPO算法在不同环境下机械臂运动控制决策调试上的有效性与先进性。实现孪生体自主规划决策,反向控制物理体同步运动的目的。关键词:强化学习;Unity引擎;运动控制;M-PPO算法;多智能体文献标志码:A中图分类号:TP391doi:10.3778/j.issn.1002-8
4、331.2207-0159Research on Motion Control Method of Manipulator Based on Reinforcement LearningYANG Bo1,WANG Kun1,2,MA Xiangxiang1,FAN Biao1,XU Lei1,YAN Hao11.School of Mechanical Engineering,Jiangnan University,Wuxi,Jiangsu 214122,China2.Institute of Intelligent Machines,Chinese Academy of Sciences,H
5、efei 230031,ChinaAbstract:The traditional motion control algorithm has the problems of poor environmental adaptability and low efficiency.Reinforcement learning can be used to constantly explore trial and error in the environment,and the motion of the manipu-lator can be controlled by adjusting the
6、neural network parameters through the reward function.However,in reality,it isimpossible to provide a trial and error environment for the manipulator.This paper uses the Unity engine platform to builda digital twin simulation environment for the manipulator,set the observation state variables and se
7、t the reward functionmechanism,and proposes the M-PPO algorithm combining PPO(proximal policy optimization)and multi-agent(agents)in this model environment to speed up the training speed and realize intelligent motion control of the manipulator throughreinforcement learning algorithms.This paper com
8、pletes the effective obstacle avoidance at the end of the manipulator sexecution and reach the target object s position quickly,and also analyzes the experimental results of the algorithm,M-SAC(multi-agent and soft actor critical)and PPO algorithm.The effectiveness and progressiveness of M-PPO algor
9、ithm is ver-ified in the debugging of the manipulator s motion control decision under different environments.It achieves the purposeof independent planning and decision-making of twins and reverse control of synchronous movement of physical bodies.Key words:reinforcement learning;Unity engine;motion
10、 control;M-PPO algorithm;multi-intelligence and agent基金项目:江苏省科技支撑计划(工业)项目-重点项目(BE2020006-5);国家自然科学基金(51505190)。作者简介:羊波(1997),男,硕士研究生,研究方向为机器人的设计与控制、数字孪生虚拟现实,E-mail:;王琨(1986),女,博士,副教授,研究方向为机器人控制技术、智能装备数字化与仿生机器人等。收稿日期:2022-07-11修回日期:2022-10-19文章编号:1002-8331(2023)06-0318-083182023,59(6)学习的发展与数据库的不断增加,出
11、现了很多强化学习算法,例如DQN(deep Q network)2、TRPO(trust regionpolicy optimization)3、PPO(proximal policy optimization)4、SAC(soft actor-critic)5等。强化学习6具有良好的鲁棒性能7和能够更好地适应环境的优点。Liu等8针对空间机械手提出一种两阶段轨迹规划算法,在第一阶段通过牛顿-拉斐逊迭代法和位置级逆运动学生成接触点处的多个期望配置,在第二阶段通过正弦多项式函数的系数对满足关节角度限制和有效载荷期望运动的关节轨迹进行参数化。Wang等9由阶跃激活函数和单一的状态变量,完成了硬限制
12、的神经网络并讨论了基于KWTA模型的并行排序和排序过滤的两个选定应用。Kormushev等10提出了一种在人机交互环境中学习和再现机器人力交互的方法,允许机械手通过在非结构化环境中与操作员交互。陈三风等11针对机械臂的控制冗余问题,将完全分解的约束再二次求解,并在约束二次求解后进行拆分,从而简化了机械臂的运动控制模型。胡琴等12提出一种基于SAC算法框架,通过激光雷达获取的地图信息的局部路径规划算法,设计了一种连续动作奖励机制,提高了训练效率。现有的强化学习机械臂控制算法,收敛速度慢,而且在仿真实验与真实实验情况下调试不够理想,存在很多环境要素的差异。本文利用Unity引擎创建一个数字孪生仿真
13、模型环境,其中主要包括六轴机械臂、目标物块和分拣台三部分,模拟了工业自动化系统中分拣物料的场景,用于强化学习算法训练。目标为实现适用于工业机械臂工作环境下目标物块分拣时机械臂的运动控制决策。使用PPO(proximal policy optimization)与多智能体(agents)结合的M-PPO算法对该环境中六轴机械臂进行运动控制,通过在虚拟环境中训练实现收敛,完成运动控制决策。并与M-SAC和PPO算法在累计值、值损失、策略损失和学习率四个方面进行比较分析。再利用孪生体反向控制机械臂达到智能决策效果。系统框架如图1所示。1强化学习的环境建模与设计1.1强化学习理论框架强化学习理论由五个
14、基本元素组成:智能体、状态、环境、奖励和行为13。这些基本元素之间的关系如图2所示。智能体为环境选择一个动作,环境接受该动作后,状态发生变化,产生一种强化信息(奖励与惩罚)并 决策指令输出执行规划层更新位置信息孪生空间虚拟智能体物理空间S10S9S6S2S1输入层学习器策略智能体状态s动作a隐藏层隐藏层输出层状态s奖赏r状态感知器动作选择器环境050100 150 200 250 300Stteps(104)1 0005000500Cumulative RewardM-PPOM-SACPPO图1系统体系框架Fig.1System of systems framework状态s奖赏r策略状态s动
15、作a智能体学习器状态感知器动作选择器环境图2强化学习的框架结构图Fig.2Framework of reinforcement learning羊波,等:多智能体强化学习的机械臂运动控制决策研究319Computer Engineering and Applications计算机工程与应用2023,59(6)及时反馈给智能体,根据强化信号和环境当前状态,智能体再按照一定策略选择下一步行动,受到正强化(奖)的概率增大是智能体选择的重要原则。选定的动作不仅会影响即时强化值,还会影响环境下一刻的环境状态和最终的强化值。1.2机械臂的环境建模与动作空间设计强化学习算法是通过反复试错来优化参数的,本文是
16、采用Unity引擎来创建一个六轴机械臂模型环境,如图3所示。六轴机械臂环境创建包括六轴机械臂智能体、分拣台、目标物块、障碍物以及UI滑动条。该训练环境涉及到的信息包括机械臂各个关节的转动角度与目标物块在分拣台上的随机位置。该训练环境是仿照工业系统中分拣物料现场模拟搭建出来的,UI滑动条的作用主要是限制六轴机械臂各个关节的旋转角度,这样可以大大提高后期训练的效率。六轴机械臂是由底座、六个关节和末端执行器组成,为了便于后面奖励函数的描述,对该机械臂的每个关节进行标记表示,如图4所示。对六轴机械臂智能体所抓取的目标物块进行随机化处理,即将目标物块的初始位置,在分拣台上随机产生位置,分拣台可以起到限制目标物块随机位置的范围。在分拣台上设置施障碍物以便机械臂智能体适应后期不同的环境。六轴机械臂智能体的动作可定义为六维数据,机械臂关节J1绕Y轴旋转,机械臂关节J2绕Y轴旋转,机械臂关节J3绕Y轴旋转,机械臂关节J4绕X轴旋转,机械臂关节J5绕Z轴旋转,机械臂关节J6绕X轴旋转,且每个关节旋转角度的值域均为-1,1。1.3碰撞检测六轴机械臂能有效地避障必定依赖于机械臂与障碍物之间的碰撞检测,盒型碰撞