运筹学第4章整数规划与分配问题解析

合集下载

运筹学04-整数规划-匈牙利解法

运筹学04-整数规划-匈牙利解法
匈牙利数学家考尼格(Konig)提出的,得名匈牙利解法 (the Hungarian Method of Assignment) 1、匈牙利解法的基本思想---适用条件 基于任务分配问题的标准型,标准型要满足下述三个条件: (1)目标要求为min (2)效率矩阵{aij}为n阶方阵 (3)阵中所有元素aij≥0,且为常数

非最优阵的变换
第四章 整数规划
3、匈牙利解法的计算步骤: 第四步:重新标号
抹掉原来的标号,回到最优性检验,并进行重新标号,直到得到最优解

0 2 1 // 0
// 0
试分配过程
// 0
7
4 0 2
0
2 4
2 4 0 0
0 2 1 0 //
/ 0
7
第四章 整数规划
最优性检验后可能可能出现的情况
① 每行都有一个零元素标有括号,显然这些括号零在不同行 和不同列,因此得到最优解。 ②每行、每列都有两个或更多的零,这是从剩有零元素最少的 行开始,比较这行各零元素所在列中零元素的个数,选择零 元素少的那列的这个零元素打括号,划掉同行同列的其他零 元素,然后重复以上步骤,直到所有零都做了标记。 ③矩阵中所有零都做了标记,但标有()的零元素个数少于 m,此时就可以找出能覆盖矩阵中所有零元素的最少直线的 集合。 步骤如下:
即甲安排做第二项工作、乙做第一项、丙做第四项、丁做 第三项, 最高总分Z=92+95+90+80=357

运筹第四章整数规划与分配问题

运筹第四章整数规划与分配问题

