《运筹学》整数规划课件.ppt

上传人(卖家):晟晟文业 文档编号:4768935 上传时间:2023-01-08 格式:PPT 页数:63 大小:1.66MB
下载 相关 举报
《运筹学》整数规划课件.ppt_第1页
第1页 / 共63页
《运筹学》整数规划课件.ppt_第2页
第2页 / 共63页
《运筹学》整数规划课件.ppt_第3页
第3页 / 共63页
《运筹学》整数规划课件.ppt_第4页
第4页 / 共63页
《运筹学》整数规划课件.ppt_第5页
第5页 / 共63页
点击查看更多>>
资源描述

1、Chapter5 整数规划(Integer Programming)整数规划的特点及应用分支定界法分配问题与匈牙利法整数规划的特点及应用要求一部分或全部决策变量取整数值的规划问题称为整数规划。不考虑整数条件,由余下的目标函数和约束条件构成的规划问题称为该整数规划问题的松弛问题。若该松弛问题是一个线性规划,则称该整数规划为整数线性规划。整数线性规划数学模型的一般形式:且且部部分分或或全全部部为为整整数数或或 n)1.2(j 0)2.1()min(max11jnjijijnjjjxmibxaxcZZ整数规划的特点及应用 纯整数线性规划:指全部决策变量都必须取整数值的整数线性规划。混合整数线性规划:

2、决策变量中有一部分必须取整数值,另一部分可以不取整数值的整数线性规划。0-1型整数线性规划:决策变量只能取值0或1的整数线性规划。整数规划的特点及应用例5.1 工厂A1和A2生产某种物资。由于该种物资供不应求,故需要再建一家工厂。相应的建厂方案有A3和A4两个。这种物资的需求地有B1,B2,B3,B4四个。各工厂年生产能力、各地年需求量、各厂至各需求地的单位物资运费cij,见下表:B1B2B3B4年生产能力年生产能力A12934400A28357600A37612200A44525200年需求量年需求量350400300150工厂A3或A4开工后,每年的生产费用估计分别为1200万或1500万

3、元。现要决定应该建设工厂A3还是A4,才能使今后每年的总费用最少。整数规划的特点及应用解:这是一个物资运输问题,特点是事先不能确定应该建A3还是A4中哪一个,因而不知道新厂投产后的实际生产物资。为此,引入0-1变量:)2,1(01 iyi若不建工厂若不建工厂若建工厂若建工厂再设xij为由Ai运往Bj的物资数量,单位为千吨;z表示总费用,单位万元。则该规划问题的数学模型可以表示为:整数规划的特点及应用 )2,1(1,0)4,3,2,1,(0200200600400150300400350.15001200min2444342411343332312423222114131211443424144

4、33323134232221241312111414121iyjixyxxxxyxxxxxxxxxxxxxxxxxxxxxxxxxxxxtsyyxcziijijijij混合整数规划问题整数规划的特点及应用例5.2 现有资金总额为B。可供选择的投资项目有n个,项目j所需投资额和预期收益分别为aj和cj(j1,2,.,n),此外由于种种原因,有三个附加条件:若选择项目1,就必须同时选择项目2。反之不一定项目3和4中至少选择一个;项目5,6,7中恰好选择2个。应该怎样选择投资项目,才能使总预期收益最大。整数规划的特点及应用解:对每个投资项目都有被选择和不被选择两种可能,因此分别用0和1表示,令xj表

5、示第j个项目的决策选择,记为:),.,2,1(01njjjxj 不投资不投资对项目对项目投资投资对项目对项目投资问题可以表示为:)(或或者者nxxxxxxxxBxatsxczjnjjjnjjj,2,1j1021.max765431211整数规划的特点及应用例5.3 指派问题或分配问题。人事部门欲安排四人到四个不同岗位工作,每个岗位一个人。经考核四人在不同岗位的成绩(百分制)如表所示,如何安排他们的工作使总成绩最好。工作工作人员人员ABCD甲甲85927390乙乙95877895丙丙82837990丁丁86908088整数规划的特点及应用设 工工作作时时人人做做不不分分配配第第工工作作时时人人做

6、做分分配配第第jijixij01数学模型如下:4443424134333231242322211413121188809086907983829578879590739285maxxxxxxxxxxxxxxxxxZ 要求每人做一项工作,约束条件为:111144434241343332312423222114131211xxxxxxxxxxxxxxxx整数规划的特点及应用每项工作只能安排一人,约束条件为:111144342414433323134232221241312111xxxxxxxxxxxxxxxx变量约束:4,3,2,110 jixij、,或或整数规划的特点及应用 整数规划问题的可行解

7、集合是它松弛问题可行解集合的一个子集,任意两个可行解的凸组合不一定满足整数约束条件,因而不一定仍为可行解。整数规划问题的可行解一定是它的松弛问题的可行解(反之不一定),但其最优解的目标函数值不会优于后者最优解的目标函数值。整数规划的特点及应用例5.3 设整数规划问题如下 且且为为整整数数0,13651914max21212121xxxxxxxxZ首先不考虑整数约束,得到线性规划问题(一般称为松弛问题)。0,13651914max21212121xxxxxxxxZ整数规划的特点及应用用图解法求出最优解为:x13/2,x2=10/3,且有Z=29/6现求整数解(最优解):如用舍入取整法可得到4个点

8、即(1,3),(2,3),(1,4),(2,4)。显然,它们都不可能是整数规划的最优解。x1x233(3/2,10/3)按整数规划约束条件,其可行解肯定在线性规划问题的可行域内且为整数点。故整数规划问题的可行解集是一个有限集,如右图所示。其中(2,2),(3,1)点的目标函数值最大,即为Z=4。整数规划的特点及应用整数规划问题的求解方法:分支定界法和割平面法 匈牙利法(指派问题)分支定界法1)求整数规划的松弛问题最优解;若松弛问题的最优解满足整数要求,得到整数规划的最优解,否则转下一步;2)分支与定界:任意选一个非整数解的变量xi,在松弛问题中加上约束:xixi 和 xixi+1组成两个新的松

