最优控制中的变分法

第2章 最优控制中的变分法

最优控制问题是在一定的约束条件下,寻求使性能达到极值时的控制函数。

2.1 欧拉方程

2.1.1 无约束泛函极值的必要条件

无约束泛函极值问题为

\[\min_xJ(x)=\int_{t_0}^{t_f} L(x,\dot{x},t)\mathrm{d}t \tag{1}\]

【定理】 对于式 $(1)$,使其取极值的必要条件,是轨线x(t)满足下列欧拉方程

\[\frac{\partial L}{\partial x}-\frac{\mathrm{d}}{\mathrm{d}t} \frac{\partial L}{\partial \dot{x}}=0\]

2.1.2 有约束泛函极值的必要条件

有等式约束的泛函极值问题为

\[\begin{matrix} \min_xJ(x)=\int_{t_0}^{t_f} L(x,\dot{x},t)\mathrm{d}t\\ \mathrm{s. t. }\quad f(x,\dot{x},t )=0 \end{matrix} \tag{2}\]

【定理】 对于式 $(2)$,使其取极值的必要条件,是轨线 x(t) 满足下列欧拉方程

\[\frac{\partial L}{\partial x}-\frac{\mathrm{d}}{\mathrm{d}t} \frac{\partial L}{\partial \dot{x}}=0\]

式中

\[L(x,\dot{x},\lambda,t)=g(x,\dot{x},\lambda)+\lambda^\mathrm{T}(t)f(x,\dot{x},\lambda)\]

$\lambda \in R^n$ 为待定拉格朗日乘子向量。

2.1.3 无约束泛函极值的充分条件

使式 $(1)$ 成立的充分条件是:除了欧拉方程应成立之外,下列等价勒让德条件之一应成立:

\[\begin{bmatrix} \frac{\partial^2 L}{\partial x^2} & \frac{\partial^2 L}{\partial x \partial \dot{x} } \\ (\frac{\partial^2 L}{\partial x \partial \dot{x} })^\mathrm{T} & \frac{\partial^2 L}{\partial \dot{x}^2} \end{bmatrix} \tag{3}\] \[\frac{\partial^2 L}{\partial x^2}- \frac{\mathrm{d}}{\mathrm{d}t} \frac{\partial^2 L}{\partial x \partial \dot{x} }\geq 0, \quad \frac{\partial^2 L}{\partial \dot{x}^2}>0 \tag{4}\] \[\frac{\partial^2 L}{\partial x^2}- \frac{\mathrm{d}}{\mathrm{d}t} \frac{\partial^2 L}{\partial x \partial \dot{x} } > 0, \quad \frac{\partial^2 L}{\partial \dot{x}^2} \geq 0 \tag{5}\]

2.1.4 有约束泛函极值的充分条件

使式 $(2)$ 成立的充分条件是:除了欧拉方程应成立和约束条件满足之外,下列等价勒让德条件之一应成立:

\[\begin{bmatrix} \frac{\partial^2 L}{\partial x^2} & \frac{\partial^2 L}{\partial x \partial \dot{x} } \\ (\frac{\partial^2 L}{\partial x \partial \dot{x} })^\mathrm{T} & \frac{\partial^2 L}{\partial \dot{x}^2} \end{bmatrix} \tag{6}\] \[\frac{\partial^2 L}{\partial x^2}- \frac{\mathrm{d}}{\mathrm{d}t} \frac{\partial^2 L}{\partial x \partial \dot{x} }\geq 0, \quad \frac{\partial^2 L}{\partial \dot{x}^2}>0 \tag{7}\] \[\frac{\partial^2 L}{\partial x^2}- \frac{\mathrm{d}}{\mathrm{d}t} \frac{\partial^2 L}{\partial x \partial \dot{x} } > 0, \quad \frac{\partial^2 L}{\partial \dot{x}^2} \geq 0 \tag{8}\]

式中

\[L(x,\dot{x},\lambda,t)=g(x,\dot{x},\lambda)+\lambda^\mathrm{T}(t)f(x,\dot{x},\lambda)\]

$\lambda \in R^n$ 为待定拉格朗日乘子向量。

2.2 横截条件

求解欧拉方程,需要由横截条件提供两点边界值[^注1]。

在实际工程中,会出现很多种情况:

  • 初始时刻 $t_0$ 和末端时刻 $t_f$ 自由;
  • 初始时刻 $t_0$ 和末端时刻 $t_f$ 固定;
  • 初始时刻 $t_0$ 固定、末端时刻 $t_f$ 自由;
  • 初始时刻 $t_0$ 自由、末端时刻 $t_f$ 固定。

2.2.1 末端时刻固定时的横截条件

当末端时刻固定时,由泛函极值的必要条件可知,横截条件的一般表达式为

\[(\frac{\partial L}{\partial \dot{x}})^\mathrm{T}\delta x\bigg |^{t_f}_{t_0} =(\frac{\partial L}{\partial \dot{x}})^\mathrm{T}\bigg |_{t=t_f}\delta x(t_f) -(\frac{\partial L}{\partial \dot{x}})^\mathrm{T}\bigg |_{t=t_0}\delta x(t_0) =0 \tag{9}\]

只要不是两端固定问题,宗量变分 $\delta x(t_f)$ 和 $\delta x(t_0)$ 不能同时为零,使泛函一次变分 $\delta J=0$ 缺少条件,就应当由极值的基本必要条件来补足:或是 $(\frac{\partial L}{\partial \dot{x}})^\mathrm{T}\bigg |{t_f}=0$,或是 $(\frac{\partial L}{\partial \dot{x}})^\mathrm{T}\bigg |{t_0}=0$.

如果把初始状态 $x(t_0)$ 称为起点,把末端状态 $x(t_f)$ 称为终点,有如下几个性质:

  • 起点固定时,$x(t_0)=x_0,\quad \delta x(t_0)=0$ ;
  • 起点自由时,$x(t_0) \ne 0$ ;
  • 终点固定时,$x(t_f)=x_f,\quad \delta x(t_f)=0$ ;
  • 终点自由时,$x(t_f) \ne x_f$ 。

则得到末端时刻 $t_f$ 固定时的各种横截条件表格。

序号 名称 横截条件
1 固定起点、固定终点 $x(t_0)=x_0,\quad x(t_f)=x_f$
2 自由起点、自由终点 $\frac{\partial L}{\partial \dot{x}}\bigg |{t_0}=0,\quad \frac{\partial L}{\partial \dot{x}}\bigg |{t_f}=0$
3 自由起点、固定终点 $\frac{\partial L}{\partial \dot{x}}\bigg |_{t_0}=0,\quad x(t_f)=x_f$
4 固定起点、自由终点 $x(t_0)=x_0,\quad \frac{\partial L}{\partial \dot{x}}\bigg |_{t_f}=0$

注:这里jekyll有bug,没法正常显示代码中的“丨”,一旦有2个“丨”就会识别成markdown的表格符号,大家可以通过latex编辑器来看一下没有显示出来的公式。

2.2.2 末端时刻自由时的横截条件

末端时刻自由问题的实质是,末端时间 $t_f$ 不固定,末端状态或自由、或受约束,属于变动端点问题。

经过一系列运算后,得到末端变动、$t_f$ 自由时泛函极值的必要条件

\[\frac{\partial L}{\partial x}-\frac{\mathrm{d}}{\mathrm{d}t} \frac{\partial L}{\partial \dot{x}}=0\]

以及

\[(\frac{\partial L}{\partial \dot{x}})^\mathrm{T}\bigg |_{t_f}\delta x(t_f) -(\frac{\partial L}{\partial \dot{x}})^\mathrm{T}\bigg |_{t_0}\delta x(t_0)+L(x^*,\dot{x}^*,t)\bigg |_{t_f}\delta t_f =0 \tag{10}\]

式 $(10)$ 称为横截条件,除提供求解欧拉方程所需的两点边界值外,还提供了一个确定最优末端时间 $t_f^*$ 所需边界条件。

(1)起点固定、末端自由

有 $x(t_0)=x_0,\quad \delta x(t_0)=0$。

整理得公式为

\[\left(L-\dot{x}^\mathrm{T}(t)\frac{\partial L}{\partial \dot{x}}\right)\bigg |_{t_f}\delta t_f+ \left(\frac{\partial L}{\partial \dot{x}}\right)^\mathrm{T}\bigg |_{t_f}\delta x_f =\mathbf{0} \tag{11}\]

因 $\delta t_f$ 和$\delta x_f$ 任意,即$\delta t_f \ne 0$、$\delta x_f \ne 0$ ,故横截条件为

