CN113095500B - 一种基于多智能体强化学习的机器人追捕方法 - Google Patents
一种基于多智能体强化学习的机器人追捕方法 Download PDFInfo
- Publication number
- CN113095500B CN113095500B CN202110348762.0A CN202110348762A CN113095500B CN 113095500 B CN113095500 B CN 113095500B CN 202110348762 A CN202110348762 A CN 202110348762A CN 113095500 B CN113095500 B CN 113095500B
- Authority
- CN
- China
- Prior art keywords
- pursuit
- escaper
- robot
- strategy
- state
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 74
- 230000002787 reinforcement Effects 0.000 title claims abstract description 30
- 230000006870 function Effects 0.000 claims abstract description 87
- 238000012549 training Methods 0.000 claims abstract description 45
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 31
- 230000009471 action Effects 0.000 claims description 68
- 238000012360 testing method Methods 0.000 claims description 27
- 230000008569 process Effects 0.000 claims description 26
- 238000003062 neural network model Methods 0.000 claims description 25
- 230000033001 locomotion Effects 0.000 claims description 24
- 230000001133 acceleration Effects 0.000 claims description 21
- 238000004088 simulation Methods 0.000 claims description 12
- 238000011156 evaluation Methods 0.000 claims description 11
- 230000004913 activation Effects 0.000 claims description 9
- 230000007704 transition Effects 0.000 claims description 6
- 230000009191 jumping Effects 0.000 claims description 3
- 230000006399 behavior Effects 0.000 claims description 2
- 238000004364 calculation method Methods 0.000 claims description 2
- 238000013209 evaluation strategy Methods 0.000 claims description 2
- 238000012163 sequencing technique Methods 0.000 claims description 2
- 239000003795 chemical substances by application Substances 0.000 description 11
- 238000010586 diagram Methods 0.000 description 11
- 238000013528 artificial neural network Methods 0.000 description 10
- 230000009286 beneficial effect Effects 0.000 description 4
- 238000002474 experimental method Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000002349 favourable effect Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000011217 control strategy Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 235000008216 herbs Nutrition 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000004083 survival effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Geometry (AREA)
- Manipulator (AREA)
- Feedback Control In General (AREA)
Abstract
本发明公开了一种基于多智能体强化学习的机器人追捕方法,该方法包括构建两追一逃环境、构建马尔科夫模型、获取两追一逃网络模型以及扩展多追多逃策略等步骤。该方法利用已知的追捕机器人的运动学模型向前模拟追捕机器人在下一时刻的状态,并通过基于值函数的近似策略迭代算法,训练得到两追一逃环境下的追捕策略,进而通过贪心决策算法扩展至多追多逃的情况,得到多追多逃情况下的最优追捕策略,该方法得到的追捕策略追捕成功率更高,从而使追捕过程更加高效、可靠。
Description
技术领域
本发明涉及多机器人追逃分析技术领域,更具体的说是涉及一种基于多智能体强化学习的机器人追捕方法。
背景技术
目前,随着人工智能技术的迅猛发展,机器人在越来越多的领域中得到应用,在救援、勘探、侦查和飞行器编队作战等实际应用过程中,机器人之间需要互相协同完成任务,进而延伸出了多机器人追逃问题,但由于追捕机器人和入侵者的数目不断增多,难以通过控制的方法寻找到协作的最优策略。为此,在很多学者力图通过强化学习方法解决多智能体追捕问题,强化学习方法常用的建模方式是网格状环境模型。
但是,由于追捕机器人和逃跑者的状态空间是有限的,它们的动作空间则是在栅格中上下左右移动,这种环境建模方式无法推广至多机器人追捕问题中,实际的移动机器人需要以速度或加速度作为控制输入,且控制周期短。这类端到端连续输入下的控制策略,并不适合采用DQN(Deep Q-Network,深度Q网络)等离散动作学习的方法,而基于策略梯度的方法由于状态空间和动作空间过于庞大,采集到的数据有效性较差,训练大多缺乏稳定性,对数据量的要求很高;
同时,多机器人追捕问题的目标是尽快追捕所有的逃跑者,追捕机器人之间需要完成良好的配合,在某些情况下,机器人会出现消极决策,也可以称为懒惰的状况,缺乏与其他智能体的合作,陷入局部最优的状态无法跳出;
从对手的角度来看,不管是强化学习还是其他的学习方法,训练追捕策略时,必须相应的给定逃跑者的策略,才能完整的构建仿真环境,而逃跑者决策的优劣很大程度上影响了追捕机器人决策的能力上限。
最后,为了采集充足的训练数据,对局循环适合于在仿真环境下快速生成,但是应用于实际的机器人实验环境下,由于各种误差和通信同步问题,仿真环境下训练好的神经网络参数在实验中效果不佳,需要通过实验采集真实数据,对各参数进行重新训练和修正,耗时过多,仿真与实验环境参数缺乏重用性。
因此,如何提供一种准确可靠、高效稳定的机器人追捕方法是本领域技术人员亟需解决的问题。
发明内容
有鉴于此,本发明提供了一种基于多智能体强化学习的机器人追捕方法,该方法有效解决了现有的多机器人追捕方法准确性低、稳定性难以保证、实现过程复杂等问题。
为了实现上述目的,本发明采用如下技术方案:
一种基于多智能体强化学习的机器人追捕方法,该方法包括:
构建两追一逃环境:分别构建两个追捕机器人的运动学模型和一个逃跑者的运动学模型,并建立随机动作与人工势场相结合的逃跑者策略,得到两追一逃环境;
构建马尔科夫模型:根据所述两追一逃环境,构建马尔科夫模型,并确定所述马尔科夫模型中的状态空间、动作空间、回报函数和状态转移概率;
获取两追一逃网络模型:构建用于表征状态值函数的神经网络模型,采用近似soft策略迭代算法对所述神经网络模型进行训练和测试,得到两追一逃网络模型;
扩展多追多逃策略:建立多个追捕机器人和多个逃跑者,基于所述两追一逃网络模型,通过贪心决策算法确定各个追捕机器人的动作,得到最优追捕策略。
进一步地,所述追捕机器人的运动学模型为:
式中,xpi表示第i个追捕机器人的x坐标,ypi表示y坐标,θpi表示方向与x轴的夹角,vpi表示线速度,ωpi表示角速度,api表示第i个追捕机器人的线加速度,βpi表示角加速度。
进一步地,所述逃跑者的运动学模型为:
进一步地,所述随机动作与人工势场相结合的逃跑者策略具体为:逃跑者以ε0的概率选择随机速度和角度,以1-ε0的概率选择人工势场作用下的速度和角度,公式为:
式中,ve表示逃跑者的运动速度,φe表示逃跑者的运动方向,vem表示运动速度的上限值,元组Xe=(xe,ye)分别表示逃跑者的x坐标和y坐标,元组Xp=(xp,yp,θp,vp,ωp)分别表示追捕机器人的x坐标、y坐标、方向与x轴的夹角、线速度以及角速度。
本发明通过状态值函数来评估soft策略迭代方法中状态s的好坏,状态值越大表明该状态越有利于追捕机器人。该状态值函数具体为:
式中,E表示求期望,π表示最大熵评估策略,Q(st,a)表示行为-值函数,R(st,a)表示回报函数,γ表示折扣因子,Vπ表示在策略π下的值函数,表示追捕机器人采用动作a向前模拟得到的下一时刻的状态。
由于状态空间是连续的,无法用离散的表格来表征状态对应的值,因此本发明采用神经网络来表征状态值函数,输入状态向量,网络输出对该状态的评估值函数,输出值越大,说明该状态对追捕者越有利。本发明中所述神经网络模型包括输入层、两个隐藏全连接层以及输出层;
所述输入层为n×20维张量,所述隐藏全连接层的每一个结点均与上一层的所有结点相连,用来把前边提取到的特征综合起来,两个所述隐藏全连接层的节点数目均为256,激活函数均为ReLU函数,它的作用是给神经网络加入一些非线性因素,只有当时,才有线性的激活函数输出,否则节点不起作用。所述输出层为n×1维的张量,无激活函数,用于表示状态值函数的评估量。
进一步地,采用近似soft策略迭代算法对所述神经网络模型进行训练的过程,具体包括:
初始化表征状态值函数的神经网络模型以及经验池,并随机初始化追捕机器人与逃跑者的初始对局状态;
按照动作集向前预测,根据向前预测的近似值函数计算策略分布;
根据计算得到的策略分布,随机选择追捕机器人的动作;
通过状态值函数计算状态s下神经网络模型的标签值,并将计算结果放入经验池中;
计算逃跑者的动作,并根据追捕机器人的动作和逃跑者的动作,通过运动学模型计算新的对局状态,直至新的对局状态下逃跑者超出追逃范围或者追捕成功,跳出循环;
从经验池中随机抽取预设数量的数据,并采用均方根误差损失更新神经网络模型的网络参数,得到训练后的神经网络模型。
进一步地,所述均方根误差损失的计算公式为:
式中,b表示从经验池中随机抽取的数据数量,表示根据状态值函数计算的状态s下值函数网络的标签值,在对局的每一步里,根据向前预测的近似值函数计算策略分布π~P(aj|s),根据π的分布随机选择动作a,Vπ(s)表示当前值函数网络输入状态s的评估值。
进一步地,采用近似soft策略迭代算法对所述神经网络模型进行测试的过程具体包括:
载入所述神经网络模型、预设数量的初始对局状态,并设定对局胜场数为0;
按照动作集向前预测,根据向前预测的近似值函数计算策略分布;
选择策略分布中概率最大的动作作为追捕机器人的动作;
计算逃跑者的动作,并根据追捕机器人的动作和逃跑者的动作,通过运动学模型计算新的对局状态;
如果新的对局状态下追捕成功,更新胜场数量,并跳出循环,得到对局的胜率测试结果。
测试过程采用给定的值函数网络进行对局,测试追捕成功率。与训练不同的是,测试对局的追捕者动作选取的是最大概率对应的决策。
进一步地,所述扩展多追多逃策略的过程,具体包括:
将多个追捕机器人两两与各个逃跑者组合,并计算各组合方案对应的状态值函数;
根据状态值函数的大小,对各组合方案进行降序排列;
按照排序顺序,采用贪心决策算法依次确认各个追捕机器人的动作,并更新对局状态,得到最优追捕策略。
经由上述的技术方案可知,与现有技术相比,本发明公开提供了一种基于多智能体强化学习的机器人追捕方法,该方法利用已知的追捕机器人的运动学模型向前模拟追捕机器人在下一时刻的状态,并通过基于值函数的近似策略迭代算法,训练得到两追一逃环境下的追捕策略,进而通过贪心决策算法扩展至多追多逃的情况,得到多追多逃情况下的最优追捕策略,该方法得到的追捕策略追捕成功率更高,从而使追捕过程更加高效、可靠。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明提供的一种基于多智能体强化学习的机器人追捕方法的流程示意图;
图2为两个追捕机器人和一个逃跑者的追捕环境示意图;
图3为逃跑者在势场作用下的合力方向示意图;
图4为表征状态值函数的神经网络的结构示意图;
图5为两追一逃模型的训练及扩展过程原理示意图;
图6为四追两逃贪心决策算法的实现原理示意图;
图7为近似soft策略迭代算法训练过程的曲线示意图;
图8为不同ε取值下的追逃对局轨迹示意图;
图9为追捕失败下的追逃对局轨迹示意图;
图10为稀疏回报+稠密回报的训练过程曲线示意图;
图11为DQN训练单追单逃的胜率变化曲线示意图;
图12为四种不同初始位姿下追捕机器人的运动轨迹示意图;
图13为DQN策略以及ASPI策略下的运动轨迹示意图;
图14为七追四逃对局采用ASPI决策下的运动轨迹示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见附图1,本发明实施例公开了一种基于多智能体强化学习的机器人追捕方法,该方法包括:
S1:构建两追一逃环境:分别构建两个追捕机器人的运动学模型和一个逃跑者的运动学模型,并建立随机动作与人工势场相结合的逃跑者策略,得到两追一逃环境。
如图2所示,本实施例中追逃区域设定为边长L=10米的有界正方形,四周可视为墙壁,正方形内部无任何障碍物,任何个体与边界发生碰撞则视为个体不存在,具体地,如果追捕机器人碰撞边界,则将其剔除,如果逃跑者碰撞边界,则视为追捕成功。
有界环境中放置两个追捕机器人P和一个逃跑者E,它们均可获取全局的状态,且具有相同的决策周期,双方都无法预知对方的策略。
本实施例中两个追捕机器人的运动学模型相同,均为存在非完整约束的移动机器人,运动学模型如下:
其中,元组Xpi=(xpi,ypi,θpi,vpi,ωpi)分别表示第i个追捕机器人的x坐标、y坐标、方向与x轴的夹角、线速度、角速度。追捕机器人的控制量是(api,βpi),分别表示第i个追捕机器人的线加速度和角加速度,因而追捕机器人的速度均为连续的。
追捕机器人的状态量和控制量存在上下界,需要满足以下关系式:
其中,ypi需要在追捕区域的长度范围内,xpi需要在追捕区域的宽度范围内,其余的每个参量均存在一个上限值和下限值。
图2中的α角表示追捕机器人的速度方向与追捕机器人和逃跑者连线之间的夹角,可由向量夹角推导出α,公式为:
本实施例中逃跑者的运动学模型与追捕机器人不同,多追捕的问题下需要赋予逃跑者更灵活的逃跑能力,在实际应用中,逃跑者可以是人或机器人,因而本实施例将逃跑者建模为可全向移动的物体,其运动学模型如下:
其中,元组Xe=(xe,ye)分别表示逃跑者的x坐标和y坐标,逃跑者的控制量是(ve,φe),表示运动的速度和方向,逃跑者的状态量和控制量也存在上下界,需要满足以下关系式:
在以上的模型中,逃跑者的运动不存在非完整约束,可以全向移动,比追捕机器人更加灵活。
追捕成功的条件是:在给定的追捕时间内,任意一个追捕机器人与逃跑者之间的距离小于追捕距离,可以描述为下式:
其中,d(Xpi,Xe,t)=|xe(t)-xpi(t),ye(t)-ypi(t)|表示在t时刻第i个追捕机器人和逃跑者的距离,本实施例的追捕环境下逃跑者运动灵活,追捕难度更大。
本实施例赋予逃跑者较强的逃跑能力,逃跑者采用随机动作与人工势场法相结合的策略,生成的随机动作赋予逃跑者难以预测的逃跑决策,通过人工势场计算出的斥力方向赋予逃跑者远离追捕机器人的能力,利用灵活的运动学优势拖延时间。
具体地,逃跑者的策略是以ε0的概率选择随机速度和角度,以1-ε0的概率选择人工势场作用下的速度和角度,公式如下:
理论上来看,逃跑者需要远离追捕机器人,远离边界来保证更长时间的存活。因此本实施例建立人工势场,与边界和追捕机器人的距离越近,斥力越大,将边界设为斥力,追捕者设为斥力,进行力的矢量相加,最后计算出合力的方向。下式为斥力场的设置:
式中,q和q0分别表示逃跑者和施加力的物体的位置,d(q,q0)表示它们之间的距离。
斥力是斥力场的梯度,可推导出斥力表示为式:
为了预防逃跑者出界,只有距离逃跑者最近的两条边会给它施加斥力,方向垂直于边界朝向内部,为了使逃跑者远离追捕机器人,每个追捕机器人对它施加斥力,方向与追捕机器人指向逃跑者的连线方向一致。
因此,一部分是两个追捕机器人对它的斥力F11和F12,另一部分是正方形的垂直边界和水平边界对它的斥力F2和F3,最终的合力通过力的分解与合成计算得出,公式如下:
式中,F1i表示第i个追捕者对逃跑者的斥力,即F11和F12,F2和F3分别表示正方形的垂直边界和水平边界对它的斥力。
如图3所示,逃跑者在势场作用下受到两个追捕机器人的斥力与边界的斥力,这些作用力计算出合力F合的方向即为逃跑者合适的逃跑方向,逃跑者的速度设置为最大速度,能够更快地远离追捕者和边界。
S2:构建马尔科夫模型:根据两追一逃环境,构建马尔科夫模型,并确定马尔科夫模型中的状态空间、动作空间、回报函数和状态转移概率。
首先,对强化学习的内容进行说明:强化学习作为机器学习的范式和方法论之一,常用于描述和解决智能体在与环境的交互过程中通过学习策略以达成回报最大化或实现特定目标的问题。下表1为强化学习的几个重要概念:
表1强化学习的基本概念及解释
在强化学习中,马尔科夫模型(MDP,Markov Decision Process,即马尔科夫决策过程)描述了智能体在某一状态下采取一个动作转移到下一个状态,获取一步的回报,马尔科夫模型的四个组成部分分别是状态空间、动作空间、回报函数和状态转移概率。
在两追一逃的问题上,状态空间包含两个追捕机器人的状态和一个逃跑者的状态,动作空间包含追捕机器人和逃跑者的动作,回报函数的设置在强化学习中至关重要。
在两追一逃的问题下,由于追逃双方在正方形范围内的位置可以任意初始化,因而状态空间是连续且无限大的,每一时刻下的状态表示为下式:
S={Xp1,Xp2,Xe}={xp1,yp1,θp1,vp1,ωp1,xp2,yp2,θp2,vp2,ωp2,xe,ye}
上式中包含两个追捕者的坐标、速度方向、线速度、角速度以及逃跑者的坐标。
在一般的MDP中,动作空间的数目是有限的,有限的动作利于强化学习的训练,根据追捕者的运动学模型,本实施例将追捕者动作分为以下五种离散的动作,分别是保持原加速度不变、最大线加速度和不变的角加速度、最小线加速度和不变的角加速度、不变的线加速度和最大角加速度、不变的线加速度和最小角加速度。具体参见下式:
A(a,β)={(0,0),(am,0),(-am,0),(0,βm),(0,-βm)}
式中,A(a,β)分别表示五种不同的线加速度和角加速度的组合,能够满足转弯、加减速的任意动作。
回报函数用来将任务目标具体化和数值化,在追逃问题构建的环境中,追捕成功对应着较大的正回报,追捕机器人出界对应着较大的负回报,而在追捕机器人接近逃跑者的时候,需要给出一定的奖励,有助于策略的学习和更新。追捕机器人距离逃跑者越近,表明追捕成功的可能性越高,由此给出了回报函数公式:
Rd(s,a)=λ(d(s)-d(s′))-δ
其中,Rs为稀疏回报函数,Rd为追捕过程中的稠密回报函数。上式中,λ表示距离作为回报贡献的系数,d(s)和d(s')表示当前状态和上一时刻状态下的追捕机器人和逃跑者的最短距离,δ表示每增加一次追捕时间步带来的惩罚,为了鼓励追捕更快结束。稀疏回报是在追捕对局产生结果时得到的奖励,如果追捕者超出范围,得到-1的回报,如果追捕成功,得到+1的回报。
本实施例中状态转移概率是未知的,因为逃跑者作为状态中的组成部分,它的行为不可预测,但是可以通过设置较小的模拟步长假定逃跑者位置不变,获得近似状态转移概率。
S3:获取两追一逃网络模型:构建用于表征状态值函数的神经网络模型,采用近似soft策略迭代算法对神经网络模型进行训练和测试,得到两追一逃网络模型。
强化学习训练的目标是最大化累积回报函数,它的期望可以表示为:
把这个期望定义为状态值函数,上式表示在st状态下的值评估,R表示回报函数,si+t表示i+t时刻下的状态,ɑi+t表示i+t时刻选取的动作,γ表示折扣因子,取值范围是(0,1),用于衡量长期回报和短期回报的重要性,γ越大表示智能体越重视长期回报。
首先,介绍基本的soft策略迭代方法,它是一种在soft策略评估和soft策略改进之间不断迭代的过程。soft策略评估根据最大熵评估策略π的值,对于固定的策略来说,状态-行为值函数,也可以称作soft Q函数,可以用以下公式计算:
soft策略改进是根据新的soft Q函数进行策略更新,公式如下:
soft策略迭代可以收敛到最优策略,具体的证明本发明中不在赘述。
基于soft策略迭代方法和两追一逃问题,本发明提出了一种基于值函数的近似策略迭代算法,构建值函数V(s)来评估状态s的好坏,状态值越大表明该状态越有利于追捕机器人。据此,soft Q值可以得到每种动作的评估值,因此如果策略π是已知的,V(s)可以推导为式:
此公式根据策略分布π计算出近似的Q(st,a),是通过追捕机器人运动学采用动作a向前模拟得到的下一时刻的状态,实际上,下一时刻的状态不仅追捕机器人的状态发生了改变,逃跑者也执行了某种动作,但由于无法预知逃跑者的动作,因而将下一时刻的状态近似为逃跑者不动,只有追捕机器人变化,由于决策周期设置的数值很小,因而逃跑者在这一个决策周期内的状态改变很小,这一近似是相对合理的。
得到了下一时刻的状态值后,可以根据soft策略改进推导出新的策略分布:
其中,τ是用于调节探索和利用之间平衡性的超参数,τ越小,概率分布的形状越平滑,不同动作对应的概率相差越小,带来更多的探索能力,相反τ越大,选择值更大的动作的概率相对越大,利用当前策略生成的数据越好。
由于状态空间是连续的,无法用离散的表格来表征状态对应的值,因此采用神经网络来表征状态值函数V(s),输入状态向量,网络输出对该状态的评估值函数,输出值越大,说明该状态对追捕者越有利。
本实施例中构建的神经网络模型,其神经网络类型采用最常用的BP神经网络,网络输入是(n×20)维张量,中间包括两个隐藏全连接层,全连接层的每一个结点都与上一层的所有结点相连,用来把前边提取到的特征综合起来,两层的节点数目均为256,激活函数均是ReLU:f(x)=max(0,x),它的作用是给神经网络加入一些非线性因素,只有当x>0时,才有线性的激活函数输出,否则节点不起作用。输出层是(n×1)维的张量,无激活函数,表示值函数的评估量,网络结构如图4所示。
上述神经网络模型中的20维张量分别是:
其中,d1、d2分别表示两个追捕者距离逃跑者的距离。
每一维张量都采用最大-最小标准化的归一化方法,将其归一化为[0,1]的值,公式为:
式中,X表示需要归一化的量,min表示X的取值下限,max表示X的取值上限。
由于追逃对局的环境是连续且有界的,状态空间复杂且连续,因此本实施例采用神经网络来表示状态值函数V(s),神经网络模型的输入是追捕机器人和逃跑者的状态进行特征筛选和归一化处理后得到的20维向量。算法1是训练部分的伪代码,共包含N个外层循环,每次采集若干对局的数据放入经验池中,再进行统一的网络训练。
结合附图5,本实施例中算法1,即通过近似soft策略迭代算法进行训练的过程具体为:
算法2是测试部分的伪代码,用于采用给定的值函数网络进行对局,测试追捕成功率。与训练不同的是,测试对局的追捕者动作选取的是最大概率对应的决策。
本实施例中算法2,即通过近似soft策略迭代算法进行测试的过程具体为:
S4:扩展多追多逃策略:建立多个追捕机器人和多个逃跑者,基于两追一逃网络模型,通过贪心决策算法确定各个追捕机器人的动作,得到最优追捕策略。
参见附图5,在训练好的两追一逃网络的基础上,可以将问题拓展为N追M逃的环境上,例如四个追捕机器人P1、P2、P3、P4与两个逃跑者E1、E2,首先计算追捕机器人两两与各个逃跑者组合的值函数,并将这些组合根据值函数大小进行降序排列,比如:
V(S(P1,P4,E1))>V(S(P2,P4,E2))>V(S(P2,P1,E1))>V(S(P3,P1,E1))>…
从最大的V值开始,每步采用贪心原则,第一次确认P1和P4的动作,在P4已确定的动作下,确认P2的动作,最后确定P3的动作,顺序如图6所示。
如果场上只剩一个追捕机器人,则采用DQN训练的单追单逃网络进行决策即可。
下面通过搭建仿真平台对本实施例公开的上述方法进行仿真分析。
在环境搭建的过程中,按照下表2中的参数进行设置,后续的环境参数也按照下表2设定,表2给出了在采集数据和训练过程中相关参数的设置。
表2仿真环境的参数含义与数值设置
符号 | 含义 | 数值(单位) |
vpl | 追捕机器人的最小速度 | 0.1m/s |
vpm | 追捕机器人的最大速度 | 1.5m/s |
ωpm | 追捕机器人的最大角速度 | 1rad/s |
am | 追捕机器人的最大线加速度 | 0.8m/s2 |
βm | 追捕机器人的最大角加速度 | 1rad/s2 |
vem | 逃跑者的最大速度 | 1m/s |
D | 追捕机器人的追捕距离 | 0.3m |
T | 追捕一局的最大时间步长 | 500 |
△t | 追逃对局中双方的决策周期 | 0.1s |
L | 追捕范围正方形的边长 | 10m |
下表3给出了在采集数据和训练过程中相关参数的设置方案:
表3采集数据和网络训练中的参数设置
符号 | 含义 | 数值 |
λ | 稠密回报函数的距离参数 | 0.1 |
δ | 稠密回报函数步数惩罚 | -0.01 |
τ | 玻尔兹曼分布的超参数 | 0.2 |
b | 小批量训练网络时每一批数据的大小 | 128 |
γ | 贝尔曼方程折扣因子 | 0.99 |
lr | 训练值函数网络的学习率 | 0.0001 |
ε0 | 逃跑者选择随机策略的初始概率 | 0.9 |
M | 每个训练的循环采集的对局数目 | 100 |
Mtest | 每次测试的对局数目 | 100 |
本实施例中所有训练和测试的代码均用Python编写,在Windows 10,Python 3.5环境下运行,神经网络和训练采用PyTorch深度学习包实现,曲线结果的绘制采用Matplotlib包。
首先随机初始化100个初始对局状态作为测试的用例,每次测试网络能力都采用这些固定的初始对局,确保测试的公平性。
第一部分训练只采用稀疏回报,在每一次循环中,采集100局数据,并在采集过程中按照上述算法进行标签的生成,训练时采用的损失函数是均方误差损失(即MSE Loss),每次随机在经验池中抽取一批数据采用Adam优化器进行训练。每次大循环结束后,用100个测试用例进行对局,测试值函数网络的能力,计算当前网络下的追捕成功率。如果成功率和步数满足要求,则减小ε以提升逃跑者的能力。图7是采用上述过程训练500个循环的中间步结果,包括测试100局的平均步长,追捕成功率以及逃跑者随机运动的概率。
图7为近似soft策略迭代算法训练过程的曲线,其中,回报函数是稀疏回报,具体示出了每次循环后100个样例测试的对局平均步长、测试对局的胜率、逃跑者选择随机策略的概率以及最优结果点。
从图7分析可知,前136个循环是有效的训练过程,胜率从0开始迅速上升至90%左右,逃跑者选择随机动作的概率不断降低,追捕难度加大,直至这一概率值到达ε=0.62,追捕机器人的策略网络能力达到最强,此时胜率为91%,平均步长为161步(即16.1秒)。从第137个循环开始,胜率逐渐下滑,平均步长攀升,网络难以训练出应对灵活且策略更优的逃跑者的策略,端到端控制的强化学习。将第136次循环训练的模型上应用到不同的ε上,得到如图8所示的追逃轨迹,从步长大小可以明显发现ε越小追捕越难,在ε=0.2这一更小的值时,追捕机器人由于灵活性的限制无法接近逃跑者,直至超出步长限制也无法成功追捕,如图9所示。采用稀疏回报训练的结果反映了训练的瓶颈。
图8为不同ε取值下的追逃对局轨迹其中,图a为ε=0.9,步长63;图b为ε=0.8,步长108;图c为ε=0.7,步长142;图d为ε=0.6,步长204。
图9示出了ε=0.2时,追逃对局超出步数限制,追捕失败。
第二部分采用的是稠密回报+稀疏回报,在第一部分的结果中可知逃跑者能力在ε=0.62可击败的,因而初始时采用0.62进行数据采集和训练,当胜率达到90%以上时,切换为只采用稀疏回报,训练50个循环的结果如图10所示,完成第23个循环的训练时(黑色竖线标注的位置),网络的能力最强,此时ε=0.56,胜率为92%,平均步长为159。
与第一部分的训练进行对比,显然双回报设置使得训练进度加快,且在应对更灵活的逃跑者的情况下,仍然能够达到90%以上的追捕成功率。
在相同的追捕环境下,采用DQN的强化学习方法训练单个追捕机器人的追捕策略,与ASPI(Approximate Soft Policy Iteration,近似策略迭代算法)方法进行对比,DQN训练方法按照标准算法进行单追捕机器人追捕逃跑,且中间状态的回报函数同样以追逃双方的距离差给定,最后一步采用胜负结果{1,-1}作为回报,每采集一步数据就放入经验池,随机从经验池中抽取一批数据进行训练,每完成100个对局进行一次胜率测试,共进行3000个对局的训练。由于动态单追单逃情况下的逃跑者占据优势,因而DQN训练数据生成时逃跑者随机初始化位置,在对局中保持不变。图11是测试30次的胜率变化曲线,图12是DQN追捕胜率100%的几种不同初始位姿下的轨迹图。
采用训练成功率为100%的DQN网络提供每个追捕机器人的策略,在两追一逃的环境中测试胜率,图13中显示了在相同初始位姿下两种方法的运动轨迹,逃跑者轨迹末端的圆表示追捕范围,只要追捕机器人进入这个圆圈,就表明该逃跑者被成功追捕。左侧的图i和图k示出的轨迹是DQN的对局,即DQN策略的运动轨迹,右侧的图j和图m轨迹是ASPI的对局,即ASPI策略的轨迹,从图13中可以发现右侧追捕过程明显更短,而左侧的追捕机器人都在跟随逃跑者,却由于灵活性的限制而无法追捕成功。
根据贪心追捕策略,将训练好的ASPI值函数网络应用于M个追捕机器人追捕N个逃跑者的环境中,在相同的ε数值下,分别在多种追逃数量组合的情况下,采用DQN与ASPI方法测试100个追逃对局,只有追捕到全部逃跑者才视为追捕任务成功,用DQN方法进行决策时,每个追捕机器人都分别计算与逃跑者之间的动作评估值然后进行累加,该机器人的动作选择和最大的值对应的动作。胜率结果如下表4所示:
表4测试多组M追N逃跑环境下的胜率(ε=0.6)
序号 | 追捕机器人数量 | 逃跑者数量 | DQN胜率 | ASPI胜率 |
1 | 4 | 2 | 23% | 83% |
2 | 3 | 2 | 18% | 73% |
3 | 5 | 3 | 7% | 71% |
4 | 7 | 4 | 2% | 68% |
由上表4可知,在追逃环境复杂的情况下本实施例公开的ASPI方法胜率远高于DQN,随着逃跑者数量的增加,ASPI方法胜率也有所下降,是因为需要追捕更多的逃跑者导致步数增加,超出给定限制。
图14是采用ASPI-Greedy方法测试7追4逃环境下的对局轨迹,在第446时间步完成所有逃跑者的追捕。综上所述,本实施例提出的贪心策略可以很好的应对变数目多追多逃的追捕问题。
本实施例在已知追捕机器人运动学模型的情况下,利用了向前模拟追捕机器人在下一时刻的状态,提出了一种基于值函数的近似策略迭代算法,训练两追一逃环境下的追捕策略,并通过贪心决策拓展至多追多逃的问题。仿真结果以及与DQN方法的对比表明,本实施例提出的算法收敛快,追捕策略更优,在多追多逃的环境下,依然能够具有较高的追捕成功率。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (8)
1.一种基于多智能体强化学习的机器人追捕方法,其特征在于,包括:
构建两追一逃环境:分别构建两个追捕机器人的运动学模型和一个逃跑者的运动学模型,并建立随机动作与人工势场相结合的逃跑者策略,得到两追一逃环境;
构建马尔科夫模型:根据所述两追一逃环境,构建马尔科夫模型,并确定所述马尔科夫模型中的状态空间、动作空间、回报函数和状态转移概率;
获取两追一逃网络模型:构建用于表征状态值函数的神经网络模型,采用近似soft策略迭代算法对所述神经网络模型进行训练和测试,得到两追一逃网络模型;
扩展多追多逃策略:建立多个追捕机器人和多个逃跑者,基于所述两追一逃网络模型,通过贪心决策算法确定各个追捕机器人的动作,得到最优追捕策略;
所述随机动作与人工势场相结合的逃跑者策略具体为:逃跑者以ε0的概率选择随机速度和角度,以1-ε0的概率选择人工势场作用下的速度和角度,公式为:
式中,ve表示逃跑者的运动速度,φe表示逃跑者的运动方向,vem表示运动速度的上限值,元组Xe=(xe,ye)分别表示逃跑者的x坐标和y坐标,元组Xp=(xp,yp,θp,vp,ωp)分别表示追捕机器人的x坐标、y坐标、方向与x轴的夹角、线速度以及角速度;
所述扩展多追多逃策略的过程,具体包括:
将多个追捕机器人两两与各个逃跑者组合,并计算各组合方案对应的状态值函数;
根据状态值函数的大小,对各组合方案进行降序排列;
按照排序顺序,采用贪心决策算法依次确认各个追捕机器人的动作,并更新对局状态,得到最优追捕策略。
5.根据权利要求1所述的一种基于多智能体强化学习的机器人追捕方法,其特征在于,所述神经网络模型包括输入层、两个隐藏全连接层以及输出层;
所述输入层为n×20维张量,所述隐藏全连接层的每一个结点均与上一层的所有结点相连,两个所述隐藏全连接层的节点数目均为256,激活函数均为ReLU函数,所述输出层为n×1维的张量,无激活函数,用于表示状态值函数的评估量。
6.根据权利要求1所述的一种基于多智能体强化学习的机器人追捕方法,其特征在于,采用近似soft策略迭代算法对所述神经网络模型进行训练的过程,具体包括:
初始化状态值函数对应的神经网络模型以及经验池,并随机初始化追捕机器人与逃跑者的初始对局状态;
按照动作集向前预测,根据向前预测的近似值函数计算策略分布;
根据计算得到的策略分布,随机选择追捕机器人的动作;
通过状态值函数计算状态s下神经网络模型的标签值,并将计算结果放入经验池中;
计算逃跑者的动作,并根据追捕机器人的动作和逃跑者的动作,通过运动学模型计算新的对局状态,直至新的对局状态下逃跑者超出追逃范围或者追捕成功,跳出循环;
从经验池中随机抽取预设数量的数据,并采用均方根误差损失更新神经网络模型的网络参数,得到训练后的神经网络模型。
8.根据权利要求1所述的一种基于多智能体强化学习的机器人追捕方法,其特征在于,采用近似soft策略迭代算法对所述神经网络模型进行测试的过程具体包括:
载入所述神经网络模型以及预设数量的初始对局状态,并设定对局胜场数为0;
按照动作集向前预测,根据向前预测的近似值函数计算策略分布;
选择策略分布中概率最大的动作作为追捕机器人的动作;
计算逃跑者的动作,并根据追捕机器人的动作和逃跑者的动作,通过运动学模型计算新的对局状态;
如果新的对局状态下追捕成功,更新胜场数量,并跳出循环,得到对局的胜率测试结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110348762.0A CN113095500B (zh) | 2021-03-31 | 2021-03-31 | 一种基于多智能体强化学习的机器人追捕方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110348762.0A CN113095500B (zh) | 2021-03-31 | 2021-03-31 | 一种基于多智能体强化学习的机器人追捕方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113095500A CN113095500A (zh) | 2021-07-09 |
CN113095500B true CN113095500B (zh) | 2023-04-07 |
Family
ID=76671769
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110348762.0A Active CN113095500B (zh) | 2021-03-31 | 2021-03-31 | 一种基于多智能体强化学习的机器人追捕方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113095500B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113554300A (zh) * | 2021-07-19 | 2021-10-26 | 河海大学 | 一种基于深度强化学习的共享车位实时分配方法 |
CN114779631B (zh) * | 2022-03-21 | 2024-07-23 | 鹏城实验室 | 用于形成追捕策略的强化学习模型训练方法和训练装置 |
CN114839969A (zh) * | 2022-04-02 | 2022-08-02 | 达闼机器人股份有限公司 | 控制设备移动的方法、装置、存储介质与电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105487544A (zh) * | 2016-01-18 | 2016-04-13 | 沈阳工业大学 | 基于模糊推理系统的多机器人角度控制围捕方法 |
CN108803321A (zh) * | 2018-05-30 | 2018-11-13 | 清华大学 | 基于深度强化学习的自主水下航行器轨迹跟踪控制方法 |
CN109733415A (zh) * | 2019-01-08 | 2019-05-10 | 同济大学 | 一种基于深度强化学习的拟人化自动驾驶跟驰模型 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104942807B (zh) * | 2015-04-16 | 2017-02-22 | 上海大学 | 基于扩展式合作博弈的多机器人围捕目标方法 |
CN107562074B (zh) * | 2017-07-24 | 2020-05-22 | 哈尔滨工程大学 | 一种面向mauvs围捕的任务分配方法 |
CN107831780B (zh) * | 2017-10-24 | 2020-09-22 | 佛山科学技术学院 | 一种基于模拟退火思想的多机器人合作围捕方法 |
CN109116854B (zh) * | 2018-09-16 | 2021-03-12 | 南京大学 | 一种基于强化学习的多组机器人协作控制方法及控制系统 |
CN111079305A (zh) * | 2019-12-27 | 2020-04-28 | 南京航空航天大学 | 一种基于λ-回报的异策略多智能体强化学习协作方法 |
CN111898728A (zh) * | 2020-06-02 | 2020-11-06 | 东南大学 | 一种基于多Agent强化学习的团队机器人决策方法 |
-
2021
- 2021-03-31 CN CN202110348762.0A patent/CN113095500B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105487544A (zh) * | 2016-01-18 | 2016-04-13 | 沈阳工业大学 | 基于模糊推理系统的多机器人角度控制围捕方法 |
CN108803321A (zh) * | 2018-05-30 | 2018-11-13 | 清华大学 | 基于深度强化学习的自主水下航行器轨迹跟踪控制方法 |
CN109733415A (zh) * | 2019-01-08 | 2019-05-10 | 同济大学 | 一种基于深度强化学习的拟人化自动驾驶跟驰模型 |
Also Published As
Publication number | Publication date |
---|---|
CN113095500A (zh) | 2021-07-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113095500B (zh) | 一种基于多智能体强化学习的机器人追捕方法 | |
Amarjyoti | Deep reinforcement learning for robotic manipulation-the state of the art | |
Won et al. | Physics-based character controllers using conditional vaes | |
Rimey et al. | Control of selective perception using bayes nets and decision theory | |
CN102402712B (zh) | 基于神经网络的机器人强化学习初始化方法 | |
Fox et al. | Robot introspection through learned hidden markov models | |
de la Cruz et al. | Pre-training with non-expert human demonstration for deep reinforcement learning | |
CN110132282B (zh) | 无人机路径规划方法及装置 | |
CN110014428B (zh) | 一种基于强化学习的时序逻辑任务规划方法 | |
Melo et al. | Learning humanoid robot running skills through proximal policy optimization | |
CN109657868A (zh) | 一种任务时序逻辑约束的概率规划识别方法 | |
CN112231968A (zh) | 基于深度强化学习算法的人群疏散仿真方法及系统 | |
CN110000781B (zh) | 基于发育网络的移动机器人运动方向预先决策方法 | |
CN113379027A (zh) | 一种生成对抗交互模仿学习方法、系统、存储介质及应用 | |
Ziya et al. | Comparative study for deep reinforcement learning with CNN, RNN, and LSTM in autonomous navigation | |
Hu et al. | Heterogeneous crowd simulation using parametric reinforcement learning | |
Kulic et al. | Incremental learning of full body motion primitives for humanoid robots | |
CN113110101B (zh) | 一种生产线移动机器人聚集式回收入库仿真方法及系统 | |
CN112525194A (zh) | 一种基于海马-纹状体内源性和外源性信息的认知导航方法 | |
Liu | RETRACTED: Research on decision-making strategy of soccer robot based on multi-agent reinforcement learning | |
Ganesh et al. | Deep reinforcement learning for simulated autonomous driving | |
CN115906673A (zh) | 作战实体行为模型一体化建模方法及系统 | |
Chiappa et al. | Using Bayesian dynamical systems for motion template libraries | |
Woodford et al. | Complex Morphology Neural Network Simulation in Evolutionary Robotics | |
Hu et al. | Hybrid learning architecture for fuzzy control of quadruped walking robots |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |