Uploaded by wuzhe0902

最优控制理论

advertisement
最优控制理论
西北工业大学
陈建忠
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
参考书目
主要教学参考书:
[1] 李国勇. 最优控制理论与应用, 北京: 国防工业出版社, 2008.
[2] 胡寿松, 王执铨, 胡维礼. 最优控制理论与系统, 北京: 科学出版
社, 2013.
[3] 王青. 最优控制——理论、方法与应用, 北京: 高等教育出版社,
2011.
[4] 邵克勇, 王婷婷, 宋金波. 最优控制理论与方法, 北京: 中国石油
大学出版社, 2015.
[5] 解学书. 最优控制理论与应用, 北京: 清华大学出版社, 1986.
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
在线学习
在线学习:
[1] 学堂在线:
https://www.xuetangx.com/course/nwpu0854001677/4231954
[2] 智慧树:
https://www.zhihuishu.com/portals_h5/2clearning.html#/courseIn
fo/2024918
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
第一章 绪论
本章主要内容:
1 最优化问题

概念

最优化问题的分类
2 最优控制问题

最优控制理论的发展

概念

最优控制问题的数学描述
3 本门课程的主要教学内容
4 数学准备
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
1. 最优化问题
1.1 概念
最优化问题:

所谓最优化就是在众多可行的方案或方法中找到最好的
方案或方法。

对于最优控制问题就是寻找最优的控制方案或控制规律,
使所研究的对象(或系统)能最优地达到预期的目标。

将达到最优目标的方案称为最优方案。

搜寻最优方案的方法称为最优化方法。

应用最优化方法所建立的模型叫最优化模型。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
1. 最优化问题
1.1 概念
(1) 变量: 要决策的问题是甲、乙两种产
品的产量,因此有两个变量:设x1为甲产品
产量,x2为乙产品产量。
例1 生产计划问题
某厂生产甲乙两种产品,各自的零部件分 (2) 约束: 生产这两种产品受到现有生产
别在A、B车间生产,最后都需在C车间装 能力的制约,用量不能突破。
 生产单位甲产品的零部件需耗用A车间
配,相关数据如表所示:
产品
车间
工时单耗
生产能力
甲
乙
A
1
0
8
B
0
2
12
C
3
6
36
单位产品获利
3
5



问如何安排甲、乙两产品的产量,使利
润为最大。
的生产能力1工时,
生产单位乙产品不需耗用A车间的生产
能力,
A车间的能力总量为8工时,则A车间
能力约束条件表述为
x1
≤8
同理,B和C车间能力约束条件为
2x2 ≤12
3x1 +6x2 ≤36
(3) 非负约束:甲乙产品的产量不应是负
数,否则没有实际意义,这个要求表述为
x1 ≥0, x2 ≥0
(4) 目标:目标是利润最大化,用z表示利
润,则
max z= 3x1 +5 x2
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
1. 最优化问题
1.1 概念
一般指最优化问题或系统中要
确定的未知量
最优化问题数学模型要素:
指变量取值时受到的各种条
件的限制,通常表达为含变
量的等式或不等式。
 变量(Decision variables)
 约束条件(Constraint conditions)
 目标函数(Objective function)
它是决策变量的函数
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
1. 最优化问题
1.1 概念
最优化方法解决问题的一般步骤:
(1)提出需要进行最优化的问题,收集有关资料和
数据;
(2)确定变量,列出目标函数和有关约束条件,建
立最优化问题的数学模型;
(3)模型求解,选择合适的最优化方法,对模型进
行求解;
(4)最优解的验证和实施。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
1. 最优化问题
1.2 最优化问题的分类
•
单变量函数最优化
•
需要寻优的变量只有一个
•
多变量函数最优化
•
需要寻优的变量多于一个
•
无约束最优化
• 变量的取值范围不受限制
•
有约束最优化
•
变量的取值范围受到限制
•
线性最优化
•
目标函数和所有约束条件式均为
•
非线性最优化
的线性函数变量
•
目标函数和(部分)约束条件式
中任一个为变量的非线性函数
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
1. 最优化问题
1.2 最优化问题的分类
•
确定性最优化
•
变量的取值是确定的、可知的
•
随机性最优化
•
某些变量取值不确定
•
静态最优化
• 解不随时间t的变化而变化,则称
•
动态最优化
为静态最优化(参数最优化)问题
•
解随时间t的变化而变化,即变
量是时间 t的函数,则称为动态
最优化(最优控制)问题
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2. 最优控制问题
2.1 最优控制理论的发展

最优控制问题是从大量的实际问题中提炼出来的,它的
发展与航空、航天、航海的制导、导航和控制技术密
不可分。

如导弹导引、导弹拦截、多弹协同制导、登月探测器
软着陆、卫星编队等等。

交通领域:动态交通分配、列车运行控制等等。

经济管理领域:生产库存、设备维护与更新、自然资
源的开发等问题中均有应用。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2. 最优控制问题
2.1 最优控制理论的发展

最优控制理论研究的主要问题是:根据已建立的被控
对象的数学模型,选取一个容许的控制律,使得被控
对象按预定要求运行,并使给定的某一性能指标达到
最优值。


从数学观点看,最优控制理论研究的问题是求解一类
带有约束条件的泛函极值问题,属于变分学的理论范
畴。
而经典变分理论只能解决容许控制属于开集的一类最
优控制问题,而工程实践中所遇到的多是容许控制属
于闭集的一类最优控制问题。对于这一类问题,经典
变分理论变得无能为力。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2. 最优控制问题
2.1 最优控制理论的发展
理论形成阶段:
 “动态规划”是贝尔曼在1953-1957年逐步创立的。它发展
了变分学中的Hamilton-Jacobi理论,是一种适用于计算机计
算,处理问题范围更广的方法。
“动态规划”对于研究最优控制理论的重要性,表现于可
得出离散时间系统的理论结果和迭代算法。

 “极小值原理”是庞特里雅金等人在1956-1958年间逐步创
立的,先是推测出极大值原理的结论,随后又提供了一种证
明方法。
“极小值原理”是最优控制理论的主要组成部分和该理论
发展史上的一个里程碑。

NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2. 最优控制问题
2.2 概念
例2 飞船的月球软着陆问题
飞船靠其发动机产生一与月球重力方向
相反的推力u(t),以使飞船在月球表面
实现软着陆,要寻求发动机推力的最优
控制规律,以便使燃料的消耗为最少。
常数g,飞船的自身质量及
 h ( t )  v ( t )

u( t )

v
(
t
)


g


m(t )

 m ( t )   ku( t )
所带燃料分别为M和F。初
式中k为比 例 系数,
始 高 度为h0 ,初 始 的垂 直
表示了推力与燃料消
速度为v0,那么飞船的运动
耗率的关系。
设飞船质量为m,它的高度
和垂直速度分别为h和v。
月球的重力加速度可视为
方程式可以表示为:
 h(0)  h0

初始条件  v (0)  v 0
 m ( 0)  M  F

 h( t f )  0
终端条件 

 v ( t f )  0
约束条件
0  u( t )  umax
性能指标
J  m(t f )
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2. 最优控制问题
2.2 概念
例3 火车快速运行问题
设有一列火车从甲地出发,设计容许的控制,使其达到乙地的时间最
短。
• 火车的运动方程: m x  u(t )
式中m是火车的质量,x(t ) 是火车的加速度,u(t)是产生加速度的控制作
用(即推力)。
•
控制约束条件: u( t )  M
 x ( t0 )  x0 x ( t0 )  0
• 初始和终端条件:
 x ( t f )  x f x ( t f )  0
•
tf
性能指标: J  t f  t 0  t dt
0
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2. 最优控制问题
2.3 最优控制问题的提法—数学描述
1) 受控系统的数学模型
一个集中参数的受控系统可以用一组一阶微分方程来描述,即状
态方程,其一般形式为:
x ( t )  f ( x( t ), u( t ), t )
其中x∈Rn为系统状态向量, u∈Rm为系统控制向量,f 为n 维向
量函数,它是 x 、u 和t 的连续函数,并且对x 、t 连续可微。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2. 最优控制问题
2.3 最优控制问题的提法—数学描述
2) 边界条件与目标集
始端条件: 初始时刻t0
边界条件:
初始状态x(t0)
终端时刻t
f
终端条件: 终端状态x(t
)
f
在最优控制问题中,初始时刻t0及初始状态向量x(t0)通常是给定的,
即:x ( t 0 )  x 0 。
tf固定或自由,x(tf) 固定(给定)
终端: tf固定或自由,x(tf)自由(任意)
tf固定或自由,x(tf)被限制在某个集合内
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2. 最优控制问题
2.3 最优控制问题的提法—数学描述
2) 边界条件与目标集
在最优控制问题中,初始时刻t0及初始状态向量 x(t0)通常是给定的,
即:x ( t 0 )  x 0 。
但终端时刻tf及终端状态 x(tf)则视具体问题而定,一般,可用目标
集S(满足终态约束的状态集合)来概括
S  {( x ( t f ), t f ) | G[ x ( t f ), t f ]  0}
式中,G[x(tf), tf]为r维向量值函数。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2.3 最优控制问题的提法—数学描述
3) 容许控制
输入向量u(t)的各个分量ui(t)往往是具有不同的物理属性和意义
的控制量.


可分为两种情况:无约束控制和有约束控制
无约束控制:
控制向量u(t)的各个分量ui(t)可以在实数范围内任意取值,不受任何
限制。
 有约束控制:
控制向量u(t)的各个分量ui(t)取值范围不再是整个实数空间,而是其
中的某一个集合。
该取值范围称为控制域,以Ω表示。
凡在闭区间[t0,tf]上有定义,在控制域Ω内取值,且分段连续的控制向
量u(t)均称为容许控制。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2. 最优控制问题
2.3 最优控制问题的提法—数学描述
4)
性能指标(目标函数)
在状态空间中,系统运动:
最优控制问题最后归结到从所有容许控制中找出一种效果最好的控制律,
这就需要一个能衡量控制效果好坏或评价控制品质优劣的性能指标函数。
性能指标是衡量系统在不同控制向量下工作优良度的标准。
(a) 积分型性能指标
tf
J ( u )   L[ x ( t ), u( t ), t ]dt
称为迈耶尔问题。
(c) 复合型性能指标
t0
称为拉格朗日问题。
tf
J ( u)  [ x ( t f ), t f ]   L[ x ( t ), u( t ), t ]dt
t0
(b) 终值型性能指标
称为波尔扎问题。
J ( u)  [ x ( t f ), t f ]
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2. 最优控制问题
2.3 最优控制问题的提法—数学描述
已知受控系统的状态方程及给定的初态
x ( t )  f ( x ( t ), u( t ), t )
x ( t 0 )  x0
规定的目标集为S,求一容许控制u(t)∈Ω,使系统从给定的初态出
发,转移到终端状态,并使性能指标
tf
J ( u)  [ x ( t f ), t f ]   L[ x ( t ), u( t ), t ]dt
t0
达到极大或极小。
这就是最优控制问题。
如果问题有解,记为u*(t),t∈[t0,tf],则u*(t)称为最优控制,相
应的轨线x*(t)称为最优轨线,而性能指标J*=J(u*(·))则称为最优性
能指标。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
3. 本门课程的主要教学内容
变分法
最优
控制
问题
极小值
原理
解析法
动态规
划原理
典型应用:
• 最小时间控制问题
• 最少燃料控制问题
• 时间-燃料最优控制问题
• 线性二次型最优控制问题
 最优控制的数值解法
 对策论与极大极小控制

NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4. 数学准备
本小节主要内容:

1 向量和矩阵的微分

2 函数极值问题

3 有约束条件的函数极值问题

4 n元函数的Taylor展开式
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.1. 向量和矩阵的的微分
 向量对标量的导数

n 维 向 量 函 数 : f(t)=[f1(t), f2(t), …,
n×m维矩阵函数:
fn(t)]T,对标量自变量t的导数定义为:
df (t ) 
df (t )  df1 (t ) df 2 (t )

,
,, n 
dt
dt
dt 
 dt
df T (t ) df (t ) T
[
]
dt
dt
T
矩阵对标量的导数
 f11 (t )
 f (t )
F (t )   21
 

 f n1 (t )
f12 (t ) 
f 22 (t ) 

f n 2 (t ) 
f1m (t ) 
f 2 m (t )
 

f nm (t ) 
df1m (t) 
 df11(t) df12(t)

 dt
dt
dt 
 df (t) df (t)
df2m (t) 
21
22
dF(t) 


  dt
dt
dt 
dt

 
 
 dfn1(t) dfn2 (t)
dfnm(t) 

 dt
dt
dt 

NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.1. 向量和矩阵的的微分
 矩阵对标量的导数
da T b da T
db

b  aT
dt
dt
dt
例:求 xT(t)Ax(t)对t的导数,
运算公式
A(t ) : n  l , B (t ) : n  l , C (t ) : l  m,  (t )
加法运算
d ( A(t )  B (t )) dA(t ) dB (t )


dt
dt
dt
数乘运算
d ( (t ) A(t )) d  (t )
dA(t )

A(t )   (t )
dt
dt
dt
其 中 x(t) 是 n 维 函 数 向 量 , A
为 n×n 维 对 称 常 数 矩 阵 ,
x(t)=(x1, x2 , ... , xn)T。
解:
d ( x T Ax ) dx T
T d ( Ax )

Ax  x
dt
dt
dt
dxT
dx
T
T dA
(
Ax)  x ( x  A )
乘法运算
dt
dt
dt
T
d ( A(t )C (t )) dA(t )
dC (t ) 若A =A
dx
T T dx
T

C (t )  A(t )
dt
dt
dt
• 当将A、B和C改为函数向量a(t)、b(t)
x A
x A
dt
dt
 x T Ax  x T Ax  2 x T Ax
和 c(t)时,运算公式不变。但应注意,
NWPU
向量的乘积是点积(或内积),这时有
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
4.1. 向量和矩阵的的微分
 标量函数对向量的导数
假定f(x)和g(x)都是向量自变量的数
设x=[x1, x2, …, xn]T为n维向量,
量函数,则有
f(x)=f(x1, x2, …, xn)为以x为自变
d ( f ( x )  g ( x )) df ( x ) dg ( x )


dx
dx
dx
量的标量函数,则f(x)对x的导数
d ( f ( x ) g ( x )) df ( x )
dg ( x )

g ( x)  f ( x)
dx
dx
dx
定义为:
df ( x )   f  f
f 

,
, ,

dx

x

x

x
2
n 
 1
T
也称为梯度,记为gradf(x)或f (x)。
df
f f
f
df T
[ ,
, ,
]( )
T
dx
x1 x2
xn
dx
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.1. 向量和矩阵的的微分
 向量函数对向量的导数
设x=[x1 , x2, …, xn]T为n维向量,而f(x)=[f1(x), f2(x), …, fm(x)]T为以x为
自变量的m维向量函数,则
 f1
x
 1
f2
df (x) df (x) 
 T x1
dx
dx


fm
x1
f1
f1 
fm 
 f1 f2
 

x x

x2
xn

x
1
1

 1

f2
f 
f 
 f f2
 2   fi  df T (x)  1
 m   fi 
x2
xn  
x2   
 x2 x2
 x
 x
dx

j


mn


 

   j nm



fm
fm 
 f1 f2  fm 

x2
xn 
xn xn
xn 
df T
df T
( T)
显然有
dx
dx
雅可比矩阵
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.1. 向量和矩阵的的微分
 向量函数对向量的导数
d ( f T  gT )  ( f j  g j ) 


dx

x
i

 nm
f ( x)  [ f1( x), f2 ( x), , fm ( x)]T
 f j 
 g j 
df T dg T



 

dx
dx
 xi  nm  xi  nm
g( x)  [g1( x), g2 ( x), , gm ( x)]T
d (  f T )   (  f j )     f   f j 
T

x  [x1, x2 , , xn ]
( x)


j

dx
则有:
d ( f T  g T ) df T dg T


dx
dx
dx
d ( f T ) d  T
df T

f 
dx
dx
dx
d ( f T g ) df T
dg T

g
f
dx
dx
dx
  xi
 n m  xi
xi  nm
  
 f j 

fj   
 xi  nm
 xi  nm
  
 x 
 1
  
df T d T df T


 x2  f1 f2  fm   
 f 
dx dx
dx
  
 
  
NWPU
NORTHWESTERN
xn 
POLYTECHNICAL UNIVERSITY
最优控制
4.1. 向量和矩阵的的微分
 向量函数对向量的导数
f ( x)  [ f1( x), f2 ( x), , fm ( x)]T
g( x)  [g1( x), g2 ( x), , gm ( x)]T
x  [x1, x2 , , xn ]T
( x)
则有:
d( f
T
T
g
dx
d ( f T )

dx
d ( f T g)

dx
T
T
df
dg


dx
dx
d T
df T
f 
dx
dx
df T
dg T
g
f
dx
dx
)
  ( f T g )   f T
T g 
g f

 


x

x

x
1
1 

  1
  ( f T g )   f T

T g
T
g f
 

d ( f g) 
  x2    x2
x2 
dx
 
 



 

T
T
  ( f g )   f
T g 
 x   x g  f x 
n
n 

  n
df T
dg T

g
f
dx
dx
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.1. 向量和矩阵的的微分
 向量函数对向量的导数
例:求xTA对x的导数,其中x
f ( x)  [ f1( x), f2 ( x), , fm ( x)]T
是n维列向量,A为n×m 维常
g( x)  [g1( x), g2 ( x), , gm ( x)]T
数矩阵, x=[x1, x2, …, xn]T
x  [x1, x2 , , xn ]T
( x)
则有:
d ( f T  g T ) df T dg T


dx
dx
dx
d ( f T ) d  T
df T

f 
dx
dx
dx
d ( f T g ) df T
dg T

g
f
dx
dx
dx
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.1. 向量和矩阵的的微分
 矩阵函数对向量的导数
设x= [x1 , x2, …, xn]T为n维向量,而F(x)为以x为自变量的m×l
维矩阵函数
 f11 ( x )
 f ( x)
F ( x )   21
 

 f m1 ( x )
f12 ( x ) 
f 22 ( x ) 

f m1 ( x ) 
f1l ( x ) 
f1l ( x ) 
 

f1l ( x ) 
则F(x)对x的导数定义为:
 F
 x
 1
 F
dF ( x ) 
  x2
dx
 

 F
  x n









 nm×l
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.2. 函数极值问题
设二元函数f(x1, x2),在点(x1*, x2*)处有极值f(x1*, x2*)的必要条件
为:
f ( x1 , x2 )
f 
x1
*
x1
( x1* , x*2 )
0
f
*
x2
f ( x1 , x2 )

x2
( x1* , x2* )
0
f(x1*, x2*)取极小值的充分条件为:
f x*1 x1 f x*2 x2  ( f x*1 x2 ) 2  0 且 f x* x  0
1 1
 f x*1 x1
或 A  *
 f x2 x1
f x*1 x2 
 正定。
*
f x2 x2 
上述结论可以推广到自变量多于两个的情形。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.2. 函数极值问题
设n个变量的多元函数f(x1, x2 , ···· , xn),若f(x)在x*处有极小值,
其必要条件为:
df ( x )
 ( f ( x * )) 
dx
x*
 f f
f 

,
, ,


x

x

x
2
n
 1
0
x*
Hesse 阵(二阶
偏导数矩阵)
充分条件为:
 2 f

2

x
 21
  f
A   x x
 2 1
 2
  f
 x n x1
T
2 f
x1x 2
2 f
x 22

2
 f
x n x 2
2 f 


x1x n 
2 f 

x 2 x n  为正定矩阵。


 
2 f 

x n2 
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
例:利用极值条件解下列问题
1
1
min f ( x)  x13  x23  x22  x1
3
3
解:根据f(x)的定义有
f
f
2
 x1  1,
 x22  2 x2
x1
x2
 x12  1  0
令f (x)=0,即  2
 x2  2 x2  0
解此方程组,得
1  (2) 1  (3)  1 (4)  1
x   ,x   ,x   ,x   
 0
 2
0 
2 
(1)
2x
0 
函数f(x)的Hesse矩阵为: 2 f ( x )   1

0
2
x

2
2


(1)
(2)
(3)
(4)
在点x ,x , x , x 处的Hesse矩阵依次为:
2 0  2
2 0  2
 2 0  2
 2 0
 f ( x1 )  
 ,  f ( x 2 )  0 2 ,  f ( x 3 )   0  2  ,  f ( x 4 )   0 2
0

2








2
知x(2)为极小点。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.3. 约束条件的函数极值问题
设二元函数f(x1, x2), x1和x2必须满足下列方程:g(x1, x2)=0
为求函数f(x1, x2)的极值,并找出其极值点(x1*, x2*)
作一辅助函数-拉格朗日函数:
L( x1 , x 2 ,  )  f ( x1 , x 2 )  g ( x1 , x 2 )
式中λ为辅助变量,称为拉格朗日乘子。
函数f(x1, x2)求极值问题,转变为无约束条件函数求极值问题(拉格
朗日乘子法),其存在极值的必要条件为
 L 
 x 
 1
 L   0
 x 2 
 L 






L f
g


0
x1 x1
x1
或
L
f
g


0
x 2 x 2
x 2
L
 g ( x1 , x 2 )  0

NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
3 2
例:将正数12分成三个正数x,y,z之和使得 f  x y z 为最大。
解:令 L( x, y, z)  x3 y2 z  ( x  y  z 12)
 Lx  3x 2 y2 z    0

3
L

2
x
yz    0
 y
则 
3 2
L

x
y   0
 z
 x  y  z  12
2 x,
3
1
由 (1),(3) 得 z  x ,
3
由 (1),(2) 得 y 
将 (5),(6) 代入 (4):
2 1
x  x  x  12
3 3
 3 x 2 y 2 z   ,
 3
 2 x yz   ,
 3 2
 x y   ,
 x  y  z  12,
(1)
(2)
(3)
(4)
(5) 于是,得 x  6, y  4, z  2.
因为由问题本身可知,最大值一
(6) 定存在,所以,最大值就在这个
可能的极值点处取得。
故,最大值
umax  63  42  2  6912.
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.3. 约束条件的函数极值问题
同样,用拉格朗日乘子法可以求有约束条件的n元函数的极值。
设n元函数为f(x1, x2, ·····, xn),有m个约束方程
gi ( x1 , x2 , xn )  0 i=1, 2, ···, m(m<n)
作拉格朗日函数:
m
L( x1 , x 2 , x n , 1 , 2 , m )  f ( x1 , x 2 , x n )   i g i ( x1 , x 2 , x n )
i 1
函数L有极值的必要条件为:
m
L f
gi

  i
0
x1 x1 i 1 x1
m
 L f
g

  i i  0
x2 x2 i 1 x2

m
L
f
g

  i i  0
x n x n i 1 x n
L
 g1 ( x1 , x2 , xn )  0
1
L
 g2 ( x1 , x2 , xn )  0
2

L
 gm ( x1 , x2 , xn )  0
m
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.4. n元函数的Taylor展开式
二元函数f(x1, x2)在(x1*, x2*)处的二阶Taylor展开式为:
f ( x1 , x 2 )  f ( x1* , x 2* )  f x1 ( x1* , x 2* )( x1  x1* )  f x2 ( x1* , x 2* )( x 2  x 2* )
1
  f x1x1 ( x1* , x2* )( x1  x1* )2  2 f x1x2 ( x1* , x2* )( x1  x1* )( x2  x2* )  f x2 x2 ( x1* , x2* )( x2  x2* )2 
2
o(( x  x1* )2  ( x  x2* )2 )
可以进一步写为:
*


x

x
1
1
*
*
*
*
*
*
f ( x1 , x 2 )  f ( x1 , x 2 )   f x1 ( x1 , x 2 ), f x2 ( x1 , x 2 )  

*
 x 2  x 2 
*
*
*
*
*


f
(
x
,
x
)
f
(
x
,
x
)


x

x
1
x
x
1
2
x
x
1
2
1
1
*
*
1 1
1 2
  x1  x1 , x2  x2  


*
*
*
*
*
2
 f x1x2 ( x1 , x2 ) f x2 x2 ( x1 , x2 )  x2  x2 
o(( x1  x1* )2  ( x2  x2* )2 )
记:x  ( x1 , x 2 )T , x *  ( x1* , x 2* )T
1
*
T
*
*
f ( x )  f ( x )   f ( x )( x  x )  ( x  x* )T 2 f ( x* )( x  x* )  o x  x*
2

NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
2

最优控制
4.4. n元函数的Taylor展开式
n
设 f (x): R  R ,在x* 的某一邻域内有连续二阶偏导数,则
一阶Taylor展开式:
f (x) = f (x*)+ Tf (x*) (x-x*) + o(‖x-x*‖)
二阶Taylor展开式:
T
T
2
f (x) = f (x*)+  f (x*) (x-x*) + (1/2)(x-x*)  f (x*)(x-x*)
+ o(‖x-x*‖2)
范数满足以下三个条件:
① 正定性:‖x‖≥0,且‖x‖=0的充要条件是x =0;
②三角不等式:‖x + y ‖≤‖x‖+‖y‖;
③ 齐次性:‖kx‖=∣k ∣‖x‖。
12
 n 2
称 x    x i   ( x T x )1 2 向量x的欧式范数。
 i 1 
1 2
 n

x  y    ( xi  yi )2 
 i 1

为两点x,y间的距离。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
第二章 变分法及其在最优控制中的应用
本章主要内容:
1 变分的基本概念
2 无约束条件的泛函极值问题
3 有约束条件的泛函极值问题
4 应用变分法求解最优控制问题
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
1. 变分的基本概念
 1630年伽利略提出一个分析学的基本问题:“一个质点在重力作用
