基于LSTM的单级倒立摆NMPC优化控制算法研究
Research on LSTM-Based NMPC Optimization Control Algorithm for Single Inverted Pendulum
DOI: 10.12677/mos.2025.149589, PDF, HTML, XML,   
作者: 安明宇, 刘 威, 张洋海:上海理工大学机械工程学院,上海
关键词: 单级倒立摆系统LSTMNMPC优化控制Single Inverted Pendulum LSTM NMPC Optimized Control
摘要: 本研究针对单级倒立摆系统的非线性控制难题,创新性地将长短期记忆网络(LSTM)与非线性模型预测控制(NMPC)相结合,提出了一种新型优化控制算法。针对传统NMPC方法存在的模型依赖性强、计算复杂度高等问题,本研究采用LSTM构建数据驱动的预测模型,有效提升了系统的控制性能。仿真对比结果表明本文所提出的LSTM-NMPC算法较传统NMPC方法具有显著优势,系统稳定时间缩短50%从7秒降至3.5秒,角度超调量由0.691弧度降低至0.527弧度改善幅度达23.7%,角速度超调量减少33.3%从12.517弧度每秒降至8.344弧度每秒。这些改进充分验证了该算法在响应速度与稳定性方面的优越性,不仅为欠驱动系统智能控制提供了新思路,其方法还可推广应用于复杂非线性工业系统的控制领域。
Abstract: This study addresses the nonlinear control challenges of single inverted pendulum systems by innovatively integrating Long Short-Term Memory (LSTM) networks with Nonlinear Model Predictive Control (NMPC), proposing a novel optimized control algorithm. To overcome the limitations of conventional NMPC methods, including strong model dependency and high computational complexity, this research employs LSTM to construct a data-driven predictive model, significantly enhancing the system’s control performance. Comparative simulation results demonstrate that the proposed LSTM-NMPC algorithm exhibits remarkable advantages over traditional NMPC methods: the stabilization time is reduced by 50% from 7 seconds to 3.5 seconds, the angle overshoot is decreased from 0.691 radians to 0.527 radians (representing a 23.7% improvement), and the angular velocity overshoot is reduced by 33.3% from 12.517 rad/s to 8.344 rad/s. These enhancements fully validate the algorithm’s superior performance in both response speed and stability, providing new insights for intelligent control of underactuated systems while demonstrating potential for extension to complex nonlinear industrial control applications.
文章引用:安明宇, 刘威, 张洋海. 基于LSTM的单级倒立摆NMPC优化控制算法研究[J]. 建模与仿真, 2025, 14(9): 118-127. https://doi.org/10.12677/mos.2025.149589

1. 引言

单级倒立摆系统作为典型的欠驱动非线性系统,长期以来被视为检验控制算法有效性的基准平台[1]。该系统仅通过底部的驱动电机控制摆杆角度,却需要同时实现小车位置和摆杆姿态的稳定控制,这种强耦合的非线性特性使其成为控制理论研究的理想对象。传统控制方法如PID控制在小范围线性化区域内表现良好,但在大范围运动或存在外部扰动时往往难以维持稳定[2]。线性模型预测控制虽然通过多步预测优化改善了动态性能,但其基于局部线性化的本质限制了在全局工作范围内的控制效果。

非线性模型预测控制(NMPC)通过直接处理系统的非线性动力学方程,理论上能够实现全局稳定性[3]。然而,该方法面临两个关键挑战:一方面,精确的机理建模需要完整的系统参数和复杂的微分方程描述,这在工程实践中往往难以获取;另一方面,实时求解非线性优化问题需要极高的计算资源,严重制约了其在快速动态系统中的应用。近年来,以长短期记忆网络(LSTM)为代表的深度学习技术展现出强大的时序建模能力,为突破这些限制提供了新的技术路径[4] [5]。LSTM网络能够从历史数据中自动提取非线性系统的动态特征,其特有的门控机制可有效捕捉长期依赖关系,这为解决传统NMPC中的建模误差问题提供了创新思路[6]

本研究创新性地将LSTM神经网络嵌入NMPC框架,构建了数据驱动与模型驱动相融合的智能预测控制体系。通过LSTM网络学习系统的前向动态特性,替代传统NMPC中基于简化机理模型的预测环节,不仅显著降低了系统的收敛时间,还显著减少了系统的超调等暂态性能。为欠驱动系统的实时优化控制提供了可行的技术方案。这些研究成果不仅拓展了智能控制算法在非线性系统中的应用边界,也为复杂工业场景下的实时优化控制提供了新的方法论指导。

2. 单级倒立摆数学模型构建