\[\left\{\begin{matrix} \left(L-\dot{x}^\mathrm{T}(t)\frac{\partial L}{\partial \dot{x}}\right)\bigg |_{t_f}\delta t_f =0\\ \left(\frac{\partial L}{\partial \dot{x}}\right) = 0\\ x(t_0)=x_0 \end{matrix}\right.\]

(2)起点固定、末端受约束

设末端约束方程为

\[x(t_f)=c(t_f)\]

因为末端受约束,则 $\delta x_f$ 不能任意。那么横截条件在式 $(11)$ 的基础上进一步演化为

\[\left(L-\dot{x}^\mathrm{T}(t)\frac{\partial L}{\partial \dot{x}}\right)\bigg |_{t_f}\delta t_f+ \left(\frac{\partial L}{\partial \dot{x}}\right)^\mathrm{T}\bigg |_{t_f}\dot{c}(t_f)\delta t_f =\left[L+(\dot{c}-\dot{x}^\mathrm{T})\right]\bigg |_{t_f}\delta t_f=0\]

因 $\delta t_f$ 任意,即$\delta t_f \ne 0$,故横截条件为

\[\left\{\begin{matrix} \left[L+(\dot{c}-\dot{x}^\mathrm{T})\right]\bigg |_{t_f} =0\\ x(t_f)=c(t_f)\\ x(t_0)=x_0 \end{matrix}\right.\]

2.2.3 初始时刻自由时的横截条件

初始时刻自由问题的实质时:末端固定 $x(t_f)=x_f$,初始时刻 $t_0$ 不固定,初始状态 $x(t_0)$ 或自由、或受约束。例如,空对地导弹的攻击。

如果把初始状态 $x(t_0)$ 称为起点,把末端状态 $x(t_f)$ 称为终点,有如下几个性质:

  • 起点固定时,$x(t_0)=x_0,\quad \delta x(t_0)=0$ ;
  • 起点自由时,$x(t_0) \ne 0$ ;
  • 终点固定时,$x(t_f)=x_f,\quad \delta x(t_f)=0$ ;
  • 终点自由时,$x(t_f) \ne x_f$ 。

则得到末端时刻 $t_f$ 固定时的各种横截条件表格。

序号 名称 横截条件
1 固定起点、末端自由 $\left(L-\dot{x}^\mathrm{T}\frac{\partial L}{\partial \dot{x}}\right)\bigg |{t_f}=0\ (\frac{\partial L}{\partial \dot{x}})\bigg |{t_f}=0, \quad x(t_0) = x_0$
2 起点固定、末端受约束 $\left(L-(\dot{c}-\dot{x})^\mathrm{T}\frac{\partial L}{\partial \dot{x}}\right)\bigg |_{t_f}=0\ x(t_f)=c(t_f), \quad x(t_0) = x_0$
3 末端固定、起点受约束 $\left(L-(\dot{\Psi_0}-\dot{x})^\mathrm{T}\frac{\partial L}{\partial \dot{x}}\right)\bigg |_{t_f}=0\ x(t_0)=\Psi_0(t_0), \quad x(t_f) = x_f$
4 末端固定、起点自由 $\left(L-\dot{x}^\mathrm{T}\frac{\partial L}{\partial \dot{x}}\right)\bigg |{t_0}=0\ (\frac{\partial L}{\partial \dot{x}})\bigg |{t_0}=0, \quad x(t_f) = x_f$

注:这里jekyll有bug,没法正常显示代码中的“丨”,一旦有2个“丨”就会识别成markdown的表格符号,大家可以通过latex编辑器来看一下没有显示出来的公式。

2.3 用变分法解最优控制问题

对于一般的最优控制问题,应广泛采用拉格朗日乘子法,引入哈密顿函数概念,将泛函条件极值问题转化为无约束泛函极值问题,以获得最优解的必要条件和充分条件。

2.3.1 末端时刻固定时的最优解

当末端时刻 $t_f$ 固定时,最优控制问题可以归结为如下一般形式:

\[\min_{u(t)}J=\varphi[x(t_f)]+ \int_{t_0}^{t_f} L(x,u,t)\mathrm{d}t \\ \mathrm{s.\ t.} \quad f(x,u,t)-\dot{x}(t)=0, \quad x(t_0) =x_0 \\ \Psi [x(t_f)]=0\]

假设各向量维数同前。末端状态 $x(t_f)$ 存在如下状态:

  • 末端状态受约束
  • 末端状态自由
  • 末端状态固定

若末端自由,则 $\Psi [x(t_f)]=0$ 不会出现;若末端固定,则因 $\delta x(t_f)=0$,那么横截条件 $\lambda(t_f)=\frac{\partial \varphi}{\partial x(t_f)} +\frac{\partial \Psi^\mathrm{T}}{\partial x(t_f)}\gamma$ 将不存在。

下面给出了==末端时刻固定时最优解的必要条件==。

【定理】 对于如下最优控制问题

\[\min_{u(t)}J=\varphi[x(t_f)]+ \int_{t_0}^{t_f} L(x,u,t)\mathrm{d}t,\quad t_f固定 \\ \mathrm{s.\ t.} \quad f(x,u,t)-\dot{x}(t)=0, \quad x(t_0) =x_0 \\ \Psi [x(t_f)]=0,\quad (末端受约束情况有此项、末端自由和末端固定没有此项) \tag{12}\]

① $x(t)$ 和 $\lambda (t)$ 满足下列正则方程

\[\dot x(t)=\frac{\partial H}{\partial \lambda} \\ \dot \lambda(t)=- \frac{\partial H}{\partial x}\]

式中

\[H(x,u,\lambda,t)=L(x,u,t)+\lambda^{\mathrm{T}}f(x,u,t)\]

② 边界条件

a)若末端受约束,则有

\[x(t_0) = x_0 \\ \lambda(t_f)=\frac{\partial \varphi}{\partial x(t_f)} +\frac{\partial \Psi^\mathrm{T}}{\partial x(t_f)}\gamma \\ \Psi[x(t_f)]=0\]

按我理解,上式应写为

\[x_i(t_0) = x_{i0} \\ \lambda_i(t_f)=\frac{\partial \varphi}{\partial x_i(t_f)} +\frac{\partial \Psi^\mathrm{T}}{\partial x_i(t_f)}\gamma \\ \Psi[x(t_f)]=0\]

式中,$i$ 代表第$i$ 个微分方程(或动态系统方程)。

b)若末端自由,则有

