1、1,数学模型电子教案,重庆邮电大学计算机科学与技术学院沈世云,2,第二章 规划论模型,1.线性规划2.整数规划3.非线性规划4.动态规划,3,第一节 线性规划的数学模型,例1、生产计划问题,A, B各生产多少, 可获最大利润?,4,max Z= 40x1 +50x2,解:设产品A, B产量分别为变量x1 , x2,5,例2,求:最低成本的原料混合方案,6,解:设每单位添加剂中原料i的用量为xi(i =1,2,3,4),minZ= 2x1 + 5x2 +6x3+8x4,7,线性规划模型特点,决策变量:向量(x1 xn)T 决策人要考虑和控制的因素非负约束条件:线性等式或不等式目标函数:Z=(x1
2、 xn) 线性式,求Z极大或极小,8,一般式,Max(min)Z=C1X1+ C2X2+CnXn,9,10,11,12,13,14,15,16,17,18,19,可得该线性规划问题的最优解为,最优值为428。,20,单纯形法(Simplex methods)(Dantzing,1947)单纯形法是求解线性规划问题的一种有效算法。其基本思想是根据线性规划问题的标准形,先求出一个基可行解,判别是否为最优解,若不是,再转换到另一基可行解,并使目标函数值减小,重复上述过程,直到求出最优解。下面我们仍以例1来分析说明,引入松驰变量,、,,并将该问题化为标准形: LP :,21,,,为其基,,为基变量;,
3、,令非基变量,得基可行解,目标函数值为,。,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,例3、合理下料问题,39,解:设按第i种方案下料的原材料为xi根,minZ= 0.1x2 + 0.2x3+0.3x4+0.8x5,40,例4、运输问题,41,设xij为i 仓库运到 j工厂的原棉数量(i 1,2,3, j 1,2,3),minZ= 2x11 + x12+3x13+2x21 +2x22 +4x23 +3x31 +4x32 +2x33,42,1. 整数规划问题的提出 2 . 分枝定界法 3. 0-1型整数规划 4. 指派问题,第二节 整数
4、规划,43,1. 整数规划问题的提出,在求解线性规划问题时,得到的最优解可能是分数或小数,但许多实际问题要求得到的解为整数才行。这种要求线性规划有整数解的问题,称为整数规划(Integer Programming)或简称IP。,44,是不是可通过把不考虑整数要求求得的最优解经过“化整”得到满足整数要求的最优解呢?,它和线性规划问题的区别在于条件(5)。,此例可解得x1=4.8,x2=0,凑整为x1=5,x2=0,这就破坏了条件(2),因而不是可行解;如截断小数变为x1=4,x2=0,这当然满足所有约束条件,但不是最优解,因为对x1=4,x2=0有z80,而对x1=4,x2=1(也是可行解)有z
5、90。因此要专门研究整数规划的解法。,45,分枝定界法是20世纪60年代由Land-Doig和Dakin等人提出的。这种方法既可用于纯整数规划问题,也可用于混合整数规划问题,而且便于用计算机求解,所以很快成为解整数规划的最主要的方法。,2. 分枝定界法,设有最大化的整数规划问题R,与它相应的线性规划问题为R0,分枝定界法的做法是:,46,47,问题R0为:Max z=40x1+90x2 9x1+7x256 7x1+20x270 x1,x20,R0: z0=356 x1=4.81 x2=1.82,问题R1为:Max z=40x1+90x2 9x1+7x256 7x1+20x2 70 x1 4 x
6、1,x20,问题R2为:Max z=40x1+90x2 9x1+7x256 7x1+20x2 70 x1 5 x1,x2 0,x1 4,x15,R1:z1=349 x1=4.00 x2=2.10,R1:z1=349 x1=4.00 x2=2.10,问题R11为:Max z=40x1+90x2 9x1+7x256 7x1+20x2 70 x1 4 x2 2 x1,x20,问题R12为:Max z=40x1+90x2 9x1+7x256 7x1+20x2 70 x1 4 x2 3 x1,x2 0,x2 2,x23,48,R1:z1=349 x1=4.00 x2=2.10,R12:z12=327x1
7、=1.42x2=3.00,x23,R11:z11=340x1=4.00x2=2.00,R21:z21=308x1=5.44x2=1.00,R22:无可行解,x1 1,x12,x2 2,R2:z2=341 x1=5.00 x2=1.57,R0: z0=356 x1=4.81 x2=1.82,x1 4,x15,49,0-1型整数规划是整数规划的一种特殊形式,它的变量xj仅取值0或1。这种只能取0或1的变量称为0-1变量或二进制变量。,例: 某公司拟在市东、西、南三区建立门市部。拟议中有7个位置Ai(i=1,2, ,7)可供选择。规定:(1)在东区A1、A2、A3三个点中至多选两个;(2)在西区A4
8、、A5两个点中至少选一个;(3)在南区A6、A7两个点中至少选一个。 如选用Ai点,设备投资估计为bi元,每年可获利润估计为ci元,但投资总额不超过B元。问应选择哪几个点可使年利润为最大?,3. 0-1型整数规划,50,Max z= c1x1+c2x2+c7x7,b1x1+b2x2+b7x7B,x1+x2+x32,x4+x51,x6+x71,xi=0或1, i=1,2,7,于是建立下列模型:,51,例 求解0-1型整数规划问题 Max z=8x1+2x2-4x3-7x4-5x5 3x1+3x2+x3+2x4+3x54 5x1+3x2-2x3-x4+ x54 xj=0或1,j=1,2,5,变成标
9、准型,要求如下:目标函数求极大化。 对于目标函数为Min z的极小化问题,令z=-z,使其变为目标函数为Max z的极大化问题。目标函数中所有变量的系数都为正数。如果目标函数中变量xj的系数为负数,令xj=1-xj,把模型中的xj用xj代换。变量的排列顺序按变量在目标函数中的系数值从小到大排列。,求解0-1型整数规划,可使用分枝定界法。下面用实例说明:,52,过滤隐枚举法举例分析例3:,找出一个可行解,求出其目标函数值,2.由于该问题是求最大值,故目标值小于3的解可以不考虑,增加约束条件,,此条件称为过滤条件。,53,54,例 有一份说明书,需译成英、日、德、俄四种文字。现有甲、乙、丙、丁四个
10、人,他们将说明书译成不同文字所需的时间如下表。问应指派哪个人完成哪项工作,使所需的总时间最少?,4. 指派问题,55,指派问题的求解,最简便易行的方法是匈牙利法。,可见指派问题是0-1型整数规划的特例。不难发现,指派问题也是运输问题的特例,其产地和销地数都为n,各产地的产量和各销地的销量都为1。,56,匈牙利法基于这样一个明显的事实:如果系数矩阵的所有元素满足cij0,而其中有n个位于不同行不同列的一组0元素,则只要令对应于这些0元素位置的xij1,其余的xij0,就得到最优解。,匈牙利法求解指派问题的步骤如下:,57,第一步:变换系数矩阵,使每行每列都出现0元素。(1)系数矩阵的各行分别减去
11、各行中的最小元素;(2)所得系数矩阵的各列再分别减去各列中的最小元素。 第二步:试求最优解。 (1)给只有一个0元素(不含划去的0)的行中的“0”画,划去与同列的其它“0”; (2)给只有一个0元素(不含划去的0)的列中的“0”画,划去与同行的其它“0”; (3)重复(1)、(2),直到无新的画出。若系数矩阵中已无未画也未划去的“0”,则已得到最多的,转(5);否则,便出现了0元素的闭回路,转(4)。 (4)从0元素的闭回路上任选一个“0”画,划去其同行同列的其它“0”,转(1)。 (5)显然,按上述步骤得到的是位于不同行不同列的。若已达n个,则指派问题的最优解已得到,结束计算;否则,转第三步
12、。,58,第三步:用最少的直线覆盖所有0元素。 (1)给无的行打“”; (2)给打行中含有0元素的列打“”; (3)给打列中含有元素的行打“”; (4)重复(2)、(3),直到无新的“”打出。 (5)给没有打的行画横线,给打的列画纵线。 第四步:变换系数矩阵,增加0元素。在未被画线覆盖的其它元素中找出最小元素,各打“”行减去最小元素,各打“”列加上最小元素,转第二步。,59,例 求下列指派问题的最小解。,解: 12 7 9 7 9 8 9 6 6 6 7 17 12 14 9 15 14 6 6 10 4 10 7 10 9,5 0 2 0 22 3 0 0 00 10 5 7 29 8 0
13、0 40 6 3 6 5,7 0 2 0 2 4 3 0 0 0 0 8 3 5 011 8 0 0 4 0 4 1 4 3,于是此问题的最优解为:甲B,乙C,丙E, 丁D, 戊A,所需的总费用为:Min z=7+6+9+6+4=32,60,第三节 非线性规划模型,一、非线性规划问题线性规划和整数规划它们的目标函数和约束条件都是自变量的线性函数,在实际中还有大量的问题,其目标函数或约束条件很难用线性函数来表示。如果目标函数或约束条件中含有非线性函数,则称这种规划问题为非线性规划问题。先看两个实例。,问题1 容器设计问题问题提出 某公司生产贮藏用容器,订货合同要求该公司制造一种敞口的长方体容器,
14、容积为12立方米,该容器的底为正方形,容器总重量不超过68公斤。已知用作容器四壁的材料为每平方米10元,重3公斤;用作容器底的材料每平方米20元,重2公斤。试问制造该容器所需的最小费用是多少?,61,模型建立 设该容器的底边长和高分别为,则问题的数学模型为,62,63,64,三、非线性规划问题解法概述1、非线性规划问题的图解法当非线性规划问题只有两个自变量时,也可像线性规划那样用图解法求解。考虑非线性规划,st,65,66,67,68,69,70,71,72,73,74,5、计算结果,75,第四节 动态规划(Dynamic Programming),动态规划是1951年由美国数学家贝尔曼(Ri
15、chard Bellman)提出,它是解决一类多阶段决策问题的优化方法,也是考察问题的一种途径,而不是一种算法(如LP单纯形法)。因此它不象LP那样有一个标准的数学表达式和明确定义的一组规则,而必须对具体问题进行具体分析处理。 动态规划方法是现代企业管理中的一种重要决策方法。如果一个问题可将其过程划分为若干个相互联系的阶段问题,且它的每一阶段都需进行决策,则这类问题均可用动态规划方法进行求解。 根据多阶段决策过程的时序和决策过程的演变,动态规划方法有以下四种类型:离散确定型、离散随机型、连续确定型和连续随机型。,76,一 动态规划的基本概念和最优化原理,1、引例(最短路问题),假如上图是一个线
16、路网络,两点之间连线上的数字表示两点间的距离(或费用),我们的问题是要将货物从A地运往E地,中间通过B、C、D三个区域,在区域内有多条路径可走,现求一条由A到E的线路,使总距离最短(或总费用最小)。,77,将该问题划分为4个阶段的决策问题,即第一阶段为从A到Bj(j=1,2,3),有三种决策方案可供选择;第二阶段为从Bj到Cj(j=1,2,3),也有三种方案可供选择;第三阶段为从Cj到Dj(j=1,2),有两种方案可供选择;第四阶段为从Dj到E,只有一种方案选择。如果用完全枚举法,则可供选择的路线有3321=18(条),将其一一比较才可找出最短路线:AB1C2D3E 其长度为12。 显然,这种
17、方法是不经济的,特别是当阶段数很多,各阶段可供的选择也很多时,这种解法甚至在计算机上完成也是不现实的。 由于我们考虑的是从全局上解决求A到E的最短路问题,而不是就某一阶段解决最短路线,因此可考虑从最后一阶段开始计算,由后向前逐步推至A点:,78,第四阶段,由D1到E只有一条路线,其长度f4(D1)=3,同理f4(D2)=4。 第三阶段,由Cj到Di分别均有两种选择,即,,决策点为D1,决策点为D1,,决策点为D2,79,第二阶段,由Bj到Cj分别均有三种选择,即:,决策点为C2,决策点为C1或C2,决策点为C2,80,第一阶段,由A到B,有三种选择,即:,决策点为B3,f1(A)=15说明从A
18、到E的最短距离为12,最短路线的确定可按计算顺序反推而得。即AB3C2D2E 上述最短路线问题的计算过程,也可借助于图形直观的表示出来:,81,图中各点上方框的数,表示该点到E的最短距离。图中红箭线表示从A到E的最短路线。,从引例的求解过程可以得到以下启示:,对一个问题是否用上述方法求解,其关键在于能否将问题转化为相互联系的决策过程相同的多个阶段决策问题。,82,所谓多阶段决策问题是:把一个问题看作是一个前后关联具有链状结构的多阶段过程,也称为序贯决策过程。如下图所示:,在处理各阶段决策的选取上,不仅只依赖于当前面临的状态,而且还要注意对以后的发展。即是从全局考虑解决局部(阶段)的问题。 各阶
19、段选取的决策,一般与“时序”有关,决策依赖于当前的状态,又随即引起状态的转移,整个决策序列就是在变化的状态中产生出来,故有“动态”含义。因此,把这种方法称为动态规划方法。 决策过程是与阶段发展过程逆向而行。,83,2、多阶段决策问题的典型例子:,企业在生产过程中,由于需求是随着时间变化的因素,因此企业为了获得全年最佳经济效益,就要在整个生产过程中逐月或逐季的根据库存和需求决定生产计划。某种机器,可以在高、低两种负荷下生产。高负荷下生产的产量多,但每生产一个阶段后机器的完好率低;低负荷下生产时的情况则相反。现在需要安排该种机器在多个阶段内的生产,问应该如何决定各阶段中机器的使用,使整个计划期内的
20、总产量最大。某台设备,例如汽车,刚买来时故障少,耗油低,出车时间长,处理价值和经济效益高。随着使用时间的增加则变为故障多,耗油高,维修费用增加,经济效益差。使用时间愈长,处理价值也愈低。另外,每次更新都要付出更新费用。因此,应当如何决定设备的使用年限,使总的效益最佳。,84,3、动态规划方法的特点,优点:许多问题用动态规划研究求解比线性规划、非线性规划更有效,特别是离散性问题,解析数学无用武之地,而动态规划成为得力工具; 某些情况下,用动态规划处理不仅能作定性描述分析,且可利用计算机给出求其数值解的方法。 缺点:没有统一的处理方法,求解时要根据问题的性质,结合多种数学技巧。因此,实践经验及创造
21、性思维将起重要的引导作用。 “维数障碍”:当变量个数太多时,由于计算机内存和速度的限制导致问题无法解决。有些问题由于涉及的函数没有理想的性质使问题只能用动态规划描述,而不能用动态规划方法求解。,85,二 动态规划的基本概念,(一)、动态规划的基本要素 1、阶段。阶段的划分,一般根据时序和空间的自然特征来划分,但要便于把问题的过程能转化为阶段决策的过程。描述阶段的变量称为阶段变量,常用自然数k表示。如引例可划分为4个阶段求解,k=1,2,3,4。 2、状态。状态就是阶段的起始位置。它既是该阶段某支路的起点,又是前一阶段某支路的终点。(1)状态变量和状态集合。描述过程状态的变量称为状态变量。它可用
22、一个数、一组数或一向量(多维情形)来描述,常用Sk表示第k阶段的状态变量。通常一个阶段有若干个状态。第k阶段的状态就是该阶段所有始点的集合。如引例中,86,(2)状态应具有无后效性(即马尔可夫性)。即如果某阶段状态给考虑,则在这阶段以后过程的发展不受这阶段以前各阶段状态的影响。,3、决策与决策变量。在某阶段对可供选择状态的决定(或选择),称为决策。描述的变量称为决策变量。常用dk(Sk)表示第k阶段处于状态Sk时的决策变量,它是状态变量的函数。决策变量允许取值的范围,称为允许决策集合,常用Dk(Sk)表示。显然dk(Sk)Dk(Sk)。如在引例的第二阶段中,若从B1出发,D2(B1)=B1 C
23、1, B1 C2, B1 C3如果决定选取B1 C2,则d2(B1)= B1 C2。,87,称可供选择策略的范围,为允许策略集,用P表示。动态规划方法就是要从允许策略集P中找出最优策略P1n*。,4、策略与子策略。策略是一个决策序列的集合。当k=1时,P1n(S1)=d1(s1),d2(s2),dn(sn)就称为全过程的一个策略,简称策略,简记为P1n(S1). 称Pk,n(Sk)= dk(sk),dk+1(sk+1),dn(sn)为由第k阶段开始到最后阶段止的一个子策略,简称后部子策略。简记为Pk,n(Sk),5、状态转移方程。它是确定过程由某一阶段的一个状态到下一阶段另一状态的演变过程,用
24、Sk+1=Tk(Sk,dk)表示。该方程描述了由第k阶段到第k+1阶段的状态转移规律。因此又称其为状态转移函数。,88,6、阶段指标、指标函数和最优指标函数 (1)衡量某阶段决策效益优劣的数量指标,称为阶段指标,用vk(Sk,dk)表示第k阶段的阶段指标。在不同的问题中,其含义不同。它可以是距离、利润、成本等。在引例中,用dk=vk(Sk,dk)表示在第k阶段由点Sk到点Sk+1=dk(Sk)距离。如d2(B3,C1)=6。,89,(2)用于衡量所选定策略优劣的数量指标,称为指标函数。它是定义在全过程和所有后部子过程上确定的数量函数。记为Vk,n(Sk,Pk,n).Vk,n(Sk,Pk,n)=
25、Vk,n(Sk,dk,Sk+1,Sn+1) k=1,2,n。构成动态规划模型的指标函数,应具有可分离性,并满足递推关系。常见的指标函数的形式有:,90,(3)最优指标函数fk(Sk),表示从第k阶段的状态Sk开始采用最优子策略P*k,n,到第n阶段终止时所得到的指标函数值。即fk(Sk)=Opt Vk,n(Sk,dk,Sn+1) 其中Opt是最优化(Optimum)的缩写,可根据题意取max或min。 在引例中,指标函数Vk,n表示在第k阶段由点Sk至终点E的距离。fk(sk)表示第k阶段点Sk到终点E的最短距离。f2(B1)=11表示从第2阶段中的点B1到点E的最短距离。,91,7、基本方程
26、(递推关系式) 从引例求A到E的最短路的计算过程中可以看出,在求解的各个阶段,我们利用了k阶段与k+1阶段之间的递推关系,一般地,若 则有,92,若,(二)、动态规划的基本思想与最优化原理,93,1、基本思想:动态规划方法的关键在于正确地写出基本方程,因此首先必须将问题的过程划分为多个相互联系的多阶段决策过程,恰当地选取状态变量和决策变量及定义最优指标函数,从而把问题化成一族同类型的子问题。然后从边界条件开始,逆过程行进方向,逐段递推寻优。在每个子问题求解时,均利用它前面已求出的子问题的最优化结果依次进行,最后一个子问题所得的最优解,就是整个问题的最优解。 在多阶段决策过程中,动态规划方法是既
27、把当前的一段和未来的各段分开,又把当前效益和未来效益结合起来考虑的一种最优化方法。因此,每阶段决策的选取是从全局来考虑,与该段的最优选择一般是不同的。 动态规划方法的基本思想体现了多阶段性、无后效性、递归性、总体优化性。,94,2、最优化原理 动态规划方法基于RBellman等人提出的最优化原理:“作为整个过程的最优策略具有这样的性质,即无论过去的状态和决策如何,对于先前的决策所形成的状态而言,余下的诸决策必须构成最优策略。”简言之,“一个最优策略的子策略总是最优的”。 但是,最优化原理仅是策略最优性的必要条件,而基本方程是策略最优性的充要条件。由此可见,基本方程是动态规划理论与方法的基础。,
28、三 动态规划模型的建立与求解,(一)、构成动态规划模型的条件,95,建立动态规划模型,就是分析问题并建立问题的动态规划基本方程。为此,必须满足以下条件:,1、将问题的过程划分成恰当的阶段;2、正确选择状态变量Sk,使它既能描述过程的演变,又要满足无后效性;3、确定决策变量dk及每阶段的允许决策集合Dk(Sk);4、正确写出状态转移方程;5、正确写出指标函数Vk,n的关系式,它应具有以下三个性质;(1)是定义全过程和所有后部子过程上的数量函数;(2)具有可分离性,并满足递推关系,即Vk,n(Sk,dk,Sn+1)=f (Sk,dk,Vk+1,n)(3)函数f(Sk,dk,Vk+1,n)对于Vk+
29、1,n要求严格单调。以上五点是正确写出动态规划基本方程的要素。,96,(二)、求解动态规划模型的方法,1、在已知初始状态S1下,采用逆序解法:(反向递归),按上图示意的求解方法称为逆序法。例如引例的求解,就是把A看作始端,E为终端,规定从A到E为过程的行进方向,而寻优则是从E到A逆过程进行,所以是采用了逆序法。,97,2、在已知终止状态Sn下,采用顺序解法(正向递归),如果我们把引例中E看作始端,A为终端,规定从E到A过程为行进方向,而寻优则是从A到E过程进行求解的方法称为顺序法。其示意图如下:,逆序法与顺序法的不同仅在对始端终端看法的颠倒或在规定的行进方向不同。但在寻优时却都是逆行进方向,从
30、最后一阶段开始,逐段逆推向前计算,找出最优结果。,98,3、两种解法在建模时的区别如下表所示,99,应用动态规划解决问题时必须首先建立动态规划模型,再用逆序或顺序算法求解。写一个问题的动态规划模型一般包含以下6个步骤: (1)阶段划分 k=1,2,n (2)确定状态变量sk (3)确定决策变量dk (4)确定状态转移方程sk+1=f(sk,dk)或sk-1=f(sk,dk) (5)确定阶段指标V(sk,dk) (6)确定基本递推方程,或,100,案例1 某商店在未来四个月里,利用一个仓库经销某种商品。该仓库的最大容量为1000件,每月中旬订购商品,并于下月初取到订货。据估计,今后四个月这种商品
31、的购价和售价如下表所示。假定商店在1月初开始经销时仓库已存有该种商品500件,每月市场需求不限,问应如何计划每个月的订购与销售量,使这四个月的总利润最大(不考虑仓库的存储费用)?,解:首先建立动态规划模型。(1)问题划分为四个阶段K=1,2,3,4;(2)状态变量sk表示第k阶段初的库存量,且s1=500,101,(3)决策变量xk表示第k月的订货量,yk表示第k月的销售量;(4)状态转移方程sk+1=sk+xk-yk,(5)指标函数表示第k月的利润V(sk,xk,yk)=qkyk-pkxk(6)基本方程为,102,案例2 某工厂有100台机器,拟分四期使用,在每一期都有两种生产任务。据经验,
32、若把x1台机器投入第一种生产任务,则在本期结束时将有1/3 x1台机器损坏报废,剩下的机器全部投入第二种生产任务,则有1/10的机器在期未损坏报废。如果干第一种生产任务时每台机器可获得利润10,干第二种生产任务时每台机器可获利润7,问应怎样分配使用机器以使四期的总利润最大(期未剩下的完好机器数量不限)?,解:1、首先建立动态规划模型。(1)问题划分为四个阶段K=1,2,3,4;(2)状态变量sk表示第k阶段初可用于分配的机器数,且s1=100(3)决策变量xk表示第k阶段分配于干第一种任务的机器数,则干第二种任务的机器数为sk- xk,103,(4)状态转移方程sk+1= 2/3xk+9/10
33、( sk-xk)= 9/10sk-7/30xk,(5)阶段指标表示第k期的利润V(sk,xk)=10xk+7( sk-xk)= 3xk+7sk(6)基本方程为:,2、逆序算法详细求解过程见习题集P104,P106例题3 某厂在未来3个月连续生产某种产品。每月初开始生产,月产量为x,生产成本为x2,库存费为每月每单位1元。假如3个月的需求量预测为:b1=100,b2=110,b3=120,且初始存货s0=0,第三个月的期未存货s3=0,问应如何安排生产使总成本最小 ?,104,案例3(生产存贮问题)某工厂与购货单位签订的供货合同如下表。该厂每月最大产量为4百件,仓库的存货能力为3百件。已知每一百
34、件货物的生产费为一万元。在生产的月份,每批产品的生产准备费为4千元,仓库保管费为每一百件货物每月一千元。假定1月初开始时及6月底交货后仓库中都无存货。问该厂应该如何安排每月的生产与库存,才能既满足交货合同的要求,又使总费用最小?,解:1、建立动态规划模型(1)阶段划分:k=1,2,3,4,5,6(2)状态变量sk表示第k月初的库存量,s1=0(3)决策变量dk表示第k月的计划生产量 表示第月的合同交货量,105,(4)状态转移方程:,(5)第k月的总费用包括生产费和库存费,(6)基本递推方程,2、用逆序算法求解当k=6时,s6+d6-1=s7=0, 所以 s6+d6=1 f6(s6)=minv
35、6(s6,d6) 当s6=0,d6=1, f6(s6)=14 当s6=1,d6=0, f6(s6)=1,106,当k=5时,s5+d5-2=s6, 所以,请对照课本P108表4.6结果。,107,当k=4时,s4+d4-3=s5, 所以,108,求解结果对照课本P108表4.7结果。余下求解结果参看课本P108,所求最优决策结果如下表:,109,案例4 (背包问题)某工厂生产三种产品,各种产品重量与利润的关系下表所示。现将此三种产品运往市场出售,运输能力总重量不超过6吨,问如何安排使运输总利润最大?,解:其实本例是一个整数规划问题,其整数规划模型如下,但是由于整数规划的求解需用分枝定界法求解,
36、计算量非常大,因而在此我们选用动态规划方法来解。,110,1、建立动态规划模型(在此用的是逆序算法求解,与课本不同)(1)阶段划分:k=1,2,3,把装载一种产品看成一个阶段(2)状态变量sk表示第k阶段初可用于装载产品的总容量量,s1=6(3)决策变量dk表示第k阶段装载第k种货物的件数。,(4)状态转移方程: 其中ak表示第k种货物的单件重量,(6)基本递推方程,(5)指标函数:vk(sk,dk)表示装载第k种货物dk件所得的利润,即v1(s1,d1)=80d1,v2(s2,d2)=180d2,v3(s3,d3)=130d3,111,2、用逆序法求解。,其结果如下表,112,其计算结果如下
37、表,113,其计算结果如下表,按计算次序反推,得到最优解有两个:(1)x1=0,x2=0,x3=2;(2) x1=1,x2=1,x3=0;,114,案例5(一维资源分配问题)某公司拟将3千万元资金用于改造扩建所属的3个工厂,每个工厂的利润增长额与所分配到的投资额有关。各工厂在获得不同的投资额时所能增加的利润如下表。问应如何分配这些资金,使公司总的利润增长额最大?,解:这是一个静态问题,通过将对三个工厂的投资看成三个阶段化为一个多阶段的动态问题。,1、建立动态规划模型(1)阶段划分:k=1,2,3,把对每个工厂的投资看成一个阶段(2)状态变量sk表示第k阶段初可用于投资的投资总额,s1=3,11
38、5,(3)决策变量dk表示第k阶段对第k个工厂的投资额。,(4)状态转移方程:,(5)阶段指标vk(sk,dk)表示对k第个工厂投资dk后所增加的利润,其值为表中数据。,(6)基本递推方程,2、用逆序算法求解。,116,其计算结果见下表:,117,其计算结果见下表:,118,其计算结果见下表:,所求最优解为d1=3, d2=0 ,d3=0 ,公司总的最大利润增长额为期10千万元。,119,案例6、设备更新问题,在已知一台设备的效益函数r(i),维修费用函数u(i)及更新费用函数C(i)条件下,在n年内,每年年初作出决策,是继续使用旧设备还是更换一台新设备,使n年总效益最大的这类问题称为设备更新
39、问题。 设rk(i)表示在第k年设备已使用i年(或称役令为i年的设备),再使用1年产生的效益: uk(i)表示在第k年设备役令为i年,再使用1年的维修费用; Ck(i)表示在第k年卖掉一台役令为i的设备,买进一台新设备的更新净费用(即新设备的购买费-旧设备折旧费)。 P112例题:设某企业在今后4年内需用一辆卡车,现有一辆已使用了2年的旧车,根据统计资料分析,预计卡车的年收入、年维修费(包括油料费)、一次性更新重置费及4年后的残值如下表:,120,(1)阶段划分:卡车使用的每一年作为一个阶段,k=1,2,3,4(2)状态变量sk:表示设备的役龄。即在第k年初,设备已使用的年限数。s1=2, s
40、2=1,3, s3=1,2,4, s4=1,2,3,5, s5=1,2,3,4,6(3)决策变量dk:表示在第k年初对役龄为sk的设备的决策,是更新,还是继续使用,即,试确定4年中的最优更新计划,以使总利润最大?,1、建立动态规划模型,121,(6)指标函数:指标函数fk(sk)表示第k年初,使用一台役令为sk年的卡车,到第4年末的最大收益。,(5)阶段指标:,(4)状态转移方程:,122,2、用逆序算法求解结果如下表:,123,由此可得最优更新方案为:d1(2)=k,d2(3)=R,d3(1)=k,d4(2)=k其含义是第一年役龄为2年的卡车不更新,第二年役龄为3年的卡车更新,第三年役龄为1年的卡车不更新,第四年役龄为2年的卡车不更新。,