9、弛问题,称为分枝。新的松弛问题具有特征:当原问题是求最大值时,目标值是分枝问题的上界;当原问题是求最小值时,目标值是分枝问题的下界。检查所有分枝的解及目标函数值,若某分枝的解是整数并且目标函数值大于(max)等于其它分枝的目标值,则将其它分枝剪去不再计算,若还存在非整数解并且目标值大于(max)整数解的目标值,需要继续分枝,再检查,直到得到最优解。分支定界法例5.4 用分枝定界法求解整数规划问题 且且全全为为整整数数0,4 30 652 5min211212121xxxxxxxxxZ解:首先去掉整数约束,变成一般线性规划问题(原整数规划问题的松驰问题)0,4 30 652 5min211212

10、121xxxxxxxxxZLPIP分支定界法用图解法求松弛问题的最优解,如图所示。x1x23(18/11,40/11)21123x118/11,x2=40/11Z=218/11(19.8)即Z 也是IP最小值的下限。对于x118/111.64,取值x1 1,x1 2对于x2=40/11 3.64,取值x2 3,x2 4先将(LP)划分为(LP1)和(LP2),取x1 1,x1 2分支定界法分支:且且为为整整数数0,1 4 30 652 )1(5min2111212121xxxxxxxxIPxxZ 且且为为整整数数0,2 4 30 652 )2(5min2111212121xxxxxxxxIPx

11、xZ分别求出(LP1)和(LP2)的最优解。分支定界法先求LP1,如图所示。此时在B点取得最优解。x11,x2=3,Z(1)16找到整数解,问题已探明,此枝停止计算。x1x233(18/11,40/11)11BAC同理求LP2,如图所示。在C 点取得最优解。即:x12,x2=10/3,Z(2)56/318.7 Z(2)Z(1)16 原问题有比16更小的最优解,但 x2 不是整数,故继续分支。分支定界法在IP2中分别再加入条件:x23,x24 得下式两支:且且为为整整数数0,3 2 4 30 652 )21(5min21211212121xxxxxxxxxIPxxZ 且且为为整整数数0,4 2

12、4 30 652 )22(5min21211212121xxxxxxxxxIPxxZ分别求出LP21和LP22的最优解分支定界法x1x233(18/11,40/11)11BACD先求LP21,如图所示。此时D 在点取得最优解。即 x112/52.4,x2=3,Z(21)-87/5-17.4 Z(211)如对LP212继续分解,其最小值也不会低于15.5,问题探明,剪枝。分支定界法原整数规划问题的最优解为:x1=2,x2=3,Z*=17以上的求解过程可以用一个树形图表示如右:LP1x1=1,x2=3Z(1)16LPx1=18/11,x2=40/11Z(0)19.8LP2x1=2,x2=10/3Z

13、(2)18.5LP21x1=12/5,x2=3Z(21)17.4LP22无可行解LP211x1=2,x2=3Z(211)17LP212x1=3,x2=5/2Z(212)15.5x11x12x23x24x12x13分支定界法例5.5 用分枝定界法求解 且且均均取取整整数数,0,255.22108.02.134max21212121xxxxxxxxZ解:先求对应的松弛问题(记为LP0))(0,255.22108.02.134max021212121LPxxxxxxstxxZ 用图解法得到最优解X(3.57,7.14),Z0=35.7,如下图所示。分支定界法1010108.02.121 xx255.

14、2221 xx松弛问题LP0的最优解X=(3.57,7.14),Z0=35.7x1x2oABC分支定界法得到两个线性规划得到两个线性规划及及增加约束增加约束4311 xx10 x2oABC 0,3255.22108.02.1:134max211212121xxxxxxxLPxxZLP1LP234LP1:X=(3,7.6),Z1=34.8 0,4255.22108.02.1:234max211212121xxxxxxxLPxxZLP2:X=(4,6.5),Z2=35.5分支定界法10 x1x2oABCLP1LP2134LP21:X=(4.33,6),Z21=35.33 0,64255.22108

15、.02.1:2134max2121212121xxxxxxxxLPxxZ,不不可可行行,得得到到线线性性规规划划,显显然然及及进进行行分分枝枝,增增加加约约束束选选择择目目标标值值最最大大的的分分枝枝7762222 xxxLP6不可行72x 0,74255.22108.02.1:2234max2121212121xxxxxxxxLPxxZ,分支定界法10 x1x2oACLP134可可行行域域是是一一条条线线段段即即,,40,464255.22108.02.1:21134max121121212121 xxxxxxxxxxLPxxZ:及及,得得线线性性规规划划及及进进行行分分枝枝,增增加加约约束

16、束,选选择择由由于于212211542111121LPLPxxLPZZ 6 0,65255.22108.02.1:21234max2121212121xxxxxxxxLPxxZ,LP211:X=(4,6),Z211=34LP212:X=(5,5),Z212=355LP212分支定界法LP0:X=(3.57,7.14),Z0=35.7LP1:X=(3,7.6)Z1=34.8LP2:X=(4,6.5)Z2=35.5x13x14LP21:X=(4.33,6)Z21=35.33x26LP211:X=(4,6)Z211=34LP212:X=(5,5)Z212=35x14x15LP22无可行解x27小结学

17、习要点:掌握一般整数规划问题概念及模型结构 掌握分支定界法原理 能够用分支定界法求解一般整数规划问题分配问题与匈牙利法设n 个人被分配去做n 件工作,规定每个人只做一件工作,每件工作只有一个人去做。已知第i个人去做第j 件工作的效率(时间或费用)为Cij(i=1.2n;j=1.2n)并假设Cij 0。问应如何分配才能使总效率(时间或费用)最高?设决策变量 ),.,2,1,(ji0ji1njixij 件事件事个人做第个人做第不指派第不指派第件事件事个人做第个人做第指派第指派第分配问题与匈牙利法指派问题的数学模型为:).2.1,1(0).2.1(1).2.1(1min1111njixnjxnixx

18、cZijniijnjijninjijij或或取取分配问题与匈牙利法如果从分配问题效率矩阵aij的每一行元素中分别减去(或加上)一个常数ui,从每一列中分别减去(或加上)一个常数vj,得到一个新的效率矩阵bij,则以bij为效率矩阵的分配问题与以aij为效率矩阵的分配问题具有相同的最优解。分配问题与匈牙利法1)变换指派问题的系数矩阵(cij)为(bij),使在(bij)的各行各列中都出现0元素,即 从(cij)的每行元素都减去该行的最小元素;再从所得新系数矩阵的每列元素中减去该列的最小元素。2)进行试指派,以寻求最优解。在(bij)中找尽可能多的独立0元素,若能找出n个独立0元素,就以这n个独立

