最优控制¶
一、引言¶
最优控制旨在选择控制信号,使得控制系统的性能在某种意义下达到最优。通过直流他励电机控制问题引出最优控制概念,分析了在不同约束条件下(如控制受限、时间最短等)的最优控制问题。
二、变分法求解最优控制问题¶
1. 末值时刻固定、末值状态自由¶
- 基本思想:通过引入拉格朗日乘子,将性能指标转化为泛函极值问题,利用欧拉方程求解最优控制。
- 例题:系统状态方程 \(\dot{x} = u\),初始状态 \(x(0) = 0\),性能指标 \(J = \int_{0}^{t_f} (x^2 + u^2) dt\)。求最优控制 \(u^*(t)\) 使 \(J\) 最小。
- 解:构造哈密顿函数 \(H = x^2 + u^2 + \lambda u\)。
- 伴随方程:\(\dot{\lambda} = -\frac{\partial H}{\partial x} = -2x\)。
- 控制方程:\(\frac{\partial H}{\partial u} = 2u + \lambda = 0 \Rightarrow u = -\frac{\lambda}{2}\)。
- 求解:联立状态方程、伴随方程和控制方程,解得 \(u^*(t) = -\lambda(t)/2\),进一步求出 \(x(t)\) 和 \(\lambda(t)\)。
2. 末值时刻固定,末端状态固定¶
- 处理方式:与末值状态自由类似,但需满足末端状态约束。
- 例题:系统状态方程 \(\dot{x} = u\),初始状态 \(x(0) = 0\),末态 \(x(t_f) = 1\),性能指标 \(J = \int_{0}^{t_f} u^2 dt\)。
- 解:构造哈密顿函数 \(H = u^2 + \lambda u\)。
- 伴随方程:\(\dot{\lambda} = 0 \Rightarrow \lambda = \text{const}\)。
- 控制方程:\(2u + \lambda = 0 \Rightarrow u = -\lambda/2\)。
- 求解:结合末态条件 \(x(t_f) = 1\),解得 \(u^*(t) = -\lambda/2\),确定常数 \(\lambda\)。
3. 末值时刻自由¶
- 特点:末值时刻不固定,需额外考虑变分对末值时刻的影响。
- 例题:系统状态方程 \(\dot{x} = u\),初始状态 \(x(0) = 0\),性能指标 \(J = \int_{0}^{t_f} u^2 dt + x(t_f)^2\)。
- 解:构造哈密顿函数 \(H = u^2 + \lambda u\)。
- 伴随方程:\(\dot{\lambda} = 0 \Rightarrow \lambda = \text{const}\)。
- 横截条件:\(\frac{\partial H}{\partial t} = 0\)(若 \(H\) 不显含 \(t\))。
- 求解:结合横截条件和控制方程,解得最优控制和末值时刻。
三、极小值原理¶
1. 基本原理¶
极小值原理指出,在控制受限情况下,最优控制应使哈密顿函数取得极小值。这是对变分法的推广,适用于控制受限场景。
2. 例题¶
- 问题:二次积分模型,状态方程 \(\ddot{x} = u\), \(|u| \leq 1\),初始状态 \(x(0) = 1\), \(\dot{x}(0) = 0\),末态 \(x(t_f) = 0\), \(\dot{x}(t_f) = 0\),性能指标 \(J = t_f\)(最小时间)。
- 解:
- 哈密顿函数:\(H = \lambda_1 \dot{x} + \lambda_2 u\)。
- 极值条件:\(H\) 对 \(u\) 求极小,得 \(u^* = \text{sign}(-\lambda_2)\)。
- 伴随方程:\(\dot{\lambda}_1 = 0\), \(\dot{\lambda}_2 = -\lambda_1\)。
- 求解:解得 \(\lambda_1 = \text{const}\), \(\lambda_2 = -\lambda_1 t + C\),结合初始条件和末态条件,确定切换曲线,得到最优控制为bang-bang控制。
四、动态规划法¶
1. 基本思想¶
动态规划通过将多阶段决策问题分解为一系列单阶段问题,利用最优性原理递推求解最优控制。适用于离散和连续系统。
2. 例题(离散系统)¶
- 问题:线性定常离散系统 \(x(k+1) = x(k) + u(k)\),初始状态 \(x(0)\),性能指标 \(J = \sum_{k=0}^{N-1} (x(k)^2 + u(k)^2)\)。
- 解:
- 逆推:从最后一级 \(k = N-1\) 开始,逐步向前计算最优控制。
- 递推方程:利用最优性原理,建立递推关系,求出各阶段的最优控制。
3. 例题(连续系统)¶
- 问题:系统状态方程 \(\dot{x} = -x + u\),性能指标 \(J = \int_{0}^{\infty} x^2 dt\), \(|u| \leq 1\)。
- 解:
- 哈密顿-贝尔曼方程:$$ 0 = \min_u [x^2 + u^2 + \lambda(-x + u)] $$。
- 求解:解得最优控制 \(u^* = \text{sign}(\lambda)\),结合系统方程求出最优轨线。
五、线性状态调节器¶
1. 有限时间状态调节器¶
- 问题:线性时变系统 \(\dot{x} = A(t)x + B(t)u\),性能指标 \(J = \int_{0}^{t_f} (x^T Q x + u^T R u) dt + x(t_f)^T F x(t_f)\)。
- 解:利用极小值原理或动态规划法,求得最优控制 \(u^* = -R^{-1} B^T \lambda\),其中 \(\lambda\) 满足伴随方程。
2. 无限时间状态调节器¶
- 问题:线性定常系统 \(\dot{x} = Ax + Bu\),性能指标 \(J = \int_{0}^{\infty} (x^T Q x + u^T R u) dt\)。
- 解:求解代数黎卡提方程 \(0 = Q + P A + A^T P - P B R^{-1} B^T P\),得到最优反馈增益矩阵 \(K = R^{-1} B^T P\),最优控制 \(u^* = -K x\)。
六、线性伺服机问题¶
1. 有限时间伺服机问题¶
- 问题:系统输出需跟踪指定输入函数 \(\eta(t)\),性能指标包含跟踪误差项。
- 解:构造哈密顿函数,求解最优控制使跟踪误差最小。
2. 无限时间伺服机问题¶
- 问题:在无限时间范围内,系统输出持续跟踪输入函数。
- 解:通过求解黎卡提方程和伺服方程,得到最优控制包含状态反馈和跟踪补偿项。