第4章整数规划 - 中国人民大学出版社

Download Report

Transcript 第4章整数规划 - 中国人民大学出版社

管理运筹学-管理科学方法
谢家平 编著
中国人民大学出版社
第4 章
整数规划
Sub title
学习要点
 了解整数规划的含义及类型
 掌握分支定界的原理和步骤
 能够正确引入0-1变量建型
 熟悉整数规划的应用实例
2
OM:SM
第一节 整数规划问题
• 线性规划的决策变量取值可以是任意非负实数,但许多
实际问题中,只有当决策变量的取值为整数时才有意义
 例如,产品的件数、机器的台数、装货的车数、完成工作的人
数等,分数或小数解显然是不合理的。
• 要求全部或部分决策变量的取值为整数的线性规划问题,
称为整数规划(Integer Programming)。
 全部决策变量的取值都为整数,则称为全整数规划(All IP)
 仅要求部分决策变量的取值为整数,则称为混合整数规划
(Mixed IP)
 要求决策变量只取0或1值,则称0-1规划(0-1 Programming)
3
OM:SM
第一节 整数规划问题
一、纯整数规划
例:某企业利用材料和设备生产甲乙产品,其工艺消耗系
数和单台产品的获利能力如下表所示:
产品
甲
乙
现有量
A
2
1
9
B
5
7
35
单台利润
6
5
资源
问如何安排甲、乙两产品的产量,使利润为最大。
解:设x1为甲产品的台数,x2为乙产品的台数。
maxZ= 6x1 +5 x2
2x1 + x2 ≤9
5x1 +7 x2 ≤35
x1, x2 ≥0
x1, x2 取整数
4
OM:SM
第一节 整数规划问题
二、0-1规划
序号
1
2
3
4
5
6
7
物品
食品
氧气
冰镐
绳索
帐篷
相机
设备
重量
5
5
2
6
12
2
4
重要性系数
20
15
18
14
8
4
10
登山队员可携带最大重量为25公斤。问都带哪些物品的重要性最大。
解:对于每一种物品无非有两种状态,带或者不带,不妨设
0
xj  
1
不带此种物品
带此种物品
0-1规划的模型:
max Z  20 x1  15 x 2  18 x 3  14 x 4  8 x 5  4 x 6  10 x 7
5 x1  5 x 2  2 x 3  6 x 4  12 x 5  2 x 6  4 x 7  25

 x j  0或1 ( j  1,2,  7)
5
OM:SM
第一节 整数规划问题
Fi
三、混合整数规划
例:某产品有n个区域市场,各区域市场的需求量为 bj吨/月;现拟
在m个地点中选址建生产厂,一个地方最多只能建一家工厂;若选 i
地建厂,生产能力为 ai吨/月,其运营固定费用为F元/月;已知址i至j
区域市场的运价为cij元/吨。如何选址和安排调运,可使总费用最小?
解:选址建厂与否是个0-1型决策变量,
m
m
n
假设 yi =1,选择第 i 址建厂,
min Z   yi Fi    cij xij
i 1
i 1 j 1
yi=0,不选择第 i 址建厂;
 n
计划从 i 址至区域市场 j 的运输
i  1, 2,..., m
 xij  yi ai
运量xij为实数型决策变量。
 j 1
m


s.t.  xij  b j
 i 1
 xij  0


 yi  0,1
6
j  1, 2,..., n
OM:SM
第二节 整数规划求解
一、舍入化整法
 为了满足整数解的要求,自然想到“舍入”或“截尾”处理,以
得到与最优解相近的整数解。
 这样做除少数情况外,一般不可行,因为化整后的解有可能超出
了可行域,成为非可行解;或者虽是可行解,却不是最优解。
不考虑整数约束则是一个LP问题,称为原整数规划的松弛问题
对于例1的数学模型,不考虑整数约束的最优解:
x1 *=28/9, x2 * =25/9,Z * =293/9
舍入化整
x1 =3, x2 =3,Z =33,不满足约束条件5x1 +7 x2 ≤35,非可行解;
x1 =3, x2 =2,Z =28,满足约束条件,是可行解,但不是最优解;
x1 =4, x2 =1,Z =29,满足约束条件,才是最优解。
7
OM:SM
第二节 整数规划求解
二、穷举整数法
x2
5
2x1 + x2 =9
4
•
3
•
•
• (3,3)
(3
2
•
•
•
1
•
•
•
1
2
3
1
7
,2 )
9
9
•
4
5x1 +7 x2 =35
x1
对于决策变量少,可行的整数解又较少时,这种穷举法有时是
可行的,并且也是有效的。但对于大型的整数规划问题,可行的
整数解数量很多,用穷举法求解是不可能的。例如,指派问题 。
8
OM:SM
第二节 整数规划求解
三、分支定界法
1、分支定界法原理
• 不考虑整数限制,先求出相应线性规划 的最优解,
 若求得的最优解符合整数要求,则是原IP的最优解;
