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

下载本文档

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

文档简介

信息处理中的组合优化

第四章指派问题CombinatorialOptimizationinInformationProcessing

指派问题(AssignmentProblem,AP)是一种特殊的线性规划问题,也属于0-1整数规划问题.在图论中称为最佳匹配问题(OptimalMatching).问题描述:有n

项任务需要去完成,恰好有

n

个人可以去完成这n项任务,而每个人完成各项任务的效率是不同的,如果要求每人完成其中一项,且每项任务只交给其中一人去完成,应如何分配,使总的效率最高.第四章指派问题§1最大基数匹配问题§2指派问题§3指派问题的应用§4瓶颈分配问题第四章指派问题§1最大基数匹配问题人员工作分配问题:某公司有工作人员x1,x2,…,xn,他们去做n

项工作y1,y2,…,yn

,每人会做其中的一项或几项,要求每人至多做一项,每项工作至多由一人来做,问能否每人都分配到一项会做的工作?x3x1x2y2y1y3如果不那么最多几人有会做的工作可做?且如何安排?可用图和矩阵给出它的数学模型及求解方法

.§1最大基数匹配问题Definition4.1设图

G=(V,E)GraphVertexEdge1、如果,且对,与

无公共顶点,则称边子集M是G的一个匹配;2、M中的每条边的两个顶点称为关于

M是饱和的,否则称为非饱和的;3、G中每个顶点都关于

M是饱和的,则称M

G的一个完备匹配;4、如果M

是一匹配,而不存在其他匹配M1,使得5、如果M

是一匹配,而对不是G

的匹配,则称

M

是G的一个极大匹配

.Note:最大匹配与极大匹配的边数是不同的x3x1x2y2y1y3,则称M

是G的最大(基数)匹配;第四章指派问题6、如果G的顶点V可分成两个满足如下条件的子集X,Y

:②对,则与ej

关联的两个顶点分属X

Y,称G=(X,Y,E)为二部图或偶图

.x3x1x2y2y1y3x4x5y4y5①人员工作分配问题就是在二部图中寻找最大匹配.§1最大基数匹配问题x3x1x2y2y1y3x4x5y4y5该问题也可用矩阵表示如果xi

会做yj否则1111111111000000000000000

在矩阵中寻找什么?

寻找最多的不同行不同列的1元素.(二部图G的邻接矩阵)

称为独立元(素)第四章指派问题如何寻找?礼让原则

从每行、每列中,1

最少的行或列先取,一样多时随意

.×××××

遗憾的是这是错的××××××××ק1最大基数匹配问题

1965年匈牙利著名数学家Edmonds

为之设计了命名为“匈牙利算法”的有效算法,计算复杂性为O(n).就二部图的邻接矩阵,先给出几个概念:

在第i

行第j列上的①(1被加圈)表示xi(或yj

)已被分配,或该行(或列)已被分配;

此时,由于所在行和列的1元素不能再取,用1表示;×不同行不同列的①,称为A的一个分配,用M

表示;第四章指派问题×××设M为已知分配,xi

未被分配,而该行没有1,则xi

不能被分配;若有1,选择一个1(aij),如果第j列没有加圈1,则对该1加圈,得到一新的分配M′,有,如果有加圈1(ai1j),则对aij,ai1j打√,√√√且划去第j列,再看第i1

行有否没有被划去的1,

没有,结束;有,再重复上述过程,直至不能继续为止.这时所得序列,称为关于M

的交互链

.如果在交互链中,最后得到的是无圈1,则称该交互链为可增广链

.把可增广链中的加圈1与没圈的1,互换标记,得到一新的分配M′,有.上述过程称之为增广过程.交互链、可增广链可在图G中描述§1最大基数匹配问题Theorem4.1(Berge,1957)

M

是A的最大分配的充要条件是不存在可增广链

.匈牙利算法:Step1任给一初始分配

M

,设S为未被M分配的行集合;Step2如果,则此时已得到最大分配,End否则,取;Step3寻找xi

出发的可增广链,如果存在,则进行增广;且令GotoStep2;否则xi不能被分配,令GotoStep2;对图G的最大匹配,结论也成立proofTheorem4.1的证明Proof:必要性:若M是A

的最大分配,显然A

中无关于M

的可增广链,不然

M

还可以增广成独立元更多的分配,与M是最大分配相违;充分性:反证,若M

不是最大分配,则存在分配

