CN113031528B - 一种基于深度确定性策略梯度的多足机器人非结构性地面运动控制方法 - Google Patents
一种基于深度确定性策略梯度的多足机器人非结构性地面运动控制方法 Download PDFInfo
- Publication number
- CN113031528B CN113031528B CN202110212302.5A CN202110212302A CN113031528B CN 113031528 B CN113031528 B CN 113031528B CN 202110212302 A CN202110212302 A CN 202110212302A CN 113031528 B CN113031528 B CN 113031528B
- Authority
- CN
- China
- Prior art keywords
- robot
- network
- value
- actual
- action
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 41
- 238000004088 simulation Methods 0.000 claims abstract description 81
- 230000009471 action Effects 0.000 claims abstract description 63
- 238000011217 control strategy Methods 0.000 claims abstract description 20
- 238000013178 mathematical model Methods 0.000 claims abstract description 11
- 238000011156 evaluation Methods 0.000 claims description 79
- 238000012549 training Methods 0.000 claims description 28
- 230000008569 process Effects 0.000 claims description 17
- 239000003990 capacitor Substances 0.000 claims description 11
- 238000005070 sampling Methods 0.000 claims description 9
- 238000006073 displacement reaction Methods 0.000 claims description 3
- 238000011478 gradient descent method Methods 0.000 claims description 3
- 230000003993 interaction Effects 0.000 claims description 3
- 230000006978 adaptation Effects 0.000 abstract description 4
- 230000007613 environmental effect Effects 0.000 abstract description 4
- 241000238631 Hexapoda Species 0.000 description 29
- 230000006870 function Effects 0.000 description 24
- 210000001503 joint Anatomy 0.000 description 16
- 210000002414 leg Anatomy 0.000 description 13
- 239000003795 chemical substances by application Substances 0.000 description 9
- 210000002569 neuron Anatomy 0.000 description 6
- 210000002683 foot Anatomy 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 4
- 230000002787 reinforcement Effects 0.000 description 4
- 239000013598 vector Substances 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 210000000544 articulatio talocruralis Anatomy 0.000 description 2
- 230000001186 cumulative effect Effects 0.000 description 2
- 230000005484 gravity Effects 0.000 description 2
- 210000004394 hip joint Anatomy 0.000 description 2
- 210000000629 knee joint Anatomy 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 241000239290 Araneae Species 0.000 description 1
- 241000282414 Homo sapiens Species 0.000 description 1
- 241001465754 Metazoa Species 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000005314 correlation function Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 210000004205 output neuron Anatomy 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000001020 rhythmical effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/414—Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
- G05B19/4142—Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller characterised by the use of a microprocessor
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/34—Director, elements to supervisory
- G05B2219/34013—Servocontroller
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Human Computer Interaction (AREA)
- Manufacturing & Machinery (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Manipulator (AREA)
Abstract
本发明涉及多足机器人运动控制技术领域,具体为一种基于深度确定性策略梯度的多足机器人运动控制方法。通过构建深度确定性策略梯度智能体结构,并从最终训练好的智能体网络结构中的动作网络提取出来作为真实机器人的控制策略,用于真实机器人构建,解决了机器人在非结构化地形上缺少泛化能力、环境适应差的技术问题。更进一步的,在本发明的方法中引入关节电源数学模型对电源功率进行分配,并将该分配方案定义到仿真机器人模型的运动规则中,通过电源功率分配调整电机输出力矩,实现对智能体网络结构输出关节力矩的设置,缩小仿真环境与真实机器人的差异,以使仿真环境中的机器人运动控制策略更好得应用于真实机器人。
Description
技术领域
本发明涉及足式机器人运动控制技术领域,尤其涉及一种基于深度确定性策略梯度的多足机器人运动控制方法。
背景技术
随着科学技术的不断进步,机器人智能化产业的发展取得了许多突破性的进展。在人类涉及的许多未知的、高危险的领域中,机器人可以替代人们去完成许多具有高风险性质的工作,大大降低了人们工作的难度和危险系数,所以研究机器人对人们的生活和工作都有重大意义。
足式机器人因为其与地面间的接触为点接触,具有高自由度的关节设计和多支撑点的足端结构设计,可以实现其重心高度的实时调整,这些特性都使其在不规则地形中具有更好的环境适应能力和稳定性。与此同时,足式机器人的研究也面临很多挑战。首先是其前进速度相对于轮式机器人缓慢,其次由于足式机器人具有多自由度的关节结构并需要各关节间进行协调运动,因此机器人运动控制策略要求也更为复杂。
在足式机器人领域,由于多足机器人相较于双足机器人稳定性更好,且控制策略更为简易,因此具有不可替代的作用。传统多足机器人的运动控制策略是通过分析环境,提取非结构化地形样本,然后通过正逆运动学进行姿态估计与轨迹规划实现的。由于环境复杂多变,传统方法将非结构化地面进行抽象划分,分为阶梯,沟渠等;分别针对这些划分设计不同运动形态。这种方式导致运动控制策略复杂性急速上升,使机器人在非结构化地形上缺少泛化能力、环境适应差。
发明内容
本发明的目的在于:提供一种基于深度确定性策略梯度的多足机器人运动控制方法,以解决传统多足机器人在非结构化地形上缺少泛化能力、环境适应差的技术问题。
为实现上述目的,本发明采取如下技术方案:
一种基于深度确定性策略梯度的多足机器人运动控制方法,包括以下步骤:
步骤S1、构建多足机器人仿真模型,且使该模型能在仿真环境中站立行走。
步骤S2、对步骤S1所构建的多足机器人仿真模型在仿真环境中的运动规则进行定义,具体为:
S01、预设深度确定性策略梯度奖励函数为:rt=机器人前进速度+机器人采样时间-机器人起始高度-机器人机身俯仰角-参数代价值。
S02、定义多足机器人动作值,动作值所涉及参数包括:机器人所有关节力矩t、机器人单腿所有关节转动角度即角度值θ′、关节转动角速度值v;定义多足机器人运动状态值,运动状态值包括:机器人所有关节力矩t、机器人单腿所有关节转动角度即角度值θ′、关节转动角速度值v、机器人单腿足端与地面之间的摩擦力f、机身位移、机身俯仰角。
步骤S3、构建智能体网络结构;智能体网络结构包括动作网络、评价网络和经验池;其中动作网络又分为实际动作网络和目标动作网络;评价网络又分为实际评价网络和目标评价网络。
步骤S4、对步骤S3构建的智能体网络结构进行训练,使其能够控制多足机器人仿真模型运动;所述智能体网络结构按照如下过程进行训练:
S401、初始化实际动作网络和实际评价网络的参数,将初始化后的实际动作网络和实际评价网络进行复制,得到目标动作网络和目标评价网络;根据使用需求设定经验池容量为m。
S402、初始化多足机器人仿真模型状态,得到多足机器人仿真模型初始运动状态值st;
S403、将步骤S402得到的初始运动状态值st输入实际动作网络,通过实际动作网络计算得到动作值at。然后将动作值at提供给多足机器人仿真模型使其运动,以获得当前运动状态值st+1;通过步骤S2预设的奖励函数计算出此次交互的奖励值rt;
S404、根据预设的机器人机身俯仰角标准值对当前机器人运动状态进行判断,若当前运动状态中机身俯仰角小于机身俯仰角标准值,则说明此时机器人为跌倒状态,返回步骤S401;若当前运动状态中机器人机身俯仰角≥机身俯仰角标准值,则说明此时机器人处于正常状态,执行步骤S405;
S405、将步骤S402~S403中得到的st、st+1、at、rt作为一组训练样本存入经验池。
S406、不断重复迭代步骤S403~S405的过程,直至经验池中的样本数量≥步骤S401设定的经验池容量m时,开始对样本进行采样。
S407、对经验池中的所有样本进行求和,根据样本被采样到的优先级计算出经验池中样本采样概率值,并依据采样概率值的大小,从经验池中选出用于训练的训练样本;所述样本采样概率值的计算方式为:其中pj表示样本被采样到的优先级,∑kpk表示经验池中所有样本的求和。
S408、将步骤S407获取的训练样本提供给目标评价网络计算得到目标评价网络累计奖励值yj,并将目标评价网络累计奖励值yj提供给实际评价网络,计算出实际评价网络损失函数J(θπ);利用梯度下降法,更新实际评价网络参数,并通过更新后的实际评价网络参数得出实际评价网络Q值。
S409、根据步骤S408中获得的目标评价网络累计奖励值yj与实际评价网络Q值、计算出的目标评价网络累计奖励值yj与实际评价网络Q值之间的差值|δ(t)|,并利用该差值|δ(t)|更新经验池中的样本被采样到的优先级pj。
S410、通过步骤S408得出的实际评价网络Q值,计算出实际动作网络损失函数;通过实际动作网络损失函数、结合实际评价网络参数更新过程中的梯度信息,更新实际动作网络参数。
S411、判断机器人是否走完预设最大步数,若未走完,则执行S403;若走完预设最大步数,则利用S408更新后的实际评价网络的参数、S410更新后实际动作网络参数,通过软更新的方式,更新目标动作网络参数和目标评价网络参数。
S412、重复步骤S401~S411,直至网络收敛,完成智能体网络结构训练。
步骤S5、将步骤S4训练好的智能体网络结构在仿真环境中进行验证;若验证智能体网络结构可以控制机器人仿真模型,使其能够稳定的按照预设路径运动,则将智能体网络结构中的动作网络进行提取,用于控制真实机器人。
进一步的,所述步骤S4所定义的规则中还包括建立关节电源数学模型;通过该关节电源数学模型对智能体网络结构输出的所有机器人关节力矩进行设置,缩小仿真环境中机器人与真实环境中机器人之间的差距,使仿真环境中的运动控制策略更好的用于真实机器人构建。
所述关节电源数学模型包括电机动力电池和电容两部分;设电机动力电池功率为Pb,电容功率为Pc,则最终用于关节电机的最大功率为Pb+Pc。对于直流伺服电机而言,设机器人所有关节力矩为t,转速为n=v/2π,则直流伺服电机的功率P=i·t·n,式中i为常数;因此对电机模型作以下规定,当智能体网络结构输出的机器人所有关节力矩t乘以转速n小于Pc/i时,由电容提供电机电能,机器人所有关节力矩为Pc/(i·n);当机器人所有关节力矩t乘以转速n大于等于Pc/i而小于(Pc+Pb)/i时,电机动力电池与电容同时提供电能,此时机器人所有关节力矩t为(Pc+Pb)/(i·n);当机器人所有关节力矩t乘以转速n大于(Pc+Pb)/i时,机器人所有关节力矩t为(Pc+Pb)/(i·n);当转速n为0时,电机动力电池向电容充电。
进一步的,由于真实机器人受电机自身重量,机械结构,启动摩擦力等影响,因此仿真环境中对多足机器人仿真模型所有关节力矩添加高斯白噪声以提高控制策略的鲁棒性。
进一步的,为了获得更快的收敛速度,所述智能体网络结构采用了径向基函数网络。
进一步的,在智能体网络结构的训练过程中,由于机器人动作的连续性,使得经验池中存取的样本具有了连续性,而这种连续性会导致智能体网络结构训练过程中出现神经网络过拟合的情况,为解决这一问题,本发明所述智能体网络结构中经验池采用SumTree结构。
本发明所提供的一种深度确定性策略梯度的多足机器人运动控制方法,结合深度确定性策略梯度的寻优能力和感知抽象能力,从而训练得到兼顾稳定性和环境泛化能力的多足机器人运动控制策略。深度确定性策略梯度是强化学习的一种,它的学习任务目标,需要与环境进行大量互动,所以本发明先在仿真环境中对智能体网络结构训练,解决了机器人在非结构化地形上缺少泛化能力、环境适应差的技术问题。此外,由于仿真环境电机为理想电机,能够根据机器人仿真模型输出的关节力矩提供与之相应的电流;而在真实环境中,因电机自身构造的问题,电机不能像理想电机一样根据机器人输出的关节力矩提供与之相应的电流,在机器人提供的关节力矩增大时,电机提供的电流无法随关机力矩的增大提供,因此容易出现饱和现象,从而导致在仿真环境中训练完成的控制策略不能很好的用于真实机器人运动控制。为了克服仿真环境中理想电机与真实电机的差异,本发明引入了电机数学模型实际电机模型用于仿真,缩小仿真环境中机器人与真实环境中机器人之间的差距,使仿真环境中的机器人运动控制策略更好得用于真实机器人运动控制。
与现有技术相比,本发明具有以下有益效果:
1、由于本发明首先在仿真环境中训练得到用于机器人运动控制的智能体网络结构,并仿真得到构建真实机器人关键参数信息,用于指导真实机器人电机等关键部件的选型,因此可以更加科学性的设计制造真实机器人。
2、本发明使用基于深度强化学习的方法控制机器人运动,有别于传统的通过路径规划,机器人正逆运动学解控制多足机器人的方法和通过模拟动物节律运动的中枢模式发生器运动控制方法,通过训练强化学习智能体网络结构控制机器人运动控制,提升了机器人的环境适应能力。
3、通过引入关节电源数学模型对仿真环境中的电机进行定义,缩小了仿真环境和真实机器人的差异,使仿真环境中的运动控制策略更好得运用于真实机器人运动控制。
附图说明
图1是本发明的整体工作流程图;
图2是本发明的智能体网络结构结构图;
图3时本发明的智能体网络结构训练过程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面结合实施方式和附图,对本发明作进一步地详细描述。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。
如图1所示,以六足机器人为例,本发明提供的一种基于深度确定性策略梯度的多足机器人运动控制方法,包括以下步骤:
S1、构建六足机器人模型,且该使该六足机器人仿真模型能在仿真环境中站立行走。六足机器人仿真模型的详细构建过程为:
S101、通过三维建模软件Soildworks构建蜘蛛型六足机器人模型,机器人分为机身和六条腿,机器人机身为六边形,六条腿分别位于六边形的顶点处机身下方,机器人单腿有三个关节,分为髋关节,膝关节和踝关节,其中髋关节负责机器人单腿的前后摆动,膝关节和踝关节负责机器人单腿的抬腿运动,三个关节配合完成机器人单腿的摆动和站立,机器人六条腿互相配合完成机器人的行走。
S102、然后将SolidWorks中的建好的六足机器人三维模型导入MATLAB,在MATLAB的Simscape中对导入的六足机器人模型进行如下处理;
(1)首先添加地面,设置地面坐标系为机器人坐标系,设置重力方向为垂直机器人机身向下方向,添加机器人与地面间的接触力,使机器人站立在地面上,训练过程中不使机器人穿透地面,导致产生坏的训练样本。
(2)将机器人六条腿的关节转动修改为位移输入控制,并通过对机器人关节添加正弦信号,验证机器人单腿关节控制。
S2、对步骤S1所构建的六足机器人仿真模型、在仿真系统中的运动规则进行定义。在本实施例中所涉及的运动规则定义内容包括:
S201、预设深度确定性策略梯度奖励函数为:其中vx代表六足机器人仿真模型在仿真环境中的前进速度;Ts代表六足机器人仿真模型在仿真环境中的训练单步采样时间,设置为0.02s;Tf代表六足机器人仿真模型在仿真环境中的稳定行走时长,设置为10s;表示六足机器人仿真模型在仿真环境中的起始高度,设置为0.2m;θ表示六足机器人仿真模型的机身俯仰角;表示六足机器人模型在仿真环境中的控制参数代价,设置为输入六足机器人模型在仿真环境中的18个关节力矩值。
步骤S3、在仿真环境中添加RLagent模块,然后运用MATLAB深度学习工具箱相关函数,构建出本发明的智能体网络结构。所述智能体网络结构输入为六足机器人仿真模型各关节角度、速度、机身位移和旋转等78维向量,输出为六足机器人仿真模型六条腿各关节力矩值、角度值、速度值等54维向量。智能体网络结构结构如图2所示,包括、动作网络、评价网络和经验池。评价网络又包括实际评价网络和目标评价网络;动作网络又分为实际动作网络和目标动作网络。
所述动作网络为径向基函数网络,分为输入层,隐藏层和输出层。输入层节点个数为智能体网络结构的输入向量维数,本实施例为78;输入层只是对输入值的展开,与隐藏层的连接权值为1。隐藏层有两层,第一层结点个数为400,对应单次仿真过程样本数量,即10/0.025;第二层神经元节点为300个。本实施例所采用隐藏层节点激活函数为sigmiod函数,对输入值进行响应;当输入靠近基函数中央时,隐藏层节点将产生较大的输出,远离中心基函数中心时,输出将指数衰减,即其中x即为隐藏层节点输入,μi为隐藏层节点基函数中心值,σ为节点宽度参数,输出层为54个节点;输出层的54个节点对应输出到机器人的18个关节的力矩值、角度值和速度值,输出的值为隐藏层神经元的线性加权和。
所述评价网络采用BP神经网络,该神经网络分为两部分。其中第一部分网络结构的输入层神经元个数为输入智能体网络结构中六足机器人仿真模型状态向量数78;隐藏层分为两层,第一层神经元个数为400,第二层神经元个数为300,激活函数同样为sigmoid函数。第二部分网路结构的输入层输入为智能体网络结构输出的动作值,即六足机器人仿真模型18个关节力矩值,角度值和速度值个数54;第二部分网络结构的隐藏层神经元节点个数为300。最后通过加和层,将第一部分和第二部分网络结构结合起来,最终评价网络的输出神经元节点为1,即输出一个评价值。
所述经验池采用SumTree存储结构。在本发明所使用的深度确定性策略梯度算法中,动作网络的参数依赖评价网络选取,而评价网络中的参数由评价网络的损失函数来更新,即通过计算目标评价网络的累计奖励值与实际评价网络Q值之间的差值δ进行更新。在更新的过程中发现,目标评价网络的累计奖励值与实际评价网络Q值之间的差值δ越大,网络参数预测准确度越低,则该样本更需要被学习,其优先级也就越高。因此本实施例将目标评价网络的累计奖励值与实际评价网络Q值之间的差值δ定为量化样本优先级的标准。先根据差值δ对样本的优先级进行排序,按照优先级大小对经验池中的样本抽样,优先级越大抽取到的概率越高。
具体到本实施例中,本实施例选用SumTree是一个二叉树,叶节点存放样本的优先级,每个叶节点对应一个索引值,利用索引值可以实现对样本的存取,每两个叶节点对应一个上级的父节点,父节点优先级等于左右两个子节点优先级之和,最后收敛到根节点。当需要采集样本时,用根节点的优先级除以样本总数。每抽到一个叶节点,返回其优先级,及对应的经验池数据。
S4、对步骤S3构建的智能体网络结构进行训练,其训练过程如图3所示,包括:
S401、初始化现实动作网络和评价网络参数,将初始化后的动作网络和评价网络进行复制,复制后的网络称为目标动作网络和目标评价网络。根据使用需求设定经验池容量为m,本实施例m取值为2000。
S402、初始化六足机器人仿真模型状态,得到六足机器人仿真模型的初始运动状态值st。
S403、将步骤S402得到的初始运动状态值st输入实际动作网络,通过实际动作网络计算得到动作值at。然后将动作值at提供给机器人使其运动,以获得当前动状态值st+1;通过步骤S2预设的奖励函数计算出此次交互的奖励值rt。
S404、根据预设的机器人机身俯仰角标准值对当前机器人运动状态进行判断,若当前运动状态中机身俯仰角小于机身俯仰角标准值,则说明此时机器人为跌倒状态,则需返回步骤S401;若当前运动状态中机器人机身俯仰角≥机身俯仰角标准值,则说明此时机器人处于正常状态,则执行步骤S405,进行下一步处理。本实施例中预设机器人俯仰角标准值为20°。
S405、将步骤S402~S403中得到的st、st+1、at、rt作为一组样本存入经验池。
S406、不断重复迭代步骤S403~S405的过程,直至经验池中的样本数量≥步骤S401设定的经验池容量2000时,开始对样本进行采样。
S407、对经验池中的所有样本进行求和,根据样本被采样到的优先级计算出经验池中样本采样概率值,并依据采样概率值的大小,从经验池中选出用于训练的训练样本;所述采样率计算方式为:其中pj表示样本被采样到的优先级,∑kpk表示经验池中所有样本的求和。
S408、将步骤S407获取的训练样本提供给目标评价网络,由目标评价网络计算得到评价网络累计奖励值将目标评价网络累计奖励值yj提供给实际评价网络,计算得到实际评价网络损失函数通过梯度下降法更新实际评价网络参数,并通过更新后的实际评价网络参数得出实际评价网络Q值;在实际评价网络损失函数中,m为样本数量,ωj为样本权值,为状态值,为动作值。
S409、根据步骤S408中获得的目标评价网络累计奖励值yj与实际评价网络Q值、计算出目标评价网络累积奖励值yj与实际评价网络Q值之间的差值|δ(t)|,并利用该差值|δ(t)|更新经验池中的样本被采样优先级pj以提升收敛速度。
S410、通过步骤S408得出的实际评价网络Q值,计算出实际动作网络损失函数J(θπ)实际动作网络损失函数表示为通过实际动作网络损失函数、结合实际评价网络参数更新过程中的梯度信息,更新实际动作网络参数。
S411、判断机器人是否走完预设最大步数,若未走完,则执行S403。若走完预设最大步数,则利用S408更新后的实际评价网络的参数、S410更新后实际动作网络参数,通过软更新的方式,更新目标动作网络参数和目标评价网络参数。
S412、重复步骤S401~S411,直至网络收敛,完成智能体网络结构训练。
步骤S5、将步骤S4训练好的智能体网络结构在仿真环境中进行验证;若验证智能体网络结构可以控制六足机器人仿真模型,使其能够稳定的按照预设路径运动,则将智能体网络结构中的动作网络进行提取后,作为真实六足机器人的控制策略,用于控制真实六足机器人。
在实际应用中,真实的六足机器人电源功率有限,除去处理器控制模块、传感器模块和通信模块的功率损耗后,能提供给六足机器人六条腿的18个关节电机功率有限,这就使得真实的六足机器人中电机不能提供无限大的关节力矩。而仿真环境中所构建的六足机器人仿真模型其电机为理想电机,不存在电源分配至关节处所提供的电源功率是否足够的问题。这就使得通过仿真模型获得的控制策略应用于真实的六足机器人时,真实的六足机器人输出力矩不能像理想电机一样随电流增大,从而出现饱和现象,导致仿真环境中训练完成的控制策略不能很好的用于真实机器人运动控制。为克服这一问题,本发明在仿真环境中设计了关节电源模块数学模型,对电源功率进行分配,并将该分配方案定义到仿真机器人模型的运动规则中,通过电源功率分配调整电机输出力矩,实现对智能体网络结构输出关节力矩的设置。缩小仿真环境与真实机器人的差异,以使仿真环境中的机器人运动控制策略更好得应用于真实机器人。
本发明所设计的关节电源数学模型主要分为两部分,一部分为电机动力电池,一部分为电容,设电机动力功率为Pb,电容功率为Pc,则最终用于电机的实际功率为Pb+Pc。对于直流伺服电机而言,设机器人所有关节力矩为t,转速为n=v/2π.则P=i·t·n,式中i为常数。因此对电机模型作以下规定,当智能体网络结构输出的关节力矩t乘以转速n小于Pc/i时,由电容提供电机电能,机器人所有关节力矩为Pc/(i·n);当机器人所有关节力矩t乘以转速n大于等于Pc/i而小于(Pc+Pb)/i时,电机动力电池与电容同时提供电能,此时机器人所有关节力矩为(Pc+Pb)/(i·n);当力矩t乘以转速n大于(Pc+Pb)/i时,机器人所有关节关节力矩为(Pc+Pb)/(i·n)。当转速n为0时,电机动力电池向电容充电。具体到本实施例中,所设置电机电池功率为80w,电容功率为100w,转速为n=v/2π,设置电机功率P=i·t·n式中常数i为0.1。此外由于真实机器人受电机自身重量、机械结构、启动摩擦力等影响,在仿真环境中对智能体网络结构输出的关节力矩再添加高斯白噪声以提高控制策略的鲁棒性。
综上所述,本发明提供的一种基于深度确定性策略梯度的六足机器人运动控制方法,由于采用了深度强化学习方法,泛化能力更强,同时该方法通过径向基函数网络构建动作网络,实现网络更快速收敛,通过添加以SumTree为存储结构的经验池,解决机器人运动过程中得到的样本值连续,导致神经网络过拟合的问题,更重要的是,本发明通过在仿真模型中添加关节电源数学模型,通过电源功率分配调整电机输出力矩,实现对智能体网络结构输出关节力矩的设置。很好的解决了仿真环境与真实机器人的差异,使得在仿真环境中训练得到的机器人运动控制策略更好的用于实际机器人运动控制。
Claims (5)
1.一种基于深度确定性策略梯度的多足机器人运动控制方法,其特征在于,包括以下步骤:
步骤S1、构建多足机器人仿真模型,且使该模型能在仿真环境中站立行走;
步骤S2、对步骤S1所构建的多足机器人仿真模型在仿真环境中的运动规则进行定义,具体为:
S01、预设深度确定性策略梯度奖励函数为:rt=机器人前进速度+机器人采样时间-机器人起始高度-机器人机身俯仰角-参数代价值;
S02、定义多足机器人动作值,动作值所涉及参数包括:机器人所有关节力矩t、机器人单腿所有关节转动角度即角度值θ′、关节转动角速度值v;定义多足机器人运动状态值,运动状态值包括:机器人所有关节力矩t、机器人单腿所有关节转动角度即角度值θ′、关节转动角速度值v、机器人单腿足端与地面之间的摩擦力f、机身位移、机身俯仰角;
步骤S3、构建智能体网络结构;智能体网络结构包括动作网络、评价网络和经验池;其中动作网络又分为实际动作网络和目标动作网络;评价网络又分为实际评价网络和目标评价网络;
步骤S4、对步骤S3构建的智能体网络结构进行训练,使其能够控制多足机器人仿真模型运动;所述智能体网络结构按照如下过程进行训练:
S401、初始化实际动作网络和实际评价网络的参数,将初始化后的实际动作网络和实际评价网络进行复制,得到目标动作网络和目标评价网络;根据使用需求设定经验池容量为m;
S402、初始化多足机器人仿真模型状态,得到多足机器人仿真模型初始运动状态值st;
S403、将步骤S402得到的初始运动状态值st输入实际动作网络,通过实际动作网络计算得到动作值at;然后将动作值at提供给多足机器人仿真模型使其运动,以获得当前运动状态值st+1;通过步骤S2预设的奖励函数计算出此次交互的奖励值rt;
S404、根据预设的机器人机身俯仰角标准值对当前机器人运动状态进行判断,若当前运动状态中机身俯仰角小于机身俯仰角标准值,则说明此时机器人为跌倒状态,返回步骤S401;若当前运动状态中机器人机身俯仰角≥机身俯仰角标准值,则说明此时机器人处于正常状态,执行步骤S405;
S405、将步骤S402~S403中得到的st、st+1、at、rt作为一组训练样本存入经验池;
S406、不断重复迭代步骤S403~S405的过程,直至经验池中的样本数量≥步骤S401设定的经验池容量m时,开始对样本进行采样;
S407、对经验池中的所有样本进行求和,根据样本被采样到的优先级计算出经验池中样本采样概率值,并依据采样概率值的大小,从经验池中选出用于训练的训练样本;所述样本采样概率值的计算方式为:其中pj表示样本被采样到的优先级,∑kpk表示经验池中所有样本的求和;
S408、将步骤S407获取的训练样本提供给目标评价网络计算得到目标评价网络累计奖励值yj,并将目标评价网络累计奖励值yj提供给实际评价网络,计算出实际评价网络损失函数J(θπ);利用梯度下降法,更新实际评价网络参数,并通过更新后的实际评价网络参数得出实际评价网络Q值;
S409、根据步骤S408中获得的目标评价网络累计奖励值yj与实际评价网络Q值、计算出的目标评价网络累计奖励值yj与实际评价网络Q值之间的差值|δ(t)|,并利用该差值|δ(t)|更新经验池中的样本被采样到的优先级pj;
S410、通过步骤S408得出的实际评价网络Q值,计算出实际动作网络损失函数;通过实际动作网络损失函数、结合实际评价网络参数更新过程中的梯度信息,更新实际动作网络参数;
S411、判断机器人是否走完预设最大步数,若未走完,则执行S403;若走完预设最大步数,则利用S408更新后的实际评价网络的参数、S410更新后实际动作网络参数,通过软更新的方式,更新目标动作网络参数和目标评价网络参数;
S412、重复步骤S401~S411,直至网络收敛,完成智能体网络结构训练;
步骤S5、将步骤S4训练好的智能体网络结构在仿真环境中进行验证;若验证智能体网络结构可以控制机器人仿真模型,使其能够稳定的按照预设路径运动,则将智能体网络结构中的动作网络进行提取,用于控制真实机器人。
2.根据权利要求1所述的基于深度确定性策略梯度的多足机器人运动控制方法,其特征在于:所述定义的规则中还包括建立的关节电源数学模型,通过该关节电源数学模型对智能体网络结构输出的力矩进行设置,缩小仿真环境中机器人与真实环境中机器人之间的差距,使仿真环境中的运动控制策略更好的用于真实机器人构建;
所述关节电源数学模型包括电机动力电池和电容两部分;设电机动力电池功率为Pb,电容功率为Pc,则最终用于关节电机的最大功率为Pb+Pc;针对直流伺服电机,设机器人所有关节力矩为t,转速为则直流伺服电机的功率P=i·t·n,式中i为常数;因此对电机模型作以下规定,当智能体网络结构输出的机器人所有关节力矩t乘以转速n小于时,由电容提供电机电能,机器人所有关节力矩为Pc/(i·n);当机器人所有关节力矩t乘以转速n大于等于Pc/k而小于(Pc+Pb)/i时,电机动力电池与电容同时提供电能,此时机器人所有关节力矩t为(Pc+Pb)/(i·n);当机器人所有关节力矩t乘以转速n大于(Pc+Pb)/i时,机器人所有关节力矩t为(Pc+Pb)/(i·n);当转速n为0时,电机动力电池向电容充电。
3.根据权利要求1所述的基于深度确定性策略梯度的多足机器人运动控制方法,其特征在于:所述仿真环境中的机器人所有关节力矩添加了高斯白噪声以提高控制策略的鲁棒性。
4.根据权利要求1所述的基于深度确定性策略梯度的多足机器人运动控制方法,其特征在于:所述步骤S 3中构建的智能体网络结构采用了径向基函数网络。
5.根据权利要求1所述的基于深度确定性策略梯度的多足机器人运动控制方法,其特征在于:所述智能体网络结构中的经验池采用了SumTree结构。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110212302.5A CN113031528B (zh) | 2021-02-25 | 2021-02-25 | 一种基于深度确定性策略梯度的多足机器人非结构性地面运动控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110212302.5A CN113031528B (zh) | 2021-02-25 | 2021-02-25 | 一种基于深度确定性策略梯度的多足机器人非结构性地面运动控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113031528A CN113031528A (zh) | 2021-06-25 |
CN113031528B true CN113031528B (zh) | 2022-03-15 |
Family
ID=76462277
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110212302.5A Expired - Fee Related CN113031528B (zh) | 2021-02-25 | 2021-02-25 | 一种基于深度确定性策略梯度的多足机器人非结构性地面运动控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113031528B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113821045B (zh) * | 2021-08-12 | 2023-07-07 | 浙江大学 | 一种腿足机器人强化学习动作生成系统 |
CN114089633B (zh) * | 2021-11-19 | 2024-04-26 | 江苏科技大学 | 一种水下机器人多电机耦合驱动控制装置及方法 |
CN114326722B (zh) * | 2021-12-21 | 2023-06-16 | 华南理工大学 | 六足机器人自适应步态规划方法、系统、装置及介质 |
CN114661595B (zh) * | 2022-03-18 | 2024-05-03 | 纯米科技(上海)股份有限公司 | 机器人的静步态调试方法、系统、电子装置及存储介质 |
CN114770497B (zh) * | 2022-03-31 | 2024-02-02 | 中国人民解放军陆军工程大学 | 一种搜救机器人的搜救方法、装置及存储介质 |
CN115356991B (zh) * | 2022-07-04 | 2024-09-24 | 合肥工业大学 | 基于运动状态优化的多目标运动融合控制方法和系统 |
CN116824971B (zh) * | 2023-05-30 | 2024-03-29 | 深圳市宏泰智能创意电子科技有限公司 | 仿真爬行机器人及其控制方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108549237A (zh) * | 2018-05-16 | 2018-09-18 | 华南理工大学 | 基于深度增强学习的预观控制仿人机器人步态规划方法 |
CN109483530A (zh) * | 2018-10-18 | 2019-03-19 | 北京控制工程研究所 | 一种基于深度强化学习的足式机器人运动控制方法及系统 |
CN109934332A (zh) * | 2018-12-31 | 2019-06-25 | 中国科学院软件研究所 | 基于评论家和双经验池的深度确定性策略梯度学习方法 |
CN110262511A (zh) * | 2019-07-12 | 2019-09-20 | 同济人工智能研究院(苏州)有限公司 | 基于深度强化学习的双足机器人自适应性行走控制方法 |
CN110919659A (zh) * | 2019-12-24 | 2020-03-27 | 哈尔滨工程大学 | 一种基于ddgpes的机器人控制方法 |
KR20210012672A (ko) * | 2019-07-26 | 2021-02-03 | 한국생산기술연구원 | 인공지능 기반 로봇 매니퓰레이터의 자동 제어 시스템 및 방법 |
-
2021
- 2021-02-25 CN CN202110212302.5A patent/CN113031528B/zh not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108549237A (zh) * | 2018-05-16 | 2018-09-18 | 华南理工大学 | 基于深度增强学习的预观控制仿人机器人步态规划方法 |
CN109483530A (zh) * | 2018-10-18 | 2019-03-19 | 北京控制工程研究所 | 一种基于深度强化学习的足式机器人运动控制方法及系统 |
CN109934332A (zh) * | 2018-12-31 | 2019-06-25 | 中国科学院软件研究所 | 基于评论家和双经验池的深度确定性策略梯度学习方法 |
CN110262511A (zh) * | 2019-07-12 | 2019-09-20 | 同济人工智能研究院(苏州)有限公司 | 基于深度强化学习的双足机器人自适应性行走控制方法 |
KR20210012672A (ko) * | 2019-07-26 | 2021-02-03 | 한국생산기술연구원 | 인공지능 기반 로봇 매니퓰레이터의 자동 제어 시스템 및 방법 |
CN110919659A (zh) * | 2019-12-24 | 2020-03-27 | 哈尔滨工程大学 | 一种基于ddgpes的机器人控制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113031528A (zh) | 2021-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113031528B (zh) | 一种基于深度确定性策略梯度的多足机器人非结构性地面运动控制方法 | |
CN108115681B (zh) | 机器人的模仿学习方法、装置、机器人及存储介质 | |
CN112051735B (zh) | 仿人机器人步行控制方法 | |
CN112060082B (zh) | 基于仿生强化学习型小脑模型的在线稳定控制仿人机器人 | |
Shahbazi et al. | Unified modeling and control of walking and running on the spring-loaded inverted pendulum | |
Auerbach et al. | Evolving complete robots with CPPN-NEAT: the utility of recurrent connections | |
CN113821045B (zh) | 一种腿足机器人强化学习动作生成系统 | |
CN113190029B (zh) | 基于深度强化学习的四足机器人适应性步态自主生成方法 | |
CN114326722B (zh) | 六足机器人自适应步态规划方法、系统、装置及介质 | |
CN113515135B (zh) | 多足机器人的控制方法、装置、电子设备及存储介质 | |
CN114995479A (zh) | 一种基于强化学习的四足机器人虚拟模型控制器的参数控制方法 | |
CN108582066B (zh) | 一种分层cpg及在仿人机器人行走控制中的应用 | |
Hu et al. | Learning a faster locomotion gait for a quadruped robot with model-free deep reinforcement learning | |
Li et al. | Sequential sensor fusion-based real-time LSTM gait pattern controller for biped robot | |
CN116203945A (zh) | 一种基于特权知识蒸馏的四足机器人运动规划方法 | |
Hu et al. | Estimating biped gait using spline-based probability distribution function with Q-learning | |
Kuo et al. | Development of humanoid robot simulator for gait learning by using particle swarm optimization | |
CN117474049A (zh) | 一种基于sac算法的六足机器人运动策略的训练方法 | |
Wang et al. | A hierarchical reinforcement learning framework based on soft actor-critic for quadruped gait generation | |
Yu et al. | Walking simulation of biped robot on inclined plane based on gait recognition | |
Jiang et al. | Motion sequence learning for robot walking based on pose optimization | |
Belter et al. | Evolving feasible gaits for a hexapod robot by reducing the space of possible solutions | |
CN117572877B (zh) | 一种双足机器人步态控制方法、装置、存储介质及设备 | |
CN117555339B (zh) | 策略网络训练方法及人形双足机器人步态控制方法 | |
Marum | Learning Perceptive Bipedal Locomotion over Irregular Terrain |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20220315 |
|
CF01 | Termination of patent right due to non-payment of annual fee |