下,从一个给定点到不在它垂直下方的另一点,如果不计摩擦,问
沿着什么曲线下滑所需时间最短” (最速降线问题)
瑞士数学家约翰・伯努利(Johann Bernoulli,1667-1748)1696年6月
向全欧洲数学家挑战,挑战截止日期1697年的复活节。
 约翰・伯努利、莱布尼茨、法国的洛比达侯爵、英国艾萨克・牛
顿、雅各布・伯努利分别给出解法。
 雅各布・伯努利的解法真正体现了变分思想,且更一般化,引发
约翰・伯努利的学生、大数学家莱昂哈德・欧拉开始关注这一问题
,于1744年最先给出了这类问题的普遍解法,最终创立了变分法
这一新的数学分支。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
1. 变分的基本概念
1.1 泛函的概念


泛函
对于某一类函数{x(·)}中的每一个函
函数
数x(t),变量J都有一个值与之相对
对于变量t的某一变域中的每一个
应,那么变量J称作依赖于函数x(t)
值,x都有一个值与之相对应,
的泛函。
那么变量x称作变量t的函数。
记为:J=J [x(t)],x(t)称为泛函的宗
记为:x=x(t),t称为函数的自变
量。泛函可以理解为“函数的函
量。
数”。
例1:J 

1
0
若 x( t )  t
若
不是一个泛函。
x( t )dt 是一个泛函。
1
则 J   tdt 
0
2
1
x(t )  cos t
例3:最优控制常用性能指标
1
则 J   cos tdt  sin 1
0
t
例2:函数的不定积分 J   x( )d
J

tf
L[ x ( t ), u( t ), t ]dt
t0
是一个泛函。
0
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
1. 变分的基本概念
1.1 泛函的概念

宗量的变分:
泛函 J[ x(t )] 的宗量 x ( t )的变分是指在同一函数类中的两个函数间
的差:
δ x ( t )=x( t )  x0 ( t )
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
1. 变分的基本概念
1.1 泛函的概念

函数相近
当函数x(t)与 x0(t)之差的绝对值,即
∣x(t)-x0(t)∣,
t1t  t2
对于x(t)的定义域中的一切t ( t1  t  t2 )都很小时,称函数x(t)与函数
x0(t)是相近的,也称为零阶相近。如下图所示:
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
1. 变分的基本概念
1.1 泛函的概念
一阶相近
当函数x(t)与 x0(t)之差的绝对值以及它们的一阶导数 x 0 (t ) 和 x (t )
之差的绝对值,即
x (t )  x0 (t ) , x (t )  x0 (t ) ,t1  t  t2
都很小,称函数x(t)与函数x0(t)是一阶相近的,如下图所示:
注意:一阶相近的两个函数,必然是零阶相近,反之不成立。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
1.1 泛函的概念
k阶相近

当
x (t )  x0 (t ) , x (t )  x 0 (t ) , x ( k ) (t )  x0( k ) (t )
t1  t  t2
都很小时,称函数x(t)与函数x0(t)是k阶相近的。
 函数间距离
在不同的函数空间,函数间的距离定义也不同。
在函数空间C[a, b](在区间[a, b]上连续的函数的全体构成的函数空间)
中,通常采用下式定义距离:

d [ x (t ), x0 (t )] maxx (t )  x0 (t ) 
(2.1)
a t  b
在函数空间Ck[a, b](在区间[a, b]上连续且具有连续的k阶导数的函数
的全体构成的函数空间)中,任意两个函数间的距离定义为:

d[ x(t), x0 (t)]  maxx(t)  x0 (t) , x(t)  x0 (t) ,, x(k ) (t)  x0(k ) (t) (2.2)
at b
显然, (2.1)式定量地表示两个函数之间的零阶相近度,而 (2.2)式
定量地表示两个函数之间的k阶相近度。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
1. 变分的基本概念
1.1 泛函的概念
泛函的连续
对任意给定的正数ε,总存在另一个正数δ,当 d [ x( t ), x0 ( t )]  
J [ x( t )]  J [ x0 ( t )]   ,则称泛函J[x(t)]在点x0(t)处是连续的。

根据所采用的函数之间距离定义的不同,是按式(2.1)还是式
(2.2),其对应的泛函分别称为零阶连续泛函或k阶连续泛函。
 线性泛函
泛函J[x(t)]如果满足以下条件时,称为线性泛函:
1) J [ x1 ( t )  x2 ( t )]  J [ x1 ( t )]  J [ x2 ( t )]
2) J [cx( t )]  cJ [ x( t )],其中c 为任意常数。
t2
例4:线性泛函:J [ x( t )]   [ p( t ) x( t )  q( t ) x ( t )]dt ,J [ x( t )]  x( t ) t  2,
t2
t1
J [ x( t )]   [tx ( t )  (sin t ) x ( t )]dt 。
t1
求一般函数极值微分法
 求泛函极值变分法

NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
1. 变分的基本概念
1.2 泛函的变分

泛函的变分
设 J [ x(t )]为连续泛函,若泛函的增量可表示为
Δ J  J [ x0 (t )   x( t )]  J [ x0 (t )]  L[ x0 ( t ),  x( t )]  R[ x0 (t ),  x( t )]
其中,L[ x0 (t ), x(t )] 是关于  x( t ) 的线性连续泛函,叫做泛函增
量的线性主部, R[ x0 ( t ),  x( t )] 是  x( t ) 的高阶无穷小。
泛函增量的线性主部称为泛函在x0(t)处的变分,记为
 J [ x0 ( t )]  L[ x0 ( t ),  x( t )]
一般在任意x(t)处的变分记为
 J [ x ( t )]  L[ x ( t ),  x ( t )]
当一个泛函具有变法时,也称该泛函可微。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
补充函数变分的基本概念
设函数F是x, ̇ 和t的可微函数,且有足够次的可微性,计算F的
增量
F  F ( x   x , x   x , t )  F ( x , x , t )  Fx x  Fx  x  
(2.3)
将  F  Fx x  Fx  x 称为函数F的变分。
设F=F(x, ̇ , t)是x, ̇ 和t的可微函数,则变分符号具有下列基
本运算性质

变分运算性质:
1)  ( F1  F2 )   F1   F2
b
3)   Fdt 
a

b
a
 Fdt
2)  ( F1F2 )  F1 F2  F2 F1
4)其它见老大中 变分法基础
第2版
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
1. 变分的基本概念
1.2 泛函的变分

泛函变分的求法
定理2.1 如果泛函 J [ x( t )] 是可微的,则泛函的变分为:
 J [ x ( t )] 

J [ x ( t )   x ( t )]   0


J [ x ( t )   x ( t )]- J [ x ( t )]
证明: J [ x ( t )   x ( t )]  0  lim
 0


 lim
L[ x(t ),  x(t )]  R[ x(t ),  x(t )]
 lim
L[ x(t ),  x(t )]
 lim
 0
 0


由于 L[ x ( t ),  x ( t )]是关于 x ( t ) 的线性连续泛函,则
L[ x ( t ),  x ( t )]   L[ x ( t ),  x ( t )]
又由于R[ x(t ),  x(t )]是关于 x( t ) 的高阶无穷小,则
 0
lim
因此
 0
R[ x( t ),  x( t )]

 lim
 0
R[ x(t ),  x(t )]

R[ x ( t ),  x ( t )]
 x( t )  0
 x ( t )

 L[ x ( t ),  x ( t )]
J [ x ( t )   x ( t )]  0  lim
  J [ x ( t )]
 0
NWPU


NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
1. 变分的基本概念
1.2 泛函的变分

泛函变分的求法
定理2.1 如果泛函 J [ x( t )]是可微的,则泛函的变分为:
 J [ x ( t )] 

J [ x ( t )   x ( t )]   0

进一步证明,多元泛函
宗量
J [ x ( t )]  J [ x1 ( t ), x2 ( t ), , xn ( t )]
变分为:
 J [ x( t )] 

J [ x1 ( t )   x1 ( t ), x2 ( t )   x2 ( t ), , xn ( t )   xn ( t )]

 0
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
1. 变分的基本概念
1.2 泛函的变分

泛函变分的求法
1
例题5: 求泛函 J   x 2 (t )dt 的变分
0
。
解:

J 
J ( x ( t )   x ( t ))   0





1
0
[ x (t )   x (t )]2 dt
 0


[ x (t )   x (t )]2 dt
0 
 0
1
1
  2 x (t ) x (t )dt
0
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
1. 变分的基本概念
例题6:求泛函 J 
解 : J 

tf
t0

tf
t0
L( x (t ), x ( t ), t )dt 的变分

J [ x (t )   x (t )]   0

这一项利用了变
分的导数等于导
数的变分的性质

L[ x ( t )   x ( t ), x ( t )   x ( t ), t ]  0 dt

  L[ x ( t )   x ( t ), x ( t )   x ( t ), t ]  ( x ( t )   x ( t ))
 

t0
 ( x ( t )   x ( t ))


 L[ x ( t )   x ( t ), x ( t )   x ( t ), t ]  ( x ( t )   x ( t )) 


dt

 0
 ( x ( t )   x ( t ))


tf


t
t0
f
  L [ x ( t ) , x ( t ) , t ]

 L [ x ( t ) , x ( t ) , t ]


x
(
t
)


x
(
t
)

d t

x (t )
x (t )


可推广到泛函 J 

tf
t0
L( x1 (t ), x1 (t ), x2 (t ), x 2 (t ), , t )dt 变分的计算。
今后,在计算形如例题的泛函的变分时,可以直接利用例题的结论。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
1. 变分的基本概念
1.2 泛函的变分

泛函的极值
定义:如果泛函J[x(t)]在曲线x=x0(t)的邻域内,其增量
J  J [ x ( t )]  J [ x0 (t )]  0 或
J  J [ x (t )]  J [ x0 (t )]  0
则泛函J[x(t)] 在曲线x0(t)上达到极小值或极大值。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
1. 变分的基本概念
1.2 泛函的变分

泛函极值定理:
若可微泛函J[x(t)]在x0(t)上达到极值,则在x= x0(t)上的变分为零。即
 J [ x0 ( t )]  0
证明:J[x0(t)+εx(t)]既是函数 x(t)的泛函,对于给定的 x(t),又
是变量ε的函数。泛函J[x0(t)+εx(t)]在x0(t)处达到极值,也可看成
是函数J[x0(t)+εx(t)]在ε=0处达到极值,所以函数J[x0(t)+εx(t)]对
变量ε的偏导数在ε=0处应等于零,即

J [ x 0 ( t )   x ( t )]   0 = 0

由定理2-1可知: J [ x0 ( t )]  0 。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
以单变量为
例,可推广
2. 无约束条件的泛函极值问题
2.1 始端时刻t0和终端时刻tf都给定时的泛函极值
J [ x ( t )] 

tf
t0
L [ x ( t ), x ( t ), t ] d t
(*)
其中 L[ x ( t ), x (t ), t ] 及x(t)在[t0, tf]内具有二阶连续导数,t0,tf固定。
问题:确定一个函数x(t),使J[x(t)]达到极小(大)值。这条能使泛函
J[x(t)] 达到极值的曲线称为极值曲线(轨线),记作: x*(t)
• 设x*(t) 是极值轨线,x(t)是x*(t) 邻域中的一条容许轨线。 x(t)和x*(t)之
间有如下关系:
x( t )  x * ( t )  x ( t )
代入泛函,得
x ( t )  x * ( t )  x ( t )
tf
J [ x ]   L[ x* (t )   x (t ), x * (t )   x (t ), t ]dt
t0
满足条件的所有
函数组成的集合J  J [ x * ( t )  x ( t )]  J [ x * ( t )]
,称为泛函的容
许函数类,或容  t f { L[ x *   x , x *   x , t ]  L[ x * , x * , t ]}dt (2.4)
t0
许函数空间

NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2. 无约束条件的泛函极值问题
2.1 始端时刻t0和终端时刻tf都给定时的泛函极值
老大中 变分
法基础 第2版
 L 

 L 
(2.5)

     x     x  HOT  dt
t0
 x  x*
 x  x*

由变分的定义可知,变分为:

t f  L 
 L 
泛函极值的 (2.6)
 J      x     x  dt
t0
 x  x*
必要条件
 x  x*

参考:吴受章, 最优
分步积分
tf
控制理论与应用, 机 t
 L 

t f d  L 
f  L 
械工业出版社, 2007,

    xdt      x   t0
    xdt

t
0
dt  x  x*
p9-10
 x  x*
 x  x*

tf
t0
在不引起混淆的
情况下可省去最
优解符号“*”

tf
t0
tf
 L 
 L 

d  L  
       xdt     x   0
 x  x* dt  x  x* 
 x  x*
 t0
d  L 
 L 

欧拉方程: 
   0
 x  x* dt  x  x*
(2.8)
tf
 L 

横截条件:    x   0
(2.9)
 x  x*
t
0
(2.7)
总结:上述推导的重要作用在
于将求泛函(*)式的极值问题转
化为求解欧拉方程在满足边界
条件和横截条件下的定解问题。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
tf
L
L
L

x


x
(
t
)

 x (t0 )  0
由横截条件:
f
x
x t f
x t0
t0
当t0和tf给定时,根据x(t0),x(tf)是固定的或自由的各种组合,可导出
(2) 自由始端和自由终端
(1) 固定始端和固定终端
tf
x(t0)=x0, x(tf)=xf
x( t ) t  0
0
故:
x(t0)=x0, x(tf)=xf
x(t)
t0
L
 x
0
tf
L
 x
0
t0
x(t)
tf
t
t0
tf
NORTHWESTERN POLYTECHNICAL UNIVERSITY
t
NWPU
最优控制
tf
L
L
L
x 
 x (t f ) 
 x (t0 )  0
x
x t f
x t0
t0
由横截条件:
当t0和tf给定时,根据x(t0),x(tf)是固定的或自由的各种组合,可导出
(4) 固定始端和自由终端
(3) 自由始端和固定终端
L
 0, x ( t0 )  x0
x t f
L
 0, x (t f )  x f
x t0
x(t)
x(t)
t0
tf
t
t0
tf
t
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2. 无约束条件的泛函极值问题
2.1 始端时刻t0和终端时刻tf都给定时的泛函极值
L d  L 
 
  0 不同函数L的欧拉方程为:
x dt  x 
全导数形式
2
2
2
L  L  L
 L



x  2 x  0
x tx xx
x
欧拉方程
L[ x ( t ), t ]
L
0
x
L[ x ( t ), t ]
2L
2L
x 
0
2

 t x
x
L[ x ( t ), x ( t )]
2 L
2 L
L


x

x

0
x 2
xx
x
L[ x ( t ), x ( t ), t ]
  ( x , t )   ( x , t ) x
  

0
x t
L[ x ( t )]
2L
x  0
2

x
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2. 无约束条件的泛函极值问题
2.2 目标泛函取极值的充分条件
欧拉方程是求解泛函极值的必要条件,而非充分条件,J取
极大值还是极小值,还需进一步加以判断。
结论:
 2L
 2
tf
2
 J   [x, x ] x2
t0
 L
 xx
A阵
2L 

xx  x  dt
 2 L  x 
x 2 
 2 J  0 J取极小值,A阵为正定或半正定。
 2 J  0 J取极大值,A阵为负定或半负定。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2. 无约束条件的泛函极值问题
2
例题7:求泛函:J   ( x  x 2 t 2 )dt 边界条件为:x(1)=1,
1
x(2)=2的极值轨线x*(t) 。
解 :L( x , x , t )  x  x 2 t 2
由欧拉方程
L d L

0
 x dt  x
可得
d
(1  2 x t 2 )  0
dt
解方程求得通解为
x (t ) 
C1
 C2
t
根据边界条件,x(1)=1, x(2)=2,
可得
2
x(t )    3
t
 2 L
 2
 x2
 L
 xx
2 L 

xx  0 0 

2
2
 L   0 2t 
x 2 
半正定,所以
2
x (t)    3
t
*
为最优轨线,相应的泛函J(x*)取
NWPU
极小值
。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
2. 无约束条件的泛函极值问题
2.3 终端时刻自由的泛函极值问题
为使问题简单,不失一般性,假定始端时刻t0和始端状态x(t0)固定,而终
端时刻tf自由,终端状态x(tf)自由或沿规定的曲线移动。
设性能指标泛函:
注意到此时tf自由,所以泛函
的宗量还应包含tf。
tf
J [ x (t ), t f ]   L[ x (t ), x (t ), t ]dt
t0
式中t0是已知的,x(t0)固定,tf未给定。
• 因为对每一个x(t)都对应一个终端时
刻tf ,设x*(t)是极值轨线,tf*是其对
应的终端时刻,称为最优终端时刻,
则x*(t)对应的终端[x*(tf*), tf*]
• 设x(t)是x*(t) 邻域中的一条容许轨线
•
x ( t )  x * ( t )  x( t )
该函数的终端是 [ x ( t f ), t f ]
如右图所示
[ x ( t f ), t f ] 
[ x * ( t *f )  x ( t f ), t *f  t f ]
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2. 无约束条件的泛函极值问题
2.3 终端时刻自由的泛函极值问题
于是,从x*变化到x时,对应的泛函增
量为
•
tf
J [ x (t ), t f ]   L[ x (t ), x (t ), t ]dt
t0
x (t )  x* (t )   x (t )
t f  t *f   t f
J  J [ x (t ), t f ]  J [ x * (t ), t *f ]

t *f  t f
t0
L[ x * ( t )   x , x * ( t )   x , t ]dt
t *f
  L[ x * ( t ), x * ( t ), t ]dt
t0
t*f  t f
 *
tf
(2.10)
L[x*(t)  x, x*(t)  x, t]dt
t*f
 {L[x*(t)  x, x*(t)  x, t]  L[x*(t), x*(t), t]}dt
t0
(2.11)
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
t*f  t f
J   *
tf
t*f
L[ x (t )   x, x (t )   x , t ]dt   {L[ x* (t )   x, x * (t )   x , t ]  L[ x* (t ), x * (t ), t ]}dt
*
*
t0
第一项由积分中值定理并考虑到L的连续性可得

t *f
 t f
t *f
利用上一小
节的结论
L[ x * ( t )  x , x * ( t )  x , t ]dt
 L[ x* (t )   x, x * (t )   x , t ]
t t*f
 t f
 t f  L[ x* (t ), x * (t ), t ] t t  t f+ t f
*
f
是关于 δtf的线性连续泛函,利用变法
定义,所以其为第一项的变法
式中0≤θ ≤1, δtf→0, δx→0, 有ε→0。
t *f
 L 

t *f
 J  L( x , x , t ) t*  t f     x   
t0
f
 x  x*
 t0
*
*
得J(x)取极值得必要条件为
欧拉方程
 L d  L  
 x  dt  x    xdt
   x*

t *f
(2.12)
 L 

 L d  L  

 x  dt  x   =0 横截条件  x  *  x   L[ x*, x*, t ] t f *  t f  0
x
   x*

 t0

(2.13)
(2.14)
NWPU
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
t *f
  L 


x
 
  L[ x*, x *, t ] t f *  t f  0
 x  x*
 t0
可推出各种情况下的横截条件:
1) 终端时刻自由,终端状态自由
此时,x(t0)=x0,δx(t0)=0,δtf和δx(tf)
任意
反映两条轨线端点处
的增量
 x (t f )  x (t f )  x * (t *f )
 x ( t *f )t f  x ( t *f )
因为tf和x(tf)自由,所以δx(tf)任意。
注意与  x (t *f )  x (t *f )  x * (t *f )
的区别,t *f 给定,所以它不能任意。
可得横截条件为:
L
x
t  t *f
 0,  L  x

边界条件: x(t0)=x0
L 

x 
t *f
0
(2.15)
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
t *f
 L 


x
 
  L[ x*, x *, t ] t f *  t f  0
 x  x*
 t0
可推出各种情况下的横截条件:
2) 终端时刻自由,终端状态有约束x(tf)=c(tf)
 x ( t f )  c ( t *f ) t f
注意到
x( t *f )  x( t f )  x ( t *f )t f
可得横截条件为:
L
 



[
c
(
t
)

x
(
t
)]

L
(
x
,
x
,
t
)
0


x

 t  t *f
(2.16)
边界条件为:
x ( t 0 )  x0
x( t f )  c( t f )
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2. 无约束条件的泛函极值问题
2.3 终端时刻自由的泛函极值问题
例题8:确定点A(0,1)至给定直线  (t )  2  t 的弧长最短的曲线方
程。
解:弧长元素
x(t)
ds  (dt )  (dx )  1  x dt
2
2
2
目标函数应选为:
J [ x ( t ), t f ] 
由欧拉方程:
0
1  x 2 dt
d
x
 (
)0
2
dt 1  x
积分得,
x
1  x

tf
2
 c , x  
0
c
1 c
2
x*(t)
x(0)
x(t)
2
tf
ψ(t)
 a,
再积分,得通解
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
t
最优控制
2. 无约束条件的泛函极值问题
L


0
[c( t )  x ( t )]  L( x , x , t )


x

 t  t *f
2.3 终端时刻自由的泛函极值问题
x(t)
x (t )  at  b
根据始端条件:
2
x (0)  1  b  1
x*(t)
根据终端横截条件,
L 



 L  (  x) x 
x(t)
t*f
 1 x  (1 a)
2
x  a  1
得最优轨线方程:
x* (t )  t  1
由边界条件
x(0)
0
x
1 x
2
tf
t
ψ(t)
0
x * ( t *f )   ( t *f )
*
1
2
tf 
*
J 
t *f  1  2  t *f

1
2
0
1
(1  x *2 ) 2 dt 
2
2 NWPU
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
2. 无约束条件的泛函极值问题
2.4 初始时刻自由的泛函极值问题
为使问题简单,又不失一般性,假定终端时刻tf和终端状态x(tf)固定,而始
端时刻t0自由,始端状态x(t0)自由或沿规定的曲线移动。
边界条件与横截条件为:x(tf)=xf
设系统性能指标:
tf
J   L[ x( t ), x ( t ), t ]dt
t0
式中tf是已知的,x(tf)固定,t0未给
定。
得J(x)取极值得必要条件为
L d  L  
 x  dt  x   =0
   x*

欧拉方程
横截条件
t
f
L
x  L[ x*, x *, t ] t * t 0  0
0
x
t 0*
1) 始端时刻自由,始端状态自由
L
x
L 


L

x
0


x t0*

2) 始端时刻自由,始端状态有约束
x(t0)=ψ(t0)
t  t0*
0
边界条件与横截条件为:x ( t f )  x f
x ( t 0 )  ( t 0 )
L





[

(
t
)

x
(
t
)]

L
(
x
,
x
,
t
)
0



x

 t  t 0*
从以上讨论可以看出,不论边界情况如
何,泛函极值都必须满足欧拉方程,只
是在求解欧拉方程时,对于不同情况,
应采用不同的边界条件与横截条件。
NWPU
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
2. 无约束条件的泛函极值问题
2.5 向量函数泛函极值问题
在上面所讨论的公式中,都假定x是1维变量,但是,所有公式都可推
tf
广到n维变量的情况
T


设性能指标 J 
式中

tf
t0
 L 
 x(t )   0


  x 
 t
L(x, x , t )dt
x(t )  [ x1 (t ), x2 (t ), , xn (t )]
T
L d  L 
  0
则欧拉方程为:
x dt  x 
式中
L  L L
L 

,
, ,

x  x1 x2
xn 
T
L  L L
L 

,
, ,



x  x1 x2
x n 
T
对于始端时刻t0和终端时刻tf都给定
时,横截条件
0
式中  x(t )  [ x1(t ), x2 (t ),, xn (t )]T
对于未给定始终端时刻的横截条件为:
(1) 给定始端和终端有约束:


T L

[
c
(
t
)

x
(
t
)]

L
0


x

 t t
f
(2) 给定终端和始端有约束:
 

T L

[

(
t
)

x
(
t
)]

L

  0。
x

 t  t0
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
3. 有约束条件的泛函极值问题
在实际问题中,对应泛函极值的最优轨线x*(t)通常不能任意选取,而受着
各种约束。在泛函所依赖的函数上附加某些约束条件来求泛函的极值问题
称为条件泛函极值问题。
由于δx, δλ相互独立,为使上式成
(1) 代数方程约束
立,应同时满足下述欧拉方程,约
t
束方程和横截条件:
设 J  t L[x(t ), x (t ), t ]dt
F d  F 
 
欧拉方程:
0
约束方程 G ( x , t )  0 x  R n
x dt  x 
f
0
G  R
m
m  n
构造增广泛函
tf
m
J a   [ L(x, x , t )   T G (x, t )]dt   R
T
L  G 
d  L 




  0
x  x 
dt  x 
约束方程: G ( x , t )  0
T
令标量函数
 L 
tf

x
T
横截条件:
t0  0




F (x, x,  , t )  L(x, x, t )   G (x, t )
 x 
T
T
T

t f  F 
 F 
 F 
 J a      x     x     dt  0
t0
 x 
  
 x 

T
T
T



tf 

F
d

F

F







t
 J a          x  GT  dt     x t0f  0
NWPU
t0
 xPOLYTECHNICAL

NORTHWESTERN
UNIVERSITY
 x  dt  x  

t0
最优控制
3. 有约束条件的泛函极值问题
(2) 微分方程约束
t
J   L[x(t ), x (t ), t ]dt
f
设
t
约束条件 G (x, x , t )  0 G  Rm
令标量函数 F (x, x ,  , t )  L(x, x , t )   T G (x, x , t )
T
T
T

