You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

已知A/B/C/D矩阵的状态空间模型如何实现输入输出集变换

原状态空间模型到新输入输出集的直接变换方法

该变换全程不需要将状态空间模型转换为传递函数,仅通过原A、B、C、D矩阵的分块和线性代数运算即可实现。

前置矩阵分块

原模型输出Y共9维,其中前5维为新输入U_new,后4维为新输出Y_new,首先将原C、D矩阵按输出维度拆分为4个子块:

  • C1:原C矩阵的前5行,对应y1~y5的状态输出系数,维度为5×23
  • C2:原C矩阵的后4行,对应y6~y9的状态输出系数,维度为4×23
  • D1:原D矩阵的前5行,对应y1~y5的原输入馈通系数,维度为5×5,满足 U_new = C1*X + D1*U
  • D2:原D矩阵的后4行,对应y6~y9的原输入馈通系数,维度为4×5,满足 Y_new = C2*X + D2*U

变换存在的前提条件

必须保证5×5的子矩阵D1满秩可逆,否则原输入U无法通过新输入U_new和状态X唯一表示,不存在和原模型同状态维度的标准状态空间实现,需要先处理代数约束做降阶才能得到等效模型。

新状态空间矩阵计算

当D1可逆时,首先从U_new的表达式反解原输入U:
U = D1⁻¹ * (U_new - C1*X)
将该式分别代入原状态方程和新输出的表达式,即可直接得到新模型的四个系数矩阵:

  1. 新状态方程 X' = A_new*X + B_new*U_new 对应系数:
    • A_new = A - B * D1⁻¹ * C1,维度23×23,和原模型状态维度一致
    • B_new = B * D1⁻¹,维度23×5,匹配新输入的维度
  2. 新输出方程 Y_new = C_new*X + D_new*U_new 对应系数:
    • C_new = C2 - D2 * D1⁻¹ * C1,维度4×23
    • D_new = D2 * D1⁻¹,维度4×5,匹配新输入、新输出的维度

校验提示:计算完成后可选取一组测试输入,分别代入原模型和新得到的模型做仿真,对比输出结果一致性即可验证计算正确性。

计算流程清单

  • 按输出子集划分规则拆分原C、D矩阵为C1、C2、D1、D2四个子块
  • 计算D1的行列式或秩,校验其可逆性
  • 求解D1的逆矩阵
  • 代入上述公式分别计算A_new、B_new、C_new、D_new
  • 选取测试用例验证新模型的输入输出特性和原模型一致

内容的提问来源于stack exchange,提问作者A1ireza

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 04:36:14