01整数规划模型1

上传人:仙*** 文档编号:40117768 上传时间:2021-11-13 格式:PPT 页数:30 大小:451.51KB
收藏 版权申诉 举报 下载
01整数规划模型1_第1页
第1页 / 共30页
01整数规划模型1_第2页
第2页 / 共30页
01整数规划模型1_第3页
第3页 / 共30页
资源描述:

《01整数规划模型1》由会员分享,可在线阅读,更多相关《01整数规划模型1(30页珍藏版)》请在装配图网上搜索。

1、一、决策问题与0-1变量件事是否做第决策变量ixiix10做第i件事不做第i件事ni,2, 1n件事中必须做k件并只做k件事kxxxn21n件事中最多做k件事kxxxn21n件事中至少做k件事nxxx21k做第i件事的充要条件是做第j件事jixx 做第i件事的充要条件是不做第j件事jixx1只在做了第i件事前提下才考虑是否做第j件事ijxx例1(布点问题)某城市共有6个区,每个区都可以建消防站。市政府希望设置的消防站最少,但必须满足在城市任何地区发生火火警时,消防车要在15分钟内赶到现场。据实地测定,各区之间消防车行驶的时间见右表。 请为该市制定一个最节省的计划解:01ix在第i个地区建站Z表

2、示全区消防站总数不在第i个地区建站i=1,2, ,6布点问题模型:654321minxxxxxxZ6 , 2 , 11 , 0ixits.121 xx1621xxx143 xx1543xxx1652xxx最优解x2=1, x4=1最优值Z=2二、过滤隐枚举法(适合于变量个数较少的0-1规划)10,64342422.253max3213221321321321或例:求xxxxxxxxxxxxxt sxxxZ(0 0 0)(0 0 1)(0 1 0)(1 0 0)(1 0 1)(1 1 0)(0 1 1)(1 1 1) 0Z0枚举法:检验可行解:32次运算-25 Z5318 366111321Zx

3、xx最优值,最优解:运算次数:21计算目标函数值:8次 例例 有一份说明书,需译成有一份说明书,需译成英、日、德、俄四种文字。英、日、德、俄四种文字。现有甲、乙、丙、丁四个人,现有甲、乙、丙、丁四个人,他们将说明书译成不同文字他们将说明书译成不同文字所需的时间如下表。问应指所需的时间如下表。问应指派哪个人完成哪项工作,使派哪个人完成哪项工作,使所需的总时间最少?所需的总时间最少? 任任务务人人员员 E E J J G G R R甲甲乙乙丙丙丁丁2 2 1 15 5 1 13 3 4 41 10 0 4 4 1 14 4 1 15 59 9 1 14 4 1 16 6 1 13 37 7 8 8

4、 1 11 1 9 9 一般地,有一般地,有n n项任务、项任务、n n个完成人,第个完成人,第i i人完成第人完成第j j项任务的代价为项任务的代价为c cijij(i,ji,j1,2,1,2,n,n)。为了求得总)。为了求得总代价最小的指派方案,引入代价最小的指派方案,引入0-10-1型变量型变量x xijij,并令,并令 1 1 指派第指派第i i人去完成第人去完成第j j项任务项任务 x xijij 0 0 不指派第不指派第i i人去完成第人去完成第j j项任务项任务 二、指派问题二、指派问题 指派问题的求解,最简便易行的方法是匈牙利法。指派问题的求解,最简便易行的方法是匈牙利法。 可

5、见指派问题是可见指派问题是0-10-1型整数规划的特例。不型整数规划的特例。不难发现,指派问题也是难发现,指派问题也是运输问题的特例,其产运输问题的特例,其产地和销地数都为地和销地数都为n n,各,各产地的产量和各销地的产地的产量和各销地的销量都为销量都为1 1。 数学模型为数学模型为 Min zMin zc cijijx xijij n n x xijij1 j=1,2,1 j=1,2,n,n i=1i=1 n n x xijij1 i=1,2,1 i=1,2,n,n j=1j=1 x xijij0 0或或1 1 匈牙利法基于下面的效率矩阵:匈牙利法基于下面的效率矩阵: c11 c12 c1

6、n (cij)= c21 c22 c2n . cn1 cn2 cnn 匈牙利法基于这样一个明显的事实:如果系匈牙利法基于这样一个明显的事实:如果系数矩阵的所有元素满足数矩阵的所有元素满足c cijij00,而其中有,而其中有n n个位个位于不同行不同列的一组于不同行不同列的一组0 0元素,则只要令对应元素,则只要令对应于这些于这些0 0元素位置的元素位置的x xijij1 1,其余的,其余的x xijij0 0,就,就得到最优解。得到最优解。 匈牙利法求解指派问题的步骤如下:匈牙利法求解指派问题的步骤如下: 0 4 2 0 例如:例如: (cij)= 2 0 7 8 3 1 5 0 0 6 0

