(本科)第6章 整数规划教学ppt课件.ppt

上传人:春哥&#****71; 文档编号:17119039 上传时间:2022-05-21 格式:PPT 页数:55 大小:671.50KB
返回 下载 相关 举报
(本科)第6章 整数规划教学ppt课件.ppt_第1页
第1页 / 共55页
(本科)第6章 整数规划教学ppt课件.ppt_第2页
第2页 / 共55页
点击查看更多>>
资源描述

《(本科)第6章 整数规划教学ppt课件.ppt》由会员分享,可在线阅读,更多相关《(本科)第6章 整数规划教学ppt课件.ppt(55页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、(本科)第6章 整数规划教学ppt课件21世纪高等院校公共课精品教材管理运筹学管理运筹学董银红 付丽丽 编著东 北 财 经 大 学 出 版 社Dongbei University of Finance&Economics PressCONTENTS第6章 整数规划 整数规划(integer programming简记IP),就是要求一部分或全部决策变量必须取整数值的规划问题。不考虑整数条件,由余下的目标函数和约束条件构成的规划问题称为该整数规划问题的松驰问题(slack problem)。若松驰问题是一个线性规划,则称该整数规划为整数线性规划(integer linear programmin

2、g),它实质上是在线性规划的基础上,给一些或全部决策变量附加取整约束得到的。本章主要研究整数线性规划。CONTENTS第6章 整数规划 整数规划分为以下几种类型:(1)所有变量都取整数的规划称为纯整数规划,要求所有变量都取整的规划问题称为纯整数规划问题(pure integer programming);(2)部分变量取整数的规划称为混合整数线性规划。如果仅仅是要求一部分变量取整,则称为混合整数规划问题(mixed integer programming)。(3)所有变量都取0、1两个值的规划称为0-1型整数线性规划,部分变量取0、1两个值的规划称为0-1混合规划。CONTENTS6.1 整数

3、线性规划的数学模型称所有的变量都限制为非负整数的数学规划为纯整数规划,称部分变量限制为非负整数规划为混合整数规划,所有变量都取0、1两个值的规划称为0-1型整数线性规划。本章仅讨论约束条件和目标函数均为线性的整数规划问题,即整数线性规划问题(以下简称整数规划)。CONTENTS6.1 整数线性规划的数学模型其数学模型的一般形式是:Max(或Min)z= 通过整数线性规划模型的一般形式可以看出,整数规划与线性规划既有密切的联系,又有本质的区别,而对于它们解的关系也可以通过下面的例子来说明。njjjxc1CONTENTS6.1 整数线性规划的数学模型 【例【例6-1】设线性规划问题为: max z

4、=2x1+3x2x1+x24 s.t. -4x1+5x210 x1 x20 相应的整数规划问题为: max z=2x1+3x2 x1+x24 s.t. -4x1+5x210 x1 x20 x1、x2为非负整数CONTENTS6.1 整数线性规划的数学模型由以上例子可以看到,线性规划的可行解的集合是一个凸集,且任意两个可行解的凸组合仍为可行解。但是整数线性规划的可行解集合是线性规划问题可行解集合的一个子集,任意两个可行解的凸组合不一定满足整数约束条件,因而不一定仍为可行解。但由于整数线性规划问题的可行解一定也是它的线性规划问题的可行解,所以整数线性规划最优解的目标函数值不会优于相应线性规划最优解

5、的目标函数值。CONTENTS6.1 整数线性规划的数学模型一般情况下,线性规划问题的最优解不会正好满足变量的整数约束条件,因而不是整数线性规划的可行解, 为了满足整数解的要求,最容易想到的办法就是把求得的非整数解进行四舍五入处理来得到整数解,但这往往是行不通的。通过例题的图示可以看到,舍入处理会出现两方面的问题:一是化整后的解根本不是最优点A,而是解周围的四个整数点;二是化整后,虽然整数点中有可能包含可行解,但在可行域内,这些可行解并非是最优解。因此,有必要另行研究整数线性规划的求解方法,下面主要介绍分枝定界法和割平面法。 CONTENTS6.2 分枝定界法与线性规划不同,整数规划问题中的的

6、变量只能取离散的整数值,也就是可行解的总数是有限的,从有限多的可行解中寻找最优解的最简单的方法就是把问题的解全部列出来,然后找出最优,也就是所谓的枚举法。但对于一般的整数规划问题,由于可行解总数随问题规模的增加(变量的增加)而成指数倍增长,在这种情况下枚举法就失去了意义。针对这种情况,人们在枚举法的基础上提出了分枝定界法(branch and bound method),分枝定界法是一种隐枚举法(implicit enumeration),它不是一种有效算法,只是对枚举法的一种改进。CONTENTS6.2 分枝定界法分枝定界法的解题思路由分枝和定界两部分组成。“分枝”就是在整数规划的松驰问题的

7、最优解不符合整数要求时,即 不能满足整数要求时,取不超过 的最大整数 ,并构造两个约束条件: 和 ,把这两个约束条件分别加到上述松驰问题的解空间上,从而产生两个互斥的线性规划子问题。所谓“定界”,是在分枝过程中,若某个子问题恰巧获得了整数规划问题的一个可行解,那么,就可以把它的目标函数值作为一个“界限”,并用这个界限来衡量其它分支。iixbibib iixb1iixb CONTENTS6.2 分枝定界法 【例例6-26-2】 某工厂生产 两种产品,产品分别由 两种部件组装而成,每件产品所用部件数量和部件的产量限额以及产品利润由表6-1给出。如何安排 的生产量,该厂的获利最大。12,A A12,

8、B B12,A ACONTENTS6.2 分枝定界法通过上面的例题,可以将分支定界法解整数规划问题的步骤总结如下:第一步:称整数规划问题为问题A,它的松驰问题为问题B,以Zb为问题A的目标函数的初始界(如已知问题A的一个可行解,则可取它的目标函数值为Zb)。对最大化问题A,Zb为下界;如果问题A为最小化问题,Zb为上界。对问题B进行求解。第二步:如果问题B无可行解,则问题A也无可行解;如果问题B的最优解符合问题A的整数要求,则它是问题A的最优解。出现上述两种情况时,求解过程到此结束。如果问题B的最优解存在,但不符合问题A的整数要求,则转到第三步。CONTENTS6.2 分枝定界法第三步:对问题

9、B任选一个不符合整数要求的变量进行分支。即选择 ,且取不超过 的最大整数 ,并构造两个约束条件: 和 ,把这两个约束条件分别加到上述松驰问题的解空间上,从而产生两个互斥的线性规划子问题,并对这两个子问题进行求解。第四步:考查所有子问题,如其中有某几个存在最优解,且其最优解满足问题A的整数要求,则以它们中最优的目标函数值和界Zb作比较。若比界Zb更优,则以其取代原来的界Zb,并称其相应的后继问题为问题C。否则,原来的界不变。iixbibib iixb 1iixb CONTENTS6.2 分枝定界法第五步:不属于的子问题中,若存在最优解、且其目标函数值比界Zb更优的子问题为待检查的子问题。如不存在

10、待检查的子问题,当问题存在时,问题的最优解就是问题的最优解;当问题不存在时,和界Zb对应的可行解就是问题的最优解。Zb即为问题的最优解的目标函数值,求解结束。如存在待检查的子问题,则选择其中目标函数值最优的一个子问题,改称其为问题。回到第三步重新计算。CONTENTS6.2 分枝定界法当最低一层子问题出现以下三种情况之一时,分枝定界算法终止:CONTENTS6.3 割平面法割平面法在1958年由高莫瑞(R.E.Gomory)首先提出,故又称为Gomory 割平面法,是求解整数规划的基本方法之一。割平面得基本思想是:首先放弃变量的整数要求,求得线性规划的最优解。如果最优解恰是一个整数解,则线性规

11、划的最优解就是相应的整数规划的最优解。如果线性规划的最优解不是整数解,则要求构造一个新的约束,对线性规划问题的可行域进行切割,切除已经得到的线性规划的最优解,但保留原可行域中所有的整数解,求解新的线性规划问题,如果最优解仍不是整数解,再增加附加的约束将其切除,但仍保持最初可行域中所有的整数解,如此一直进行,直至得到一个整数的最优解为止。CONTENTS6.3 割平面法设放弃变量整数要求得到的线性规划的最优单纯形表如下:其中x1,xr,xm为基变量,xm+1,xj,xn为非基变量。设其中基变量xr的值br不是整数,且br=Ir+Fr其中Ir是br的整数部分,Fr是小数部分,即Ir=0,1,2,0

12、Fr1CONTENTS6.3 割平面法设Irj是yrj的整数部分,Frj是小数部分,则yrj=Irj+Frj其中Irj=0,1,2,由于yrj可能是整数,因此:0Frj1这样,第r个约束成为 (6.1)rn1mjjrjrbxyxCONTENTS6.3 割平面法将yrj和br写成整数部分和小数部分:或(6.2)由于 ,以及因此对于(6.2)中的任何(整数或非整数的)可行解,有 (6.3) rrn1mjjrjrjrFIx)FI (xn1mjjrjrrn1mjjrjrxFFIxIx1Fr0 xFn1mjjrj1xFFIxIxn1mjjrjrrn1mjjrjrCONTENTS6.3 割平面法对于任何可

13、行的整数解,xr和xj都是整数,因此 是整数,即 =,-2,-1,0因此对于整数可行解,约束()可以写成更严格的不等式(6.4)将线性规划(非整数)的最优解(x1xrxm,xm+1xjxn)=(b1br,bm,000)代入(3.4)的左边,得到 rn1mjjrjrIxIxrn1mjjrjrIxIx0 xFFIxIxn1mjjrjrrn1mjjrjr0FxFFrn1mjjrjrCONTENTS6.3 割平面法线性规划(非整数)的最优解不满足(6.4)。因此,约束(6.4)具有以下性质:(1)线性规划可行域中的任何整数解都满足这个约束;(2)线性规划的(非整数)最优解不满足这个约束。这样,在原线性

14、规划的约束条件基础上增加约束(6.4),新的可行域将切除原线性规划非整数的最优解而保留所有整数可行解。CONTENTS6.3 割平面法 【例【例6-36-3】 用割平面法求解以下整数:max z=3x1+2x2 2x1+3x210s.t. x1+0.5x23.5 x1 x20 x1,x2为整数CONTENTS6.4 0-1型整数规划及其应用6.4.1 0-16.4.1 0-1型整数规划型整数规划0-1型整数规划是一般线性整数规划的特例,它的决策变量 只能取0或1两个值,称这种变量为0-1变量或二进制变量(logical variable)或逻辑变量(binary variable)。0-1变量

15、常被用来表示系统是否处于某个特定状态,或者决策时是否取某个特定方案。例如由于0-1变量可以表示为 , 取整;因此,0-1型整数规划与一般线性整数规划模型形式上是一致的。0-1型整数规划不仅广泛应用于科学技术问题,在经济管理问题中也有十分重要的应用。1 0 x当决策取A方案时当决策不取A方案时01jxjxCONTENTS6.4 0-1型整数规划及其应用【例例6-46-4】 厂址选择问题。在5个地点中选3处建生产同一产品的工厂,在这5个地点建厂所需投资,占用农田,建成以后的生产能力等数据如表6-2所示:现在有总投资800万元,占用农田指标60亩,应如何选择厂址,使建成后总生产能力最大。CONTEN

16、TS6.4 0-1型整数规划及其应用0-1型整数规划是一种特殊形式的线性整数规划,如果一个0-1型整数规划含有n个变量,则可以产生 个可能的变量组合,把所有的可能的情况逐一列举出来,然后检验哪种情况是最优的,这就是所谓的“完全枚举法”。这种方法对变量较少的0-1规划是适用的,但是对于变量很多时,用这种方法就几乎不可能了。下面主要介绍一种对0-1规划的求解存在更简便的方法,称为“隐枚举法”。如果一个0-1型整数规划含有n个变量,则可以产生 个可能的变量组合。2n2nCONTENTS6.4 0-1型整数规划及其应用在这 个可能的变量组合中,首先用是否满足约束条件来确定其是否为可行解。如果发现一个可

17、行解,则根据它的目标函数值可以产生一个界限,也就是“定界”,对于目标函数值比它差的变量组合就不必再去检验它的可行性。在以后的求解过程中,每当发现比原来更好的可行解,则以此替代原来的界限,这样就可以减少运算次数,使最优解能较快地被发现。 【例【例6-5】 用隐枚举法求解0-1规划问题:2n32153maxxxxz222321xxx44321xxx31x0或1CONTENTS6.4 0-1型整数规划及其应用注意当发生下列三种情形之一时,应该实施剪枝:(1)多个分枝的子问题都是可行解时,保留目标值最大的分枝并将该目标值作为最优目标值的“下界” ,将目标值较小的分枝剪去;(2)将分枝边界值低于最优目标

18、值“下界”的分枝剪去;(3)将无论后续决策变量取什么值都不可能存在可行解的分枝剪去;如某0-1规划的一个约束条件是 ,那么对 的分枝就可以实施剪枝了。CONTENTS6.4 0-1型整数规划及其应用注意当发生下列三种情形之一时,应该实施剪枝:(1)多个分枝的子问题都是可行解时,保留目标值最大的分枝并将该目标值作为最优目标值的“下界” ,将目标值较小的分枝剪去;(2)将分枝边界值低于最优目标值“下界”的分枝剪去;(3)将无论后续决策变量取什么值都不可能存在可行解的分枝剪去;如某0-1规划的一个约束条件是 ,那么对 的分枝就可以实施剪枝了。CONTENTS6.4 0-1型整数规划及其应用6.4.2

19、 6.4.2 指派问题指派问题在现实世界经常会遇到这样的问题:有 个人恰好可承担 项任务,一项任务由一个人完成,一个人只完成一项任务;由于个人的专长不同,完成各项任务的效率也就不同,于是产生了应指派哪个人去完成哪项任务,才能使完成 项任务总的效率最高(所需总时间最少)的问题。这类问题称为指派问题或分派问题(assignment problem)。CONTENTS6.4 0-1型整数规划及其应用1. 1. 指派问题的标准形式及数学模型指派问题的标准形式及数学模型指派问题的标准形式(以人和事为例)是:有n个人和n件事,已知第i个人作第j件事的费用为 ,要求确定人和事之间的一一对应的指派方案,是完成

20、这n件事的总费用最少。为了建立标准指派问题的数学模型,引入 个0-1变量: 若指派第i人作第j件事 若不指派第i人作第j事 i,j=1,2,n ), 2 , 1,(njicij2n10ijxCONTENTS6.4 0-1型整数规划及其应用这样,问题的数学模型可写成 (6.5) (6.6) s.t (6.7) (6.8) 其中,(6.5)表示每件事必有且只有一个人去做,(6.6)表示每个人必做且只做一件事。ninjijijxcz11minnjixnixnjxijnjijniij, 2 , 1,1 , 0, 2 , 11, 2 , 1111CONTENTS6.4 0-1型整数规划及其应用注:1 指

21、派问题是产量( )、销量( )相等,且 = =1,i,j=1,2,n的运输问题。2 有时也称 为第i个人完成第j件工作所需的资源数,称之为效率系数(或价值系数)。并称矩阵 C= = (6.9)为效率矩阵(或价值系数矩阵)。iajbiajbijcnnijc)(nnnnnnccccccccc212222111211CONTENTS6.4 0-1型整数规划及其应用并称决策变量 排成的nn矩阵X= = (6.10)为决策变量矩阵。(6.10)的特征是它有n个1,其它都是0。这n个1位于不同行、不同列。每一种情况为指派问题的一个可行解。共n!个解。其总的费用 z =CX 这里的表示两矩阵对应元素的积,然

22、后相加。ijxnnijx)(nnnnnnxxxxxxxxx212222111211CONTENTS6.4 0-1型整数规划及其应用【例例6-66-6】 已知效率矩阵 C= 则 X(1)= , X(2)= 都是指派问题的最优解。008476500032020501000001100000101000000101000010CONTENTS6.4 0-1型整数规划及其应用【例【例6-76-7】 某商业公司计划开办五家新商店。为了尽早建成营业,商业公司决定由5家建筑公司分别承建。已知建筑公司Ai(i=1,2,5)对新商店Bj(1,2,5)的建造费用的报价(万元)为 (i,j=1,2,5),见表63。

23、商业公司应当对5家建筑公司怎样分派建筑任务,才能使总的建筑费用最少?CONTENTS6.4 0-1型整数规划及其应用2. 匈牙利解法原理nnijc)(nnijcC)(CCONTENTS6.4 0-1型整数规划及其应用定义:定义:在效率矩阵C中,有一组在不同行不同列的零元素,称为独立零元素组,此时每个元素称为独立零元素。【例例6-86-8】 已知: C= 则 =0, =0, =0, =0是一个独立零元素组 , =0, =0, =0, =0分别称为独立零元素。 =0, =0, =0, =0也是一个独立零元素组,而 =0, =0, =0, =0就不是一个独立零元素组,因为 =0与 =0这两个零元素位

24、于同一列中。008476500032020512c24c31c43c12c24c31c43c14c23c31c44c12c23c31c44c14c44cCONTENTS6.4 0-1型整数规划及其应用 【例6-9】 已知矩阵 C1= ,C2= ,C3= 00847650003202055636040084275500003220205341404008653300003420207CONTENTS6.4 0-1型整数规划及其应用分别用最少直线去覆盖各自矩阵中的零元素:可见,C1最少需要4条线,C2最少需要4条线,C3最少需要5条线,方能划掉矩阵中所有的零。即它们独立零元素组中零元素最多分别为4

25、,4,5。CONTENTS6.4 0-1型整数规划及其应用【例例6-106-10】 给定效率矩阵 C= 求解该指派问题。9118713161491514410413152CONTENTS6.4 0-1型整数规划及其应用【例【例6-11】 某工厂有4名工人A1,A2,A3,A4,分别操作4台车床B1,B2,B3,B4。每小时单产量如表6-5所示,求产值最大的分配方案。CONTENTS6.4 0-1型整数规划及其应用【例例6-12】 现有4个人,5件工作。每人做每件工作所耗时间如表6-6所示:问指派那个人去完成哪项工作,可是总消耗最小?CONTENTS6.4 0-1型整数规划及其应用【例例6-13

26、】 对例6.7的指派问题,为了保证工程质量,经研究决定,舍弃建筑公司A4和A5,让技术力量较强的建筑公司A1、A2、A3来承建。根据实际情况,可以允许每家建筑公司承建一家或两家商店。求使总费用最少的指派方案。 CONTENTS6.4 0-1型整数规划及其应用【例例6-14】 分配甲、乙、丙、丁四个人去完成A、B、C、D、E五项任务,每人完成各项任务的时间如表6-7所示。由于任务重,人数少,考虑:a) 任务E必须完成,其它4项任务可选3项完成。但甲不能做A项工作。b) 其中有一人完成两项,其他人每人完成一项。试分别确定最优分配方案,使完成任务的总时间最少。CONTENTS6.5 整数线性规划问题

