指派问题(含非标准指派问题)选读
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第五章 整数规划
§1 整数规划的数学模型及特点
要求一部分或全部决策变量必须取整数值得规划问题称为整数规划。 其模型为:
Max(或min)z=
∑=n
j j j
x c
1
s.t ⎪⎪⎩
⎪⎪⎨⎧=≥=≥=≤∑=n
j n
j i ij ij x
x x n
j x m i b x a ,,,2,10,2,1),(211
若要求决策变量只能取值0或1的整数规划称为0-1型整数线性规划。
§5 指 派 问 题 一. 指派问题的标准形式及数学模型
在现实生活中,有各种性质的指派问题。例如,有若干项工作需要分配给若干人(或部门)来完成;有若干项合同需要选择若干个投标者来承包;有若干班级需要安排在各教室上课等等。诸如此类的问题,它们的基本要求是在满足特定的指派要求条件下,使指派方案的总体效果最佳。由于指派问题的多样性,有必要定义指派问题的标准形式。
指派问题的标准形式(以人和事为例)是:有n 个人和n 件事,已知第i 个人作第j 件事的费用为),2,1,(n j i c ij =,要求确定人和事之间的一一对应的指派方案,是完成这n 件事的总费用最少。
为了建立标准指派问题的数学模型,引入2
n 个0-1变量:
⎩⎨⎧=10ij x
这样,问题的数学模型可写成 ∑∑===
n
i n
j ij ij
x c
z 11
min (5.1)
s.t ⎪⎪⎪⎩
⎪
⎪⎪⎨⎧======∑∑==n j i x n i x n j x ij n j ij n i ij ,2,1,1,0,2,11,2,111
1 (5.3)
其中,(5.1)表示每件事必优且只有一个人去做,(5.2)表示每个人必做且只做一件事。
注:○1 指派问题是产量(i a )、销量(j b )相等,且i a =j b =1,i ,j=1,2,…n 的运输
中部分或全部取整数 若指派第i 人作第j 件事
若不指派第i 人作第j 事
i ,j=1,2,…n
(5.2) (5.4)
问题。
○2 有时也称ij
c 为第i 个人完成第j 件工作所需的资源数,称之为效率系数(或价值系数)。并称矩阵
C= n n ij c ⨯)(=⎪⎪
⎪⎪
⎪
⎭⎫
⎝⎛nn n n n n c c c c c c
c c c 2122221
112
11
(5.5) 为效率矩阵(或价值系数矩阵)。 并称决策变量ij x 排成的n ×n 矩阵
X=n n ij x ⨯)(= ⎪⎪
⎪⎪
⎪
⎭
⎫
⎝⎛nn n n n n x x x x x x
x x x 2
1
22221
11211 (5.6) 为决策变量矩阵。
(5.6)的特征是它有n 个1,其它都是0。这n 个1位于不同行、不同列。每一种情况为指派问题的一个可行解。共n!个解。
其总的费用 z =C ⊙X
这里的⊙表示两矩阵对应元素的积,然后相加。
问题是:把这n 个1放到X 的2n 个位置的什么地方可使耗费的总资源最少?(解最优) 例1 已知效率矩阵
C= ⎪⎪
⎪⎪
⎪
⎭
⎫
⎝
⎛008476500032
0205
则
X (1)= ⎪⎪⎪
⎪⎪⎭⎫
⎝
⎛010*********
0010
, X (2)
= ⎪⎪
⎪⎪
⎪
⎭
⎫
⎝
⎛100000010100
0010
都是指派问题的最优解
例12/P-149:某商业公司计划开办五家新商店。为了尽早建成营业,商业公司决定由5家建筑公司分别承建。已知建筑公司A i (i=1,2,…5)对新商店B j (1,2,…5)的建造费用的报价(万元)为ij c (i ,j=1,2,…5),见表5-9。商业公司应当对5家建筑公司怎样分派建筑任务,才能使总的建筑费用最少?
表5-9
0-1变量
ij x =⎩⎨⎧0
1
则问题的数学模型为
Min z=411x +812x +…+1054x +655x
s.t ⎪⎪⎪⎩
⎪
⎪⎪⎨⎧======∑∑==5,2,1,1,05,2,115,2,1151
5
1 j i x i x j x ij j ij i ij
若看成运输问题,且ij x 如上所述,则表5-9为
当A i 承建B j 时 当A i 不承建B j 时
i,j=1,2, (5)
当然,第一行的1应放在(1,1)位置,此位置同时是第一列的费用最小。但一般情况下没有这么好。需找一适合一般的方法。
二. 匈牙利解法原理:
虽然指派问题是一类特殊的整数规划问题,又是特殊的0-1规划问题和特殊的运输问题,因此,它可以用多种相应的解法来求解。但是,这些解法都没有充分利用指派问题的特殊性质,有效地减少计算量。1955年,库恩(W.W.Kuhn )提出了匈牙利法。
定理1:设指派问题的效率矩阵为C= n n ij c ⨯)(,若将该矩阵的某一行(或某一列)的各
个元素都减去统一常数t (t 可正可负),得到新的效率矩阵n n ij
c C ⨯'=')(,则以C '为效率矩阵的新的指派问题与原指派问题的最优解相同。但其最优解比原最优解之减少t.
证明:设式(5.1)~(5.4)为原指派问题。现在C 矩阵的第k 行个元素东减去同一常数t,记新的指派问题的目标函数为Z '.则有
Z '=∑
=n
i 1
∑='n j ij
ij
x c 1
=∑≠=n k i i 1∑='n j ij ij x c 1+∑='n j ij ij x c 1=∑≠=n k i i 1
∑=n
j ij ij
x c
1
+∑=-n
j kj kj x t c 1
)(
=
∑≠=n k
i i 1∑=n
j ij ij
x c
1
+∑=n
j kj kj x c 1
-t ∑=n j kj x 1=∑
=n
i 1
∑=n
j ij ij
x c
1
-t ·1=Z-t
因此有
Min Z '=min(Z-t)=minZ-t
而新问题的约束方程同原指派问题。因此其最优解比相同,而最优解差一个常数。
推论:若将指派问题的效率矩阵每一行即每一列分别减去各行及各列的最小元素,则得到新指派问题与原指派问题有相同的最优解。
证明:结论是显然的。只要反复运用定理1便可得证。 当将效率矩阵的每一行都减去各行的最小元素,将所得的矩阵的每一列在减去当前列中
最小元素,则最后得到新效率矩阵C '中必然出现一些零元素。设ij
c '=0,从第i 行来看,它表示第i 个人去干第j 项工作效率(相对)最好。而从第j 列来看,这个0表示第j 项工作以第i 人来干效率(相对)最高。
定义:在效率矩阵C 中,有一组在不同行不同列的零元素,称为独立零元素组,此时每个元素称为独立零元素。
例2: 已知
C= ⎪⎪
⎪
⎪
⎪
⎭
⎫
⎝⎛008476500032
0205
则{12c =0,24c =0,31c =0,43c =0}是一个独立零元素组,12c =0,24c =0,31c =0,
43c =0分别称为独立零元素。{12c =0,23c =0,31c =0,44c =0}也是一个独立零元素组,而