t f  F 

F

F




 J a   
  x      x  
  dt  0
t0

x

x









T
T
T

tf 

F
 F  d  F  



t
(2.17)
 Ja          x  GT  dt     x t0f  0
t0
 x 
 x  dt  x  

欧拉方程: F  d  F   0
(2.18)
  
x dt  x 
T
T
L  G 
d  L  d  G 

           0
x  x 
dt  x  dt  x 
约束方程: G (x, x , t )  0
T
T



L

G
tf

F


tf
(2.19)



x

x

0
横截条件: 


t0  0
t0

x x 
  x 

可见,对于有约束条件的泛函极值问题,可采用拉格朗日乘子法将其转化
为无约束条件的泛函极值问题进行求解。在不同边界条件情况下,欧拉方
NWPU
程不变,只是边界条件及横截条件不同。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
0
最优控制
总结: J  
tf
t0
L[ x (t ), x ( t ), t ]dt
无约
束
条件
必要
条件
欧拉
方程
L
 0, { x( t f )  x f }
x t0
拉格朗日
乘子法
无约
束
条件
L
 0, { x ( t 0 )  x0 }

x t f
L
L
 0,
0
x t 0
x t f
终端状态自由
L
 x
t0 , x(t0)
给定
tf自由
有约
束
条件
{ x(t 0 )  x0 , x( t f )  x f }
t0、tf给定
横截
(边界)
条件
泛函
极值
问题
L d  L 
   =0
x dt  x 
t *f
L 

 0 ,  L  x T
 0
 x  t f *

{ x(t0 )  x0 }


T L
 L( x , x , t )
0
[c( t )  x ( t )]
x

 t  t *f
{ x( t 0 )  x0 , x( t f )  c( t f )}
终端状态有
约束x(tf)=c(tf)
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4. 应用变分法求解最优控制问题
设系统状态方程:
x  f ( x , u, t )
性能指标:
tf
J  [ x ( t f ), t f ]   L( x , u, t )dt
t0
前提条件:当控制变量取值不受约束时,可以利用变分法求解最优控制问
题。
终端 tf可固定可自由,终端状态或固定或自由或受约束。
目标集为:S (
{ x (t f ),t f )| x (t f )  R n , G[ x (t f ), t f ]  0}
目标:寻求最优控制u*(t)及最优状态轨迹x*(t),使系统从初态转移到目标
集,使性能指标J取极值。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4. 应用变分法求解最优控制问题
4.1 初始时刻t0及始端状态x(t0)给定,tf给定,终端自由
用拉格朗日乘子法将约束条件问题化成无约束条件问题,即
tf
J a  [ x ( t f )]   { L( x , u, t )  T [ f ( x , u, t )  x ]}dt
t0
令哈密尔顿函数:
(2.20)
H ( x , u,  , t )  L( x , u, t )  T f ( x , u, t )
tf
J a  [ x ( t f )]   [ H ( x , u,  , t )  T x ]dt
则
(2.21)
t0
tf
tf
t0
t0

J a  [ x ( t f )]   H ( x, u,  , t )dt    T xdt
J1
J2
 T
J1  [ x ( t f )]  [ x * ( t f )]  (
) x
J3
t t f
x ( t f )
tf
H
H
H
 J2   [( )T  x  ( )T  u  ( )T  ]dt
t0
x
u

tf
tf
tf
t0
t0
t0
 HOT
    T xdt
   x T    T  xdt

 J 3     T xdt
 J1  (
 T
) x
x ( t f )
t t f
(2.22)
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4. 应用变分法求解最优控制问题
4.1 初始时刻t0及始端状态x(t0)给定,tf给定,终端自由
 T
 Ja  (
) x
x(t f )
tf
t t f
  [(
t0
H T
H
H
)  x  ( )T  u  ( )T   x T    T  x ]dt  0
x
u

(2.23)
tf
注意到:  T  xdt
  T x
t0
J a  (

  ( t f ))T x
x ( t f )
tf
tf
t t f
   T  xdt , x ( t 0 )  0
tf
  [(
t0
t0
H  T
H T
H
  ) x  (
) u  (
 x )T  ]dt  0
x
u

(2.24)
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4. 应用变分法求解最优控制问题
4.1 初始时刻t0及始端状态x(t0)给定,tf给定,终端自由
J a  (

  ( t f ))T x
x (t f )
tf
t t f
  [(
t0
H  T
H T
H
  ) x  (
) u  (
 x )T  ]dt  0
x
u

为使上式成立,应同时满足下列方程:
状态方程
x 
伴随向量或
协态向量
H

正则方程
伴随方程(协状态方程)
  
控制方程 (耦合方程)
H
0
u
横截条件
 (t f ) 
H
x

x (t f )
注:对于两端固定的情况下,因为 x t  t  0 横截条件不存在。
f
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4. 应用变分法求解最优控制问题
4.1 初始时刻t0及始端状态x(t0)给定,tf给定,终端自由
例1 已知系统状态方程为
x  u( t ), x (0)  1
求最优控制u*(t)使性能指标:
1
J   e 2 t ( x 2  u 2 )dt
0
 2 xe 2 t  2( 2u  u )e 2 t
消除u x  2 x  x  0
x( t )  c1e  (1 2 ) t  c2e  (1 2 ) t
  2ue 2 t  2 x e 2 t
为最小。
2t
 (1

2
e
[(
1

2
)
c
e
1
解:本题为tf给定,终端自由的情况
H  e 2 t ( x 2  u 2 )  u
控制方程
H
   2ue 2 t  0
u
正则方程
H
  
  2 xe 2 t
x
x 
H
u

由控制方程可得:
  2( 2u  u )e 2 t
注意到(*)式,进而有
 (1  2 )c2e (1
2 )t
]
边界条件与横截条件
x(t 0 )  x0
(*)
2 )t
c1 
 (t f ) 

 x(0)  1,  (1)  0
x ( t f )
2 1
( 2 1)  ( 2 1)e2
2
c2 
( 2  1)e 2
2
( 2  1)  ( 2  1)e  2
2
得最优控制
u*(t ) 
1
( 2 1)  ( 2 1)e
2
(1
[
e
2
2 )t
 e2 2  e(1
  1.7957 [e 2.4142 t  0.0591e 0.4142 t ]
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
2 )t
]
最优控制
4. 应用变分法求解最优控制问题
4.2 初始时刻t0及始端状态x(t0)给定,tf给定,终端约束
设终端约束方程为:G[ x ( t f ), t f ]  G[ x ( t f )]  0
用拉格朗日乘子法约束条件问题化成无约束条件问题,即
tf
J a  [ x ( t f )]  v G[ x ( t f )]   { L( x , u, t )  T [ f ( x , u, t )  x ]}dt
T
t0
tf
 [ x ( t f )]  v G[ x ( t f )]   { H ( x , u,  , t )  T x ]}dt
T
t0

G T
 Ja  [
(
) v   (t f )]T  x
x(t f ) x(t f )
Ja取极值的必要条件是
H


x



正则方程:
H
  
x

t t f

tf
t0
(2.25)
H  T
H T
[(
  )  x  ( )  u]dt  0 (2.26)
x
u
控制方程:
H
0
u

G T
(
) v]
x (t f ) x (t f )
边界条件: G[ x ( t f ), t f ]  G[ x ( t f )]  0
横截条件:  ( t f )  [
x(t0)=x0
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4. 应用变分法求解最优控制问题
4.2 初始时刻t0及始端状态x(t0)给定,tf给定,终端约束
例2 设系统状态方程为
正则方程
x1  x2 x 2   x2  u x1 (0)  0 x2 (0)  0 
H
H

 1  
 0 , 1 ( t )  c1
性能指标:
x
 x1
1
1
1 2 2
   H     ,  ( t )  c e t  c
2
2

2
2
1
2
2
1
J  [ x ( 2)  5]  [ x ( 2)  2] 
u dt
2
1
2
2
2 0
终端约束条件
x1 ( 2)  5 x2 ( 2)  15
试求使 J  min 的最优控制.
解:本题为tf=2给定,终端受约束的 问题
1 2
u  1 x 2  2 (  x 2  u)
2
1
 u 2  ( 1  2 ) x 2  2 u
2
1
1
  [ x1 ( 2)  5]2  [ x 2 ( 2)  2]2
2
2
H
G  x1 ( 2)  5 x2 ( 2)  15  0
控制方程
H
 0  u  2  0  u(t )   2
u
x 2
H
x 
 x 1  x 2 , x 2   x 2  u

1
x 2 ( t )  c3e  t  c2 e t  c1
2
1
x1 ( t )   c3e  t  c 2 e t  c1t  c4
2
边界条件和横截条件
x ( 0)  0
 0.5c2  c3  c4  0
 c1  0.5c 2  c3  0
 
G T 
(
) v  1 (2)  x1(2)  5  v  c1

x
(
t
)

x
(
t
)
 1 f

1 f
1 (t f )  
2 ( 2)  x2 ( 2)  2  5v  c2e 2  c1
代入 x1 (2 ), x 2 (2)
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4. 应用变分法求解最优控制问题
4.2 初始时刻t0及始端状态x(t0)给定,tf给定,终端约束
  0.5c2  c3  c4  0

  c1  0.5c 2  c3  0

2
2
  7c1  3e c2  4e c3  c 4  15  x1 ( 2)  5 x 2 ( 2)  15

2
2

3
c

0
.
5
e
c

e
c3  c 4  v  5
1
2

  2c  1.5e 2 c  e  2 c  5v  2
1
2
3

解得 c1  0.73 c2  0.13
u * ( t )   c 2 e t  c1  0 .13 e t  0 .73
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4. 应用变分法求解最优控制问题
4.3 初始时刻t0及始端状态x(t0)给定,tf自由,终端自由
构造增广泛函
tf
J   [ x ( t f ), t f ]   [ H ( x , u,  , t )  T ( t ) x ( t )]dt
(2.27)
t0
J1
J2
x* (t *f )   x (t f ), t *f   t f 末端由 [ x * ( t *f ), t *f ] 移动到
t f  t *f  t f
[ x( t f ), t f ]  [ x * ( t *f )  x( t f ), t *f  t f ]
J1  [ x * ( t *f )  x( t f ), t *f  t f ]  [ x * ( t *f ), t *f ]
  
 J1  


x
(
t
)

f 

T
 x (t f ) 
( x* ( t *f ), t *f )

t f
tf
( x* ( t *f ), t *f )
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4. 应用变分法求解最优控制问题
4.3 初始时刻t0及始端状态x(t0)给定,tf自由,终端自由
tf
J   [ x ( t f ), t f ]   [ H ( x , u,  , t )  T ( t ) x ( t )]dt
t0
J1
J2
x ( t )  x * ( t )  x( t )
t f  t *f  t f
J 2  
t *f t f
t0
{ H[ x* (t )  x, u* (t )  u,  (t ), t ]
t *f
  (t )[x (t )  x ]}dt   {H[ x* (t ),u* (t ),(t ),t]  T (t )x * (t )}dt
T
*
(2.28)
t0
t*f  t f
J2   *
tf
{H[ x*(t)   x, u*(t)   u, (t), t]  T (t)[ x* (t)   x ]}dt
t*f
 {H[x*(t)  x, u*(t) u, (t), t]  H[x*(t), u*(t), (t), t]}{T (t)[x*(t)  x] T (t)x*(t)}dt
t0
(2.29)
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4. 应用变分法求解最优控制问题
4.3 初始时刻t0及始端状态x(t0)给定,tf自由,终端自由
tf
J   [ x ( t f ), t f ]   [ H ( x , u,  , t )  T ( t ) x ( t )]dt
t0
J1
J2
x ( t )  x * ( t )  x( t )
t f  t *f  t f
 J 2  {H [ x * ( t *f ), u* ( t *f ),  ( t *f ), t *f )]   T ( t *f ) x * ( t *f )} t f
t*f
  {[(
t0
H  T
H
 )  x  ( )T  u]}
dt   T (t *f ) x *
tf
x
u
x  x* , u u*
x(t*f )  x(t f )  x(t*f )t f
t *f
J 2   {[(
t0
H  T
H T
  ) x  (
) u]}
dt  T ( t *f )x ( t f )
x
u
x  x * , u  u*
 H [ x * ( t *f ), u* ( t *f ),  ( t *f ),t *f )]t f
(2.30)
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4. 应用变分法求解最优控制问题
4.3 初始时刻t0及始端状态x(t0)给定,tf自由,终端自由
tf
J   [ x ( t f ), t f ]   [ H ( x , u,  , t )  T ( t ) x ( t )]dt
t0
J1
  
 J1  

 x ( t f ) 
t *f
J 2   {[(
t0
J2
T
 x (t f ) 
( x * ( t *f ), t *f )

t f
tf
省去最优解符号
“*”
( x * ( t *f ), t *f )
H  T
H T
  ) x  (
) u]}
dt  T ( t *f )x ( t f )
x
u
x  x * , u  u*
 H [ x * ( t *f ), u* ( t *f ),  ( t *f ),t *f )]t f
Ja取极值的必要条件是
*
横截条件: ( t f ) 

x ( t f )
 (t f ) 

x (t f )
H


x

( x* ( t *f ), t *f )


正则方程: 
H


  
* *
* *
*
*
H
(
t
)


f
x H [ x (t f ), u (t f ),  (t f ),t f )]   t

t f
f ( x ( t ), t )
H
控制方程:
0
边界条件: x(t0)=x0
NWPU
u
NORTHWESTERN POLYTECHNICAL UNIVERSITY
*
*
f
*
f
最优控制
4. 应用变分法求解最优控制问题
4.4 初始时刻t0及始端状态x(t0)给定,tf自由,终端约束
设终端约束为 G[ x ( t f ), t f ]  0
构造增广泛函
tf
J   [ x ( t f ), t f ]  v G[ x ( t f ), t f ]   [ H ( x , u,  , t )  T ( t ) x ( t )]dt
T
t0
(2.31)
Ja取极值的必要条件是
H


x



正则方程: 
H
  
x

控制方程:
H
0
u
横截条件: (t f ) 

G T
{
} v
x (t f ) x (t f )
H (t f )  

G
 { }T v
t f
t f
边界条件:
x(t0)=x0,G[ x ( t f ), t f ]  0
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4. 应用变分法求解最优控制问题
4.5 初始时刻t0及始端状态x(t0)给定,tf自由, x(tf)= xf
若系统完全可控,则最优解的必要条件是
H


x



正则方程:
H
  
x

控制方程:
H
0
u
横截条件:
H (t f )  

t f
边界条件:
x(t0)=x0, x(tf)=xf
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4. 应用变分法求解最优控制问题
4.5 初始时刻t0及始端状态x(t0)给定,tf自由, x(tf)= xf
由控制方程
例3 设系统状态方程为
x ( t )  u( t )
H
 u  0
u
u( t )    ( t )   a
给定的边界条件为:x(0)  1,x(t f )  0,
由状态方程及边界条件
求最优控制u*(t)及最优终端使下列性
x  u( t )   a
x ( t )  1  at
能指标:
1
1 t 2
x
(
t
)

1

at

0
,
a

J  t f   u ( t ) dt
f
f
tf
2 0
为极小。
由横截条件
1 2

H
(
t
)

u
(
t
)


(
t
)
u
(
t
)


 1
f
f
f
f
解:本题为复合型指标,tf自由,
2
t
f
f
终端固定问题.
由题意 ( x ( t f ), t f )  t f , L()  u 2
哈密尔顿函数
1
H  u 2  u
2
于是最优解为
u* (t )   2
由协态方程
H
  
0
x
1 2
 ( t f )  2 ( t f )  1
2
a 2
 (t )  a
tf*
(t f )  2
2
2
x * ( t )  1 2t*
* ( t )  2
1 tf 2
J *  t *f   u* ( t )dt  2 NWPU
NORTHWESTERN POLYTECHNICAL
UNIVERSITY
2 0
最优控制
总结:
J  [ x ( t f ), t f ]
tf
  L( x , u, t )dt
正则
方程
极值
条件
  
H
x
x 
H

控制无约束
H
 0
u
t0
最优
控制
问题
t0 , x(t0)
给定
tf固定
必要
条件
横截
(边界)
条件
t0 , x(t0)
给定
tf自由
终端
自由
 (t f ) 
终端
约束

G T
(
) v ]t f
x
x
{ x ( t 0 )  x 0 , G [ x ( t f ), t f ]  0}
终端
自由

{ x ( t 0 )  x0 }
x ( t f )
 (t f )  [
 (t f ) 


, H (t f )  
x (t f )
t f
{ x (t0 )  x0 }
 (t f ) 
终端
约束

G
 (
)T v
x (t f )
x (t f )
H (t f )  [

G T
 (
) v]
t f
t f
x ( t 0 )  x 0 , GUNIVERSITY
[ x (t f ), t f
NORTHWESTERN {
POLYTECHNICAL
NWPU
]  0}
最优控制
第三章 极小值原理及其应用
本章主要内容:
1 引言
2 连续系统的极小值原理
3 离散系统的极小值原理
4 极小值原理的应用

最小时间控制

燃料最优控制

时间-燃料最优控制问题
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
1. 引言
例1 已知系统状态方程为
x(t )   x(t )  u(t ), x(0)  1
式中控制约束为:
u (t )  1
求使性能指标:
1
J   x(t )dt
0
为极小的最优控制u*(t) 。
解:哈密尔顿方程:
H  x(t )   (t )( x(t )  u (t ))
H
  (t )  1,  (1)  0
x
H
极值必要条件:
  (t )  0 ,产生矛盾。
u
伴随方程:  (t )  
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
1. 引言
用变分法求解最优控制问题
时,要求函数f(x,u,t)和L(x,u,t)
等函数对其自变量有充分可微
性。

用变分法求解最优控制问题时,
假定控制向量u(t)不受限制。但是实
际工程问题中,控制向量u(t)多是受
到一定限制的。
设控制变量被限制在某一闭集内
u   即u(t)满足 g[ x ( t ), u( t ), t ]  0
满足限制条件的u(t)称为容许控制,
由于δu不能是任意的,

H
0
u
的条件已不存在。
a) 图中所示,H 最小值出现在左侧,
不满足控制方程。
H
b) 图中不存在
0
NWPU
u
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
2. 连续系统的极小值原理
问题 3-1
设n维系统的状态方程为
x ( t )  f [ x ( t ), u ( t ), t ]
控制向量u(t)是分段连续函数,属于m维空间中的有界闭集Ω,满足不等
式约束:
g[ x( t ), u( t ), t ]  0
在终端时刻tf 未知的情况下,为使状态自初态
x ( t 0 )  x0
转移到满足边界条件
G [ x ( t f ), t f ]  0
的终态,并使性能指标
J   [ x ( t f ), t f ] 

tf
t0
L[ x ( t ), u ( t ), t ]dt
达到极小值。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2. 连续系统的极小值原理
定理3-1 问题3-1实现最优控制的
必要条件是:
以上便是著名的庞特里亚金极小值原理。
 极小值原理的意义:
(1) 设u*(t)是最优控制,x*(t)最优轨线, 1 、容许控制条件放宽
则存在一与u*(t)和x*(t)对应的最优伴随 变分法:在整个控制域,对U没有约束
向量λ*(t),使x*(t)和λ*(t)满足正则方程: 极小值原理:H在U的约束闭集中取极小值。
H


x




H
   
x

2、最优控制u*使哈密顿函数H取极小值,
极小值原理由此得名。这一原理是苏联
学者“庞特里亚金”等人首先提出,而后
(2) 在最优轨线x*(t)上与最优控制u*(t)对 加以证明得。
在证明过程中:λ与H的符号与这里所定
应的哈密尔顿函数H取极小值,即
义的相反。
H ( x * , u* , λ* , t )  min H [ x* , u, λ* , t ]
所以有的文献中也称为“极大值原理”。
u
t
可变时使用
f
(3) 横截条件
3、H对u没有可微要求,因此应用拓宽。
 (t f ) 

G T
{
} v
x (t f ) x (t f )
H (t f )  
(4) 边界条件
x ( t 0 )  x0

G
 { }T v
t f
t f
G [ x ( t f ), t f ]  0
4、 极小值原来是求取最优控制的必要条
件,非充分条件。
即:满足极小值原理不一定J取极小值,
需进一步判断。
一般:对于实际系统 根据物理意义
--------
 有最优解
极小值原理有唯一解 -- 最优解
--------

NWPU
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
正则
方程
J  [ x ( t f ), t f ]
tf
  L( x , u, t )dt
极值
条件
  
H
x
x 
H

控制有约束
H [ x * , u* , * , t ]
 min H [ x * , u ,  * , t ]

t0
最优
控制
问题
t0 , x(t0)
给定
tf固定
必要
条件
横截
(边界)
条件
t0 , x(t0)
给定
tf自由
终端
自由
 (t f ) 
终端
约束

G T
(
) v ]t f
x
x
{ x (t0 )  x0 , G [ x (t f )
, t f ]  0}
终端
自由

{ x( t 0 )  x0 }
x ( t f )
 (t f )  [
 (t f ) 


, H * ( t *f )  
x ( t f )
t f
{ x (t0 )  x0 }

G T
 (
) v ]t f
x
x