• 若不满足整数条件,则任选一个不满足整数条件的变量来
构造新的约束,在原可行域中剔除部分非整数解。
 依次在缩小的可行域中求解新构造的线性规划的最优解,
直到获得原整数规划的最优解。
• 定界的含义:
 IP是在相应的LP基础上增加整数约束
 IP的最优解不会优于相应LP的最优解
 对MaxZ,相应LP的Z*是原IP的上界
9
OM:SM
第二节 整数规划求解
三、分支定界法
2、分支定界法举例
用例4-1来说明分枝定界法的原理和步骤。
max Z  6 x1  5 x2
2 x1  x2  9
5 x  7 x  35
 1
2

 x1 , x2  0
 x1 , x2取整数
解:第一步,求相应松弛问题最优解
不考虑整数约束,求出相应松弛问题LP0的最优解:
1
7
5
x1  3 , x2  2 , Z 0  32
9
9
9
10
OM:SM
第二节 整数规划求解
三、分支定界法
2、分支定界法举例
第二步,定界过程。
这个解不满足整数约束,因此不是原整数规划的最优解。
因为这个问题是求最大化问题,前面说过整数规划是在线
性规划的基础上增加了整数约束,现在不考虑整数约束求得
这个解,其目标函值 Z是原整数规划目标函数的上界,
记 Z  32 5 。由于 x1  0, x2  0
必然满足整数约束,其
9
目标函数值为0,确定为现有下界,记 Z  0
。
11
OM:SM
第二节 整数规划求解
三、分支定界法
2、分支定界法举例
第三步,分枝过程,将不满足整数约束的变量x1进行分枝,
构造两个新的约束条件:
 1
 1
x1  3   3, x1  3   1  4
 9
 9
这样就把相应的线性规划的可行域分成两个部分
x2
5
5
2x1 + x2 =9
4
3
1 7
(3 , 2 )
9 9
2
1
5x1 +7 x2 =35
1
12
2
3
4
x1
OM:SM
第二节 整数规划求解
三、分支定界法



由于区域3  x1  4中不包含整数点,使可行域逐步的缩小了一部分,
因此分枝后不影响整数规划的最优解。
把新构造的两个约束分别并入原整数规划相应的线性规划中,构成:
LP1的数学模型:
LP2的数学模型:
max Z  6 x1  5 x2
max Z  6 x  5 x
1
2
2 x1  x2  9
5 x  7 x  35
 1
2

 x1  3
 x1 , x2  0
13
2、分支定界法举例
2 x1  x2  9
5 x  7 x  35
 1
2

 x1  4
 x1 , x2  0
对于问题LP1求解得:
对于问题LP2求解得:
6
2
x1  3, x2  2 , Z1  32
7
7
x1  4, x2  1, Z 2  29
OM:SM
第二节 整数规划求解
三、分支定界法
2、分支定界法举例
第四步,定界过程。
•
LP2的解满足整数约束,不必再分枝,它的目标函数值是29,大
于原有下界0,则新的下界为29,即Z  29
;现有上界为未分枝
子问题中目标函数最大值,即为Z  32 2
。LP1的解仍不满足整
7
数约束的要求,且现有上界大于现有下界,则应继续分枝。
第五步,分枝过程。
•
x2  2
•
14
6
7
x2  3 。
选LP1的 x2  2 作为分枝变量,构造以下两个新的约束条件:
或
这样就把LP1相应的线性规划的可行域分成两个部分,分别并入
LP1,构造两个新的线性规划LP3、LP4。
OM:SM
第二节 整数规划求解
三、分支定界法
2、分支定界法举例
LP3数学模型:
max Z  6 x1  5 x2
LP4数学模型:
max Z  6 x1  5 x2
2 x1  x2  9
5 x  7 x  35
2
 1
 x1  3
x  2
 2
 x1 , x2  0
2 x1  x2  9
5 x  7 x  35
2
 1
 x1  3
x  3
 2
 x1 , x2  0


求解线性规划LP3,得最优解: x1  3, x2  2, Z3  28

