多目标广义指派问题的模糊匈牙利算法求解
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
个人来做 . 假定每项工作先安排一个人做 ,那么在剩下的 m - n 个人中 ,每个人还可参与做这 n 项工作
中的任何一个 ,即每项工作最多还可能有 m - n 个人来做 ,因此我们不妨假设每个工作都存在另外 m -
n 个与之完全“等价”的“虚拟工作” ,而每个人做这些“等价”工作时的综合效益值完全一致 .这样 ,工作
数就有 n ( m - n+ 1)个 ,它明显多于人数 ,可以保证每个人被指派一项且仅一项工作 ,而每项工作最多由
一个人做 .然后进一步假设还有 n ( m - n+ 1) - m= ( m - n ) ( n- 1)个“人” ,他们做任何工作时的综合效
益为 0. 这样 ,人数便等于工作数 ,进一步可以保证每项工作有且仅有一个人做 ,满足传统 AP的要求 ,
MO G AP 1的解则可根据 ( xij )h× h前 m 行中等于 1的元素来决定 ,如 xij = 1,且 i≤ m ,此时 1≤ j≤ h ,将 j
表示为 j = rn+ q( 0≤ r≤ m - n, 1≤ q≤ n ) ,则表示第 i 个人应指派去做第 q 项工作 ,因为第 j 项工作要
3 数值例子
由于 M OGAP 1与 M OGAP 2的求解思路基本一致 ,这里不妨选 MO GAP 2的例子来求解 .
( 1)
rkij =
ck ma ck max
x-
ckij ck mi
n
i
=
1, 2,… , m ; j =
1, 2,… , n; k =
1, 2,… , p
( 2)
其中 ck max , ck min分别表示矩阵 Ck 中元素的最大值和最小值 .根据以上公式将属性值矩阵 Ck 变为在目标
k 条件下关于“优”的模糊关系矩阵 ~Rk = ( rkij )m× n ( i= 1, 2,… , m; j= 1, 2,… ,n; k= 1, 2,… , p ) . 由德尔斐法 ( Delphi )或层次分析法 ( A HP)等方法确定目标权向量 W= ( w1 , w 2 ,… , wp ) ,令
p
∑ rij = wk rkij i = 1, 2,… , m; j = 1, 2,… , n; k = 1, 2, ,… , p
( 3)
k= 1
其中 rij为综合考虑 p 个目标后各属性值对“优”的合成相对隶属度 . 这样 m×n 个 rij组合成多目标模糊
关系合成矩阵为
r 11 r12 … r1n
m
∑ 做 ai 项工作 ,其中 ai 是待求的未知数 , ai = n. 在安排的过程中需考虑的因素 (指标、目标 )有 p 个 ,已 i= 1
知在第 k 个目标下 ,第 i 个人做第 j 项工作时的目标属性值为 ckij ( i = 1, 2,… ,m ; j= 1, 2,… , n; k= 1, 2, … , p ) . 试确定使各目标均最优的指派方法 .
MO G AP 2的解则可根据 ( xij )d× d前 n 列中等于 1的元素来决定 ,如 xij = 1,且 j≤ n ,此时 1≤ i≤ d ,将 i 表示为 i = um+ t ( 0≤u≤n - m , 1≤ t≤ m ) ,则表示第 j 项工作应指派第 t 个人去做 ,因为第 i 个人要么就 是第 t 个人 ( u= 0) ,要么是第 t 个人的“相同”人 ( 1≤ u≤ n- m ) .这样 , MOGAP 2的解通过这样的转化 后 来自百度文库即可用匈牙利算法求出 .
有 p 个 ,已知在第 k 个目标下 ,第 i 个人做第 j 项工作时的目标属性值为 ckij ( i= 1, 2,… ,m ; j= 1, 2,… , n; k= 1, 2,… , p) .试确定使各目标均最优的指派方法 .
MOGAP 2: 有 n 项工作欲安排 m ( m≤ n) 个人去做 ,每项工作由且仅由一个人去做 ,而第 i 个人可
项工作 .假定每个人先安排做一项工作 ,那么在剩下的 n - m 项工作中 ,每项工作还可由这 m 个人中的
任何一个来做 ,即每个人最多还可能做 n - m 项工作 ,因此我们不妨假设每个人都存在另外 n - m 个各
方面条件与他完全“相同”的人 ,而每项工作由这些“相同”的人做时的综合效益值完全一致 .这样 ,人数
r 21 r22 … r2n
R=
~
…
…
… … = ( ri j )m× n
( 4)
rm1 rm2 … rmn
它的每一个元素 ri j也可理解为第 i 个人做第 j 项工作时的模糊综合效益 ,其值越大越优 ,因此可将 R视为 M OGAP的模糊效益矩阵 .
~
总第 94期 海 军 工 程 大 学 学 报 2000年第 5期 · 79 ·
于是我们可构造 MOG AP 1的适合传统 AP要求的扩展效益矩阵为
A = ( a ) = i j n (m- n+ 1)×n (m- n+ 1) )
~R ~R …
~R
( 5)
0 0… 0
其中第一行有 (m - n+ 1)个 ~R; 第二行中的 0均表示 ( m - n) ( n - 1)行 n列的零矩阵 . 用匈牙利算法求解扩展效益矩阵 A 所对应 A P的最优解为 X = ( xi j )h× h ,这里 h= n ( m - n+ 1) ,而
总第 94期
海
JO U RN A L O F
军工
N AV AL
程 大学
U N IV ERSI TY
学
OF
报
EN G
IN
E E RIN
G
20 00 年第
5期 · 77·
文章编号: 1009- 3486( 2000) 05- 0077- 04
多目标广义指派问题的模糊匈牙利算法求解
分别建立以上两个多目标问题的数学模型如下:
mn
∑ ∑ 模型 1: max′Zk=
ckij xij k = 1, 2,… , p
i= 1 j= 1
n
∑ xi j = 1, i = 1, 2,… ,m j= 1
nm
s.t. ∑ ∑ xij = m j= 1 i= 1
xij = 0, 1 i = 1, 2,… , m; j = 1, 2,… , n
么是第 q 项工作 ( r= 0) ,要么是第 q项工作的一个等价“虚拟工作” ( 1≤ r≤ m - n ) . 这样 , MO GAP 1的
解通过这样转化后 ,即可用匈牙利算法求出 .
( 2) 对于 M OGAP 2,由于 n≥ m ,即工作数多于人数 ,此时每项工作只能由一人做 ,而每个人可做多
就有 m ( n- m+ 1)个 ,它多于工作数 ,可以保证每项工作由且仅由一个人来做 ,而每个人最多做一项工
作 . 然后进一步假设还有 m ( n - m+ 1) - n= ( n- m ) ( m - 1)项“虚拟工作” ,它们由任何人来做时的综合
效益均为 0. 这样 ,工作数便等于人数 ,进一步可以保证每个人做且仅做一项工作 ,满足传统 AP的要
宋业新1 , 陈绵云 2 , 郑之松 1
( 1. 海军工程大学 基础部 , 湖北 武汉 430033; 2.华中科技大学 , 湖北 武汉 430074)
摘 要: 提出和讨论 了两类多目标的广义 指派决策问题 ,分别给出了它 们的多目 标整数线性 规划数学 模型 , 并结合模糊 理论与解决传统指 派问题的匈牙利方 法提出了一种新的求 解算法: 模 糊匈牙利法 .最后给出了一 个数值例子 . 关键词: 广义指派问题 ; 多目标 ; 模糊隶属度 ; 匈牙利算法 中图分类号: O211. 6 文献标识码: A
求 . 于是 ,我们可构造 MOGAP 2的适合传统 AP要求的扩展效益矩阵为:
~R 0
R0
A = (a ) ~ ij m ( n- m+ 1)× m (n - m+ 1)
( 6)
~R 0
其中第一列有 (n - m+ 1)个 ~R; 第二列中的 0均表示 m 行 ( n- m ) ( m - 1)列的零矩阵 . 用匈牙利算法求解扩展效益矩阵 A 所对应 A P的最优解为 X = ( xi j ) d× d ,这里 d= m ( n - m+ 1) ,而
收稿日期: 2000-06-20; 修订日期: 2000-07-17 作者简介: 宋业新 ( 1968-) ,男 ,讲师 ,博士生 .
· 78 · N o. 5, 2000 JO U RN AL O F N AV A L U N IV ER SI T Y O F EN GIN EERIN G Sum N o. 94
其中 xij = 1表示安排第 i 个人去做第 j 项工作 ,否则 xi j = 0. max′对于值越大越优的目标 ,表示为 max (取最大值 ) ; 对于值越小越优的目标 ,表示为 mi n(取最小值 ) .
2 M O GA P的模糊匈牙利算法求解
2. 1 MO GAP的模糊效益矩阵
由在目标 k 条件下第 i 个人做第 j 项工作时的属性值 ckij ( i= 1, 2,… , m; j = 1, 2,… , n; k= 1, 2,… ,
2. 2 两类 M OGAP的模糊匈牙利算法
首先分别对 MOG AP 1和 MOG AP 2作进一步分析 ,然后将 MO GAP的模糊效益矩阵 R经过巧妙 ~
的转化变成适合 AP要求的扩展效益矩阵 ,再用著名的匈牙利算法求解 .
( 1) 对于 M OGAP 1,由于 m≥n ,即人数多于工作数 ,此时每人只能做一项工作 ,而每项工作可由多
mn
∑ ∑ 模型 2: max′Zk=
ckij xij k = 1, 2,… , p
i= 1 j= 1
m
∑ xi j = 1, i = 1, 2,… ,n i= 1 mn
s.t. ∑ ∑ xij = n i= 1 j= 1 xij = 0, 1 i = 1, 2,… , m; j = 1, 2,… , n
传统的指派问题 ( Assi gnment Pro blem 简称 AP)是这样的: 有 n 项工作欲安排 n 个人去做 ,每个人 安排且仅安排一项工作 ,已知第 i 个人做第 j 项工作的效益为 cij ( i , j= 1, 2,… , n ) ,试确定使总效益最大 的最优指派 . A P要求工作数与人数相等 ,它可用著名的“匈牙利算法”来求解 [ 1] ; 文献 [ 2, 3]根据企业管 理决策的需要 ,提出了一个更广义的指派决策问题 ( Generali zed Assig nment Problem 简称 GAP) ,并分 别给出了不同的求解方法 . GAP可叙述如下: 有 n 项工作欲安排 m ( m≥ n )个人去做 ,每个人安排且仅 安排一项工作 ,而每项工作可由一个或多个人共同去做 ,已知第 i 个人做第 j 项工作的效益为 ci j ( i= 1, 2,… , m; j = 1, 2,… , n) ,试确定使总效益最大的最优指派 .显然 , AP与 GAP均是单目标的决策问题 , 只要求总效益最大 ,而在实际的管理决策过程中 ,决策者往往需要考虑的因素很多 ,如时间、效益、风险 等 . 基于此 ,本文提出和讨论了两类多目标的广义指派决策问题 ( M ul tiobject Generalized Assig nment Problem简称 MO GAP) ,并分别给出了它们的数学模型和一种新的求解算法 ,从而为决策者提供了科 学的决策依据 .
1 两类 M O G A P的描述及数学模型
两类 M OGAP分别描述如下: MOGAP 1: 有 n 项工作欲安排 m ( m≥ n)个人去做 ,每个人安排且仅安排一项工作 ,而第 j 项工作
n
∑ 可由 bj 个人共同去做 ,其中 bj 是待求的未知数 , bj = m. 在安排的过程中需考虑的因素 (指标、目标 ) j= 1
p ) ,构成目标 k 条件下的属性值矩阵 Ck = ( ckij )m×n ,再根据矩阵 Ck 求出在目标 k 条件下的各属性值对
“优”的模糊相对隶属度 rkij ,对值越大越优目标和值越小越优目标分别用公式 ( 1)、 ( 2)计算 [4 ]
rkij =
cki j - ck min ck max - ck min