19、0元素对应解矩阵(xij)中的元素为1,其余为0,这就得到最优解。分配问题与匈牙利法找独立0元素,常用的步骤为:从只有一个0元素的行开始,给该行中的0元素加圈,记作。然后划去 所在列的其它0元素,记作;这表示该列所代表的任务已指派完,不必再考虑别人了。依次进行到最后一行。从只有一个0元素的列开始(画的不计在内),给该列中的0元素加圈,记作;然后划去 所在行的0元素,记作 ,表示此人已有任务,不再为其指派其他任务了。依次进行到最后一列。若仍有没有划圈的0元素,且同行(列)的0元素至少有两个,比较这行各0元素所在列中0元素的数目,选择0元素少这个0元素加圈(表示选择性多的要“礼让”选择性少的)。然

20、后划掉同行同列的其它0元素。可反复进行,直到所有0元素都已圈出和划掉为止。分配问题与匈牙利法 若 元素的数目m 等于矩阵的阶数n(即:mn),那么这指派问题的最优解已得到。若m n,则转入下一步。3)用最少的直线通过所有0元素。其方法:对没有的行打“”;对已打“”的行中所有含元素的列打“”;再对打有“”的列中含 元素的行打“”;重复、直到得不出新的打号的行、列为止;对没有打号的行画横线,有打号的列画纵线,这就得到覆盖所有0元素的最少直线数 l。注:l 应等于m,若不相等,说明试指派过程有误,回到第2步,另行试指派;若 lm n,表示还不能确定最优指派方案,须再变换当前的系数矩阵,以找到n个独立

