运筹学-动态规划应用举例
合集下载
一章动态规划应用举例

k=5时:f5(500)=500, f5(600)=600, f5(700)=700 (x5*=1) y5E=0.3*500+0.3*600+0.4*700=610
解 分成四个阶段,k=1,2,3,4;k阶段初的库存vk为 状态变量,v1=0;k阶段的产品生产量xk为决策变量,
(d1=2, d2=3, d3=2, d4=4)
状态转移方程为:vk+1= vk+xk-dk k阶段的费用有两部分,生产费用为
0 当xk=0时 ck(xk)= 3+xk 当xk=1,...,6时
0
1
4
2 3
4
5
0+0.5•4+10.5=12.5*
(3+1)+0.5•4+8=14
(3+2)+0.5•4+8=15 (3+3)+0.5•4+8=16
12.5
(3+4)+0.5•4+8=17
(3+5)+0.5•4+5=15
k=1时:
v1 x1 c1(x1)+h1(v1)+f2(v2) f1(v1)
2
2 (3+2)+0.5•4+2=9
5
0 1
0+0.5•5+5.5=8* (3+1)+0.5•5+2=8.5
60
0+0.5•6+2=5*
f3(v3) 11
10.5
8
8 8 8 5
k=2时:(续)
0 1 2 33 4 5 6
0+0.5•3+11=12.5* (3+1)+0.5•3+10.5=16 (3+2)+0.5•3+8=14.5 (3+3)+0.5•3+8=15.5 12.5 (3+4)+0.5•3+8=16.5 (3+5)+0.5•3+8=17.5 (3+6)+0.5•3+5=15.5
运筹学动态规划

第三节 动态规划应用举例
例1 生产与存储问题 一个工厂生产的某种产品,在一定的时期
内,增大生产批量,能够降低产品的单位成本,但若超过市场的需 求量,就会造成产品的积压而增加存储的费用。因此如何正确地制 定生产计划,使得在整个计划期内,生产和存储的总费用最小,这 就是生产与存储问题。
第三节 动态规划应用举例
第七章 动态规划
第一节 最短线路问题
第二节 动态规划的基本概念和原理 第三节 动态规划应用举例 第四节 决策变量连续的动态规划问题 第五节 乘积形式的目标函数 第六节 随机型动态规划问题
第一节 最短线路问题
一、最短线路问题及其解法
图7-1是一个线路网络图。从A到E要修建一条石 油管道。管道必须在B、C、D三处设立加压站。 在B处有B1,B2,B3三个不同地址可供选择作为 建站点。当然,从A到这3个点的距离是不同的; 同样,C和D处也都有不同的地址可供选择。图 上的圆圈称为节点,表示地址,两个节点之间的 箭线称为线或边,表示可以修建管道,线上的数 字表示两个地址之间的距离。现在的问题是在许 多条从A到E的线路中,找出一条最短的,称为最 短线路问题。
三、最优化原理与动态规划方程
基本步骤为:
(1)将问题的求解过程恰当地分成若干阶段,一般可按问题所处的空间或时间 进行划分,并确定阶段变量,对n个阶段问题来说,k=1,2,…,n。 (2)正确地选择状态变量sk,它应当满足无后效性等三个条件,并确定状态集
合Sk。
(3)确定决策变量xk(sk)及阶段的允许决策集合Dk(sk)。 (4)写出状态转移函数 (5)根据题意,列出指标函数Fk,n,fk(sk),F1,n,f1(s1)。
三、最优化原理与动态规划方程
•最优化原理 对于多阶段决策问题,作为整个 过程的最优策略具有这样的性质:无论过去的状 态和决策如何,就前面决策所形成的状态而言, 余下的诸决策必然构成一个最优子策略。
动态规划的应用举例大全