求解LP4得最优解: x1  2 4 , x2  3, Z 4  31 4
5
15
5
OM:SM
第二节 整数规划求解
三、分支定界法
2、分支定界法举例
第六步,定界过程。
LP3的解满足整数约束要求,不必再进行分枝,比较所有整数可
行解,选择目标函数值最大者为新的下界,即现有下界仍为为29,
4
而LP3不优于现有下界,应当剪枝;现有上界
Z ,上下界不
31
5
4
相等,说明介于
和整数解29之间还有可能存在其它解,应
Z  31
5
接着将上界所对应的线性规划问题再次LP4分枝。
第七步,分枝过程。
4
5
x1  3 。
选LP4的 x1  2 作为分枝变量,构造以下两个新的约束条件:
x1  2 或
这样又把LP4相应的线性规划的可行域分成两个部分,分别并入
LP4,构造两个新的线性规划LP5、LP6。
16
OM:SM
第二节 整数规划求解
三、分支定界法


LP5数学模型:
2、分支定界法举例
LP6数学模型:
max Z  6 x1  5 x2
max Z  6 x1  5 x2
2 x1  x2  9
5 x  7 x  35
2
 1
 x1  3

 x2  3
 x1  2

 x1 , x2  0
2 x1  x2  9
5 x  7 x  35
2
 1
 x1  3

 x2  3
 x1  3

 x1 , x2  0
求解线性规划LP5,得最优解: x1  2, x2  3 4 , Z3  29 6
7

17
7
求解LP6得最优解:无最优解
OM:SM
第二节 整数规划求解
三、分支定界法
2、分支定界法举例
第八步,定界过程。
LP6无最优解,应当剪枝;LP5的解不满足整数约束,所以下界
仍为 Z  29 (已经获得整数解中选择目标函数最大值);上
6
界为 Z  29 (没有分枝问题中选择目标函数最大值) 。
7
上下界不相等,说明还无法判定满足整数约束的LP2解
x1  4, x2  1, Z 2  29 是否就是整数规划的最优解,应接着将上界
所对应的线性规划问题再次LP5分枝。
第九步,分枝过程。
4
选LP5的 x2  3 作为分枝变量,构造以下两个新的约束条件:
7
或 x2  3 。 x2  4
这样又把LP5相应的线性规划的可行域分成两个部分,分别并
入LP5,构造两个新的线性规划LP7、LP8。
18
OM:SM
第二节 整数规划求解
三、分支定界法
2、分支定界法举例
• LP7数学模型:
LP8数学模型:
max Z  6 x1  5 x2
max Z  6 x1  5 x2
2 x1  x2  9
5 x  7 x  35
2
 1
 x1  3

 x2  3
x  2
 1
 x2  4

 x1 , x2  0
2 x1  x2  9
5 x  7 x  35
2
 1
 x1  3

 x2  3
x  2
 1
 x2  3

 x1 , x2  0
• 求解线性规划LP7,得最优解:x1  2, x2  3, Z 7  27;
2
5
• 求解LP8得最优解:x1  1 , x2  4, Z8  28
19
2
。
5
OM:SM
第二节 整数规划求解
三、分支定界法
2、分支定界法举例
第十步,定界过程。
LP7的最优解,满足整数约束,不必再分枝,但其整数解不
优于现有下界,所以下界仍为29;现有上界为未分枝子问题
中目标函数最大值,即为29。虽然LP8的解仍不满足整数约
2
束的要求,它的目标函数值28
小于现有下界29,应当进
5
行剪枝,则不再继续分枝。上界=下界=29,所以得到整数规
划问题的最优解就是LP2的最优解,即
x1*  4, x2*  1, Z *  29
将分枝过程用一个树形图来表示。图中的结点表示各线性规
划,结点旁边的数值表示相应线性规划的最优解和最优目标
函数值。
20
OM:SM
第二节 整数规划求解
LP0 :
三、分支定界法
x1  3
上界:
32
1
7
5
, x2  2 , Z  32
9
9
9
x1≤3
LP 2 :
x1  4, x2  1, Z  29
6
2
, Z  32
7
7
x2≤2
上界:
32
2
7
下界:
29
x2 ≥3
LP3:
LP 4:
x1  3, x2  2, Z  28
x1  2
4
4
, x2  3, Z  31
5
5
x1≤2
x1  2, x2  3
x2≤3
LP7:
x1  2, x2  3, Z  27
上界:
31
4
5
下界:
29
x1 ≥3
LP5:
21
下界:
0
x1 ≥4
LP1 :
x1  3, x2  2
5
9
LP 6:
4
6
, Z  29
7
7
无可行解
上界:
29
6
7
下界:
29
x2 ≥4
LP8:
2
2
x1  1 , x2  4, Z  28
5
5
上界:
29
下界:
29
OM:SM
第二节 整数规划求解
三、分支定界法
3、分支定界法步骤
(1)首先不考虑整数条件,求解整数规划相应的线性规划问题。
(2)定界过程。
(3)剪枝过程。在下述情况下剪除这些分枝:
①若某一子问题相应的线性规划问题无可行解;
②在分枝过程中,求解某一线性规划所得到的目
标函数值Z不优于现有下界。
(4)分枝过程。当有多个待求分枝时,应先选取目标函数值最优的
分枝继续进行分枝。选取一个不符合整数条件的变量 xi 作为分
*
枝变量,若 xi 的值是 bi ,构造两个新的约束条件:
xi  [bi* ]  1 或
xi  [bi* ] ,分别并入相应的数学模型中,构成两
个子问题。对任一个子问题,转步骤(1)。
22
OM:SM
第三节 整数规划应用
一、生产基地规划
例:某公司拟建设A、B两种类型的生产基地若干个,两种类型的生产基地
每个占地面积,所需经费,建成后生产能力及现有资源情况如下表所示。问
A、B类型基地各建设多少个,可使总生产能力最大?
A
B
资源限制
占地(万平米)
费用(万元)
2
5
5
4
13
24
生产能力(百件/年)
20
10
解:设A、B两类基地各建设
x1 , x2 个,则其模型为:
max Z  20 x1  10 x 2
23
2 x1  5 x 2  13

