文章目录
摘要
【针对问题】双轮腿机器人在崎岖地形运动控制缺陷、高度依赖于精确动力学模型、无法自适应求解
【提出】基于DDPG的双轮腿机器人控制方法
【细节】(1)分析模型;(2)生成控制策略;(3)仿真对比实验;
【效果】实现了快速稳定运动的功能,平均速度提高,姿态角偏移峰值减小;
关键词
- 运动控制;
- 强化学习;
- 轮腿机器人;
- DDPG 算法;
0 引 言
轮腿机器人 → \rightarrow → 足式机器人腿部末端设计轮子 → \rightarrow → 较好的机动性和灵活性 → \rightarrow → 非结构化崎岖路面
双轮腿机构作为一种非线性和欠驱动的非最小相位系统,机器人运动时与地面只有两个接触点,存在抗扰动性弱、运动平衡性差等不足
主要控制方法:
极点配置法、线性二次调节法(简称为 LQR)和反馈线性化法
学者 | 研究 | 特点 | 引用文献 |
---|---|---|---|
张弨 | 锁定关节简化机器人 + PD控制 | 难以适用于非结构化崎岖地面 | 张弨. 双足轮腿机器人系统设计与运动控制研究[D]. 哈尔滨:哈尔滨工业大学, 2020. |
纪胜昊 | 双动力学模型运动控制方法 + 简化的二维轮型倒立摆模型 + 集成平衡约条件的全刚体动力学模型 + 极点配置法 | 建模难度大,且模型参数易受外界环境干扰 | 纪胜昊. 两足轮腿机器人系统研制及模型预测控制方法研究[D]. 哈尔滨:哈尔滨工业大学,2021. |
赵玉婷等 | 双足机器人基于价值的 deep Q-network(简称为 DQN)算法 | 相较于传统的控制方式姿态角偏移减小至 10% | 赵玉婷, 韩宝玲, 罗庆生. 基于 Deep Q-network 双足机器人非平整地面行走稳定性控制方法[J]. 计算机应用, 2018, 38(9): 2459-2463. |
ZHANG Y等 | 基于 DDPG 算法的液压软机械臂控制方法 | 动态误差和稳态误差降低 | ZHANG Y, WANG T, TAN N., et al. Open-loop motion control of a hydraulic soft robotic arm using deep reinforcement learning[C]// Proc. of the Intelligent Robotics and Applications, 2021. 13013. |
1 仿真建模
1.1 双轮腿机器人建模
采用一种简化的双轮腿机器人连杆结构进行建模
Matlab 2021b 的 SIMULINK 工具包
增加关节阻尼、接触刚度等仿真参数
→
\rightarrow
→ 提高仿真实验效果在实际应用设计
中的参考价值
1.2 仿真环境建模
圆弧形拱坡,用于模拟崎岖的地面环境
2 运动控制算法
2.1 DDPG 算法
2.2 运动控制模型训练
要素 | 详情 |
---|---|
s s s | 机器人状态的观测值 |
a a a | 机器人六个关节力矩的输出(设定有效范围) |
r r r | 状态转移的适应度 |
p p p | 对应关节力矩输出后,机器人状态的转移 |
2.2.1 策略网络、Q 网络及其目标网络
使用策略神经网络 μ \mu μ 与价值神经网络 Q Q Q 表示确定性策略梯度和状态动作值函数
- 生成的动作:
a t = μ θ ( s ) + N t (1) a_{t} = \mu_{\theta}(s)+N_{t} \tag{1} at=μθ(s)+Nt(1)
N t N_{t} Nt 噪声参数,提升智能体的探索性能 - 策略网络的参数更新:
∇ θ J ≈ 1 M ∑ i I ∇ a i Q ( s i , a i ) ∇ θ μ ( s i ) (2) \nabla_{\theta} J \approx \frac{1}{M}\sum_{i}^{I} \nabla_{a_{i}}Q(s_{i},a_{i})\nabla_{\theta} \mu(s_{i}) \tag{2} ∇θJ≈M1i∑I∇aiQ(si,ai)∇θμ(si)(2) - 最小化均方贝尔曼误差MSBE
L = 1 M ∑ i I ( r i + γ Q ′ ( s i + 1 , μ ′ ( s i + 1 ) ) − Q ( s i , a i ) ) 2 (3) L = \frac{1}{M} \sum_{i}^{I} \big( r_{i}+\gamma Q^{\prime}(s_{i+1},\mu^{\prime}(s_{i+1}))-Q(s_{i},a_{i}) \big)^{2} \tag{3} L=M1i∑I(ri+γQ′(si+1,μ′(si+1))−Q(si,ai))2(3) - 参数更新:
θ ′ = ρ θ ′ + ( 1 − ρ ) θ (4) \theta^{\prime} = \rho\theta^{\prime}+(1-\rho)\theta \tag{4} θ′=ρθ′+(1−ρ)θ(4)
ϕ ′ = ρ ϕ ′ + ( 1 − ρ ) ϕ (5) \phi^{\prime} = \rho\phi^{\prime}+(1-\rho)\phi \tag{5} ϕ′=ρϕ′+(1−ρ)ϕ(5)
2.2.2 观测值及奖励值
奖励设定:
项目 | 数值 |
---|---|
速度奖励值:于鼓励机器人向前运动 | r v = k 1 × v x r_{v}=k_{1}\times v_{x} rv=k1×vx |
稳定性奖励值:奖励机器人在瞬时和全局决策完成平稳的运动 | r s = − ( y − y i n i t ) 2 − k 3 ( z − z i n i t ) 2 − k 4 r o l l 2 − k 5 p i t c h 2 − k 6 y a w 2 r_{s} = -(y-y_{init})^{2}-k_{3}(z-z_{init})^{2}-k_{4}roll^{2}-k_{5}pitch^{2}-k_{6}yaw^{2} rs=−(y−yinit)2−k3(z−zinit)2−k4roll2−k5pitch2−k6yaw2 |
关节稳定性奖励值:提高机器人能量利用效率 | r j s = − k 7 ∑ i ( t i ′ − t i ) 2 r_{js} = -k_{7}\sum_{i}(t_{i}^{\prime}-t_{i})^{2} rjs=−k7i∑(ti′−ti)2 |
触地奖励值:奖励机器人控制两侧轮胎与地面的接触力相同,降低训练生成奇异运动姿态的概率 | 𝑟 𝐹 = − 𝑘 8 ( 𝐹 𝑁 𝑙 − 𝐹 𝑁 𝑟 ) 2 𝑟_{𝐹} = −𝑘_{8} (𝐹_{𝑁_{𝑙}}− 𝐹_{𝑁_{𝑟}})^{2} rF=−k8(FNl−FNr)2 |
运动持续时间奖励值:鼓励机器人持续运动 | r c = k 9 × T r_{c}=k_{9}\times T rc=k9×T |
3 仿真实验及验证
3.1 实验条件及内容
设计成双轮式、双腿式和双轮腿式机构,且采用同一算法对其进行仿真实验
3.2 实验结果与分析
3.2.1 算法学习结果分析
- 双轮机器人运动模式单一,训练时间较短
- DDPG 算法易高估 Q 值,导致收敛过程中奖励值波动较大
3.2.2 运动控制性能分析
3.2.2.1 关节力矩曲线
双轮式及双轮腿式结构在面对崎岖路面时,各关节力矩波动范围较小,轮关节的力矩变化较为平滑,说明了在崎岖地面运动时能够实现有效控制