多背包问题
在0/1背包问题的基础上,通过动态规 划的方式解决多个约束条件下的物品 选择问题。
排程问题
作业车间调度问题
通过动态规划的方式,求解给定一组作业和机器,如何分配作业到机器上,使得 完成时间最早且总等待时间最小。
流水线调度问题
通过动态规划的方式,解决流水线上的工件调度问题,以最小化完成时间和总延 误时间。
应用场景
在基因组测序、进化生物学和生物分类学等领域中,DNA序列比对是关键步骤。通过比对,可以发现物种之间的相 似性和差异,有助于理解生物多样性和进化过程。
优势与限制
动态规划算法在DNA序列比对中具有高效性和准确性,能够处理大规模数据集。然而,对于非常长的序 列,算法可能需要较长时间来运行。
蛋白质结构预测
应用场景
深度学习中的优化算法广泛应用于语音识别、图像处理、 自然语言处理等领域,动态规划可以帮助提高训练效率和 模型的准确性。
自适应控制和系统优化
问题描述
动态规划方法
自适应控制和系统优化是针对动 态系统的优化和控制问题。在这 些问题中,动态规划可以用于求 解最优控制策略和系统参数调整。
通过定义状态转移方程和代价函 数,将自适应控制和系统优化问 题转化为动态规划问题。状态表 示系统的当前状态和参数,代价 函数描述了在不同状态下采取不 同行动的代价。
考虑风险因素和概率
动态规划可以考虑到风险因素和概率,以制定最优的风险评估和管 理策略。
考虑风险承受能力和资本充足率
动态规划可以考虑到风险承受能力和资本充足率,以制定最优的风 险评估和管理策略。
04 动态规划在生物信息学中 的应用
DNA序列比对
算法描述
DNA序列比对是生物信息学中常见的问题,通过动态规划算法可以高效地解决。算法将DNA序列视为字符串,并寻 找两个或多个序列之间的最佳匹配。
在0/1背包问题的基础上,通过动态规 划的方式解决多个约束条件下的物品 选择问题。
排程问题
作业车间调度问题
通过动态规划的方式,求解给定一组作业和机器,如何分配作业到机器上,使得 完成时间最早且总等待时间最小。
流水线调度问题
通过动态规划的方式,解决流水线上的工件调度问题,以最小化完成时间和总延 误时间。
应用场景
在基因组测序、进化生物学和生物分类学等领域中,DNA序列比对是关键步骤。通过比对,可以发现物种之间的相 似性和差异,有助于理解生物多样性和进化过程。
优势与限制
动态规划算法在DNA序列比对中具有高效性和准确性,能够处理大规模数据集。然而,对于非常长的序 列,算法可能需要较长时间来运行。
蛋白质结构预测
应用场景
深度学习中的优化算法广泛应用于语音识别、图像处理、 自然语言处理等领域,动态规划可以帮助提高训练效率和 模型的准确性。
自适应控制和系统优化
问题描述
动态规划方法
自适应控制和系统优化是针对动 态系统的优化和控制问题。在这 些问题中,动态规划可以用于求 解最优控制策略和系统参数调整。
通过定义状态转移方程和代价函 数,将自适应控制和系统优化问 题转化为动态规划问题。状态表 示系统的当前状态和参数,代价 函数描述了在不同状态下采取不 同行动的代价。
考虑风险因素和概率
动态规划可以考虑到风险因素和概率,以制定最优的风险评估和管 理策略。
考虑风险承受能力和资本充足率
动态规划可以考虑到风险承受能力和资本充足率,以制定最优的风 险评估和管理策略。
04 动态规划在生物信息学中 的应用
DNA序列比对
算法描述
DNA序列比对是生物信息学中常见的问题,通过动态规划算法可以高效地解决。算法将DNA序列视为字符串,并寻 找两个或多个序列之间的最佳匹配。
运筹学 第05章 动态规划

动态规划模型
动态规划模型如下
u1 ,,u n
opt R rk xk , u k
n k 1
表示求和或加权求和 opt表示求最优(最大值 或最小值) Xk表示k阶段状态可能 的取值范围,称为状态 可能集合 Uk表示k阶段决策可能 的取值范围,称为决策 允许集合
x1
决 策 Z
x2 x1 表示决策所依赖的资源和环境
Z表示目标函数
x2 表示决策后的资源和环境状况
动态规划概念(2)
例如,前面讲过的生产计划问题就是一次决策
某工厂用三种原料生产三种产品,已知的条件如 下表所示,试制订总利润最大的日生产计划
产品所需原料数量 (公斤/ 件) 原料P1 原料P2 原料P3 产品的利润 (千元/ 件) 产品Q1
贝尔曼方程
对于无后效性的多阶段决策过程,根据最 优性原理和贝尔曼函数定义,可得
f k xk optrk xk , uk f k 1 xk 1 其中,xk 1 Tk xk , uk 称为动态规划基本方程,也称为 贝尔曼方程
uk
动态规划问题求解步骤(1)
k阶段决策uk是决定下一步走到哪里,有
u1∈{a,b,c} u2(a)∈{d,f},u2(b)∈{d,e} ,u2(c)∈{d,e,f} u3∈{t}
示例(5.2-3)
状态转移方程
xk+1=uk
阶段效应rk(xk , uk ) 取为从xk 走到uk 的路线 长度,如r1(s , a) =9 贝尔曼函数 fk(xk ) 定义为从xk 走到 t 的最短 路线 贝尔曼方程
f k xk opt ri xi , ui
n u k ,,u n i k
为了将从初始状态xk 出发的k-后部子过程的 最优策略和最终的最优策略相区别,称前 者为条件最优策略
运筹学:第4章 动态规划 第2节 应用举例

