运筹学华科课件第8章-动态规划_第1页
运筹学华科课件第8章-动态规划_第2页
运筹学华科课件第8章-动态规划_第3页
运筹学华科课件第8章-动态规划_第4页
运筹学华科课件第8章-动态规划_第5页
已阅读5页,还剩159页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

动态规划(Dynamicprogramming)动态规划的基本思想最短路径问题投资分配问题背包问题生产与库存问题系统可靠性问题排序问题1动态规划动态规划的基本思想最短路径问题投资

动态规划是用来解决多阶段决策过程最优化的一种数量方法。其特点在于,它可以把一个n维决策问题变换为几个一维最优化问题,从而一个一个地去解决。

需指出:动态规划是求解某类问题的一种方法,是考察问题的一种途径,而不是一种算法。必须对具体问题进行具体分析,运用动态规划的原理和方法,建立相应的模型,然后再用动态规划方法去求解。2动态规划是用来解决多阶段决策过程最优化的一种即在系统发展的不同时刻(或阶段)根据系统所处的状态,不断地做出决策;每个阶段都要进行决策,目的是使整个过程的决策达到最优效果。动态决策问题的特点:系统所处的状态和时刻是进行决策的重要因素;找到不同时刻的最优决策以及整个过程的最优策略。多阶段决策问题:是动态决策问题的一种特殊形式;在多阶段决策过程中,系统的动态过程可以按照时间进程分为状态相互联系而又相互区别的各个阶段;3即在系统发展的不同时刻(或阶段)根据系统所处的状态,不断地做多阶段决策问题的典型例子:1.生产决策问题:企业在生产过程中,由于需求是随时间变化的,因此企业为了获得全年的最佳生产效益,就要在整个生产过程中逐月或逐季度地根据库存和需求决定生产计划。

2.机器负荷分配问题:某种机器可以在高低两种不同的负荷下进行生产。在高负荷下进行生产时,产品的年产量g和投入生产的机器数量u1的关系为g=g(u1)12n状态决策状态决策状态状态决策4多阶段决策问题的典型例子:2.机器负荷分配问题:某种

这时,机器的年完好率为a,即如果年初完好机器的数量为u,到年终完好的机器就为au,0<a<1。

在低负荷下生产时,产品的年产量h和投入生产的机器数量u2的关系为

h=h(u2)

假定开始生产时完好的机器数量为s1。要求制定一个五年计划,在每年开始时,决定如何重新分配完好的机器在两种不同的负荷下生产的数量,使在五年内产品的总产量达到最高。

相应的机器年完好率b,0<b<1。

5这时,机器的年完好率为a,即如果年初完好机器的数量为u

3.航天飞机飞行控制问题:由于航天飞机的运动的环境是不断变化的,因此就要根据航天飞机飞行在不同环境中的情况,不断地决定航天飞机的飞行方向和速度(状态),使之能最省燃料和实现目的(如软着落问题)。

不包含时间因素的静态决策问题(本质上是一次决策问题)也可以适当地引入阶段的概念,作为多阶段的决策问题用动态规划方法来解决。

4.线性规划、非线性规划等静态的规划问题也可以通过适当地引入阶段的概念,应用动态规划方法加以解决。63.航天飞机飞行控制问题:由于航天飞机的运动的环

5.

最短路问题:给定一个交通网络图如下,其中两点之间的数字表示距离(或花费),试求从A点到G点的最短距离(总费用最小)。123456AB1B2C1C2C3C4D1D2D3E1E2E3F1F2G53136876368533842221333525664375.最短路问题:给定一个交通网络图如下,其中两点

(一)、基本概念1、阶段:把一个问题的过程,恰当地分为若干个相互联系的阶段,以便于按一定的次序去求解。描述阶段的变量称为阶段变量。阶段的划分,一般是根据时间和空间的自然特征来进行的,但要便于问题转化为多阶段决策。2、状态:表示每个阶段开始所处的自然状况或客观条件。通常一个阶段有若干个状态,描述过程状态的变量称为状态变量。年、月、路段一个数、一组数、一个向量状态变量的取值有一定的允许集合或范围,此集合称为状态允许集合。一、动态规划的基本思想8(一)、基本概念2、状态:表示每个阶段开始所处的自然状况或3、决策:表示当过程处于某一阶段的某个状态时,可以作出不同的决定,从而确定下一阶段的状态,这种决定称为决策。描述决策的变量,称为决策变量。决策变量是状态变量的函数。可用一个数、一组数或一向量(多维情形)来描述。在实际问题中决策变量的取值往往在某一范围之内,此范围称为允许决策集合。4、多阶段决策过程系统在某一阶段的状态转移不但与系统的当前的状态和决策有关,而且还与系统过去的历史状态和决策有关。可以在各个阶段进行决策,去控制过程发展的多段过程;其发展是通过一系列的状态转移来实现的;93、决策:表示当过程处于某一阶段的某个状态时,可以图示如下:状态转移方程是确定过程由一个状态到另一个状态的演变过程。如果第k阶段状态变量sk的值、该阶段的决策变量一经确定,第k+1阶段状态变量sk+1的值也就确定。其状态转移方程如下(一般形式)12ks1u1s2u2s3skuksk+1能用动态规划方法求解的多阶段决策过程是一类特殊的多阶段决策过程,即具有无后效性的多阶段决策过程。10图示如下:状态转移方程是确定过程由一个状态到另一个状态的演变如果状态变量不能满足无后效性的要求,应适当地改变状态的定义或规定方法。动态规划中能处理的状态转移方程的形式。状态具有无后效性的多阶段决策过程的状态转移方程如下无后效性(马尔可夫性)如果某阶段状态给定后,则在这个阶段以后过程的发展不受这个阶段以前各段状态的影响;过程的过去历史只能通过当前的状态去影响它未来的发展;构造动态规划模型时,要充分注意是否满足无后效性的要求;状态变量要满足无后效性的要求;11如果状态变量不能满足无后效性的要求,应适当地5、策略:是一个按顺序排列的决策组成的集合。在实际问题中,可供选择的策略有一定的范围,称为允许策略集合。从允许策略集合中找出达到最优效果的策略称为最优策略。