G T
H * ( t *f )   [
 (
) v ]t f
t
t
{ x ( t 0 )  x 0 , G [ x ( t f ) , t f NWPU
]  0}
 (t f )  [
终端
约束
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
例1 已知系统状态方程为
x(t )   x(t )  u(t ), x(0)  1
式中控制约束为:u (t )  1
1

H  x(t )   (t )( x(t )  u (t ))
 (1   ) x(t )  u (t )
由极值必要条件,知
1,   0
u  sign  
 1,   0
协态方程和横截条件
H

 (t )  
  (t )  1  (1)  0
x
得  (t )  1  e t 1  0 0  t  1
于是有 u  (t )  1
x (t )   x(t )  1 x(0)  1

t
得 x (t )  2e  1

1
J   xdt  2e 1  1
0
协态变量与控制变量的关系图
求使性能指标:J  x (t )dt
0
为极小的最优控制u*(t) 。
解:哈密尔顿函数
再由状态方程和边界条件
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2. 连续系统的极小值原理
H
例2 一阶系统状态方程为
x (t )  x(t )  u(t ),
x(0)  5
式中控制约束为:0.5  u(t )  1
求使性能指标:
J 
1
 [ x ( t )  u ( t )]dt
0
由协态方程:  
 [1   ( t )]

x
其解为: ( t )  ce  t  1
ce
由横截条件: (1)  ce 1  1  0
可得协态方程: ( t )  e 1 t  1
当  ( t s )  1 时,u* ( t ) 产生切换
 ( t s )  e1 t  1  1
s
t s  0.307
为极小的最优控制u*(t) 及相应的最
0  t  0.307
1,
优性能指标J*。
*
所以 u ( t )  
解:本例tf 给定,x(tf)自由的最优控
 0.5, 0.307  t  1
制问题.
代入状态方程:
哈密尔顿函数
0  t  0.307
 x ( t )  1,
x ( t )  
H  x  u   ( x  u)  (1   ) x  (1   )u
 x ( t )  0.5, 0.307  t  1
使H函数极小
使u(1-λ) 极小
解得
c1e t  1,
 1
1,
0  t  0.307
*
x(t )   t
最优控制取为:u ( t )  
c2e  0.5, 0.307  t  1
 0 .5,   1
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2. 连续系统的极小值原理
例2 一阶系统状态方程为
x ( t )  x (t )  u( t ), x(0)  5
式中控制约束为:0  u(t )  1
求使性能指标:
1
J   [ x ( t )  u ( t )]dt
0
x(0.307)  4e 0.307  1  6.44
得c2= 4.37。
最优轨线为:
t

4
e
 1,
0  t  0.307
x * (t )  
t
4.37e  0.5, 0.307  t  1
为极小的最优控制u*(t)及相应的最
将x*,u*代入可得
优性能指标J*。
1
解: (续前)
*
*
c1et  1,
0  t  0.307
x(t )   t
c2e  0.5, 0.307 t  1
由x(0)=5代入,得c1= 4。
J   [ x ( t )  u* ( t )]dt  8.64
0
所以 x * ( t )  4e t  1 0  t  0.307
令t=0.307可得0.307≤t≤1时x(t)的初始
条件:
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2. 连续系统的极小值原理
例3 设宇宙飞船质量为m(t),高度为
h(t),垂直速度为v(t),发动机推力为
u(t),月球表面的重力加速度设为常
数g,不带燃料的飞船质量为M,初
始燃料的总质量为F,飞船的状态方
程为: 
h( t )  v ( t )
h(0)  h0
u( t )
v( t )   g 
, v ( 0)  v 0
m( t )
m ( t )   ku( t ) m(0)  M  F
要求飞船在月球上实现软着陆,即终
端约束为
G1  h( t f )  0
G2  v ( t f )  0
发动机推力u(t)受到约束,
u  ,   {u 0  u  a},
试确定u*(t),使飞船由已知初态转
移到要求的终端状态并使飞船燃料
消耗最少,即使得
J   m ( t f )  min
解:本题是控制受约束,tf 自由,终
值型性能指标,终端受约束的最优控
制问题。
构造哈密尔顿函数
u
H  T f ( x, u, t )  hv  v (g  )  mku
m
式中λh(t), λv(t), λm(t)为待定的拉格朗日
乘子。
由协态方程:
H

 
x
H

h  
0
h
H
v  
 h
v
H
vu

m  

m
m2
NWPU
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
2. 连续系统的极小值原理
解:本题是控制受约束, tf 自由,终
值型性能指标,终端受约束的最优控
制问题。
构造哈密尔顿函数
u
H  T f ( x, u, t )  hv  v ( g  )  mku
m
式中λh(t), λv(t), λm(t)为待定的拉格朗
日乘子。
由协态方程:
H
  
x
H
h  
0
h
H
v  
 h
v
H
vu

m  

m
m2
由横截条件

G T
 (t f )  [
(
) v ]t f
x
x

G T
h (t f )  [
(
) v ] t f  v1
h
h

G T
v (t f )  [
(
) v ]t f  v 2
v
v

G T
m (t f )  [
(
) v ]t f   1
m
m
式中v1,v2为待定的拉格朗日乘子,将
哈密尔顿函数整理

H  (hv  v g )  ( v  km )u
m
由极小值原理知,H相对u*(t)取极小
值,因此最优控制律为:
v

a
 k m  0

上述结果表明,只有当发动机推力在其最

m
u*(t )  
大值和零值之间进行开关控制,才有可能
v

0
 k  m  0NWPU
在实现软着陆的同时保证燃料消耗最少。

m

NORTHWESTERN POLYTECHNICAL
UNIVERSITY
最优控制
2. 连续系统的极小值原理
1500
2000
1350
1800
1200
1600
1050
1400
900
1200
750
u(N)
u(N )
对该问题的进一步求解需要借助数值方法,我们这里采用高斯拟谱方法进
行求解并给出仿真结果:
初始条件为h0=10km,v0=100m/s,m0=500kg;其它仿真参数设置如下:
k=0.0034 , 月 球 表 面 引 力 加 速 度 为 g=1.6m/s2 。 图 中 给 出 了 最 大 推 力 为
1500N和2000N时的仿真结果。
1000
600
800
450
600
300
400
150
0
200
0
20
40
60
t(s)
80
100
120
0
0
20
40
60
80
100
t(s)
(a)
(b)
图3-1 推力变化曲线: (a) F=1500(N), (b) F=2000(N)
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
10000
10000
9000
9000
8000
8000
7000
7000
6000
6000
h(m)
h(m)
2. 连续系统的极小值原理
5000
5000
4000
4000
3000
3000
2000
2000
1000
1000
0
0
20
40
60
80
100
0
120
0
20
40
t(s)
60
80
100
80
100
t(s)
(a)
(b)
图3-2 高度变化曲线: (a) F=1500(N), (b) F=2000(N)
0
0
-15
-20
-30
-40
-45
-60
v(m/s)
v(m/s)
-60
-75
-90
-80
-100
-105
-120
-120
-140
-135
-150
0
20
40
60
t(s)
80
100
120
-160
0
20
40
60
t(s)
(a)
(b)
NWPU
图3-3 速度变化曲线: (a)NORTHWESTERN
F=1500(N),POLYTECHNICAL
(b) F=2000(N)
UNIVERSITY
最优控制
2. 连续系统的极小值原理
500
500
495
490
490
485
485
480
480
m(kg)
m(kg)
495
475
470
475
470
465
465
460
460
455
450
455
0
20
40
60
80
100
120
0
20
40
60
80
100
t(s)
t(s)
(a)
(b)
图3-4 质量变化曲线: (a) F=1500(N), (b) F=2000(N)
从结果可以看出,当探测器进行垂直阶段降落时,要实现登月软着陆
最优控制,探测器首先进行一段自由落体运动,然后在最大推力的作
用下实现登月软着陆;当推力最大为1500N时,最终耗时118.6s,最终
消耗燃料为46.93kg;当推力最大为2000N时,最终耗时99.83s,最终
消耗燃料为42.28kg;对于月球最优软着陆问题,增大发动机的最大
推力,可以缩短着陆时间,减少燃料的消耗。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
3. 离散系统的极小值原理
式中x(k)=x(kT), x(k+1)=x[(k+1)T],
3.1 离散系统的欧拉方程
t =k T, t =k T, T为采样周期
定理3-2 已知容许曲线x(k)的始端x(k0)=x0和终端 x(kf)=xf,则使性能指标
0
0
f
f
k f 1
J 
 L[ x ( k ), x ( k  1), k ]
(3.1)
k  k0
取极值的必要条件是容许极值曲线x∗(k)满足如下离散欧拉方程:
 L [ x ( k ), x ( k  1 ), k ]  L [ x ( k  1 ), x ( k ), k  1]

 0
x (k )
x(k )
边界条件为x(k0)=x0, x(kf)=xf。
证明:在式(3.1)中分别对x(k)和x(k+1)取变分,则可得性能指标J的变分为
T
 L[ x ( k ), x ( k  1), k ]  T

 L[ x ( k ), x ( k  1), k ] 
 x ( k )  
 x ( k  1) (3.2)
J   
x ( k )
x ( k  1)
k  k0 





k f 1
k f 1
T
令k=m-1
kf
T
 L[ x ( k ), x ( k  1), k ] 
 L[ x ( m  1), x ( m ), m  1] 



 x ( m )

x
(
k

1
)





x ( k  1)
x ( m )
k  k0 
m  k 0 1 


NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
3. 离散系统的极小值原理
3.1 离散系统的欧拉方程
k f 1
T
k f 1
T
k
T
f
 L[ x ( k ), x ( k  1), k ] 
 L[ x ( m  1), x ( m ), m  1] 



 x ( m )

x
(
k

1
)






x
(
k

1
)

x
(
m
)
k  k0 
m  k 0 1 


 L[ x ( k ), x ( k  1), k ] 

 x ( k  1) 

x ( k  1)
k  k0 

k f 1
令m=k
离散分部积分
(3.3)
kk f
T
 L[ x ( k  1), x ( k ), k  1] 
 L[ x ( k  1), x ( k ), k  1] 



x ( k )

x
(
k
)





x
(
k
)

x
(
k
)
k  k0 



k  k0
T
k f 1

 L[ x ( k ), x ( k  1), k ] L[ x ( k - 1), x ( k ), k - 1] 
 x ( k )
J   

x ( k )
x ( k )
k  k0 



(3.4)
kk f
 L[ x ( k  1), x ( k ), k  1] 
x ( k )
 
x ( k )


k  k0
离散欧拉方程
横截条件
(3.5)
由于δx (k)任意,于是极值存在的必要条件为:
k k f
 L[ x( k  1), x( k ), k  1] 
L[ x(k ), x(k  1), k ] L[ x(k  1), x(k ), k  1]
x( k )

 0 
x(k )
x(k )
x(k )


k  k0
NWPU
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
3. 离散系统的极小值原理
3.2 离散最优控制问题的提法
设离散系统的状态方程为:
x ( k  1)  f [ x ( k ), u ( k ), k ]
( k  0 ,1, 2 ,  , N  1)
其中f是连续可微的n维向量函数,x(k)为n维的状态向量序列,u(k)为m
维控制向量序列。
求最优控制向量序列{u(k)},使系统在各种约束下,使系统由初态
x(0)转移到终态x(N)时,目标函数
N 1
J   [ x ( N ), N ] 

L [ x ( k ), u ( k ), k ]
k 0
取极小值。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
3.3 离散最优控制问题的极小值原理
证明:引入拉格朗日乘子函数 λ(k+1) 和向量v ,则可构造无约束增广泛函
N 1
T
J a  [ x( N ), N ]  v G[ x( N ), N ]   { L[ x( k ), u(k ), k ]  T ( k  1){ f [ x( k ), u( k ), k ]  x( k  1)}}
k 0
引入离散哈密尔顿函数
H [ x ( k ), u ( k ),  ( k  1), k ]  L[ x ( k ), u ( k ), k ]   T ( k  1) f [ x ( k ), u ( k ), k ]
N 1
N 1
T
J a   [ x ( N ), N ]  v G [ x ( N ), N ]   H [ x ( k ), u ( k ),  ( k  1), k ]   T ( k  1) x ( k  1)
k 0
N 1

N 1
N
T
( k  1) x ( k  1) 
k 0
k 0

T
(m ) x(m ) 
m 1

T
( k ) x ( k )  T ( k ) x ( k )
k 0
kN
k 0
(3.7)
(3.6)
离散分部积分
N 1
T
J a  [ x( N ), N ]  v G[ x( N ), N ]   { H [ x( k ), u( k ),  ( k  1), k ]  T ( k ) x( k )}  T ( k ) x( k )
k 0
T
kN
k 0
N 1
 

 H
 (3.8)
G T
H T
T
 Ja  
(
) v   ( N )  x( N )  [
  (k)]  x(k)  [
]  u(k)
u(k)
k 0  x(k)
 x( N ) x( N )

 (3.9)
令  J a  0可得u(k)无约束时J取极值的必要条件为
H [ x ( k ), u( k ),  ( k  1), k ]
0
 H [ x ( k ), u( k ),  ( k  1), k ] 控制方程:
 u( k )
x ( k  1) 
 ( k  1)
正则方程:
横截条件:
 H [ x ( k ), u( k ),  ( k  1), k ]
 [ x ( N ), N ]
 G [ x ( N ), N ] T
 (k ) 
 (N ) 
(
) v
NWPU
x ( k )
x ( N )
x ( N )
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
3. 离散系统的极小值原理
3.3 离散系统极小值原理
定理3-3 设离散系统的状态方程为:
x ( k  1)  f [ x ( k ), u ( k ), k ]
( k  0 ,1, 2 ,  , N  1)
(1)最优状态向量序列x*(k)和最优伴随向量
序列λ*(k)满足正则方程:
H [ x ( k ), u( k ),  ( k  1), k ]
x ( k  1) 
 ( k  1)
H [ x ( k ), u( k ),  ( k  1), k ]
 (k ) 
x ( k )
控制向量u(k)有不等式约束:u(k)∈ 其中,离散哈密尔顿函数为
H [ x ( k ), u ( k ),  ( k  1), k ]  L[ x ( k ), u ( k ), k ]
Ω,Ω为容许控制域,则为把状态x(k)
自始端状态
  T ( k  1) f [ x ( k ), u ( k ), k ]
x(0)=x0
(2) 边界条件
x ( 0 )  x 0 G [ x ( N ), N ]  0
转移到满足终端边界条件
(3) 横截条件
G [x(N),N]=0
的终端状态,并使性能指标
N 1
J  [ x( N ), N ]   L[ x(k ), u(k ), k ]
k 0
取极小值,以实现最优控制的必要条
件如下:
(N ) 
[ x ( N ), N ] G[ x ( N ), N ] T
(
) v
x ( N )
x ( N )
(4)离散哈密尔顿函数对最优控制u*(k)取极
小值,即
H( x*(k), u*(k), λ(k 1), k)  min H[ x*(k), u(k), λ(k 1), k]
u
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
连续极小值原理
系统
性能指标
极值问题
离散极小值原理
x ( t )  f [ x ( t ), u( t ), t ], x ( t 0 )  x0
J   [ x ( t f ), t f ] 

x ( k  1 )  f [ x ( k ), u ( k ), k ]
x (0)  x 0
( k  0 ,1 , 2 ,  , N  1 )
N 1
t
f
t0
J   [ x ( N ), N ] 
L [ x ( t ), u ( t ), t ]dt

L [ x ( k ), u ( k ), k ]
k0
求 u * ( k ), k  0 ,1, 2 ,  , N  1, 使 J  min
求u* ( t ), 使J  min
哈密尔顿
函数
H ( x, u, , t)  L( x, u, t)
H ( k )  L[ x ( k ), u ( k ), k ]   T ( k  1) f [ x ( k ), u ( k ), k ]
 T f ( x , u, t )
( k  0 ,1, 2 ,  , N  1)
正则方程
x 
极值条件
H

  
控制无
约束
控制有
约束
H
x
x ( k  1) 
H (k )
 0 , k  0 ,1 , 2 ,  , N  1
u(k )
H
0
u
H [ x*, u*,  *, t]
H [ x * ( k ), u * ( k ),  ( k  1), k ]
 m in H [ x * , u ,  * , t ]
 m in H [ x * ( k ), u ( k ),  ( k  1), k ]


横截条件
(终端时间
给定,终端
约束)
 (t f ) 
H ( k )
H ( k )
,  (k ) 
, k  0 ,1, 2 ,  , N  1
  ( k  1)
x ( k )
[ x ( t f ), t f ]
x ( t f )
(
G[ x ( t f ), t f ]
x ( t f )
)T v
 (N ) 
 [ x ( N ), N ]
 G [ x ( N ), N ] T
(
) v
x ( N )
x ( N )
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
3. 离散系统的极小值原理 由横截条件:  (3)   [ x ( N ), N ]  0
x ( N )
例4 设离散状态方程及边界条件为 所以
1

x(0)  x0
u
(0)


 (1)
x ( k  1)  x ( k )  u( k )


(2)

2
x
(2)
2



求最优控制序列使性能指标
1

 (1)  2[ x (1)  x (2)]
u
(1)


 (2)

2

2
 (0)  2[ x (0)  x (1)  x (2)] 
J   [ x 2 ( k )  u 2 ( k )]
1

k 0
u
(2)


 (3)  0
 u ( 0 )   x (1)  x ( 2 ) 
2

取极小值,并求出最优曲线序列.
 u (1)   x ( 2 )
1
解:本例为N=3,x(3)自由,控制
2
x
(1)

[ x(0)  x(2)]
 u( 2 )  0

x
(1)

x (0)

2

无约束的离散最优控制问题。

5

1

由状态方
构造离散哈密尔顿函数:
1

x(2)  x(1)
x
(2)

x (1)

2
2
2

2
程可得
H (k )  x (k )  u (k )

x(3)  x(2)
 x (3)  x (2)
利用初值,可得
  ( k  1)[ x ( k )  u ( k )]


2
 *

3
由协态方程:
 *
 x (1)  5 x0
H ( k )
u (0)   5 x0

 (k ) 
 2 x ( k )   ( k  1) 
*
2
1

x (k )
由极值条件:
H (k )
 2 u ( k )   ( k  1)  0
u( k )
*
J  1.6 x0
1
 *
 x (2)  x0
5
u (1)   x0

5
 *
1
 *
u (2)  0
 x (3)  5 x0
NWPU
 NORTHWESTERN POLYTECHNICAL

UNIVERSITY

最优控制
3. 离散系统的极小值原理
2
J
 [3u( k )  2.5( x ( k )  u( k ))]
k 0
2
例5 设有若干台同样的机器,每
  [ 2 .5 x ( k )  0 .5 u( k )]
台机器可以做两种工作,如果用
k 0
于做第一种工作,每年每台可获 问题是求u*(0),u*(1),u*(2)满足约束条件
利3万元,机器的损坏率为2/3; 0≤u(k) ≤ x(k),并使J最大。
如果用于做第二种工作,每年每
构造离散哈密尔顿函数:
台可获利2.5万元,机器的损坏率
2
1
H ( k )  2.5 x ( k )  0.5 u( k )   ( k  1)[ x ( k )  u( k )]
为1/3。现考虑3年的生产周期,
3
3
试确定如何安排生产计划可获得  2.5 x ( k )  2  ( k  1) x ( k )  [0.5  1  ( k  1)]u( k )
3
3
最大利润。
由定理3-3必要条件得到:
解:设第k年可用机器台数为x(k),
1

x
(
k
),
0.5

 ( k  1)  0
第k年分配做第一种工作的机器

*
3
u (k )  
为u(k)台,显然有约束条件:
前两年用全部机
1
 0,
0.5


(
k

1
)

0
器做第二种工作,
0≤u(k) ≤ x(k)
3

第三年将剩余机
协态方程和横截条件为
器做第一种工作.
描述该系统的状态方程为:
2
1
2
x( k  1)  u( k )  [ x( k )  u( k )]
3
3
2
1
 x( k )  u( k )
3
3
性能指标为:
 ( k )  2.5 
3
 ( k  1),  ( 3)  0
12.5
,  ( 2 )  2.5
3
u* (0)  0, u* (1)  0, u* ( 2)  x( 2)
 (1) 
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4. 极小值原理的应用
4.1 时间最优控制
时间最优控制问题:
如果系统的性能指标是系统由初始状态转移到目标集的运动时间,则使
转移时间为最短的控制称为时间最优控制(最速控制)。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4. 极小值原理的应用
4.1 时间最优控制

一类非线性系统的时间最优控制
最短时间控制问题的提法:
设受控系统状态方程为
应用极小值原理,系统的哈密尔顿函数为
H [ x ( t ),  ( t ), u( t ), t ]  1  T ( f  Bu)
在使J最小以实现最优控制的必要条件中
,侧重分析极值条件
1  (* )T ( f  Bu* )  min {1  (* )T ( f  Bu)}
u j ( t ) 1
(3.10)
x (t )  f [ x(t ), t ]  B[ x(t ), t ]u(t ) x( t 0 )  x0 (* )T B[ x * ( t ), t ]u* ( t )  min {(* )T B[ x * ( t ), t ]u( t )}
u j ( t ) 1
终端约束条件为
将上式中的矩阵表达式展开成分量形式
G[ x ( t f ), t f ]  0
寻求m维有界闭集中的最优控制u*(t),满
足不等式约束

*
1
*
...
2
q* j
u j ( t )  1 ( j  1,2,..., m )
m
 b11
b
 *n  21


 b n1

b12
...
b1m   u1 
b22 ... b2 m   u 2 
  ... 
......
 
bn 2 ... bnm   u m 
n
*
使系统从已知初始状态x(t0)转移到目标集   u j { bij  i }
中某一状态x(tf)时,如下目标泛函取极小
值,其中tf未知
j 1
i 1
则极值条件可写为:
m
tf
J   dt  t f  t 0
t0
m
* *
j j
*
u
q

min
u
q

 j j
j 1
u j 1
j 1
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
u*j ( t )
4. 极小值原理的应用
q *j ( t )
4.1 时间最优控制
m
u
j 1
m
*
j
*
j
q  min
u j 1
由于q*j是确定的,故使
优控制为
m
u
j
q *j
j 1
u q
j
*
j
取极小值的最
j 1
(a)
1 q*j  0
u*j  - sgn[q*j ]  
*

1
q
0

j
根据q*j是否为零,将系统分为两种情形:

u*j ( t )
q *j ( t )
奇异区
平凡最短时间控制系统
在区间[t0, tf]内, 存在时间可数集合
t  j  { t1 j , t 2 j ,  }  [ t 0 , t f ], j  1, 2 ,  , m
使有
t  t j
 0,
q *j  
, j  1, 2 ,  , m
非零
t

t
j

最优控制分量为分段常值函数,这种控
制规律称为Bang-Bang控制律。

(b)
图3-5
奇异(非平凡)最短时间控制系统
在区间[t0, tf]内,至少存在一个子区间[t1,
t2]使得至少有一个函数q*j(t)=0。
不表示最优控制不存在,而是此时需要
采用奇异最优控制方法求解。 NWPU
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
4. 极小值原理的应用
4.1 时间最优控制

系统平凡的充要条件:当且仅当
m个矩阵

G j  [ b j , Ab j , A2 b j ,..., An1b j ]
线性定常系统的时间最优控制
中,全部为非奇异矩阵时,系统是平
凡的。(至少有一个为奇异矩阵时,
x (t )  Ax(t )  Bu(t )
系统是奇异的)
控制约束为:u j (t )  1 ( j  1,2,..., m)  系统最优解存在的条件:常数矩
假设系统完全可控,求满足控制约束 阵A的特征值全部具有非正的实部。
的u(t),使系统从已知状态x(t0) =x0转移  最优解唯一性定理:系统是平凡
的且最短时间控制存在,则最短时
到状态空间原点x(tf)=0,并使性能指
间控制必然是唯一的。
标
问题 3-2 设线性定常系统
tf
J   dt  t f  t 0
t0
为极小值。
对于线性定常系统的最短时间控制
问题,经过理论推导和证明,可得
如下重要结论:
开关次数定理:系统是平凡的且
最短时间控制存在,则最优控制u*
的任一分量u*j(t)的切换次数最多为
n-1次。(n为系统维数)

注:上述结论1、3、4的证明可参阅
胡寿松一书P90-94.
NWPU
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
4. 极小值原理的应用
4.1 时间最优控制

系统平凡的充要条件:当且仅当
m个矩阵

G j  [b j , Ab j , A2 b j ,..., A n 1b j ]
线性定常系统的时间最优控制
例1 设系统的状态方程
x  Ax  Bu
0 1
0
A
 B  1 
0
0


 
 x10 
边界条件: x (0)    x (t f )  0
 x20 
控制变量u(t)的不等式约束 |u(t)|≤1
性能指标
tf
J   dt  t f
中,全部为非奇异矩阵时,系统是
平凡的。(至少有一个为奇异矩阵
时,系统是奇异的)
 系统最优解存在的条件:常数矩
阵A的特征值全部具有非正的实部。
最优解唯一性定理:系统是平凡
的且最短时间控制存在,则最短时
间控制必然是唯一的。

0
求最优控制u*(t),使 J 为极小.
由上节重要结论可知:
(1) 本系统为平凡最短时间控制系统
(2) 其时间最优控制必然存在且唯一
(3) 时间最优控制u(t)至多切换一次
开关次数定理:系统是平凡的且
最短时间控制存在,则最优控制u*
的任一分量u*j(t)的切换次数最多为
n-1次。(n为系统维数)

NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4. 极小值原理的应用
4.1 时间最优控制

线性定常系统的时间最优控制
例1 设系统的状态方程
x  Ax  Bu
0
A  
0
1
0 
0
B   
1 
最优控制
 1 2 (t )  0
u * ( t )   sgn{  2 ( t )}  
 1 2 (t )  0
因为协态向量λ(t)为非零向量,故λ10 与
λ20不能同时为零。根据λ10与λ20的不同组
合,λ2(t)与u*(t)的可能形状如下:
 x 10 
边界条件: x ( 0 )  
 x(t f )  0
x
 20 
控制变量u(t)的不等式约束 |u(t)|≤1
性能指标
t
f
J   dt  t f
0
求最优控制u*(t),使 J 为极小。
解:构造哈密尔顿函数
H  1  1 x 2   2 u
由协态方程
H


(
t
)


0
 1
x1

H
2 ( t )  
  1

x 2
 1 ( t )  1 0

  2 ( t )   1 0 t   20
图3-6
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
•
   {( x1 , x 2 ) | x1  0.5 x 22 , x 2  0}
采用相平面法继续分析
当u*(t)=1时,由状态方程
 x 2 (t )  u(t )  1

 x1(t )  x2 (t )
 x2 (t )  t  x20

2
 x1(t )  0.5t  x20t  x10
2
2
20
x1  0.5 x 2  ( x10  0.5 x )
x1  0.5x22  d2
x1  0.5x22  d1
*
满足终端状态要求的相轨迹为 (3.11) u (t )  1
   {( x1 , x 2 ) | x1  0.5 x 22 , x 2  0}
u* (t )  1
当u*(t)=-1时,由状态方程
 x 2 (t )  u(t )  -1  x (t )  -t  x
2
20


2
 x1(t )  x2 (t )
 x1(t )  -0.5t  x20t  x10
x1  -0.5 x 2 2  ( x10  0.5 x 202 ) (3.12)
   {( x1 , x 2 ) | x1  0.5 x 22 , x 2  0}
图3-7

满足终端状态的相轨迹为
u* (t )  1
R
 -  {( x1 , x 2 ) | x1  -0.5 x 22 , x 2  0}
曲线γ+ 和γ-组合成曲线γ,
       {(x1, x2 ) | x1  0.5x2 x2 }
它将相平面分为 R+ 和 R-两个区域:
R  {( x1 , x 2 ) | x1  -0.5 x 2 x 2 }
R-  {( x1 , x 2 ) | x1  -0.5 x 2 x 2 }
R
u* ( t )  1

图3-8
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4. 极小值原理的应用
按照初态(x10, x20)所处的位置可得到下列的 进一步综合为:
最优控制规律
 1
u* (t )  
 1

 ( x1 , x 2 )  
 ( x1 , x 2 )  


 R
 R
u* (t )  1
R
R
u* ( t )  1

图3-8
(1) (x10, x20)在γ_上
u*(t)={-1}
(2) (x10, x20)在γ+上
u*(t)={+1}
(3) (x10, x20)在R_内
u*(t)={-1,+1}
(4) (x10, x20)在R+内
u*(t)={+1,-1}
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4. 极小值原理的应用
 x1  0.5t 2  a2t  a1
 x1  x2
 

*

x

u
u (t )  1  2
 x2  t  a 2
代入x1(tf)=0, x2(tf)=0,解出
C O
求解状态转移最短时间tf*:(以x10=1,x20=1
为例说明)
a1  0.5t 2f , a 2   t f
 x1  0.5t 2  t f t  0.5t 2f

 x2  t  t f
在C点出,上式可写为
2
 x1 ( t AC )  0.5t AC
 t f t AC  0.5t 2f

 x 2 ( t AC )  t AC  t f
t *f  t AC  t CO
图3-9
t AC  2.22, t *f  3.44
 x1  0.5t  t  1
 x1  x2
 

u* (t )  1  x 2  u
 x2   t  1
AC
2
到达C点时,t=tAC(切换时间),则有
 x1 ( t AC )  0.5t AC 2  t AC  1

 x 2 ( t AC )   t AC  1
(3.14)
(3.13)
对任意一点(x10, x20)转移到坐标原点所需
的最短时间tf*可用下式计算:
 x  2x2  4x
( x10 , x20 )  R
20
20
10


t *f   x20
( x10 , x20 )  
 x  2 x 2  4 x
( x10 , x20 )  R
 20
20
10
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
第四章 动态规划
本章主要内容:
1 多级决策过程和最优性原理
2 离散系统的动态规划
3 连续系统的动态规划
4 动态规划与极小值原理和变分法
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.1. 多级决策过程和最优性原理
 动态规划是美国学者贝尔曼于20世纪50年代为解决多级决
策过程而提出的。
 1957年他出版的名著Dynamic Programming,是该领域的
第一本著作。
 从本质上讲是一种非线性规划方法,其核心是贝尔曼最优
性原理,它首先将一个多级(步)决策问题转化为一系列单级
(步)问题, 然后从最后一级(步)状态开始逆向递推到初始级
(步)状态,从而使决策过程连续的转移。
 重要性:解决线性时间离散系统二次性能指标最优控制问
题特别有效;连续形式是一种可供选择的求解最优控制问题
的方法,还揭示了动态规划与变分法、极小值原理之间的关
系。
 它与极小值原理一起称为现代变分法。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.1. 多级决策过程和最优性原理
4.1.1 多级决策过程
所谓多级决策过程,是指将一个过程按时间或空间顺序分为若干级(步)
,然后给每一级(步)作出“决策”(在控制过程中令每走一步所要决定的
控制步骤称之为决策),以使整个过程取得最优的效果,即多次的决策最
终要构成一个总的最优控制策略(最优控制方案)。
多级决策过程示意图
说明:
1)全部“决策”总体,称为“策略”。
2)在多级决策问题中,决策依赖于当前的状态,又随即引起状态
的转移,一个决策序列是在变化的状态中产生出来的,故有“动态”的
含义。因此,把处理它的方法称为动态规划方法。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.1. 多级决策过程和最优性原理
4.1.1 多级决策过程
最短路线问题是多级决策的一个典型例子。
9
B1
1
C1
4
A
5
3
C2
B3
第一级
7
第二级
C3
D2
6
4
1
E1
1
6
4
5
4
2
8
B2
4
5
5
3
D1
9
2
E2
7
4
2
第三级
F
5
D3
第四级
第五级
需确定一条最优的汽车行驶路线,使从A站到F站的路程最短。
解法一:穷举法,列出所有可能的路线,计算各路线的路程,通过对比
后得到最短线路。38条可能路线,每条计算4次加法,共需152次,比较
37次,最短路线为AB2C1D1E2F,最短距离为14。
缺点:计算量大,容易出错。
NWPU
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
4.1. 多级决策过程和最优性原理
4.1.1 多级决策过程
解法二:动态规划法,从终点开始,按路程最短为目标,逐级向前逆推,
依次计算出各站至终点站的最短距离,据此决策出每一站的最优路线。
设N为决策过程级数;n为从某点到终点之间的级数;x表示任一级所处位
置(当前所处点的位置),称为状态变量;Sn(x)为决策变量,表示当状态x
以后还有n级时,所选取的下一点;Jn(x)表示x到终点的n级过程的最短距
离;d(x, Sn)表示x点到Sn的距离。
9
B1
1
C1
4
A
5
3
C2
B3
第一级
7
第二级
C3
D2
6
4
1
E1
1
6
4
5
4
2
8
B2
4
5
5
3
D1
9
2
E2
7
4
2
第三级
F
5
D3
第四级
第五级
动态规划法,逆序计算法(n增加方向)
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.1. 多级决策过程和最优性原理 d ( A , B )  J ( B ) 
 3  14 