7、 3 第一步第一步:变换系数矩阵,使每行每列都出现变换系数矩阵,使每行每列都出现0 0元素元素。(1)(1)系数矩阵的各行分别减去各行中的最小元素;系数矩阵的各行分别减去各行中的最小元素;(2)(2)所得系数矩阵的各列再分别减去各列中的最小元素。所得系数矩阵的各列再分别减去各列中的最小元素。 第二步:试求最优解。第二步:试求最优解。 (1)(1)给只有一个给只有一个0 0元素(不含划去的元素(不含划去的0 0)的行中的)的行中的“0 0”画,划去与同列的其它画,划去与同列的其它“0 0”; (2)(2)给只有一个给只有一个0 0元素(不含划去的元素(不含划去的0 0)的列中的)的列中的“0 0

8、”画,划去与同行的其它画,划去与同行的其它“0 0”; (3)(3)重复重复(1)(1)、(2)(2),直到无新的画出。若系数,直到无新的画出。若系数矩阵中已无未画也未划去的矩阵中已无未画也未划去的“0 0”,则已得到最多,则已得到最多的,转的,转(5)(5);否则,便出现了;否则,便出现了0 0元素的闭回路,转元素的闭回路,转(4)(4)。 (4)(4)从从0 0元素的闭回路上任选一个元素的闭回路上任选一个“0 0”画,划去画,划去其同行同列的其它其同行同列的其它“0 0”,转,转(1)(1)。 (5)(5)显然,按上述步骤得到的是位于不同行不显然,按上述步骤得到的是位于不同行不同列的。若已

9、达同列的。若已达n n个,则指派问题的最优解已得到,个,则指派问题的最优解已得到,结束计算;否则,转第三步。结束计算;否则,转第三步。 第三步第三步:用最少的直线覆盖所有用最少的直线覆盖所有0 0元素。元素。 (1)(1)给无的行打给无的行打“”; (2)(2)给打给打行中含有行中含有0 0元素的列打元素的列打“”; (3)(3)给打给打列中含有元素的行打列中含有元素的行打“”; (4)(4)重复重复(2)(2)、(3)(3),直到无新的,直到无新的“”打出。打出。 (5)(5)给没有打给没有打的行画横线,给打的行画横线,给打的列画纵线。的列画纵线。 第四步:变换系数矩阵,增加第四步:变换系数

10、矩阵,增加0 0元素。在未被画线元素。在未被画线覆盖的其它元素中找出最小元素,各打覆盖的其它元素中找出最小元素,各打“”行减行减去最小元素,各打去最小元素,各打“”列加上最小元素,转第二列加上最小元素,转第二步。步。v指派问题的数学模型为: ).2.1,1(0).2.1( 1).2.1( 1min1111njixnjxnixxcZijniijnjijninjijij或或取取v克尼格定理 :v如果从分配问题效率矩阵aij的每一行元素中分别减去(或加上)一个常数ui,从每一列中分别减去(或加上)一个常数vj,得到一个新的效率矩阵bij,则以bij为效率矩阵的分配问题与以aij为效率矩阵的分配问题具

11、有相同的最优解。v指派问题的求解步骤:1) 变换指派问题的系数矩阵变换指派问题的系数矩阵(cij)为为(bij),使在,使在(bij)的各行各列的各行各列中都出现中都出现0元素,即元素,即 从从(cij)的每行元素都减去该行的最小元素;的每行元素都减去该行的最小元素; 再从所得新系数矩阵的每列元素中减去该列的最小元素。再从所得新系数矩阵的每列元素中减去该列的最小元素。2) 进行试指派,以寻求最优解。进行试指派,以寻求最优解。 在在(bij)中找尽可能多的独立中找尽可能多的独立0元素,若能找出元素,若能找出n个独立个独立0元元素,就以这素,就以这n个独立个独立0元素对应解矩阵元素对应解矩阵(xi

12、j)中的元素为中的元素为1,其余,其余为为0,这就得到最优解。,这就得到最优解。v找独立0元素,常用的步骤为: 从只有一个从只有一个0元素的行开始,给该行中的元素的行开始,给该行中的0元素加圈,记作元素加圈,记作 。然后划去然后划去 所在列的其它所在列的其它0元素,记作元素,记作 ;这表示该列所代表的;这表示该列所代表的任务已指派完,不必再考虑别人了。依次进行到最后一行。任务已指派完,不必再考虑别人了。依次进行到最后一行。 从只有一个从只有一个0元素的列开始(画元素的列开始(画的不计在内),给该列中的的不计在内),给该列中的0元素加圈,记作;然后划去元素加圈,记作;然后划去 所在行的所在行的0

13、元素,记作元素,记作 ,表示,表示此人已有任务,不再为其指派其他任务了。依次进行到最后一列。此人已有任务,不再为其指派其他任务了。依次进行到最后一列。 若仍有没有划圈的若仍有没有划圈的0元素,且同行元素,且同行(列列)的的0元素至少有两个,比元素至少有两个,比较这行各较这行各0元素所在列中元素所在列中0元素的数目,选择元素的数目,选择0元素少这个元素少这个0元素加元素加圈圈(表示选择性多的要表示选择性多的要“礼让礼让”选择性少的选择性少的)。然后划掉同行同列。然后划掉同行同列的其它的其它0元素。可反复进行,直到所有元素。可反复进行,直到所有0元素都已圈出和划掉为止。元素都已圈出和划掉为止。 若

