运动控制算法入门到精通:从理论到嵌入式实战第124章 强化学习:Q-learning与DQN1. 一个让我失眠的调试现场去年做四足机器人步态规划,传统PID+MPC在平地上跑得挺好,一上碎石路就开始“打醉拳”。我盯着示波器里乱跳的关节电流波形,突然意识到:运动控制的核心不是算准轨迹,而是学会在未知扰动下做决策。那天晚上我翻出Sutton的《强化学习》,把Q-learning和DQN硬塞进STM32H7的FreeRTOS任务里。结果第一个版本跑起来,机器人直接原地转圈——Q表收敛速度比乌龟还慢,内存还爆了。如果你也遇到过“理论完美、实战翻车”的情况,这篇笔记或许能帮你少焊几块板子。2. Q-learning:最朴素的“试错记账本”2.1 核心思想:别规划,先试错传统控制算法(比如LQR)需要精确的模型矩阵A和B。但现实中的电机摩擦力、齿轮间隙、电池电压波动,这些非线性项根本写不进状态方程。Q-learning的思路很粗暴:把每个状态-动作组合的价值记在一张表里,错了就扣分,对了就加分。举个四足机器人单腿控制的例子:状态s:髋关节角度、膝关节角度、足端接触力(3个连续量,离散化成10×10×5=500个格子)动作a:髋关节力矩(-3Nm到+3