(1) 当n=1时
J 5 ( A )  min  d ( A , B 2 )  J 4 ( B 2 )   min  5  9   14 S 5 ( A)  B2
 d ( A , B3 )  J 4 ( B3 ) 
 4  12 
J1(E1)=1,J1(E2)=2


将E(E1,E2)到F的距离标在图上,并用 最短路线为 A  B  C  D  E  F 最短距离为14
设N为决策过程级数;n为从某点到终点之间的级数;
括号标注决策变量。
x表示任一级所处位置(当前所处点的位置) ,称为状
(2) 当n=2时
1
4
2
1
1
1
2
态变量;Sn(x)为决策变量,表示当状态x以后还有n
 d ( D1 , E1 )  J1 ( E1 ) 
 4  1
J 2 ( D1 )  min
  min
  4 级时,所选取的下一点;J (x)表示x到终点的n级过
n
2  2
d ( D1 , E2 )  J1 ( E2 )
程的最短距离;d(x, Sn)表示x点到Sn的距离。
S 2 ( D1 )  E 2
n=4
n=3
n=5
4(E2) n=2
14(C1) 5(D1)
同理J2 ( D2 )  7, S2 ( D2 )  E1, J2 ( D3 )  7, S2 ( D3 )  E2
(3) 当n=3时
 d (C1 , D1 )  J 2 ( D1 ) 
1  4 
J 3 (C1 )  min 
  min 
5
5  7 
 d (C1 , D2 )  J 2 ( D2 )
S3 (C1 )  D1
B1
14(B2) 9(C1)4
 d ( B1 , C1 )  J 3 (C1 ) 
95
J 4 ( B1 )  min 
  min 
  14
5  11
d ( B1 , C 2 )  J 3 (C 2 )
同理 J4 (B2 ) 11, S4 (B2 )  C1, J4 (B3 ) 12, S4 (B3 )  C2
(5) 当n=5时
1
C1
5
11(D28)
3
B2
4
6
C2
5
4
4
1
B3
12(C2)
7
D1
5
5
3
同理 J3(C2 )  11, S3(C2 )  D2 , J3(C3 )  8, S3(C3 )  D1
A
(4) 当n=4时
S 4 ( B1 )  C1
9
2
8(D1)
E1
7(E16)
2
E2
7
2
1
D2 9
4
C3
4
n=1
1(F)
5
D3
2(F)
7(E2)
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
F
最优控制
4.1. 多级决策过程和最优性原理  d ( A , B )  J ( B ) 
 3  14 




(1) 当n=1时
J 5 ( A )  min  d ( A , B 2 )  J 4 ( B 2 )   min  5  9   14 S ( A)  B
 d ( A , B3 )  J 4 ( B3 ) 
 4  12 
J1(E1)=1,J1(E2)=2


将E(E1,E2)到F的距离标在图上,并用 最短路线为 A  B  C  D  E  F 最短距离为14。
括号标注决策变量。
动态规划法的优点:
(2) 当n=2时
1
4
1
5
2
 d ( D1 , E1 )  J1 ( E1 ) 
 4  1
J 2 ( D1 )  min 
  min 
4
 2  2
d ( D1 , E 2 )  J1 ( E 2 )
S 2 ( D1 )  E 2
同理J2 ( D2 )  7, S2 ( D2 )  E1, J2 ( D3 )  7, S2 ( D3 )  E2
(3) 当n=3时
 d (C1 , D1 )  J 2 ( D1 ) 
1  4 
J 3 (C1 )  min 
  min 
5
5  7 
 d (C1 , D2 )  J 2 ( D2 )
S3 (C1 )  D1
同理 J3(C2 )  11, S3(C2 )  D2 , J3(C3 )  8, S3(C3 )  D1
(4) 当n=4时
1
1
2
只用加法24次,比较14次,且级数N越大,
计算量减少越多。
求解时采用的递推方程一般形式为:
J n ( x )  mind  x , S n ( x )  J n 1 S n ( x )
Sn ( x )
J1 ( x )  d ( x , F )
(n=2,…, N)
在多级决策问题中,这种递推思想的
核心是贝尔曼提出的最优性原理。
 d ( B1 , C1 )  J 3 (C1 ) 
95
J 4 ( B1 )  min 
  min 
  14
5  11
d ( B1 , C 2 )  J 3 (C 2 )
S 4 ( B1 )  C1
同理 J4(B2 )  11, S4(B2 )  C1, J4 (B3 )  8, S4 (B3 )  C2
(5) 当n=5时
2
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.1. 多级决策过程和最优性原理
4.1.2 最优性原理
最优性原理
多级决策过程的最优策略具有这样的性质:不论初始状态和初始决策如
何,当把其中的任何一级和状态再作为初始级和初始状态时,其余的决
策对此必定也是一个最优策略。
具 体 说 , 若 有 一 个 初 态 为 x(0) 的 N 级 决 策 过 程 , 其 最 优 策 略 为
{u(0),u(1),…,u(N-1)},那么,对于以x(1)为初态的N-1级决策的过程来说,
决策集合{u(1),…,u(N-1)}必定为最优策略。
9
B1
1
C1
4
A
5
3
C2
B3
7
C3
D2
6
4
1
E1
1
6
4
5
4
2
8
B2
4
5
5
3
D1
9
2
E2
7
4
2
F
5
D3
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.1. 多级决策过程和最优性原理
4.1.2 最优性原理
最优性原理
对于连续系统
若对于初始时刻t0和初始状态x(t0), u*(t)和x*(t)是所论系统的最优
控制和最优轨线,则对于时刻 t1(t1>t0)和相应状态x(t1)来说,u*(t)
和x*(t),t∈[t1,tf],仍是所论系统往后的最优控制和最优轨线。
x
xt f
x1
x* ( t )
x0
t0
t1
tf
t
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.1. 离散系统的动态规划
4.1.2 动态规划的基本递推方程
问题4-1 设N级决策过程如图所示,其动态方程为:
x ( k  1)  f [ x ( k ), u( k ), k ],
x ( 0)  x 0
求容许控制序列u*(k), k=0,1,…, N-1,使如下性能指标(代价函数)取极小值
N 1
J N [ x (0)]   L[ x ( k ), u( k ), k ]
k 0
为了更加明确起见,我们将初始状态x(0)包含在性能指标J的变量里,
对于多级决策问题4-1而言,由初态x(0)开始,采用控制序列u={u(0),
u(1),…, u(N-1)}所导致的性能指标,可表示为J[x(0),u]。
一 般 情 况 下 , 始 于 任 意 状 态 x(k) 的 代 价 可 记 为 J[x(k),u] , 其 中
u={u(k),u(k+1),…,u(N-1)},J[x(k),u]表示由状态x(k)到过程终点为止,由
任意控制序列u所导致的代价。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.2. 离散系统的动态规划
4.2.1 动态规划的基本递推方程
问题4-1 设N级决策过程如图所示,其动态方程为:
x ( k  1)  f [ x ( k ), u( k ), k ],
x ( 0)  x 0
求容许控制序列u*(k), k=0,1,…, N-1,使如下性能指标(代价函数)取极小值
N 1
J N [ x (0)]   L[ x ( k ), u( k ), k ]
k 0
因此,始自状态x(k)的最优性能指标为:
J*[x(k),u]= J[x(k),u*]
其中u*表示最优策略。对于给定问题,当x(k)固定时,u*是确定的。因
此最优性能指标可记为J*[x(k)]。
由于以x(k)为初始状态,距离决策终端还有N-k级,因此这里用符号
JN-k*[x(k)]表示初始状态为x(k),距离决策终端还有N-k级的最优性能指
标。
NWPU
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
4.2. 离散系统的动态规划
4.2.1 动态规划的基本递推方程
问题4-1 设N级决策过程,其动态方程为:
x ( k  1)  f [ x ( k ), u( k ), k ],
x ( 0)  x 0
求容许控制序列u*(k), k=0,1,…, N-1,使如下性能指标(代价函数)取极小值
N 1
J N [ x (0)]   L[ x ( k ), u( k ), k ]
k 0
我们考察以x(k)为初态的最优决策,此时
J
*
N k

J
 N 1

[ x ( k )] 
min
L
[
x
(
j
),
u
(
j
),
j
]


{u ( k ), u ( k 1),, u ( N 1)}
j

k


N 1
min
{L[ x(k ), u(k ), k ] 
{u( k ),u( k 1),,u( N 1)}
*
N k
[ x(k)]  min
min
 L[ x( j), u( j ), j]}
j k 1
{L[ x(k), u(k), k] 
u( k ) {u( k 1),,u( N 1)}
动态规划基本方程
或贝尔曼泛函方程
(4-1)
N 1
 L[ x( j), u( j), j]}
(4-2)
j k1
N 1
J
*
N k
[ x( k )]  min{L[ x( k ), u( k ), k ] 
u( k )
min
{  L[ x( j ), u( j ), j ]}} (4-3)
{u( k 1),,u( N 1)}
j k 1
J N*  k [ x ( k )]  min{L[ x ( k ), u( k ), k ]  J N*  ( k 1) [ x ( k  1)]}
u( k )
(4-4)
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.2.1 动态规划的基本递推方程
问题4-1 设N级决策过程,其动态方程为:
x ( k  1)  f [ x ( k ), u( k ), k ],
x ( 0)  x 0
求容许控制序列u*(k), k=0,1,…, N-1,使如下性能指标(代价函数)取极小值
N 1
J N [ x (0)]   L[ x ( k ), u( k ), k ]
k 0
由式(4-4),令k=N-1,得(4-5)式
J1* [ x ( N  1)]  min {L[ x ( N  1), u( N  1), N  1]  J 0* [ x ( N )]}
u ( N 1)
(4-5)
式中J*0[x(N)]表示代价函数J中的未值项。对于问题4-1代价函数中无未值
项,应取J*0 [x(N)]=0。于是,式(4-5)可写为(4-6)式
(4-6)
J1* [ x ( N  1)]  min {L[ x ( N  1), u( N  1), N  1]}
u ( N 1)
式(4-6)仅是L[x(N-1),u(N-1), N-1]对控制u(N-1)的单级最优化问题,不再是
像 式 (4-1) 那 样 的 多 级 优 化 问 题 , 易 于 求 解 。 求 解 (4-6) 式 得 到 u*(N1)=u*[x(N-1)]和J*1[x(N-1)],然后由递推公式(4-5)式逆向逐级递推,求出
J*2[x(N-2)], …, J*N-1[x(1)], J*N[x(0)]。最后一步的J*N[x(0)]以及得到的最优
策略{u*(0), u*(1), …, u*(N-1)}正是问题4-1要求的解。这种将始自x(0)的待
解问题嵌入到始自x (k)的J*N-k[x(k)]问题之中的方法,称为嵌套原理。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.2.2 离散系统的动态规划
2) 求最优控制u*(k) (k=2,…, N-2)
问题4-2 设非线性离散系统状态方程为 J N* k [ x(k )]  min{L[ x(k ), u(k ), k]  J N* ( k 1)[ x(k  1)]}
u( k )
x ( k  1)  f [ x ( k ), u( k ), k ],
x (0)  x 0
x ( k  1)  f [ x( k ), u( k ), k ]
求容许控制序列u*(k), k=0,1,…, N-1,
u* (k )  u*[ x (k )],J N*  k [ x ( k )]
使如下性能指标(代价函数)取极小值
3) 求最优控制u*(1)
J N* 1[ x(1)]  min{ L[ x(1), u(1),1]  J N* 2[ x(2)]}
N 1
J N [ x( 0)]  [ x ( N ), N ]   L[ x ( k ), u( k ), k ]
u(1)
x ( 2)  f [ x(1), u(1),1]
k 0
根据动态规划的基本递推方程,问题
4-2的求解步骤为:
u* (1)  u*[ x (1)],J N* 1[ x(1)]
J N* k [ x(k )]  min{L[ x(k ), u(k ), k]  J N* ( k 1)[ x(k  1)]}
u( k )
J 0* [ x ( N )]  [ x ( N ), N ]
1) 求最优控制u*(N-1)
J1* [ x( N  1)]  min { L[ x ( N  1), u( N  1), N  1]
u ( N 1)
 J 0* [ x( N )]}
J 0* [ x ( N )]  [ x ( N ), N ]
x ( N )  f [ x ( N  1), u( N  1), N  1]
u* ( N  1)  u*[ x ( N  1)],J1* [ x( N  1)]
4) 求最优控制u*(0)
J N* [ x (0)]  min{L[ x (0), u(0), 0]  J N* 1[ x (1)]}
u (0)
x (1)  f [ x(0), u(0),0]
x ( 0)  x 0
u* (0)  u*[ x (0)],J N* [ x (0)]
对目标函数J*的反向递推,可得u*(k)
与x(k)的关系,利用x(0)=x0,正向递
推可得最优轨线{x*(k)}及最优决策
序列{u*(k)}。
NWPU
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
4.2.2 离散系统的动态规划
例1 设一阶离散系统的状态方程为
x( k  1)  x( k )  u( k ) ( k  0,1, , N  1)
初始条件为x(0),控制变量u不受约束,性
能指标为
1 2
1 N 1 2
J  cx ( N )   u (k )
2
2 k 0
求最优控制u*(k),k=0,1, 及最优轨线x*(k),
k=1,2,使J达极小, 为简便起见,设N=2。
解:从最后一级向前递推
(1) k=1时
1
由 x ( 2)  x (1)  u(1) J *0 [ x( 2)]  cx 2 ( 2) 得
2
J 1
 c x(1)  u(1)  u(1)  0
u(1)
cx(1)
1 x 2 (1)
*
*
u (1)  
,J1 [ x(1)]  c
1 c
2 1 c
(2) k=0时
1 c 2 
1

1
J 2*  x(0)  min u2 (0)  J1*   min u2 (0)  
x (1)
u( 0 ) 2
2 1 c

 u( 0 )  2

1 2
1 c
x(0)  u(0)2
u ( 0)  
2
2 1 c
J 2
c
x(0)  u(0)  0
 u( 0) 
u(0)
1 c
J 2  x ( 0 ) 
解得
cx(0) *
cx2 (0)
u (0)  
, J 2 [ x(0)] 
1  2c
2(1  2c)
*
按正向求出
cx(0) *
(1  c)
*
*
1 2
1 2
1 2
*
u
(
0
)


,
x
(
1
)

x
(
0
)

u
(
0
)

x(0)
J1 [ x(1)]  min{ u (1)  J0 [ x(2)]} min{ u (1)  cx (2)}
1

2
c
1

2
c
u(1) 2
u(1) 2
2
*
1
1
2
 min{ c x(1)  u(1)  u 2 (1)}
u (1) 2
2
1
1
2
J1[ x(1)]  c x(1)  u(1)  u 2 (1)
2
2
u* (1)  
cx(0) *
1
, x (2)  x* (1)  u* (1) 
x(0)
1 2c
1 2c
cx 2 ( 0)
最优性能指标为 J 
2(1  2c )
*
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.2.2 离散系统的动态规划
例2 已知离散系统方程:
(3) k=1时
x ( 2)  0.5 x (1)  0.3u(1)
J 3* [ x (1)]  min {3 x (1)  u(1)  J 2* [ x ( 2)]}
0 u (1)  x (1)
x( k  1)  0.5 x( k )  0.3u( k )
 min {4.8 x (1)  0.08u(1)}
性能指标为
0 u (1) x (1)
3
J  [3 x(k )  u(k )]
u* (1)  0
J *3 [ x (1)]  4.8 x(1)
k 0
约束条件0≤u(k)≤x(k),求最优控制
{u*(0),u*(1), u*(2), u*(3)}使J达极小。
(4) k=0时
x (1)  0.5 x(0)  0.3u(0)
J 4* [ x ( 0)] 
解:本例为N=4级最优决策问题.
(1) k=3时
0 u ( 0 ) x ( 0 )

J1*[ x(3)]  min {3x(3)  u(3)}
min {3 x (0)  u( 0)  J 3* [ x (1)]}
u* ( 0)  0
0u(3) x(3)
min {5.4 x(0)  0.44u(0)}
0 u ( 0 ) x ( 0 )
*
J 4 [ x (0)]  5.4 x(0)
按正向求出
u* (3)  x(3) J * [ x(3)]  2 x(3)
1
u* (0)  0, x* (1)  0.5x(0)  0.3u* (0)  0.5x(0)
(2) k=2时
x(3)  0.5x(2)  0.3u(2)
*
2
J [ x ( 2)] 

*
*
1
min {3 x ( 2)  u( 2)  J [ x (3)]}
0  u ( 2 ) x ( 2 )
min {4 x ( 2)  0.4u( 2)}
0 u ( 2 )  x ( 2 )
*
2
u ( 2)  x ( 2) J [ x ( 2)]  3.6 x ( 2)
u* (1)  0, x* (2)  0.5x* (1)  0.3u* (1)  0.25x(0)
u * (2)  0.25 x(0), x* (3)  0.2 x(0)
u * (3)  0.2 x(0), x * ( 4)  0.16 x(0)
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.3. 连续系统的动态规划
tf
J *  x(t ), t   min{[ x(t f ), t f ]   L[ x( ), u( ), ]d }
(4-7)
t
u[ t , t f ]
将u*(t)的选择过程分为两步:先选择区间[t+△t, t ]
f
问题4-3 设连续时间系统状态方程为: 上的最优控制;再选择区间[t, t+ △t]上的最优控制,
则上式可写为
x ( t )  f [ x ( t ), u( t ), t ] x( t 0 )  x0
t  t
*
n
m


J
x
(
t
),
t

min
min
{
式中x( t )  R , u( t )    R 目标集约束
 L[ x( ), u( ), ]d
u[ t ,t  t ] u[t t ,t f ]
G[ x ( t f ), t f ]  0
[t,tf]上的
控制函数
t
 [ x ( t f ), t f ]  
tf
t  t
L[ x ( ), u( ), ]d } (4-8)
在容许控制域中确定最优控制u*(t),
t  t
使系统由已知初态x0转移到要求的
J * x(t ), t   min { L[ x( ), u( ), ]d
u[ t ,t  t ] t
目标集,且使如下性能指标取极小
tf
J [ x0 , t 0 ]  [ x( t f ), t f ]   L[ x( t ), u( t ), t ]dt
t0
为使问题具有一般性,采用t为
初始时刻,t∈[t0, tf], x(t)为初始状
态,
tf
 min {[ x ( t f ), t f ]  
tf
t  t
u[ t   t , t f ]
L[ x ( ), u( ), ]d }} (4-9)
连续最优性原理:t到tf的过程是最优的,
则从t+△t到tf的后部子过程也使最优的
J *  x(t ),t   min {
u[ t ,t t ]
J[ x(t ), t ]  [ x(t f ), t f ]   L[ x( ), u( ), ]d
t t
t
L[ x( ), u( ), ]d  J *[ x(t  t ), t  t ]}
中值定理
t
(4-10)
t  t
作为前述问题的性能指标进行讨论,  L[ x( ), u( ), ]d=L[ x( t  t ), u( t  t ), t  t ]t
t
其中J[x(t), t]连续,且对x(t)和t有连续一
(4-11)
阶和二阶偏导数。
式中0≤α ≤ 1
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.3. 连续系统的动态规划
J * x(t ), t   min {
u[ t ,t t ]
t t
t
(4-10)
L[ x( ),u( ), ]d  J *[ x(t  t ), t  t ]}
泰勒公式
J *[ x (t  t ), t  t ]  J *  x (t ), t  
J *  x (t ), t 
t
T
 J *  x (t ), t  
t  
 x t  o(t ) (4-12)
x


其中 o( t )表示△t的高阶无穷小量。
将式(4-12)和式(4-11)代入式(4-10),得
T
 J * x(t ), t 
J * x(t ), t 
*
*
J x(t ), t   min {L[ x(t t ), u(t  t ), t  t ]t  J x(t ), t  
t  
 xt  o(t )}
u[ t ,t t ]
t
x


(4-13)
因为J*[x(t),t]与u(t)无关,故可将J*[x(t),t]和
消项和移项,可得

J *  x (t ), t 
t
*
 J 由求最小的括号中移出来,经过
t
T
 J *  x ( t ), t  
t  min {L[ x (t  t ), u(t  t ), t  t ]t  
 x t  o(t )}
u[ t , t t ]
x


(4-14)
两边同除以△t,得
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.3. 连续系统的动态规划
T
 J * x ( t ), t 
J * x ( t ), t 
o( t )


 min { L[ x( t  t ), u( t  t ), t  t ]  
x

}

u[ t , t  t ]
t
x
t


当 t  0 ,得
(4-15)
o( t )
0
t  0
t
lim
J *[ x(t ), t ]
J *[ x(t ), t ] T

 min{L[ x(t ), u(t ), t ]  (
) f [ x(t ), u(t ), t ]}
u
(
t
)
t
x(t )
(4-16)
连续系统动态规划基本方程,哈密尔顿-雅可比方程
其终端边界条件为: J * [ x( t f ), t f ]  [ x( t f ), t f ] 。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.3. 连续系统的动态规划
 J * [ x( t ), t ] 
 (t )  

 x ( t ) 
