运筹学 指派问题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
是1或0。并令
1, 当指派第 i人去完成第 j 项任务 xij 0, 当不指派第 i人去完成第 j 项任务
当问题要求极小化时数学模型是:
nn
目标函数 min z
cij xij
i1 j1
n

xij 1,
j 1, 2,
i1
约束条件

n
0

4 2列min
0 0 0 1
最优解为
( xij
)


0 1
1 0
0 0
0

0


0 0 1 0
定理3 若矩阵C可分成”0”与非”0”两部分,则覆 盖”0”元素的最少直线等于位于不同行不同列的”0” 元素的最大个数.
5 0 * 2 0 2 覆盖”0”元素的最少直线为4
可行解矩阵
n
xij 1, j 1, 2, , n ②
i1
表明各列之和为1 。
n
xij 1, i 1, 2, , n ③
j1
表明各行之和为1 。
满足约束条件②~④的可行解xij构成的可行解矩阵,
矩阵中有n个为1,其余都为0,而且这n个1必位于矩阵的不
同行不同列上。对应于可行解xij的目标值是这n个cij之和.
bij cij i j , i与 j为常数
则以B= ( bij)为效率矩阵指派问题G’与G有相同的最 优解。
证: 首先效率矩阵的这种变化只是目标值在变换,并 不影响约束方程组,其次用z和 z`分别记问题G
与G`的目标函数值,则
z '
bij xij
(cij i j )xij
例如(cij
)

10 9
4 14
14 16
15

4
13 9

7
8
11
9

7
行列都有 零元素
0 13 11 2 0 13 7


6
0
10
11


6
0* 6
0 5 7 4 0* 5 3

0
1
4
2


0
1
0*
0*
9 2



(bij
)


2
3
0*
0
0

条位,于不同行不同列的”0”元素
0 * 10
5
7
2
的最大个数也为4.
9 8 0 0* 4
0 6 3 6 5
0 13 7 0
再如 例1

7 8 11 9
类似有:有n项加工任务,怎样指派到n 台机床上分别完成的问题;有n条航线,怎样 指定n艘船去航行问题……。对应每个指派问 题,需有类似表1那样的数表,称为效率矩阵
或,其元素cij≥0(i,j=1,2,…,n)表示指派
第i人去完成第j项任务时的效率(或时间、成
本等)。解题时需引入变量xij;其取值只能
ij
ij

cij xij i xij j xij
ij
i
j
j
i
z i j
i
j
即z和 z’只相差一个常数,故它们有相同的最优解.
• 利用这个性质,可使原效率矩阵变换为含有很
多0元素的新效率矩阵,而最优解保持不变,在
效率矩阵(bij)中,我们关心位于不同行不同列
指派问题是0-1规划的特例,当然可 用整数线性规划、0-1规划的解法去求解, 但可以利用指派问题的特点设计更简便 的解法,下面介绍匈牙利法。
nn
min z
bij xij
i1 j1
定理1 设 B (bij )nn 是效率矩阵,若可行解x*的n个1(在解矩
阵的不同行不同列上)对应的n个bij都为0, 则x*是最优解.
的0元素,以下简称为独立的0元素。
• 若能在效率矩阵(bij)中找出n个独立的0元素; 则令解矩阵(xij)中对应这n个独立的0元素的元
素取值为1,其他元素取值为0。将其代入目标
函数中得到 z '
bij xij 0,它一定是最小。
ij
这就是以(bij)为效率矩阵的指派问题的最优解。
也就得到了原问题的最优解。
例1 有一份中文说明书,需译成英、日、德、 俄四种文字。分别记作E、J、G、R。现有甲、乙、 丙、丁四人。他们将中文说明书翻译成不同语种 的说明书所需时间如表1所示。问应指派何人去 完成何工作,使所需总时间最少?
表1
任务 E J G R 人员 耗时

2 15 13 4

10 4 14 15

9 14 16 13
(显然z(x*)=0)
0*
如效率矩阵为

9
23
14 20 0*
9 0* 3
3 23 8


令(
xij
)


1 0 0
0 0 1
0 1 0
0
0

则xij是最 优解
0

0
12 14 0* ,


0 0 0 1
因此需对效率矩阵作变换,使变换后效率矩阵 (bij )nn
第四节 指 派 问 题
assignment problem
在生活中经常遇到这样的问题,某 单位需完成n项任务,恰好有n个人可承 担这些任务。由于每人的专长不同,各 人完成任务不同(或所费时间),效率也 不同。于是产生应指派哪个人去完成哪 项任务,使完成n项任务的总效率最高 (或所需总时间最小)。这类问题称为指 派问题或分派问题。
含有n个不同行不同列个0.由此求得最优解矩阵的n个1是 对应于效率矩阵的这n个0.
指派问题的最优解有这样性质,若从效率矩
阵(cij)的一行(列)各元素中分别减去该行(列)的 最小元素,得到新矩阵(bij),那么以(bij)为效率
矩阵求得的最优解和用原效率矩阵求得的最优解 相同 。即
定理2 设给定了以C = (cij)为效率矩阵指派问题G, 现将C的元素cij 改变为
以下用例1来说明指派问题的解法。
第一步:使指派问题的效率矩阵经变换,在各 行各列中都出现0元素。 (1) 从效率矩阵的每行元素减去该行的最小元 素; (2) 再从所得效率矩阵的每列元素中减去该列 的最小元素。 若某行(列)已有0元素,那就不必再减了。 例1的计算为
行 min
2 15 13 4 2
xij 1,
i 1, 2,
j1

xij
1或
0


,n ②
(表示一项工作只能由一个人完成)
,n ③
(表示每人仅做一件事情)

(xij)是n×n矩阵,对应于效率矩阵(cij).
工作

x11wk.baidu.com
x1 j
x1n





xi1
xij
xin





xn1
xnj
xnn
相关文档
最新文档