\[x(t_0) = x_0 \\ \lambda(t_f)=\frac{\partial \varphi}{\partial x(t_f)}\]

c)若末端固定,则有

\[x(t_0) = x_0 \\ x(t_f) = x_f\]

③ 极值条件

\[\frac{\partial H}{\partial u}=0\]

总结

  • 先找对应的模型,或是末端受约束,或是末端自由,或是末端固定

  • 按照“ ① 求解正则方程 —> ② 边界条件 —> ③ 极值条件”的顺序解题。解到 “③ 极值条件”一般可以求出 $u(t)$ ,再把 $u(t)$ 代回求解 $\lambda(t)$ 或 $x(t)$ ,将末端时刻 $t_f$ 代入方程中,可求出最优轨线 $x^(t)$ 和最优控制解 $u^(t)$ 。


例题

(最优控制理论与系统【胡寿松】, 第三版, pp35-36)试求被控系统

\[\left\{\begin{matrix} \dot x_1(t) = x_2(t)\\ \dot x_2(t) = u(t) \end{matrix}\right.\]

由已知初态 $x_1(0)=0$ 和 $x_2(0)=0$ 出发,在 $t_f=1$ 时转移到目标集合

\[x_1(1)+x_2(1)=1\]

且使性能指标

\[J=\frac{1}{2}\int_{0}^{1}u^2(t)\mathrm{d}t\]

为最小的最优控制 $u^(t)$ 及相应的最优轨迹 $x^(t)$。


【解】 本题是积分型性能指标、 $t_f$固定、末端受约束的最优化问题。按照总结中提到的解题步骤来解题。

① 求正则方程$x(t)$ 和 $\lambda (t)$

构建哈密顿函数

\[H = \frac{1}{2}u^2(t) + \lambda_1 x_2(t) + \lambda_2 u(t)\]

求解正则方程

\[\dot x_1 = \frac{\partial H}{\partial \lambda_1}=x_2(t), \quad \dot x_2 = \frac{\partial H}{\partial \lambda_2}=u(t) \\ \dot \lambda_1 = -\frac{\partial H}{\partial x_1}=0, \quad \lambda_2 = -\frac{\partial H}{\partial x_2}=-\lambda_1(t)\]

② 边界条件

\[x_1(0)=0,\quad x_2(0)=0 \\ \lambda_1(1)=\frac{\partial \varphi}{\partial x_1(1)} +\frac{\partial \Psi^\mathrm{T}}{\partial x_1(1)}\gamma=\gamma,\quad \lambda_2(1)=\frac{\partial \varphi}{\partial x_2(1)} +\frac{\partial \Psi^\mathrm{T}}{\partial x_2(1)}\gamma=\gamma \\ x_1(1)+x_2(1)=1\]

③ 极值条件

\[\frac{\partial H}{\partial u}=u(t)+\lambda(t)=0\Rightarrow u(t)=-\lambda(t)\]

又因为

\[\dot \lambda_1(t) = 0 \Rightarrow \lambda_1(t) = c_1 \\ \dot \lambda_2(t) = -\lambda_1(t) =-c_1 \Rightarrow \lambda_2(t) = -c_1 t + c_1\]

得到

\[u(t) = -\lambda_2(t) = -c_1 t + c_1\]

那么

\[\dot x_2(t)=u(t)=-c_1 t+c_1 \Rightarrow x_2(t)=\frac{1}{2}c_1t^2-c_2t+c_3 \\ \dot x_1(t)=x_2(t)=\frac{1}{2}c_1t^2-c_2t+c_3\Rightarrow x_1(t)=\frac{1}{6}c_1t^3-\frac{1}{2}c_2t^2+c_3t+c_4\]

④ 解方程

代入初值 $x_1(0)=0$ 、 $x_2(0)=0$ 以及末端状态 $x_1(1)+x_2(1)=1$,得到

\[\left\{\begin{matrix} x_1(0)=c_4=0 \\ x_2(0)=c_3=0 \\ x_1(1)+x_2(2)=\frac{1}{6}c_1-\frac{1}{2}c_2+\frac{1}{2}c_1-c_2=\frac{2}{3}c_1-\frac{3}{2}c_2=1 \end{matrix}\right.\]

又因为

\[\lambda_1(1)=\lambda_2(1)=\gamma\]

得到

\[c_1=-c_1 \times1 + c_2\]

解得

\[c_1=\frac{1}{2}c_2\]

代回上式,得到 $c_1$ 、 $c_2$ 、 $c_3$、 $c_4$的值为

\[\left\{\begin{matrix} c_1 = -\frac{3}{7} \\ c_2 = -\frac{6}{7} \\ c_3 = 0 \\ c_4 = 0 \end{matrix}\right.\]

⑤ 求解结果

最优轨线

\[\left\{\begin{matrix} x_1^*(t)=-\frac{1}{14}t^3+\frac{3}{7}t^2 \\ x_2^*(t)=-\frac{3}{14}t^2+\frac{6}{7}t \end{matrix}\right.\]

最优控制

\[u^*(t)=-\frac{3}{7}t+\frac{6}{7}\]

代码为

clear;clc;close all;
syms x1 x2 u
% 系统方程
Dx1 = x2;
Dx2 = u;
% 代价函数
syms g
g = 0.5*u^2;

% Step 1:构造Hamilton函数,求正则方程
syms lambda1 lambda2
H = g + lambda1*Dx1 + lambda1*Dx2;
% 求解正则方程
Dlambda1 = -diff(H,x1);
% Dlambda2 = -diff(H,x2);

% Step 2:边界条件
syms Psi gamma
Psi = x1 + x2 - 1;
lambda1(1) = diff(Psi,'x1')*gamma;
% lambda2(1) = diff(Psi,'x2')*gamma;

% Step 3:极值条件
dU = diff(H,'u');
% sol_u = solve(dU,u);

% Step 4:解方程
syms t c1 c2 c3 c4 gamma
Flambda1 = int(Dlambda1);
if Flambda1 == '0'
    Flambda1 = c1;
end
Int_lambda1 = Flambda1;
Dlambda2 = Int_lambda1;
Flambda2 = -int(Dlambda2,t) + c2;
Int_lambda2 = Flambda2;
sol_u = -Int_lambda2;

Dx2 = subs(Dx2,u,sol_u);
x2 = int(Dx2) + c3;
Dx1 = x2;
% x1 = int(Dx1) + c4;

eq1 = c1 == gamma;
eq2 = -c1 + c2 == gamma;
eq3 = (1/6)*c1 - (1/2)*c2 + (1/2)*c1 - c2 == 1;
s = solve(eq1,eq2,eq3,c1,c2,gamma);

c1 = s.c1;
c2 = s.c2;
c3 = 0;
c4 = 0;
x1 = (c1*t^3)/6 - (c2*t^2)/2 + c3*t + c4
x2 = (c1*t^2)/2 - c2*t + c3
lambda2 = -c1*t + c2;
u = -lambda2

下面给出了==末端时刻固定时最优解的充分条件==。

【定理】

对于如下最优控制问题

\[\min_{u(t)}J=\varphi[x(t_f)]+ \int_{t_0}^{t_f} L(x,u,t)\mathrm{d}t,\quad t_f固定 \\ \mathrm{s.\ t.} \quad f(x,u,t)-\dot{x}(t)=0, \quad x(t_0) =x_0 \\ \Psi [x(t_f)]=0\]

式中 $t_f$ 固定。是性能泛函 $J$ 取极小值的最优解的充分条件是下列等价勒让德条件之一成立:

\[\begin{bmatrix} \frac{\partial^2 H}{\partial x^2} & \frac{\partial^2 H}{\partial u \partial x } \\ (\frac{\partial^2 H}{\partial x \partial u })^\mathrm{T} & \frac{\partial^2 H}{\partial u^2} \end{bmatrix}>0, \quad \frac{\partial^2 \Theta[x(t_f),\gamma]}{\partial x^2(t_f)} \geq 0\] \[\begin{bmatrix} \frac{\partial^2 H}{\partial x^2} & \frac{\partial^2 H}{\partial u \partial x } \\ (\frac{\partial^2 H}{\partial x \partial u })^\mathrm{T} & \frac{\partial^2 H}{\partial u^2} \end{bmatrix}\geq 0, \quad \frac{\partial^2 \Theta[x(t_f),\gamma]}{\partial x^2(t_f)} > 0\]

式中

\[H(x,u,\lambda,t)=L(x,u,t)+\lambda^{\mathrm{T}}(t)f(x,u,t) \\ \Theta[x(t_f),\gamma]=\varphi[x(t_f)]+\gamma^{\mathrm{T}}\mathit{\Psi}[x(t_f)]\]

2.3.2 末端时刻自由时的最优解

当末端时刻 $t_f$ 自由时,末端状态又可区分为受约束自由固定三种情况。

当末端时刻 $t_f$ 固定时,最优控制问题可以归结为如下一般形式:

\[\min_{u(t)}J=\varphi[x(t_f)]+ \int_{t_0}^{t_f} L(x,u,t)\mathrm{d}t \\ \mathrm{s.\ t.} \quad f(x,u,t)-\dot{x}(t)=0, \quad x(t_0) =x_0 \\ \Psi [x(t_f)]=0\]

假设各向量维数同前。末端状态 $x(t_f)$ 存在如下状态:

  • 末端状态受约束
  • 末端状态自由
  • 末端状态固定

若末端自由,则 $\Psi [x(t_f)]=0$ 不会出现;若末端固定,则因 $\delta x(t_f)=0$,那么横截条件 $\lambda(t_f)=\frac{\partial \varphi}{\partial x(t_f)} +\frac{\partial \Psi^\mathrm{T}}{\partial x(t_f)}\gamma$ 将不存在。

下面给出了==末端时刻自由时最优解的必要条件==。

【定理】 对于如下最优控制问题

\[\min_{u(t)}J=\varphi[x(t_f)]+ \int_{t_0}^{t_f} L(x,u,t)\mathrm{d}t,\quad t_f固定 \\ \mathrm{s.\ t.} \quad f(x,u,t)-\dot{x}(t)=0, \quad x(t_0) =x_0 \\ \Psi [x(t_f)]=0,\quad (末端受约束情况有此项、末端自由和末端固定没有此项) \tag{12}\]

① $x(t)$ 和 $\lambda (t)$ 满足下列正则方程

\[\dot x(t)=\frac{\partial H}{\partial \lambda} \\ \dot \lambda(t)=- \frac{\partial H}{\partial x}\]

式中

\[H(x,u,\lambda,t)=L(x,u,t)+\lambda^{\mathrm{T}}f(x,u,t)\]

② 边界条件

a)若末端受约束,则有

\[x(t_0) = x_0 \\ \lambda(t_f)=\frac{\partial \varphi}{\partial x(t_f)} +\frac{\partial \Psi^\mathrm{T}}{\partial x(t_f)}\gamma \\ \Psi[x(t_f)]=0\]

按我理解,上式应写为

\[x_i(t_0) = x_{i0} \\ \lambda_i(t_f)=\frac{\partial \varphi}{\partial x_i(t_f)} +\frac{\partial \Psi^\mathrm{T}}{\partial x_i(t_f)}\gamma \\ \Psi[x(t_f)]=0\]

式中,$i$ 代表第$i$ 个微分方程(或动态系统方程)。

b)若末端自由,则有

\[x(t_0) = x_0 \\ \lambda(t_f)=\frac{\partial \varphi}{\partial x(t_f)}\]

c)若末端固定,则有

\[x(t_0) = x_0 \\ x(t_f) = x_f\]

③ 极值条件

\[\frac{\partial H}{\partial u}=0\]

④ 哈密顿函数在最优轨线末端满足

a)若末端受约束,则有

