《运筹学第五章动态规划课件.ppt》由会员分享,可在线阅读,更多相关《运筹学第五章动态规划课件.ppt(89页珍藏版)》请在三一办公上搜索。
1、动 态 规 划 (Dynamic programming),多阶段决策过程的最优化,基本概念和基本原理,动态规划模型的建立与求解,动态规划在经济管理中的应用,美国数学家贝尔曼(Richard. Bellman),创始时间,上个世纪50年代,创始人,多阶段决策过程的最优化,第一节,动态规划是用来解决多阶段决策过程最优化的一种数量方法,这类活动可以按时间顺序分解成若干个相互联系的阶段,每个阶段都有若干个方案可供选择,多阶段决策过程的最优化的目标:,达到整个活动过程的总体效果最优,系统的动态过程可以按照时间进程分为状态相互联系而又相互区别的各个阶段,每个阶段都要进行决策,目的是使整个过程的决策达到最
2、优效果。,1,2,n,状态,决策,状态,决策,状态,状态,决策,阶段,阶段,阶段,分类,根据决策过程的时间参数是离散的还是连续的、过程的演变是确定性的还是随机性的,动态规划是求解某类问题的一种方法,是考察问题的一种途径,而不是一种算法。 必须对具体问题进行具体分析,运用动态规划的原理和方法,建立相应的模型,然后再用动态规划方法去求解。,注意:,1 .生产决策问题:企业在生产过程中,由于需求是随时间变化的,因此企业为了获得全年的最佳生产效益,就要在整个生产过程中逐月或逐季度地根据库存和需求决定生产计划。,多阶段决策问题的典型例子:,这时,机器的年完好率为a,即如果年初完好机器的数量为u,到年终完
3、好的机器就为au, 0a1。,在低负荷下生产时,产品的年产量h和投入生产的机器数量u2的关系为 h=h(u2),假定开始生产时完好的机器数量为s1。要求制定一个五年计划,在每年开始时,决定如何重新分配完好的机器在两种不同的负荷下生产的数量,使在五年内产品的总产量达到最高。,相应的机器年完好率b, 0b1。,2. 机器负荷分配问题:某种机器可以在高低两种不同的负荷下进行生产。在高负荷下进行生产时,产品的年产量g和投入生产的机器数量u1的关系为g=g(u1),不包含时间因素的静态决策问题(本质上是一次决策问题)也可以适当地引入阶段的概念,作为多阶段的决策问题用动态规划方法来解决。,3 . 线性规划
4、、非线性规划等静态的规划问题也可以通过适当地引入阶段的概念,应用动态规划方法加以解决。,4 . 最短路问题:给定一个交通网络图如下,其中两点之间的数字表示距离(或花费),试求从A点到G点的最短距离(总费用最小)。,1,2,3,4,5,6,A,B1,B2,C1,C2,C3,C4,D1,D2,D3,E1,E2,E3,F1,F2,G,5,3,1,3,6,8,7,6,3,6,8,5,3,3,8,4,2,2,2,1,3,3,3,5,2,5,6,6,4,3,第二节 基本概念和基本原理,策略,状态转移,指标函数,基本概念,设从甘肃要铺一条煤气管道到北京,途中须经过三个省:陕西、山西、河北,每省设一个中间站。
5、各省建站可供选择的地点及各段距离如下图,现要求选择一条甘肃到北京的铺管线路 使总距离最短。,最短路问题,多阶段决策问题,路长=,21,路长=,16,每一个阶段的决策合在一起构成一个铺设方案,铺设方案1:,铺设方案2:,一个策略,每个策略对应一个路长,寻找最优策略,寻找路长最短的铺设方案,策略,1、阶段:,如最短路问题:,问题分成4个阶段:,通常用k表示阶段,是指对整个过程的自然划分,k=1,2,3,4,划分阶段的规则:,根据时间顺序或空间特征来划分阶段,目的:以便按次序来解优化问题,线路:,线路:,k=1:,k=3:,2、状态:,第一阶段的状态:,第二阶段的状态:,状态变量,如最短路问题:,s
6、k,s4,Sk =sk,S3 =s3,=,,注:n个阶段的决策过程有个n+1状态变量,sn+1,表示sn演变的结果,,简称为状态,各阶段开始时所处的自然状况或客观条件,S5 =,动态规划中的状态应具有以下性质:,1、能描述过程的特征,2、具有无后效性(马尔可夫性),当某阶段的状态给定时,这个阶段以后过程的演变与该阶段以前各阶段的状态无关,3、状态是直接或间接可以观测的,3、决策:,当一个阶段的状态确定后,可以作出各种选择从而演变到下一阶段的某个状态,这种选择手段称为决策,决策变量,决策,可取值为:,,=,,,简称为决策,允许决策集合,4、策略:,由各阶段的决策组成的序列称为策略,最短路问题:,
7、策略,=铺设方案,如 ,允许策略集合,最优策略:使整个问题达到最优效果的策略,策略: ,最优策略=最短的铺设路线,策略,策略:,由各阶段的决策组成的序列称为策略,原过程:,一个n段决策过程,从1到n叫作问题的原过程,原过程的一个后部子过程:,对于任意给定的k(1 kn),从第k段到第n段的过程称为原过程的一个后部子过程,最短路问题:,原过程的一个策略:,后部子过程的策略,后部子过程的策略,后部子过程的策略, , , ,= p1,4( ),, , , , , ,5、状态转移方程:是确定过程由一个状态到另一个状态的演变过程,描述了状态转移规律。,sk,状态转移方程:,6、指标函数,用于衡量所选定的
8、策略优劣的数量指标称为指标函数,最优策略,动态规划的基本原理,最优化原理: 一个过程的最优策略具有这样的性质,即无论初始状态及初始决策如何,对于先前决策所形成的状态而言,其以后的所有决策必构成最优策略,对最短路问题:,则不论前面A如何到达B,B又如何到达C1,对最短路问题:,来源于动态规划的最优化原理,最短路问题的基本方程:,k=4,3,2,1,由后向前迭代,递推公式,建立动态规划模型的步骤 1、划分阶段划分阶段是运用动态规划求解多阶段决策问题的第一步,在确定多阶段特性后,按时间或空间先后顺序,将过程划分为若干相互联系的阶段。对于静态问题要人为地赋予“时间”概念,以便划分阶段。 2、正确选择状
9、态变量选择变量既要能确切描述过程演变又要满足无后效性,而且各阶段状态变量的取值能够确定。一般地,状态变量的选择是从过程演变的特点中寻找。 3、确定决策变量及允许决策集合通常选择所求解问题的关键变量作为决策变量,同时要给出决策变量的取值范围,即确定允许决策集合。,4、确定状态转移方程根据k 阶段状态变量和决策变量,写出k+1阶段状态变量,状态转移方程应当具有递推关系。 5、确定阶段指标函数和最优指标函数,建立动态规划基本方程 阶段指标函数是指第k 阶段的收益,最优指标函数是指从第k 阶段状态出发到第n 阶段末所获得收益的最优值,最后写出动态规划基本方程。,以上五步是建立动态规划数学模型的一般步骤
10、。由于动态规划模型与线性规划模型不同,动态规划模型没有统一的模式,建模时必须根据具体问题具体分析,只有通过不断实践总结,才能较好掌握建模方法与技巧。,例一、从A 地到D 地要铺设一条煤气管道,其中需经过两级中间站,两点之间的连线上的数字表示距离,如图所示。问应该选择什么路线,使总距离最短?,A,B1,B2,C1,C2,C3,D,2,4,3,3,3,3,2,1,1,1,4,最短路径问题,解:整个计算过程分三个阶段,从最后一个阶段开始。,第一阶段(C D): C 有三条路线到终点D 。,A,B1,B2,C1,C2,C3,D,2,4,3,3,3,3,2,1,1,1,4,D,C1,C2,C3,显然有
11、f1 (C1 ) = 1 ; f1(C2 ) = 3 ; f1 (C3 ) = 4,d( B1,C1 ) + f1 (C1 ) 3+1 f2 ( B1 ) = min d( B1,C2 ) + f1 (C2 ) = min 3+3 d( B1,C3 ) + f1 (C3 ) 1+4 4 = min 6 = 4 5,第二阶段(B C): B 到C 有六条路线。,A,B1,B2,C1,C2,C3,D,2,4,3,3,3,3,2,1,1,1,4,D,C1,C2,C3,B1,B2,(最短路线为B1C1 D),d( B2,C1 ) + f1 (C1 ) 2+1 f2 ( B2 ) = min d( B2
12、,C2 ) + f1 (C2 ) = min 3+3 d( B2,C3 ) + f1 (C3 ) 1+4 3 = min 6 = 3 5,A,B1,B2,C1,C2,C3,D,2,4,3,3,3,3,2,1,1,1,4,D,C1,C2,C3,B1,B2,(最短路线为B2C1 D),第三阶段( A B ): A 到B 有二条路线。,f3(A)1 = d(A, B1 ) f2 ( B1 ) 246 f3 (A)2 = d(A, B2 ) f2 ( B2 ) 437, f3 (A) = min = min6,7=6,d(A, B1 ) f2 ( B1 )d(A, B2 ) f2 ( B2 ),(最短
13、路线为AB1C1 D),A,B1,B2,C1,C2,C3,D,2,4,3,3,3,3,2,1,1,1,4,D,C1,C2,C3,B1,B2,A,A,B1,B2,C1,C2,C3,D,2,4,3,3,3,3,2,1,1,1,4,D,C1,C2,C3,B1,B2,A,最短路线为 AB1C1 D 路长为 6,练习1:,A,B1,B2,C1,C2,C3,C4,D1,D2,D3,E1,E2,E3,F1,F2,G,5,3,1,3,6,8,7,6,3,6,8,5,3,3,8,4,2,2,2,1,3,3,3,5,2,5,6,6,4,最优路线为:A B1 C2 D1 E2 F2 G 路长18,求从A到G的最短路
14、径,3,k=5,出发点E1、E2、E3,k=2, f2(B1)=13 u2(B1)=C2 f2(B2)=16 u2(B2)=C3,7 5 9,u5(E2)=F2,u6(F2)=G,最优策略,A,B1,B2,C1,C2,C3,C4,D1,D2,D3,E1,E2,E3,F1,F2,G,5,3,1,3,6,8,7,6,3,6,8,5,3,3,8,4,2,2,2,1,3,3,3,5,2,5,6,6,4,3,求从A到E的最短路径,路线为AB2C1 D1 E ,最短路径为19,A,B2,B1,B3,C1,C3,D1,D2,E,C2,5,2,14,1,12,6,10,10,4,3,12,11,13,9,6,
15、5,8,10,5,2,练习2:,1,生产与存储问题:某工厂生产并销售某种产品。已知今四个月市场需求预测如下表,又每月生产j个单位产品的费用为 每月库存i个单位产品的费用E(i)=0.5i(千元),该厂最大库存容量为3个单位,每月最大生产能力为6个单位,计划开始和计划期末库存量都是零,试制定四个月的生产计划,在满足用户需求条件下,使总费用最小。,阶段k=1,2,3,4,第k阶段的状态变量sk,S1=0,,S2=0,1,2,3,,S3=0,1,2,3,,S4=0,1,2,3,=第k个月月初的库存量,生产与存储问题 某工厂生产并销售某种产品。已知今后四个月市场需求预测及每月生产j个单位产品的费用如下
16、:,k=1,2,3,4,sk=第k个月月初的库存量,S1=0,S2=0,1,2,3,S3=0,1,2,3,S4=0,1,2,3,=2,3,4,5,每月库存i个单位产品的费用E(i)=0.5i(千元),该厂最大库存容量为3个单位,每月最大生产能力为6个单位,计划开始和计划期末库存量都是零,试制定四个月的生产计划,在满足用户需求条件下,使总费用最小。,=2,3,4,5,=0,1,2,3,=3,生产与存储问题 某工厂生产并销售某种产品。已知今四个月市场需求预测如下表,又每月生产j个单位产品的费用为 每月库存i个单位产品的费用E(i)=0.5i(千元),该厂最大库存容量为3个单位,每月最大生产能力为6
17、个单位,计划开始和计划期末库存量都是零,试制定四个月的生产计划,在满足用户需求条件下,使总费用最小。,k=1,2,3,4,sk=第k个月月初的库存量,一个策略=一个生产方案,2,5,0,4,2,3,2,4,费用:21(千元),费用:23(千元),最优策略:,使总费用最小的生产方案,生产与存储问题 某工厂生产并销售某种产品。已知今四个月市场需求预测如下表,又每月生产j个单位产品的费用为 每月库存i个单位产品的费用E(i)=0.5i(千元),该厂最大库存容量为3个单位,每月最大生产能力为6个单位,计划开始和计划期末库存量都是零,试制定四个月的生产计划,在满足用户需求条件下,使总费用最小。,阶段k=
18、1,2,3,4,状态变量sk=第k个月月初的库存量,状态转移方程:,当k=4时,,u4(s4)对应的总费用=生产费+库存费,库存费E(i)=0.5i,,最大库存容量为3个单位,,最大生产能力为6个单位,,计划开始和计划期末库存量为零,0,1,2,3,4,7,4,3,6.5,3,2,6,2,1,5.5,1,当k=3时,,库存费E(i)=0.5i,,最大库存容量为3个单位,,最大生产能力为6个单位,,计划开始和计划期末库存量为零,0,1,2,3,0,1,2,3,0,u3(3)对应的总费用=生产费+库存费,库存费E(i)=0.5i,,最大库存容量为3个单位,,最大生产能力为6个单位,,计划开始和计划
19、期末库存量为零,0,2 3 4 5,12,12 .5,13,13.5,12,2,1,1 2 3 4,11.5,12,12.5,13,11.5,1,2,0 1 2 3,8 11.5 12 12.5,8,0,3,0 1 2,8,8,0,11.5,12,0,1,2,3,4,7,4,3,6.5,3,2,6,2,1,5.5,1,当k=2时,,u2(s2)对应的总费用=生产费+库存费,0,2 3 4 5,12,12 .5,13,13.5,12,2,1,1 2 3 4,11.5,12,12.5,13,11.5,1,2,0 1 2 3,8 11.5 12 12.5,8,0,3,0 1 2,8 11.5 12,
20、8,0,k=3,当k=2时,,0,1,2,3,3 4 5 6,18,18.5,16,17,16,5,2 3 4 5,17.5 18 15.5 16.5,1 2 3 4,17,0 1 2 3,13.5 17 14.5 15.5,15.5,4,15,3,13.5,0,17.5,15,16,当k=1时,,u1(0)对应的总费用=生产费,k=2,0,1,2,3,3 4 5 6,18,18.5,16,17,16,5,2 3 4 5,17.5 18 15.5 16.5,1 2 3 4,17 17.5 15 16,0 1 2 3,13.5 17 14.5 15.5,15.5,4,15,3,13.5,0,当k
21、=1时,,0,2 3 4 5,22 21.5,21,2,21,21.5,生产存储问题的基本方程:,最优化原理: 一个过程的最优策略具有这样的性质,即无论初始状态及初始决策如何,对于先前决策所形成的状态而言,其以后的所有决策必构成最优策略,最短路问题的基本方程:,k=4,3,2,1,生产存储问题的基本方程为:,k=n,n-1,n-2, ,3,2,1,动态规划的基本方程为:,其中opt为最优,可取min或max,现有数量为a(万元)的资金,计划分配给n 个工厂,用于扩大再生产。 假设:xi 为分配给第i 个工厂的资金数量(万元) ;gi(xi)为第i 个工厂得到资金后提供的利润值(万元)。 问题是
22、如何确定各工厂的资金数,使得总的利润为最大。,据此,有下式:,投资分配问题,令:fk(x) = 以数量为x 的资金分配给前k 个工厂,所得到的最大利润值。 用动态规划求解,就是求 fn(a) 的问题。,当 k=1 时, f1(x) = g1(x) (因为只给一个工厂),当1kn 时,其递推关系如下: 设:y 为分给第k 个工厂的资金(其中 0y x ),此时还剩 x y(万元)的资金需要分配给前 k-1 个工厂,如果采取最优策略,则得到的最大利润为fk1(xy) ,因此总的利润为: gk(y) fk1(xy),如果a 是以万元为资金分配单位,则式中的y 只取非负整数0,1,2,x。上式可变为:
23、,所以,根据动态规划的最优化原理,有下式:,例题: 设国家拨给60万元投资,供四个工厂扩建使用,每个工厂扩建后的利润与投资额的大小有关,投资后的利润函数如下表所示。,解:依据题意,是要求 f4(60) 。,按顺序解法计算。第一阶段:求 f1(x)。显然有 f1(x) g1(x),得到下表,第二阶段:求 f2(x)。此时需考虑第一、第二个工厂如何进行投资分配,以取得最大的总利润。,最优策略为(40,20),此时最大利润为120万元。,同理可求得其它 f2(x) 的值。,最优策略为(30,20),此时最大利润为105万元。,最优策略为(20,20),此时最大利润为90万元。,最优策略为(20,10
24、),此时最大利润为70万元。,最优策略为(10,0)或( 0 , 10 ) ,此时最大利润为20万元。,f2(0) 0。最优策略为(0,0),最大利润为0万元。 得到下表,最优策略为(20,0),此时最大利润为50万元。,第三阶段:求 f3(x)。此时需考虑第一、第二及第三个工厂如何进行投资分配,以取得最大的总利润。,最优策略为(20,10,30),最大利润为155万元。,同理可求得其它 f3(x) 的值。得到下表,第四阶段:求 f4(60)。即问题的最优策略。,最优策略为(20,0,30,10),最大利润为160万元。,练习: 求投资分配问题得最优策略,其中a50 万元,其余资料如表所示。,
25、例:某公司打算在3个不同的地区设置4个销售点,根据市场部门估计,在不同地区设置不同数量的销售点每月可得到的利润如表所示。试问在各地区如何设置销售点可使每月总利润最大。,x1=2,x2=1,x3=1,f3(4)=47,有一个徒步旅行者,其可携带物品重量的限度为a 公斤,设有n 种物品可供他选择装入包中。已知每种物品的重量及使用价值(作用),问此人应如何选择携带的物品(各几件),使所起作用(使用价值)最大?,这就是背包问题。类似的还有工厂里的下料问题、运输中的货物装载问题、人造卫星内的物品装载问题等。,四、背包问题,设xj 为第j 种物品的装件数(非负整数)则问题的数学模型如下:,用动态规划方法求
26、解,令 fx(y) = 总重量不超过 y 公斤,包中只装有前k 种物品时的最大使用价值。 其中y 0, k 1,2, , n 。所以问题就是求 fn(a),其递推关系式为:,当 k=1 时,有:,例题:求下面背包问题的最优解,解:a5 ,问题是求 f3(5),所以,最优解为 X(1 . 1 . 0),最优值为 Z = 13。,练习1:某厂生产三种产品,各种产品重量与利润的关系如表所示。现将此三种产品运往市场出售,运输能力总重量不超过 6 吨,问如何安排运输,使总利润最大?,最优方案:X1 =(0.2.0)X2 =(1.0.1)Z=260,练习2:求下列问题的最优解,X=(2. 1. 0) 最优
27、值为 Z = 13,排序问题指n 种零件经过不同设备加工是的顺序问题。其目的是使加工周期为最短。,1、n 1 排序问题 即n 种零件经过1 种设备进行加工,如何安排?,例一、,五、排序问题,(1)平均通过设备的时间最小,按零件加工时间非负次序排列顺序,其时间最小。(即将加工时间由小到大排列即可),零件加工顺序,平均通过时间,延迟时间 = 13 6 = 7,(2)按时交货排列顺序,零件加工顺序,平均通过时间,延迟时间 = 0,(3)既满足交货时间,又使平均通过时间最小,零件加工顺序,延迟时间 = 0,平均通过时间,2、n 2 排序问题 即n 种零件经过2 种设备进行加工,如何安排?,例二、,经变换为,加工顺序图如下:,A,B,T,3,7,5,6,8,9,5,4,3,2,+2,+2,-5,加工周期 T = 3+7+5+6+8+2 = 31,3、n 3 排序问题 即n 种零件经过 3 种设备进行加工,如何安排?,例三、,A,B,C,T,变换,排序,复原,计算,T = 6+10+8+7+6+4+3 = 44,计算依据:,练习:,