5 x1  4 x 2  24
 x , x  0且为整数
 1 2
OM:SM
第三节 整数规划应用
二、人员安排规划
某服务部门各时段(每2小时为一时段)需要的服务人数如表:
时段
1
2
3
4
5
6
7
8
服务员最少数目 10
8
9
11
13
8
5
3
按规定,服务员连续工作8小时
(4个时段)为一班。请安排服务员
的工作时间,使服务员总数最少.
解:设第j 时段开始时上班的服务
员人数为xj
第 j 时段来上班的服务员将在第j+3
时段结束时下班,故决策变量有
x1,x2,x3,x4,x5 。
24
min Z  x1  x2  x3  x4  x5
s.t.
 10
 x1
 x x
8
2
 1
 x1  x2  x3
9

x1  x2  x3  x4
 11

x2  x3  x4  x5  13



x3  x 4  x5  8

x 4  x5  5


x5  3

 x1 , x2 , x3 , x4 , x5  0,


OM:SM
 x1 , x2 , x3 , x4 , x5皆为整数
第三节 整数规划应用
三、项目投资选择
有600万元投资5个项目,收益如表,求利润最大的方案?
项目
投资额
项目收益
I
210
160
II
300
210
III
150
60
IV
130
80
V
260
180
约束条件
项目 I、II、III 中选 1 项
项目 III、IV 之中选 1 项
选项目 V 必先选项目 I
1
xj  
0
选中第j个项目投资
不 选中第j个项目投资
max Z  160 x1  210 x2  60 x3  80 x4  180 x5
25
210 x1  300 x2  150 x3  130 x4  260 x5  600

 x1  x2  x3  1

 x3  x 4  1
x  x
1
 5

 x1 , x2 , x3 , x4 , x5  0或1
OM:SM
第三节 整数规划应用
四、互斥约束问题
• 例如关于煤资源的限制,其约束条件为: 4x1  5x2  200
• 企业也可以考虑采用天然气进行加热处理:
3x1  5x2  180
• 这两个条件是互相排斥的。引入0—1变量y,令
1 采用煤加热约束起作用
y
0 采用天燃气加热约束起作用
• 互斥问题可由下述的条件来代替,其中M是充分大的数。
4 x1  5 x2  200  (1  y ) M
3x1  5 x2  180  yM
26
OM:SM
第三节 整数规划应用
五、租赁生产问题
服装公司租用生产线拟生产T恤、衬衫和裤子。
每年可用劳动力8200h,布料8800m2。
T恤 衬衫 裤子
假设:yj=1,要租用生产线j
3
2
6
劳动力
yi=0,不租用生产线j
0.8
1.1
1.5
布料
250 400
600
售价
第j 种服装生产量xj
100 180
300
可变成本
15
10
生产线租金(万) 20
max Z  150 x1  220 x 2  300 x 3  200000 y1  150000 y 2  100000 y 3
27
3x1  2 x 2  6 x 3  8200
0.8 x  1.1x  1.5 x  8800

1
2
3
s.t.
 x1 , x 2 , x 3  0, 且取整数
 y , y , y  0或1
 1 2 3