M1,作

由于M2

是由M,M1

中非公共部分组成,而M,M1

都是分配,所以从M2

的任一1出发,按交互链得到方法,得到的链必是M,M1

中的1交替出现.√√√√√√√

由于,所以在所有的交互链中,必有一条链属于M1

的1多于属于M

的1,且以M1

1出发、结束,这是关于M

的可增广链.与条件矛盾.证毕√√√√第四章指派问题Example1

求G的最大匹配,G的邻接矩阵如右所示:√Solution:不妨设初始匹配取x3,从x3y2

出发,√√√得一增广链:增广得:√√√√√取x4,得一增广链:增广得:取x5,从x5y3出发,√得一交互链,但不是增广链

.从x5y4

出发,因y4未被分配,所以对x5y4

加圈,得:所以,M

是最大匹配,且是完备匹配.§2指派问题在第一节的人员工作安排问题中,分配工作时,只考虑人员有工作做.但事实上,由于工作的性质和个人的特长不同,在完成不同的任务时,其效益是不同的(成本、时间、利润、费用etc.).

§2指派问题设有n

个人员去完成n项任务,第i人完成第j

项任务的效益为,要求每人完成且仅完成一项,问如何分配,使完成n

项任务的总效益最佳

.可以是max、min先考察min称C=(cij)n×n

为效益矩阵.

第四章指派问题Example2

任务人员EJGRA215134B1041415C9141613D78119有一份中文说明书需要译成英、日、德、俄四种语言,分别记为E、J、G、R.现有A、B、C、D

四人,他们将中文翻译成不同语言所需时间如表,问应分配何人去完成何任务(一人完成一项任务),使所需总时间最少?Solution:当分配第i

人完成第j项任务否则设s.t.§2指派问题

显然,这是一个0-1

规划问题,

任务人员EJGRA215134B1041415C9141613D78119

任务人员EJGRaiA2151341B10414151C91416131D781191bj1111

也是一个特殊的运输问题

.所以,分配问题可用解IP问题方法(如:分支定界法),或解运输问题的表上作业法.但是,1、IP

是NP-C问题;2、有基变量2n-1个,而有n-1个为零,高度退化.

1955年,Kuhn-Munkras

提出了解AP

的算法,将求AP

转化为求完备匹配问题,其计算复杂性为O(n3).

由于算法引用了匈牙利数学家

König

的结论,所以,该算法也称为匈牙利算法.第四章指派问题Theorem4.2(König,1931)

Definition4.2图G=(V,E),一个顶点在C中,称C

为G的一个点(对边的)覆盖

.点集若G中每条边至少有点数最少的点覆盖C称为G的最小点覆盖

.二部图G=(X,Y,E),M为最大匹配,C为最小点覆盖,则有监测点的设置等是最小点覆盖的应用

.

点覆盖在二部图G的邻接矩阵上如何表示?Proof

Theorem4.2的证明Proof:显然,若,则若,设X1为在M

中没有独立元的行的集合.如右

令Z是X1中行出发的关于M

的交互链上的所有点,如右

记则

表示S中的行的所有1对应的列取则B

是A

的一个覆盖,如果不是,则有1元素行在S

列在

Y-T

中,这与矛盾.而,显然所以B

是最小覆盖.证毕§2指派问题显然,Ex.2的可行解可用一个0-1矩阵表示

.表示:因此,求解指派问题可在效益矩阵上进行

.Theorem4.3如果从效益矩阵(cij)的第i行中每个元素减去a和第j

列中每个元素加上b,得到一个新的效益矩阵.则以为新的目标函数与原目标函数的指派问题最优解相同

.第四章指派问题匈牙利算法:Step1使效益矩阵各行各列出现零元素;具体:从效益矩阵的每行各元素减去该行最小元素;再从所得矩阵的每列各元素减去该列最小元素

.称各行各列所减的数值之总和为缩减量,记为

S.S=2+4+9+7+4+2=28§2指派问题Step2试寻求最优解;用上节的求最大匹配的算法

.这时得到最大匹配

M.如果,则已得到最优解;即28=S每行每列有零元素,能保证有n个独立零元素吗?

如果,则gotostep3

;第四章指派问题Step3作缩减后的效益矩阵的最小覆盖;具体:a、对没有0

的行打√;

b、对已打√的行中所有含0

元素的列打√;

c、对打√的列上有

0的行打√;