6、状态转移方程:是确定过程由一个状态到另一个状态的演变过程,描述了状态转移规律。7、指标函数和最优值函数:用来衡量所实现过程优劣的一种数量指标,为指标函数。指标函数的最优值,称为最优值函数。在不同的问题中,指标函数的含义是不同的,它可能是距离、利润、成本、产量或资源消耗等。动态规划模型的指标函数,应具有可分离性,并满足递推关系。125、策略:是一个按顺序排列的决策组成的集合。在实际问题中小结:方程:状态转移方程概念:阶段变量k﹑状态变量sk﹑决策变量uk;指标:

动态规划本质上是多阶段决策过程;

效益指标函数形式:

和、积无后效性可递推13小结:方程:状态转移方程概念:阶段变量k﹑状态变量sk以上式子称为动态规划最优指标的递推方程,是动态规划的基本方程。终端条件:为了使以上的递推方程有递推的起点,必须要设定最优指标的终端条件,一般最后一个状态n+1下最优指标fn+1(sn+1)=0。14以上式子称为动态规划最优指标的递推方程,是动态规划的基本方程解多阶段决策过程问题,求出

最优策略,即最优决策序列f1(s1)

最优轨线,即执行最优策略时的状态序列

最优目标函数值从k到终点最优策略子策略的最优目标函数值15解多阶段决策过程问题,求出最优策略,即最优决策序列1、动态规划方法的关键在于正确地写出基本的递推关系式和恰当的边界条件(简称基本方程)。要做到这一点,就必须将问题的过程分成几个相互联系的阶段,恰当的选取状态变量和决策变量及定义最优值函数,从而把一个大问题转化成一组同类型的子问题,然后逐个求解。即从边界条件开始,逐段递推寻优,在每一个子问题的求解中,均利用了它前面的子问题的最优化结果,依次进行,最后一个子问题所得的最优解,就是整个问题的最优解。(二)、动态规划的基本思想16(二)、动态规划的基本思想162、在多阶段决策过程中,动态规划方法是既把当前一段和未来一段分开,又把当前效益和未来效益结合起来考虑的一种最优化方法。因此,每段决策的选取是从全局来考虑的,与该段的最优选择答案一般是不同的.

最优化原理:作为整个过程的最优策略具有这样的性质:无论过去的状态和决策如何,相对于前面的决策所形成的状态而言,余下的决策序列必然构成最优子策略。”也就是说,一个最优策略的子策略也是最优的。3、在求整个问题的最优策略时,由于初始状态是已知的,而每段的决策都是该段状态的函数,故最优策略所经过的各段状态便可逐段变换得到,从而确定了最优路线。172、在多阶段决策过程中,动态规划方法是既把当前一段(三)、建立动态规划模型的步骤1、划分阶段划分阶段是运用动态规划求解多阶段决策问题的第一步,在确定多阶段特性后,按时间或空间先后顺序,将过程划分为若干相互联系的阶段。对于静态问题要人为地赋予“时间”概念,以便划分阶段。2、正确选择状态变量选择变量既要能确切描述过程演变又要满足无后效性,而且各阶段状态变量的取值能够确定。一般地,状态变量的选择是从过程演变的特点中寻找。3、确定决策变量及允许决策集合通常选择所求解问题的关键变量作为决策变量,同时要给出决策变量的取值范围,即确定允许决策集合。18(三)、建立动态规划模型的步骤184、确定状态转移方程根据k阶段状态变量和决策变量,写出k+1阶段状态变量,状态转移方程应当具有递推关系。5、确定阶段指标函数和最优指标函数,建立动态规划基本方程阶段指标函数是指第k

阶段的收益,最优指标函数是指从第k阶段状态出发到第n阶段末所获得收益的最优值,最后写出动态规划基本方程。

以上五步是建立动态规划数学模型的一般步骤。由于动态规划模型与线性规划模型不同,动态规划模型没有统一的模式,建模时必须根据具体问题具体分析,只有通过不断实践总结,才能较好掌握建模方法与技巧。194、确定状态转移方程以上五步是建立动态规划数学模型例一、从A

地到D

地要铺设一条煤气管道,其中需经过两级中间站,两点之间的连线上的数字表示距离,如图所示。问应该选择什么路线,使总距离最短?AB1B2C1C2C3D24333321114二、最短路径问题20例一、从A地到D地要铺设一条煤气管道,其中需经过两级中间解:整个计算过程分三个阶段,从最后一个阶段开始。第一阶段(C→D):C

有三条路线到终点D。

AB1B2C1C2C3D24333321114DC1C2C3显然有f1(C1)

=1;

f1(C2)

=3;

f1(C3)

=4

21解:整个计算过程分三个阶段,从最后一个阶段开始。第一阶