简化单级倒立摆系统模型,作如下假设:

(1) 不考虑小车轮子与地面接触时的滑动摩擦以及摆杆转动时关节处的摩擦力矩的影响;

(2) 小车运动仅限于x轴,其小车质心在y轴的位置相对世界坐标系而言维持不变;

(3) 摆杆质量省略不计;

(4) 系统输出量等价于系统状态量。

二维简化模型如图1所示。

Figure 1. Two-dimensional simplified model

1. 二维简化模型

图中,mMql分别为重物的重量、小车的重量、摆杆摆动角度、摆杆长度; x,q, x ˙ , q ˙ 为反馈量; F 为控制量; ( x,y ) 为小车质心位置; ( x ˙ , y ˙ ) 为小车质心速度。

推导单级倒立摆系统的动力学模型过程如下:

重物质心位置:

{ x m =xlsin( q ) y m =y+ h 2 +lcos( q ) (1)

式(1)中:h代表小车质心与旋转关节之间的垂直距离。

重物质心速度:

{ x ˙ m = x ˙ lcos( q ) q ˙ y ˙ m =lsin( q ) q ˙ (2)

系统总动能(T):

T= 1 2 ( M+m ) x ˙ 2 + 1 2 m l 2 q ˙ 2 mlcos( q ) q ˙ x ˙ (3)

系统总势能(V):

V=mg[ lcos( q )+ h 2 ] (4)

通过公式(3)和公式(4),推到出拉格朗日方程式如下:

= 1 2 ( M+m ) x ˙ 2 + 1 2 m l 2 q ˙ 2 mlcos( q ) q ˙ x ˙ mg[ lcos( q )+ h 2 ] (5)

图1可知,单级倒立摆系统只在x轴方向上受到控制量F的作用,可推出:

{ d dt δ δ x ˙ δ δx =F d dt δ δ q ˙ δ δq =0 (6)

由公式(6),推导其非线性动力学模型如下:

{ ( M+m ) x ¨ +mlsin( q ) q ˙ 2 mlcos( q ) q ¨ =F m l 2 q ¨ mlcos( q ) x ¨ mglsin( q )=0 (7)

单级倒立摆系统作为典型的欠驱动非线性系统,其动力学特性主要由四个关键参数决定:摆杆长度(l)直接影响系统的有效杠杆臂和摆动轨迹;重物质量(m)决定了系统的重心分布和转动惯量;小车质量(M)与系统整体惯性和动态响应特性密切相关;而重力加速度(g)则是维持系统稳定平衡的基本物理约束。这些参数的协同作用共同决定了系统的非线性动态行为和控制特性[7]。在本文的所有实验均采用表1所示的统一参数配置,以确保控制性能差异仅源于算法本身而非参数变化。这种严格的参数控制方法有效排除了系统参数对控制效果评价的潜在干扰,为算法性能的客观比较提供了可靠基础。结构参数如表1所示。

Table 1. Structure parameters of the single-stage inverted pendulum system

1. 单级倒立摆系统结构参数表

符号

物理意义及单位

数值

M

小车质量/kg

0.5

m

重物质量/kg

0.5

l

摆杆长度/m

0.3

g

重力加速度/(m∙s2)

9.81

3. NMPC控制器设计

NMPC的核心理念是在每个时刻通过求解一个在线优化问题来预测未来系统的行为并计算最优控制输入,该系统(7)的离散状态空间方程如下:

{ X( k+1 )=f( X( k ),U( k ) ) Y( k )=g( X( k ),U( k ) ) (8)

式(8)中: U( k )=F( k ) 为控制输入,X(k)是系统状态,Y(k)是系统输出,函数 f( ) g( ) 表示系统的动态行为。

NMPC通过求解一个带有约束的优化问题来计算控制输入U(k)。使公式(9)中的性能参数降至最低[8]

J= min X,U i=0 N ( e ( k ) T Qe( k ) )+U ( k ) T RU( k ) (9)

式(9)中: e= X r X X r 为系统期望输出,N是预测时域的长度。

引入控制输入约束条件,如公式(10)所示:

U min U( k ) U max (10)

式(10)中: U min =20, U max =20

引入状态约束条件,如公式(11)所示:

X( k+1 )=f( X( k ),U( k ) ) (11)

在构建NMPC控制器的过程中,一旦建立了控制目标的成本函数和约束条件,便可利用CasADi工具包和Ipopt求解器进行求解控制输入,进而实现NMPC控制器的设计。

3.1. LSTM网络结构设计

LSTM单元中有三种类型的门控,分别为:输入门、遗忘门和输出门。门控可以看作一层全连接层,LSTM对信息的存储和更新正是由这些门控来实现。更具体地说,门控是由sigmoid函数和点乘运算实现,门控并不会提供额外的信息。门控的一般形式可以表示为:

g( x )=σ( Wx+b ) (12)

其中, σ( x )=1/ ( 1+exp( x ) ) ,称为Sigmoid函数,是机器学习中常用的非线性激活函数,可以将一个实值映射到区间0~1,用于描述信息通过的多少。当门的输出值为0,表示没有信息通过,当值为1则表示所有信息都可以通过。

当使用LSTM替代或逼近倒立摆的动力学时,其状态空间方程由LSTM的门控机制和状态更新规则定义:

门控机制:

{ i t =σ( W i [ h t1 , x t ]+ b i ) f t =σ( W f [ h t1 , x t ]+ b f ) o t =σ( W o [ h t1 , x t ]+ b o ) (13)

式(13)中,其中 i t f t o t 分别代表输入门、遗忘门、输出门,用于判断当前传感器数据是否可信,忽略过时的角度数据,决定哪些状态用于控制指令生成。

状态更新:

{ C ˜ t =tanh( W C [ h t1 , x t ]+ b C ) C t = f t C t1 + i t C ˜ t h t = o t tanh( C t ) (14)

式(14)中, C ˜ t C t h t 分别候选状态、细胞状态、隐藏状态,用于预测下一时刻的摆杆动态、系统累积的稳定性经验、传递给控制器或下一时间步的简化状态。

3.2. 基于LSTM的NMPC控制器训练与优化

本研究通过仿真实验,系统采集了单级倒立摆系统在不同初始条件下的运行数据。具体地,在摆杆初始角度分别为5˚、15˚、30˚、45˚以及−5˚、−15˚、−30˚、−45˚的八组工况下,分别采集系统状态变量(包括摆杆角度、角速度、小车位置和速度)及相应控制输入量。每组实验获取2400条时序数据,共形成19,200组样本,从而构建了一个覆盖系统非线性工作区域的完备数据集,为后续数据驱动建模提供充分依据。由于传统NMPC需在线求解非线性优化问题,依赖迭代算法Ipopt求解器,计算负担重,实时性受限,故采用LSTM-NMPC控制策略对NMPC控制器数据进行标准化处理,以提升训练稳定性[9]

损失函数(Loss):采用均方误差(MSE)作为训练优化的目标函数[10]

MSE= 1 N i=1 N ( y i y ^ i ) 2 (15)

其中, y ^ i 为真实值, y i 为LSTM预测值。

评估指标(RMSE):均方根误差用于直观评估模型预测精度:

RMSE= 1 N i=1 N ( y i y ^ i ) 2 (16)

为验证LSTM-NMPC训练过程的收敛性,图2展示了训练损失(MSE)与验证集RMSE随迭代次数的变化曲线。迭代图如图2所示。

Figure 2. LSTM-NMPC iteration plot

2. LSTM-NMPC迭代图

优化器为Adam,初始学习率设为0.001,其神经元数量为100。当验证损失不再下降时终止训练,保存最优模型,图中显示训练在42分20秒内完成,最大迭代次数未耗尽,说明模型提前收敛,每50次迭代验证一次频率。RMSE在约104次迭代后稳定至0.027132,损失函数同步下降,表明模型参数优化有效。总训练时间42分20秒,满足离线训练实时性要求。验证RMSE与训练RMSE趋势一致,最终值接近,说明模型对未见过数据具有良好预测能力。

4. 仿真对比

基于MATLAB/Simulink构建的联合仿真平台对传统NMPC与本文所提出的LSTM-NMPC控制策略在倒立摆系统动态调控性能方面进行了系统性的对比研究。仿真初始条件,如表2所示。

Table 2. Initial conditions table

2. 初始条件表

x( m )

q( rad )

x ˙ ( m/s )

q ˙ ( rad/s )

0

0.6109

0

0

由于控制输入 U( k ) 的动态特性直接影响系统的响应速度和稳定性,因此本文首先从控制输入信号的角度进行对比分析。对比结果如图3所示,由图可知,本文控制输入与传统NMPC控制输入均满足式(10)中的约束条件。但是,本文控制输入在大约3 s后趋于稳定,而传统NMPC控制输入在大约7 s后才趋于稳定,相比之下,本文控制器在收敛速度方面表现更为优越。这种快速收敛的特性得益于LSTM网络对系统动态的高精度预测,使其能够更早地生成最优控制输入,从而显著提升系统的响应速度。此外,本文控制输入相比于传统NMPC在2 s之后无明显震荡行为,且超调量小于传统NMPC。综上可得本文控制策略表现出更优越的控制性能。

Figure 3. Comparison of control inputs between NMPC and LSTM-NMPC

3. NMPC与LSTM-NMPC控制输入对比图

Figure 4. Displacement comparison diagram

4. 位移对比图

Figure 5. Comparison of cart speeds

5. 小车速度对比图

Figure 6. Pole angle comparison diagram

6. 摆动角度对比图

为了进一步全面验证本文所提出的LSTM-NMPC控制策略的优越性,需要从多维度对比其控制效果,对比结果如图4~7所示。由图4可知,在位移响应方面,虽然LSTM-NMPC控制下的小车在0.58 s时达到最大位移超调量−0.826 m,略高于NMPC控制在0.51 s时记录的−0.613 m,但其整体暂态响应特性更为优越,如本文控制策略在小车收敛速度和震荡抑制方面均显著优于传统NMPC等。在速度响应方面,如图5所示,LSTM-NMPC策略将小车最大速度超调量从−3.07 m/s降低至−3.31 m/s,相较于传统NMPC降幅达7.82%。针对摆杆摆动角度响应方面,如图6所示,LSTM-NMPC控制策略将最大角度超调量从−0.691 rad优化至−0.527 rad,相较于传统NMPC降低23.7%。最后,在摆杆摆动角速度响应方面,如图7所示,LSTM-NMPC控制将最大角速度超调量从−12.517 rad/s降低至−8.344 rad/s,降幅为33.34%。综合实验对比结果,本文所提出的LSTM-NMPC控制策略在系统响应速度、稳定性以及超调控制等关键性能指标上均显著优于传统NMPC控制方法,为倒立摆系统的控制提供了更优的解决方案。

Figure 7. Comparison of pendulum angular velocities

7. 摆动角速度对比图

5. 总结

本研究提出了一种基于LSTM的单级倒立摆NMPC优化控制算法,通过将LSTM嵌入至传统NMPC框架内,显著提升了系统的控制性能。实验结果表明,与传统NMPC相比,LSTM-NMPC控制器在响应速度、稳定性和超调抑制等方面均表现出显著优势,系统稳定时间缩短50%以上,同时降低了角度和角速度的超调量。本研究的创新性在于利用LSTM优化NMPC的动态模型,为复杂非线性系统的智能控制提供了高效解决方案。然而,该方法仍存在一定的理论局限性,主要体现在LSTM模型对训练数据质量和覆盖范围的依赖性较强,且在实时硬件部署中的计算效率仍有待进一步验证。未来工作可扩展至多级倒立摆或结合强化学习进一步提升鲁棒性,并在实际硬件平台上验证算法的可行性。该研究不仅为欠驱动系统的控制提供了新思路,也为智能控制算法的实际应用奠定了理论基础。

参考文献

[1] 杨世勇, 刘殿通, 谭翚. 倒立摆与控制理论研究[J]. 自动化技术与应用, 2011, 30(5): 1-3+11.
[2] 李艳杰, 佟福奇. 单级倒立摆系统的仿真分析[J]. 上海电气技术, 2021, 14(1): 44-50.
[3] 何德峰, 丁宝苍, 于树友. 非线性系统模型预测控制若干基本特点与主题回顾[J]. 控制理论与应用, 2013, 30(3): 273-287.
[4] 张驰, 郭媛, 黎明. 人工神经网络模型发展及应用综述[J]. 计算机工程与应用, 2021, 57(11): 57-69.
[5] 李超, 柴玉梅, 南晓斐, 高明磊. 基于深度学习的问题分类方法研究[J]. 计算机科学, 2016(12): 115-119.
[6] 丛爽, 张冬军, 魏衡华. 单级倒立摆三种控制方法的对比研究[J]. 系统工程与电子技术, 2001(11): 47-49+99.
[7] 薛军伟. 基于matlab的单级倒立摆系统仿真研究[J]. 现代工业经济和信息化, 2024, 14(7): 82-84.
[8] 刘凯, 李浩然, 许述财, 等. 自主车辆前馈nmpc路径跟踪控制方法研究[J]. 重庆理工大学学报(自然科学), 2024, 38(5): 18-29.
[9] 杨丽, 吴雨茜, 王俊丽, 等. 循环神经网络研究综述[J]. 计算机应用, 2018, 38(S2): 1-6+26.
[10] 王鑫, 吴际, 刘超, 等. 基于LSTM循环神经网络的故障时间序列预测[J]. 北京航空航天大学学报, 2018, 44(4): 772-784.