4动态规划
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
问题,并存储子问题的解而避免计算重复的子问题, 以解决最优化问题的方法策略。 并且原问题的最优解中包含了子问题的最优解,就可 以考虑用动态规划解决。
一般来说,只要原问题可以划分成规模更小的子问题,
4.1 动态规划基本概念与方法
一、多阶段决策问题与动态规划方法
[例1] 时间阶段——生产负荷问题 某种机器可以在高、低两种负荷下进行生产。高负荷 年产量8,年完好率0.7;低负荷年产量5,年完好率 0.9。现有完好机器1000台,需制定一个5年计划,以 决定每年安排多少台机器投入高、低负荷生产,使5年 的总产量最大。
穷举法计算量:(7*7*7*7)*4=2401*4=9604
DP方法计算量: 7*7+7*7+7*7+7=154
二、基本概念与方程
1、基本概念 阶段——分步求解的过程,用阶段变量k表示,k= 1, …, n
状态——每阶段初可能的情形或位置,用状态变量sk
表示,sk的取值集合称为状态集合Sk 。
动态规划中的状态应具有无后效性。
决策——每阶段状态确定后的抉择,即从该状态演变到 下阶段某状态的选择,用决策变量xk(sk)表示。 Dk(sk)表示第k阶段从状态sk出发的允许决策集合。
策
略——由各阶段决策组成的序列,记P1n (s1)= {x1(s1), …, xn(sn)},称Pkn(sk)= {xk(sk), …, xn(sn)}为阶段k至n的后部子策略。 允许策略集合、最优策略
问题:动态规划的最优解和最优值各是什么?
——最优解:最优策略P1n ——最优值:最优指标f1
小结:多阶段决策问题的数学模型 适于应用动态规划方法求解的一类多阶段决策 问题,亦即具有无后效性的多阶段决策问题的 数学模型总结如下:
f opt (v1n )
x1 ~ xn
sk 1 Tk ( sk , xk ) sk Sk s .t . xk Dk k 1, 2, , n
10 4 13 12 11 2 5 1
6+8
10+7 4+12 13+8 12+7 11+12 2+20 5+14 1+19 19 AB2C1D1E 19 B3C2D2E 14 B2C1D1E
P *= AB C D E(最短路); f = 19(最短距)
2、连续型——用公式递推求解 [例4] 用动态规划方法求解例1中的生产负荷问题。 某种机器可以在高、低两种负荷下进行生产。高负荷 年产量8,年完好率0.7;低负荷年产量5,年完好率 0.9。现有完好机器1000台,需制定一个5年计划,以 决定每年安排多少台机器投入高、低负荷生产,使5年 的总产量最大。
vk 5 vi
i k
5
基本方程: f k max{vk f k 1 }
f 6 0, k 5,,1
k=5 f5 max{v5 f 6 } max {8 x5 5( s5 x5 )}
0 x5 s5
max {3 x5 5 s5 }
i k n
v f } k k 1 f k max{ x f n1 0, k n,,1
k
[例5] 某公司拟将某种高效设备5台分配给所属甲、乙、 丙3厂。各厂获此设备后可产生的效益(万元)如下表。 问应如何分配,可使所产生的总效益最大?
k
动态规划求解的一般步骤: (1)确定过程的分段,构造状态变量; (2)设置决策变量,写出状态转移;
(3)列出阶段指标和指标函数;
(4)写出基本方程,由此逐段递推求解。
三、求解方法
1、离散型——用表格方式求解 [例3] 用动态规划方法求解例2中的最短路问题。
解:
设阶段k= 1, 2, 3, 4 依次表示4个阶段选路的过程 状态sk 表示 k 阶段初可能处的位置 决策xk 表示 k 阶段初可能选择的路线 阶段指标vk 表示 k 阶段与所选择的路线相应的路长 指标函数 v v 表示 k 至4阶段的总路长 k4 i
状态转移——由sk转变为sk+1的规律,记sk+1 =Tk (sk, xk)。
状态转移方程、状态转移函数
阶段指标——每阶段选定决策xk后所产生的效益,记 vk=vk (sk, xk)。 指标函数——各阶段的总效益,记相应于Pkn的指标函 数为vkn=vkn (sk, Pkn )。 其中最优的称最优指标函数,记fk= fk(sk)=opt (vkn )。
不同时间阶段的决策问题:
(1)工厂生产过程:由于市场需求随着时间而变化, 为了取得最佳经济效益,要在生产过程中,逐月或者 逐季度地根据库存和需求情况决定生产计划安排。 (2)设备更新问题:设备刚买来时故障少,经济效益 高,转让处理价值也高;随着使用年限的增加,故障 多,经济效益差,处理价值也越低。如果卖去旧的买 新的,还需要付出更新费.因此就需要综合权衡决定 设备的使用年限,使总的经济效益最好。
max {1.4 x4 12.2 s4 }
* x4
s4 , f 4 13.6 s4
k=3
f3 max{v3 f 4 } max {0.28 x3 17.24 s3 }
0 x3 s3
* x3
s3 , f3 17.52s3
0 x 2 s2
k=2
n
模型特点:变量分离。
3、用动态规划方法求解
阶段k:1,…,n,表示把资源分配给第i种产品的过程 状态sk:表示给第k种产品分配之前还剩有的资源量
决策xk:表示分配给第k种产品的资源量 基本方程: 状态转移sk+1 = sk –xk
阶段指标vk = gk(xk ) 指标函数vkn = gi ( xi )
(20) (19) (14) (19)
( 8) ( 7) (12)
( 5)
( 2)
(3)动态规划方法 基本思想:从过程的最后阶段开始考虑,逆着实际过程 发展的顺序,找出所有可能状态的最优后继过程,逐段 向前递推计算直至始点。 计算过程中删去了所有中间非最优的方案组合,从而使 计算量比穷举法大为减少。
因此,最优计划为:
第 1年 高负荷 低负荷 0 1000 第 2年 0 900 第 3年 810 0 第 4年 567 0 第 5年 397 0
总产量为:23720
4.2 动态规划应用举例
学习方法建议:
第一步:先看问题,充分理解问题的条件、情况及求解目 标。 第二步:结合前面讲到的理论和解题过程,考虑如何着手 进行求解该问题的工作。分析针对该动态规划问题的“四 大要素、一个方程”,深入理解前面讲到的概念和理论。 第三步: 动手把求解思路整理出来,把该问题作为习题独 立的来做。 第四步:把自己的求解放到一边,看书中的求解方法,要 充分理解教材中的论述。 第五步: 对照自己的求解,分析成败。
(1)全枚举法或穷举法 从A到E的路程可分为4个阶段,共有16条可能的路线, 分别算出各条路线的距离,最后进行比较,可知最优路 线是A →B2→ C1 → D1 →E ,最短距离是19。 当节点很多时,计算量庞大,且包含许多重复计算。
(2)局部最优路径法 从A出发,并不顾及全线是否最短,只是选择当前最短途 径,“逢近便走”,这样所取决策必是: A →B3→ C3 → D1 →E ,全程长度是25。 显然,该方法错误地以为局部最优会得到整体最优,结 果常是错误的。
[例2] 空间阶段——最短路问题 如图为一线路网络,现要从A点铺设一条管道到 E点,图中两点间连线上数字表示两点间距离。 现需选一条由A到E的铺管线路,使总距离最短。
多阶段决策问题的特点:
(1)多阶段决策过程的发展是通过状态的一系列变换 来实现的。一般情况下,系统在某个阶段的状态转移 除与本阶段的状态和决策有关外,还可能与系统过去 经历的状态和决策有关。因此,问题的求解就比较复 杂、困难。 (2)适合于用动态规划方法求解的只是一类特殊的多 阶段决策问题,即具有“无后效性”的多阶段决策过 程。指系统从某个阶段往后的发展,仅由本阶段所处 的状态及其往后的决策所决定,与系统的历史无关。 (3)类型:离散确定型、离散随机型、连续确定型、 连续随机型。
f 2 max{v2 f 3 } max {0.5 x2 20.8 s2 }
k=1
* x2
0, f 2 20.8s2
f 2 max{v1 f 2 } max { 1.16 x1 23.72 s1 }
0 x1 s1
* x1
0, f1 23.72 s1 23720
i k 4
递推公式 f min{v f } k k 1 k
f 5 0, k 4,,1
k
4
sk D1 D2 C1
xk E E
D1 D2 D1 D2 D1 D2
vk 5 2
3 9 6 5 8 10
vkn=vk+ fk+1 5+0 2+0
3+5 9+2 6+5 5+2 8+5 10+2
2、基本方程
(1)基本原理 定理:
P1n ( x1 ,, xn )是最优策略 对任何k (1 k n)和允许
* * *
状态s1 , 有f1 opt {v1k f k 1 }.
P1 k
推论(Bellman最优性原理):
若P1n是最优策略,则对任何k (1 k n),子策略Pkn 对于
fk 5 2 8
7
Pkn* D1 E D2 E C1 D1 E
C2源自文库2E
3
C2
C3
12
C3 D2 E
k
sk B1
xk C1 C2
vk 12 14
vkn=vk+ fk+1 12+8 14+7
fk 20
Pkn* B1C1D1E
C1 2
B2 C2 C3 C1 B3 C2 C3 B1 1 A B2 B3
6
线性规划(第一、二、三章)回顾
线性规划问题 LP 建模、图解法、标准型、解、单纯性法 互为对偶 松弛问题 整数规划问题 IP 不同类型问题建模、 分支定界法、 0-1整数规划求解
对偶规划问题 DP 性质与定理、 影子价格、 灵敏度分析
运
筹
学
Operations Research
第四章 动态规划
Dynamic Programming
* *
以sk 为起点的k 至n子过程来说必为最优策略。
最短路线为例 A B2 C1 D1 E
(20) (19) (14) (19)
( 8) ( 7) (12)
( 5)
( 2)
(2)基本方程
根据最优性原理,可建立从后向前逆推求解的
递推公式——基本方程如下:
f opt { v f } k k 1 k x f 0 , k n , , 1 n1
0 x5 s5
* x5
s5 , f5 8s5
k=4
f 4 max{v4 f5 } max {8 x4 5( s4 x4 ) 8s5 }
0 x4 s4
max {3 x4 5s4 8[0.7 x4 0.9( s4 x4 )]}
0 x4 s4 0 x4 s4
解: 设阶段k= 1, 2, 3, 4, 5 表示第 k 年安排机器的过程
状态sk 表示第 k 年初的完好机器台数
决策xk 表示第 k 年投入高负荷的机器台数;则投入 低负荷的台数为sk – xk 状态转移sk+1 =0.7xk +0.9(sk –xk) 阶段指标vk =8xk +5(sk –xk) 指标函数
一、资源分配问题
1、问题的一般提法
设有某种资源,总数量为a,用于生产n种产品;
若分配数量xi用于生产第i种产品,其收益为
gi(xi)。问:应如何分配,可使总收益最大?
2、数学规划模型 决策变量:分配给第i种产品的资源数量xi
目标函数: max z gi ( xi )
i 1
n
x a i 约束条件:s.t . i 1 xi 0, i 1,, n
4.1 动态规划基本概念与方法 4.2 动态规划应用举例
动态规划是一项最优化技术,而不是一种算法;具体
问题具体分析处理。
1951 年,美国数学家 Bellman 提出解决多阶段决策问
题的“最优性原理”,创建了动态规划( 1957 年出 版)。
动态规划是一种将实际问题分解为更小的、相似的子