d(B1,C1)+f1(C1)

3+1f2(B1)=mind(B1,C2

)+f1(C2)

=min3+3

d(B1,C3)+f1(C3)1+44=min6=45第二阶段(B→C):B到C

有六条路线。AB1B2C1C2C3D24333321114DC1C2C3B1B2(最短路线为B1→C1→D)22第二阶段(B→C):B到C有六条路线。A

d(B2,C1)+f1(C1)

2+1f2(B2)=mind(B2,C2

)+f1(C2)

=min3+3

d(B2,C3)+f1(C3)1+43=min6=35AB1B2C1C2C3D24333321114DC1C2C3B1B2(最短路线为B2→C1→D)23AB1B2C1C2C3D24333321114D第三阶段(A→B):A到B有二条路线。

f3(A)1=d(A,B1)+f2(B1)=2+4=6

f3(A)2=d(A,B2)+f2(B2)=4+3=7∴f3(A)

=min=min{6,7}=6d(A,B1)+f2(B1)d(A,B2)+f2(B2)(最短路线为A→B1→C1→D)AB1B2C1C2C3D24333321114DC1C2C3B1B2A24第三阶段(A→B):A到B有二条路线。AB1B2C1C2C3D24333321114DC1C2C3B1B2A最短路线为A→B1→C1→D

路长为625AB1B2C1C2C3D24333321114DC1C2C3练习1:AB1B2C1C2C3C4D1D2D3E1E2E3F1F2G53136876368533842221333525664最优路线为:A→B1→C2→D1→E2→F2→G

路长=18求从A到G的最短路径326练习1:AB1B2C1C2C3C4D1D2D3E1E2E3Fk=5,出发点E1、E2、E3u5(E1)=F1E1F1GAB1B2C1C2C3C4D1D2D3E1E2E3F1F2G531368766835338422123335526643u5(E2)=F2E2F2Gu5(E3)=F2E3F2Gk=6,F1Gf6(F1)=4F2G

,f6(F2)=327k=5,出发点E1、E2、E3u5(E1)=F1AB1B2Ck=4,f4(D1)=7

u4(D1)=E2f4(D2)=6

u4(D2)=E2f4(D3)=8

u4(D3)=E2k=2,f2(B1)=13

u2(B1)=C2f2(B2)=16u2(B2)=C3f3(C1)=13

u3(C1)=D1f3(C2)=10

u3(C2)=D1f3(C3)=9

u3(C3)=D1f3(C4)=12

u3(C4)=D3k=3,=minf1(A)=mind1(A,B1)+f2(B1)d1(A,B2)+f2(B2)5+133+16=18k=1,u1(A)=B1u2(B1)=C2u3(C2)=D1u4(D1)=E228k=4,f4(D1)=7u4(D1)=E2k=2,u1(A)=B1u2(B1)=C2u3(C2)=D1u4(D1)=E2u5(E1)=F1E1F1Gu5(E2)=F2E2F2Gu5(E3)=F2E3F2G759