21、的0元素,为此转第4步。分配问题与匈牙利法4)变换矩阵(bij)以增加0元素在没有被直线通过的所有元素中找出最小值,没有被直线通过的所有元素减去这个最小元素;直线交点处的元素加上这个最小值。新系数矩阵的最优解和原问题仍相同。转回第2步。分配问题与匈牙利法例5.6 有一份中文说明书,需译成英、日、德、俄四种文字,分别记作A、B、C、D。现有甲、乙、丙、丁四人,他们将中文说明书译成不同语种的说明书所需时间如下表所示,问如何分派任务,可使总时间最少?任务任务人员人员ABCD甲甲67112乙乙4598丙丙31104丁丁5982分配问题与匈牙利法解:1)变换系数矩阵,增加0元素。2142 2895410

22、13895421176)(ijc 06733902451009545 01733402401004542)试指派(找独立0元素)17334241454 找到 3 个独立零元素 但 m=3 n=4分配问题与匈牙利法3)作最少的直线覆盖所有0元素 17334241454独立零元素的个数m等于最少直线数l,即lm=3n=4;4)没有被直线通过的元素中选择最小值为1,变换系数矩阵,将没有被直线通过的所有元素减去这个最小元素;直线交点处的元素加上这个最小值。得到新的矩阵,重复2)步进行试指派分配问题与匈牙利法 6244251343000 0 00试指派 6244251343得到4个独立零元素,所以最优解

23、矩阵为:0100001000011000即完成4个任务的总时间最少为:241+8=15分配问题与匈牙利法例5.7 已知四人分别完成四项工作所需时间如下表,求最优分配方案。任务任务人员人员ABCD甲甲215134乙乙1041415丙丙9141613丁丁78119分配问题与匈牙利法解:1)变换系数矩阵,增加0元素。79429118713161491514410413152 2424104750111006211130 00102350960607130 001023509606071302)试指派(找独立0元素)独立0元素的个数为4,指派问题的最优指派方案即为甲负责D工作,乙负责B工作,丙负责A工

