04第四章 动态规划

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第四章 动态规划初步

第一节 问题概览

一、问题的表述

与变分法和最优控制相比,动态规划处理离散时间与不确定性问题更有优势。在本章中,我们将简介在确定性下的动态规划的初步知识。我们从下面的问题开始:

{}0

(1)((0))((),(1))max t t x t V x U x t x t β∞=∞*

+=+∑ (P1)

.. (1)(())s t x t G x t +∈, 对所有的时间t

(0)x 给定。

约束说明在()x t 时(1)x t +的值。()x t 是状态变量,(1)x t +可以看作是t 时的控制变量。所以该约束说明给定状态变量如何确定控制变量。U 是瞬时回报(实值函数),U 不独立依赖于时间。

我们是要得到最优值序列{}0

(1)t x t ∞

*=+以使得((0))V x *最大,{}0

(1)t x t ∞

*=+被称

为最优计划(plan ),((0))V x *是值函数。我们把问题P1的形式称为序贯(sequence

problem )问题。显而易见,((0))V x *与初始的(0)x 相关,即不同的(0)x 会导致不同的最优值。下面是一个该问题形式的具体例子:

例1:{}

(),()

max

(())t

c t k t t U c t β∞

=∑ .. (1)(())()(1)()s t k t f k t c t k t δ+=-+- ()0k t ≥,(0)k 给定。

该例子实际上就是代表性主体(或计划者)的Ramsey 问题。该问题不是标准的P1问题的形式,但是我们可以将它转化成P1的形式:

{}0

(1)((0))((())(1)(1)())max t t k t V k U f k t k t k t βδ∞=*+=-++-∑

.. (1)[0,(())(1)()]s t k t f k t k t δ+∈+- 其中,()(())(1)(1)c t f k t k t k t δ=-

++-。对应P1式中:()()x t k t =,

(1)(1)x t k t +=+。

序贯问题有时会有优美的特性,但是它一般很难解出也不利于数值运算。 动态规划的思想是将上面的序贯问题转化成函数方程(............functional equation ..................).的形式...

,即将原问题的寻找一个最优序列转化成寻找一个函数。函数方程为: []()

()max (,)()y G x V x U x y V y β∈=+ (P2)

P2为贝尔曼方程。在P2中,我们寻找一个策略(policy),它决定给定()x t 时

(1)x t +应为多少,即如何由状态变量确定控制变量。由于U 不依赖于时间,策

略也不依赖于时间。我们以x 和y 分别表示状态和控制变量。这样,问题被表述成对任何x 选出适当的y 。从数学上看,这对应于对任何x 最大化()V x 。

下面是一个将问题P1转化成P2的具体例子(不是十分严格):

0((0))((),(1))t t V x U x t x t β∞

*

**==+∑

1

((0),(1))((1),(2))s t U x x U x t x t ββ∞

*

**==+++∑

((0),(1))((1))U x x V x β***=+

上式将一个最优化问题分成两部分,一部分是对当前期的优化,一部分是对后续路径的优化。

如果已知最优策略函数为[]():x X X ππ→,则可得最优值函数:

[]()(,()(())V x U x x V x πβπ=+

或者我们可以从上式来寻求()x π,如果求到了()x π,则()y x π=使P2最大化。后面的一些定理保证了我们在一定条件下从P2问题求出的解与从P1问题求出的解是一致的。这样,我们处理动态规划问题的步骤为:首先将P1转化为P2的形式,再在P2寻求最优策略函数()y x π=。

二、一阶条件

我们从如下形式的P2问题开始求解一阶条件(欧拉方程):

()

()[(,)()]max y G x V x U x y V y β∈=+ (1)

求解一阶条件分为三步:

1、上式右边对控制变量求导所得一阶导数为0。如果x 、y 是标量,则有:

(,)

()0U x y V y y β**∂'+=∂ (2) 2、对(1)式应用包络定理:

(,)

()U x y V x x

*∂'=∂ (3)

3、结合(2)和(3)得到如下的一阶条件:

(,())((),(())

0U x x U x x y x

ππππβ∂∂+=∂∂ (4)

其中,定义了()y x π=,且由(3)是得到:

((),(())

()(())U x x V y V x x

ππππ∂''==

∂ (5)

把(5)式的结果代入(2)即得(4)中的欧拉方程。 除了以上结果外,我们也有一个TVC :

((),(1))lim ()0()

t

t U x t x t x t x t β***

→∞∂+=∂ 例2:

{}0

0(),(1)ln ()max t t

t c t k t c t β

∞=∞

=+∑

[].. (1)()()s t k t k t c t α

+=-

0(0)0k k => 先写成递归形式:

{}0

()ln()()max y V x x y V y αβ≥=-+

由(2)得到:

1

()V y x y

α

β'=- (6) 由(3)得到:

相关文档
最新文档