基于强化学习的半主动悬架舒适性控制

TD3 智能体直接输出阻尼力,多目标奖励兼顾舒适性、悬架行程与轮胎接地性

时间:2026.01 – 2026.03    结果:相对 SH-ADD,簧上质量加速度降低 52%

问题引入

半主动悬架的经典控制律——Skyhook(SH)、ADD、SH-ADD——都建立在清晰的物理直觉上,参数少、鲁棒性好。但它们的权衡是写死的

\[c_{SH} = \begin{cases} c_{\max}, & \dot{z}_s \,(\dot{z}_s - \dot{z}_u) \geq 0 \\ c_{\min}, & \text{否则} \end{cases} \qquad c_{ADD} = \begin{cases} c_{\max}, & \ddot{z}_s \,(\dot{z}_s - \dot{z}_u) \geq 0 \\ c_{\min}, & \text{否则} \end{cases}\]

Skyhook 用簧上速度判据,偏向低频车身姿态;ADD 用簧上加速度判据,偏向高频舒适性;SH-ADD 在两者间按频率切换。一旦路面激励的统计特性变化,这套固定判据就不再是最优。而且它们都是开关型输出——阻尼在 \(c_{\min}\) 与 \(c_{\max}\) 之间硬跳变。

左:天棚控制与被动悬架的簧上加速度对比;右:对应的阻尼系数——被动悬架恒定 2000 N·s/m,天棚控制在 750 与 4000 N·s/m 之间开关切换。
冲击(阶跃)工况:天棚控制把加速度峰值从约 13.5 m/s² 压到 7 m/s² 左右,代价是阻尼的剧烈开关动作。

这项工作的出发点是:把”什么时候该偏向哪个目标、该出多大力”交给数据去学,而不是人工整定判据。

路面模型与工况

用滤波白噪声法生成 B、C、D 三级随机路面。先验证路面模型本身——把仿真得到的位移功率谱密度与 ISO 8608 理论谱对比:

B / C / D 三级路面的位移功率谱密度,实线为仿真、虚线为理论。三条谱线在 0.01–10 rad/m 空间频率范围内都与理论吻合,说明路面激励模型可用。
B 级(±0.02 m)与 C 级(±0.05 m)路面的高程时域曲线,D 级可达 ±0.1 m。等级越高路面越差,激励幅值成倍增长。

为了检验策略对工况变化的适应性,设计了一个三段变工况场景:D 级路面 10 m/s → C 级路面 20 m/s → B 级路面 30 m/s。路面等级变好的同时车速升高,激励的频率成分随之改变。

三段场景的路面高程输入:D 级 10 m/s、C 级 20 m/s、B 级 30 m/s 依次切换。

TD3 智能体

为什么是 TD3:半主动悬架是连续动作控制,DDPG 类方法会因 Q 值高估导致阻尼指令震荡。TD3 的三项改进——双 Critic 取小、目标策略平滑、Actor 延迟更新——恰好对症。

\[y \leftarrow r + \gamma \min_{i=1,2} Q_{\theta_i'}\big(s', \pi_{\phi'}(s') + \epsilon\big), \qquad \epsilon \sim \mathrm{clip}\big(\mathcal{N}(0,\sigma),\,-c,\,c\big)\]

状态(4 维):簧上加速度 \(\ddot{z}_s\)、悬架动挠度 \(z_s - z_u\)、相对速度 \(\dot{z}_s - \dot{z}_u\)、簧上速度 \(\dot{z}_s\)。

动作(1 维连续):阻尼力,直接受 \([F_{\min}, F_{\max}]\) 约束——不是在两档阻尼间开关,而是连续给力。

网络 结构
Actor 4 → 512 → 128 → 1,ReLU + tanh,再经 scaling 层映射到力的物理范围
Critic ×2 状态支路 4 → 512 → 256;动作支路 1 → 256;拼接后 → 256 → 128 → 1
超参数 取值
学习率(Actor / Critic) 1×10⁻⁴
折扣因子 \(\gamma\) 0.99
经验回放容量 1×10⁶
批大小 128
目标网络平滑系数 1×10⁻³
探索噪声标准差 0.2,衰减率 1×10⁻⁴,下限 0.01
训练回合数 1000