T
T
问题4-3 设连续时间系统状态方程为:
x ( t )  f [ x( t ), u( t ), t ] x( t 0 )  x0
则哈密尔顿-雅可比方程又可写为
式中 x( t )  R n , u( t )    R m目标集约束
J *[ x(t ), t ]
J *

 min{H[ x(t ), u(t ),
, t ]}
u( t )
t
x
G[ x ( t f ), t f ]  0
在容许控制域中确定最优控制u*(t),使系统由已
知初态x0转移到要求的目标集,且使如下性能指
标取极小
tf
如果u*为最优控制,则
J * [ x ( t ), t ]
J *
*

 { H [ x ( t ), u ( t ),
, t ]}
t
x
J [ x0 , t 0 ]  [ x( t f ), t f ]   L[ x( t ), u( t ), t ]dt
t0
根据哈密尔顿-雅可比方程可确定使性能指标J
为极小的最优控制u*(t)。
J *[ x(t ), t ]
J *[ x(t ), t ] T

 min{L[ x(t ), u(t ), t ]  (
) f [ x(t ), u(t ), t ]}
u( t )
t
x(t )
如果定义哈密尔顿函数为
H[ x(t ), u(t ),  (t ), t ]  L[ x(t ), u(t ), t ]  T f [ x(t ), u(t ), t ]
且令
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.3. 连续系统的动态规划
用动态规划求解连续系统的最优化问题
计算步骤:
(1) 求最优控制的隐式解
若u(t)有约束,令:
J *
J *
H[ x(t ), u (t ),
, t ]  min{H[ x(t ), u(t ),
, t ]}
u( t )
x
x
*
若u(t)无约束,令:
H
0
u
*
可得:u*  u* ( x ,
J
, t)
x
(2) 求最优性能指标
将u*代入哈密尔顿函数消去u*(t),得
J *
J *
*
H [ x (t ), u (t ),
, t ]  H [ x (t ),
, t]
x
x
*
代入哈密尔顿-雅可比方程,得
J *
J *
*

 H ( x,
, t)
t
x
其边界条件为:
J * [ x ( t f ), t f ]  [ x( t f ), t f ]
J * [ x( t ), t ]
u*  u* ( x , t )
(3) 求最优控制显式解
(4) 求最优轨线
将u*代入状态方程并利用初始条件
x(t0)=x0,可求出x*(t)。
[备注]
 除了线性二次型问题(对于线性系
统,若取状态变量与控制变量的二次
型函数的积分作为性能指标),哈密
尔顿雅可比方程的求解异常困难;
对于线性二次型问题,最优性能指
标可设为如下二次型函数:
J * [ x( t ), t ] 
1 T
x ( t ) P ( t ) x( t )
2
其中P(t)为待定的对称非负或正定矩
阵。
NWPU
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
4.3. 连续系统的动态规划
例3 设系统的状态方程为
J *
J *
1  J * 
2


 2 x1 
x 2  
t
 x1
2   x 2 
a
2
a  x 
12
设 J *  1 ( x1 , x 2 ) 11
  1 
2
 a12 a 22   x 2 
初始状态 x1 (0)  1, x2 (0)  0, u(t )不受约束,
1
1
2

a
x

a
x
x

a 22 x 22
性能指标为
11 1
12 1 2
x 1  x 2 ,
J 


0
x 2  u
2
1
( 2 x  u 2 )dt
2
2
1
2
因为J*与t无关,所以
J *
 0
t
求最优控制u*(t),使性能指标J为最小。
解:哈密尔顿函数为
胡寿松,p150
*
H ( x , u,
J
, t )  L  T f
x
1 2  J *
 2x  u  
2
 x1
2
1
J *   x2 

x2   u 
1 2 J *
J *
2
 2 x1  u 
x2 (t ) 
u(t )
2
x1
x2
H
J *
 u
0
u
x 2
由哈密尔顿-雅可比方程
J *
u 
x 2
*
*
J
1  J *
2
2 x1 
x 2  
 x1
2  x 2
J *
 a 11 x1  a12 x 2
 x1
2

  0 (4-17)

J *
 a 12 x1  a 22 x 2
x 2
代入(4-17)式,并经整理得
2
(2  0.5a122 )x12  (a11  a12a22)x1x2  (a12  0.5a22
)x22  0
比较两端系数,解得(取正根)
a11  4, a12  2, a 22  2
从而 J * ( x )  2 x12  2 x1 x 2  x 22
J *
u (t )  
 2 x1  2 x 2
NWPU
x 2
NORTHWESTERN POLYTECHNICAL
UNIVERSITY
*
最优控制
4.4. 动态规划与极小值原理和变分法
•变分法、极小值原理和动态规划,都是研究极值控制问题
的数学方法,因此必然存在某种内在的联系。
•变分法研究控制属于开集的最优控制问题,通过欧拉方程和
横截条件,可以确定不同情况下的极值控制。
•古典变分法对于处理闭集约束是无能为力的,因而导致极小
值原理的出现。而后者是一种现代变分法。两种方法都得到
了由一组常微分方程所表示的必要条件。
•与此同时,贝尔曼所提出的动态规划法可以解决比常微分方
程所描述的更一般性的最优化问题,其应用范围更广。它从
另一个方面发展了变分法。
•对于连续系统的最优化问题,后者给出一个偏微分方程。虽
然,一般地说,解偏微分方程比解常微分方程更难,但结果
是充分条件。
NWPU
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
4.4. 动态规划与极小值原理和变分法
下面我们来看动态规划与变分法的关系。
变分法基本问题:确定x*(t),使
J [ x ( t )] 

tf
t0
L [ x ( t ), x ( t ), t ] d t
取极小值,式中t0,tf固定。
若令 ̇ ( )=u( ),则变分问题转化为,要求最优控制u*(t)使
性能指标
J [ x ( t )] 

tf
t0
L [ x ( t ), u ( t ), t ] d t
取极小值,其中u( )不受约束。
这时变分法的所有结果都可由动态规划导出。可以分为三
种情况来讨论:
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.4. 动态规划与极小值原理和变分法
(1) 始端和终端固定,即x(t0)=x0,x(tf)=xf。
假定连续动态规划的全部条件成立,则哈密尔顿-雅可比方
程为
J * [ x ( t ), t ]
J *
  min{ L[ x ( t ), u( t ), t ] 
u}
u( t )
t
x
(4.18)
由于J*[x,t]与u无关,(4-18)式可写为(4-19)式
J *
J *
min{ L[ x ( t ), u( t ), t ] 
u+
}=0
u( t )
x
t
(4.19)
令哈密尔顿函数
J *
H  L[ x ( t ), u( t ), t ] 
u
x
则(4-19)式可简写为
J *
min{ H +
}=0
u( t )
t
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.4. 动态规划与极小值原理和变分法
(1) 始端和终端固定,即x(t0)=x0,x(tf)=xf。
因为u(t)无约束,所以可得(4-20)式
H L J *


=0
u u x
推出
J *
L
=
x
u
(4.20)
(4.21)
(4-20)式两边再对t求偏导数
2 L 2J *

0
t u t x
推出
2J *
2 L

t x
t u
(4.22)
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.4. 动态规划与极小值原理和变分法
(1) 始端和终端固定,即x(t0)=x0,x(tf)=xf。
将从(4-20)式中解出的u代入(4-19)式,有(4-23)式
J *
J *
L[ x ( t ), u( t ), t ] 
u+
=0
x
t
(4.23)
(4-23)式对x求偏导数,得到(4-24) 式
L   J *
 
x x  x
 2J *
u 
0
 t x
(4.24)
将(4-21)式和(4-22)式代入(4-24)式,并且令u= ̇ ,可得(4-25)式
考虑到
L   L   2 L
 
x  
0
x x  x  t x
d  L    L



t  x  x  x
则(4-25)式可写为:
(4.25)
2
  L
x  
 t x
L d  L 
 
0

x t  x 
这样就得到了欧拉方程。至于求解欧拉方程所需的两点边值条件,
NWPU
已由初态和终端状态给出。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
4.4. 动态规划与极小值原理和变分法
(2)终点自由情况
此种情形下,由变分法得到的横截条件为
L
0

x t f
这一结论也可由动态规划法导出。
动态规划法中令λ(t)=∂ J*/∂x,利用(4-21)式其又等于-∂L/∂u,而
u= ̇ ,对于该问题J*[x(tf), tf]=0
可得
 (t f ) 
L
0
x t f
(3)起点自由情况,也可以进行类似讨论。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.4. 动态规划与极小值原理和变分法
下面我们来看动态规划与极小值原理的关系。
在极小值原理中,若系统的状态方程为
性能指标取为
x ( t )  f [ x ( t ), u( t ), t ]
tf
J[ x(t ), t ]  [ x(t f ), t f ]+ L[ x( ), u( ), ]d
t
定义哈密尔顿函数为
H ( x , u,  , t )  L( x , u, t )  T f ( x , u, t )
则实现最优控制的必要条件是,存在协态向量λ*(t)解状态变量
x*(t)满足正则方程:
x  f ( x , u , t )
  
H
x
在最优轨线x*(t)上与最优控制u*(t)对应的哈密尔顿函数H取极
小值,即H(x*,u*,λ*,t)=min H(x*,u,λ*,t)关于u取极小,u属于
Ω 。在终端时刻固定,终端状态自由时的横截条件为
 (t f ) 

x ( t f )
上述结论也可以利用哈密尔顿-雅可比方程导出。
NWPU
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
4.4.动态规划与极小值原理和变分法
假定最优性能指标J*[x(t),t]存在,且连续可微。根据动态规
划方法,哈密尔顿-雅可比方程为一阶偏微分方程(4-26)式
J *
J *

 min{ H [ x , u,
, t ]}
u
(
t
)
t
x
式中
其中
(4-26)
J *
H [ x , u,
, t ]  L[ x ( t ), u( t ), t ]   T f [ x ( t ), u( t ), t ]
x
J * T
 (t )  (
)
x
T
H
 f [ x ( t ), u ( t ), t ]  x

如果u*为最优控制,则 下列(4-27)式成立:
H [ x ( t ), u* ( t ),  , t ]  min{ H [ x , u,  , t ]}
u( t )
(4-27)
这就是极小值原理中的极值条件。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4.4. 动态规划与极小值原理和变分法
由(4-27)式,则(4-26)式可进一步写为下列(4-28)式
*
J *
* J

 H [ x, u ,
, t]
t
x
(4-28)
下面求∂ J*/ ∂x对时间t的全导数,得到(4-29)式
d  J *   2 J *  2 J *
2J * 2J *


x 

f


T
T
t  x  x t x x
x t x x
(4-29)
式(4-28)对x求偏导数,有式(4-30)
 2 J * L  2 J *
f T J *




x

[
]
T
xt x x x
x
x
(4-30)
将式(4-30)代入(4-29)式,有(4-31)式
d  J * 
L f T J *


[ ]
(4-31)


t  x 
x x x
J *
注意到我们令  ( t ) 
x
H


(
t
)


所以(4-31)式可以写为:
NWPU
x
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
4.4. 动态规划与极小值原理和变分法
考虑哈密尔顿-雅可比方程的边界条件为
J * [ x ( t f ), t f ]  [ x ( t f ), t f ]
J *
 (t f ) 
x
tf


x ( t f )
这样,在假定J*[x(t),t]存在且连续可微的条件下,由哈密尔
顿-雅可比方程导出了极小值原理给出的全部必要条件。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
总结
N 1
J N [ x ( 0)]  [ x ( N ), N ]   L[ x ( k ), u( k ), k ]
k 0
离散系
统的动
态规划
J N* k [ x(k )]  min{L[ x(k ), u(k ), k]  J N* ( k 1)[ x(k  1)]}
u( k )
J 0* [ x ( N )]  [ x ( N ), N ]
反向递推得u*(k)与x(k)的关系;
最优
控制
问题
正向递推得 {x*(k)}及 {u*(k)}.
连续系
统的动
态规划
J *[ x(t ), t ]
J *

 min{H[ x(t ), u(t ),
, t ]}
u( t )
t
x
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
第五章 线性二次型最优控制问题
本章主要内容:
1 线性二次型问题
2 状态调节器

有限时间状态调节器问题

无限时间状态调节器问题
3 输出调节器

有限时间输出调节器问题

无限时间输出调节器问题
4 输出跟踪器
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
1. 线性二次型问题
概念
如果所研究系统为线性,所取性能指标为状态变量与控制变量的
二次型函数,称这种动态系统最优化问题为线性二次型问题。


问题的提法
设线性时变系统的状态方程为:
x ( t )  A( t ) x( t )  B( t )u( t )
y( t )  C ( t ) x ( t )
(5-1)
假设控制向量u(t)不受约束,用yr(t)表示期望输出,则误差向量为
e( t )  yr ( t )  y( t )
求最优控制u*(t) ,使下列二次型性能指标极小
J ( u) 
1 T
1 tf
e (t f ) Fe (t f )   [eT (t )Q (t )e (t )  uT (t ) R(t )u(t )]dt
2
2 t0
(5-2)
F:半正定 l  l 常数矩阵;
Q(t):半正定 l  l 对称时变矩阵;
R(t):半正 定 m  m对称时变矩阵;
t 0 、 t f 固定。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
1. 线性二次型问题

各项指标物理意义
J ( u) 
1 T
1 tf
e (t f ) Fe (t f )   [e T (t )Q (t )e (t )  uT (t ) R(t )u(t )]dt
2
2 t0
tf
(1) 第一积分过程项 0.5t [eT ( t )Q( t )e( t )]dt 反映了系统在控制过程中动态跟
0
踪误差的总度量(累计和)。
tf
(2) 第二积分过程项 0.5t [uT (t ) R(t )u(t )]dt 表示系统在控制过程中对系统加
0
权后的控制能量消耗的总度量。
(3) 终值项 0.5e T ( t f )Fe(t f )对系统终态跟踪误差的要求。
整个性能指标物理意义:
使系统在控制过程中的动态误差与能量消耗,以及控制结束时的系统终
端跟踪误差综合最优。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
1. 线性二次型问题

线性二次型问题的三种重要情形
x ( t )  A( t ) x ( t )  B( t )u( t )
y( t )  C ( t ) x( t )
e( t )  yr ( t )  y( t )
1 T
1 tf T
J (u)  e (t f ) Fe (t f )   [e (t )Q (t )e (t )  uT (t ) R(t )u(t )]dt
2
2 t0
(1)C (t )  I , yr (t )  0,
y ( t )  x ( t )  e ( t )
1
1 tf
J (u)  xT (t f )Fx(t f )   [ xT (t )Q(t ) x(t )  uT (t )R(t )u(t )]dt
2
2 t0
状态调节器
(5-3)
终端时间 t f  , 有限时间问题
终端时间 t f  , 无限时间问题
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
1. 线性二次型问题

线性二次型问题的三种重要情形
x ( t )  A( t ) x ( t )  B( t )u( t )
y( t )  C ( t ) x( t )
e( t )  yr ( t )  y( t )
1 T
1 tf T
J (u)  e (t f ) Fe (t f )   [e (t )Q (t )e (t )  uT (t ) R(t )u(t )]dt
2
2 t0
(2) yr (t )  0 y(t )  e(t )
1 T
1 tf T
J  y ( t f ) Fy( t f )   [ y ( t )Q ( t ) y( t )  uT ( t ) R( t ) u( t )]dt
2
2 t0
输出调节器
(5-4)
终端时间t f  , 有限时间问题
终端时间t f  , 无限时间问题
(3) yr (t )  0, e (t )  yr (t )  y (t ) 跟踪问题
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2. 状态调节器问题
2.1 有限时间状态调节器问题
问题 5-1:考虑线性时变系统:
这里在得到协态方程时,利用了我们在数
学准备部分学习的向量函数对向量导数的
一个运算公式:即
d ( a T b ) da T
db T

b
a
dx
dx
dx
x ( t )  A ( t ) x ( t )  B ( t ) u ( t ), x ( t 0 )  x 0
性能指标
首先来看[dxT(t)QT(t)/dx(t)],将矩阵QT 写
成 QT=[q1,q2,…,ql], 其中 qi 是列向量 , 则
dxT(t)QT(t)/dx(t)=[dxTq1/dx(t), dxTq2/dx(t),…,
dxTql/dx(t)]
tf固定且有限, 控制向量u(t)无约束。求最 由上述运算公式
优控制u*(t) ,使性能指标最小。
dxTqi/dx(t)=dxT/dx(t)qi+[dqiT/dx(t)]x=qi
1
令 H ( x , u,  , t )  x T ( t )Q( t ) x( t )
因此dxT(t)QT(t) /dx(t)= QT,
1
J (u)  xT (t f )Fx(t f )
(5-3)
2
1 tf T
  [ x (t )Q(t ) x(t )  uT (t )R(t )u(t )]dt
2 t0
2
1
 uT ( t ) R( t )u( t )  T [ A( t ) x( t )  B( t )u( t )] 再来看
2
T
T
正则方程
H
x 
 A( t ) x ( t )  B( t )u( t )

H
( t )  
 Q ( t ) x ( t )  AT ( t ) ( t )
x
dx (t)Q (t)/dx(t)=
(dxT(t)/dx(t))Q(t)x(t)+[dxT(t)QT(t)/d
x(t)]x(t)= Q(t)x(t)+QT(t) x(t)=2Q(t)x(t)
类似得,可得uT(t)R(t)u(t)、λTA(t)x(t)对x
NWPU
的导数。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
2. 状态调节器问题
2.1 有限时间状态调节器问题
问题 5-1:考虑线性时变系统:
x ( t )  A ( t ) x ( t )  B ( t ) u ( t ), x ( t 0 )  x 0
性能指标
由于u(t)不受约束
H
2 H
T
 0  R(t )u(t )  B ( t ) ( t )  0, 2  R(t )  0
u
u
可得 u* ( t )   R 1 ( t ) B T ( t ) ( t )
x ( t )  A( t ) x( t )  B( t ) R 1 ( t ) B T ( t ) ( t )
代入正则方程
( t )  Q( t ) x ( t )  AT ( t ) ( t )
1
边界条件和横截条件为
J (u)  xT (t f )Fx(t f )
(5-3)
x ( t 0 )  x0
2
1 tf T
 1 T

  [ x (t )Q(t ) x(t )  uT (t )R(t )u(t )]dt

(t f ) 
x ( t f )Fx ( t f )  Fx ( t f )

2 t0
x ( t f )  2

tf固定且有限, 控制向量u(t)无约束。求
最优控制u*(t) ,使性能指标最小。
 x   A( t )  B( t ) R 1 ( t ) B T ( t )  x 
 
   
 AT ( t )
   Q ( t )
  
可以证明  (t )与x(t)之间存在线性关系:  ( t )  P ( t ) x( t )
(t )  P (t ) x(t )  P(t ) x (t )


 P (t )  P(t ) A(t )  P(t )B(t )R1(t )BT (t )P(t ) x(t )
(t )  [Q(t )  AT (t )P(t )]x(t )
P (t )  P(t ) A(t )  AT (t )P(t )  P(t )B(t )R1(t )BT (t )P(t )  Q(t )
上式称为矩阵黎卡提方程,其边界条件为 P ( t f )  F
由黎卡提方程求出P(t)后,则最优控制为
u* ( t )   R 1 ( t ) B T ( t ) P ( t ) x ( t )
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2. 状态调节器问题
2.1 有限时间状态调节器问题
定理 5-1:问题5-1实现最优控制
的充要条件是:
u* (t )   R1(t )BT (t ) P(t ) x(t )
最优性能指标为:
J* 
1 T
x (t0 ) P (t0 ) x ( t0 )
2
其中对称矩阵P(t)是下列黎卡提方程
的唯一解
P ( t )   P ( t ) A( t )  AT ( t ) P ( t )
 P ( t ) B( t ) R 1 ( t ) B T ( t ) P ( t )  Q( t )
边界条件为
P (t f )  F
最优轨线是如下向量微分方程的解
Riccati矩阵微分方程的若干性质:

P(t)是唯一的.

P(t)是对称的.

P(t)是非负的.
参考:胡寿松,最优控
制理论与系统, p168169
几点说明:
(1) 最优控制规律是一个状态线性反馈规
律,它能方便地实现闭环最优控制;
(2) 由于P(t)是非线性微分方程的解,通
常情况下难以求得解析解,需要由计算
机求出其数值解,又因为其边界条件在
终端处,所以需要逆时间方向求解,因
此应在过程开始之前就将P(t)解出,存入
计算机以供过程使用。
x ( t )  [ A( t )  B( t ) R 1 ( t ) B T ( t ) P ( t )] x ( t )
x( t 0 )  x0
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2. 状态调节器问题
2.1 有限时间状态调节器问题
状态调节器的设计步骤
(1) 根据系统要求和工程实际经验,选
取加权矩阵F, Q, R
(2) 求解黎卡提微分方程,求得矩阵P(t)
终端时刻tf 为某一给定值。求最优控制u*(t)使下列
性能指标为极小
1 tf
J   x12 ( t )  u 2 ( t ) dt
2 0
解:本例为有限时间状态调节器问题,由题意


0 1 
0
1 0 
A
,
B

,
F

0,
Q


1 
0 0 , R  1
0
0


 


 p ( t ) p12 ( t ) 
因为P(t)为对称矩阵,设:P ( t )   11

 p12 ( t ) p22 ( t )
代入黎卡提方程得
(3) 求反馈增益矩阵K(t)及最优控制u*(t)
 p 11  1  p122

u* (t )   K (t ) x (t )   R 1 B T P (t ) x (t )
 p 12   p11  p12 p22
 p  2 p  p 2
12
22
 22
(4) 求解最优轨线x*(t)
由终端边界条件 P ( t f )  F  0
(5) 计算性能指标最优值
p11 ( t f )  p12 ( t f )  p22 ( t f )  0
1
P   PA  AT P  PBR1 B T P  Q
P (t f )  F
J* 
2
x ( t 0 )T P ( t 0 ) x ( t 0 )
例1 设系统状态方程和初始条件为:
 x 1 ( t )  x 2 ( t )

 x 2 ( t )  u( t )
 x1 ( 0)  1

 x 2 ( 0)  0
利用计算机逆时间方向解上述微分方程,解出从
t=0到t=tf 的P(t),可得最优控制:
u* ( t )   R 1 ( t ) B T ( t ) P ( t ) x( t )
p
 0 1 11
 p12
p12   x1 ( t ) 
  p12 x1  p22 x 2
p22   x 2 ( t )
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2. 状态调节器问题
P ( t )  P ( t ) A  AT P ( t )  P ( t ) BR 1B T P ( t )  Q  0
2.1 有限时间状态调节器问题
P (3)  F
例2 二阶系统状态方程为 :
整理得
 x 1 ( t )  x 2 ( t )

 x 2 ( t )  u ( t )
二次型性能指标为
1
J  x12 ( t f )  2 x 22 ( t f )
2
1 3
1 
   2 x12  4 x 22  2 x1 x 2  u 2 dt
2 0
2 


试求使系统性能指标J为最小的最优控制u*(t)。
解:由题意
解此微分方程得P(t),代入u*(t)表达式,可得
最优控制。显然,由于微分方程组的非线性性,
不能求得其解析解,而只能利用计算机求得其
0 1 
0 
1 0
2 1 
1
A
, B   , F  
,Q  
,R 



2
0 0 
1
0 2 
1 4 
 p11 ( t )
P
(
t
)

设
 p (t )
 12
 p 11 ( t )  2 p122 ( t )  2

 p 12 ( t )   p11 ( t )  2 p12 ( t ) p22 ( t )  1
2
 p 22 ( t )  2 p12 ( t )  2 p22
(t )  4

 p11 (3)  1
 p12 (3)  0

 p22 (3)  2
p12 ( t ) 
p22 ( t ) 代入黎卡提方程
数值解。
u* (t )   R1(t )BT (t ) P(t ) x(t )
p
 0 2 11
 p12
p12   x1(t ) 
 2 p12 x1  2 p22 x2
p22   x2 (t )
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2. 状态调节器问题
2.2 无限时间定常状态调节器问题
问题 5-2:考虑线性定常系统:
x ( t )  Ax ( t )  Bu( t ), x ( t 0 )  x0
[A,B]能控,u(t)不受约束,二次型性能
指标为
J (u) 
1  T
[ x (t )Qx(t )  uT (t )Ru(t )]dt

2 t0
其中Q,R正定常数矩阵,要求确定最优
控制u*(t),使J为极小。
可以证明,问题5-2存在唯一的最优控
制:
u* ( t )   R 1 BT Px ( t )   Kx ( t )
其中,P为n×n常值正定阵,它满足黎
卡提代数方程:
PA  AT P  PBR 1 B T P  Q  0
最优轨线x*(t)是下列时不变齐次方程的
解:
x  ( A  BR 1 B T P ) x
x( t 0 )  x0
性能指标的最小值为:
J* 
1 T
x ( t 0 ) Px( t 0 )
2
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2. 状态调节器问题
展开整理得到三个代数方程
2.2 无限时间状态调节器问题
下面确定 p11, p22 的符号
0 1 
0 
x ( t )  
x
(
t
)


1 u( t )
0 0 
 
二次型性能指标为
J
利用矩阵P正定的性质
1
x12  2bx1 x2  ax22  u 2 dt

2 0

解之
p12  1 , p22   a  2 p12 , p11  p12 p22  b
例3 二阶系统状态方程为 :

2
p122  1, p11  p12 p22  b  0,2 p12  p22
a 0

式中a-b2>0 ,求最优控制u*(t)使系统性能指
标最小。
解:由题意
0 1 
0
1 b 
A
,
B

,
Q


1 
b a  , R  1
0
0


 


p11  0

  p22  0则p22  a  2 p12
p11 p22  p122  0
下面用反证法证明p12=-1不是所求的根
p12  1 p22  a  2 , p11   a  2 b  a  2, b  0
利用矩阵P正定的性质
p11 p22  p122  0  (a  2)  b a  2 1  0
 0  (a 1)  b a  2
验证系统能控性
0 1 
Rank [ B  AB ]  Rank 
2
1
0


2
由于a-b >0 ,所以Q为正定矩。
p
设 P   11
 p12
p12 
,由黎卡提代数方程
p22 
PA  AT P  PBR 1 B T P  Q  0
(a  1)2
1
a
a
平方 b 
a2
a2
与给定条件a-b2>0矛盾,故假设p12=-1不成立。
2
 a 2 b
1 
p

1
a

2


