运筹学-整数规划指派问题
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
0 3
10
2
10 2
1 2 2 0
1 11 6 8
9 8 0 2
5 0
3
3
A5
6
9
6 10
8
2
2
0
4
1
-4 -7 -6 -6
1 0 0 0 0
0 0 0 0 1
X
*
0
0
0
1
0
0 1 0 0 0
0
0
1
0
0
-7 从而导出匈牙利解法的思想:
-
二匈牙利解法
1955年,由库恩(W.W.Kuhn)根据匈牙利数学家狄·考尼 格(d.konig)关于矩阵中独立零元素的定理发明的。
目前认为最简洁的方法—匈牙利法。
-
例 某商业公司计划开办五家新商店。为了尽早建成
营业,商业公司决定由5家建筑公司分别承建。已知建筑
公司 Ai(i1,2,,5) 对新商店 Bj(j1,2,,5) 的建造
报价(万元)为cij(i,j1,2,,5),商业公司应当对5
家建筑公司怎样分配建筑任务,才能使总的建筑费用最 少?
A1
C
A A
2 3
A4
A5
B 1 B 2 B 3 B 4 B 5
4 8 7 15 12 7 9 17 14 7
6
9
12
6
10
6 7 14 8 10
6
9
6 10
8
-
这是一个标准的指派问题。若设0-1变量
1
x ij
0
当 A i 承建 B j 时 当 A i 不承建 B j 时
则问题的数学模型为
i 1j 1 i k
j 1
i 1j 1 i k
j 1
j 1
n
注意到
x ij 1
j 1
nn
所以原式
cijxij t.1Zt
i1 j1
因此有 m Z im nZ it) n m (Z itn
推论 若将指派问题的效率矩阵每一行及每一列分别减去各 行各列的最小元素,则得到的新的指派问题与原指派问题有 相同的最优解。
注:当 cij=0 时,从第i行看,它表示第i人去干第j项工作效 率(相对)最好,而从第j列来看- ,它表示第j项工作让第i人 来干效率(相对)最高。
问题是:能否找到位于不同行、不同列的n个0元素? 定义 在效率矩阵C中,有一组处于不同行、不同列的零元素, 称为独立零元素组,此时其中每个元素称为独立零元素。
5 0 2 0
C
2
0 4
3 5 8
0 6 0
7
0 3
-
例 现有一个4×4的指派问题,其效率矩阵为:
2 15 13 4
C
10
9 7
4 14 8
第三节 0-1型整数规划
0-1变量: 在整数规划问题中,有一类特殊的整数规
划,不仅要求解为整数,而且要求只能取得0 和1两个整数值,这类整数规划称之为0-1型 整数规划,该类解称为0-1变量。
-
一 指派问题
由n项不同的工作或任务,需要n个人去完成(每人只 能完成一项工作)。由于每人的知识、能力、经验等 不同,故各人完成不同任务所需的时间(或其它资源) 不同。
m Z i 4 x 1 n 1 8 x 1 2 1 x 50 4 6 x 55
5
x ij 1
i 1,2, 5
j1
s.t. 5 x ij 1 j 1,2 , 5
i1
xij
0
或1
-
A1
CA 2
A3 A4 A5
B 1 B 2 B 3 B 4 B 5
4 8 7 15 12
7 9 17 14 7
i1 j1
i1 j1 ik
j1
nn
n
nn
n
n
cix jij (ck jt)xk j c ix jij ckx jk jt xkj
i 1j 1 i k
j 1
i 1j 1 i- k
j 1
j 1
nn
n
nn
n
n
cix jij (ck jt)xk j c ix jij ckx jk jt xkj
6
9
12
6
10
6 7 14 8 10
6
9
6 10
8
如何分派工作?
1 0 0 0 0
0 0 0 0 1
X
*
0
0
0
ຫໍສະໝຸດ Baidu
1
0
0 1 0 0 0
0
0
1
0
0
-
B 1 B 2 B 3 B 4 B 5
A1
CA 2
A3 A4
4
7
6
6
8 9 9 7
7 17 12 14
15 14 6 8
12 7
C
c k 1 c k 2 c kn
c n 1 c n 2 c nn
c11
c12
c21
c22
C
ck1 t ck2 t
cn1
cn2
c1n
c2n
ckn t
cnn
记新指派问题的目标函数为 Z ,
nn
nn
n
Z
cijxij
cijxij ckxjkj
匈牙利法的基本原理:
定理1 将效率矩阵的某一行(或某一列)的各个元素都减去 同一个常数t (t可正可负),得到新的矩阵,则以新矩阵为 效率矩阵的指派问题与原指派问题的最优解相同。但其最 优值比原最优值减少t 。
解:设效率矩阵C为
-
c 11 c 12 c 1 n
c 21 c 22 c 2 n
系数(或价值系数)。表示为
c11 c12 c1n
C
c21 cn1
c22 cn2
-
c2n
cnn
则指派问题的数学模型为
nn
minZ
cijxij
i1 j1
n
x ij 1
i 1,2, n
j1
s.t. n x ij 1 j 1,2 , n
i1
xij
0
或1
注:指派问题是一种特殊的LP问题,是一种特殊的运输问题。
问应指派哪个人完成何项工作所消耗的总资源最少?
指派问题的数学模型
引进0-1变量
1
x ij
0
表示安排第i个人完成第j项工作 表示不安排第i个人完成第j项工作
-
决策变量矩阵可表示为:
x11 x12 x1n
X
x21
xn1
x22 xn2
x2n
xnn
用 c ij 表示第i个人完成第j项工作所需的资源数,称之为效率
例 已知
5 0 2 0
C
2
0 4
3 5 8
0 6 0
0
7 0
则 { c 1 20 ,c 2 40 ,c 3 10 ,c 4 30 }是一个独立零元素组, -
c 1 20 ,c 2 40 ,c 3 10 ,c 4 30 分别称为独立零元素。
5 0 2 0
C
2
0 4
3 5 8
0 6 0
0
7 0
也是一个独立零元素组。
5 0 2 0
C
2
0 4
3 5 8
0 6 0
0
7 0
不是一个独立零元素组。
-
定理 效率矩阵C中独立零元素的最多个数等于能覆盖所 有零元素的最少直线数。
本定理由匈牙利数学家狄·考尼格证明的。
例 已知矩阵
5 0 2 0
C
2
0 4
3 5 8
0 6 0
0
7 0