s1 500
投 x1 辆 超 负荷车
第1年
状态 s2
投 x2 辆 超 负荷车
第2年
g1 ( x1 )
状态 s5
投 x5 辆 超 负荷车
第5年
g2 (x2 )
状态 s6
g5 (x5 )
状态 s3
投 x3 辆 超 负荷车
第3年
g3 (x3 )
状态 s4
投 x4 辆 超 负荷车
第4年
g4 (x4 )
阶段k=1,2,3,4,5表示第k年分配车辆的过程。
递推方程为
fk
(sk
)
xmk 1a,2x,3{Rk
(xk
)
f k 1 ( sk 1 )}
3
Ck (xk ) sk Ci (1)
ik 1
f
4
(s4
)
1
k 3,2,1
K=3时,C(1) s3 s1 C1(1) C2 (1) C3(x3) s3
s3 x3 R3 (x3 ) s4 s3 C3(x3) f4 (s4 ) R3 (x3 ) f4 (s4 ) f3 (s3 ) x3*
所对应的最优策略分别为:
s1 500
x1* 0
x2* 0
x3* s3
x4* s4
投 x1 辆 超 负荷车
第1年
状态 s2
投 x2 辆 超 负荷车
第2年
状态 s3
投 x3 辆 超 负荷车
第3年
状态 s4
投 x4 辆 超 负荷车
第4年
状态
g1(x1) s2 0.9s1 0.2x1 g2 (x2 ) s3 0.9s2 0.2x2 g3 (x3 ) s4 0.9s3 0.2x3 g4 (x4 )
运筹学 05 动态规划

第20页
. #;
续 (1)
用fk(vi,V)表示从vi点出发,经过V中的点各一次, 最 后 回 到 v0 点 的 最 短 路 程 , V 是 一 个 顶 点 集 合 , |V|=k,dij是vi到vj的弧长,则
fk
(vi ,V )
mv j iVn{d ij
fk1(v j ,V
\ {v j})},k
第9页
. #;
例2 续(2)
假设这个工厂根据需要可以日夜两班生产或只是日 班生产,当开足日班时,每一个生产周期能生产商品15 个单位,每生产一个单位商品的成本为100元。当开足 夜班时,每一生产周期能生产的商品也是15个,但是由 于增加了辅助性生产设备和生产辅助费用,每生产一单 位商品的成本为120元。由于生产能力的限制,可以在 需求淡季多生产一些商品储存起来以备需求旺季使用, 但存储商品是需要存储费用的,假设每单位商品存储一 周期需要16元,已知开始时存储为零,年终也不存储商 品备下年使用,问应该如何作生产和存储计划,才能使 总的生产和存储费用最小?
用(X,t)来描述状态,X表示在机床A上等待加工的工 件集合,就是说,这是A已经把X以外的工件全加工完了, 准备选择X中某个工件加工,t表示B还需时刻t才能把X 以外的工件加工完.
第28页
. #;
续 (1)
在状态(X,t),决策集合是工件集合X,选定决策{i}属 于X,就转入新的状态(X\{i}, zi(t)),并获得效益 .用最优 化原理得到
第10页
. #;
例2 续(3)
么这设个第问i题个用周式期子的写生产出量来为就x是i,:周求期x末1,x的2,…存,x储6,量满为足ui,条那件: x1=5+u1 x2+u1=5+u2 x3+u2=10+u3 x4+u3=30+u4 x5+u4=50+u5 x6+u5=8 0 xi 30,0 uj,i=1,2,…,6;j=1,2, …,5
. #;
续 (1)
用fk(vi,V)表示从vi点出发,经过V中的点各一次, 最 后 回 到 v0 点 的 最 短 路 程 , V 是 一 个 顶 点 集 合 , |V|=k,dij是vi到vj的弧长,则
fk
(vi ,V )
mv j iVn{d ij
fk1(v j ,V
\ {v j})},k
第9页
. #;
例2 续(2)
假设这个工厂根据需要可以日夜两班生产或只是日 班生产,当开足日班时,每一个生产周期能生产商品15 个单位,每生产一个单位商品的成本为100元。当开足 夜班时,每一生产周期能生产的商品也是15个,但是由 于增加了辅助性生产设备和生产辅助费用,每生产一单 位商品的成本为120元。由于生产能力的限制,可以在 需求淡季多生产一些商品储存起来以备需求旺季使用, 但存储商品是需要存储费用的,假设每单位商品存储一 周期需要16元,已知开始时存储为零,年终也不存储商 品备下年使用,问应该如何作生产和存储计划,才能使 总的生产和存储费用最小?
用(X,t)来描述状态,X表示在机床A上等待加工的工 件集合,就是说,这是A已经把X以外的工件全加工完了, 准备选择X中某个工件加工,t表示B还需时刻t才能把X 以外的工件加工完.
第28页
. #;
续 (1)
在状态(X,t),决策集合是工件集合X,选定决策{i}属 于X,就转入新的状态(X\{i}, zi(t)),并获得效益 .用最优 化原理得到
第10页
. #;
例2 续(3)
么这设个第问i题个用周式期子的写生产出量来为就x是i,:周求期x末1,x的2,…存,x储6,量满为足ui,条那件: x1=5+u1 x2+u1=5+u2 x3+u2=10+u3 x4+u3=30+u4 x5+u4=50+u5 x6+u5=8 0 xi 30,0 uj,i=1,2,…,6;j=1,2, …,5
10运筹学-动态规划