u5(E2)=F2u6(F2)=G最优策略AB1B2C1C2C3C4D1D2D3E1E2E3F1F2G53136876368533842221333525664329u1(A)=B1u2(B1)=C2u3(C2)=D1u4(D求从A到E的最短路径路线为A→B2→C1→D1→E

,最短路径为19AB2B1B3C1C3D1D2EC25214112610104312111396581052练习2:130求从A到E的最短路径路线为A→B2→C1→D1→E,最现有数量为a(万元)的资金,计划分配给n个工厂,用于扩大再生产。假设:xi为分配给第i个工厂的资金数量(万元);gi(xi)为第i个工厂得到资金后提供的利润值(万元)。问题是如何确定各工厂的资金数,使得总的利润为最大。据此,有下式:三、投资分配问题31现有数量为a(万元)的资金,计划分配给n个工厂,令:fk(x)=以数量为x的资金分配给前k

个工厂,所得到的最大利润值。用动态规划求解,就是求fn(a)的问题。当k=1

时,f1(x)=g1(x)(因为只给一个工厂)当1<k≤n

时,其递推关系如下:设:y

为分给第k个工厂的资金(其中0≤y≤x

),此时还剩x-y(万元)的资金需要分配给前k-1

个工厂,如果采取最优策略,则得到的最大利润为fk-1(x-y),因此总的利润为:

gk(y)+fk-1(x-y)

32令:fk(x)=以数量为x的资金分配给前k个工厂如果a

是以万元为资金分配单位,则式中的y只取非负整数0,1,2,…,x。上式可变为:所以,根据动态规划的最优化原理,有下式:33如果a是以万元为资金分配单位,则式中的y例题:设国家拨给60万元投资,供四个工厂扩建使用,每个工厂扩建后的利润与投资额的大小有关,投资后的利润函数如下表所示。投资利润0102030405060g1(x)0205065808585g2(x)0204050556065g3(x)0256085100110115g4(x)0254050606570解:依据题意,是要求f4(60)。34例题:投资0102030405060g1按顺序解法计算。第一阶段:求f1(x)。显然有f1(x)=g1(x),得到下表

投资利润0102030405060f1(x)=

g1(x)0205065808585最优策略0102030405060第二阶段:求f2(x)。此时需考虑第一、第二个工厂如何进行投资分配,以取得最大的总利润。35按顺序解法计算。投资0最优策略为(40,20),此时最大利润为120万元。同理可求得其它f2(x)的值。36最优策略为(40,20),此时最大利润为120万元。同理可求最优策略为(30,20),此时最大利润为105万元。37最优策略为(30,20),此时最大利润为105万元。37最优策略为(20,20),此时最大利润为90万元。最优策略为(20,10),此时最大利润为70万元。38最优策略为(20,20),此时最大利润为90万元。最优策略为最优策略为(10,0)或(0,10),此时最大利润为20万元。

f2(0)=0。最优策略为(0,0),最大利润为0万元。得到下表最优策略为(20,0),此时最大利润为50万元。39最优策略为(10,0)或(0,10),此时最大利润

投资利润0102030405060f2(x)020507090105120最优策略(0,0)(10,0)(0,10)(20,0)(20,10)(20,20)(30,20)(40,20)第三阶段:求f3(x)。此时需考虑第一、第二及第三个工厂如何进行投资分配,以取得最大的总利润。40投资010203040最优策略为(20,10,30),最大利润为155万元。同理可求得其它f3(x)的值。得到下表41最优策略为(20,10,30),最大利润为155万元。同理可

投资利润0102030405060f3(x)0256085110135155最优策略(0,0,0)(0,0,10)(0,0,20)(0,0,30)(20,0,20)(20,0,30)(20,10,30)第四阶段:求f4(60)。即问题的最优策略。42投资0102030405060f3(x)02560最优策略为(20,0,30,10),最大利润为160万元。43最优策略为(20,0,30,10),最大利润为160万元。4练习:求投资分配问题得最优策略,其中a=50万元,其余资料如表所示。投资利润01020304050g1(x)02140528085g2(x)015365073100g3(x)0256065687044练习:投资01020304050g1(x例:某公司打算在3个不同的地区设置4个销售点,根据市场部门估计,在不同地区设置不同数量的销售点每月可得到的利润如表所示。试问在各地区如何设置销售点可使每月总利润最大。地区销售点01234123000161210251714302116322217x1=2,x2=1,x3=1,f3(4)=47

45例:某公司打算在3个不同的地区设置4个销售点,根据市场部门估有一个徒步旅行者,其可携带物品重量的限度为a公斤,设有n种物品可供他选择装入包中。已知每种物品的重量及使用价值(作用),问此人应如何选择携带的物品(各几件),使所起作用(使用价值)最大?物品

12…j…n重量(公斤/件)a1a2…

aj…

an每件使用价值c1c2…cj…

cn这就是背包问题。类似的还有工厂里的下料问题、运输中的货物装载问题、人造卫星内的物品装载问题等。四、背包问题46有一个徒步旅行者,其可携带物品重量的限度为a公斤,设设xj为第j种物品的装件数(非负整数)则问题的数学模型如下:用动态规划方法求解,令

fx(y)=总重量不超过y公斤,包中只装有前k种物品时的最大使用价值。其中y≥0,k=1,2,…,n。所以问题就是求fn(a)

47设xj为第j种物品的装件数(非负整数)则问题的数学模型如其递推关系式为:当k=1时,有:48其递推关系式为:当k=1时,有:48例题:求下面背包问题的最优解物品123重量(公斤)325使用价值8512解:a=5,问题是求f3(5)49例题:求下面背包问题的最优解物品125050515152525353所以,最优解为X=(1.1.0),最优值为Z=13。54所以,最优解为X=(1.1.0),最优值为Z练习1:某厂生产三种产品,各种产品重量与利润的关系如表所示。现将此三种产品运往市场出售,运输能力总重量不超过6吨,问如何安排运输,使总利润最大?种类123重量(吨/公斤)234单件利润(元)80130180最优方案:X1

=(0.2.0)X2=(1.0.1)Z=26055练习1:某厂生产三种产品,各种产品重量与利润的关系练习2:求下列问题的最优解

X=(2.1.0)

最优值为

Z=1356练习2:求下列问题的最优解五、生产与库存问题例.某公司为主要电力公司生产大型变压器,由于电力采取预订方式购买,所以该公司可以预测未来几个月的需求量。为确保需求,该公司为新的一年前四个月制定一项生产计划,这四个月的需求如表1所示。生产成本随着生产数量而变化。调试费为4,除了调度费用外,每月生产的头两台各花费为2,后两台花费为1。最大生产能力每月为4台,生产成本如表2所示。

表1

57五、生产与库存问题57

表2每台变压器在仓库中由这个月存到下个月的储存费为1,仓库的最大储存能力为3台,另外,知道在1月1日时仓库里存有一台变压器,要求在4月30日仓库的库存量为零。试问该公司应如何制定生产计划,使得四个月的生产成本和储存总费用最少?解:我们按月份来划分阶段,第i个月为第i阶段:(i=1,2,3,4).设为第k阶段期初库存量;k=1,2,3,4

58表258

为第k阶段生产量;k=1,2,3,4为第k阶段需求量;k=1,2,3,4,这已在表10-15中告诉我们。因为下个月的库存量等于上个月的库存量加上上个月的产量减去上个月的需求量,我们就得到了如下状态转移方程:因为,故有

因为,故有

59为第k阶段生产量;k=1,2,3,459由于必须要满足需求,则有

通过移项得到

另一方面,第k阶段的生产量必不大于同期的生产能力(4台),也不大于第k阶段至第四阶段的需求之和与第k阶段期初库存量之差,否则第k阶段的生产量就要超过从第k阶段至第四阶段的总需求,故有

以下我们从第四阶段开始计算:从以上的状态转移方程可知这样就有

60由于必须要满足需求,则有60这里的阶段指标可以分成两部分,即生产成本与储存费,即为由于第四阶段末要求库存为零,即有,这样可得对于每个的可行值,的值列于表3。

表361这里的阶段指标可以分成两部分,即生产成

表中当时,可知第四阶段要生产台,从表2可知总成本为9,同样可以算出当为1,2,3时的情况,结果已列于表3中。第三阶段:此时有:因为

以及

所以有例如,当第三阶段初库存量时,生产量为2时,则所以生产成本为8,第三阶段末库存为2时,储存费为,而62表中当时,可知第四阶段要生产62查3表可知,这样可知,填入表4中的栏内,其他结果如表4所示:表4第二阶段:因为所以有63查3表可知,这样可知,63计算结果如表5所示。

表5

6464

第一阶段:因为故有

计算结果见表6。

表665第一阶段:65

利用递推关系可以从表6,表5,表4和表3得到两组最优解:这时有最低总成本29。66利用递推关系可以从表6,表5,表4和表3得到两组最优解:六、系统可靠性问题例.某科研项目组由三个小组用不同的手段分别研究,它们失败的概率各为0.40,0.60,0.80。为了减少三个小组都失败的可能性,现决定给三个小组中增派两名高级科学家,到各小组后,各小组科研项目失败概率如下表:问如何分派科学家才能使三个小组都失败的概率(即科研项目最终失败的概率)最小?

高级科学家小组12300.400.600.8010.200.400.5020.150.200.3067六、系统可靠性问题高级科学家小组12300.400.600.

解:用逆序算法。设阶段:每个研究小组为一个阶段,且阶段123小组12368解:用逆序算法。设阶段123小组12368计算当n=3时,当n=2时,

s3f3*(s3)x3*00.80010.50120.302

x2s2f2(s2,x2)=P2(x2)·f3*(s2-x2)f2*(s2)x2*01200.480.48010.300.320.30020.180.200.160.16269计算s3f3*(当n=1时,

最优解为x1*=1,x2*=0,x3*=1;科研项目最终失败的概率为0.060。x1s1f1(s1,x1)=P1(x1)·f2*(s1-x1)f2*(s2)x2*01220.0640.0600.0720.060170当n=1时,x1f1(s1,x1)=排序问题指n种零件经过不同设备加工时的顺序问题。其目的是使加工周期为最短。1、n×1排序问题

即n种零件经过1种设备进行加工,如何安排?14682023交货日期(d)45173加工时间(t)零件代号例一、

七、排序问题71排序问题指n种零件经过不同设备加工时的顺序问题。(1)平均通过设备的时间最小按零件加工时间非负次序排列顺序,其时间最小。(即将加工时间由小到大排列即可)零件加工顺序工序时间13457实际通过时间1481320交货时间82314620平均通过时间72(1)平均通过设备的时间最小按零件加工时间非延迟时间=13–6=7(2)按时交货排列顺序零件加工顺序工序时间13457实际通过时间56101720交货时间82314620平均通过时间延迟时间=073延迟时间=13–6=7(2)按时交货排列(3)既满足交货时间,又使平均通过时间最小零件加工顺序工序时间13457实际通过时间1691320交货时间82314620延迟时间=0平均通过时间74(3)既满足交货时间,又使平均通过时间最小零件加工顺2、n×2排序问题

即n种零件经过2种设备进行加工,如何安排?例二、49523B53786A零件设备ABT752、n×2排序问题例二、49523B5378Johnson算法:零件i应该排在零件j之前进行加工的充分条件:min(ai,bj)min(aj,bi)(1)在工时矩阵M中找出最小元素(若最小元素)的不止一个,可任选其一);若它在上行,则将相应的零件排在最前位置;若它在下行,则将相应的零件排在最后的位置。(2)将排定位置的零件所对应的M列从中划掉,然后对余下的零件重复按(1)进行。但那时的最前(或最后)是已排定位置的零件之后(或之前)。76Johnson算法:零件i应该排在零件j之前进行加工的充分条经变换为49523B53786A零件设备加工顺序图如下:ABT3756895432+2+2-5加工周期T=3+7+5+6+8+2=3177经变换为49523B53786A零件3、n×3排序问题

即n种零件经过3种设备进行加工,如何安排?例三、3468564683579310CBA783、n×3排序问题例三、3468564683ABCT变换4+36+45+86+56+48+65+37+53+910+3B+CA+B79ABCT变换4+36+45+86+56+48+65+37+5排序4+36+45+86+56+48+65+37+53+910+3B+CA+B复原3468564683579310CBA80排序4+36+45+86+56+48+65+37+53+91计算T=6+10+8+7+6+4+3=44计算依据:81计算T=6+10+8+7+6+4+3=44计算依据:练习:11851079827746CBAT=4582练习:11851079827746CBAT=4582动态规划(Dynamicprogramming)动态规划的基本思想最短路径问题投资分配问题背包问题生产与库存问题系统可靠性问题排序问题83动态规划动态规划的基本思想最短路径问题投资

动态规划是用来解决多阶段决策过程最优化的一种数量方法。其特点在于,它可以把一个n维决策问题变换为几个一维最优化问题,从而一个一个地去解决。

需指出:动态规划是求解某类问题的一种方法,是考察问题的一种途径,而不是一种算法。必须对具体问题进行具体分析,运用动态规划的原理和方法,建立相应的模型,然后再用动态规划方法去求解。84动态规划是用来解决多阶段决策过程最优化的一种即在系统发展的不同时刻(或阶段)根据系统所处的状态,不断地做出决策;每个阶段都要进行决策,目的是使整个过程的决策达到最优效果。动态决策问题的特点:系统所处的状态和时刻是进行决策的重要因素;找到不同时刻的最优决策以及整个过程的最优策略。多阶段决策问题:是动态决策问题的一种特殊形式;在多阶段决策过程中,系统的动态过程可以按照时间进程分为状态相互联系而又相互区别的各个阶段;85即在系统发展的不同时刻(或阶段)根据系统所处的状态,不断地做多阶段决策问题的典型例子:1.生产决策问题:企业在生产过程中,由于需求是随时间变化的,因此企业为了获得全年的最佳生产效益,就要在整个生产过程中逐月或逐季度地根据库存和需求决定生产计划。

2.机器负荷分配问题:某种机器可以在高低两种不同的负荷下进行生产。在高负荷下进行生产时,产品的年产量g和投入生产的机器数量u1的关系为g=g(u1)12n状态决策状态决策状态状态决策86多阶段决策问题的典型例子:2.机器负荷分配问题:某种

这时,机器的年完好率为a,即如果年初完好机器的数量为u,到年终完好的机器就为au,0<a<1。

在低负荷下生产时,产品的年产量h和投入生产的机器数量u2的关系为

h=h(u2)

假定开始生产时完好的机器数量为s1。要求制定一个五年计划,在每年开始时,决定如何重新分配完好的机器在两种不同的负荷下生产的数量,使在五年内产品的总产量达到最高。

相应的机器年完好率b,0<b<1。

87这时,机器的年完好率为a,即如果年初完好机器的数量为u

3.航天飞机飞行控制问题:由于航天飞机的运动的环境是不断变化的,因此就要根据航天飞机飞行在不同环境中的情况,不断地决定航天飞机的飞行方向和速度(状态),使之能最省燃料和实现目的(如软着落问题)。

不包含时间因素的静态决策问题(本质上是一次决策问题)也可以适当地引入阶段的概念,作为多阶段的决策问题用动态规划方法来解决。

4.线性规划、非线性规划等静态的规划问题也可以通过适当地引入阶段的概念,应用动态规划方法加以解决。883.航天飞机飞行控制问题:由于航天飞机的运动的环

5.

最短路问题:给定一个交通网络图如下,其中两点之间的数字表示距离(或花费),试求从A点到G点的最短距离(总费用最小)。123456AB1B2C1C2C3C4D1D2D3E1E2E3F1F2G531368763685338422213335256643895.最短路问题:给定一个交通网络图如下,其中两点

(一)、基本概念1、阶段:把一个问题的过程,恰当地分为若干个相互联系的阶段,以便于按一定的次序去求解。描述阶段的变量称为阶段变量。阶段的划分,一般是根据时间和空间的自然特征来进行的,但要便于问题转化为多阶段决策。2、状态:表示每个阶段开始所处的自然状况或客观条件。通常一个阶段有若干个状态,描述过程状态的变量称为状态变量。年、月、路段一个数、一组数、一个向量状态变量的取值有一定的允许集合或范围,此集合称为状态允许集合。一、动态规划的基本思想90(一)、基本概念2、状态:表示每个阶段开始所处的自然状况或3、决策:表示当过程处于某一阶段的某个状态时,可以作出不同的决定,从而确定下一阶段的状态,这种决定称为决策。描述决策的变量,称为决策变量。决策变量是状态变量的函数。可用一个数、一组数或一向量(多维情形)来描述。在实际问题中决策变量的取值往往在某一范围之内,此范围称为允许决策集合。4、多阶段决策过程系统在某一阶段的状态转移不但与系统的当前的状态和决策有关,而且还与系统过去的历史状态和决策有关。可以在各个阶段进行决策,去控制过程发展的多段过程;其发展是通过一系列的状态转移来实现的;913、决策:表示当过程处于某一阶段的某个状态时,可以图示如下:状态转移方程是确定过程由一个状态到另一个状态的演变过程。如果第k阶段状态变量sk的值、该阶段的决策变量一经确定,第k+1阶段状态变量sk+1的值也就确定。其状态转移方程如下(一般形式)12ks1u1s2u2s3skuksk+1能用动态规划方法求解的多阶段决策过程是一类特殊的多阶段决策过程,即具有无后效性的多阶段决策过程。92图示如下:状态转移方程是确定过程由一个状态到另一个状态的演变如果状态变量不能满足无后效性的要求,应适当地改变状态的定义或规定方法。动态规划中能处理的状态转移方程的形式。状态具有无后效性的多阶段决策过程的状态转移方程如下无后效性(马尔可夫性)如果某阶段状态给定后,则在这个阶段以后过程的发展不受这个阶段以前各段状态的影响;过程的过去历史只能通过当前的状态去影响它未来的发展;构造动态规划模型时,要充分注意是否满足无后效性的要求;状态变量要满足无后效性的要求;93如果状态变量不能满足无后效性的要求,应适当地5、策略:是一个按顺序排列的决策组成的集合。在实际问题中,可供选择的策略有一定的范围,称为允许策略集合。从允许策略集合中找出达到最优效果的策略称为最优策略。

6、状态转移方程:是确定过程由一个状态到另一个状态的演变过程,描述了状态转移规律。7、指标函数和最优值函数:用来衡量所实现过程优劣的一种数量指标,为指标函数。指标函数的最优值,称为最优值函数。在不同的问题中,指标函数的含义是不同的,它可能是距离、利润、成本、产量或资源消耗等。动态规划模型的指标函数,应具有可分离性,并满足递推关系。945、策略:是一个按顺序排列的决策组成的集合。在实际问题中小结:方程:状态转移方程概念:阶段变量k﹑状态变量sk﹑决策变量uk;指标:

动态规划本质上是多阶段决策过程;

效益指标函数形式:

和、积无后效性可递推95小结:方程:状态转移方程概念:阶段变量k﹑状态变量sk以上式子称为动态规划最优指标的递推方程,是动态规划的基本方程。终端条件:为了使以上的递推方程有递推的起点,必须要设定最优指标的终端条件,一般最后一个状态n+1下最优指标fn+1(sn+1)=0。96以上式子称为动态规划最优指标的递推方程,是动态规划的基本方程解多阶段决策过程问题,求出

最优策略,即最优决策序列f1(s1)

最优轨线,即执行最优策略时的状态序列

最优目标函数值从k到终点最优策略子策略的最优目标函数值97解多阶段决策过程问题,求出最优策略,即最优决策序列1、动态规划方法的关键在于正确地写出基本的递推关系式和恰当的边界条件(简称基本方程)。要做到这一点,就必须将问题的过程分成几个相互联系的阶段,恰当的选取状态变量和决策变量及定义最优值函数,从而把一个大问题转化成一组同类型的子问题,然后逐个求解。即从边界条件开始,逐段递推寻优,在每一个子问题的求解中,均利用了它前面的子问题的最优化结果,依次进行,最后一个子问题所得的最优解,就是整个问题的最优解。(二)、动态规划的基本思想98(二)、动态规划的基本思想162、在多阶段决策过程中,动态规划方法是既把当前一段和未来一段分开,又把当前效益和未来效益结合起来考虑的一种最优化方法。因此,每段决策的选取是从全局来考虑的,与该段的最优选择答案一般是不同的.

最优化原理:作为整个过程的最优策略具有这样的性质:无论过去的状态和决策如何,相对于前面的决策所形成的状态而言,余下的决策序列必然构成最优子策略。”也就是说,一个最优策略的子策略也是最优的。3、在求整个问题的最优策略时,由于初始状态是已知的,而每段的决策都是该段状态的函数,故最优策略所经过的各段状态便可逐段变换得到,从而确定了最优路线。992、在多阶段决策过程中,动态规划方法是既把当前一段(三)、建立动态规划模型的步骤1、划分阶段划分阶段是运用动态规划求解多阶段决策问题的第一步,在确定多阶段特性后,按时间或空间先后顺序,将过程划分为若干相互联系的阶段。对于静态问题要人为地赋予“时间”概念,以便划分阶段。2、正确选择状态变量选择变量既要能确切描述过程演变又要满足无后效性,而且各阶段状态变量的取值能够确定。一般地,状态变量的选择是从过程演变的特点中寻找。3、确定决策变量及允许决策集合通常选择所求解问题的关键变量作为决策变量,同时要给出决策变量的取值范围,即确定允许决策集合。100(三)、建立动态规划模型的步骤184、确定状态转移方程根据k阶段状态变量和决策变量,写出k+1阶段状态变量,状态转移方程应当具有递推关系。5、确定阶段指标函数和最优指标函数,建立动态规划基本方程阶段指标函数是指第k

阶段的收益,最优指标函数是指从第k阶段状态出发到第n阶段末所获得收益的最优值,最后写出动态规划基本方程。

以上五步是建立动态规划数学模型的一般步骤。由于动态规划模型与线性规划模型不同,动态规划模型没有统一的模式,建模时必须根据具体问题具体分析,只有通过不断实践总结,才能较好掌握建模方法与技巧。1014、确定状态转移方程以上五步是建立动态规划数学模型例一、从A

地到D

地要铺设一条煤气管道,其中需经过两级中间站,两点之间的连线上的数字表示距离,如图所示。问应该选择什么路线,使总距离最短?AB1B2C1C2C3D24333321114二、最短路径问题102例一、从A地到D地要铺设一条煤气管道,其中需经过两级中间解:整个计算过程分三个阶段,从最后一个阶段开始。第一阶段(C→D):C

有三条路线到终点D。

AB1B2C1C2C3D24333321114DC1C2C3显然有f1(C1)

=1;

f1(C2)

=3;

f1(C3)

=4

103解:整个计算过程分三个阶段,从最后一个阶段开始。第一阶

d(B1,C1)+f1(C1)

3+1f2(B1)=mind(B1,C2

)+f1(C2)

=min3+3

d(B1,C3)+f1(C3)1+44=min6=45第二阶段(B→C):B到C

有六条路线。AB1B2C1C2C3D24333321114DC1C2C3B1B2(最短路线为B1→C1→D)104第二阶段(B→C):B到C有六条路线。A

d(B2,C1)+f1(C1)

2+1f2(B2)=mind(B2,C2

)+f1(C2)

=min3+3

d(B2,C3)+f1(C3)1+43=min6=35AB1B2C1C2C3D24333321114DC1C2C3B1B2(最短路线为B2→C1→D)105AB1B2C1C2C3D24333321114D第三阶段(A→B):A到B有二条路线。

f3(A)1=d(A,B1)+f2(B1)=2+4=6

f3(A)2=d(A,B2)+f2(B2)=4+3=7∴f3(A)

=min=min{6,7}=6d(A,B1)+f2(B1)d(A,B2)+f2(B2)(最短路线为A→B1→C1→D)AB1B2C1C2C3D24333321114DC1C2C3B1B2A106第三阶段(A→B):A到B有二条路线。AB1B2C1C2C3D24333321114DC1C2C3B1B2A最短路线为A→B1→C1→D

路长为6107AB1B2C1C2C3D24333321114DC1C2C3练习1:AB1B2C1C2C3C4D1D2D3E1E2E3F1F2G53136876368533842221333525664最优路线为:A→B1→C2→D1→E2→F2→G

路长=18求从A到G的最短路径3108练习1:AB1B2C1C2C3C4D1D2D3E1E2E3Fk=5,出发点E1、E2、E3u5(E1)=F1E1F1GAB1B2C1C2C3C4D1D2D3E1E2E3F1F2G531368766835338422123335526643u5(E2)=F2E2F2Gu5(E3)=F2E3F2Gk=6,F1Gf6(F1)=4F2G

,f6(F2)=3109k=5,出发点E1、E2、E3u5(E1)=F1AB1B2Ck=4,f4(D1)=7

u4(D1)=E2f4(D2)=6

u4(D2)=E2f4(D3)=8

u4(D3)=E2k=2,f2(B1)=13

u2(B1)=C2f2(B2)=16u2(B2)=C3f3(C1)=13

u3(C1)=D1f3(C2)=10

u3(C2)=D1f3(C3)=9

u3(C3)=D1f3(C4)=12

u3(C4)=D3k=3,=minf1(A)=mind1(A,B1)+f2(B1)d1(A,B2)+f2(B2)5+133+16=18k=1,u1(A)=B1u2(B1)=C2u3(C2)=D1u4(D1)=E2110k=4,f4(D1)=7u4(D1)=E2k=2,u1(A)=B1u2(B1)=C2u3(C2)=D1u4(D1)=E2u5(E1)=F1E1F1Gu5(E2)=F2E2F2Gu5(E3)=F2E3F2G759

u5(E2)=F2u6(F2)=G最优策略AB1B2C1C2C3C4D1D2D3E1E2E3F1F2G531368763685338422213335256643111u1(A)=B1u2(B1)=C2u3(C2)=D1u4(D求从A到E的最短路径路线为A→B2→C1→D1→E

,最短路径为19AB2B1B3C1C3D1D2EC25214112610104312111396581052练习2:1112求从A到E的最短路径路线为A→B2→C1→D1→E,最现有数量为a(万元)的资金,计划分配给n个工厂,用于扩大再生产。假设:xi为分配给第i个工厂的资金数量(万元);gi(xi)为第i个工厂得到资金后提供的利润值(万元)。问题是如何确定各工厂的资金数,使得总的利润为最大。据此,有下式:三、投资分配问题113现有数量为a(万元)的资金,计划分配给n个工厂,令:fk(x)=以数量为x的资金分配给前k

个工厂,所得到的最大利润值。用动态规划求解,就是求fn(a)的问题。当k=1

时,f1(x)=g1(x)(因为只给一个工厂)当1<k≤n

时,其递推关系如下:设:y

为分给第k个工厂的资金(其中0≤y≤x

),此时还剩x-y(万元)的资金需要分配给前k-1

个工厂,如果采取最优策略,则得到的最大利润为fk-1(x-y),因此总的利润为:

gk(y)+fk-1(x-y)

114令:fk(x)=以数量为x的资金分配给前k个工厂如果a

是以万元为资金分配单位,则式中的y只取非负整数0,1,2,…,x。上式可变为:所以,根据动态规划的最优化原理,有下式:115如果a是以万元为资金分配单位,则式中的y例题:设国家拨给60万元投资,供四个工厂扩建使用,每个工厂扩建后的利润与投资额的大小有关,投资后的利润函数如下表所示。投资利润0102030405060g1(x)0205065808585g2(x)0204050556065g3(x)0256085100110115g4(x)0254050606570解:依据题意,是要求f4(60)。116例题:投资0102030405060g1按顺序解法计算。第一阶段:求f1(x)。显然有f1(x)=g1(x),得到下表

投资利润0102030405060f1(x)=

g1(x)0205065808585最优策略0102030405060第二阶段:求f2(x)。此时需考虑第一、第二个工厂如何进行投资分配,以取得最大的总利润。117按顺序解法计算。投资0最优策略为(40,20),此时最大利润为120万元。同理可求得其它f2(x)的值。118最优策略为(40,20),此时最大利润为120万元。同理可求最优策略为(30,20),此时最大利润为105万元。119最优策略为(30,20),此时最大利润为105万元。37最优策略为(20,20),此时最大利润为90万元。最优策略为(20,10),此时最大利润为70万元。120最优策略为(20,20),此时最大利润为90万元。最优策略为最优策略为(10,0)或(0,10),此时最大利润为20万元。

f2(0)=0。最优策略为(0,0),最大利润为0万元。得到下表最优策略为(20,0),此时最大利润为50万元。121最优策略为(10,0)或(0,10),此时最大利润

投资利润0102030405060f2(x)020507090105120最优策略(0,0)(10,0)(0,10)(20,0)(20,10)(20,20)(30,20)(40,20)第三阶段:求f3(x)。此时需考虑第一、第二及第三个工厂如何进行投资分配,以取得最大的总利润。122投资010203040最优策略为(20,10,30),最大利润为155万元。同理可求得其

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论