第5章指派问题_第1页
第5章指派问题_第2页
第5章指派问题_第3页
第5章指派问题_第4页
第5章指派问题_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

运筹学(OperationsResearch),整数规划,IntegerProgramming,第五章,一、01变量及其应用01变量常被用来表示系统是否处于某个特定状态,或者决策时是否取某个特定方案。例如:,01整数规划,当问题有多项要素,每项要素皆有两种选择时,可用一组01变量来描述。设问题有有限项要素E1,E2,En,其中每项Ej有两种选择Aj和不选择Aj(j=1,2,n),则令,在应用中,有时会遇到变量可以取多个整数值的问题。如果用01变量来表示,也可以用一组01变量来取代。如x取09之间的任意整数时。x=20 x0+21x1+22x2+23x39,01整数规划,(1)两个约束中,只有一个起作用。例:a11x1+a12x2B1a21x1+a22x2B2,例5.9含有相互排斥的约束条件的问题,解:引入0-1变量Y1,Y2和足够大的正数M,则,a11x1+a12x2B1+M1Y1a21x1+a22x2B2+M2Y2Y1+Y2=1,01整数规划,(2)互相排斥的多个约束中,只有一个起作用,ai1x1+ai2x2+ainxnbi(i=1,m),互相排斥m个约束,只有一个起作用:,(3)若a个约束条件中只能有b个起作用。则令01变量之和为a-b。注意:可用统一M,但M的取值必须足够的大。,01整数规划,例5.10固定费用问题,解:设Xj是第j种产品的产量。Yj是01变量,表示是(Yj=1)否(Yj=0)生产第j种产品。,01整数规划,01整数规划,用4台机床加工3件产品。各产品的机床加工顺序,以及产品I在机床j上加工工时aij见表。,例5.11工件排序问题,由于某种原因,产品2的加工总时间不得超过d,现要求确定各件产品在机床上的加工方案,使在最短的时间内加工完全部产品。,01整数规划,机床1:x11+a11x21+My1及x21+a21x11+M(1-y1)机床2:x22+a22x32+My2及x32+a32x22+M(1-y2)机床3:x13+a13x33+My3及x33+a33x13+M(1-y3)机床4:x14+a14x24+My4及x24+a24x14+M(1-y4),解:设产品i在机床j上开始加工的时间为xij,(1)同一件产品在不同机床上的加工顺序约束,(2)每一台机床对不同产品上的加工顺序约束,产品1:x11+a11x13及x13+a13x14产品2:x21+a21x22及x22+a22x24产品3:x32+a32x33,01整数规划,(4)目标函数的建立,x24+a24-x21d,(3)产品2的加工时间总约束,wx14+a14wx24+a24wx33+a33,minz=w,minz=max(x14+a14,x24+a24,x33+a33),01整数规划,01整数规划,隐枚举法(max),原则:1、用试探法,求出一个可行解,以它的目标值作为当前最好值Z02、增加过滤条件ZZ03、将xi按ci由小大排列(min大小),01整数规划是一种特殊形式的整数规划,这时的决策变量xi只取两个值0或1,一般的解法为隐枚举法。,01整数规划,例5.12:maxz=3x1-2x2+5x3,x1+2x2-x32x1+4x2+x34x1+x234x2+x36x1,x2,x3为0或1,解:观察得解(x1,x2,x3)T=(1,0,0)TZ0=3,过滤条件:3x1-2x2+5x33,将(x1,x2,x3)T(x2,x1,x3)T,01整数规划,解(x2x1x3)目标值Z0当前最好值(0,0,0)05(0,1,0)38(1,0,0)-2(1,0,1)3(1,1,0)1(1,1,1)6,最优解x=(1,0,1)TZ=8,指派问题,一、指派问题的数学模型的标准形式:,设n个人被分配去做n件工作,规定每个人只做一件工作,每件工作只有一个人去做。已知第i个人去做第j件工作的效率(时间或费用)为Cij(i=1.2n;j=1.2n)并假设Cij0。问应如何分配才能使总效率(时间或费用)最高?,设决策变量,指派问题的数学模型为:,指派问题,克尼格定理:如果从分配问题效率矩阵aij的每一行元素中分别减去(或加上)一个常数ui,从每一列中分别减去(或加上)一个常数vj,得到一个新的效率矩阵bij,则以bij为效率矩阵的分配问题与以aij为效率矩阵的分配问题具有相同的最优解。,指派问题,二、匈牙利法,指派问题的匈牙利法求解步骤:,1)变换指派问题的系数矩阵(cij)为(bij),使在(bij)的各行各列中都出现0元素,即从(cij)的每行元素都减去该行的最小元素;再从所得新系数矩阵的每列元素中减去该列的最小元素。,2)进行试指派,以寻求最优解。在(bij)中找尽可能多的独立0元素,若能找出n个独立0元素,就以这n个独立0元素对应解矩阵(xij)中的元素为1,其余为0,这就得到最优解。,指派问题,找独立0元素,常用的步骤为:,从只有一个0元素的行开始,给该行中的0元素加圈,记作。然后划去所在列的其它0元素,记作;这表示该列所代表的任务已指派完,不必再考虑别人了。依次进行到最后一行。从只有一个0元素的列开始(画的不计在内),给该列中的0元素加圈,记作;然后划去所在行的0元素,记作,表示此人已有任务,不再为其指派其他任务了。依次进行到最后一列。若仍有没有划圈的0元素,且同行(列)的0元素至少有两个,比较这行各0元素所在列中0元素的数目,选择0元素少这个0元素加圈(表示选择性多的要“礼让”选择性少的)。然后划掉同行同列的其它0元素。可反复进行,直到所有0元素都已圈出和划掉为止。,指派问题,若元素的数目m等于矩阵的阶数n(即:mn),那么这指派问题的最优解已得到。若mn,则转入下一步。,3)用最少的直线通过所有0元素。其方法:,对没有的行打“”;对已打“”的行中所有含元素的列打“”;再对打有“”的列中含元素的行打“”;重复、直到得不出新的打号的行、列为止;对没有打号的行画横线,有打号的列画纵线,这就得到覆盖所有0元素的最少直线数l。,注:l应等于m,若不相等,说明试指派过程有误,回到第2步,另行试指派;若lmn,表示还不能确定最优指派方案,须再变换当前的系数矩阵,以找到n个独立的0元素,为此转第4步。,指派问题,4)变换矩阵(bij)以增加0元素在没有被直线通过的所有元素中找出最小值,没有被直线通过的所有元素减去这个最小元素;直线交点处的元素加上这个最小值。新系数矩阵的最优解和原问题仍相同。转回第2步。,指派问题,例5.13有一份中文说明书,需译成英、日、德、俄四种文字,分别记作A、B、C、D。现有甲、乙、丙、丁四人,他们将中文说明书译成不同语种的说明书所需时间如下表所示,问如何分派任务,可使总时间最少?,匈牙利法,解:1)变换系数矩阵,增加0元素。,5,2)试指派(找独立0元素),找到3个独立零元素但m=3n=4,匈牙利法,3)作最少的直线覆盖所有0元素,独立零元素的个数m等于最少直线数l,即lm=3n=4;,4)没有被直线通过的元素中选择最小值为1,变换系数矩阵,将没有被直线通过的所有元素减去这个最小元素;直线交点处的元素加上这个最小值。得到新的矩阵,重复2)步进行试指派,匈牙利法,得到4个独立零元素,所以最优解矩阵为:,即完成4个任务的总时间最少为:241+8=15,匈牙利法,例5.14已知四人分别完成四项工作所需时间如下表,求最优分配方案。,匈牙利法,解:1)变换系数矩阵,增加0元素。,2)试指派(找独立0元素),独立0元素的个数为4,指派问题的最优指派方案即为甲负责D工作,乙负责B工作,丙负责A工作,丁负责C工作。这样安排能使总的工作时间最少,为4491128。,匈牙利法,例5.15已知五人分别完成五项工作耗费如下表,求最优分配方案。,匈牙利法,匈牙利法,-1,-2,解:1)变换系数矩阵,增加0元素。,匈牙利法,2)试指派(找独立0元素),独立0元素的个数l45,故画直线调整矩阵。,匈牙利法,选择直线外的最小元素为1;直线外元素减1,直线交点元素加1,其他保持不变。,匈牙利法,l=m=4n=5,选择直线外最小元素为1,直线外元素减1,直线交点元素加1,其他保持不变,得到新的系数矩阵。,匈牙利法,总费用为=5+7+6+6+4=28,注:此问题有多个最优解,匈牙利法,总费用为=7+9+4+3+5=28,匈牙利法,总费用为=8+9+4+3+4=28,匈牙利法,课堂练习:用匈牙利法求解下列指派问题。,练习1:,练习2:,匈牙利法,48,21,答案:,非标准型的指派问题:,匈牙利法的条件是:模型求最小值、效率cij0。当遇到各种非标准形式的指派问题时,处理方法是先将其转化为标准形式,然后用匈牙利法来求解。,指派问题,1.最大化指派问题,处理方法:设m为最大化指派问题系数矩阵C中最大元素。令矩阵B(m-cij)nn则以B为系数矩阵的最小化指派问题和原问题有相同的最优解。,例5.16某人事部门拟招聘4人任职4项工作,对他们综合考评的得分如下表(满分100分),如何安排工作使总分最多。,指派问题,解:M95,令,用匈牙利法求解C,最优解为:,即甲安排做第二项工作、乙做第三项、丙做第四项、丁做第三项,最高总分Z92959080357,指派问题,2.不平衡的指派问题,当人数m大于工作数n时,加上mn项虚拟工作,例如:,当人数m小于工作数n时,加上nm个人,例如,指派问题,3.一个人可做几件事的指派问题,若某人可做几件事,则将该人化作相同的几个“人”来接受指派,且费用系数取值相同。,例如:丙可以同时任职A和C工作,求最优指派方案。,指派问题,4.某事一定不能由某人做的指派问题,将该人做此事的效率系数取做足够大的数,可用M表示。,例5.17分配甲、乙、丙、丁四个人去完成A、B、C、D、E五项任务。每个人完成各项任务的时间如表所示。由于任务数多于人数,考虑任务E

温馨提示

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

评论

0/150

提交评论