动态规划
动态规划问题实例 动态规划的基本概念与原理 动态规划应用举例
引言
动态规划是解决多阶段决策过程最优化的一种方法。该方法 是由美国数学家贝尔曼(R. E. Bellman)等人在20世纪50年代 初提出的。并成功地解决了生产管理、工程技术等方面的许
多问题,从而建立了运筹学的一个新的分支,即动态规划。
式中opt 可根据题意取 max 或 min.
例如,例1的基本方程为:
f k ( sk ) min{d k ( sk , uk ) f k 1 ( sk 1 )} k 5,4,3,2,1 uk f 6 ( s6 ) 0
最优性原理:无论过去的状态和决策如何,从眼下直到最后 的诸决策必构成最优子策略。
(1)k=5 时,状态 S5 {E1 , E2} 最短路。
它们到F 点的距离即为
f 5 ( E1 ) 4,
f5 ( E2 ) 3;
* * u5 ( E1 ) F , u5 ( E2 ) F.
2
4
C1
8 3
5 4 5 3 4 8
* u5 ( E1 ) F ,
B1
D1 D2 D3
动态规划应用举例
例1 最短路线问题
2 4
C1
8 3
5 4
B1
D1 D2 D3
5 6
2 1
3
6
5 8 7 7
C2 C3
5
3 4 8
E1
3
4
A B2
F E2
3
C4
4
2
4
C1
8 3
5 4 5 3 4 8
B1
D1 D2 D3
5 6 2 1
动态规划问题实例 动态规划的基本概念与原理 动态规划应用举例
引言
动态规划是解决多阶段决策过程最优化的一种方法。该方法 是由美国数学家贝尔曼(R. E. Bellman)等人在20世纪50年代 初提出的。并成功地解决了生产管理、工程技术等方面的许
多问题,从而建立了运筹学的一个新的分支,即动态规划。
式中opt 可根据题意取 max 或 min.
例如,例1的基本方程为:
f k ( sk ) min{d k ( sk , uk ) f k 1 ( sk 1 )} k 5,4,3,2,1 uk f 6 ( s6 ) 0
最优性原理:无论过去的状态和决策如何,从眼下直到最后 的诸决策必构成最优子策略。
(1)k=5 时,状态 S5 {E1 , E2} 最短路。
它们到F 点的距离即为
f 5 ( E1 ) 4,
f5 ( E2 ) 3;
* * u5 ( E1 ) F , u5 ( E2 ) F.
2
4
C1
8 3
5 4 5 3 4 8
* u5 ( E1 ) F ,
B1
D1 D2 D3
动态规划应用举例
例1 最短路线问题
2 4
C1
8 3
5 4
B1
D1 D2 D3
5 6
2 1
3
6
5 8 7 7
C2 C3
5
3 4 8
E1
3
4
A B2
F E2
3
C4
4
2
4
C1
8 3
5 4 5 3 4 8
B1
D1 D2 D3
5 6 2 1
运筹学5(动态规划)