14、若 元素的数目元素的数目m 等于矩阵的阶数等于矩阵的阶数n(即:(即:mn),那么这指,那么这指派问题的最优解已得到。若派问题的最优解已得到。若m n, 则转入下一步。则转入下一步。3) 用最少的直线通过所有用最少的直线通过所有0元素。其方法:元素。其方法: 对没有的行打对没有的行打“”; 对已打对已打“” 的行中所有含的行中所有含元素的列打元素的列打“” ; 再对打有再对打有“”的列中含的列中含 元素的行打元素的行打“” ; 重复重复、直到得不出新的打直到得不出新的打号的行、列为止;号的行、列为止; 对没有打对没有打号的行画横线,有打号的行画横线,有打号的列画纵线,这就得到覆盖号的列画纵线,

15、这就得到覆盖所有所有0元素的最少直线数元素的最少直线数 l 。注:注:l 应等于应等于m,若不相等,说明试指派过程有误,回到第,若不相等,说明试指派过程有误,回到第2步,另行试步,另行试指派;若指派;若 lm n,表示还不能确定最优指派方案,须再变换当前的系,表示还不能确定最优指派方案,须再变换当前的系数矩阵,以找到数矩阵,以找到n个独立的个独立的0元素,为此转第元素,为此转第4步。步。v4) 变换矩阵(bij)以增加0元素v在没有被直线通过的所有元素中找出最小值,没有被直线通过的所有元素减去这个最小元素;直线交点处的元素加上这个最小值。新系数矩阵的最优解和原问题仍相同。转回第2步。v例4.6

16、 有一份中文说明书,需译成英、日、德、俄四种文字,分别记作A、B、C、D。现有甲、乙、丙、丁四人,他们将中文说明书译成不同语种的说明书所需时间如下表所示,问如何分派任务,可使总时间最少?v解:1)变换系数矩阵,增加0元素。2142 289541013895421176)( ijc 06733902451009545 01733402401004542)试指派(找独立)试指派(找独立0元素)元素) 17334241454 找到找到 3 个独立零元素个独立零元素 但但 m = 3 n = 4v3)作最少的直线覆盖所有0元素 17334241454独立零元素的个数独立零元素的个数m等于最少等于最少直

17、线数直线数l,即,即lm=3n=4;4)没有被直线通过的元素中选择最小值为)没有被直线通过的元素中选择最小值为1,变换系数矩,变换系数矩阵,将没有被直线通过的所有元素减去这个最小元素;直阵,将没有被直线通过的所有元素减去这个最小元素;直线交点处的元素加上这个最小值。得到新的矩阵,重复线交点处的元素加上这个最小值。得到新的矩阵,重复2)步进行试指派步进行试指派 6244251343000 0 00试指派试指派 6244251343得到得到4个独立零元素,个独立零元素, 所以最优解矩阵为:所以最优解矩阵为: 0100001000011000即完成即完成4个任务的总时间最少个任务的总时间最少为:为:

18、241+8=15v例4.7 已知四人分别完成四项工作所需时间如下表,求最优分配方案。v解:1)变换系数矩阵,增加0元素。79429118713161491514410413152 2424104750111006211130 00102350960607130 001023509606071302)试指派(找独立)试指派(找独立0元素)元素) 独立独立0元素的个数为元素的个数为4 , 指派问题的最优指指派问题的最优指派方案即为甲负责派方案即为甲负责D工作,乙负责工作,乙负责B工作,工作,丙负责丙负责A工作,丁负责工作,丁负责C工作。这样安排工作。这样安排能使总的工作时间最少,为能使总的工作时间

19、最少,为4491128。v例4.8 已知五人分别完成五项工作耗费如下表,求最优分配方案。4347511576469637964589117129118957 7132036304520142405263402-1 -2v解:1)变换系数矩阵,增加0元素。 5032015304310140305242402 50320153043101403052424022)试指派(找独立)试指派(找独立0元素)元素) 独立独立0元素的个数元素的个数l45,故画直线调整矩阵。,故画直线调整矩阵。 5032015304310140305242402选择直线外的最小元素选择直线外的最小元素为为1;直线外元素减;直

20、线外元素减1,直线交点元素加直线交点元素加1,其,其他保持不变。他保持不变。 5033004203310240306231301l =m=4 n=5选择直线外最小元素为选择直线外最小元素为1,直线外元素减直线外元素减1,直线交,直线交点元素加点元素加1,其他保持不,其他保持不变,得到新的系数矩阵。变,得到新的系数矩阵。 6044003202300230206130300总费用为总费用为=5+7+6+6+4=28=5+7+6+6+4=28注:此问题有多个最优解注:此问题有多个最优解 6044003202300230206130300总费用为总费用为=7+9+4+3+5=28=7+9+4+3+5=28 6044003202300230206130300总费用为总费用为=8+9+4+3+4=28=8+9+4+3+4=28v课堂练习:用匈牙利法求解下列指派问题。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 1638210387297642758423591069104848 21 21答案答案:

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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