27、的计算机求解 6.5.1 6.5.1 利用利用ExcelExcel求解整数线性规划求解整数线性规划【例【例6-156-15】 公司的研发部最近开发出了三种新产品,但是,为了防止生产线的过度多元化,公司管理层增加了如下的约束: 约束1:在三种新产品中,最多只能选择两种进行生产。 这些产品都可以在两个工厂中生产,但是,为了管理方便,管理层加入第二个约束。 CONTENTS6.5 整数线性规划问题的计算机求解约束2:两个工厂中必须选出一个专门生产新产品。 两个工厂中各种产品的单位生产成本是相同的,但是,由于生产设备的不同,每单位产品所需要的生产时间是不同的。下表给出了这方面的相关数据, 包括生产出来

28、的产品每周内估计的可销售量。管理层制定的目标是通过选择产品、工厂以及确定各种产品的周产量,使得总利润最大化。CONTENTS6.5 整数线性规划问题的计算机求解可以得到该问题的整数规划模型如下:123123112233123123123123max57327,5,934230. .46240(1),0,0,1zxxxyyyxy xyxyxxxMystxxxMyx xxy yyyCONTENTS6.5 整数线性规划问题的计算机求解其电子表格模型见图6-5:CONTENTS6.5 整数线性规划问题的计算机求解其中,决策变量为浅黄色表示,给定的条件为黄色表示,目标函数用红色表示。具体可以用表达式表达