\[H(t_f)=-\frac{\partial \varphi}{\partial t_f}-\gamma^{\mathrm{T}}(t_f)\frac{\partial \Psi}{\partial t_f}\]

b)若末端自由,则有

\[H(t_f)=-\frac{\partial \varphi}{\partial t_f}\]

c)若末端固定,则有

\[H(t_f)=-\frac{\partial \varphi}{\partial t_f}\]

总结

  • 先找对应的模型,或是末端受约束,或是末端自由,或是末端固定

  • 按照“ ① 求解正则方程 —> ② 边界条件 —> ③ 极值条件 —> ④ 哈密顿函数在最优轨线末端满足条件”的顺序解题。解到 “③ 极值条件”一般可以求出 $u(t)$ ,解到 “④ 哈密顿函数在最优轨线末端满足条件”可以求出 $u(t)$ 的真正表达式,再把 $u(t)$ 代回求解 $\lambda(t)$ 或 $x(t)$ ,将末端时刻 $t_f$ 代入方程中,可求出最优轨线 $x^(t)$ 和最优控制解 $u^(t)$ 。


例题

(最优控制理论与系统【胡寿松】, 第三版, pp40-41)设一阶系统方程为

\[\dot x(t)=u(t)\]

性能指标取为

\[J=t_f+\frac{1}{2}\int_0^{t_f}u^2(t)\mathrm{d}t\]