*
1 T
最优控制为:u (t )  R B Px(t )  x1(t )  a  2x2 (t )
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2. 状态调节器问题
J* 
2.3线性离散系统状态调节器
问题 5-3:
x(k 1)  A(k) x(k)  B(k)u(k) k  0,1,, N 1
x(0)  x0
1 T
x ( 0 ) P ( 0) x ( 0 )
2
式中


1
P(k)  Q(k)  AT (k)P(k 1) I  B(k)R1(k)BT (k)P(k 1) A(k)


1
 Q(k)  AT (k) P1(k 1)  B(k)R1(k)BT (k) A(k)
(5-6)
P(N)=F
性能指标
1
J  x T ( N ) Fx ( N )
2
1 N 1 T
   x (k )Q (k ) x (k )  uT ( k ) R(k )u( k ) 
2 k 0
上式称为黎卡提差分方程。逆时间方
向解这一差分方程,便可确定矩阵
P(k)。
最优控制u*(k)为状态的线性函数。因
式中F、Q(k)为半正定阵,R(k)为正定阵 此,同连续系统一样,可以方便地实
u(k)无约束,目标为:确定最优控制
现闭环控制。
序列u*(k),使性能指标J为极小。
定理 5-2:对于问题5-3,存在唯
一的最优控制序列:
u *(k)  R1 (k )BT (k) AT(k)
[ P(k )  Q(k )]x(k )
k  0,1, , N  1
最优性能指标为:
(5-5)
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2. 状态调节器问题
2.3 线性离散系统状态调节器
例 设一阶离散系统的状态方程为
x(k  1)  x(k )  u(k ) (k  0,1,, N  1)
初始条件 x (0) 给定,性能指标
1 2
1 N 1 2
J  cx ( N )   u ( k )
2
2 k 0
求最优控制序列u*(k),使性能指标J为极
小。
解:为简单起见,设N=2,即只求解一
个二步控制问题。
性能指标
1
1
1
J  cx 2 (2)  u 2 (0)  u 2 (1)
2
2
2
F  c,Q(k)  0,R(k)  1,A(k)  1,B(k)  1
黎卡提方程式
1
P(k)  Q(k)  AT (k)  P1(k 1)  B(k)R1(k)BT (k) A(k)
1
  P 1 (k  1)  1 
P (k  1)
P (k  1)  1
P (2)  F  c
逆时间方向计算
k  1,P (1) 
c
c
;k  0,P (0) 
c 1
2c  1
最优控制
u* (k )   R 1 (k ) BT (k ) AT (k )  P (k )  Q (k )  x (k )
c
x (0)
2c  1
c 1
x * (1)  x * (0)  u* (0) 
x ( 0)
2c  1
c
u* (1)   P (1) x * (1)  
x (0)
2c  1
u* (0)   P (0) x (0)  
x * (2)  x * (1)  u* (1) 
1
x ( 0)
2c  1
最优性能指标
1
c
J *  P (0) x 2 (0) 
x 2 (0)
2
2(2c  1)
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
3. 输出调节器
3.1 有限时间输出调节器问题
问题 5-4:考虑线性时变系统:
x ( t )  A( t ) x( t )  B( t )u( t ), x( t 0 )  x0
定理5-3 如果矩阵F和Q(t)是半正定的,当且仅当
系统[A(t), C(t)]能观测时,矩阵C(tf)TFC(tf)和
C(t)TQ(t)C(t)是半正定的。
定理5-4 系统[A(t), C(t)]能观测时,存在唯一的
最优控制:
y( t )  C ( t ) x( t )
u* ( t )   R 1 ( t ) B T ( t ) P ( t ) x( t )
性能指标
1
J  yT (t f ) Fy (t f )
2
1 tf
  [ y T (t )Q (t ) y (t )  uT ( t ) R (t )u(t )]dt
2 t0
式中P(t) 满足下列黎卡提方程
 P (t )  P ( t ) A(t )+AT ( t ) P (t )
 P (t ) B (t ) R 1 ( t ) BT (t ) P ( t )+C T (t )Q (t )C (t )
t0固定,tf固定且有限, 控制向量u(t)无约束
P ( t f )  C T ( t f )F ( t f )C ( t f )
。求最优控制u*(t) ,使性能指标最小。 而最优轨线x*(t)是下列微分方程的解
将y(t)=C(t)x(t)代入性能指标
F'
1
J  x T ( t f )C T ( t f )FC ( t f ) x ( t f )
2
Q'
1 tf T
  [ x ( t )C T ( t )Q ( t )C ( t ) x ( t )  uT ( t ) R( t )u( t )]dt
2 t0
与状态调节器问题相比,唯一的差别是性
能指标函数中的权函数发生了变化。
x ( t )  [ A(t )  B (t ) R 1 ( t ) BT (t ) P (t )] x ( t ), x (t 0 )  x0
最优性能指标
J* 
1 T
x (t 0 ) P (t 0 ) x (t 0 )
2
有限时间状态调节器
P ( t )   P (t ) A( t )  AT ( t ) P ( t )  P ( t )B( t ) R 1 (t ) B T ( t ) P ( t )  Q(t )
P (t f )  F
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
3. 输出调节器
例4 设系统状态方程为
3.2 无限时间输出调节器
问题 5-5:
设线性定常系统的状态方程:
 x1  0 1  x1  0
 x   0 0  x   1 u
 2   
 2 
x ( t )  Ax ( t )  Bu( t ), x ( t 0 )  x0
x 
y  1 0 1 
y( t )  Cx ( t )
 x2 
其中u(t)不受约束,终端时刻tf无限,A、 求最优控制u*(t),使性能指标
B、C为适当维数的常值矩阵。二次型性
1 
J   ( y 2  ru 2 )dt , ( r  0)
能指标: 
2 0
1
T
T
取极小值。
J   [ y ( t )Qy( t )  u ( t ) Ru( t )]dt
2 t
解:本例为无限时间定常输出调节器问题。
其中Q、R正定常数矩阵,求最优控制
0 1 
0 
u*(t) ,使性能指标极小。
 
0
对于问题5-5,系统完全能控和完全能观测,
则存在唯一的最优控制:
*
1
T
u ( t )   R B Px ( t )
其中P为对称正定常值矩阵,它满足黎卡提代
数方程
PA  AT P  PBR 1 B T P  C T QC  0
最优轨线x*(t)满足微分方程
x ( t )  ( A  BR 1 B T P ) x ( t ), x ( t 0 )  x0
1 T
*
性能指标的最小值为: J  x ( t 0 ) Px( t 0 )
2
A
 , B  1 , C  1 0 , Q  1, R  r
0 0 
 
验证系统能控性 Rank [ B  AB ]  2
验证系统能观性 Rank[C T  AT C T ]  2
系统完全能控且完全能观,故最优控制为:
u* (t )  R1BT Px(t )
p
1
  [0,1] 11
r
 p12
p12   x1 (t ) 
1


[ p21x1 (t )  p22 x2 (t )]
p22   x2 (t )
r
P满足下列黎卡提矩阵代数方程: NWPU
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
3. 输出调节器
例4 设系统状态方程为
3.2 无限时间输出调节器
续右
PA  AT P  PBR 1 B T P  C T QC  0
展开整理得到三个代数方程
1 2
1
1
p12  1, p11  p12 p22  0,2 p12 
r
r
r
解之
1
2
p12   r , p22   2rp12 , p11 
1
r
 x1  0 1  x1  0
 x   0 0  x   1 u
 2   
 2 
x 
y  1 0 1 
 x2 
求最优控制u*(t),使性能指标
2
p22  0
1 
J   ( y 2  ru 2 )dt , ( r  0)
2 0
取最小值。
p12 p22 解 本例为无限时间定常输出调节器问题。
0 1 
0 
A
,
B

, C  1 0, Q  1, R  r



0 0 
1
下面确定p11,p12的符号
利用矩阵P正定的性质
验证系统能控性 Rank [ B  AB ]  2
p11  0

  p22  0,p12  0
2
p11 p22  p12  0

1
2

故 p12  r,p22  2r r ,p11  4r 
1
4
最优控制规律
1
1
1
2
u ( t )   [ p21 x1 ( t )  p22 x2 ( t )]   r x1 ( t )  2r 4 x2 ( t )
r
*
验证系统能观性 Rank[C T  AT C T ]  2
系统完全能控且完全能观,故最优控制为:
u* (t )  R1BT Px(t )
p
1
  [0,1] 11
r
 p12
p12   x1 (t ) 
1


[ p21x1 (t )  p22 x2 (t )]
p22   x2 (t )
r
P满足下列黎卡提矩阵代数方程: NWPU
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
4. 线性连续系统输出跟踪器
4.1 线性时变系统的跟踪问题
问题 5-6:考虑线性时变系统:
 (t )  
H
 C T (t )Q (t ) yr ( t )  C (t ) x ( t )  AT (t ) (t )
x ( t )
控制方程
H
 R ( t ) u( t )  B T ( t )  ( t )  0
u(t )
x ( t )  A( t ) x( t )  B( t )u( t ), x( t 0 )  x0
y( t )  C ( t ) x( t )
性能指标
1
J ( u )  e T ( t f ) Fe ( t f )
2
1 tf
  [ e T ( t ) Q ( t ) e ( t )  u T ( t ) R ( t ) u ( t )]dt
2 t0
e (t )  yr (t )  y ( t )  yr ( t )  C ( t ) x (t )
u* ( t )   R 1 (t ) B T (t ) (t )
边界条件和横截条件
x (t 0 )  x0
 (t f ) 

 C T ( t f ) F C ( t f ) x ( t f )  yr ( t f ) 
x ( t f )
假设
 (t )  P (t ) x(t )  g(t )
T
(5-7) P (t f )  C (t f ) FC (t f )
to 固定,tf 固定且有限,控制向量u(t)无 (t )  P (t ) x(t )  P (t ) x (t )  g (t ) g (t f )  C T (t f ) Fyr (t f )
约束。求最优控制u*(t) ,使性能指标极 把u*(t)代入 x (t ) x (t ) 代入上式
(5-8)
小。
 ( t )  [ P ( t )  P ( t ) A( t )  P ( t ) B ( t ) R 1 ( t ) B T ( t ) P ( t )] x ( t )
哈密尔顿函数:
H
1
 yr (t) C(t)x(t)T Q(t) yr (t) C(t)x(t) 1 uT (t)R(t)u(t)
2
2
 T (t)A(t)x(t)  B(t)u(t)
正则方程
H
x 
 A(t ) x (t )  B(t )u(t )
 (t )
 P ( t ) B ( t ) R 1 ( t ) B T ( t ) g ( t )  g ( t )
(5-9)
将(5-7)代入协态方程
 ( t )   C T ( t )Q ( t )C ( t )  A T ( t ) P ( t ) x ( t )
 A T ( t ) g ( t )  C T ( t )Q ( t ) y r ( t )
上两式对任意时刻的 t  [ t 0 , t f ]
任何x(t)及任何yr(t)均成立
NORTHWESTERN POLYTECHNICAL UNIVERSITY
(5-10)
NWPU
最优控制
4. 线性连续系统输出跟踪器
4.1 线性时变系统的跟踪问题
 (t )  
H
 C T (t )Q (t ) yr ( t )  C (t ) x ( t )  AT (t ) (t )
x ( t )
控制方程
(续右)
H
 R ( t ) u( t )  B T ( t )  ( t )  0
u(t )
 P (t )  P(t ) A(t )  AT (t ) P(t )
u* ( t )   R 1 (t ) B T (t ) (t )
 P(t )B(t )R1(t )BT (t )P(t )  CT (t )Q(t )C(t )


g (t )  P(t )B(t )R1(t )BT (t )  AT (t ) g(t )  CT (t )Q(t ) yr (t )
上述两方程的边界条件
P (t f )  C T (t f ) FC (t f )
g (t f )  C T (t f ) Fyr (t f )
利用计算机逆时间求数值解,得到P(t)、g(t)
后,得出最优控制
u* (t )   R 1 B T P (t ) x (t )  g (t )
最优轨线由下式解出
x ( t )  A ( t )  B ( t ) R  1 ( t ) B T ( t ) P ( t ) x ( t )
 B ( t ) R 1 ( t ) B T ( t ) g ( t )
边界条件和横截条件
x (t 0 )  x0
 (t f ) 

 C T (t f ) F C (t f ) x ( t f )  yr (t f )
x ( t f )


假设
 (t )  P (t ) x(t )  g(t )
(*)
P (t f )  C T (t f ) FC (t f )
(t )  P (t ) x(t )  P (t ) x (t )  g (t ) g (t f )  C T (t f ) Fyr (t f )
把u*(t)代入 x (t ) x (t ) 代入上式
 ( t )  [ P ( t )  P ( t ) A( t )  P ( t ) B ( t ) R 1 ( t ) B T ( t ) P ( t )] x ( t )
 P ( t ) B ( t ) R 1 ( t ) B T ( t ) g ( t )  g ( t )
将(*)代入正则方程
 ( t )   C T ( t )Q ( t )C ( t )  A T ( t ) P ( t ) x ( t )
 A T ( t ) g ( t )  C T ( t )Q ( t ) y r ( t )
上两式对任意时刻的 t  [t 0 , t f ]
任何x(t)及任何yr(t)均成立
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4. 线性连续系统输出跟踪器
4.1 线性时变系统的跟踪问题
 P (t )  P(t ) A(t )  AT (t ) P(t )

g (t )  P(t )B(t )R1(t )BT (t )  AT (t ) g(t )  CT (t )Q(t ) yr (t )
上述两方程的边界条件
T
P (t f )  C (t f ) FC (t f )
g (t f )  C T (t f ) Fyr (t f )
利用计算机逆时间求数值解,得到P(t)、g(t)
后,得出最优控制
u* (t )   R 1 B T P (t ) x (t )  g (t )
最优轨线由下式解出
x ( t )  A ( t )  B ( t ) R  1 ( t ) B T ( t ) P ( t ) x ( t )
 B ( t ) R 1 ( t ) B T ( t ) g ( t )
例 已知一阶系统方程为:
x ( t )  ax (t )  u(t ),
y ( t )  x (t )
e (t )  yr (t )  y ( t )  y r (t )  x ( t )
试求最优控制u*(t),使性能指标
 P(t )B(t )R1(t )BT (t )P(t )  CT (t )Q(t )C(t )

其中a为常数,u(t)不受约束,用yr(t)表示
期望的输出,误差为:
x ( 0)  x 0
J 
1
1
fe 2 ( t f ) 
2
2

tf
t0
[ qe 2 ( t )  ru 2 ( t )]dt
取极小值,其中 f  0, q  0, r  0
解 A  a, B  1, C  1, F  f , Q  q, R  r
黎卡提方程及边界条件为:
1
P   Pa  aP  P  P  q , P ( t f )  f
r
其解为
f
a
r
a 
 a     exp 2  t  t f
f
a
r
P (t )  r 
f
a
r
1
 exp 2  t  t f 
f

a


式中
r
= a 2 

q
r
g (t )   a  P ( t )  g (t )  qyr ( t f ),g ( t f )  fyr (t f )
r 

最优控制规律为:
1
P (t ) x(t )  g(t )
NWPU
r
NORTHWESTERN POLYTECHNICAL
UNIVERSITY
u* (t )  
最优控制
第六章 最优控制的数值解法
本章主要内容:
1 引言
2 梯度法

无约束静态最优化问题

最优控制问题
3 共轭梯度法

无约束静态最优化问题

最优控制问题
4 具有约束的最优控制问题
5 间接法
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
1. 引言

用变分法和极小值原理求解最优控制问题,只有对比较简单、维数较
低的系统才能用解析法求解。

最优控制的数值方法在理论上和工程实践中都十分重要。
最优
静态
最优
化
解不随时间t的变化而变
化,则称为静态最优化
(参数最优化)问题
化
问题
动态
最优
化
解随时间t的变化而变
化,即变量是时间t的函
数,则称为动态最优化
(最优控制)问题
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
1. 引言
非线性规划数学模型的一般形式是:
min f ( x)

hi ( x)  0(i  1, 2,..., m)
 g ( x)  0( j  1, 2,..., l )
 j
其中,x=(x1, x2, …, xn)T是n维欧氏空间 R n中的点(向量),目标函数f(x)和
约束函数hi(x)、gj(x)为x的实函数。
有时,也将非线性规划的数学模型写成:
 min f ( x )

 g j ( x )  0( j  1,2,..., l )
上述模型也常表示成另一种形式:
min f ( x)

 D  {x | g j ( x)  0, ( j  1, 2,..., l )}
其中,D为问题的可行域。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
局部极小:

设f(x)为定义在n维欧氏空间 R n 的某一区域D上的n元实函数,对
于x*∈D,如果存在某个ε>0,使所有与x*的距离小于ε的x∈D
(即x∈D且‖x-x*‖<ε),都有f(x)≥f(x*),则称x*为f(x)在D上的局
部极小点,f(x*)为局部极小值。

若对于所有x≠x*且与x*的距离小于ε的x∈D,都有f(x)>f(x*),
则称x*为f(x)在D上的严格局部极小点,f(x*)为严格局部极小值。
全局极小:

设f(x)为定义在 R n 的某一区域D上的n元实函数,若存在x*∈D,
对所有x∈D都有f(x)≥f(x*),则称x*为f(x)在D上的全局极小点,
f(x*)为全局极小值。

若对于所有x∈D且x≠x*,都有f(x)>f(x*),则称x*为f(x)在D上
的严格全局极小点,f(x*)为严格全局极小值。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2. 梯度法
2.1 无约束多变量静态最优化问题
[基础知识]
(1) 实用中,常用 x + d (||d||=1)表示从x 点出发沿d方向移动d 长度得到
的点
d
x+(1/2)d
0
x
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2.1 无约束多变量静态最优化问题
(2) 数值方法的基本思路:迭代
给定初始点x0
根据x0,依次迭代产生点列{xk}
{xk}有限
{xk}无限
{xk}的最后一点为最优解
{xk}收敛于最优解
怎样产生这个点列呢?也就是说有了点xk,如何求得点xk+1呢?
因为xk+1-xk是一个向量,而一个向量是由它的方向和长度确定,即
x k 1  x k  x k ; x k 1  x k   k d k 或x k 1  x k   k d k
其中dk是  x k 方向上的单位向量,称为搜索方向,αk是一个正实数,
称为搜索步长。
当αk与dk确定以后,由xk就可以惟一确定 xk+1 ,由此产生点列{xk},从而也
就确定了一个迭代格式。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
[基础知识]
(3) 可行方向
设 x k 为任一可行点,对某一方向 d k 来说,若存在实数   0 ,使对任意
的  [0,  ] 均有下式成立:
xk  d k  D
就称方向 d k为 x k 点的一个可行方向。
(4) 下降方向
k
设 x  D,对某一方向 d k 来说,若存在实数   0 ,使对任意的   (0,  )
均有下式成立:
f ( xk  d k )  f ( xk )
就称方向 d k 为 x k 点的一个下降方向。
(5) 可行下降方向
k
若 x 点的某一方向 d k ,既是该点的可行方向,又是该点的下降方向,就
称它为这个点的可行下降方向。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2.1 无约束多变量静态最优化问题
(6) 下降最快的方向
当f(x)具有连续的一阶偏导数时,记 f(x)在点 x k处的梯度为 f ( x k )  g k
由Taylor展开,有

o 

f ( x k   d k )  f ( x k )   ( g k )T d k  o  d k

 
k

d
f ( x k   d k )  f ( x k )    ( g k )T d k
(6-1)





k T k
对充分小的 ,只要 ( g ) d  0即可保证 f ( x k   d k )  f ( x k )。
( g k )T d k  g k d k  cos( g k , d k )
k
当 d k 与 g 反向时,即 d k 取  g k 时,( g k )T d k 取值最小。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2.1 无约束多变量静态最优化问题
(7) 基本迭代格式
第1步 确定初值:选取初始点x0,k:=0;
第2步 构造搜索方向:如果xk 已求得,且xk 不是极小点,设法选取xk处的
可行下降方向dk;
第3步 确定步长因子αk:多数算法中,αk的选取是使f(x)的值下降最多,即
沿 xk+αdk 求 f(x) 的 极 小 值 , 这 种 确 定 步 长 αk 的 方 法 称 为 一 维 搜 索 , 令
xk+1=xk+ αk dk ;
D
第4步 若xk+1 已满足某种终
止条件,停止迭代,输出近
似解xk+1,否则令k:=k+1,
转回第2步。
.
x
k
dk
.
x k  d k
x k 1  x k   k d k
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2.1 无约束多变量静态最优化问题
(8) 常用的终止迭代准则有以下几种:
(a) 根据相继两次迭代结果的绝对误差:
x k 1  x k   1 或
f ( x k 1 )  f ( x k )   2
(b) 根据相继两次迭代结果的相对误差:
x k 1  x k
x
k
 3 或
f ( x k 1 )  f ( x k )
k
f (x )
 4
以上两式中的分母要求不等于和不接近于零。
(c) 根据函数梯度的模足够小:
f ( xk )  5
以上各式中的 1 ,  2 ,  3 ,  4 和  5 为足够小的正数。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2.1 无约束多变量静态最优化问题
(8) 一维搜索
f ( xk   k d k )  min f ( xk   d k )  min h( )


一元函数极小值问题:min h( )

极值点的必要条件: h ( )  0
经典微分法
单变量
无约束
函数逼近法(曲线拟合法)
静态
最优化
黄金分割法
区间消去法
菲波纳奇法
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2.1 无约束多变量静态最优化问题
(9) 一维搜索
性质:对于(a, b)内任意两点λ1
f ( xk kdk )  min f (xk d k )  min h() < λ , 如 果 h(λ ) < h(λ ) , 则
2
1
2


定义:设函数h(α)在闭区间[a, b]上是
下单峰函数,即在(a, b)内h(α)有唯一
的极小点α* ,在α* 的左边h(α)严格单
调下降,在α* 的右边h(α)严格单调上
升。
α*∈[a, λ2];否则λ*∈[λ1, b]。
y
a 1
α*
2
NORTHWESTERN POLYTECHNICAL UNIVERSITY
b x
NWPU
最优控制
2.1 无约束多变量静态最优化问题
二分法
(9) 一维搜索
f ( xk   k d k )  min f ( xk  d k )  h( ) 给定下单峰区间 [a, b] 及控制误差>0,

定义:设函数h(α)在闭区间[a, b]上
是下单峰函数, 即在(a, b)内h(α)有
唯一的极小点α* ,在α* 的左边h(α)
严格单调下降,在α* 的右边h(α)严
格单调上升。
二分法迭代步骤:
① 假定h′(a)<0,h′(b)>0;
② 令c = (a + b )/2;
③ 检查h′(c)是否为零,若是α*=c,
转向⑥;否则转向④;
④ 检查若h′(c)<0,则令a=c,转向
⑤ ,否则令b=c,转向⑤;
⑤ 检查若|b – a|< ,则转向⑥,
否则,转向②;
⑥ 输出α*。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
2.1 无约束多变量静态最优化问题
梯度法 (最速下降法)
例1 已知目标函数为
min f ( x )  x12  25x 22
设初始点x0=(2, 2)T,终止误差ε=10-6。试
 梯度法,由Cauchy于1847年给出。
用梯度法求目标函数的极小值点。
 梯度法的基本思想:选取目标函数 解:第一次迭代:
的负梯度方向(下降最快的方向)作为 目标函数的梯度为
每步迭代的搜索方向,逐步逼近函数
的极小值点。
 梯度法的基本步骤:
 f ( x )  ( 2 x 1 ,50 x 2 ) T
f (x 0 )  100.08  
令搜索方向为
1.
置步数k=0.
d 0  f ( x 0 )  (4,100)T
2. 计算目标函数f (x)在xk处的梯度向量. 确定搜索步长α0
给定初始点x0,允许误差ε,
k
3. 若  f ( x )   则停止计算,所得xk
为近似最优解,否则转步4.
4. 从xk 出发,沿dk=-gk 方向进行一维搜
索,求最优步长αk;满足:
f ( x k   k d k )  min f ( x k  d k )

f ( x 0   0d 0 )  min f ( x 0  d 0 )

0
0
T
x  d  (2, 2)   (4,  100)T
 (2  4, 2 100 )T
f ( x 0   d 0 )  (2  4 )2  25(2  100 )2
df ( x 0  d 0 )
 0  0.02003072
0
d
x1  (1.919877,  0.3071785102 )T
5. 计算xk+1 =xk+αkdk ,置步数k=k+1,返
T
经过10次迭代,得最优解x*=(0, 0)
NWPU
回步2.
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
梯度法求解问题6-1的计算步骤:
2.2 最优控制问题
1. 选定初始控制u0(t)。凭经验给定, 选取时应根
据u(t)的物理意义选择合适的u0(t), 允许误差ε>0。
问题 6-1 设系统的状态方程为
2. 将u0(t)代入状态方程,以x(t0)为初值,从t0到tf
x ( t )  f [ x ( t ), u ( t ), t ]
(6-2)
正向积分状态方程组(6-2),得到与u0(t)对应的
确定最优控制,使性能指标
状态轨线x0(t) 。
tf
3. 计算性能指标J[u0(t)]。
达到极小值,其中x(t0)=x0, tf固定,4. 以式(6-5)为边界条件,从tf 到t0反向积分协态
方程(6-4),得到与u0(t)和 x0(t)对应的λ0(t) 。
x(tf)自由。
J   [ x ( t f ), t f ] 

t0
L[ x ( t ), u ( t ), t ]dt
最优控制问题的解须满足以下条件: 5. 计算性能指标在u0处的梯度
(1) 正则方程:
H [ x 0 ( t ), u 0 ( t ), 0 ( t ), t ]
赫孝良等. 最优
0
0
J [u ( t )]  g 
H
化与最优控制,
(6-3)
u
x 
西安交通大学出