1
2
3
4
下面应用动态规划方法求解例7.1。运用逆序递 推方法求解,即由最后一段到第一段逐步求出各点到 终点的最短路线,最后求出A点到E点的最短路线。 运用逆序递推方法的好处是可以始终盯住目标,不 致脱离最终目标。 例7.1是一个四阶段决策问题,一般可分为四步:
●逆序法求解最短路问题
第一步,从K=4开始
2 S3
3
S4
4
d (C 2 , D1 ) + f 4 ( D1 ) 6+4 =min =5 f 3 ( C2 )=min d (C 2 , D2 ) + f 4 ( D2 ) 2+3 即从 C2 到 E 的最短距离为 5, 其路径为 C2 → D2 →E,相应的决策为
* x 3 ( C 2 ) = D2
1 S1 S2
2 S3
3
S4
4
1
反推,即得到最优决策序列 ,即 x = D2 , x
* 4 * 1
2
3
*
4
*
从城市 A 到城市 E 的最短距离为 17。把各段的最优决策按计算顺序
(A)= B1 , x 2 ( B1 )= C 2 , x 3 ( C 2 ) ( D2 )=E,所以最短路线为 :A→B1→C2 →D2→E.
d ( B1 , C1 ) + f 3 (C1 ) 6+7 f 2 ( B1 ) =min d ( B1 , C2 ) + f 3 (C 2 ) =min 4 + 5 =9 d ( B1 , C3 ) + f 3 (C3 ) 5+5
即 B1 到终点 E 的最短距离为 9, 其路径为 B1→C2→D2→E, 本段的相应 决策为 x
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
x1 s1
5
0 21 3 16 7 14 * 21 x1 0,2 9 10 12 5 13 0
f1 ( 5 ) x 1 *
P1(x1 )+ f2(s2 )
0 1 2 3 4 5 0+21 3+16 7+14 9+10 12+5 13+0
动态规划递推关系
f k ( sk ) max g k ( xk ) f k 1 ( sk xk ) 0 xk s k k n, n 1,,2,1 f (s ) 0 n 1 n 1 f1 ( s1 ) 最大收益
例1 5台设备,3个工厂,可提供的盈利见下表,
s3 = u3
k=3,s3 = u3 = 0,1,2,3,4
k=2,0≤u2≤s2,s3=s2-u2
k=1,s1=4, s2=s1-u1
最优决策序列为: s1=4, u1* =1 → s2 =s1 -u1* =3, u2* =0 → s3=s2 -u2* =3 ,u3* =3 结论:项目A 投资1万元,项目B 投资0万元, 项目C 投资3万元,最大效益为60万吨。
(2)
设备总数改为4台,取s1=4,只需修改k=1 的表格 4台 x1*=1, x2*=2, x3*=1 ; f1(s1 )= 17 或x1*=2, x2*=2, x3*=0 3台 x1*=0, x2*=2, x3*=1 ; f1(s1 )= 14
这种只将资源合理分配不考虑回收, 而决 策变量取离散值的问题, 称为资源平行分配问 题。实际中, 如货物分配, 资金分配等。
将x3 的值逐个代入基本方程, 计算结果填入表中
f 3 (s3 ) max p3 ( x3 ) f 4 (s4 ) max p3 ( x3 )
0 x3 s3 x3 s3
x3
P3 (x3 )
0 0 1 4 6 2 3 4 5
s3
0 1 2 3 4 5
f3 (s3 ) x3*
状态变量sk:在第k 阶段(第k 年),可投入A,B 两种生产方式的资源总数量; 决策变量uk:在第k 阶段用于A 生产方式的资 源数量; 状态转移方程:sk+1 = auk+b(sk-uk ) 递推基本方程:
f k ( sk ) max g (uk ) h ( sk uk ) f k 1[auk b ( sk uk )] 0 u k sk f n ( sn ) 0maxs g (un ) h ( sn un ) un n k n 1 , , 2 , 1
f 2 ( s2 ) max
2
s2 0 s2 1
p2 ( x2 ) f 3 (s3 ) 0 x s f 2 (0) max p2 ( x2 ) f 3 ( s3 ) x 0
2
max p2 (0) 0 0
2
x 0
* 2
p2 (0) f 3 (1) f 2 (1) max p2 ( x2 ) f 3 ( s3 ) max x2 0 ,1 p2 (1) f 3 (0) 0 4 * max 5 x2 1 5 0
状态变量sk :分配给第k 个工厂至第3个工厂的 设备台数;
0≤sk≤5 ,s1= 5 决策变量xk:分配给第k 个工厂的设备台数; 0 ≤xk≤sk , xn=sn 状态转移方程:sk+1 = sk- xk sk+1分配给第k+1个工厂至第3个工厂的设备台数 最优值函数 fk (sk ) sk台设备分配给第k 个
状态转移方程:sk+1=sk-uk ; 阶段指标:vk(sk ,uk)见表中所示; 递推方程: fk(sk)= max{vk(sk ,uk) + fk+1(sk+1)} f4 ( s 4 ) = 0 k=3,2,1
k=3
f3(s3)= max{v3(s3 ,u3 ) + f4(s4)} = max{v3(s3 ,u3 )}
工厂至第3个工厂的最大盈利值。
递推基本方程
f k ( sk ) max pk ( xk ) f k 1 ( sk 1 ) k 3,2,1 0 xk s k f 4 ( s4 ) 0
k=3 0≤s3≤5 ,
s3 取值范围 x3 取值范围 s3 = 0 ,1 ,2 ,3 ,4 ,5 x3 = s3 = 0 ,1 ,2 ,3 ,4 ,5
如何分配使利润最大? 解: 甲,乙,丙三个工厂分别编号为1,2,3 设 xk 分配给第k 个工厂的设备台数。
盈
利 设备台数
工厂
甲
0 3 7 9 12 13
乙
0 5 10 11 11 11
丙
0 4 6 11 12 12
0 1 2 3 4 5
静态规划模型
Max z = p1(x1 )+ p2(x2 )+ p3(x3) x1 + x2 + x3 = 5 , x1 ,x2 ,x3 ≥0 整数 pk(xk) xk 台设备分配到第k 个工厂的盈利数。
第九章
动态规划应用举例
§1 资源分配问题
将一定的资源(原料,资金,机器设备等)恰 当的分配给若干使用者,使总的目标函数值为最 优。属静态规划问题,人为的引入阶段因素。
1.1 一维资源分配问题
静态规划模型
Max z = g1(x1)+ g2(x2)+ … + gn(xn) x 1 + x 2 + … + x n= a xi ≥ 0 i = 1,2,… ,n 原料总数为a ,用于生产n 种产品, xi 为分配 生产第 i 种产品的原料数量,收益为gi(xi) 。
k=1 s1=5 , 0≤ x1≤s1 ,x1 取值范围 x1 = 0,1,2,3,4,5 根据状态转移方程 s2 = s1 –x1 , 确定s2 取值范围 s2 = 5,4,3,2,,1,0
f1 (5) max p1 ( x1 ) f 2 ( s2 )
x1 0 ,, 5
p1 (0) f 2 (5) p (1) f (4) 2 1 p1 (2) f 2 (3) max max p1 (3) f 2 (2) p1 (4) f 2 (1) p1 (5) f 2 (0)
资源分配问题的阶段划分原则: 有几个用户,就把问题分成几个阶段。
本题按工厂的个数, 分为3个阶段。 分析: k=3, 把第3阶段初所拥有的所有设备全部分给 工厂3(单一用户分配); k=2, 把第2阶段初所拥有的所有设备全部分给 工厂2和工厂3(2个用户分配); k=1, 把第1阶段初所拥有的5台设备全部分给 工厂1,工厂2和工厂3(3个用户分配)。
如何分配收益最大? 将n 种产品(使用资源的对象、用户) 划分为n 个阶段; 状态变量sk: 分配给生产第k 种产品至第n 种 产品的原料数量; 决策变量xk(uk):分配给生产第k 种产品的原 料数量; 状态转移方程:sk+1 = sk – xk 状态允许集合(约束条件):0≤sk≤a ,s1= a 决策允许集合:0 ≤xk≤sk , xn=sn
在n年内, 如何确定每年分别投入A,B 生产 方式的资源数量,使总收入最多? 静态模型
Max z={g(u1 )+h(s1-u1 )+g(u2 )+h(s2-u2 )+ … +g(un )+h(sn-un )} s2 = au1+b(s1-u1 ) s3 = au2+b(s2-u2 ) … sn+1 = aun+b(sn-un ) 0≤ui ≤ si ,i= 1,2,…,n 一般情况下 g(u )﹥h(u ) ,a < b 。
资源连续分配问题,考虑资源回收利用的问 题,决策变量为连续值。(机器负荷分配问题)
生产方式 资源 收入
A B
u u
g(u) h(u)
年回收率 0﹤a﹤1
一年后资源回收量 au
0﹤b﹤1
bu
同时,已知资源总量为s1 。 分析: 第1年 资源量 u1 → A生产, s1-u1 → B生产, 收入为 g(u1 )+h(s1-u1 ) 第2年 s2 =au1+b(s1-u1), u2 →A ,s2-u2 →B , 收入为 g(u2 )+h(s2-u2 ) 第3年 s3 =au2+b(s2-u2), u3 →A ,s3-u3 →B , 收入为 g(u3 )+h(s3-u3 )
11
12
12
0 4 6 11 12 12
0 1 2 3 4 5
k=2 0≤s2≤5 , s2 取值范围 s2 = 0 ,1 ,2 ,3 ,4 ,5 对s2 的每取值,确定x2 取值范围0≤ x2≤s2 根据状态转移方程 s3 = s2 -x2 ,确定s3 s2=0,x2=0 s2=1,x2=0,1 s2=2,x2=0,1,2 s2=3,x2=0,1,2,3 s2=4,x2=0,1,2,3,4 s2=5,x2=0,1,2,3,4,5 s3= s2-x2= 0 =1,0 =2,1,0 =3,2,1,0 =4,3,2,1,0 =5,4,3,2,1,0
s2 2
f 2 (2) max
2
p2 ( x2 ) f3 (s3 ) x 0 ,1, 2
0 6 5 4 10 10 0
p2 (0) f 3 (2) p (1) f (1) max max 2 3 p2 (2) f 3 (0) x 2
例 有某种机床,可以在高低两种不同的负荷下
进行生产。 在高负荷下生产时,产品的年产量为g ,与年 初投入生产的机床数量u 的关系为g =g(u )=8u 这时年终机床完好台数将为au(a为机床完好率, 0<a <1,设a =0.7 )。 在低负荷下生产时,产品的年产量为h,与投 入生产的机床数量u2的关系为h =h(u )=5u ,相 应的机床完好率为b(0<b <1,设b =0.9)。 g(u )=8u ﹥h(u )=5u ,a = 0.7 <b = 0.9 。
5
0 21 3 16 7 14 * 21 x1 0,2 9 10 12 5 13 0
f1 ( 5 ) x 1 *
P1(x1 )+ f2(s2 )
0 1 2 3 4 5 0+21 3+16 7+14 9+10 12+5 13+0
动态规划递推关系
f k ( sk ) max g k ( xk ) f k 1 ( sk xk ) 0 xk s k k n, n 1,,2,1 f (s ) 0 n 1 n 1 f1 ( s1 ) 最大收益
例1 5台设备,3个工厂,可提供的盈利见下表,
s3 = u3
k=3,s3 = u3 = 0,1,2,3,4
k=2,0≤u2≤s2,s3=s2-u2
k=1,s1=4, s2=s1-u1
最优决策序列为: s1=4, u1* =1 → s2 =s1 -u1* =3, u2* =0 → s3=s2 -u2* =3 ,u3* =3 结论:项目A 投资1万元,项目B 投资0万元, 项目C 投资3万元,最大效益为60万吨。
(2)
设备总数改为4台,取s1=4,只需修改k=1 的表格 4台 x1*=1, x2*=2, x3*=1 ; f1(s1 )= 17 或x1*=2, x2*=2, x3*=0 3台 x1*=0, x2*=2, x3*=1 ; f1(s1 )= 14
这种只将资源合理分配不考虑回收, 而决 策变量取离散值的问题, 称为资源平行分配问 题。实际中, 如货物分配, 资金分配等。
将x3 的值逐个代入基本方程, 计算结果填入表中
f 3 (s3 ) max p3 ( x3 ) f 4 (s4 ) max p3 ( x3 )
0 x3 s3 x3 s3
x3
P3 (x3 )
0 0 1 4 6 2 3 4 5
s3
0 1 2 3 4 5
f3 (s3 ) x3*
状态变量sk:在第k 阶段(第k 年),可投入A,B 两种生产方式的资源总数量; 决策变量uk:在第k 阶段用于A 生产方式的资 源数量; 状态转移方程:sk+1 = auk+b(sk-uk ) 递推基本方程:
f k ( sk ) max g (uk ) h ( sk uk ) f k 1[auk b ( sk uk )] 0 u k sk f n ( sn ) 0maxs g (un ) h ( sn un ) un n k n 1 , , 2 , 1
f 2 ( s2 ) max
2
s2 0 s2 1
p2 ( x2 ) f 3 (s3 ) 0 x s f 2 (0) max p2 ( x2 ) f 3 ( s3 ) x 0
2
max p2 (0) 0 0
2
x 0
* 2
p2 (0) f 3 (1) f 2 (1) max p2 ( x2 ) f 3 ( s3 ) max x2 0 ,1 p2 (1) f 3 (0) 0 4 * max 5 x2 1 5 0
状态变量sk :分配给第k 个工厂至第3个工厂的 设备台数;
0≤sk≤5 ,s1= 5 决策变量xk:分配给第k 个工厂的设备台数; 0 ≤xk≤sk , xn=sn 状态转移方程:sk+1 = sk- xk sk+1分配给第k+1个工厂至第3个工厂的设备台数 最优值函数 fk (sk ) sk台设备分配给第k 个
状态转移方程:sk+1=sk-uk ; 阶段指标:vk(sk ,uk)见表中所示; 递推方程: fk(sk)= max{vk(sk ,uk) + fk+1(sk+1)} f4 ( s 4 ) = 0 k=3,2,1
k=3
f3(s3)= max{v3(s3 ,u3 ) + f4(s4)} = max{v3(s3 ,u3 )}
工厂至第3个工厂的最大盈利值。
递推基本方程
f k ( sk ) max pk ( xk ) f k 1 ( sk 1 ) k 3,2,1 0 xk s k f 4 ( s4 ) 0
k=3 0≤s3≤5 ,
s3 取值范围 x3 取值范围 s3 = 0 ,1 ,2 ,3 ,4 ,5 x3 = s3 = 0 ,1 ,2 ,3 ,4 ,5
如何分配使利润最大? 解: 甲,乙,丙三个工厂分别编号为1,2,3 设 xk 分配给第k 个工厂的设备台数。
盈
利 设备台数
工厂
甲
0 3 7 9 12 13
乙
0 5 10 11 11 11
丙
0 4 6 11 12 12
0 1 2 3 4 5
静态规划模型
Max z = p1(x1 )+ p2(x2 )+ p3(x3) x1 + x2 + x3 = 5 , x1 ,x2 ,x3 ≥0 整数 pk(xk) xk 台设备分配到第k 个工厂的盈利数。
第九章
动态规划应用举例
§1 资源分配问题
将一定的资源(原料,资金,机器设备等)恰 当的分配给若干使用者,使总的目标函数值为最 优。属静态规划问题,人为的引入阶段因素。
1.1 一维资源分配问题
静态规划模型
Max z = g1(x1)+ g2(x2)+ … + gn(xn) x 1 + x 2 + … + x n= a xi ≥ 0 i = 1,2,… ,n 原料总数为a ,用于生产n 种产品, xi 为分配 生产第 i 种产品的原料数量,收益为gi(xi) 。
k=1 s1=5 , 0≤ x1≤s1 ,x1 取值范围 x1 = 0,1,2,3,4,5 根据状态转移方程 s2 = s1 –x1 , 确定s2 取值范围 s2 = 5,4,3,2,,1,0
f1 (5) max p1 ( x1 ) f 2 ( s2 )
x1 0 ,, 5
p1 (0) f 2 (5) p (1) f (4) 2 1 p1 (2) f 2 (3) max max p1 (3) f 2 (2) p1 (4) f 2 (1) p1 (5) f 2 (0)
资源分配问题的阶段划分原则: 有几个用户,就把问题分成几个阶段。
本题按工厂的个数, 分为3个阶段。 分析: k=3, 把第3阶段初所拥有的所有设备全部分给 工厂3(单一用户分配); k=2, 把第2阶段初所拥有的所有设备全部分给 工厂2和工厂3(2个用户分配); k=1, 把第1阶段初所拥有的5台设备全部分给 工厂1,工厂2和工厂3(3个用户分配)。
如何分配收益最大? 将n 种产品(使用资源的对象、用户) 划分为n 个阶段; 状态变量sk: 分配给生产第k 种产品至第n 种 产品的原料数量; 决策变量xk(uk):分配给生产第k 种产品的原 料数量; 状态转移方程:sk+1 = sk – xk 状态允许集合(约束条件):0≤sk≤a ,s1= a 决策允许集合:0 ≤xk≤sk , xn=sn
在n年内, 如何确定每年分别投入A,B 生产 方式的资源数量,使总收入最多? 静态模型
Max z={g(u1 )+h(s1-u1 )+g(u2 )+h(s2-u2 )+ … +g(un )+h(sn-un )} s2 = au1+b(s1-u1 ) s3 = au2+b(s2-u2 ) … sn+1 = aun+b(sn-un ) 0≤ui ≤ si ,i= 1,2,…,n 一般情况下 g(u )﹥h(u ) ,a < b 。
资源连续分配问题,考虑资源回收利用的问 题,决策变量为连续值。(机器负荷分配问题)
生产方式 资源 收入
A B
u u
g(u) h(u)
年回收率 0﹤a﹤1
一年后资源回收量 au
0﹤b﹤1
bu
同时,已知资源总量为s1 。 分析: 第1年 资源量 u1 → A生产, s1-u1 → B生产, 收入为 g(u1 )+h(s1-u1 ) 第2年 s2 =au1+b(s1-u1), u2 →A ,s2-u2 →B , 收入为 g(u2 )+h(s2-u2 ) 第3年 s3 =au2+b(s2-u2), u3 →A ,s3-u3 →B , 收入为 g(u3 )+h(s3-u3 )
11
12
12
0 4 6 11 12 12
0 1 2 3 4 5
k=2 0≤s2≤5 , s2 取值范围 s2 = 0 ,1 ,2 ,3 ,4 ,5 对s2 的每取值,确定x2 取值范围0≤ x2≤s2 根据状态转移方程 s3 = s2 -x2 ,确定s3 s2=0,x2=0 s2=1,x2=0,1 s2=2,x2=0,1,2 s2=3,x2=0,1,2,3 s2=4,x2=0,1,2,3,4 s2=5,x2=0,1,2,3,4,5 s3= s2-x2= 0 =1,0 =2,1,0 =3,2,1,0 =4,3,2,1,0 =5,4,3,2,1,0
s2 2
f 2 (2) max
2
p2 ( x2 ) f3 (s3 ) x 0 ,1, 2
0 6 5 4 10 10 0
p2 (0) f 3 (2) p (1) f (1) max max 2 3 p2 (2) f 3 (0) x 2
例 有某种机床,可以在高低两种不同的负荷下
进行生产。 在高负荷下生产时,产品的年产量为g ,与年 初投入生产的机床数量u 的关系为g =g(u )=8u 这时年终机床完好台数将为au(a为机床完好率, 0<a <1,设a =0.7 )。 在低负荷下生产时,产品的年产量为h,与投 入生产的机床数量u2的关系为h =h(u )=5u ,相 应的机床完好率为b(0<b <1,设b =0.9)。 g(u )=8u ﹥h(u )=5u ,a = 0.7 <b = 0.9 。