某公司制造小、 种尺寸的金属容器, 例4 某公司制造小、中、大3种尺寸的金属容器,所用的资 种尺寸的金属容器 源为金属板、劳动力和机时。 源为金属板、劳动力和机时。制造一只容器所需的各种资源 数量如下表所示,不考虑固定费用,每售出一只小、 数量如下表所示,不考虑固定费用,每售出一只小、中、大 号容器所得的利润分别为4元 号容器所得的利润分别为 元、5元、6元,可使用的金属板 元 元 小时, 有500张,劳动力有 张 劳动力有300个,机时有 个 机时有100小时,如果生产某种 小时 容器,不管生产数量多少,都要支付一笔固定费用,小、中、 容器,不管生产数量多少,都要支付一笔固定费用, 大号容器的固定费用分别为100元、150元、200元,现要制 大号容器的固定费用分别为 元 元 元 订一生产计划,使获得的利润最大。 订一生产计划,使获得的利润最大。 资源 金属板( 金属板(张) 劳动力( 劳动力(个) 机时(小时) 机时(小时) 利润 小号容器 中号容器 2 2 1 4 4 3 2 5 大号容器 8 4 3 6 资源拥有量 500 300 100
分别表示小、 大号容器的生产数量, 解:设x1 , x2 , x3分别表示小、中、大号容器的生产数量, M为很大的正数,z表示总利润 为很大的正数, 为很大的正数 表示总利润 引入逻 辑变量
1, x j > 0 yj = 0, x j = 0 j = 1, 2, 3

运筹学课件第4章_整数规划与分配问题

运筹学课件第4章_整数规划与分配问题
2013年3月5日星期二
(1) (2) (3) (4) (5)
管理运筹学课件
4.1.1 整数规划的基本概念


整数规划(integer programming,IP)是指一 类要求问题中的全部或一部分变量为整数的数学 规划。 在整数规划中,依决策变量的取值不同,又可进 一步划分: 如果所有变量都限制为整数,则称为纯整数规划 (Pure Integer Programming,PIP); 如果仅一部分变量限制为整数,则称为混合整数 规划(Mixed Integer Programming,MIP); 变量取二进制的整数规划则称为0-1规划(Binary Integer Programming,BIP)。
2013年3月5日星期二 管理运筹学课件
4.2.1 0-1规划的概念


0-1规划是一种特殊类型的整数规划,即决策变量只取0或 1。0-1规划在整数规划中占有重要地位,许多实际问题, 例如指派问题、选址问题、送货问题都可归结为此类规划。 求解0-1规划的常用方法是隐枚举法,对各种特殊问题还 有一些特殊方法,例如求解指派问题用匈牙利方法就比较 方便。 0-1规划的数学模型为:
2013年3月5日星期二
管理运筹学课件
导入案例——集装箱托运计划
某厂拟用集装箱托运甲、乙两种货物,每箱的体积、质量、可获得的 利润以及托运所受到的限制如表4-1所示。问怎样安排托运计划,可 使利润最大?

运筹学-整数规划与分配问题PPT课件

运筹学-整数规划与分配问题PPT课件
又设 M 为任意大正数,则问题可表达为:
x1 4 y1M x 1 y M 2 1 x1 4 y 2 M x 3 y M 2 2 y1 y 2 1
需注意,当约束 为大于时,右端 项中用减号。
4. 用以表示含固定费用的函数 用 xj 代表产品 j 的生产数量,其生产费用函数表示为
又设 M 为任意大正数,为了表示上述定义,引入约束:
x j My j
显然,当 xj> 0 时,yj=1。
将目标函数与约束条件合起来考虑有:
min z c j x j K j y j
n j 1
0 x j My j y j 0 或 1
由此看出,当 xj = 0 时,为使 z 极小化,应有 yj = 0
③矩阵中所有零元素或被划去,或打上括号,但打括 号的零元素少于 m ,这时转入第四步。 第四步:按定理 1 进行如下变换 1. 从矩阵未被直线覆盖的数字中找出一个最小的 k ; 2. 对矩阵中的每行,当该行有直线覆盖时,令 ui= 0,无 直线覆盖的,令 ui= k ; 3. 对矩阵中有直线覆盖的列,令 vj= -k,对无直线覆盖的 列,令 vj= 0 ; 4. 从原矩阵的每个元素 aij中分别减去 ui 和 vj 。
定义逻辑变量
1,分配第 i 个人去完成第 j 项任务 xij 0,不分配第 i 个人去完成第 j 项任务 (i 1, , m;j 1,, m)

运筹学--第四章 整数规划与分配问题

运筹学--第四章 整数规划与分配问题

选择其一,建立下列几种情形的数学模型,使所装
物品价值最大。 (1)所装物品不变; (2)如果选择旅行箱,则只能装载丙和丁两种物 品,价值分别是4和3,载重量和体积的约束为
1.8 x1 0.6 x 2 12 1.5 x1 2 x 2 20
max z 4 x1 3x2 1.2 x1 0.8 x2 10 s.t.2 x1 2.5 x2 25 x , x 0, 且均取整数值 1 2
例4-3某人有一背包可以装10公斤重、0.025m3的物
品。他准备用来装甲、乙两种物品,每件物品的重 量、体积和价值如表4-3-1所示。问两种物品各装 多少件,所装物品的总价值最大?
表4-3-1 物品 甲 乙 重量 (公斤/每件) 1.2 0.8 体积 (m3/每件) 0.002 0.0025 价值 (元/每件) 4 3
一、整数线性规划问题的提出
线性规划是运筹学的重要分枝,也是运筹学最基本 的部分。整数规划是近三十年来发展起来的、规划 论的一个重要的理论分支。根据对决策变量的要求 不同,分为四种类型: 纯整数规划:所有决策变量均要求为离散的非负 整数。 混合整数规划:部分决策变量要求为离散的非负 整数。 01 整数规划:所有决策变量均要求为0或1。 混合 01 整数规划:部分决策变量要求为0或1。
值是分枝问题的上界;当原问题是求最小值时,目标值
是分枝问题的下界;

运筹学——.整数规划与分配问题

运筹学——.整数规划与分配问题

二、分配问题与匈牙利法
2.4 匈牙利法实例(1)
人员 任务 译成英文 译成日文 译成德文 译成俄文 甲 2 15 13 4 乙 10 4 14 15 丙 9 14 16 13 丁 7 8 11 9
2 10 9 7 15 4 14 8 [aij ] 13 14 16 11 4 15 13 9
第四章 整数规划及分配问题
Βιβλιοθήκη Baidu
第二节 分配问题与匈牙利法
二、分配问题与匈牙利法
2.1 分配问题(1)
指派n个人去完成n项任务,使完成 n项任 务的总效率最高(或所需总时间最少),这 类问题称为指派问题或分配问题。
安排工作(派工):有n项加工任务,怎样 指派到n台机床上完成; 有n条航线,怎样指定n艘船去航行的; ……
2.4 匈牙利法实例(2)
第二步:找出矩阵每列的最小元素,再分别从各列中减去。
必定满足:bij = aij–ui–vj
0 11 2 0 0
8 0 3 11 0
7 5 0 11 10 4 2 5 0 9 5 0 5 0
8 2 5 0 5 4 3 0 0 11 4 5
第四章 整数规划与分配问题
对于线性规划问题,最优解可能是分数或小数。 但是对于某些问题,会要求解答必须是整数 (称为整数解)。
对于所求解是机器的台数、完成工作的人数、装货 的车数、集装箱数量等; 对于一些决策变量必须取Boolean值时,如要不要 在某地建工厂,可选用一个逻辑变量x,令x=0表示 不在该地建厂,x=1表示在该地建厂。

运筹学讲义第4章

运筹学讲义第4章
2010/03 --14--
M——充分大正数
--第4章 整数规划--
5. 分段函数线性表示 设有 f(xj)=
1 0
Kj+cjxj 0
当xj>0 当xj=0
当xj>0 当xj=0,
将min f (xj) 表示成 线性函数。
设 yj= 则
Min f(xj) = kjyj+cjxj st. xj≤yjM xj≥0, yj=0或1 M—非常大的正常数
m m
Min z=∑∑ aijxij
i=1j=1 m
st.
∑xij =1
j=1 m
(i=1,2,···,m) (j=1,2,···,m)
(i=1,2,···,m; j=1,2,···,m)
∑xij =1
i=1
xij =0或1
2010/03
--22--
--第4章 整数规划--
二、匈牙利法: 4 5 7 (0) (0) 4 6 5 5 (0) 3 6 6 5 (0) 2
2010/03
--3--
--第4章 整数规划--
x2
2x1+x2=9
4
(3.25, 2.5) 2 2x1+3x2=14
0
2010/03
2
4 3x1+2x2=6
6
x1
--4--

运筹学基础及应用第4章-整数规划与分配问题

运筹学基础及应用第4章-整数规划与分配问题

所有0元素的最少直线数 l 。
注:l 应等于m,若不相等,说明试指派过程有误,回到第2步,另行试 指派;若 l=m < n,表示还不能确定最优指派方案,须再变换当前的系 数矩阵,以找到n个独立的0元素,为此转第4步。
指派问题
4) 变换矩阵(bij)以增加0元素 在没有被直线通过的所有元素中找出最小值,没有被直 线通过的行所有元素减去这个最小元素;所有有直线通过的 列的元素加上这个最小值。新系数矩阵的最优解和原问题仍 相同。转回第2步。
混合整数规划问题
整数规划的特点及应用
例4.2 现有资金总额为B。可供选择的投资项目有n个,项目 j所需投资额和预期收益分别为aj和cj(j=1,2,..,n),此外由 于种种原因,有三个附加条件: 若选择项目1,就必须同时选择项目2。反之不一定;
项目3和4中至少选择一个;
项目5,6,7中恰好选择2个。 应该怎样选择投资项目,才能使总预期收益最大。
整数规划的特点及应用
整数规划问题解的特征: 整数规划问题的可行解集合是它松弛问题可行解集合的一 个子集,任意两个可行解的凸组合不一定满足整数约束条件, 因而不一定仍为可行解。 整数规划问题的可行解一定是它的松弛问题的可行解(反 之不一定),但其最优解的目标函数值不会优于后者最优解 的目标函数值。
整数规划的特点及应用
匈牙利法
例4.6 有一份中文说明书,需译成英、日、德、俄四种文字, 分别记作A、B、C、D。现有甲、乙、丙、丁四人,他们将 中文说明书译成不同语种的说明书所需时间如下表所示,问 如何分派任务,可使总时间最少?

运筹学基础及应用_(第四章_整数规划与分配问题)

运筹学基础及应用_(第四章_整数规划与分配问题)

1 -选择自备柴油机发电 设 y 2 0 -不选择自备柴油机发电
采用电网供电 采用自备柴油机发电
M-----非常大的正数
基础教研室
3. 表示条件性约束
【例4】:若在开采时还需满足下述条件:(a) 若开采8号,则必须同时开采6号; 若开采5号,则不许开采3号; (b) (c) 2
号和4号至少开采一个;
基础教研室
【例1】求下述整数规划的最优解
Max z= 3x1 + 2x2 st . 2x1 + 3x2 14 x1 + 0.5x2 4.5 x10,x20,且为整数
基础教研室
x2 x1+0.5x2=4.5
4
(3.25, 2.5) 2 2x1+3x2=14
2
4
6
x1
3x1+2x2=6
二、整数规划的求解方法
i=1 m j=1 m j=1 i=1 i=1j=1 m i=1j=1 i=1j=1 i=1j=1 m m m m m m m m
m
m
m
=z0- ui- vj =z0-constant
i=1 j=1
三、步骤
⑴ 使每行、每列都出现0元素
方法:每行减该行最小元素; 每列减该列最小元素。
min
基础教研室
基础教研室
• 凑整法的局限性: 1 变量取值小时,误差大 2 变量数量大时,计算工作量大 3 有时不一定能得到整数规划问题的最优解 • 整数规划的求解方法 1 图解法 2 分枝定(限)界法 3 割平面法 4 匈牙利法 5 隐枚举法

运筹学 第4章 整数规划与分配问题

运筹学 第4章 整数规划与分配问题
证明:略。
下面以实例说明匈牙利法的解题步骤:
例2 有一份中文说明书,需译成英、日、德、俄四种文字, 现有甲、乙、丙、丁四人,他们将中文说明书翻译成不同 语种说明书所需时间如表4-2所示。问应指派何人去完成 何工作,使所需总时间最少? 表4-2
人 员 任务 英文 日文 德文 俄文 甲 2 15 13 4 乙 10 4 14 15 丙 9 14 16 13 丁 7 8 11 9
1 分配第i个人去完成第 j项任务 xij 0 不分配第i个人去完成第 j项任务
i 1, 2, , n; j 1, 2, , n
当问题要求极小化时,数学模型是:
min Z cij xij
i 1 j 1
n
n
n j 1, 2, , n xij 1 1 i n i 1, 2, , n xij 1 j 1 xij 0 或 1 指派问题是运输问题的特例,即n=m, aj=bi=1。可用 运输问题的解法去求解。根据分配问题的特点,下面给 出匈牙利法。
max z cij xij
i 1 j 1 m m
可令 bij=M-cij,其中M是足够大的常数(如选cij中最大元 素为M即可),这时效率矩阵变换为B=(bij),bij≥0,符合 匈牙利法条件。
目标函数变换后,即解
min z bij xij

运筹学第四章--整数规划和分配问题(新)aPPT课件

运筹学第四章--整数规划和分配问题(新)aPPT课件

二、分枝定界法的步骤(最大值问题) 第一步 寻找替代问题并求解
设原整数规划问题为IP,其松弛问题为L0。 用单纯形法求L0,若L0无可行解,则IP也无可 行解,计算停止。若求得L0为整数解,则得IP 的最优解,停止。否则,转下一步; 第二步 分枝与定界
在L0的解中,任选一个不满足整数条件的 变量xi,设xi = bi ,则做两个子问题
-
1
整数线性规划的一般形式: n max(或min)z cj xj j 1
n
aij xj ( 或 )bi (i 1,2,...m)
j 1
xj 0( j 1,2,...n),且部分或全部取整数
例1.求下述整数规划问题的最优解
max z 3x1 2x2
2x1 3x2 14 x1 0.5x2 4.5
-
19
3. 对求最大值问题的处理
设目标函数为
mm
maxz
aijxij
可将其变换为
i1 j1 mm
minz'
(aij)xij
i1 j1
此时,效率矩阵的元素全成为负值,不符合要
求,根据定理1,令 Mma aijx
变换后的效率矩阵每行都加M即可。
-
20
作业:P126 4.7(a) 4.8(a) 第三节 分枝定界法 一、分枝定界法的基本思想
x1,
x2

运筹学习题解答(chap4 整数规划与分配问题)

运筹学习题解答(chap4 整数规划与分配问题)

第四章 整数规划与分配问题

一、建立下列问题的数学模型

1、P143, 4.1 利用0-1变量对下列各题分别表示成一般线性约束条件 (a) 221≤+x x 或53221≥+x x ; (b) x 取值0,3,5,7中的一个; (c) 变量x 或等于0,或50≥; (d) 若21≤x ,则12≥x ,否则42≤x ; (e) 以下四个约束条件中至少满足两个:

6225433121≥+≥≤≤+x x x x x x ,,,。 解:(a) 设

⎩⎨

⎧=否则。

,个条件起作用;

第1

i ,0y i (i=1,2),M 为任意大正数。

则有 ⎪⎩⎪

⎨⎧=+≥++≤+1

y y My -5x 3x 2My 2x x 21

221121

(b) 设⎩⎨

⎧=≠=i

x i x y i ,

1,

0,7,5,3,0=i ,则原条件可表示为

⎩⎨⎧=++++++=175307530

7

530y y y y y y y y x

(c) 设⎩⎨

⎧≥==50

,

10,

0x x y ,则原条件可表示为

⎪⎩⎪

⎨⎧≥--≥≤0)1(50x M y x yM x

(d)⎩⎨

⎧=否则。

,组条件起作用;

第1i ,

0y i (i=1,2),M 为任意大正数。

则有

⎪⎪⎪⎩⎪

⎪⎪⎨⎧=++≤->-≥+≤.

1,

4,2,1,2212

2211211y y My x My x My x My x (e)设⎩⎨

⎧=个条件不成立

第个条件成立

第i ,

1i ,

0y i ,4,3,2,1i =,则原条件可表示为:

⎪⎪⎪⎩⎪

⎪⎪⎨⎧≤+++-≥+-≥+≤+≤+2

y y y y M

运筹学 第4章 整数规划

运筹学 第4章  整数规划

第四章整数规划

整数规划(Integer Programming)主要是指整数线性规划。一个线性规划问题,如果要求部分决策变量为整数,则构成一个整数规划问题,在项目投资、人员分配等方面有着广泛的应用。

整数规划是近二、三十年发展起来的数学规划的一个重要分支,根据整数规划中变量为整数条件的不同,整数规划可以分为三大类:所有变量都要求为整数的称为纯整数规划(Pure Integer Programming)或称全整数规划(All integer Programming);仅有一部分变量要求为整数的称为混合整数规划(Mixed Integer Programming);有的变量限制其取值只能为0或1,这类特殊的整数规划称为0-1规划。

本章主要讨论整数规划的分枝定界法、割平面法、0-1规划及指派问题。

第一节整数规划问题及其数学模型

一、问题的提出

在线性规划模型中,得到的最优解往往是分数或小数,但在有些实际问题中要求有的解必须是整数,如机器设备的台数、人员的数量等,这就在原来线性规划模型的基础上产生了一个新的约束,即要求变量中某些或全部为整数,这样的线性规划称为整数规划(Integer Programming)简称IP,是规划论中的一个分枝。

整数规划是一类特殊的线性规划,为了满足整数解的条件,初看起来,只要对相应线性规划的非整数解四舍五入取整就可以了。当然在变量取值很大时,用上述方法得到的解与最优解差别不大,当变量取值较小时,得到的解与实际最优解差别较大,当变量较多时,如n=10个,则整数组合有210=1024个,而且整数解不一定在这些组合当中。先来看下面的例子。

运筹学 第四章 整数规划与分配问题

运筹学 第四章 整数规划与分配问题

又有n个地点B1,B2, … Bn 需要销售这种产品,其销量
分别为b1.b2…bn 。从工厂运往销地的单位运费为Cij。 试决定应在哪些地方建厂,即满足各地需要,又使总
建设费用和总运输费用最省?
沈阳农业大学
第四章 整数规划与分配问题
冯大光制作
设: xij 表示从工厂运往销地的运量(i=1.2…m、j=1.2…n), 1 在Ai建厂 又设 Yi= (i=1.2…m) 0 不在Ai建厂 生产 建设 单 销地 1 2 能力 费用 厂址 价
min Z max( a j x1 j , a j x2 j ,, a j xmj )
j 1 j 1 j 1
m (j 1.2 n) xij 1 i 1 x 0 或 1 (i 1.2 m, j 1.2 n) ij
沈阳农业大学
冯大光制作
例3、机床分配问题 设有m台同类机床,要加工n种零件。已知各种零件 的加工时间分别为a1,a2,…an ,问如何分配,使各机床 的总加工任务相等,或者说尽可能平衡。
设: xij= 1 分配第i台机床加工第j种零件; (i=1.2…m, j=1.2…n) 0 相反。
于是,第i台机床加工 各种零件的总时间为:
B
B
Bn
A1 A2
销量
c11 c12 c1n b1
a1 f1 a2 f 2

运筹学04-整数规划-匈牙利解法精品PPT课件

运筹学04-整数规划-匈牙利解法精品PPT课件

6
5
4
7
10 13 16 17
10 13 16 17
分配问题与匈牙利法
4. 某事一定不能由某人做的指派问题
。 将该人做此事的效率系数取做足够大的数,可用M表示
例 分配甲、乙、丙、丁四个人去完成A、B、C、D、E五 项任务。每个人完成各项任务的时间如表所示。由于任务 数多于人数,考虑任务E必须完成,其他4项中可任选3项完 成。试确定最优分配方案,使完成任务的总时间最少。
mm
minf(x) aijxij i 1 j1
这样得到新效率矩阵的最优解,根据定理 1,他也是原问题的最优解。 (3)验证最优解的方法:设法用最少的直线数覆盖方阵中位于不同行、
不同列的零元素。 如果覆盖所有零元素的最少直线数等于m,则得到最优解,否则不是
第四章 整数规划
3、匈牙利解法的计算步骤:
最少时间为105。
补充例题---- 匈牙利法
匈牙利法主要解决指派问题, 指派问题是一种特殊的“0 1”规划。
例: 指派授课问题,现有A、B、C、D四门课程,需由甲、乙、 丙、丁四人讲授,并且规定: 每人只讲且必须讲1门课。 每门课必须且只需1人讲。 四人分别讲每门课的费用示于下表中:
匈牙利法 (2)
7
2
零件
1
1
1
1
机床 1 1 1 1
第四章 整数规划

管理运筹学第四章整数规划与指派问题

管理运筹学第四章整数规划与指派问题

原理
通过添加割平面约束条件,逐 步缩小问题的可行域,从而找 到整数最优解。
添加割平面
根据松弛问题的最优解,构造 一个割平面约束条件,添加到 原问题中。
迭代
重复添加割平面和求解新问题 的步骤,直到找到整数最优解 或确定无整数最优解为止。
匈牙利法原理及步骤
初始化
构造一个初始的可行指派方案。
寻找增广路径
高级特性
CPLEX支持多种高级特性,如灵敏度分析、割平面法、分 支定界等,可以帮助用户更深入地了解问题性质,并优化 求解过程。
Gurobi软件功能及使用方法
01
高效性能
02
灵活建模
03
可视化工具
Gurobi是一款优秀的数学优化求解器 ,具有出色的性能和稳定性。它采用 了先进的算法和技术,能够快速求解 复杂的线性规划和整数规划问题。
决策变量
整数规划中的决策变量部分 或全部取整数值。根据问题 的不同,决策变量可以是正 整数、非负整数或0-1变量。
整数规划问题分类
纯整数规划
所有决策变量都取整数值的规划问题称为纯整数规划。
混合整数规划
部分决策变量取整数值,部分决策变量取连续值的规划问题称为混合整数规划。
0-1整数规划
所有决策变量都只能取0或1的规划问题称为0-1整数规划。这类问题在实际中具有广泛应用,如投资决策 、生产计划、货物配送等问题中经常遇到。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
如果仅一部分变量限制为整数,则称为混合整数规划 (mixed integer linear programming)。
2、逻辑变量在数学模型中的作用
① m个约束条件中只有k个起作用
设m个约束条件可表为:
n
aij x j bi
j 1
i 1, 2, , m
定义
1 假定第i个约束条件不起作用 yi 0 假定第i个约束条件起作用
因此,求整数最优解问题,有必要另行研究。我们 称此问题为整数线性规划(integer linear programming), 简称ILP。
整数线性规划中如果所有的变量都限制为(非负)整数, 就称为纯整数线性规划(pure integer linear programming)或称为全整数线性规划(all integer linear programming);
j 1, 2, , n i 1, 2, , n
指派问题是运输问题的特例,即n=m, aj=bi=1。可用 运输问题的解法去求解。根据分配问题的特点,下面给
出匈牙利法。
匈牙利法思路:若能在[Cij]中找出n个位于不 同行不同列的0元素(称为独立0元素),则令 解矩阵[xij]中对应这n个独立0元素的元素取 值为1,其他元素取值为0,则它对应目标 函数zb=0是最小的。这就是以[Cij]为系数矩 阵分配问题的最优解,也得原问题的最优 解。
第4章 整数线性规划
• §1 整数规划的特点及作用 • §2 分配问题与匈牙利法 • §3 分枝定界法 • §4 割平面法 • §5 应用举例
§1 整数规划的特点及作用
1、整数规划的特点
线性规划问题的最优解通常是非整数,但对某些具 体问题,要求解必须是整数。例如,所求解是机器的台 数、完成工作人数等问题,非整数解就不合要求。将非 整数解通过“舍入化整”,不见得是可行解,或虽是可 行解,但不一定是最优解。
定理2 若矩阵A的元素可分成“0”与非“0”两部 分,则覆盖“0”元素的最少直线数等于位于不同 行不同列的“0”元素的最大个数。
证明:略。
下面以实例说明匈牙利法的解题步骤:
例2 有一份中文说明书,需译成英、日、德、俄四种文字, 现有甲、乙、丙、丁四人,他们将中文说明书翻译成不同 语种说明书所需时间如表4-2所示。问应指派何人去完成何 工作,使所需总时间最少?
表4-2
人员 甲 乙 丙 丁
任务
英文
2 10 9 7
日文
15 4 14 8
德文
13 14 16 11
俄文
4 15 13 9
第1步:找出效率矩阵每行的最小元素,并分别从每行 中减去。
第2步:再找出矩阵每列的最小元素,并分别从各列中 减去。
2 10 9 7 2
15
4
14
8
4
13 14 16 1111
(2) 从第一列开始,若该列只有一个0元素,就对这个元素打 上( )号,对打上( )号0元素所在行画一条直线。若该列没 有0元素或有两个以上0元素(已划去的不计在内),则转下 一列,依次进行到最后一列。
重复(1)、(2)两步,可能出现三种情况:
① 效率矩阵每行都有一个打( )号的0元素,此时,令对应 打( )号0元素的xij=1,得到最优解。
4
15 13
9
4
0 8 7 5
11 0 10 4
0 3 5 0
0
11
9
5
0050
0 8 2 5
11 0 5 4
2 3 0 0
0
11
4
5
第3步:若找出n个独立0元素,就以这些元素对应解矩阵[xij] 中的元素为1,余为0,得最优解。否则,按下列步骤解决
(1) 从第一行开始,若该行只有一个0元素,就对这个元素打 上( )号,对打上( )号0元素所在列画一条直线。若该行没 有0元素或有两个以上0元素(已划去的不计在内),则转下 一行,依次进行到最后一行。
设:用[cij]表示分配问题的效率矩阵,令
1 分配第i个人去完成第j项任务 xij 0 不分配第i个人去完成第j项任务
i 1, 2, , n; j 1, 2, , n
当问题要求极小化时,数学模型是:
nn
min Z
cij xij
i1 j1
n
xij 1
i 1 n
xij
1
j1 xij 0 或 1
或b2或或br
j 1
定义:
1 yi 0
假定约束右端项为 bi 否则
ห้องสมุดไป่ตู้
上述约束条件可表示为:
n
r
aij x j bi yi
j 1
i 1
y1 y2 yr 1
§2 分配问题与匈牙利法
2-1 问题的提出与数学模型 某单位需完成n项任务,恰好有n个人可承担这些任务。 由于每人的专长不同,完成任务不同,效率也不同。于 是产生应指派哪个人去完成哪项任务,使完成n项任务 的总效率最高(或所需总时间最小)。这类问题称为分配 问题或指派问题(assignment problem)。
令M为任意大的正数,则
n
aij x j bi Myi
j 1
y1 y2 ym m k
表明m个约束条件中有(m-k)个的右端项为( bi+M ),不起约 束作用,因而,只有k个约束条件起作用。
② 约束条件的右端项可能是r个值 b1, b2 ,中, b的r 某一个
即:
n
aij x j b1
n n
nn
z
bij xij
cij i v j xij
i1 j1
i1 j1
nn
n
n
n
n
cij xij i xij v j xij
i1 j1
i1 j1
j1 i1
nn
n
n
cij xij i v j
i1 j1
i1
j 1
第一项是[cij]解的目标函数 z,后两项是常数,因而,当 z 达到最小值时,相应地 z 也达到最小值。
定理1 若从分配问题效率矩阵[cij]的每一行元素中分别减去 (或加上)一个常数ui(称为该行的位势),从每一列分别减去 (或加上)一个常数vj(称为该列的位势),得到一个新效率矩阵 [bij],若其中bij=cij-ui-vj,则[bij]的最优解等价于[cij]的最优解
证明:将从[bij]中得到的解代入目标函数
② 打( )号的0元素个数小于m,但未被划去的0元素之间存 在闭回路,这时可顺着闭回路的走向,对每个间隔的0元 素打一( )号,然后对所有打( )号的0元素,或所在行,或 所在列画一条直线。
相关文档
最新文档