6. 确定搜索步长α0,由一维搜索法确定。
H 版社, 2009, p245.


(6-4)
x
J [ u 0   0 g 0 ]  min J [ u 0   g 0 ]
(2) 控制方程(必要条件):
 0
1
0
J [ u ( t )]  J [ u ( t )]
H
  7. 修正控制向量: u1 ( t )  u 0 ( t )   0 g 0
0
0
J
[
u
(
t
)]
u
8. 以u1(t)代替 u0(t),重复步骤(2)(3), 得J[u1(t)]。
(3) 边界条件:x(t0)=x0
[ x(t f ), t f ]
9. 检查终止条件,若满足则终止计算,否则以
 (t f ) 
(4) 横截条件:
(6-5) 1
x(t f )
u (t)代替
u0(t),重复步骤(4)(5) …的过程。NWPU
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
2.2 最优控制问题
例2 已知系统的状态方程为
x (t )   x (t )  u(t )
2
初始状态:x(0)=10
性能指标:
1 1 2
J   [ x ( t )  u 2 ( t )]dt
2 0
梯度法求解该问题的计算步骤:
1. 选定初始控制u0(t) =0。
2. 将u0(t)=0代入状态方程,并利用x(0)=10,得
10
x 0 (t ) 
10t  1
3. 计算性能指标J[u0(t)]
2
1 1  10 
0
J [u ( t )]   
dt
2 0 10t  1
试用梯度法确定使性能指标J达到极小 4. 将x0(t)代入协态方程,且由边界条件λ0(1) =0
的最优控制u*(t)。
从tf =1反向积分,得
解:哈密尔顿函数为:
1  (1  10 t ) 2 
0
 ( t )  1 

1 2
2
2
2
121


H  [ x ( t )  u ( t )]   (t )[ x (t )  u(t )]
2
5. 计算性能指标在u0处的梯度
协态方程和控制方程:
H [ x 0 ( t ), u0 ( t ), 0 ( t ), t ]
0
g 
 0 ( t )

H
u
 ( t )  
  x( t )  2 ( t ) x( t )
0
6. 不妨取α =1。
x ( t )
H
7. 计算
 u( t )   ( t )
1  (1  10t ) 2 
u
1
0
0 0
u ( t )  u ( t )   g   1 

2
121 
横截条件:  (1)  0
8. 略。
NWPU
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
3. 共轭梯度法
3.1 无约束多变量静态最优化问题
共轭方向
共轭方向法
问题 6-2 考虑正定二次函数的无约束最优化
1 T
问题
T

min f ( x ) 
x Ax  b x  c
共轭方向:设A为n×n对称正定矩
2
对称正定矩阵
阵,对于Rn中的两个非零向量d1和d2, 称下述算法为共轭方向法:
0
1
n 1
若有(d1)TAd2=0,则称d1和d2关于A共 (1) 取定一组A称共轭分方向 d , d , , d ;
0
轭。
(2) 任取初始点 x ,依次按照下式由 x k 确
 设d1, d2 , …, dk 是Rn中的一组非零
定点 x k 1 :
向量,如果它们两两关于A共轭,即
 x k 1  x k   k d k
满足
(d i )T Ad j  0 , i  j , i , j  1, 2 , , k

k
k
k
k
k
f
(
x


d
)

min
f
(
x


d
)



则称这组方向是A共轭的,或称它们
为A的k个共轭方向。
 定理 设A是正定矩阵, d0, d1 , …, dn-1 是Rn
 定理 设A是正定矩阵,Rn 中的非
中A共轭的非零向量。对于问题6-2,若从任
零向量组d1, d2 , …, dk 是A共轭的,
意点x0出发,依次沿方向d0, d1 , …, dn-1 进行一
则这k个向量线性无关。
维搜索,则至多经过n次迭代可得问题6-2的
 推论 在n维空间中,任意共轭向
最优解。
量组最多包含n个向量。

NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
3. 共轭梯度法
3.1 无约束多变量静态最优化问题
 如何得到共轭梯度方向dk?
共轭梯度法
 共轭梯度法基本思想:将共轭与最优梯
度方向相结合,利用已知迭代点处的梯度
方向构造一组共轭方向,并沿此方向进行
搜索。
令d0=-g0 , 以后的共轭方向可如下递归产
共轭系数
生:
d k 1  f ( x k 1 )   k d k   g k 1   k d k
其中 βk 由dk 和dk+1 关于A共轭确定
0  (d k )T Ad k 1  (d k )T Ag k 1   k (d k )T Ad k
k T
k 1

k
( g k 1 )T g k 1 || g k 1 || 2


k T
k
(g ) g
|| g k || 2
弗莱切尔-里弗斯(Fletcher-Reeves)公式,
简称FR公式。

k
( g k 1 )T [ g k 1  g k ]

( g k )T g k
Polak-Ribiere-Polyar公式,简称PRP公式。
注1:(共轭梯度法应用于一般函数时),
需要注意的是,由于Rn 中的共轭方向
最多有n个,因此在用上述两种方法求
解目标函数为非二次函数的无约束最
优化问题时,在n步之后构造的方向不
( d ) Ag
再是共轭方向,从而降低了收敛速度。
( d k )T A d k
为了避免计算矩阵A,应设法将上式中的 克服的方法是重设初始点,即将n步迭
矩阵A消去。
代得到的xn作为初始点重新迭代。
解得: k 
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
3. 共轭梯度法
3.1 无约束多变量静态最优化问题
 FR共轭梯度法的基本步骤:
6. 计算
|| g k 1 || 2
 
|| g k || 2
k
1. 给定初始点x0和允许误差ε。
2. 计算目标函数f (x)在x0处的梯度向量,和
k 1
k 1
k k
若  f ( x 0 )   则停止计算,所得x0为
d


g


d
0
0
近似最优解,否则令d   g ,置k=0。
7. 置步数k=k+1,返回步3。
3. 从xk出发,沿dk方向进行一维搜索,
若将上述步骤中的第6步改为PRP公
求最优步长αk,满足:
式,则可得PRP共轭梯度法的基本
k
k k
k
k
f ( x   d )  min f ( x  d )
步骤。

令xk+1 =xk+αkdk 。
4. 计算gk+1=▽f(xk+1),检验 g k 1   ,
若满足则停止计算,x*=xk+1 ,否则
转步5。
5. 判别是否k=n-1,若是,表示迭代
了n次,已用完n个共轭方向,令
NWPU
x0=xk+1, 转步2;否则转步6。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
3.1 无约束多变量静态最优化问题
例3 已知目标函数为
min
f ( x )  2 x12  x 22
设初始点x0=(2,
2)T ,终止误差ε=10-6 。试
第二次迭代:
8 16
g1  f ( x1 )  ( , )T
9 9
由FR公式,有
f ( x1 )  
 8 2 16 2
( ) ( )
|| g ||
4
0
  0 2  9 2 29 
|| g ||
8 4
81
1
2
用FR共轭梯度法求目标函数的极小值点。
解:第一次迭代:
因此新的搜索方向为:
目标函数的梯度为
8  16 T 4
1
1
0 0
T
d


g


d

(
,
)  (  8 ,  4 )T
f ( x)  ( 4x1 , 2x2 )
9 9
81
40
f ( x0 )  ( 8, 4 )T
f ( x 0 )  
 ( 1 ,  4 )T
0
0
T
令 d  g  ( 8,  4)
从x0出发沿d0进行一维搜索,得
5
0 
18
从而
5
x1  x 0   0 d 0 ( 2 , 2 )T  (  8 ,  4 )T
18
2 8 T
(
, )
9 9
81
从x1出发沿d1进行一维搜索,得
9
1 
20
2
1
1 1
x  x  d
 2 8 T 9 40
(
, )   ( 1 ,  4 ) T  ( 0,0 ) T
9 9
20 81
2
2
T
此时 g  f ( x )  (0 , 0 ) f ( x 2 )  
得问题的最优解为x*=(0, 0)T。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
3.2 最优控制问题
用共轭梯度法求解问题6-1的计算步骤:
考虑最优控制问题6-1:
1. 给定初始控制u0(t)和允许误差ε>0,置k=0。
2. 在第k步,以x(t0)为初值,从t0到tf正向积分
状态方程组,得到状态轨线xk(t) 。
3. 计算性能指标J[uk(t)] 。
4. 以λ(tf)为初值,从tf 到t0反向积分协态方程,
得到λk(t) 。
H
k
k
5. 计算梯度向量: g  J [u ( t )]  u
假定已获得第k次的近似uk(t),并且
计算出梯度向量gk
g k  J [ u k ( t )] 
H
u
u( t ) uk ( t )
向量函数的内积定义为
k
k
tf
k
T
k
( g (t ), g (t ))   [ g (t )] g (t )dt  
t0
u( t ) u k ( t )
tf m
t0
k
i
k
i
 g (t )g (t )dt 6. 确定寻优方向:若k=0,则d0=-g0,否则
i 1
d k   g k   k 1d k 1
用内积定义范数
共轭系数
tf
g k (t )   [ g k (t )]T g k (t )dt
 t0

1
2

k 1

g k (t )
g k 1 ( t )
2
2
7. 计算控制函数
J [u
k 1
k
( t )]  J [u ( t )]

J [ u k ( t )]
u k 1 (t )  u k (t )   k d k
一维寻优
确定αk
J [uk   k d k ]  min J [uk   d k ]
 0
8. 当满足终止条件时则停止计算,否则令
k=k+1回到步骤2。
NWPU
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
3.2 最优控制问题
(1) k=0时的计算
选初始控制u0(t)=0,代入状态方程和协态方程,得
x1  0, x 2  x1 , 1   2 , 2  1
例4 设系统的状态方程为
1
x1(t )  u, x 2 (t )  (1 u) x1  u  u2
2
利用初值,积分可得
初始状态:x1(0)=0.5, x2(0)=0
1
1
x10 ( t )  , x20 ( t )  t , 10 ( t )   t  1
性能指标:
2
2
计算梯度向量
J  x2 (1)
用共轭梯度法确定最优控制u*(t)
使性能指标J达到极小。
解:哈密尔顿函数为:
1 

H  1u   2 (1  u) x1  u  u 2 
2 

协态方程:
1  
H
  2 (1  u)
x1
2  0
 10  02 x10  02   t  1  0.5  1  2.5  t
( x 0 , u0 ,0 )
49
97
49
1
0
0 0
0 0
u
(
t
)

u
(
t
)


g



g

(t  2.5)
计算
97
0
一维搜索,得  
(2) k=1时的计算
将u1(t)代入状态方程和协态方程,利用初值,可得
49  t 2 5  1
x ( t )    t  
97  2 2  2
2  c

0
x1 (1)
H
u
1
1
2
t 49  t 3 t 2 15   49   t 4 13 3 15 2 25 
x ( t )      t       t  t  t 
2 97  6 2 4   97   8 12
8
8 
49 2 51
1
11 (t )  
t 
t  , 12 ( t )  1
194
194 97
NWPU
1
2
横截条件:
1 (1) 
g0 
2 (1)  1
c 1
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
3.2 最优控制问题
g1 
H
u

( x1 ,u1 ,1 )
48 22
t
97 97
计算共轭系数
0 
g1 ( t )
2
g 0 (t )
2


tf
t0
2
22 
 48
  t   dt
192
97 
 97

tf
2
194 2
(
2
.
5

t
)
dt

t0
确定寻优方向
d 1   g1   0 d 0 
一维搜索,得  1 
48
22 192
t

( t  2.5)
97
97 194 2
194
196
计算
u2 (t )  u1 (t )   1 g1  t 
3
2
*
2
可以证明 u (t )  u (t ) 。只要证明
H
u
u2
 (1  2 x1  2  2 u) u 2  0 即可。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4. 具有约束的最优控制问题
4.1 约束梯度法
问题 6-3 设系统的状态方程为
x ( t )  f [ x ( t ), u ( t ), t ]
(6-2)
uˆ i ( t )  a i
a i  uˆ i ( t )  bi
uˆ i ( t )  bi
(b) 设约束条件(7-6)取如下形式:
 i (t )  ui (t )   i (t ) , i  1,, m
控制约束为:
g[ x ( t ), u( t ), t ]  0
(6-6)
确定最优控制,使性能指标
J   [ x ( t f ), t f ] 
 ai

u i ( t )  L(1u ) [ uˆ i ( t )]   uˆ i ( t )
 b
 i

tf
t0
L[ x ( t ), u ( t ), t ]dt
达到极小值,其中x(t0)=x0,tf固定,x(tf)
自由,g[x(t),u(t),t]是l维连续可微向量函
数,l≤m。
下面给出几个构造约束算子的具体例子:
(a) 设约束条件(6-6)取如下形式:
ai  ui (t )  bi , i  1,, m
其中ai, bi为实数,且ai≤bi。
对于任意控制 uˆ (t )  Rm 定义约束算子 L(2u ) :
uˆ i ( t )   i ( t )
 i ( t )

u i ( t )  L(u2 ) [ uˆ i ( t )]   uˆ i ( t )  i ( t )  uˆ i ( t )   i ( t )
 ( t )
uˆ i ( t )   i ( t )
 i
(c) 设约束条件(7-6)取如下形式:
 i [ x(t ), u(t ), t ]  ui (t )   i [ x(t ), u(t ), t ]
i  1,, m
对于给定的 uˆ (t )  Rm,由状态方程解得
x(t )  x[uˆ (t ), t ] ,代入函数  i ,  i 中,得
 i (t )   i [ x(t ), uˆ (t ), t ],  i (t )   i [ x(t ), uˆ (t ), t ]
对于任意控制 uˆ (t )  Rm 定义约束算子 L(1u ) : 化为情形(b)。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4. 具有约束的最优控制问题
4.1 约束梯度法
约束梯度法求解问题6-3的计算步骤:
8. 约束算子作用:
u1 ( t )  Lu [ uˆ 1 ( t )]
1
0
1. 选定初始控制u0(t) ∈Ω,允许误差ε>0。 9. 以u (t)代替 u (t),重复步骤(2)(3), 得
J[u1(t)]。
0
2. 将u (t)代入状态方程,以x(t0)为初值,
10. 检查终止条件,若满足则终止计算,
得到状态轨线x0(t) 。
否则以u1(t)代替 u0(t),重复步骤(4)(5) …的
0
3. 计算性能指标J[u (t)] 。
过程。
4. 解协状态方程,得到λ0(t) 。
【注】为得到较好的内点,在搜索时加约
5. 计算性能指标在u0处的梯度
H [ x 0 ( t ), u 0 ( t ), 0 ( t ), t ]
0
0
J [ u ( t )]  g 
u
6. 确定搜索步长α0,由一维搜索法确定。
束算子作用,即
6′确定搜索步长α0
J [ Lu ( u 0   0 g 0 )]  min J [ Lu ( u 0  g 0 )]
 0
J [ u 0   0 g 0 ]  min J [ u 0   g 0 ]
 0
7. 计算:
uˆ 1 ( t )  u 0 ( t )   0 g 0
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4. 具有约束的最优控制问题
4.2 罚函数法
其中μ是很大的正数。
求解此无约束问题得:
2
基本思想:根据约束的特点,构
x1(  )  x 2(  ) 
造某种惩罚函数,然后把它加到
2  1
目标函数中去,将约束问题的求 当    时,
解化为无约束问题的求解。
x1  , x2  T  ( x1* , x2* )T  (1,1)T
例5 求解等式约束问题:
2
1
min f ( x1 , x2 )  x  x
s.t .
x1  x2  2  0
 x12  x 22
解:构造 F  x1 , x 2   

原问题:求多变量目标函数f(x)满足等
式约束gi(x)=0 (i=1,2,…,m)下的最小值
问题。
2
2
x1  x 2  2 构造新目标函数为
m
2
x1  x 2  2 P ( x ,  )  f ( x )  p( x )  f ( x )    [ g i ( x )]
i 1
但是F(x1, x2)性态极坏,无法用有效的 其中μ称为惩罚因子,P(x,μ)称为罚函
数,由原目标函数和罚项组成。
无约束优化算法求解。
当   时,必须有gi(x)→0,P才能
设想构造:
达到最小值。
P ( x ,  )  x 2  x 2   ( x  x  2)2
1
2
1
2
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4. 具有约束的最优控制问题
4.2 罚函数法
例 用罚函数法求解:
min f ( x )  x12  x 22
s.t . x1  1  0
不等式约束的原问题:求多变量目标
函 数 f(x) 满 足 不 等 式 约 束 gi(x)≥0 解:P ( x , )  x12  x 22   min 0, x1  12
(i=1,2,…,m)下的最小值问题。
 x12  x 22
x1  1  0
即:P ( x , )   2 2
2
因为 g i ( x )  0
x

x


(
x

1
)
x1  1  0
2
1
 1
 min{ g i ( x ),0}  0  min 2 { g i ( x ),0}  0
所以可设
m
p( x )   min 2 { gi ( x ), 0}
i 1
构造新目标函数为
m
P
x1
x1  1 P
 2 x1
 2 x2
2
x

2

(
x

1
)
x


1

x
1
1
 1
2
因此:  
P
令: x
1

P
0
x 2
P ( x , )  f ( x )  p( x )  f ( x )    min 2 { gi ( x ),0} 得:x1 ( )  
i 1

 1
x 2 ( )  0
目标函数附加的 p( x )只对不满足约束 最优值:
2
2
条件的点实行惩罚,其作用是在极小
  
 1 

   
 
P ( x , )   
  1
  1   1
化过程中迫使迭代点靠近可行域。
当    时,必须有gi(x) →0,P
才能达到极小值。
当    时:x1 ( )  1, x2 ( )  0
x( )  x * , P ( x , )  f ( x * )  1
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4. 具有约束的最优控制问题
4.2 罚函数法
罚函数法求解不等式约束问题的计算步骤:
1. 选定初始点x0,允许误差ε>0,初始惩罚因子η0 (可取η0=1),置k=0。
2. 以xk为初始点,求解无约束问题
m
minn P ( x, k )  minn { f ( x )   k p( x )}  minn { f ( x )   k  min 2 [ g i ( x ),0]}
xR
xR
xR
i 1
得到xk+1。
3. 若ηkp(xk+1) ≤ε,则x*=xk+1;否则转第4步。
4. 令ηk+1=cηk (c>1为惩罚因子的放大系数) ,ηk→+∞ (k →+∞ ),k=k+1转第
2步。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4. 具有约束的最优控制问题
在给出算法之前,先讨论乘子v的估算。
对问题6-4:
问题 6-4 设系统的状态方程为
 (t f )  [
x ( t )  f [ x ( t ), u ( t ), t ]
控制约束为:
(6-2)
g[ x ( t ), u( t ), t ]  0
(6-6)
终端约束为:

G T
 (
) v ]t f
x
x
r
G j

 i (t f ) 

v j i  1,  , n
 x i ( t f ) j 1  x i ( t f )
~
而对于 min J ( u)
G [ x ( t f ), t f ]  0
(6-7)
i (t f ) 
确定最优控制,使性能指标
(6-9)
r
G j

  2  G j [ x ( t f ), t f ]
 x i ( t f ) j 1
x i ( t f )
(6-10)
J   [ x ( t f ), t f ]   L[ x ( t ), u ( t ), t ]dt
两者比较可以看出,2μGj起到了拉格朗日乘
t
达到极小值。其中x(t0)=x0, tf固定,x(tf)自 子vj的作用。
由,G[x(tf), tf]是r维连续可微向量函数, 对v 进行调整 :
j
r≤n。
(1) 取v0 , β,置k=0
tf
0
构造罚函数
(2) 计算
r
J ( u )  J ( u )    G i2 [ x ( t f ), t f ]
i 1
 
tf
t0
l
2
 {min( g , 0)} dt
i
i 1
(6-8)
v kj  1  v kj   G j [ x k  1 ( t f ), t f ]
β是适当选取的因子。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
4. 具有约束的最优控制问题
问题 6-4 设系统的状态方程为
x ( t )  f [ x ( t ), u ( t ), t ]
控制约束为:
(6-2)
g[ x ( t ), u( t ), t ]  0
(6-6)
终端约束为:
2. 求解状态方程,得x0(t) 。
3. 修改乘子,第一次迭代v=v0
后面迭代v=v+βG
4. 解协状态方程,得到λ0(t) 。
G [ x ( t f ), t f ]  0
(6-7)
确定最优控制,使性能指标
J   [ x ( t f ), t f ] 
罚函数法求解问题6-4的计算步骤:
1. 选定初始控制u0(t) ∈Ω,允许误差ε>0,
β>0, v0, η0 ,μ0,c 。

tf
t0
5. 求解无约束问题 min J ( u ) :
J (u)  J (u)  p( u)
r
L[ x ( t ), u ( t ), t ]dt
达到极小值。其中x(t0)=x0, tf固定,x(tf)自
由,G[x(tf), tf]是r维连续可微向量函数,
r≤n。
2
i
 J (u)    G [ x ( t f ), t f ]   
i 1
tf
t0
l
2
{min( g , 0)} dt
i
i 1
6. 若p(u) ≤ε,转第8步;否则转第7步。
7. 修正罚因子η1=cηk ,μ1=cμk 。
8. 检查终止条件,若满足则终止计算,否
则以u1(t)代替 u0(t)转第2步。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
5. 间接法-拟线性化法
• 直接法的特点是,在每一步迭代中,u(t)不一定要满足H
取极小的必要条件,而是逐步改善它,在迭代终了使它满
足这个必要条件,而且,积分状态方程是从t0到tf ,积分协
态方程是从tf 到t0 ,这样就避免了去寻找缺少的协态初值
 (t0)的困难。常用的直接法有梯度法,二阶梯度法,共轭
梯度法。
•
间接法的特点是,在每一步迭代中都要满足H取极小的必
要条件,而且要同时积分状态方程和协态方程,两种方程
的积分都从从t0到tf或从tf到t0 。常用的间接法有边界迭代法
和拟线性化法。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
5. 间接法-拟线性化法
方法的特点:用迭代算法来改善对正则方程解的估计,使
它逐步逼近正则方程的精确解。
利用哈密顿函数H取极小的方法
正则方程
H ( x, u,  , t )
0
u
x 
可解出u,将它表示为x和 的函数,即
H

  
u  u( x,  , t )
H
x
将所求得的 u  u( x,  , t ) 代入正则方程,消去正则方程中的u。
T
再引入增广状态 Y (t )   x(t )  (t )
Y (t )  R 2 n
n个初始条件 x ( t0 )  x0
n个终端条件  (t f )   f
则正则方程可写为 Y (t )  g (Y , t )
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
5. 间接法-拟线性化法
拟线性化法将非线性两点边值问题转化为线性两点边值问题,因此变得
容易求解。
K
设第K步迭代解为 Y K (t ) ,将正则方程在 Y (t ) 展开,保留一次项,可得
到第K+1步的解Y K 1,有
g
K 1
K

Y
 g (Y , t )  ( ) K (Y K 1  Y K )
Y
满足给定边界条件
Y jK 1 ( t0 )  x j ( t0 )  x j 0
Y jK 1 (t f )   j (t f )   jf
K  0,1
j  1, 2  n
j  n  1, n  2,  2n
则正则方程的展开式可写成线性非齐次微分方程
g
g
K 1
K 1
K

Y
 ( )K Y
 [ g (Y , t )  ( ) K Y K ]
Y
Y
g
K 1
K 1

或 Y
 AK (t )Y
  K (t ) 其中,系统矩阵 AK (t )  ( ) K
Y
g
K
驱动函数向量  K (t )  [ g (Y , t )  (
)K Y K ]
NWPU
Y
NORTHWESTERN POLYTECHNICAL UNIVERSITY
最优控制
5. 间接法-拟线性化法
当满足 Yi K 1 (t )  Yi K (t )   时,停止计算。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
5. 间接法-拟线性化法
例 系统方程为
x   x 2  u
x(0)  10
1 1 2
2
性能指标为 J 
(
x

u
)dt

2 0
用拟线性化法求 u (t ) ,使 J 极小。
1 2
解 哈密顿函数为 H  ( x  u 2 )   ( x 2  u )
2
H
 u    0  u  
u
代入正则方程中,得到
    x 2     g1 
x

Y      
     g (Y , t )
     x  2 x   g 2 
x(0)  10

 (1) 
0
X (1)
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
5. 间接法-拟线性化法
2n×2n维的系统矩阵
g1 
 g1
K


2
x
1 
g

x




AK (t )  ( ) K 
 K
K

g

g


Y
2  1 2 x 
2
2


x
  K
n×1维的驱动函数向量
g
 K (t )  [ g (Y , t )]  [( ) K Y K ]
Y
K
  ( x K ) 2  K    2 x K
 1 x K 
 K
 K
K K
K  K 
 x  2 x  2  1 2 x   
 (x K )2 

K K
  2 x 
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
最优控制
5. 间接法-拟线性化法
非齐次时变微分方程 Y K 1  AK (t )Y K 1   K (t )
于是,在正则方程线性化后得到的非齐次时变微分方程中,
系数阵 AK (t ) 和驱动项 K (t ) 都已确定,解这个非齐次时变
微分方程,并用边界条件 x K 1 (0)  10 和 K 1 (1)  0 以决定
通解中的未定常数,就完全确定了 Y K 1 (t ) ,这就完成了一
次迭代。当满足精度要求时,停止计算,求解结束。
NORTHWESTERN POLYTECHNICAL UNIVERSITY
NWPU
Download
Study collections