- 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 。