ARX / ARMAX 与预测误差法(PEM)¶
本页对 SHM roadmap 中的 2.2 ARX / ARMAX(PEM) 做展开:用差分方程(ARX/ARMAX 等)描述输入–输出或仅输出动力学,通过最小化一步前向预测误差估计参数,并由此得到模态参数。
教学视频¶
概念¶
核心思路 — 用离散时间差分方程(ARX、ARMAX、AR、ARMA 等)描述系统动力学;将「一步前向预测误差」视为可调参数的函数,通过 最小化预测误差的某种准则 (如最小二乘、极大似然)估计模型参数;再从辨识出的离散传递函数或状态空间形式中提取 极点 ,进而得到 模态频率与阻尼比 ,必要时由多输入多输出(MIMO)或状态空间实现得到 振型 。因此 PEM 的核心理念是:模型 + 预测误差准则 + 优化 → 参数估计 → 模态参数。
模型形式简述 — 记 \(q^{-1}\) 为延迟算子:
- ARX:输出由过去输入、过去输出及方程误差决定,参数在 \(A,B\) 中且 线性 出现,可用 最小二乘(LS) 一次求解,无需迭代。
- ARMAX:在 ARX 基础上增加对噪声的滑动平均项 \(C(q^{-1}) e[k]\),参数在 \(A,B,C\) 中,\(C\) 导致 非线性 ,需 迭代优化 (如 Gauss–Newton、预测误差最小化或 MLE)。
- 仅输出(AR/ARMA):无输入项,适用于环境激励等仅测响应的 OMA 场景;从响应自相关或直接 PEM 估计 \(A\)(及 \(C\)),再由极点得模态频率与阻尼。
式 (1)–(4) 符号含义:
- \(q^{-1}\):延迟算子,\(q^{-1} y[k] = y[k-1]\)。
- \(k\):离散时间步指标。
- \(y[k]\):第 \(k\) 步的输出(观测信号,如加速度、应变等)。
- \(u[k]\):第 \(k\) 步的输入(激励);仅输出模型(AR/ARMA)中无此项。
- \(e[k]\):方程误差 / 噪声项(常假设为白噪声,或经 \(C(q^{-1})\) 滤波后的噪声)。
- \(A(q^{-1}), B(q^{-1}), C(q^{-1})\):关于 \(q^{-1}\) 的多项式,其系数为待估参数;\(A\) 通常取首一(常数项为 1),\(B\) 描述输入到输出的动力学,\(C\) 描述噪声的滑动平均。
- \(n_a, n_b, n_c\):分别为 \(A,B,C\) 的阶次(多项式的最高次幂)。
与状态空间的关系 — 差分方程模型与离散状态空间模型等价(可相互转换);PEM 也可直接对状态空间参数做预测误差最小化(如 SS 类 PEM)。此处侧重 ARX/ARMAX 这类输入–输出差分形式,因其结构简单、工程中常用,且 ARX 的 LS 解便于实现与解析。
算法要点¶
预测与预测误差 — 在给定历史数据与当前参数下,用模型得到下一步输出的 预测 \(\hat{y}[k|k-1]\);一步前向预测误差 为
式 (5) 符号含义:
- \(\hat{y}[k|k-1]\):基于至 \(k-1\) 时刻的数据与当前模型参数,对 \(y[k]\) 的 一步前向预测。
- \(\varepsilon[k]\):一步前向预测误差;PEM 通过最小化其某种准则(如平方和)来估计参数。
PEM 即选取参数使某一准则(通常为预测误差的平方和或负对数似然)最小。
ARX:最小二乘 — 将 ARX 方程写成关于参数向量的线性回归形式,预测误差对参数为 线性;最小化
式 (6):对全部时间步 \(k\) 的预测误差平方求和;\(k\) 的求和范围由数据窗决定。
得到 正规方程,解线性方程组即可(或递归最小二乘 RLS 做在线/递推估计)。无需初值、不迭代,数值稳定且计算量小。
ARMAX / ARMA:迭代优化 — 预测 \(\hat{y}[k|k-1]\) 依赖过去的 \(\varepsilon\),而 \(\varepsilon\) 又依赖参数,故参数与预测误差 耦合 ;需用 迭代法 (如 Gauss–Newton、Levenberg–Marquardt 或基于梯度的 MLE)反复更新参数直至收敛。初值通常由 ARX 或高阶 ARX 给出;需注意收敛性、局部极小与数值稳定性(如保证 \(A,C\) 的稳定性)。
模态参数提取 — 辨识得到 \(A(q^{-1})\)(及 \(B,C\))后,求 \(A(z^{-1})=0\) 的 根(即离散系统极点);将极点映射回连续时间(\(s = \ln(z)/T_s\) 等),得到 连续极点
式 (7) 符号含义:
- \(s_r\):第 \(r\) 阶模态对应的 连续时间极点(由离散极点 \(z_r\) 经 \(s = \ln(z)/T_s\) 等映射得到)。
- \(\omega_r\):第 \(r\) 阶 无阻尼固有频率(rad/s)。
- \(\zeta_r\):第 \(r\) 阶 阻尼比。
- \(j\):虚数单位。
从而由 \(\omega_r\)、\(\zeta_r\) 即得该阶模态频率与阻尼。多输出时可由 MIMO 差分模型或等价状态空间实现得到 振型(可观性矩阵或留数方向)。
操作步骤(概要)¶
- 数据与结构:准备输入–输出序列 \(\{u[k],y[k]\}\)(或仅输出 \(\{y[k]\}\));选定模型类(ARX / ARMAX / AR / ARMA)及 阶次 (\(n_a,n_b,n_c\) 等)。
- 阶次选取:可用 AIC(赤池信息准则,Akaike Information Criterion)、BIC(贝叶斯信息准则,Bayesian Information Criterion)、交叉验证,或在不同阶次下辨识并画 稳定图(极点随阶次变化),选则模态稳定、伪模态少的阶次;AIC/BIC 均在拟合优度与模型复杂度之间折中,取使准则值最小的阶次,BIC 对阶次惩罚更重、常得更简约的模型。
- 估计:ARX 用 LS 解正规方程(或 RLS);ARMAX/ARMA 用迭代法最小化预测误差或 MLE,初值可取 ARX 或零。
- 验证:残差白化检验、拟合度、或与预留数据比较;必要时约束 \(A,C\) 稳定并在优化中施加。
- 模态提取:由 \(A(z^{-1})\) 求根得离散极点 → 映射到连续极点 → 得 \(\omega_r,\zeta_r\);多通道时由 MIMO 模型或状态空间实现得振型。
适用情形与局限¶
适用 — 有输入–输出数据且需要 参数化模型 的控制与系统识别;希望得到 模态频率与阻尼 (及多输出时的振型);数据长度与信噪比适中;可接受差分方程形式且能选取合适阶次时。仅测响应时可用 AR/ARMA 做 OMA,适用于环境激励下的模态识别。
局限 — 阶次敏感:过低估不足、过高易引入虚假模态,需稳定图或准则辅助。激励条件:输入–输出辨识需激励 持续激励(PE) ,否则参数不可辨识或病态。ARMAX/ARMA:迭代与初值、收敛性、数值稳定性(尤其保证稳定多项式)需注意。振型:单输入单输出(SISO)仅得频率与阻尼;多通道或 MIMO 才得振型。非线性与时变:模型为线性定常,强非线性或快时变需其他方法。
工程实践:注意事项¶
| 方面 | 注意事项 |
|---|---|
| 激励与可辨识性 | 输入须持续激励(PE),频带覆盖关心模态;仅输出时假设激励近似白或宽频,否则 AR/ARMA 可能偏。 |
| 阶次与稳定图 | 多试几组阶次,用 AIC/BIC 或稳定图选则;稳定图中稳定极点对应真模态,随阶次漂移或散落的多为伪模态。 |
| 初值与迭代(ARMAX/ARMA) | 用高阶 ARX 或零初值启动迭代;监控收敛与残差;必要时正则化或约束稳定。 |
| 数值稳定性 | 正规方程可能病态,可用 QR/SVD 解 LS;迭代中保证 \(A,C\) 根在单位圆内。 |
| 采样与延迟 | 采样率须满足关心频段(如 Nyquist);模型中含 \(B(q^{-1})\) 时注意输入–输出延迟(\(n_k\))的设定。 |
| 多通道与振型 | 多输出 ARX/ARMAX 或等价状态空间可得到振型;需足够通道与激励以辨识各阶模态。 |
边缘与在线¶
是否适用 — 较适用。模型为紧凑的差分方程,数据量可控;低阶 ARX 仅需 LS,无迭代,运算与内存均较小,适合 MCU。ARMAX/ARMA 及高阶 ARX 因迭代与矩阵规模,边缘实现需裁剪(阶次限高、迭代次数限、或仅做 ARX 近似)。
潜力 — 递归最小二乘(RLS) 可对 ARX 做在线/递推估计,每来新数据更新参数,适合流式与边缘。低阶 ARX 可固定点或整数运算;识别出的 \(\omega_r,\zeta_r\) 可与基线比较做「频率/阻尼是否漂移」的在线筛查,再视情况上传片段做更重方法(如 SSI)。ARX 也可作为 ARMAX 或状态空间 PEM 的初值,在边缘做粗估计、云端做精修。
挑战 — 阶次选取 在边缘难以做完整稳定图,多依赖先验或固定低阶。MLE/迭代 (ARMAX、ARMA)在 MCU 上迭代次数与数值稳定性需严格控制。持续激励 在环境激励下若不足,辨识质量下降。多通道与振型 需更多数据与算力。工程上常采用「边缘低阶 ARX 快速筛查 + 可疑数据上传做高阶或 ARMAX/SSI」的分级策略。