第七章:最优控制
一、最优控制问题概述
1. 什么是最优控制?
最优控制的目标是:对于一个给定的动态系统,在所有容许的控制策略中,寻找到一个或一组控制输入 \(\textbf{u}^*(t)\),使得系统从某个初始状态 \(\textbf{x}(t_0)\) 出发,其运动轨迹 \(\textbf{x}^*(t)\) 能够满足一定的约束条件(例如到达某个目标状态),并且使一个预先定义的性能指标 \(J\) 达到最优值(极大或极小)。
2. 最优控制问题的四个基本要素
- 受控系统(状态方程):描述系统动态行为的微分方程(或差分方程)。 \[ \dot{\textbf{x}}(t) = \textbf{f}(\textbf{x}(t), \textbf{u}(t), t) \] 其中 \(\textbf{x}(t)\) 是状态向量,\(\textbf{u}(t)\) 是控制向量。
- 容许控制集与约束条件:控制输入 \(\textbf{u}(t)\) 和状态 \(\textbf{x}(t)\) 通常会受到物理限制或设计要求的约束。
- 控制约束:\(\textbf{u}(t) \in U\),其中 \(U\) 是容许控制集合。例如,电机输出力矩有上限。
- 状态约束:\(\textbf{x}(t) \in X\),其中 \(X\) 是容许状态集合。例如,飞行器的高度不能低于地面。
- 边界条件(初始和终端约束):
- 初始状态:\(\textbf{x}(t_0) = \textbf{x}_0\) (通常给定)
- 终端状态:可能要求 \(\textbf{x}(t_f) = \textbf{x}_f\) (固定终端状态),或 \(\psi(\textbf{x}(t_f), t_f) = 0\) (终端流形),或对终端状态没有严格约束。\(t_f\) (终端时间) 可能是固定的,也可能是自由的。满足终端约束的状态集合称为目标集。
- 性能指标 (Performance Index / Cost Functional):评价控制效果的数学表达式,通常表示为泛函 \(J\)。最优控制的目标就是使 \(J\) 取极大值或极小值。
性能指标的一般形式为:
\[ J = \phi(\textbf{x}(t_f), t_f) + \int_{t_0}^{t_f} L(\textbf{x}(t), \textbf{u}(t), t) dt \]
其中:
- \(\phi(\textbf{x}(t_f), t_f)\):终端型指标,取决于系统在终端时刻的状态和时间。
- \(\int_{t_0}^{t_f} L(\textbf{x}(t), \textbf{u}(t), t) dt\):积分型指标,取决于系统在整个控制过程中的状态和控制。
- 最优性判据:即要求找到的控制 \(\textbf{u}^*(t)\) 使得性能指标 \(J\) 达到最优。
3. 常见的性能指标类型
根据不同的控制目标,可以选择不同形式的性能指标:
- 最小时间问题 (Minimum Time Problems):要求系统在最短时间内从初始状态转移到目标状态。 \[ J = t_f - t_0 = \int_{t_0}^{t_f} 1 dt \] 此时 \(L=1, \phi=0\)。
- 终端控制问题 (Terminal Control Problems):要求系统在固定或自由的终端时刻 \(t_f\),其状态尽可能接近期望的终端状态 \(\bar{\textbf{x}}(t_f)\)。 \[ J = ||\textbf{x}(t_f) - \bar{\textbf{x}}(t_f)||_M^2 = (\textbf{x}(t_f) - \bar{\textbf{x}}(t_f))^T M (\textbf{x}(t_f) - \bar{\textbf{x}}(t_f)) \] 其中 \(M\) 是对称半正定加权矩阵。此时 \(L=0, \phi = (\textbf{x}(t_f) - \bar{\textbf{x}}(t_f))^T M (\textbf{x}(t_f) - \bar{\textbf{x}}(t_f))\)。
- 最小能量/燃料消耗问题 (Minimum Effort Problems):要求在达到控制目标的同时,消耗的控制能量或燃料最少。 \[ J = \int_{t_0}^{t_f} \sum_{i=1}^r \beta_i |u_i(t)| dt \quad \text{或} \quad J = \int_{t_0}^{t_f} \textbf{u}^T(t) R \textbf{u}(t) dt \] 其中 \(R\) 是对称正定加权矩阵。
- 跟踪问题 (Tracking Problems):要求系统状态在整个控制过程中尽可能精确地跟踪一个期望的参考轨迹 \(\bar{\textbf{x}}(t)\)。
\[ J = \int_{t_0}^{t_f} [(\textbf{x}(t)-\bar{\textbf{x}}(t))^T Q (\textbf{x}(t)-\bar{\textbf{x}}(t)) + \textbf{u}^T(t) R \textbf{u}(t)] dt \]
其中 \(Q\) 是对称半正定加权矩阵,\(R\) 是对称正定加权矩阵。第二项 \(\textbf{u}^T R \textbf{u}\) 用于限制控制能量。
- 如果 \(\bar{\textbf{x}}(t) \equiv \textbf{0}\),则称为调节器问题 (Regulator Problem)。
例:月球软着陆问题 (参考 chapter7_Optimal_Control.pdf
P18)
- 状态方程:描述飞船高度 \(h(t)\)、垂直速度 \(v(t)\)、质量 \(m(t)\) 的变化。 \(\dot{h}(t) = v(t)\) \(\dot{v}(t) = -g + \frac{u(t)}{m(t)}\) (发动机推力 \(u(t)\)) \(\dot{m}(t) = -k u(t)\) (燃料消耗与推力成正比)
- 边界条件: 初始:\(h(0)=h_0, v(0)=v_0, m(0)=M+F\) 终端:\(h(t_f)=0, v(t_f)=0\) (软着陆)
- 控制约束:\(0 \le u(t) \le u_{max}\) (发动机推力有限)
- 性能指标:燃料消耗最少,即 \(m(t_f)\) 最大 (或 \(\int_{t_0}^{t_f} k u(t) dt\) 最小)。
二、变分法与欧拉-拉格朗日方程 (Calculus of Variations and Euler-Lagrange Equation)
变分法是解决泛函极值问题的一种经典数学方法。最优控制问题在一定条件下可以转化为泛函极值问题。
1. 泛函及其变分
- 泛函 (Functional):以函数为自变量,实数值为函数值的映射。记为 \(J[x(t)]\)。
- 函数的变分 (\(\delta x\)):同一函数类中两个函数之差 \(x_1(t) - x_2(t)\)。
- 泛函的变分 (\(\delta J\)):当自变量函数有变分 \(\delta x\) 时,泛函增量 \(\Delta J = J[x+\delta x] - J[x]\) 中的线性主部。 \[ \delta J = \left. \frac{d}{d\epsilon} J[x(t) + \epsilon \delta x(t)] \right|_{\epsilon=0} \]
- 泛函取极值的必要条件:\(\delta J = 0\)。
2. 欧拉-拉格朗日方程
考虑最简单的泛函形式: \[ J[x(t)] = \int_{t_0}^{t_f} L(t, x(t), \dot{x}(t)) dt \] 其中边界条件 \(x(t_0)=x_0, x(t_f)=x_f\) 固定。 使该泛函取极值的函数 \(x^*(t)\) 必须满足欧拉-拉格朗日方程: \[ \frac{\partial L}{\partial x} - \frac{d}{dt}\left(\frac{\partial L}{\partial \dot{x}}\right) = 0 \] 这是一个二阶常微分方程,其解中的两个任意常数由边界条件确定。
例:两点间最短曲线 (参考P36-P37) 连接平面上两点 \((t_0, x_0)\) 和 \((t_f, x_f)\) 的曲线长度为: \(J[x(t)] = \int_{t_0}^{t_f} \sqrt{1+\dot{x}^2(t)} dt\) 这里 \(L(t, x, \dot{x}) = \sqrt{1+\dot{x}^2}\)。 \(\frac{\partial L}{\partial x} = 0\) \(\frac{\partial L}{\partial \dot{x}} = \frac{\dot{x}}{\sqrt{1+\dot{x}^2}}\) 欧拉-拉格朗日方程为: \(0 - \frac{d}{dt}\left(\frac{\dot{x}}{\sqrt{1+\dot{x}^2}}\right) = 0\) \(\implies \frac{\dot{x}}{\sqrt{1+\dot{x}^2}} = \text{constant} = c_1\) \(\implies \dot{x}^2 = c_1^2 (1+\dot{x}^2) \implies \dot{x}^2(1-c_1^2) = c_1^2 \implies \dot{x} = \text{constant} = a\) \(\implies x(t) = at + b\)。即两点间最短曲线是直线。
三、庞特里亚金最小值原理 (Pontryagin's Minimum Principle)
庞特里亚金最小值原理(或极大值原理,取决于哈密顿函数的定义)是求解最优控制问题的一种更普适和强大的方法,尤其适用于控制量有约束的情况。
1. 问题描述
寻找最优控制 \(\textbf{u}^*(t)\),使得性能指标 \[ J[\textbf{u}] = \phi(\textbf{x}(t_f), t_f) + \int_{t_0}^{t_f} L(t, \textbf{x}(t), \textbf{u}(t)) dt \] 取最小值,同时满足状态方程 \(\dot{\textbf{x}}(t) = \textbf{f}(t, \textbf{x}(t), \textbf{u}(t))\) 和初始条件 \(\textbf{x}(t_0) = \textbf{x}_0\)。终端时间和状态可能有不同约束。
2. 哈密顿函数 (Hamiltonian)
定义哈密顿函数 \(H\)(或 \(\mathcal{H}\)): \[ H(t, \textbf{x}(t), \textbf{u}(t), \textbf{p}(t)) = L(t, \textbf{x}(t), \textbf{u}(t)) + \textbf{p}^T(t) \textbf{f}(t, \textbf{x}(t), \textbf{u}(t)) \] 其中 \(\textbf{p}(t)\) 是 \(n\) 维的协态向量 (Costate Vector) 或伴随向量,是拉格朗日乘子向量。
3. 必要条件 (对于 \(t_f\) 固定,终端状态自由的情况)
如果 \(\textbf{u}^*(t)\) 是最优控制,\(\textbf{x}^*(t)\) 是对应的最优轨迹,则必然存在一个非零的连续向量函数 \(\textbf{p}^*(t)\),使得对于所有 \(t \in [t_0, t_f]\):
- 状态方程: \[ \dot{\textbf{x}}^*(t) = \frac{\partial H}{\partial \textbf{p}} \Big|_{*} = \textbf{f}(t, \textbf{x}^*(t), \textbf{u}^*(t), \textbf{p}^*(t)) \]
- 协态方程 (伴随方程): \[ \dot{\textbf{p}}^*(t) = -\frac{\partial H}{\partial \textbf{x}} \Big|_{*} = -\left(\frac{\partial L}{\partial \textbf{x}} + \left(\frac{\partial \textbf{f}}{\partial \textbf{x}}\right)^T \textbf{p}^*(t)\right)\Big|_{*} \]
- 控制的极值条件 (最小值原理): 对于所有容许的控制 \(\textbf{u}(t) \in U\),哈密顿函数 \(H\) 在最优控制 \(\textbf{u}^*(t)\) 处取得最小值: \[ H(t, \textbf{x}^*(t), \textbf{u}^*(t), \textbf{p}^*(t)) \le H(t, \textbf{x}^*(t), \textbf{u}(t), \textbf{p}^*(t)) \] 如果控制 \(\textbf{u}(t)\) 没有约束 (即 \(U = \mathbb{R}^r\)) 且 \(H\) 对 \(\textbf{u}\) 可微,则此条件简化为: \[ \frac{\partial H}{\partial \textbf{u}} \Big|_{*} = \frac{\partial L}{\partial \textbf{u}} + \left(\frac{\partial \textbf{f}}{\partial \textbf{u}}\right)^T \textbf{p}^*(t) \Big|_{*} = \textbf{0} \]
- 边界条件 (横截条件 Transversality Conditions):
- 初始状态:\(\textbf{x}(t_0) = \textbf{x}_0\) (给定)
- 终端协态:如果终端状态 \(\textbf{x}(t_f)\) 自由,则 \(\textbf{p}^*(t_f) = \frac{\partial \phi}{\partial \textbf{x}(t_f)} \Big|_{t_f}\)。
例题 (参考P45-P47):\(\dot{x} = -ax+u\), \(J = \int_0^T (x^2+u^2)dt\), \(x(0)=x_0\), \(T\) 固定, \(x(T)\) 自由。 \(L = x^2+u^2\), \(f = -ax+u\), \(\phi=0\)。 \(H = x^2+u^2 + p(-ax+u)\)。 \(\dot{x} = -ax+u\)。 \(\dot{p} = -2x+ap\)。 \(u^* = -p/2\)。 边界条件:\(x(0)=x_0\), \(p(T) = 0\)。 这是一个两点边值问题。
对于有约束的控制:如果 \(u(t)\) 属于某个闭集 \(U\),则最优控制 \(u^*(t)\) 使得 \(H(t, x^*(t), u, p^*(t))\) 在 \(U\) 上取最小值。可能导致开关控制 (Bang-Bang control)。
四、线性二次型最优调节器 (Linear Quadratic Regulator, LQR)
LQR 是最优控制理论中一个非常重要且应用广泛的分支,它研究的是线性系统在二次型性能指标下的最优控制问题。
1. 问题描述
考虑线性定常系统: \[ \dot{\textbf{x}}(t) = A\textbf{x}(t) + B\textbf{u}(t) \] 性能指标 (无限时间): \[ J = \int_0^\infty (\textbf{x}^T(t)Q\textbf{x}(t) + \textbf{u}^T(t)R\textbf{u}(t)) dt \] 其中:
- \(Q\) 是对称半正定状态加权矩阵 (\(Q=Q^T \ge 0\))。
- \(R\) 是对称正定控制加权矩阵 (\(R=R^T > 0\))。
目标是找到一个状态反馈控制律 \(\textbf{u}(t) = -K\textbf{x}(t)\),使得性能指标 \(J\) 最小,并且闭环系统稳定。
2. 代数黎卡提方程 (Algebraic Riccati Equation, ARE)
LQR问题的解与下面的代数黎卡提方程密切相关: \[ A^T P + PA - PBR^{-1}B^T P + Q = \textbf{0} \] 其中 \(P\) 是一个对称矩阵。
定理: 如果系统 \((A,B)\) 是能控的 (或至少是能镇定的),并且系统 \((A, Q^{1/2})\) (其中 \(Q=Q^{1/2 T}Q^{1/2}\)) 是能观测的 (或至少是能检测的),则代数黎卡提方程存在唯一的对称正定解 \(P\)。
3. 最优控制律与最优性能指标
如果上述ARE存在唯一的对称正定解 \(P\),则最优的状态反馈控制律为: \[ \textbf{u}^*(t) = -K\textbf{x}(t) \] 其中最优反馈增益矩阵 \(K\) 为: \[ K = R^{-1}B^T P \] 此时,最优性能指标的值为: \[ J^* = \textbf{x}^T(0) P \textbf{x}(0) \] 并且,闭环系统 \(\dot{\textbf{x}}(t) = (A-BK)\textbf{x}(t) = (A-BR^{-1}B^T P)\textbf{x}(t)\) 是渐近稳定的。
例题1 (参考P70) \(\dot{x} = x+u\), \(J = \int_0^\infty (x^2+u^2)dt\) \(A=1, B=1, Q=1, R=1\)。 ARE: \(2P - P^2 + 1 = 0 \implies P^2 - 2P - 1 = 0\)。 解得 \(P = 1 \pm \sqrt{2}\)。因为 \(P\) 必须正定,所以 \(P = 1+\sqrt{2}\)。 最优反馈增益 \(K = R^{-1}B^T P = (1)^{-1}(1)(1+\sqrt{2}) = 1+\sqrt{2}\)。 最优控制律 \(u^*(t) = -(1+\sqrt{2})x(t)\)。
例题2 (双积分系统) (参考P71-P73) \(\dot{x}_1 = x_2, \dot{x}_2 = u \implies A = \begin{bmatrix} 0 & 1 \\ 0 & 0 \end{bmatrix}, B = \begin{bmatrix} 0 \\ 1 \end{bmatrix}\) \(J = \int_0^\infty (x_1^2 + \mu x_2^2 + u^2)dt \implies Q = \begin{bmatrix} 1 & 0 \\ 0 & \mu \end{bmatrix}, R=1\) (假设 \(\mu \ge 0\)) 解ARE得 \(P = \begin{bmatrix} \sqrt{\mu+2} & 1 \\ 1 & \sqrt{\mu+2} \end{bmatrix}\)。 最优反馈增益 \(K = \begin{bmatrix} 1 & \sqrt{\mu+2} \end{bmatrix}\)。 最优控制律 \(u^*(t) = -x_1(t) - \sqrt{\mu+2}x_2(t)\)。
五、总结
- 最优控制旨在寻找使系统性能指标最优的控制策略。
- 变分法和庞特里亚金最小值原理是求解最优控制问题的理论基础,通常导致两点边值问题。
- LQR是一种针对线性系统和二次型性能指标的有效最优控制设计方法,其核心是求解代数黎卡提方程。
- LQR不仅能使性能指标最优,还能保证闭环系统的稳定性。
- \(Q\) 和 \(R\) 矩阵的选择反映了对状态误差和控制能量消耗的权衡,是LQR设计中的关键调试参数。
最优控制为系统设计提供了更系统和量化的方法,但求解过程可能比较复杂。LQR因其结构简单和性能良好在工程中得到广泛应用。