CN114895560A - 一种电动机堵转条件下足式机器人物体追踪自适应控制方法 - Google Patents

一种电动机堵转条件下足式机器人物体追踪自适应控制方法 Download PDF

Info

Publication number
CN114895560A
CN114895560A CN202210441986.0A CN202210441986A CN114895560A CN 114895560 A CN114895560 A CN 114895560A CN 202210441986 A CN202210441986 A CN 202210441986A CN 114895560 A CN114895560 A CN 114895560A
Authority
CN
China
Prior art keywords
robot
training
motor
action
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.)
Granted
Application number
CN202210441986.0A
Other languages
English (en)
Other versions
CN114895560B (zh
Inventor
王越
陈词
向平宇
王东奇
余纪宇
张睿
陆豪健
熊蓉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University ZJU
Original Assignee
Zhejiang University ZJU
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhejiang University ZJU filed Critical Zhejiang University ZJU
Priority to CN202210441986.0A priority Critical patent/CN114895560B/zh
Publication of CN114895560A publication Critical patent/CN114895560A/zh
Application granted granted Critical
Publication of CN114895560B publication Critical patent/CN114895560B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • G05B13/042Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators in which a parameter or coefficient is automatically adjusted to optimise the performance

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Feedback Control In General (AREA)

Abstract

本发明公开一种电动机堵转条件下足式机器人物体追踪自适应控制方法,属于智能机器人技术领域。创建电动机堵转条件下足式机器人动力学仿真环境;训练上层控制器用于根据机器人状态输出上层控制指令,包含前进、后退、左转、右转和停止指令;下层控制器基于多层感知机构建前向动力学模型并训练。当需要对电动机位置控制指令进行选择时,基于上层控制指令得到相应的下层奖励函数,基于前向动力学模型获得一组电动机动作分布对应的预测状态,基于该预测状态与下层奖励函数获得该组动作的回报值,以增大回报值为目标,不断优化电动机动作分布的均值与方差,直到达到指定轮数,将最后一轮分布的动作均值作为机器人电动机下一步执行的动作。

Description

一种电动机堵转条件下足式机器人物体追踪自适应控制方法
技术领域
本发明涉及智能机器人技术领域,特别涉及一种电动机堵转条件下足式机器人物体追踪自适应控制方法。
背景技术
在机器人运动的过程中,由于外界或内在的因素,不可避免会遇到损伤情况,如电动机堵转等。对于足式机器人来说,当腿部的电动机堵转后,如果其他电动机仍然按照原有指令运行,会导致机器人偏离预定的轨迹,这阻碍了机器人被可靠地部署在真实环境中。为了能够到达预期目标,机器人需要自适应调整其控制策略。
传统的机器人损伤恢复包含两个步骤,首先是自我诊断,然后根据诊断结果选择最合适的替代策略,这个替代策略是预先设计的。然而,替代策略难以设计,因为损坏情况会随着机器人复杂度的增加而实现指数增长,因此很难事先考虑到所有可能的情况。此外,由于传感器以及外界环境的噪声,自我诊断的结果也不一定时刻准确。这些都使得传统方法经常失效。
自从AlphaGo重新点燃了世人对人工智能的热情,作为其核心技术之一的深度强化学习便吸引了无数关注目光,它是机器学习和自动控制领域的重要研究方向,也是实现强人工智能的重要手段,在智能机器人领域受到了学术界与工业界的广泛重视。在足式机器人控制领域,在大规模并行仿真环境的基础上,通过设计合理的奖励函数,实现了足式机器人在复杂多变环境下的自主运动,取得了令人瞩目的成果。然而,大部分方法都未将机器人损伤情况加以考虑。在野外作业环境下,机器人电动机受损而造成堵转的现象难免发生,因此,能够适应电动机堵转条件下的足式机器人自适应控制方法具有重要的意义与应用价值。
发明内容
针对现有足式机器人控制方法未考虑到机器人电动机堵转条件下的运动控制问题,本发明提供一种电动机堵转条件下足式机器人物体追踪自适应控制方法。
考虑到分层强化学习算法的优点和限制,本发明所采用的技术方案是基于分层强化学习思想,结合双源无模型离策略强化学习方法与基于模型的强化学习算法对其进行改进。首先基于双源无模型离策略强化学习算法得到机器人的上层控制指令,然后基于上层控制指令选择对应的下层奖励函数,最后结合前向动力学模型与交叉熵优化算法得到机器人电动机的位置控制指令。本发明将复杂任务分解为具体子任务进行解决,缓解了强化学习训练过程中正样本少,回报值稀疏问题,大大加速了训练流程。
为了实现上述目的,本发明采用如下技术方案:
一种电动机堵转条件下足式机器人物体追踪自适应控制方法,包括以下步骤:
(1)构建电动机堵转条件下足式机器人动力学仿真环境;
(2)使用多层感知器构建足式机器人的前向动力学模型;
(3)基于双源无模型离策略强化学习方法训练上层控制器,所述的上层控制器用于根据机器人与环境的交互数据输出上层控制指令;
(4)当需要对电动机位置控制指令进行选择时,首先利用训练好的上层控制器得到上层控制指令,并根据该指令得到对应的下层奖励函数,利用步骤(2)中得到的前向动力学模型,预测在当前状态下,当执行一组从随机高斯分布下采样得到的动作后的状态增量,并基于该状态增量与下层奖励函数获得对应动作的回报值,以增大回报值为目标,不断优化动作分布的均值与方差,直到达到指定轮数,将最后一轮分布的动作的均值作为机器人电动机下一步执行的动作。
作为本发明的优选,所述的步骤(1)具体为:
构建足式机器人的基座、左前肢、左前十字连接件、右前肢、右前十字连接件、左后肢、左后十字连接件、右后肢、右后十字连接件、摄像头构件的三维模型,并导出为相应的.STL文件;
构建足式机器人的.XML文件,首先在<asset>标签下导入上一步构建的.STL文件,然后在<worldbody>标签下使用限位转动关节连接各个构件,最后在<actuator>标签下定义限位转动关节的各个参数;当.XML文件构建完毕后,将其加载至物理仿真环境中,检查各个构件位姿是否满足预期要求,若不满足,则调整<worldbody>标签下<body>标签中的quat属性值调节姿态,pos属性值调节位置,直到各个构件达到预期位姿;
构建仿真环境与算法的交互接口,reset(·)用于初始化仿真环境的状态,close(·)用于关闭仿真环境模型,step(·)用于执行一步动作,change_env(·)用于实现电动机堵转条件,change_env(·)将在reset(·)函数中被调用。
作为本发明的优选,所述的前向动力学模型的输入为足式机器人当前状态
Figure BDA0003614324950000021
和机器人在当前状态下执行的动作
Figure BDA0003614324950000022
前向动力学模型的输出为机器人执行当前动作
Figure BDA0003614324950000023
后的预测状态变化量
Figure BDA0003614324950000024
根据预测状态变化量得到机器人下一状态
Figure BDA0003614324950000025
前向动力学模型的训练过程为:
首先获取机器人当前状态
Figure BDA0003614324950000026
并给定一个随机动作
Figure BDA0003614324950000027
机器人在动力学仿真环境下与环境进行交互,得到交互后的下一步状态
Figure BDA0003614324950000031
循环操作,得到一系列交互样本
Figure BDA0003614324950000032
作为训练数据集,对前向动力学模型进行第一轮训练;
利用第i轮训练后的前向动力学模型和交叉熵优化算法采集用于执行第i+1轮训练的数据集,方法为:获取机器人当前状态
Figure BDA0003614324950000033
并给出一组在随机高斯分布下采样得到的动作值,利用第i轮训练后的前向动力学模型得到对应每一个动作的预测状态
Figure BDA0003614324950000034
根据预测状态得到下层奖励函数的取值;以增大下层奖励函数取值为目标,不断优化动作分布的均值与方差,当达到指定轮数后,将最后一轮动作分布的均值作为最优动作,由机器人当前状态、最优动作、机器人执行最优动作后的下一状态构成交互样本作为训练数据集,对前向动力学模型进行第i+1轮训练,i≥1;重复该过程,直至达到预设训练轮数或收敛;
所述的训练过程的损失函数为预测状态变化量
Figure BDA0003614324950000035
与实际状态变化量δt的均方误差值和网络权重参数的平方和。
作为本发明的优选,所述的机器人当前状态
Figure BDA0003614324950000036
包括机器人基座质心的速度、欧拉角、旋转矩阵,以及所有电动机的位置及速度;动作
Figure BDA0003614324950000037
为机器人所有电动机的位置控制指令。
作为本发明的优选,所述的上层控制指令包括:前进指令、后退指令、左转指令、右转指令和静止指令。
作为本发明的优选,所述的双源无模型离策略强化方法基于SAC-discrete模型实现,所述SAC-discrete模型的训练过程包括:
第一阶段:获取动力学仿真环境下由机器人上安装的摄像头拍摄的前方图像,得到机器人与追踪目标之间的相对距离d和相对角度θ,基于有限状态机原理构建训练数据,包括:
d≤20cm条件下,当|θ|≤15°时,执行后退指令,当θ>15°时,执行左转指令,当θ<-15°时,执行右转指令;
在d≥25cm条件下,当|θ|≤18°时,执行前进指令,当θ>18°时,执行左转指令,当θ<-18°时,执行右转指令;
在20cm<d<25cm条件下,当θ>10°时,执行左转指令,当θ<-10°时,执行右转指令,当|θ|≤10°时,执行静止指令;
将机器人与追踪目标之间的相对距离d和相对角度θ拼接在一起作为强化学习中的机器人与环境的交互数据,称为状态
Figure BDA0003614324950000038
将上层控制指令作为强化学习中的动作
Figure BDA0003614324950000039
根据机器人与追踪目标之间的关系设计上层奖励函数
Figure BDA00036143249500000310
构建用于训练SAC-discrete模型的训练样本
Figure BDA00036143249500000311
利用训练样本对SAC-discrete模型进行第一阶段训练;
第i+1阶段:使用经过第i阶段训练后的SAC-discrete模型采集用于第i+1阶段训练的训练样本,具体为:
获取动力学仿真环境下由机器人上安装的摄像头拍摄的前方图像,得到机器人与追踪目标之间的相对距离d和相对角度θ,将机器人与追踪目标之间的相对距离d和相对角度θ拼接在一起作为强化学习中的机器人与环境的交互数据,称为状态
Figure BDA0003614324950000041
将状态
Figure BDA0003614324950000042
作为第i阶段训练后的SAC-discrete模型的输入,由SAC-discrete模型输出动作
Figure BDA0003614324950000043
根据机器人与追踪目标之间的关系设计上层奖励函数
Figure BDA0003614324950000044
构建用于第i+1阶段训练的训练样本
Figure BDA0003614324950000045
利用训练样本继续对SAC-discrete模型进行第i+1阶段训练;i≥1;重复该过程,直至达到预设训练轮数或收敛。
作为本发明的优选,所述的上层奖励函数的设计方法为:
设定机器人与追踪目标之间的最佳距离为dopt,当机器人与追踪目标相撞时,上层奖励函数
Figure BDA0003614324950000046
当追踪目标离开机器人视野时,上层奖励函数
Figure BDA0003614324950000047
其他情况下,上层奖励函数
Figure BDA0003614324950000048
作为本发明的优选,所述的步骤3中,基于双源无模型离策略强化学习方法得到上层控制指令,当上层控制指令为静止指令时,直接令机器人保持上一步的电动机位置即可;
当上层控制指令为前进指令或者后退指令时,上层奖励函数为
Figure BDA0003614324950000049
其中wi,i=1,2,3,4表示权重系数,Δxbase表示机器人基座质心在x轴方向前进的距离,(r,p,y)表示机器人基座质心的欧拉角,
Figure BDA00036143249500000410
表示所有关节速度之和;
当上层控制指令为左转或者右转指令时,下层奖励函数设计为
Figure BDA00036143249500000411
其中,ydes表示目标转向角。
9.根据权利要求1所述的一种电机堵转条件下足式机器人物体追踪自适应控制方法,其特征在于,当使用交叉熵优化方法进行电动机动作选择时,首先给出一组在随机高斯分布下采样得到的动作值,针对每个动作,结合当前状态
Figure BDA00036143249500000412
利用前向动力学模型预测下一步状态
Figure BDA00036143249500000413
基于上层控制指令确定下层奖励函数,并基于预测的下一步状态
Figure BDA00036143249500000414
计算下层奖励函数的取值;
在得到每一组电动机动作对应的下层奖励函数取值后,挑选出奖励值最高的前20%的奖励值所对应的动作,计算出这些动作的均值与方差,利用高斯分布拟合这些动作的分布,接下来从这个高斯分布中进行采样,得到一组新的动作;
重复上述步骤,直到达到预定步数,将最新的高斯分布的均值作为电动机下一步执行的动作。
与现有技术相比,本发明提供的一种电动机堵转条件下足式机器人物体追踪自适应控制方法,具有如下优点:
(1)本发明采用分层强化学习算法(上层基于双源无模型离策略强化学习方法,下层基于模型的强化学习),实现了在足式机器人电动机堵转的情况下仍能够实现目标追踪任务,解决了在强化学习任务中负样本过多,奖励稀疏的问题。
(2)本发明使用基于双源无模型离策略强化学习方法学习上层控制指令,经验储存池中的数据部分来自于有限状态机,部分来自于强化学习算法与环境的交互,提升了样本的多样性,有助于训练更加鲁棒的上层控制指令。
(3)本发明使用基于模型的强化学习方法训练机器人下层运动指令,训练好的动力学模型具有较强的泛化性,即使遇到训练集中没有包含的电动机堵转场景,仍能够得到较好的预测值;此外,训练好的动力学模型适用各种上层控制指令,只需要更改对应的奖励函数即可,可扩展性更强,适合迁移。
附图说明
图1为本发明的整体流程图;
图2为双源无模型离策略强化学习算法网络结构,其中实线代表Actor网络损失函数的计算流程,虚线代表Critic网络损失函数的计算流程;
图3为前向动力学模型的网络结构。
具体实施方式
下面结合具体实施例,进一步阐释本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
一种电动机堵转条件下足式机器人物体追踪自适应控制方法,基于分层强化学习算法,下层使用基于模型的强化学习方法,使得机器人能够在电动机堵转条件下仍然能够按照预期指令行走,上层使用双源无模型强化学习方法,使用有限状态机交互数据以及算法自身交互数据作为训练数据。包括以下步骤:
步骤一:
基于Mujoco构建电动机堵转条件下足式机器人动力学仿真环境,使用SolidWorks软件构建足式机器人的基座、左前肢、左前十字连接件、右前肢、右前十字连接件、左后肢、左后十字连接件、右后肢、右后十字连接件、摄像头等10个构件的三维模型,并导出为.STL文件。
构建足式机器人的.XML文件,首先在<asset>标签下导入上一步构建的10个.STL文件,然后在<worldbody>标签下使用限位转动关节连接各个构件,最后在<actuator>标签下定义限位转动关节的各个参数。具体来说,在连接各个构件时,A_motor_1用来连接基座与左前十字连接件,其索引值为0,(后面电动机的索引值依次加一,不再赘述),A_motor_2用来连接左前十字连接件与左前肢,B_motor_1用来连接基座与右前十字连接件,B_motor_2用来连接右前十字连接件与右前肢,C_motor_1用来连接基座与左后十字连接件,C_motor_2用来连接左后十字连接件与左后肢,D_motor_1用来连接基座与右后十字连接件,D_motor_2用来连接右后十字连接件与右后肢,其中A_motor_1,B_motor_1,C_motor_1,D_motor_1的运动范围为-90°到90°,A_motor_2,B_motor_2,C_motor_2,D_motor_2的运动范围为-90°到20°,运动范围的限定保证了机器人在运动过程中不会对周围其他构件行成干涉。
当.XML文件构建完毕后,将其加载至Mujoco物理仿真环境中,检查各个构件位姿是否满足要求,若不满足,则调整<worldbody>标签下<body>标签中的quat属性值调节姿态,pos属性值调节位置,直到各个构件达到预期位姿。
基于Gym构建仿真环境与算法交互的接口,其中reset(·)用于初始化仿真环境的状态,close(·)用于关闭仿真环境模型,step(·)用于执行一步动作,change_env(·)用于实现电动机堵转条件,change_env(·)将在reset(·)函数中被调用。当算法与环境交互时,首先执行reset(·)函数,将仿真环境中的机器人质心位置恢复至运动起始点,并对各个关节进行复位,然后调用chang_env(·)函数,在0-7中任选一个(或两个)数字,代表电动机索引值,被选中的电动机所对应的动作指令被重置为0,表示电动机被堵转,无法执行原有动作,为了可视化被堵转的电动机,使用Gym提供的geom_rgba接口改变堵转电动机所连接的下一级构件的颜色(如A_motor_1电动机堵转,则将左前十字连接件外观颜色改为红色,B_motor_2电动机堵转,则将右前肢外观颜色改为红色)。reset(·)函数会返回仿真环境中当前的状态给对应的控制算法,控制算法根据当前状态输出动作值,step(·)函数执行该动作值,并将新得到的状态返回给控制算法,不断循环,直至达到预定的最大部属,结束该轮状态收集,使用close(·)函数关闭仿真环境模型。
步骤二:
使用步骤一所构建的电动机堵转条件下足式机器人动力学仿真环境收集机器人与环境交互的数据,所收集的数据被用来当作前向动力学模型的训练集与验证集,此时限制机器人堵转的电动机的索引值在0,3,4,7四个值范围内,其余索引值将对应测试集。
在第一轮收集时,由于尚未有经过训练的动力学模型,无法采用交叉熵方法得到机器人运动指令,因此使用随机动作进行交互数据的收集,例如:首先获取机器人当前状态
Figure BDA0003614324950000071
并给定一个随机动作
Figure BDA0003614324950000072
机器人在动力学仿真环境下与环境进行交互,得到交互后的预测状态
Figure BDA0003614324950000073
循环操作,得到一系列交互样本
Figure BDA0003614324950000074
作为训练数据集,对前向动力学模型进行第一轮训练。需要注意的是,在执行随机动作时,对机器人的关节要加以安全限制,防止机器人在运动过程中造成侧翻,导致失败样本过多,从而引起稀疏回报问题。
从第二轮收集开始,由于已经有了经过训练的前向动力学模型,因此使用交叉熵优化方法得到优化后的机器人运动指令进行交互数据的收集,其中交互数据包括当前状态
Figure BDA0003614324950000075
在当前状态下执行的动作
Figure BDA0003614324950000076
以及执行完动作后所达到的下一个状态
Figure BDA0003614324950000077
其中状态
Figure BDA0003614324950000078
包括机器人基座质心的速度、欧拉角及旋转矩阵,还有八个电动机的位置及速度,
Figure BDA0003614324950000079
为机器人八个电动机的位置控制指令。当收集的交互数据的数量达到预设的最大轨迹长度,截至该轮收集,然后对所收集的数据进行处理,具体来说,用
Figure BDA00036143249500000710
减去
Figure BDA00036143249500000711
对应项的值,得到与二者维度相同的状态变化量
Figure BDA00036143249500000712
用于接下来的动力学模型建立。
在本发明的一项具体实施中,从第二轮收集开始,可不断迭代训练前向动力学模型,利用第i轮训练后的前向动力学模型和交叉熵优化算法采集用于执行第i+1轮训练的数据集,方法为:获取机器人当前状态
Figure BDA00036143249500000713
并给出一组在随机高斯分布下采样得到的动作值,利用第i轮训练后的前向动力学模型得到对应每一个动作的预测状态
Figure BDA00036143249500000714
根据预测状态得到下层奖励函数的取值;以增大下层奖励函数取值为目标,不断优化动作分布的均值与方差,当达到指定轮数后,将最后一轮动作分布的均值作为最优动作,由机器人当前状态、最优动作、机器人执行最优动作后的下一状态构成交互样本作为训练数据集,对前向动力学模型进行第i+1轮训练,i≥1;重复该过程,直至达到预设训练轮数或收敛;
基于监督学***方和,优化器采用Adam优化器,学习率采用0.001,对前向动力学网络参数进行更新,直至达到最大迭代次数或者收敛为止。
步骤三:
基于双源无模型强化学习算法,训练机器人上层控制指令。上层控制指令包括:前进指令、后退指令、左转指令、右转指令和静止指令。首先使用摄像头获取前方图像,通过图像处理方法得到机器人与追踪目标之间的相对距离d和相对角度θ,基于有限状态机原理,在d≤20cm条件下,当|θ|≤15°时,执行后退指令,当θ>15°时,执行左转指令,当θ<-15°时,执行右转指令;在d≥25cm条件下,当|θ|≤18°时,执行前进指令,当θ>18°时,执行左转指令,当θ<-18°时,执行右转指令;在20cm<d<25cm条件下,当θ>10°时,执行左转指令,当θ<-10°时,执行右转指令,当|θ|≤10°时,执行静止指令。
将机器人与目标之间的相对距离d和相对角度θ拼接在一起作为强化学习中的机器人与环境的交互数据,称为强化学习状态
Figure BDA0003614324950000081
机器人追踪上层控制指令作为强化学习的动作
Figure BDA0003614324950000082
设定机器人与目标物之间的最佳距离为dopt,当机器人与目标物相撞时,奖励函数
Figure BDA0003614324950000083
当目标物离开机器人视野时,奖励函数
Figure BDA0003614324950000084
其他情况下,奖励函数
Figure BDA0003614324950000085
基于有限状态机得到动作,收集交互数据
Figure BDA0003614324950000086
存储到离策略强化学习算法SAC-discrete的经验储存池中。
在训练强化学习算法时,首先使用上述中基于有限状态机原理得到的交互数据进行第一阶段的训练,初始化网络参数,当训练轮数达到预定轮数时,再使用SAC-discrete算法得到的动作与环境交互并收集交互数据,然后用新收集的数据进行SAC-discrete算法中网络的参数。
在本发明的一项具体实施中,使用经过第i阶段训练后的SAC-discrete模型采集用于第i+1阶段训练的训练样本,具体为:
获取动力学仿真环境下由机器人上安装的摄像头拍摄的前方图像,得到机器人与追踪目标之间的相对距离d和相对角度θ,将机器人与追踪目标之间的相对距离d和相对角度θ拼接在一起作为强化学习中的机器人与环境的交互数据,称为状态wi,i=1,2,3,4;将状态
Figure BDA0003614324950000087
作为第i阶段训练后的SAC-discrete模型的输入,由SAC-discrete模型输出动作Δxbase,根据机器人与追踪目标之间的关系设计强化学习奖励函数,构建用于第i+1阶段训练的训练样本
Figure BDA0003614324950000088
利用训练样本继续对SAC-discrete模型进行第i+1阶段训练;i≥1;重复该过程,直至达到预设训练轮数或收敛。
如图2所示,SAC-discrete采用Actor-Critic架构,包含一个Actor网络,两个Critic网络,两个目标Critic网络。其中Acotr网络的输入为
Figure BDA0003614324950000089
输出为选择每一个动作的概率,隐藏层的网络维度为(256,256),两个Critic网络(Critic网络1,Critic网络2)的输入为
Figure BDA00036143249500000810
输出为每一个离散动作对应的Q值,隐藏层的维度为(256,256)。在计算Actor网络的损失函数时,首先将当前状态
Figure BDA0003614324950000091
输入到Critic网络1和Critic网络2中,得到Q1和Q2,选择这两组Q值中较小的一组,记为Qmin,然后将当前状态
Figure BDA0003614324950000092
输入到Actor网络中,得到选择每一个动作的概率
Figure BDA0003614324950000093
利用该概率值以及Qmin计算得到Actor网络的损失函数,记为Actor_loss。在计算Critic网络的损失函数时,首先将下一时刻状态
Figure BDA0003614324950000094
输入到目标Critic网络1和目标Critic网络2中,并将输出的结果取较小值记为targetQmin,并结合奖励值
Figure BDA0003614324950000095
计算目标Q值,记为Qtarget,然后将当前时刻状态
Figure BDA0003614324950000096
输入到Critic网络1和Critic网络2中,得到Q1和Q2,Q1与Qtarget取均方差作为Critic网络1的损失函数,Q2与Qtarget取均方差作为Critic网络2的损失函数。目标Critic网络1的参数每隔一段时间从Critic网络1的参数中按照一定比例进行复制,同理,目标Critic网络2的参数每隔一段时间从Critic网络2的参数中按照一定比例进行复制,因此目标Critic网络1和目标Critic网络2没有定义损失函数。训练的过程采用批训练的方法,批量大小设置为64,学习率设置为0.0005。
步骤四:
基于上层控制指令设计机器人下层奖励函数,当机器人需要执行前进指令或者后退指令时,奖励函数设计为
Figure BDA0003614324950000097
其中wi,i=1,2,3,4表示权重系数,Δxbase表示机器人基座质心在x轴方向前进的距离,(r,p,y)表示机器人基座质心的欧拉角,
Figure BDA0003614324950000098
表示所有关节速度之和,这个奖励函数的意义在于鼓励机器人沿x轴移动,尽量减小沿着xyz轴的旋转,以及尽量减小关节运动的速度,当执行前进指令时,w1取正数,当执行后退指令时,w1取负数。当机器人需要执行左转或者右转指令时,奖励函数设计为
Figure BDA0003614324950000099
其中当需要执行左转指令时,转向角ydes=-30°,当需要执行右转指令时,转向角ydes=30°。
当使用交叉熵优化算法进行动作选择时,首先基于步骤三得到训练好后的上层控制器,结合当前状态
Figure BDA00036143249500000910
得到机器人需要执行的上层控制指令,并选择相应的下层奖励函数。然后初始化一组随机动作,针对每个动作,结合当前状态
Figure BDA00036143249500000911
基于步骤二中得到的前向动力学模型预测下一步状态
Figure BDA00036143249500000912
并计算下层奖励函数的取值,在得到每一个动作的取值后,挑选出奖励值最高的前20%的奖励值所对应的动作,计算出这些动作的均值与方差,利用高斯分布拟合这些动作的分布,接下来从这个高斯分布中进行采样,得到一组新的动作,重复上述步骤,得到新的高斯分布,不断重复此过程,直到达到预定步数,达到预定步数后,将最新的高斯分布的均值作为机器人电动机的位置控制指令。
以上列举的仅是本发明的具体实施例。显然,本发明不限于以上实施例,还可以有许多变形。本领域的普通技术人员能从本发明公开的内容直接导出或联想到的所有变形,均应认为是本发明的保护范围。

Claims (9)

1.一种电机堵转条件下足式机器人物体追踪自适应控制方法,其特征在于,包括以下步骤:
(1)构建电动机堵转条件下足式机器人动力学仿真环境;
(2)使用多层感知器构建足式机器人的前向动力学模型;
(3)基于双源无模型离策略强化学习方法训练上层控制器,所述的上层控制器用于根据机器人与环境的交互数据输出上层控制指令;
(4)当需要对电动机位置控制指令进行选择时,首先利用训练好的上层控制器得到上层控制指令,并根据该指令得到对应的下层奖励函数,利用步骤(2)中得到的前向动力学模型,预测在当前状态下,当执行一组从随机高斯分布下采样得到的动作后的状态增量,并基于该状态增量与下层奖励函数获得对应动作的回报值,以增大回报值为目标,不断优化动作分布的均值与方差,直到达到指定轮数,将最后一轮分布的动作的均值作为机器人电动机下一步执行的动作。
2.根据权利要求1所述的一种电机堵转条件下足式机器人物体追踪自适应控制方法,其特征在于,所述的步骤(1)具体为:
构建足式机器人的基座、左前肢、左前十字连接件、右前肢、右前十字连接件、左后肢、左后十字连接件、右后肢、右后十字连接件、摄像头构件的三维模型,并导出为相应的.STL文件;
构建足式机器人的.XML文件,首先在<asset>标签下导入上一步构建的.STL文件,然后在<worldbody>标签下使用限位转动关节连接各个构件,最后在<actuator>标签下定义限位转动关节的各个参数;当.XML文件构建完毕后,将其加载至物理仿真环境中,检查各个构件位姿是否满足预期要求,若不满足,则调整<worldbody>标签下<body>标签中的quat属性值调节姿态,pos属性值调节位置,直到各个构件达到预期位姿;
构建仿真环境与算法的交互接口,reset(·)用于初始化仿真环境的状态,close(·)用于关闭仿真环境模型,step(·)用于执行一步动作,change_env(·)用于实现电动机堵转条件,change_env(·)将在reset(·)函数中被调用。
3.根据权利要求1所述的一种电机堵转条件下足式机器人物体追踪自适应控制方法,其特征在于,所述的前向动力学模型的输入为足式机器人当前状态
Figure FDA0003614324940000011
和机器人在当前状态下执行的动作
Figure FDA0003614324940000012
前向动力学模型的输出为机器人执行当前动作
Figure FDA0003614324940000013
后的预测状态变化量
Figure FDA0003614324940000014
根据预测状态变化量得到机器人下一状态
Figure FDA0003614324940000015
前向动力学模型的训练过程为:
首先获取机器人当前状态
Figure FDA0003614324940000021
并给定一个随机动作
Figure FDA0003614324940000022
机器人在动力学仿真环境下与环境进行交互,得到交互后的下一步状态
Figure FDA0003614324940000023
循环操作,得到一系列交互样本
Figure FDA0003614324940000024
作为训练数据集,对前向动力学模型进行第一轮训练;
利用第i轮训练后的前向动力学模型和交叉熵优化算法采集用于执行第i+1轮训练的数据集,方法为:获取机器人当前状态
Figure FDA0003614324940000025
并给出一组在随机高斯分布下采样得到的动作值,利用第i轮训练后的前向动力学模型得到对应每一个动作的预测状态
Figure FDA0003614324940000026
根据预测状态得到下层奖励函数的取值;以增大下层奖励函数取值为目标,不断优化动作分布的均值与方差,当达到指定轮数后,将最后一轮动作分布的均值作为最优动作,由机器人当前状态、最优动作、机器人执行最优动作后的下一状态构成交互样本作为训练数据集,对前向动力学模型进行第i+1轮训练,i≥1;重复该过程,直至达到预设训练轮数或收敛;
所述的训练过程的损失函数为预测状态变化量
Figure FDA0003614324940000027
与实际状态变化量δt的均方误差值和网络权重参数的平方和。
4.根据权利要求1所述的一种电机堵转条件下足式机器人物体追踪自适应控制方法,其特征在于,所述的机器人当前状态
Figure FDA0003614324940000028
包括机器人基座质心的速度、欧拉角、旋转矩阵,以及所有电动机的位置及速度;动作
Figure FDA0003614324940000029
为机器人所有电动机的位置控制指令。
5.根据权利要求1所述的一种电机堵转条件下足式机器人物体追踪自适应控制方法,其特征在于,所述的上层控制指令包括:前进指令、后退指令、左转指令、右转指令和静止指令。
6.根据权利要求1所述的一种电机堵转条件下足式机器人物体追踪自适应控制方法,其特征在于,所述的双源无模型离策略强化方法基于SAC-discrete模型实现,所述SAC-discrete模型的训练过程包括:
第一阶段:获取动力学仿真环境下由机器人上安装的摄像头拍摄的前方图像,得到机器人与追踪目标之间的相对距离d和相对角度θ,基于有限状态机原理构建训练数据,包括:
d≤20cm条件下,当|θ|≤15°时,执行后退指令,当θ>15°时,执行左转指令,当θ<-15°时,执行右转指令;
在d≥25cm条件下,当|θ|≤18°时,执行前进指令,当θ>18°时,执行左转指令,当θ<-18°时,执行右转指令;
在20cm<d<25cm条件下,当θ>10°时,执行左转指令,当θ<-10°时,执行右转指令,当|θ|≤10°时,执行静止指令;
将机器人与追踪目标之间的相对距离d和相对角度θ拼接在一起作为强化学习中的机器人与环境的交互数据,称为状态
Figure FDA0003614324940000031
将上层控制指令作为强化学习中的动作
Figure FDA0003614324940000032
根据机器人与追踪目标之间的关系设计上层奖励函数
Figure FDA0003614324940000033
构建用于训练SAC-discrete模型的训练样本
Figure FDA0003614324940000034
利用训练样本对SAC-discrete模型进行第一阶段训练;
第i+1阶段:使用经过第i阶段训练后的SAC-discrete模型采集用于第i+1阶段训练的训练样本,具体为:
获取动力学仿真环境下由机器人上安装的摄像头拍摄的前方图像,得到机器人与追踪目标之间的相对距离d和相对角度θ,将机器人与追踪目标之间的相对距离d和相对角度θ拼接在一起作为强化学习中的机器人与环境的交互数据,称为状态
Figure FDA0003614324940000035
将状态
Figure FDA0003614324940000036
作为第i阶段训练后的SAC-discrete模型的输入,由SAC-discrete模型输出动作
Figure FDA0003614324940000037
根据机器人与追踪目标之间的关系设计上层奖励函数
Figure FDA0003614324940000038
构建用于第i+1阶段训练的训练样本
Figure FDA0003614324940000039
利用训练样本继续对SAC-discrete模型进行第i+1阶段训练;i≥1;重复该过程,直至达到预设训练轮数或收敛。
7.根据权利要求1所述的一种电机堵转条件下足式机器人物体追踪自适应控制方法,其特征在于,所述的上层奖励函数的设计方法为:
设定机器人与追踪目标之间的最佳距离为dopt,当机器人与追踪目标相撞时,上层奖励函数
Figure FDA00036143249400000310
当追踪目标离开机器人视野时,上层奖励函数
Figure FDA00036143249400000311
其他情况下,上层奖励函数
Figure FDA00036143249400000312
8.根据权利要求1所述的一种电机堵转条件下足式机器人物体追踪自适应控制方法,其特征在于,所述的步骤3中,基于双源无模型离策略强化学习方法得到上层控制指令,当上层控制指令为静止指令时,直接令机器人保持上一步的电动机位置即可;
当上层控制指令为前进指令或者后退指令时,上层奖励函数为
Figure FDA00036143249400000313
其中wi,i=1,2,3,4表示权重系数,Δxbase表示机器人基座质心在x轴方向前进的距离,(r,p,y)表示机器人基座质心的欧拉角,
Figure FDA00036143249400000314
表示所有关节速度之和;
当上层控制指令为左转或者右转指令时,下层奖励函数设计为
Figure FDA00036143249400000315
其中,ydes表示目标转向角。
9.根据权利要求1所述的一种电机堵转条件下足式机器人物体追踪自适应控制方法,其特征在于,当使用交叉熵优化方法进行电动机动作选择时,首先给出一组在随机高斯分布下采样得到的动作值,针对每个动作,结合当前状态
Figure FDA0003614324940000041
利用前向动力学模型预测下一步状态
Figure FDA0003614324940000042
基于上层控制指令确定下层奖励函数,并基于预测的下一步状态
Figure FDA0003614324940000043
计算下层奖励函数的取值;
在得到每一组电动机动作对应的下层奖励函数取值后,挑选出奖励值最高的前20%的奖励值所对应的动作,计算出这些动作的均值与方差,利用高斯分布拟合这些动作的分布,接下来从这个高斯分布中进行采样,得到一组新的动作;
重复上述步骤,直到达到预定步数,将最新的高斯分布的均值作为电动机下一步执行的动作。
CN202210441986.0A 2022-04-25 2022-04-25 一种电动机堵转条件下足式机器人物体追踪自适应控制方法 Active CN114895560B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210441986.0A CN114895560B (zh) 2022-04-25 2022-04-25 一种电动机堵转条件下足式机器人物体追踪自适应控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210441986.0A CN114895560B (zh) 2022-04-25 2022-04-25 一种电动机堵转条件下足式机器人物体追踪自适应控制方法

Publications (2)

Publication Number Publication Date
CN114895560A true CN114895560A (zh) 2022-08-12
CN114895560B CN114895560B (zh) 2024-03-19

Family

ID=82717641

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210441986.0A Active CN114895560B (zh) 2022-04-25 2022-04-25 一种电动机堵转条件下足式机器人物体追踪自适应控制方法

Country Status (1)

Country Link
CN (1) CN114895560B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102607552A (zh) * 2012-01-11 2012-07-25 南京航空航天大学 基于神经网络的工业机器人空间网格精度补偿方法
CN105599821A (zh) * 2016-01-06 2016-05-25 山东优宝特智能机器人有限公司 具有环境感知能力的电驱动仿生四足机器人及控制方法
CN112297005A (zh) * 2020-10-10 2021-02-02 杭州电子科技大学 一种基于图神经网络强化学习的机器人自主控制方法
CN112508164A (zh) * 2020-07-24 2021-03-16 北京航空航天大学 一种基于异步监督学习的端到端自动驾驶模型预训练方法
CN112631131A (zh) * 2020-12-19 2021-04-09 北京化工大学 一种四足机器人运动控制自生成和实物迁移方法
CN112936290A (zh) * 2021-03-25 2021-06-11 西湖大学 一种基于分层强化学习的四足机器人运动规划方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102607552A (zh) * 2012-01-11 2012-07-25 南京航空航天大学 基于神经网络的工业机器人空间网格精度补偿方法
CN105599821A (zh) * 2016-01-06 2016-05-25 山东优宝特智能机器人有限公司 具有环境感知能力的电驱动仿生四足机器人及控制方法
CN112508164A (zh) * 2020-07-24 2021-03-16 北京航空航天大学 一种基于异步监督学习的端到端自动驾驶模型预训练方法
CN112297005A (zh) * 2020-10-10 2021-02-02 杭州电子科技大学 一种基于图神经网络强化学习的机器人自主控制方法
CN112631131A (zh) * 2020-12-19 2021-04-09 北京化工大学 一种四足机器人运动控制自生成和实物迁移方法
CN112936290A (zh) * 2021-03-25 2021-06-11 西湖大学 一种基于分层强化学习的四足机器人运动规划方法

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
JIYU YU 等: "Nonlinear MPC-Based Control Framework for Quadruped Robots: Touch-Down in Complex Terrain", 2023 42ND CHINESE CONTROL CONFERENCE (CCC), 18 July 2023 (2023-07-18), pages 4375 - 4381, XP034423887, DOI: 10.23919/CCC58697.2023.10240486 *
SEULBIN HWANG 等: "Autonomous Vehicle Cut-In Algorithm for Lane-Merging Scenarios via Policy-Based Reinforcement Learning Nested Within Finite-State Machine", IEEE TRANSACTIONS ON INTELLIGENT TRANSPORTATION SYSTEMS, vol. 23, no. 10, 8 March 2022 (2022-03-08), pages 17594, XP011922729, DOI: 10.1109/TITS.2022.3153848 *
吴爱国, 郝润生: "一种改进BP算法在机械手逆运动学中的应用", 中国工程科学, no. 07, 30 July 2005 (2005-07-30), pages 38 - 42 *
唐冲: "欠驱动双足机器人高效行走控制研究", 中国博士学位论文全文数据库 信息科技辑, 15 July 2015 (2015-07-15), pages 4 - 5 *
张文辉 等: "基于多层感知器神经元的空间柔性机器人位置跟踪控制", 空间控制技术与应用, vol. 37, no. 1, 15 February 2011 (2011-02-15), pages 59 - 62 *
陈柏良: "双足机器人步态规划及其应用研究", 中国优秀硕士学位论文全文数据库 信息科技辑, 15 December 2018 (2018-12-15), pages 2 - 3 *

Also Published As

Publication number Publication date
CN114895560B (zh) 2024-03-19

Similar Documents

Publication Publication Date Title
Chatzilygeroudis et al. Reset-free trial-and-error learning for robot damage recovery
Dasari et al. Robonet: Large-scale multi-robot learning
WO2021103392A1 (zh) 基于对抗结构化控制的仿生机器鱼运动控制方法、***
Lin et al. Evolutionary digital twin: A new approach for intelligent industrial product development
JP2000250604A (ja) 特性最適化方法における最適化の協調方法
CN111783994A (zh) 强化学习的训练方法和装置
CN114888801B (zh) 一种基于离线策略强化学习的机械臂控制方法及***
CN111240356A (zh) 一种基于深度强化学习的无人机集群会合方法
Tongloy et al. Asynchronous deep reinforcement learning for the mobile robot navigation with supervised auxiliary tasks
CN113580129B (zh) 一种基于机器人的多目标协同围捕方法、装置及介质
Hagras et al. Outdoor mobile robot learning and adaptation
Felbrich et al. Autonomous robotic additive manufacturing through distributed model‐free deep reinforcement learning in computational design environments
Zhou et al. An efficient deep reinforcement learning framework for uavs
CN114239974B (zh) 多智能体的位置预测方法、装置、电子设备及存储介质
Kim et al. Learning and generalization of dynamic movement primitives by hierarchical deep reinforcement learning from demonstration
Xu et al. Learning strategy for continuous robot visual control: A multi-objective perspective
Bellegarda et al. An online training method for augmenting mpc with deep reinforcement learning
Osa et al. Deep reinforcement learning with adversarial training for automated excavation using depth images
CN113419424B (zh) 减少过估计的模型化强化学习机器人控制方法及***
CN113341696A (zh) 一种运载火箭姿态控制参数智能整定方法
Gromniak et al. Deep reinforcement learning for mobile robot navigation
CN117484506A (zh) 机器人控制方法、装置、机器人及计算机可读存储介质
CN114895560A (zh) 一种电动机堵转条件下足式机器人物体追踪自适应控制方法
Capo et al. Short-term trajectory planning in TORCS using deep reinforcement learning
Halaly et al. Autonomous driving controllers with neuromorphic spiking neural networks

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
CB03 Change of inventor or designer information
CB03 Change of inventor or designer information

Inventor after: Wang Yue

Inventor after: Chen Ci

Inventor after: Xiang Pingyu

Inventor after: Wang Dongqi

Inventor after: Yu Jiyu

Inventor after: Zhang Rui

Inventor after: Lu Haojian

Inventor after: Gao Hongbo

Inventor after: Xiong Rong

Inventor before: Wang Yue

Inventor before: Chen Ci

Inventor before: Xiang Pingyu

Inventor before: Wang Dongqi

Inventor before: Yu Jiyu

Inventor before: Zhang Rui

Inventor before: Lu Haojian

Inventor before: Xiong Rong

GR01 Patent grant
GR01 Patent grant