x1  M 1 y1
x2  M 2 y 2
x3  M 3 y 3
OM:SM
第三节 整数规划应用
六、任务指派问题
甲、乙、丙、丁四个人,A、B、C、D四项任务,不同的人做
不同的工作效率不同,如何指派不同的人去做不同的工作使效
率最高,即花费的总时间最短?
时间
人员
甲
乙
丙
丁
任务
A
B
C
D
3
6
2
9
5
8
5
2
8
5
8
5
4
4
5
2
解:对于这个问题,很容易建立一个数学模型的,
引入0-1变量 xij ,
当 xij =1时,表示任务指派人员去完成;
当 xij =0时,表示任务不派人员去完成。
28
OM:SM
第三节 整数规划应用
六、任务指派问题
min Z  3x11  5 x12  8 x13  4 x14  6 x21  8 x22  5 x23  4 x24
2 x31  5 x32  8 x33  5 x34  9 x41  2 x42  5 x43  2 x44
• 一项任务只由一个人完成,有如下约束
x11  x21  x31  x41  1
x12  x22  x32  x42  1
x13  x23  x33  x43  1
x14  x24  x34  x44  1
• 一人只能完成一项任务,有如下约束
x11  x12  x13  x14  1
x21  x22  x23  x24  1
x31  x32  x33  x34  1
x41  x42  x43  x44  1
29
OM:SM
第三节 整数规划应用
七、设施选址问题
• 拟定在2个地点中选址设立分销中心,执行产品的仓储和转运,
一个分销中心拟定设立一个仓库W1、W2。
• 若设立仓库W1,建设成本为10万元,最大库容为20万台,单位
产品的月库存成本为2元;
• 若设立仓库W2建造成本为20万元,最大库容为25万台,单位产
品的月库存成本为3元。
• 如何选址和安排调运,建造费用+运输费用+仓储费用为最小?
解:设从供货源Si到分销中心Wj的运输量为xij,从分销中心
到需求市场Rk的运输量为yjk。仓库选址决策引入0-1变量wj :
1 拟规划建立仓库 W j
wj  
0 不规划建立仓库 W j
30
OM:SM
第三节 整数规划应用
七、设施选址问题
min Z  2 x11  5 x12  4 x21  2 x22  3 y11  4 y12  5 y13  2 y21  2 y22  3 y23
10w1  20w2  2( x11  x12 )  3( x21  x22 )
• 供应能力平衡约束:
x11  x12  50000
x21  x22  150000
• 市场需求平衡约束:
y11  y21  50000
y12  y22  100000
y13  y23  50000
• 仓储能力限制约束:
x11  x12  200000w1
x21  x22  250000w2
• 分销中心不存留产品: x11  x21  y11  y12  y13
x12  x22  y21  y22  y23
• 所有变量大于等于零: x11 , x12 , x21 , x22 , y11, y12 , y13 , y21, y22 , y23  0
31
OM:SM
第三节 整数规划应用
八、面试顺序问题
有4名同学到一家公司参加三个阶段的面试:公司要求每个同
学都必须首先找公司秘书初试,然后到部门主管处复试,最后
到经理处参加面试,并不允许插队(即在任何一个阶段4名同学
的顺序是一样的)。
同学甲
同学乙
同学丙
同学丁
秘书初试
13
10
20
8
主管复试
15
20
16
10
经理面试
20
18
10
15
记 t ij 为第i名同学参加第j阶段面试需要的时间(已知),令 x ij
表示第i名同学参加第j阶段面试的开始时刻(不妨记早上8:00面
试开始为0时刻)(i=1,2,3;j=1,2,3),T为完成全部面试所花费的最
少时间。
32
OM:SM
第三节 整数规划应用
八、面试顺序问题
min T  max xi 3  t i 3 
i
第一,时间先后次序约束(每人只有参加完前一个阶段的面试后才能进
入下一个阶段):
xij  t ij  xi , j 1 , i  1,2,3,4,
j  1,2
第二,每个阶段j同一时间只能参加面试1名同学,用0-1变量 yik 表示第k
名同学是否排在第i名同学前面(1表示“是”,0表示“否”),则
xij  tij  xkj  Tyik
i, k  1, 2,3, 4; i  k
xkj  tkj  xij  T (1  yik )
j  1, 2,3;


可以将非线性的优化目标 min T  max xi 3  t i 3 
i
改写为如下线性优化目标:
33
min T
T  x13
T  x

23
s.t.
T  x33
T  x 43
 t13
 t 23
 t 33
 t 43
OM:SM