奖励函数:软项 + 硬项 + 终止惩罚

奖励由三部分组成。软项是四个目标的加权平方,各自除以量纲缩放因子后再加权:

\[r_s = -\sum_{i=1}^{4} K_i \left( \frac{|x_i|}{\omega_i} \right)^2, \qquad x = \big[\ddot{z}_s,\; z_s - z_u,\; z_u - z_q,\; F\big]\]

其中 \(K = [0.7,\, 0.1,\, 0.1,\, 0.1]\),\(\omega = [2,\, 0.15,\, 0.15,\, 3]\)。舒适性权重 0.7 占绝对主导,其余三项(悬架行程、轮胎变形、控制力)各占 0.1,体现”以舒适性为主、其他为约束”的设计取向。

硬项只盯加速度,对超出阈值的部分给阶梯式重罚:

\[r_h = -k_h \left| \left\lfloor \alpha_1 |\ddot{z}_s| \right\rfloor \right|, \qquad k_h = 5,\; \alpha_1 = 0.25\]

取整函数使得加速度每超过 4 m/s² 一档就多扣 5 分——这是把”舒适性底线”从连续惩罚变成了阶梯式硬约束。

终止惩罚守住三条安全红线,每违反一条扣 10 分:

\[P = -10\big[\underbrace{|z_s - z_u| > 0.05}_{\text{悬架行程超限}}\big] -10\big[\underbrace{|\Delta F| > 2}_{\text{力变化率过大}}\big] -10\big[\underbrace{(z_s - z_u)\, F > 0}_{\text{违反半主动可行域}}\big]\]

第三条尤其关键:半主动悬架只能耗散能量、不能主动做功,动挠度与阻尼力同号意味着执行器在”推”车身,物理上不可实现。把它写进奖励,智能体就不会学出无法落地的策略。

最终奖励为三者之和并裁剪到 \([-5, 0]\),避免早期训练时的极端负值破坏价值函数估计。

训练收敛

1000 回合的训练过程,红线为平均奖励、阴影为 90% 置信区间。前 300 回合剧烈波动(探索噪声主导),400 回合后快速收敛,600 回合起稳定在接近 0 的水平并保持低方差。

结果

与传统控制律的对比

先看三条经典控制律本身的差异(曲线纵向偏移以便区分):

被动悬架(PS)与 SH、ADD、SH-ADD 三种控制律的簧上加速度对比,曲线依次偏移 5、10、15 以便区分。SH-ADD 综合了两者的频域优势,是最强的传统基准。

再看加入 TD3 之后:

被动、SH-ADD 与 TD3 的簧上加速度(偏移显示)。TD3 的曲线明显更"平",高频毛刺被显著抑制。

四种策略同台

10 秒随机路面激励下,被动悬架、SH-ADD、MPC 与 TD3 的簧上质量加速度同图对比。被动悬架峰值超过 ±2 m/s²,SH-ADD 有所改善但仍有明显尖峰,TD3 的包络最窄。

相对 SH-ADD,TD3 将簧上质量加速度降低 52%,同时悬架动挠度与轮胎动载荷都保持在约束范围内——奖励函数里的终止惩罚保证了这一点。

变工况适应性

上:三段路面高程输入;下:被动与 SH-ADD 在三段工况下的簧上加速度响应。路面等级与车速同时变化时,固定判据的控制律表现随工况波动。
D 级 10 m/s、C 级 20 m/s、B 级 30 m/s 三段切换下的加速度响应细节。

我的工作

1/4 车辆动力学模型与随机路面模型的搭建与验证、TD3 智能体的网络设计与训练环境实现、多目标奖励函数(软项/硬项/终止惩罚三层结构)的设计与调参、与 Skyhook / ADD / SH-ADD / MPC 四类基准的对比试验。

工具:MATLAB / Simulink、Reinforcement Learning Toolbox(TD3)、Model Predictive Control Toolbox