d、重复b、c

,直到得不出新的打√的行列为止;

e、对打√的列画纵线,没打√行画横线.这就得到最小覆盖

.§2指派问题Example3求效益矩阵为C

的最小指派.Solution:√√√缩减量S1=26此时,.第四章指派问题Step4增加零元素√√√具体:a、求出未被直线覆盖的元素中的最小值k;

显然,在直线下增加零元素是不增加独立零的本例k=2b、对打√的行减去k

,打√的列加上k

,gotostep2.-2-2+2缩减量为S2=2+2-2=2此时,所以最优解为zmin=

S1+S2=26+2=2828

零元素是增加吗?§2指派问题考虑极大化问题令可以吗?匈牙利算法要求矩阵元素非负作一新矩阵

取则Example4(婚姻问题)取M=28对人多任务少,人少任务多,如何?虚设.第四章指派问题§3指派问题的应用Example5现有6项任务,由4个工厂来完成,已知各个工厂完成各项任务的费用矩阵为C,应如何分配任务,使总费用最小?具体分别1、无要求;2、一厂至多完成两项;3、一厂至多完成两项,至少完成一项

.Solution:1、无要求碰巧,符合2、3的要求Zmin=13§3指派问题的应用2、一厂至多完成两项

设想每个工厂由两个分厂组成,问题变为

8个工厂完成6项任务,虚设2个任务,费用为零.

说明什么?3、一厂至多完成两项,至少完成一项

.一个厂不能同时完成最后两个任务.如何做到?MM

MM

MM

MM

Zmin=13第四章指派问题Example6(铁路列车运行分派问题)

A

站与B

站之间拟开7对客车,客车的运行时间如图,现在要给列车固定乘务组.现在假定,哪站的乘务组换班地点就在那站,乘务组在对方折返停留的最短时间为2小时,问如何分派任务使7个乘务组在折返点的总耗时最小?

问题:列车如何配对,乘务组由哪个车站提供?AB0246810121416182022241214108642131197531§3指派问题的应用AB0246810121416182022241214108642131197531Solution:24681012142024最大数与最小数?217

2468101214221825……24…14构造一个新矩阵

C,2468101214

zmin=20小时如何考虑A

、B

两站的均衡?第四章指派问题指派问题的分支与定界算法

因为,所以是没必要使用B.B.M,在此只是对方法的训练.参见

Ex.3Solution:该问题的可行解仅有24个,然而若n=20,则可行解超过1018个.指派问题的约束为:考虑去掉约束(*)得一松弛问题.§3指派问题的应用

分配人工作时间

A

E2

BJ4

AG9

AR7

总时间

=22解松弛问题,得:下界为22.显然,不是可行解

.考虑最优解中,任务

E

必为A、B、C、D

四人中一人完成.所以分成四支,每支先确定一人完成E

,余下三项按前述松弛问题处理.第一支AE

不可行,得

下界为27.

分配人工作时间

A

E2

BJ4

DG13

BR8

总时间

=27类似得到:第二支BE

,etc.

分配人工作时间

B

E15

AJ10

AG9

AR7

总时间

=41第四章指派问题1222273414336367248341237112813399281031AEEEEDCBDE,524EJJJCBACAGG可行可行*JJJDCB*可行***经计算13次(几乎是可行解的一半)找到最优解,BJAG,CRzmin=28§4瓶颈分配问题§4瓶颈分配问题经典分配问题(AP)

任务人员EJGRA215134B1041415C9141613D78119每人完成一个任务每个任务一人完成条件:目标:总完成时间最少总效益最佳数学模型:求解方法:匈牙利算法s.t.第四章指派问题瓶颈分配问题(BAP)每人完成一个任务每个任务一人完成条件:目标:最大完成时间最小经典分配问题:z=5瓶颈分配问题:z=2数学模型:当分配第i

人完成第j项任务否则设§4瓶颈分配问题

任务人员EJGRA215134B1041415C9141613D78119第一个任务的完成时间:s.t.这是非线性的第四章指派问题求解方法:首先会想到什么方法一、化为经典分配问题1144413404013求效益矩阵(dij)的经典分配:所以,fmin

=2§4瓶颈分配问题对原效益矩阵C

的元素cij

的不同的值按从小到大的顺序排序.

c(k)

为第k

个值,用s表示不同c(k)

温馨提示

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

最新文档

评论

0/150

提交评论