运筹学04动态规划1-123页文档
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C3 4 D3
5 E2
2F
1
2
3
4
B2 2 C2 3 D2
E1
4
5
3
2
A3
B1 4 C1 3
D1
动态规划的基本概念 阶段; 状态; 决策和策略; 状态转移; 指标函数。
1 阶段(Stage)
将所给问题的过程,按时间或空间特征分解成若 干个相互联系的阶段,以便按次序去求每阶段的解。 用以描述阶段的变量叫作阶段变量,一般以k表示阶 段变量。
动态规划是现代企业管理中的一种重要决策 方法,可用于最优路径问题、资源分配问题、 生产计划和库存问题、投资问题、装载问题、 排序问题及生产过程的最优控制等。
动态规划的基本原理
多阶段决策过程最优化
多阶段决策过程是指这样一类特殊的活动过程,他 们可以按时间顺序分解成若干相互联系的阶段,在每 个阶段都要做出决策,全部过程的决策是一个决策序 列,所以多阶段决策问题也称为序贯决策问题。
d1
R1(d1)+ f2(S2)
f1(S1) d*1
S1 0 1 2 3 4 5
5 21 21 21 22 19 15 22 3
d1*=3,s2=s1- d1*=5-3=2, d2*=2 s3=s2- d2*=2-2=0, d3*=0
si f1(s1) d1* f2(s2) d2* f3(s3) d3*
3
2
D2
4
F
4
2
E1
D1
A
B
C
D
E
F
4
A
3
4
1
C3
B2
2
2
3
C2
5
3
B1
4
C1
3
D3
5
E2
3
2
D2
4
F
4
2
E1
D1
A
B
C
D
E
F
4
A
3
4
1
C3
B2
2
2
3
C2
5
3
B1
4
C1
3
D3
5
E2
3
2
D2
4
F
4
2
E1
D1
A
B
C
D
E
F
4
A
3
4
1
C3
B2
2
2
3
C2
5
3
B1
4
C1
3
D3
5
E2
3
2
D2
4
F
4
2
E1
D1
4
C1
3
D3
5
E2
3
2
D2
4
F
4
2
E1
D1
A
B
C
D
E
F
4
A
3
4
1
C3
B2
2
2
3
C2
5
3
B1
4
C1
3
D3
5
E2
3
2
D2
4
F
4
2
E1
D1
A
B
C
D
E
F
4
A
3
4
1
C3
B2
2
2
3
C2
5
3
B1
4
C1
3
D3
5
E2
3
2
D2
4
F
4
2
E1
D1
A
B
C
D
E
F
动态规划的函数方程(DP)
建立DP函数方程是指确定过程的阶段及阶段数, 规定状态变量和决策变量的取法,给出各阶段的 状态集合,允许决策集合,状态转移方程和指标 函数等。
第四章 动态规划
Dynamic Programming
本章内容重点
多阶段决策过程的最优化 动态规划的基本概念和基本原理 动态规划方法的基本步骤 动态规划方法应用举例
动态规划是解决多阶段决策过程最优化问题的一 种方法。由美国数学家贝尔曼(Bellman)等人在 20世纪50年代提出。他们针对多阶段决策问题的特 点,提出了解决这类问题的“最优化原理”,并成功 地解决了生产管理 、 工程技术等方面的许多实际问 题。
s3 ... sk
阶段k
状态
状态
sk+1 ... sn
阶段n
状态 sn+1
g1
g2
gk
gn
例1(不定阶段最短路线问题)
如图是一个五座城市的及其相连道路的交通图,线上的数字是对应的路 长。问:应如何选择行驶路线,才能使从A、B、C、D各城市到E城市的行 驶路程最短?
E
2
3
2
A
D
7
5
6
5
5
源自文库
1
B
C
0.5
2 7 9 10 - - - 10 2 3 9 12 14 14 - - 14 2,3, 4 10 14 17 18 16 - 18 3 5 11 15 19 21 20 16 21 3
k=1 时, 计算如下:
最优解:d*1 =3, d*2 =2,d*3 =0
即:在区1建3个分店,在区2建2个分店,而不在 区3建立分店。最大总利润=22。
1.从A城市直达E城市,一个阶段。
2.从A城市通过其他B、C、D三城市之一到E城市,二个阶 段。 3.从A城市通过其他B、C、D三城市之二到E城市,三个阶 段。 4.从A城市通过其他B、C、D三城市各一次到E城市,四个 阶段。
例2(一定阶段最短路问题)
W先生每天驾车去公司上班。如图,W先生的住所位于A,公司位于F,图中的直线段代表公 路,交叉点代表路口,直线段上的数字代表两路口之间的平均行驶时间。现在W先生的问题是 要确定一条最省时的上班路线。
3 决策和策略
(Decision and Policy)
当各段的状态确定以后,就可以做出不同的决定 (或选择),从而确定下一阶段的状态,这种决定 称为决策。决策变量用xk(Sk)表示,允许决策集合 用Dk(Sk)表示。
各个阶段决策确定后,整个问题的决策序列就构 成一个策略,用p1,n(x1,x2,…xn)表示。对每个实 际问题,可供选择的策略有一定的范围,称为允许 策略集合,用P表示。使整个问题达到最优效果的策 略就是最优策略。
动态规划数学模型由最优指标函数递推表达式、边界条件及状态转移方程构成。
fk(sk) Opt {rk(sk,dk}fk1(sk1)}, k1,2, ,n fn(sn)0dkDk(sk) sk1 Tr(sk,dk)
动态规划的优点:
•可把一个N维优化问题化成N个一维优化问题求解。 •DP方程中附加某些约束条件,可使求解更加容易。 •求得最优解以后,可得所有子问题的最优解。
4 状态转移方程
动态规划中本阶段的状态往往是上一阶段的决 策结果。如果给定了第k段的状态Sk ,本阶段决 策为xk(Sk) ,则第k+1段的状态Sk+1由公式: Sk+1=Tk( Sk, xk)
确定,称为状态转移方程。
5 指标函数
用于衡量所选定策略优劣的数量指标称为指标函数
v(Sk,xk(Sk))。
C3
B2
2
2
3
C2
5
3
B1
4
C1
3
D3
5
E2
3
2
D2
4
F
4
2
E1
D1
A
B
C
D
E
F
4
A
3
4
1
C3
B2
2
2
3
C2
5
3
B1
4
C1
3
D3
5
E2
3
2
D2
4
F
4
2
E1
D1
A
B
C
D
E
F
4
A
3
4
1
C3
B2
2
2
3
C2
5
3
B1
4
C1
3
D3
5
E2
3
2
D2
4
F
4
2
E1
D1
A
B
C
D
E
F
4
A
3
4
1
C3
B2
2
2
3
C2
5
3
B1
动态规划应用举例
例6 一家著名的快餐店计划在某城市建立5个分店, 这个城市分成三个区,分别用1,2,3表示。由于每 个区的地理位置、交通状况及居民的构成等诸多因素 的差异,将对各分店的经营状况产生直接的影响。经 营者通过市场调查及咨询后,建立了下表。
该表表明了各个区建立不同数目的分店时的利润 估计,确定各区建店数目使总利润最大。
在上面的计算过程中,利用了第k阶段与第k+1阶 段的关系:
fk(Sk)= Min r(Sk,dk(Sk))+fk+1(Sk+1)
dk(Sk)
k=1,2,3,4,5
f6(S6)=0
这种递推关系称为动态规划的函数基本方程。
贝尔曼(Ballman)最优化原理
作为整个过程的最优策略具有这样的性质:即无论 过去的状态和决策如何,对前面的决策所形成的状态 而言,余下的诸决策必须构成最优策略。这就是说, 不管引导到这个现时状态的头一个状态和决策是什么, 所有的未来决策应是最优的。
输入状态和输出状态,阶段k的初始 状态记作sk,终止状态记为sk+1。但
为了清楚起见,通常定义阶段的状态 即指其初始状态。
动态规划中的状态具有如下性质:
当某阶段状态给定以后,在这阶段以后的过程的 发展不受这段以前各段状态的影响。即:过程的过去 历史只能通过当前状态去影响它未来的发展,这称为 无后效性。如果所选定的变量不具备无后效性,就不 能作为状态变量来构造动态规划模型。
fk(Sk)为当第k阶段初始状态为Sk时,从第k阶段 到最后阶段所得最大利润。
fk(Sk)=Max rk(dk) + fk+1(Sk+1)
dk (Sk)
k=1,2,3
f4(S4)= 0
k=3 时, 计算如下:
d d S3 f3(S3)
* 3
S3
f3(S3)
* 3
0 0 03 9 3
1 4 1 4 10 4
店 数
1 00 13
27
2
区
23 00 54 10 7
店区 数
123 3 12 14 9 4 14 16 10
5 15 16 11
解: 阶段:每个区,共三个阶段。 状态:Sk为第k阶段开始时,可供分配的店数。 决策:dk为分配给区k的店数。 状态转移方程:Sk+1=Sk-dk 效益:rk(dk)为分配给区k,dk个店时的利润。
5
3
B1
4
C1
3
D3
5
E2
3
2
D2
4
F
4
2
E1
D1
A
B
C
D
E
F
4
A
3
4
1
C3
B2
2
2
3
C2
5
3
B1
4
C1
3
D3
5
E2
3
2
D2
4
F
4
2
E1
D1
A
B
C
D
E
F
4
A
3
4
1
C3
B2
2
2
3
C2
5
3
B1
4
C1
3
D3
5
E2
3
2
D2
4
F
4
2
E1
D1
A
B
C
D
E
F
4
A
3
4
1
C3
B2
2
2
3
C2
5
3
B1
4
C1
3
D3
5
E2
动态规划的缺点:
•“一个”问题,“一个”模型,“一个”求解方法。
且求解技巧要求比较高,没有统一处理方法。
•状态变量维数不能太高,一般要求小于6。“维数
灾难”
动态规划的分类:
离散型动态规划 连续型动态规划
确定型动态规划 随机型动态规划
离散型动态规划应用举例
1、开店问题 2、一维背包问题 3、生产与存储问题 4、资源平行分配问题 5、非线性分配问题
对不同问题,指标函数可以是诸如费用、成本、产值、利 润、产量、耗量、距离、时间、效用,等等。
k子过程指标函数Vk,n
最优指标函数fk(Sk)
动态规划的基本思想:
从过程的最后一段开始,用逆序递推方法求 解,逐步求出各段各点到终点E最短路线,最 后求出A点到E点的最短路线。
4
A
3
4
1
C3
B2
2
2
3
C2
例 设备更新问题
企业在使用设备时都要考虑设备的更新问题,因 为设备越陈旧所需的维修费用越多,但购买新设备 则要一次性支出较大的费用。
多阶段决策问题
(Multi-Stage decision process)
多阶段决策过程特点:
决策d1
决策d2
决策dk
决策dn
状态 s1
阶段1
状态 s2
阶段2
状态
状态
从图中可以看出,任意两座城市之间都有道路相通。我 们把从一座城市直达另一座城市作为一个阶段。
例从A城市到E城市的阶段数,少则一个(例从A城市直 达E城市),多则无限(例从A城市通过其他B、C、D三 城市循环到E城市)。为避免循环,加上约束条件:每个 城市至多经过一次。
于是从A城市到达E城市的阶段数有下列四种情形:
•正确地选择状态变量,使其具备两个必要特征:
(1)可知性:即过去演变过程的各阶段状态变量的取 值,能直接或间接地确定。
(2)能够确切地描述过程的演变且满足无后效性。
建立动态规划模型的要点:
•根据状态变量与决策变量的含义,正确写出状态转移
0
0000
1
5141
2
10 2 7 2
3
14 2,3 9 3
4
18 3 10 4
5 22 3 21 3 11 5
建立动态规划模型的要点:
•分析题意,识别问题的多阶段性,按时间或空间
的先后顺序适当地划分满足递推关系的若干阶段, 对非时序的静态问题要人为地赋予“时段”的概 念。
建立动态规划模型的要点:
2 7 2 5 11 5
店 数
1 00 13
27
2
区
23 00 54 10 7
店区 数
123 3 12 14 9 4 14 16 10
5 15 16 11
k=2 时, 计算如下:
S3=S2-d2
d2
R2(d2)+ f3(S3)
f2(S2) d*2
S2
012345
0 0- - - - - 0 0 1 45- - - - 5 1
例 生产与存储问题
某工厂每月需供应市场一定数量的产品。供应需求 所剩余产品应存入仓库,一般地说,某月适当增加产 量可降低生产成本,但超产部分存入仓库会增加库存 费用,要确定一个每月的生产计划,在满足需求条件 下,使一年的生产与存储费用之和最小。
例 投资决策问题
某公司现有资金Q亿元,在今后5年内考虑给A、B、 C、D四个项目投资,这些项目的投资期限、回报率 均不相同,问应如何确定这些项目每年的投资额,使 到第五年末拥有资金的本利总额最大。
2 状态(State)
各阶段开始时的客观条件叫做状态。描述各阶段 状态的变量称为状态变量,常用sk表示第k阶段的状 态变量,状态变量的取值集合称为状态集合,用Sk 表示。状态集合可以是一离散取值的集合,也可以为 一连续的取值区间,视具体问题而定。
按照过程进行的先后,每个阶段的状 态可分为初始状态和终止状态,或称
A
B
C
D
E
F
4
A
3
4
1
C3
B2
2
2
3
C2
5
3
B1
4
C1
3
D3
5
E2
3
2
D2
4
F
4
2
E1
D1
A
B
C
D
E
F
4
A
3
4
1
C3
B2
2
2
3
C2
5
3
B1
4
C1
3
D3
5
E2
3
2
D2
4
F
4
2
E1
D1
A
B
C
D
E
F
4
A
3
4
1
C3
B2
2
2
3
C2
5
3
B1
4
C1
3
D3
5
E2
3
2
D2
4
F
4
2
E1
D1
A
B
C
D
E
F
4
A
3
4
1