29、如下:工厂1实际使用E6:=SUMPRODUCT(C6:E6,C10:E10);工厂2实际使用E7: =SUMPRODUCT(C7:E7,C10:E10);工厂1修正可用工时H6:I6+20*D17;工厂2修正可用工时H7:=I7+20*(1-D17);可销售限制My: =C13*C15; =D13*D15; =E13*E15;总利润为H19: =SUMPRODUCT(C3:E3,C10:E10);CONTENTS6.5 整数线性规划问题的计算机求解6.5.2 6.5.2 利用利用LINDO/LINGOLINDO/LINGO求解整数线性规划求解整数线性规划LINDO主要用于求解线性规划,整数线

30、性规划和二次规划,LINGO除了具有LINDO的全部功能外,还可以用于求解非线性规划,也可以用于一些线性和非线性方程组的求解以及代数方程求根等。LINDO和LINGO软件的最大特色在于可以允许优化模型中的决策变量是整数(即整数规划),而且执行速度很快。【例【例6-16】 求解下面的整数线性规划问题:1212121212max32231429. .,0,zxxxxxxstx xx xNCONTENTS6.5 整数线性规划问题的计算机求解6.5.2 6.5.2 利用利用LINDO/LINGOLINDO/LINGO求解整数线性规划求解整数线性规划LINDO主要用于求解线性规划,整数线性规划和二次规划

31、,LINGO除了具有LINDO的全部功能外,还可以用于求解非线性规划,也可以用于一些线性和非线性方程组的求解以及代数方程求根等。LINDO和LINGO软件的最大特色在于可以允许优化模型中的决策变量是整数(即整数规划),而且执行速度很快。【例【例6-16】 求解下面的整数线性规划问题:1212121212max32231429. .,0,zxxxxxxstx xx xNCONTENTS6.5 整数线性规划问题的计算机求解CONTENTS6.5 整数线性规划问题的计算机求解【例例6-176-17】 某服装厂有5个生产车间,可以用6种不同的成品布料加工成不同的服装销售,对于第i个生产车间分别利用第j种布料进行加工生产后,可以获得利润为 元(i=1,2,5;j=1,2,6),第j种布料的价格为 ,具体的数据如表6-11所示。CONTENTS6.5 整数线性规划问题的计算机求解该厂现有资金40万元,为了充分利用这些有限的资金,根据不同车间的实际生产需求,工厂要求每个车间每种布料至少加工1000m,每个车间的总加工能力最多为10000m。那么该工厂每种布料该购多少米,如何分配给所属的5个车间,使得总利润最大?

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