第4章整数规划.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第4章整数规划.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 整数 规划
- 资源描述:
-
1、第五章第五章 整数规划整数规划(Integer Programming)整数规划的基本问题及其数学模型整数规划的基本问题及其数学模型割平面法割平面法分支定界法分支定界法0-10-1整数规划整数规划指派问题指派问题WinQSBWinQSB软件应用软件应用第一节第一节 整数规划的基本问题整数规划的基本问题及其数学模型及其数学模型一、问题的提出一、问题的提出 实际工作中的某些规划问题要求部分变量或全部变量取整实际工作中的某些规划问题要求部分变量或全部变量取整数值,我们称这样的问题为整数规划问题数值,我们称这样的问题为整数规划问题(Integer(Integer ProgrammingProgramm
2、ing,IP)IP)。不考虑整数要求,由其他约束条件和目标不考虑整数要求,由其他约束条件和目标函数构成的规划问题称为该整数规划问题的函数构成的规划问题称为该整数规划问题的松弛问题松弛问题(Slack(Slack Problem)Problem)。若松弛问题是一个线性规划问题,我们称该整数规。若松弛问题是一个线性规划问题,我们称该整数规划问题为整数线性规划划问题为整数线性规划(Integer Linear Programming(Integer Linear ProgrammingILP)ILP)。【例【例5-15-1】某工地需要长度不同、直径相同的成套钢筋,每】某工地需要长度不同、直径相同的成
3、套钢筋,每套钢筋由两根套钢筋由两根7 7米长和七根米长和七根2 2米长的钢筋组成。现有长米长的钢筋组成。现有长1515米的圆米的圆钢毛坯钢毛坯150150根,应如何下料,使废料最少?根,应如何下料,使废料最少?解:解:本题中没有说明本题中没有说明1515米长的圆钢毛坯有哪些下料方式,米长的圆钢毛坯有哪些下料方式,故需要首先找出下料方式。将故需要首先找出下料方式。将1515米长的圆钢毛坯切割为米长的圆钢毛坯切割为7 7米和米和2 2米两种长度的钢筋有三种方式,如表米两种长度的钢筋有三种方式,如表5-15-1所示。所示。表表5-15-1170304121021废料(米)2米长的钢筋(根)7米长的钢
4、筋(根)下料方式321xxx、设设 分别表示采用第分别表示采用第1 1、2 2、3 3种下料方式所切割的种下料方式所切割的圆钢毛坯数目。则废料可表示为下列形式:圆钢毛坯数目。则废料可表示为下列形式:31xxz 看约束条件。首先,工地需要的是成套钢筋,故看约束条件。首先,工地需要的是成套钢筋,故7 7米长和米长和2 2米米长的钢筋数之比应满足长的钢筋数之比应满足2 2:7 7,用线性方程来表示,即:,用线性方程来表示,即:774223221xxxx整理得:整理得:01414321xxx另外,圆钢毛坯总数为另外,圆钢毛坯总数为150150根,故根,故 还应满足下面这个还应满足下面这个条件,即:条件
5、,即:321xxx、150321xxx综合分析,问题的数学模型为:综合分析,问题的数学模型为:31minxxz且均取整数值0,15001414321321321xxxxxxxxx 【例【例5-25-2】现有资金总额为】现有资金总额为B B,可供投资项目有,可供投资项目有n n个,项目个,项目j j所需所需投资额和预期收益分别为投资额和预期收益分别为a aj j和和c cj j(j(j1,21,2,n)n)。同时,由于。同时,由于种种原因,有三个附加条件:第一,若选择项目种种原因,有三个附加条件:第一,若选择项目1 1,就必须同时,就必须同时选择项目选择项目2 2,反之则不一定;第二,项目,反之
6、则不一定;第二,项目3 3和项目和项目4 4中至少选择一中至少选择一个;第三,项目个;第三,项目5 5、项目、项目6 6和项目和项目7 7中恰好选择两个。应当怎样选中恰好选择两个。应当怎样选择投资项目,才能使总预期收益最大?择投资项目,才能使总预期收益最大?解:解:每一个投资项目都有被选择和不被选择两种可能,为此每一个投资项目都有被选择和不被选择两种可能,为此令:令:),(不投资对项目投资对项目njjjxj2101n,1,2,j10210max765432111或jjnjjnjjjxxxxxxxxBxaxcz则问题可表示为:则问题可表示为:【例【例5-35-3】工厂】工厂A A1 1和和A A
7、2 2生产某种物资,由于该种物资供不应生产某种物资,由于该种物资供不应求,故需要再建一家工厂,相应的建厂方案有求,故需要再建一家工厂,相应的建厂方案有A A3 3和和A A4 4两个。这两个。这种物资的需求地有种物资的需求地有B B1 1、B B2 2、B B3 3、B B4 4四个。各工厂年生产能力、各四个。各工厂年生产能力、各地年需求量、各厂至各需求地的单位物资运费地年需求量、各厂至各需求地的单位物资运费c cijij(j(j=1,2,3,4)=1,2,3,4)见表见表5-25-2。表表5-25-2150300400350需求量(千吨/年)2005254A42002167A36007538
8、A24004392A1生产能力(千吨/年)B4B3B2B1 cij BjAi 工厂工厂A A3 3或或A A4 4开工后,每年的生产费用估计分别为开工后,每年的生产费用估计分别为12001200万元或万元或15001500万元。现要决定应该建设工厂万元。现要决定应该建设工厂A A3 3还是还是A A4 4,才能使今后每年,才能使今后每年的总费用的总费用(即全部物资运费和新工厂生产费用之和即全部物资运费和新工厂生产费用之和)最少。最少。解:解:这是一个物资运输问题,其特点是事先不能确定应该建这是一个物资运输问题,其特点是事先不能确定应该建A A3 3和和A A4 4中的哪一个,因而不知道新厂投产
9、后的实际生产费用。中的哪一个,因而不知道新厂投产后的实际生产费用。为此,引入为此,引入0-10-1变量:变量:4301AAy若建工厂若建工厂 设设x xijij为由为由A Ai i运往运往B Bj j的物资数量的物资数量(千吨千吨),(i i,j j1,2,3,4)1,2,3,4)。则问题的数学模型为:则问题的数学模型为:115001200min4141yyxczijijij35041312111xxxx40042322212xxxx30043332313xxxx15044342414xxxx40014131211xxxx60024232221xxxxyxxxx20034333231yxxxx
10、120044434241)4,3,2,1,(0jixij10或y二、整数规划模型的一般形式及解的特点二、整数规划模型的一般形式及解的特点 整数线性规划数学模型的一般形式为:整数线性规划数学模型的一般形式为:njjjxcz1min)(max 或部分或全部取整数、njijnjijxxxnjxmibxa,),2,1(0),2,1()(211一般来说,整数线性规划可分为以下几种类型:一般来说,整数线性规划可分为以下几种类型:1.1.纯整数线性规划纯整数线性规划(Pure Integer Linear Programming)(Pure Integer Linear Programming):指全部决策
11、变量都必须取整数值的整数线性规划,也称为全整指全部决策变量都必须取整数值的整数线性规划,也称为全整数规划。数规划。2.2.混合整数线性规划混合整数线性规划(Mixed Integer Linear(Mixed Integer Linear Programming)Programming):指决策变量中一部分必须取整数值,而另一部:指决策变量中一部分必须取整数值,而另一部分可以不取整数值的整数线性规划。分可以不取整数值的整数线性规划。3.0-1 3.0-1整数线性规划整数线性规划(Zero-one Integer Linear(Zero-one Integer Linear Programmin
12、g)Programming):指决策变量只能取:指决策变量只能取0 0或或1 1两个值的整数线性规划。两个值的整数线性规划。(三)整数规划与线性规划的关系(三)整数规划与线性规划的关系 从数学模型上看整数规划似乎是线从数学模型上看整数规划似乎是线性规划的一种特殊形式,求解只需在线性规划的一种特殊形式,求解只需在线性规划的基础上,通过舍入取整,寻求性规划的基础上,通过舍入取整,寻求满足整数要求的解即可。但实际上两者满足整数要求的解即可。但实际上两者却有很大的不同,通过舍入得到的解却有很大的不同,通过舍入得到的解(整数)也不一定就是最优解,有时甚(整数)也不一定就是最优解,有时甚至不能保证所得倒的
13、解是整数可行解。至不能保证所得倒的解是整数可行解。举例说明。举例说明。例:设整数规划问题如下例:设整数规划问题如下 且为整数0,13651914max21212121xxxxxxxxZ 首先不考虑整数约束,得到线性规划问题(一般称首先不考虑整数约束,得到线性规划问题(一般称为松弛问题)。为松弛问题)。0,13651914max21212121xxxxxxxxZ用用 解法求出最优解解法求出最优解x13/2,x2=10/3且有且有Z=29/6x1x233(3/2,10/3)现求整数解(最优解):现求整数解(最优解):如用如用“舍入取整法舍入取整法”可可得到得到4个点即个点即(1,3)(2,3)(1
14、,4)(2,4)。显然,。显然,它们都不可能是整数规它们都不可能是整数规划的最优解。划的最优解。按整数规划约束条件,其可行解肯定在线性规划问题按整数规划约束条件,其可行解肯定在线性规划问题的可行域内且为整数点。故整数规划问题的可行解集的可行域内且为整数点。故整数规划问题的可行解集是一个有限集,如图所示。是一个有限集,如图所示。图图 因此,可将集合内的整数点一一找出,其最因此,可将集合内的整数点一一找出,其最大目标函数的值为最优解,此法为完全枚举法。大目标函数的值为最优解,此法为完全枚举法。如上例:其中如上例:其中(2,2)()(3,1)点为最点为最大值,大值,Z=4。.若若(LPLP)没有可行
15、解,则没有可行解,则(ILPILP)也没有可行解,停止计算。也没有可行解,停止计算。.若若(LPLP)有最优解,并符合有最优解,并符合(ILPILP)的整数条件,则的整数条件,则(LPLP)的最优解即为的最优解即为(IPIP)的最优解,停止计算。的最优解,停止计算。.若若(LPLP)有最优解,但不符合有最优解,但不符合(ILPILP)的整数条件,可用相的整数条件,可用相应方法求解。应方法求解。整数规划与其松驰问题解的关系:整数规划与其松驰问题解的关系:目前,常用的求解整数规划的方法有:目前,常用的求解整数规划的方法有:分支定界法和割平面法;分支定界法和割平面法;对于特别的对于特别的0 01 1
16、规划问题采用隐枚举法和匈规划问题采用隐枚举法和匈牙利法。牙利法。第二节第二节 割平面法割平面法 割平面法由高莫累割平面法由高莫累(Gomory(Gomory)于于19581958年提出。其年提出。其基本思想基本思想是是放宽变量的整数约束,首先求对应的松弛问题最优解,当某个放宽变量的整数约束,首先求对应的松弛问题最优解,当某个变量变量x xi i不满足整数约束时,寻找一个约束方程并添加到松弛问不满足整数约束时,寻找一个约束方程并添加到松弛问题中,其作用是割掉非整数部分,缩小原松弛问题的可行域,题中,其作用是割掉非整数部分,缩小原松弛问题的可行域,最后逼近整数问题的最优解。最后逼近整数问题的最优解
17、。一、割平面法的基本思想一、割平面法的基本思想 考虑松弛问题为标准形线性规划问题的纯整数规划问题考虑松弛问题为标准形线性规划问题的纯整数规划问题(ILP)(ILP):njjjxcz1max),2,1(0),2,1(1njxmibxajijnjij且均为整数 假设约束条件中假设约束条件中a aijij(i i1,2,1,2,m m;j j1,21,2,,n n)和和b bi i(i i1,2,1,2,m m)均为整数均为整数(若不为整数,可令等式两边同乘一个倍数若不为整数,可令等式两边同乘一个倍数化为整数化为整数)。下面先通过一个例子来说明割平面法的基本思想。下面先通过一个例子来说明割平面法的基
18、本思想。【例【例5-55-5】21maxxxz102321 xx522x均取整数0,21xx将该问题图示如下图将该问题图示如下图 :从图从图(a)(a)中可以看出,松弛问中可以看出,松弛问题的最优解为题的最优解为X X*=(5/3=(5/3,5/2)5/2)T T,它,它不是一个整数解。因此我们设法不是一个整数解。因此我们设法给原线性规划问题增加一个约束给原线性规划问题增加一个约束条件,从而把包括条件,从而把包括X X*在内的一部分在内的一部分不含整数点的可行域从原可行域不含整数点的可行域从原可行域中分割出去。再求增加了这个约中分割出去。再求增加了这个约束条件后的新的线性规划问题的束条件后的新
19、的线性规划问题的最优解。最优解。从图从图5-1(b)5-1(b)中可以看出,当我们增加了约束条件中可以看出,当我们增加了约束条件“6221 xx”后,得到新的最优解后,得到新的最优解X X*=(2=(2,2)2)T T,它便是整数规划问题最优,它便是整数规划问题最优解。因此,割平面法的关键就在于如何寻找这类新的约束条件。解。因此,割平面法的关键就在于如何寻找这类新的约束条件。二、二、GomoryGomory约束约束 假设用单纯形法求得的线性规划问题最优解不是整数解,其假设用单纯形法求得的线性规划问题最优解不是整数解,其中必然有某个或某几个基变量不为整数。记中必然有某个或某几个基变量不为整数。记
20、B B为松弛问题的最优为松弛问题的最优基,则问题的基最优解为:基,则问题的基最优解为:01NBXbbBX,不妨设第不妨设第r r个分量个分量 不为整数,根据最优单纯形表可得:不为整数,根据最优单纯形表可得:rbrjNjrjBrbxax(5.1)rjaib将将 和和 分成整数部分和非负真分数之和,即:分成整数部分和非负真分数之和,即:10iiifbN的整数部分,为10rjrjrjfaN的整数部分,为代入上式得:代入上式得:rjrjrjfNa(5.2)rrrfNb(5.3)NjjrjNjrrjrjBrxffNxNx(5.4)移项,得:移项,得:jNjrjrrjNjrjBrxffNxNx(5.5)因
21、为变量必须取整数,即上式左边必须是整数,从上式右边因为变量必须取整数,即上式左边必须是整数,从上式右边看,因为看,因为0f0fi i11,所以不能为正,即:,所以不能为正,即:割平面方程割平面方程0jNjrjrxff(5.6)即即:rjNjrjfxf(5.7)割平面的两个性质:割平面的两个性质:(1)(1)割平面割平面(5.7)(5.7)式割去了式割去了(ILP)(ILP)的松弛问题的松弛问题(LP)(LP)的基最优解。的基最优解。(2)(2)割平面割平面(5.7)(5.7)式未割去原问题式未割去原问题(ILP)(ILP)的任一的任一(整数整数)可行解。可行解。三、割平面法的算法步骤三、割平面
22、法的算法步骤 步骤步骤1 1:将约束条件系数及右端项化为整数,用单纯形法求将约束条件系数及右端项化为整数,用单纯形法求解整数规划问题解整数规划问题(ILP)(ILP)的松弛问题的松弛问题(LP)(LP)。设得到最优基。设得到最优基B B,相应,相应的基最优解为的基最优解为X X*。步骤步骤2 2:判别判别X X*的所有分量是否全为整数?如是,则的所有分量是否全为整数?如是,则X X*即为即为(ILP)(ILP)的最优解,算法终止;若否,则取的最优解,算法终止;若否,则取X X*中分数最大的分中分数最大的分量量 ,引入割平面,引入割平面(5.7)(5.7)。*Brx 步骤步骤3 3:将式将式(5
23、.7)(5.7)引入松弛变量后加入原最终单纯形表,用对引入松弛变量后加入原最终单纯形表,用对偶单纯形法继续求解。转步骤偶单纯形法继续求解。转步骤2 2。【例【例5-65-6】用割平面法求解例】用割平面法求解例5-55-5。首先,将整数约束去掉,将松弛问题化为标准形,并用单首先,将整数约束去掉,将松弛问题化为标准形,并用单纯形法求解,结果见下表纯形法求解,结果见下表:21maxxxz102321 xx522x均取整数0,21xx-1/6-1/300j-1/31/21/3001105/35/2x1x211x4x3x2x1bxBcB0011cj 因基变量因基变量x x1 15/35/3,x x2 2
24、5/25/2,均为非整数,故该最优解不是整数规划的,均为非整数,故该最优解不是整数规划的可行解。若以变量可行解。若以变量x x1 1所在的行为源行,得到相应的割平面为:所在的行为源行,得到相应的割平面为:32323143xx(5.8)对式对式(5.8)(5.8)左端加入松弛变量,得到:左端加入松弛变量,得到:323231543xxx(5.9)将式将式(5.9)(5.9)加入上表中,用对偶单纯形法继续求解如下表:加入上表中,用对偶单纯形法继续求解如下表:因基变量因基变量x x1 15/35/3,x x2 25/25/2,均为非整数,故该最优解不是,均为非整数,故该最优解不是整数规划的可行解。若以
25、分数部分最大的变量整数规划的可行解。若以分数部分最大的变量x x1 1所在的行为源所在的行为源行,得到相应的割平面为:行,得到相应的割平面为:-1/40-1/400j-1/23/4-3/20011/2-1/41/2010100221x1x2x41100-1/6-1/300j001-1/31/21/30-1/30101005/35/2-2/3x1x2x5110 x5x4x3x2x1bxBcB00011cj-2/3 由上表可知,增加约束条件后的线性规划问题最优解为由上表可知,增加约束条件后的线性规划问题最优解为X X*=(2=(2,2 2,0 0,1 1,0)0)T T,因此,原整数规划问题的最优
展开阅读全文