动态规划(理论部分)
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
最优 决 策 C1 D1
f3(C1)=8
B1
2 10 6
12
14
C1
f3(C2)=7
9
6
3
f4(D1)=5
D1
5
f5(E)=0
A
5
B2
4 13
10
C2
5 8
E D2
10 2
1
B3
12 11
C3
f4(D2)=2
(C 2 , D1 ) f 4 ( D1 ) f 3 (C 2 ) min ( C , D ) f ( D ) 2 2 4 2 6 5 11 min min 7 最优决策C 2 D 2 5 2 7
C2
5 8
E
D2
10 2
1
B3
12 11
C3
f4(D2)=2
(C1 , D1 ) f 4 ( D1 ) f3 (C1 ) min (C1 , D2 ) f 4 ( D2 ) 3 5 8 min min 8 9 2 11
我们要寻找的是整个问题,也就是所有阶段总体的一个最优方 案,这就是动态规划所要讨论的问题。
一、多阶段决策问题
所谓多阶段决策问题是有这样一类决策过程,它可以划分为若 干个相互联系的阶段,在任一阶段都有若干种方案可供选择,选择 哪一种方案需要作出决策,这样就形成一个决策序列,通常称为一 种策略。不同的策略就产生不同的效果,在所有可能的策略当中, 选择一个效果最好的最优策略,就是解决多阶段决策问题的主要目 的。下面举几个例子来说明。
例如,在最短路线问题中,如果找到了A到E的最短路:
A B1 C2 D1 E
则 C2 D1 E 应该是由C2 出发到E点的所有可能不同线路 中的最短路线
最短路线这一特性,启发我们找最短路线的方法:那就是从最 后一段开始,用由后向前逐步递推的方法,求出各点到E点的最短 路线,最后求得由A点到E点的最短路线。所以,动态规划的常用 的方法是从终点逐段向始点方向寻找“最短路线” 。如图所示:
以上面的例1来说明动态规划解决问题的思想。设:
Sk----第k阶段的起点(状态变量)
dk(x, y) -----第k阶段的顶点 x 到顶点 y 的“距离”;
fk(Sk) ------第k阶段从顶点Sk到终点的最短“路”长。
最短路线的重要特性就是:如果最短路线在第K站通过点Pk。 则由点Pk 出发到达终点的这条路线,对于从点Pk 出发到达终 点的所有可能选择的不同路经来说,必定也是最短路线。
2
1
B3
f2(B3)=19
12 11
C3
f3(C3)=12
10
状态 最优决策 状态 最优决策 状态 最优决策 状态 最优决策 状态 A ( A,B2) B2 (B2,C1) C1 (C1,D1) D1 (D1,E) E
从A到E的最短路径为19,路线为A→B 2→C1 →D1 →E
三、动态规划的基本概念
f2(B1)=21
f3(C1)=8
12 14
B1
2 10 f2(B2)=14 6
C1
f3(C2)=7
9
3
f4(D1)=5
6
D1
5
f5(E)=0
A
5
B2
4 13
10
C2
5 8
E D2
f4(D2)=2
2
1
B3
12
11
C3
f3(C3)=12
10
( B2 , C1 ) f3 (C1 ) 68 14 f 2 ( B2 ) min ( B2 , C2 ) f3 (C2 ) min 10 7 min 17 14 ( B , C ) f (C ) 4 12 16 3 3 2 3 最优 决 策 : B2 C1
行进方向 起点 动态规划寻优途径 终点
下面按上述思想,将例1从最后一段开始计算,由后向前逐步 推移至A点。 设想有k =5 时, f5(E)= 0 。 B1
2 10 6 6 10 4 1 13 5 12 14
C1
9
3
D1
5
f5(E)=0
A
B2
C2
5 8
E
D2
10 2
B3
12 11
C3
K=4时: B1
A
( A,B2) B2 ( B2 ,C1 ) C1 ( C1 , D1 )
D1 ( D1 ,E)
E
f2(B1)=21
f3(C1)=8
12 14
B1
f1(A)=19
2 10 f2(B2)=14 6
C1
f3(C2)=7
9 6
3
f4(D1)=5
D1
5
f5(E)=0
A
5
B2
4 13
10
C2
5 8
E D2
f4(D2)=2
f2(B1)=21
f3(C1)=8
12 14
B1
f1(A)=19
2
5
C1
f3(C2)=7
9 6
3
f4(D1)=5
10 f2(B2)=14
6 10
D1
5
f5(E)=0
A
B2
4 13
C2
5 8
E D2
f4(D2)=2
2
1
wk.baidu.com
B3
f2(B3)=19
12 11
C3
f3(C3)=12
10
状态 最优决策 状态 最优决策 状态 最优决策 状态 最优决策 状态
p1,n={ u1,u2,……,un }
称为全过程策略,简称策略;而在k子过程上的决策序列
pk,n={ uk,uk+1,……,un }
f3(C1)=8
B1
2 10 6
12 14
C1
f3(C2)=7
9 6
3
f4(D1)=5
D1
5
f5(E)=0
A
5
B2
4 13
10
C2
5 8
E D2
f4(D2)=2
2
1
B3
12 11
C3
f3(C3)=12
10
(C 3 , D1 ) f 4 ( D1 ) f 3 (C 3 ) min ( C , D ) f ( D ) 4 2 3 2 85 13 min min 12 最优决策C 3 D 2 10 2 12
动态规划
第四章
动态规划
动态规划是解决多阶段决策过程最优化问题的一种方法。在二 十世纪五十年代由美国数学家理查德.贝尔曼(Richard.Ba11man) 首先提出的。它可以把一个 n 维最优化问题转化为 n 个一维最优化 问题来求解。 一个决策问题,往往可以分解成若干个相互联系,又相对独立 的阶段,对于每一个阶段,存在着很多方案可供选择,我们要对每 个阶段作出一个决策。 而各阶段之间又有密切的联系,某一个阶段的不同决策,将会 对其它阶段的决策产生重大的影响,某个阶段局部的较优方案,未 必是整个问题的最好方案,某个阶段局部的不好方案,也未必是整 个问题的不好方案。
Sk
Tk
Sk+1
Vk
…
Sn
Tn
Sn+1
Vn
n个决策子问题 k称为阶段变量 Sk描述k阶段初的状态,即状态变量 一般把输入状态称为该阶段的阶段状态。 uk的取值代表k阶段对第k子问题所进行的决策,称为k阶段 的决策变量 Vk为k阶段从状况Sk出发,做出决策uk之后的后果,
(4)策略(policy)
把从第一阶段开始到最后阶段终止的整个决策过程,称为问题 的全过程;而把从第k阶段开始到最后阶段终止的决策过程,或称 为k子过程。在全过程上,各阶段的决策按顺序排列组成的决策序 列
2 10 6 6 10 5 12 14
C1
9
3
f4(D1)=5
D1
5
f5(E)=0
A
1
B2
4
13
C2
5 8
E D2
10
2
B3
12
11
C3
f 4 ( D1 ) d ( D1 , E ) f5 ( E ) 5 0 5
B1
2 10 6
12
14
C1
9 6
3
f4(D1)=5
D1
5
f5(E)=0
f2(B1)=20
f3(C1)=8
12 14
K=2时:
2
B1
10 6
C1
f3(C2)=7
9 6
3
f4(D1)=5
D1
5
f5(E)=0
A
5
B2
4 13
10
C2
5
E
8
1
D2
f4(D2)=2
2
B3
12
11
C3
f3(C3)=12
10
( B1 , C1 ) f3 (C1 ) 12 8 20 f 2 ( B1 ) min ( B1 , C2 ) f3 (C2 ) min 14 7 min 21 20 ( B , C ) f (C ) 10 12 22 3 3 1 3 最优 决 策 : B1 C1
f2(B1)=21
f3(C1)=8
12 14
B1
2 10 f2(B2)=14 6
C1
f3(C2)=7
9 6
3
f4(D1)=5
D1
5
f5(E)=0
A
5
B2
4 13
10
C2
5
E
8
1
D2
f4(D2)=2
2
B3
f2(B3)=19
12
11
C3
f3(C3)=12
10
( B3 , C1 ) f3 (C1 ) 13 8 21 f 2 ( B3 ) min ( B3 , C2 ) f3 (C2 ) min 12 7 min 19 19 ( B , C ) f (C ) 11 12 23 3 3 3 3 最优 决 策 :B3 C2
(3) 决策(decision)决策表示在某一阶段处于某种状态时,决 策者在若干种方案中作出的选择决定。描述决策的变量称决策变量, 第k阶段的决策变量常用uk表示。决策变量的取值会受到状态变量 的制约,被限制在某一范围之内。
多阶段决策过程如下: u1 u2 uk un
S1
T1
S2
V1
T2
S3
V2
…
二、动态规划的基本思想
用动态规划求解多阶段决策问题,是把整个问题划分为若干阶 段后,依次地为每一个阶段作出最优决策,而每个阶段的最优决策 应该是包含本阶段和所有以前各阶段在内的最优决策,也就是到本 阶段为止,包含以前各阶段在内的最优总决策。因此,在确定了最 后一个阶段的决策之后,整个问题的最优决策序列也就随之产生。 这就是用动态规划解多阶段决策问题的基本思想。
(1) 阶段(stage) 把所研究的决策问题,按先后顺序划分为若 干相互联系的决策步骤,以便按一定的次序进行求解。描述阶段的 变量称阶段变量,常用k表示。 (2)状态(state) 状态表示每个阶段开始时所处的自然状况或 客观条件,它描述了影响决策的因素随决策进程的变化情况,它既 是前面阶段所作决策的结果又是本阶段作出决策的出发点和依据。 描述状态的变量称为状态变量,第k阶段的状态变量常用sk表示。 通常,在第一阶段状态变量s1是确定的,称初始状态。
例1: (最短路程问题)设从A地到E地要铺设一条管道,其中要 经过若干个中间点(如图)。图中两点之间连线上的数字表示两地间 的距离。现在要选择一条铺设管道的路线,使总长度最短。 B1
2 10 12 14
C1
9 6
3
6
D1
5
A
5
B2
4 13
10
C2
5 8
E
D2
2
1
B3
12 11
C3
10
在这个问题中,从A到B 1 ,B2 , B3中的哪一个点要作出一项 决策,从B 1 ,B2 , B3某点到 C 1,C2,C3 中的哪一个点又要作出一 项决策等等。所以总共要作出四个决策。因此,我们可以把整个路 程分为A,B ( 包括B 1 ,B2 , B3) ,C ( 包括C 1,C2 , C3 , ) ,D (包括D1和D2),E 五个阶段。这就是一个多阶段的决策问题。
K=1时:
f1(A)=19
2 5
f2(B1)=21
f3(C1)=8
12 14
B1
10 f2(B2)=14 6
C1
f3(C2)=7
9
3
f4(D1)=5
6
D1
5
f5(E)=0
A
B2
4 13
10
C2
5 8
E D2
f4(D2)=2
2
1
B3
f2(B3)=19
12
11
C3
f3(C3)=12
10
( A, B1 ) f 2 ( B1 ) 2 21 23 f1 ( A) min ( A, B2 ) f 2 ( B2 ) min 5 14 min 19 19 ( A, B ) f ( B ) 1 19 20 3 2 3 最优 决 策 : A B2
A
1
5
B2
4 13
10
C2
5 8
E D2
10 2
B3
12 11
C3
f4(D2)=2
f 4 ( D2 ) d ( D2 , E ) f5 ( E ) 2 0 2
K=3时:
f3(C1)=8
B1
2 10 6
12 14
C1
9 6
3
f4(D1)=5
D1
5
f5(E)=0
A
5
B2
4 13
10