资讯动态

线性系统理论试题复习指南:状态转移矩阵与能控能观性PDF整理法

发布时间:2026/9/19 20:04:51 来源:尧图企业网站定制
简介线性系统理论试题是面向自动控制、现代控制理论学习者的一套典型试卷资料适合高校本科生考研复习、课程备考及工程技术人员回顾控制理论基础时使用。试卷由江西理工大学《现代控制理论》课程考试真题组成围绕状态空间表达式、状态转移矩阵求解、Lyapunov稳定性分析、能控性与能观性判断、串联系统建模、传递函数矩阵、状态反馈阵配置及全维观测器设计等核心考点展开题目覆盖全面且带有明确分值便于针对性练习与自测。整份资源为1个PDF文件大小约54KB内容紧凑可直接打印或电子阅读。目前已有395人学习下载。通过学习这份试卷读者既能检验对线性系统基本概念与方法的掌握程度也能对照典型计算题训练状态转移矩阵推导、能控能观判别、Lyapunov方程求解和反馈观测器设计等关键技能对构建完整的现代控制理论知识体系具有较好的参考价值。1. 「线性系统理论试题.pdf」里到底藏着哪些必考能力「线性系统理论试题.pdf」这套资料在控制科学与工程方向的研究生圈子里几乎人手一份自动化、电气、机器人相关的工程师回炉现代控制理论时也常拿它当题库。它覆盖的考点高度集中状态空间建模、状态转移矩阵、能控能观性、李雅普诺夫稳定性、状态反馈与观测器设计每一类都要求先写对矩阵方程再用判据下结论。对备考者来说价值不在逐题刷完而在把它整理成一份可检索、可标注、可验证的复习资产。下文按「考点拆解 → PDF 整理方法 → 答题模板 → 计算验证」四层推进每步都给出可直接照做的命令和代码。2. 围绕线性系统理论试题的高频考点状态转移矩阵与能控能观性2.1 试题为什么总从状态空间方程开始不管是哪个学校出的线性系统理论试题题干里几乎都先给出一个定常线性系统 ẋAxBu、yCx再围绕 A、B、C 三个矩阵展开。原因在于这门课的研究对象就是状态空间模型传递函数只是它在频域的投影两者共同构成解题的两条路径。备考时先分清两类题的差别一类是「算」求状态转移矩阵、求传递函数、求规范型另一类是「判」判断能控能观、判断稳定性、判断能否配置极点。考试丢分大多不是概念不会而是把「判」的题目当「算」来做或者在计算题里忘了用判据验证结论。矩阵分析课程里的特征值、秩、若尔当标准型在这里会直接变成考题的计算对象复习时如果秩的概念不扎实能控能观判据很容易写成形式而算错。2.2 状态转移矩阵三种求法与适用边界状态转移矩阵 Φ(t,t₀)e^{A(t-t₀)} 是几乎所有计算题的公共起点。试题里 A 通常是二阶或三阶矩阵特征值可能为单根也可能为重根选对求法能省下大量草稿纸时间。2.2.1 拉普拉斯反变换计算路径最固定公式是 e^{At}L⁻¹[(sI-A)⁻¹]操作上分四步写出 sI-A求逆矩阵对逆矩阵的每个元素做部分分式分解逐项查表做反变换。这个方法的优点是不需要先求特征值缺点是重根时部分分式会出现 (s-λ)² 项展开系数要从一阶导数取极限得到漏掉导数项是最典型的错误。三阶矩阵用伴随矩阵法求逆时注意余子式前的 (-1)^(ij) 符号这是第二个高频失分点。2.2.2 凯莱-哈密顿定理重根场景的关键变体凯莱-哈密顿定理说 f(A)0于是 e^{At} 可以用 α₀(t)Iα₁(t)A…α_{n-1}(t)A^{n-1} 表示。步骤是先求特征多项式 det(λI-A)对每个特征值 λᵢ 列方程 e^{λᵢt}Σαₖλᵢᵏ解出 αₖ 后代入矩阵幂次求和。特征值互异时方程个数恰等于未知数一路消元即可。出现重根时必须对特征方程两端关于 λ 求导补出 e^{λt} 与 Σαₖλᵏ 的一阶、二阶导相等关系少补一条方程就解出错误的 α。这个方法适合特征值已经由题干给出、或第一问已经求完特征值的题目。2.2.3 若尔当化求法什么时候才值得用e^{At}Pe^{Jt}P⁻¹ 思路直观但要先求特征向量构成的变换矩阵 P再算两次矩阵乘法三阶以上的计算量明显大于前两种。只有当题干直接给出若尔当标准型 J 与变换矩阵 P或者在证明题里需要讨论不同若尔当块的结构时才优先走这条路。日常做题建议固定用拉普拉斯或凯莱-哈密顿这两个方法能覆盖绝大部分题目。三种方法的对比和易错点可以直接对照这张表方法适用场景计算重心易错点拉普拉斯反变换23 阶矩阵特征值未知矩阵求逆与部分分式重根时漏掉 s 的高阶项系数凯莱-哈密顿特征值已知含重根解 α 的线性方程组重根处忘记对特征方程求导若尔当化题干直接给 J 与 P矩阵乘法展开P 的列序与 J 的块序不对应2.3 能控性与能观性的秩判据能控性矩阵 Qc[B AB A²B … A^{n-1}B]秩等于 n 则完全能控能观性矩阵 Qo[C; CA; …; CA^{n-1}]秩等于 n 则完全能观。这是试卷里出现频率最高的两个判据计算量小但细节容易出错。多输入系统里 Qc 是 n×(n·p) 的宽矩阵秩判据的形式不变但循环里必须算到 n-1 次幂少一项可能恰好隐藏了不可控模态。能观性矩阵的拼接顺序是 C 在顶部乘出来的每个子块保留原始行向量任何时候都不要把转置符号写丢。证明题里 PBH 判据更常用存在某个特征值 λ 使 rank[sI-A B] 小于 n等价于存在不可控模态这个等价关系在答题时写一句「由 PBH 判据可知」可以省去构造变换矩阵的过程。2.4 用一段 Python 代码验证秩判据手算写完判据后用 numpy 验证是成本最低的检查手段。import numpy as np A np.array([[0, 1, 0], [0, 0, 1], [-6, -11, -6]]) B np.array([[0], [0], [1]]) C np.array([[1, 0, 0]]) n A.shape[0] Qc np.hstack([np.linalg.matrix_power(A, k) B for k in range(n)]) Qo np.vstack([C np.linalg.matrix_power(A, k) for k in range(n)]) print(能控性矩阵 Qc) print(Qc) print(rank(Qc) , np.linalg.matrix_rank(Qc), /, n) print(能观性矩阵 Qo) print(Qo) print(rank(Qo) , np.linalg.matrix_rank(Qo), /, n)逻辑说明matrix_power(A,k) 求 A 的 k 次幂列表推导式按 k0 到 n-1 拼出 Qc能观性矩阵用 vstack 把 C、CA、CA² 按行堆叠注意 C 是 1×n 行向量乘法顺序是 C 在前。rank 输出等于 n 时该性质成立小于 n 时说明存在不可控或不可观模态答题还要继续写出能控/能观分解。这里给的 A 是特征多项式为 (s1)(s2)(s3) 的能控规范型理论上 Qc 满秩、C 取 [1,0,0] 时 Qo 也满秩运行结果应与手算一致。提示不同教材对能控规范型变换矩阵 T 的构造约定不同手算与代码对照时先确认用的是同一套定义。3. 用 PDF 解析与拆分工具把「线性系统理论试题.pdf」整理成复习手册3.1 先解析 PDF 结构文本层、页数与扫描质量拿到 PDF 的第一件事不是急着做题而是做一次结构体检。很多老试卷是扫描图没有文本层直接复制粘贴只能得到空内容这类文件之后所有文字检索手段都失效只能靠视觉翻页。用 PyMuPDF 几行代码就能拿到页数和每页的文本层情况。pip install pymupdfimport fitz doc fitz.open(线性系统理论试题.pdf) print(总页数:, doc.page_count) for i, page in enumerate(doc): text page.get_text().strip() has_layer 有文本层 if text else 无文本层扫描页 print(f第 {i1} 页{has_layer}) page doc[2] print(page.get_text()[:200])逻辑说明fitz 是 PyMuPDF 的导入名page.get_text() 提取的是页面内嵌文本层返回空字符串基本可以判定为扫描图片页。这一步决定了后续用「文本检索」还是「人工翻页」定位题目也决定要不要启动 OCR 流程。对扫描歪斜的旧试卷很多人会搜「pdf歪斜校正纠偏」常见做法是交给带自动纠偏的 PDF 编辑器处理或者在 PyMuPDF 里用 page.set_rotation(angle) 只修正 90 度倍数的方向偏差更细的倾斜校正建议把坏页单独导出处理完再合并整册跑一遍纠偏会拖慢速度。对页面的体检结果可以整理成一张简单的判定表贴在笔记第一页体检项目判定手段后续动作文本层是否完整page.get_text() 长度无文本层则计划 OCR页面方向是否统一set_rotation 后重新导出偏差页单独纠偏书签是否完整doc.get_toc() 输出缺书签则手工补目录每页题号是否连续抽 3 页目测核对乱序页用 insert_pdf 重排3.2 按题型拆分把一册试卷变成三份专项练习常见做法是把整套题拆成「选择题填空题」和「计算证明题」两个文件再按专题重组页码。pyMuPDF 的 insert_pdf 支持范围抽取命令很短import fitz src fitz.open(线性系统理论试题.pdf) part1 fitz.open() part1.insert_pdf(src, from_page0, to_page7) part1.save(选择题与填空题.pdf) part2 fitz.open() part2.insert_pdf(src, from_page8, to_pagesrc.page_count - 1) part2.save(计算与证明题.pdf)参数说明from_page 和 to_page 都是 0 开始的闭区间拆分前先对照目录确认页码如果 PDF 自带书签优先用 doc.get_toc() 读目录按标题边界切分比手工数页可靠。拆分后的文件按「年份-题型-专题」命名例如「2023-能控能观.pdf」后期靠文件名就能完成检索不必每次打开全文找题。3.3 标注与公式索引让错题能回溯试题的价值在于错题。我一般用带标注功能的阅读器在错题旁边写三样东西考察点、错误类型、对应解法编号。PDF 没有文本层的扫描卷手写标注比键盘输入顺手支持免费手写笔记的阅读器在工程圈里用得很多。如果确实需要把文字抽出来编辑才考虑做 PDF 转 Word但公式转换后大概率乱掉不建议作为主路径只用来复制题干文字。与标注配套的是单独维护一页公式索引两列表格左列题号右列涉及的公式与定理放在整个文件的第一页。这样每次打开文件先看索引哪些题值得重做、哪些题已经闭环一目了然。索引用文本层保存后续可以用阅读器的全文搜索直接定位到具体题目。3.4 输出打印虚拟打印机与小册子排版需要把批注导出或把某几页单独交出去时「pdf虚拟打印」是标准路径。Windows 自带的 Microsoft Print to PDF 可以在任意阅读器里把当前批注版重新导出成一个新 PDF福昕等编辑器的虚拟打印机则支持直接输出 PDF 或图片适合把某道题发给别人讨论。注意打印时选「按 PDF 页面大小」而不是「适应纸张」否则长矩阵公式会被裁掉边缘。从浏览器页面打印讲义时同样走虚拟打印机调好边距再打印避免公式换行被截断。纸质装订前把偶数页倒序排列能减少翻页成本纯数字复习可以跳过这一步。4. 从线性系统理论试题反推答题模板四种题型的标准套路4.1 求状态转移矩阵并按条件验证这类题占基础分标准步骤固定为四步写出 sI-A求逆矩阵对每个元素做部分分式分解逐项做拉普拉斯反变换。拿到结果后必须做两个验证t0 时 Φ(0)I求导后 Φ̇(t)AΦ(t)。两个条件只要有一个不满足前面的计算必然出错。三阶矩阵用伴随矩阵法求逆时符号 (-1)^(ij) 最容易错建议先在草稿上写出伴随矩阵再转置不要跳步。答题时把验证过程写在结果后面阅卷能直接看到你的自查步骤这部分通常能给满过程分。4.2 判断能控能观并写出规范分解对给定 (A,B,C)标准答案顺序是写出 Qc 与 Qo用行变换求秩满秩则继续写能控规范型或能观规范型不满秩则要求做能控性/能观性分解。规范型变换是最容易丢分的环节关键在变换矩阵 T 的构造。最常见做法是以 Qc 的最后一列作为新坐标系的第一列能控规范型约定再用关系式逐列反推剩余列不同教材的列序约定不同答题时要在卷面写清楚自己的变换定义 T⁻¹AT阅卷按过程给分。分解题里要求画出结构图时注意把不可控模态标在框外这是评卷的采分点。4.3 李雅普诺夫稳定性判定李雅普诺夫判据通常以两种面貌出现一种给出 V(x) 让判断稳定性直接求 V̇∂V/∂x·f(x)看定号性另一种给出线性系统问是否渐近稳定解李雅普诺夫方程 AᵀPPA-QQ 一般取单位阵检查 P 是否正定。解方程的五步是设 QI把 P 写成含未知数的对称矩阵代入展开对照等式两边元素得到 n(n1)/2 个方程解线性方程组检查 P 的顺序主子式或特征值是否全大于 0。手算时未知数数量随 n 增长很快三阶以上建议用工具兜底import numpy as np from scipy.linalg import solve_lyapunov A np.array([[0, 1], [-2, -3]]) Q np.eye(2) P solve_lyapunov(A.T, -Q) print(P , P) print(P 的特征值:, np.linalg.eigvals(P))逻辑说明scipy 的 solve_lyapunov(a,q) 解 aXXaᴴq这里传 aAᵀ、q-Q等价于解 AᵀPPA-I。输出 P 后看特征值全大于 0 则系统渐近稳定特征值出现 0 说明只能判稳定不能判渐近稳定这是区分「稳定」与「渐近稳定」的关键。示例中的 A 特征值为 -1 和 -2稳定P 应为正定对称阵。4.4 参数设置对照表把常见题型的判据、判定标准和易错点收在一张表里做题时直接对照题型关键公式与参数判定标准常见的坑状态转移矩阵Φe^{At}L⁻¹[(sI-A)⁻¹]Φ(0)I重根部分分式漏导数项能控性Qc[B AB … A^{n-1}B]rank(Qc)n多输入忘算到 n-1 次幂能观性Qo[C; CA; …; CA^{n-1}]rank(Qo)nC 与 A 的乘法顺序写反极点配置反馈 u-Kx配 det(sI-ABK)能控是充分条件反馈增益 K 的符号搞反李雅普诺夫AᵀPPA-QQ 取 IP 正定Q 取半正定时判据失效极点配置题补一句Ackermann 公式 K[0…0 1]·Qc⁻¹·φ(A) 可以直接算出状态反馈增益答题时写清 φ(A) 是期望特征多项式代入 A 后的矩阵即可前提是先判定能控判据不过直接套公式会被扣掉逻辑分。5. 给线性系统理论试题的答案做符号与数值双重校验5.1 用 sympy 符号验证状态转移矩阵符号层面最好验证的是状态转移矩阵与传递函数。用 sympy 做矩阵求逆和拉普拉斯反变换直接与手算结果逐项对照import sympy as sp t, s sp.symbols(t s) A sp.Matrix([[0, 1], [-2, -3]]) Phi_s (s * sp.eye(2) - A).inv() Phi_t sp.inverse_laplace_transform(Phi_s, s, t) print(e^(At) , Phi_t) print(Φ(0)I:, sp.simplify(Phi_t.subs(t, 0)) sp.eye(2)) print(dΦ/dt AΦ:, sp.simplify(sp.diff(Phi_t, t) - A * Phi_t) sp.zeros(2))逻辑说明inverse_laplace_transform 对矩阵逐元素做反变换返回的就是 e^{At}。subs(t,0) 代入初始时刻化简后等于单位阵则第一个条件成立diff 求导后减去 AΦ化简为零矩阵则第二个条件成立。两个断言同时通过符号层面的答案基本可信可以直接拿来对拍手算结果。5.2 用 numpy 数值校验秩与特征值数值层面对秩、特征值的校验更快。除了前面算 rank还要核对 det(sI-A) 的常数项等于 det(-A)以及闭环极点配置后 A-BK 的特征值是否等于期望极点。对李雅普诺夫方程scipy 的 solve_lyapunov 一条命令就能出 P再配合特征值检查正定性。数值结果与符号结果在 t1 处的差距小于 1e-8即视为一致import numpy as np from scipy.linalg import expm A np.array([[0, 1], [-2, -3]]) print(特征值:, np.linalg.eigvals(A)) print(数值 e^A:, expm(A))5.3 一个可抄的验证清单交卷前逐条核对下面五项能拦下绝大多数计算错误Φ(0)I 与 Φ̇AΦ 是否同时满足Qc、Qo 的秩是否等于 n特征多项式 det(sI-A) 的常数项是否等于 det(-A)极点配置后 A-BK 的特征值是否等于期望极点李雅普诺夫方程解出的 P 是否对称且正定。容差统一取 1e-8符号与数值结果一致即视为通过不一致时优先回查状态转移矩阵部分分式展开里的重根项那是最容易藏错的地方。本文还有配套的精品资源点击获取

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价