24、作,丁负责C工作。这样安排能使总的工作时间最少,为4491128。分配问题与匈牙利法例5.8 已知五人分别完成五项工作耗费如下表,求最优分配方案。任务任务人员人员ABCDE甲甲759811乙乙9127119丙丙85468丁丁73696戊戊467511分配问题与匈牙利法4347511576469637964589117129118957 7132036304520142405263402-1-2解:1)变换系数矩阵,增加0元素。分配问题与匈牙利法 5032015304310140305242402 50320153043101403052424022)试指派(找独立0元素)独立0元素的个数l45

25、,故画直线调整矩阵。分配问题与匈牙利法 5032015304310140305242402选择直线外的最小元素为1;直线外元素减1,直线交点元素加1,其他保持不变。分配问题与匈牙利法 5033004203310240306231301l=m=4 n=5选择直线外最小元素为1,直线外元素减1,直线交点元素加1,其他保持不变,得到新的系数矩阵。分配问题与匈牙利法 6044003202300230206130300总费用为=5+7+6+6+4=28注:此问题有多个最优解分配问题与匈牙利法 6044003202300230206130300总费用为=7+9+4+3+5=28分配问题与匈牙利法 6044

26、003202300230206130300总费用为=8+9+4+3+4=28分配问题与匈牙利法课堂练习:用匈牙利法求解下列指派问题。79 10 1213 12 16 1715 16 14 1511 12 15 163821038729764275842359106910练习1:练习2:分配问题与匈牙利法79 10 1213 12 16 1715 16 14 1511 12 15 16382103872976427584235910691048 21答案:分配问题与匈牙利法匈牙利法的条件是:模型求最小值、效率cij0。当遇到各种非标准形式的指派问题时,处理方法是先将其转化为标准形式,然后用匈牙利

27、法来求解。分配问题与匈牙利法处理方法:设m为最大化指派问题系数矩阵C中最大元素。令矩阵B(m-cij)nn则以B为系数矩阵的最小化指派问题和原问题有相同的最优解。例5.9 某人事部门拟招聘4人任职4项工作,对他们综合考评的 得分如下表(满分100分),如何安排工作使总分最多。88809086907983829578879590739285丁丁丙丙乙乙甲甲C分配问题与匈牙利法解:M95,令)95(ijcC 71559516121301780522310C用匈牙利法求解C,最优解为:0100100000010010X即甲安排做第二项工作、乙做第三项、丙做第四项、丁做第三项,最高总分Z9295908

28、0357分配问题与匈牙利法 当人数m大于工作数n时,加上mn项虚拟工作,例如:1235461714836111095 00000000001235461714836111095 当人数m小于工作数n时,加上nm个人,例如 1716131074569102015 00001716131074569102015分配问题与匈牙利法若某人可做几件事,则将该人化作相同的几个“人”来接受指派,且费用系数取值相同。例如:丙可以同时任职A和C工作,求最优指派方案。1716131074569102015丙丙乙乙甲甲 171613101716131074569102015分配问题与匈牙利法将该人做此事的效率系数取

29、做足够大的数,可用M表示。例5.10 分配甲、乙、丙、丁四个人去完成A、B、C、D、E五项任务。每个人完成各项任务的时间如表所示。由于任务数多于人数,考虑任务E必须完成,其他4项中可任选3项完成。试确定最优分配方案,使完成任务的总时间最少。任务任务人员人员ABCDE甲甲2529314237乙乙3938262033丙丙3427284032丁丁2442362345分配问题与匈牙利法解:1)这是不平衡的指派问题,首先转换为标准型,再用匈牙利法求解。2)由于任务数多于人数,所以假定一名虚拟人,设为戊。因为工作E必须完成,故设戊完成E的时间为M(M为非常大的数),其余效率系数为0,则标准型的效率矩阵表示为:任务任务人员人员ABCDE甲甲2529314237乙乙3938262033丙丙3427284032丁丁2442362345戊戊0000M分配问题与匈牙利法用匈牙利法求出最优指派方案为:0010000001100000100000010即甲B,乙D,丙E,丁A,任务C放弃。最少时间为105。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(《运筹学》整数规划课件.ppt)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|