式中 $t_f$ 自由。试确定最优控制 $u^*(t)$,使系统由 $x(0)=1$ 转移到 $x(t_f)=0$ ,并使性能指标为极小值。


【解】 本题是复合型性能指标、 $t_f$自由、末端固定、控制变量取值无约束的最优化问题。按照总结中提到的解题步骤来解题。

① 求正则方程$x(t)$ 和 $\lambda (t)$

构建哈密顿函数

\[H = \frac{1}{2}u^2(t)+\lambda u(t)\]

求解正则方程

\[\dot x = \frac{\partial H}{\partial \lambda_1}=u(t) \\ \dot \lambda = -\frac{\partial H}{\partial x}=0 \Rightarrow \lambda(t)=c_1\]

② 边界条件

\[x(0)=0,\quad x(t_f)=0 \\\]

③ 极值条件

\[\frac{\partial H}{\partial u}=u(t)+\lambda(t)=0\Rightarrow u(t)=-\lambda(t)=-c_1\]

④ 哈密顿函数在最优轨线末端满足

因为末端固定,所以

\[H(t_f)=-\frac{\partial \varphi}{\partial t_f}=-1 \\ \Rightarrow \frac{1}{2}u^2(1)+c_1u(1)=-1 \\ \Rightarrow \frac{1}{2}c_1^2+c_1^2=-1 \\ \Rightarrow c_1^2=\frac{1}{2} \\ \Rightarrow c_1=\sqrt{2}\]

那么

\[\dot x(t)=-c_1=-\sqrt{2} \\ \Rightarrow x(t)=-\sqrt{2}t+c_2\]

因为

\[x(0)=c_2=1\]

所以

\[x(t)=-\sqrt{2}t+1\]

\[x(t_f)=-\sqrt{2}t_f+1=0 \\ \Rightarrow t_f=\frac{1}{\sqrt{2}}\]

⑤ 求解结果

最优轨线

\[x^*(t)=-\sqrt{2}t+1\]

最优控制

\[u^*(t)=-\sqrt{2}\]

思考:按照步骤一步一步解即可,书上的解法反而让人感觉眼花缭乱,摸不着重点。

至此,使用变分法解最优控制问题便已全部介绍完毕。