割平面法——精选推荐

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

3 割平面法
割平面法是通过生成一系列的平面割掉非整数部分来得到最优整数解的方法。

目前,割平面法有分数割平面法,原始割平面法,对偶整数割平面法,混合割平面法等。

我们介绍Gomory割平面法(纯整数规划割平面法)
用例子说明割平面法基本思想。

例5-8求下列问题:Max Z=2x 1+ 3x 2
s.t.2x 1+4x 2 ≤25
x 1≤8
2x 2 ≤10
x 1,x 2 ≥0,且取整数值
化成标准问题
Max Z=2x 1+ 3x 2
s.t.2x 1+4x 2 + x 3 =25
x 1+ x 4=8
2x 2 + x 5 =10
x j 0,且取整数值
松驰问题(P)
Max Z=2x 1+ 3x 2
s.t.2x 1+4x 2 + x 3 =25
x 1+ x 4=8
2x 2 + x 5 =10
x j 0
松驰问题(P)
用单纯形法求解得到最优解:
B(8,9/4)Z=22
(3/4)
但不是原问题(IP)的解,(IP)可行域是OABDE内的全部方格点组成。

B
D E O 1 2 3 4 5 6 7 A 8 9 10 11 1210
9
8
7
6
5
4
3
2
1
X 1X 2
引进割平面法l 1: x 1+ x 2=10割去非整数部分FBG l 2: x 1+2x 2=12 割去非整数部分HDGF
G
B F D E l 1O 1 2 3 4 5 6 7 A 8 9 10 11 1210987654321X 1
2
l 2
G B F H D E O 1 2 3 4 5 6 7 A 8 9 10 11 12
10987654321X 12
G
H E O 1 2 3 4 5 6 7 A 8 9 10 11 1210987654321X 12
形成新的凸可行域OAGHE (整点凸包),它的极点G (方格点)是原规划(IP )的最优解(8,2)Z=22。

约束条件:
l 1: x 1+ x 2≤10l 2: x 1+2x 2

12
称为割平面。

问题是如何寻找割平面?
松驰问题(P)
Max Z=2x 1+ 3x 2
s.t.2x 1+4x 2 + x 3 =25
x 1+ x 4=8
2x 2 + x 5 =10
x j 0
初始单纯形表
C 2 3 0 0 0

C B X B X1X2X3X4X5
0 X3 2 4 1 0 0 25
0 X4 1 00 1 0 8
0 X50 20 0 1 10
σ
C
2 3 0
C B X B X 1 X 2 X 3 X 4 X 5 b
Θ
2 X 1 1 0 0 1 0 8 0 X 5 0 0 -1/2 1 1 11/2 3
X 2 0 1 1/4 -1/20 9/4 σ
0 -3/4 -1/2
0 91/4
最终单纯形表:最优解
(8,9/4,0,0,11/2)Z =91/4
C
2 3 0
C B X B X 1 X 2 X 3 X 4 X 5 b
Θ
2 X 1 1 0 0 1 0 8 0 X 5 0 0 -1/2 1 1 11/2 3
X 2 0 1 1/4 -1/20 9/4 σ
0 -3/4 -1/2
0 91/4
X 2相应的方程:
x 2+(1/4)x 3 –(1/2) x 4 =9/4
x 2+(1/4)x 3 –(1/2) x 4 =9/4
把所有系数分解成整数和非负真分数之和。

x 2+(1/4)x 3 –x 4+(1/2) x 4 =2+1/4x 2–x 4 –2=(1/4)-(1/4)x 3 -(1/2) x 4 令(1/4)-(1/4)x 3 -(1/2) x 4 0(*)
加松驰变量:
(1/4)-(1/4)x -(1/2) x +x =0
(1/4)-(1/4)x 3 -(1/2) x 4 +x 6 =0-(1/4)x 3 -(1/2) x 4 +x 6 = -(1/4)插入原最终表中,继续计算。

C
2 3 0
C B X B X 1 X 2 X 3 X 4 X 5 X 6 b
Θ
2 X 1 1 0 0 1 0 0 8 0 X 5 0 0 -1/2 1 1 0 11/2
3 X 2 0 1 1/
4 -1/20 0 9/4 0
X 6 0 0 -1/4 -1/20 1 -1/4 σ
0 -3/4 -1/2
0 91/4
原始不可行,对偶可行,用对偶单纯形法计算
C 2 3 0 0 0 0

C B X B X1X2X3X4X5X6
2 X1 1 0 0 1 0 0 8
0 X50 0-1/2 1 1 0 11/2
3 X20 11/
4 -1/20 0 9/4
0 X60 0-1/4 -1/20 1 -1/4
σ0 0 -3/4 -1/20 0 91/4
第四行乘上(-2)
C 2 3 0 0 0 0

C B X B X1X2X3X4X5X6
2 X1 1 0 0 1 0 0 8
0 X50 0-1/2 1 1 0 11/2
3 X20 11/
4 -1/20 0 9/4
0 X60 01/2 1 0 -2 1/2
σ0 0 -3/4 -1/20 0 91/4
C 2 3 0 0 0
0 C B X B X 1 X 2 X 3 X 4 X 5 X 6 b
Θ
2 X 1 1 0 -1/2 0 0 2 15/2 0 X 5 0 0
-1
0 1 2
5
3 X 2 0 1 1/2 0 0 -1 5/2 0
X 4 0 0 1/2
1
0 -2 1/2 σ
0 -1/2 0
-1 45/2
第一、二行减去第四行,第三行加上第四行的1/2倍
C 2 3 0 0 0
0 C B X B X 1 X 2 X 3 X 4 X 5 X 6 b
Θ
2 X 1 1 0 -1/2 0 0 2 15/2 0 X 5 0 0
-1
0 1 2
5
3 X 2 0 1 1/2 0 0 -1 5/2 0
X 4 0 0 1/2
1
0 -2 1/2 σ
0 -1/2 0
-1 45/2
最优解(15/2,5/2,0,1/2,5)Z=45/2F 点
G
B F D
E l 1
O 1 2 3 4 5 6 7 A 8 9 10 11 12
10987654321
X 1
X 2
进行第二次切割:
C 2 3 0 0 0 0

C B X B X1X2X3X4X5X6
2 X1 1 0 -1/2 0 0 2 15/2
0 X50 0-1 0 1 2 5
3 X20 11/2 0 0 -1 5/2
0 X40 01/2 1 0 -2 1/2
σ0 0 -1/2 0 0 -1 45/2
C
2 3 0
C B X B X 1 X 2 X 3 X 4 X 5 X 6 b
Θ
2 X 1 1 0 -1/2 0 0 2 15/2 0 X 5 0 0
-1
0 1 2
5
3 X 2 0 1 1/2 0 0 -1 5/2 0
X 4 0 0 1/2
1
0 -2 1/2 σ
0 -1/2 0
-1 45/2
进行第二次切割:
X 1-(1/2)x 3 +2x 6 =15/2
X 1-(1/2)x 3 +2x 6 =15/2
X 1-x 3 +(1/2)x 3 +2x 6 -7= (1/2)X 1-x 3 +2x 6 -7= (1/2) -(1/2)x 3 令(1/2) -(1/2)x 3 ≤0 (**)
-(1/2)x 3 ≤-(1/2)加松驰变量:
-(1/2)x 3 + x 7= -(1/2)插入上表中,继续计算。

C 2 3 0 0 0 00
b
C B X B X1X2X3X4X5X6X7
2 X1 1 0 -1/2 0 0 2 0 15/2 0 X50 0-1 0 1 2 0 5
3 X20 11/2 0 0 -1 0 5/2 0 X40 01/2 1 0 -2 0 1/2 0 X70 0-1/2 0 0 0 1 -1/2
σ0 0 -1/2 0 0 -1 0 45/2
C 2 3 0 0 0 00
b
C B X B X1X2X3X4X5X6X7
2 X1 1 0 -1/2 0 0 2 0 15/2 0 X50 0-1 0 1 2 0 5
3 X20 11/2 0 0 -1 0 5/2 0 X40 01/2 1 0 -2 0 1/2 0 X70 0-1/2 0 0 0 1 -1/2
σ0 0 -1/2 0 0 -1 0 45/2
C 2 3 0 0 0 0 0 C B X B X 1 X 2 X 3 X 4 X 5 X 6 X 7 b 2 X 1 1 0 0 0 0 2 -1 8 0 X 5 0 0 0 0 1 2 -2 6 3 X 2 0 1 0 0 0 -1 1 2 0 X 4 0 0 0 1 0 -2 1 0 0 X 3 0 0 1 0 0 0 -2 1 σ
0 0 0 0 0 -1 -1
22
得到最优解(8,2,1,0,6,) Z=22 G 点
G
H
E O 1 2 3 4 5 6 7 A 8 9 10 11 12
10987654321
X 1
X 2
B
D
E O 1 2 3 4 5 6 7 A 8 9 10 11 12
10987654321
X 1
2求解过程:最优解B 点
G
B F D
E l 1
O 1 2 3 4 5 6 7 A 8 9 10 11 12
10987654321
X 1
2求解过程:最优解F 点
l 2
G
B F D
E l 1
O 1 2 3 4 5 6 7 A 8 9 10 11 12
10987654321
X 1
2求解过程:最优解G 点
(1/4)-(1/4)x 3 -(1/2) x 4 ≤0(*)
(1/2) -(1/2)x 3 ≤0 (**)根据2x 1+4x 2 + x 3 =25
x 1+ x 4=8x 3 =25-2x 1-4x 2x 4=8 -x 1
代入(*)(**)
x 1+ x
2
≤10
l 1
x 1+ 2x
2
≤12 l2
即为两个割平面。

Gomory定理:若可行域D非空有界,则经过有限次循环后,算法必将终止。

例5-9 求下列问题:Max Z= x 1+ x 2s.t. -x 1+x 2 ≤1
3x 1+x 2 ≤4x 1,x 2 ≥0,且取整数值
标准问题:Max Z= x 1+ x 2s.t. -x 1+x 2+ x 3=1
3x 1+x 2+ x 4=4x 1,x 2 ,x 3 ,x 4 0, 取整数值
初始单纯形表
C 1 1 0 0
b
C B X B X1X2X3X4
0 X3-1 1 1 0 1 0 X4 3 1 0 1 4
σ 1 1 0 0 0
C 1 1 0 0 C B X B X 1 X 2 X 3 X 4 b 1 X 1 1 0 -1/4 1/4 3/4 1 X 2 0 1 3/4 1/4 7/4 σ
0 0 -1/2 -1/2
5/2
最终单纯形表,最优解(3/4,7/4)
Z=5/2
C 1 1 0
0 C B X B X 1 X 2 X 3 X 4 b 1 X 1 1 0 -1/4 1/4 3/4 1 X 2 0 1
3/4 1/4 7/4 σ
0 0 -1/2 -1/2
5/2
X 1-(1/4)x 3 + (1/4) x 4 =3/4X 2 +(3/4)x 3 + (1/4) x 4 =7/4
X 1-x 3 = 3/4 -(3/4)x 3 -(1/4) x 4 X 2 -1= 3/4 -(3/4)x 3 -(1/4) x 4 令3/4 -(3/4)x 3 -(1/4) x 4 ≤0
-3x 3 -x 4 ≤-3-3x 3 -x 4 + x 5= -3
得到第一个切割方程,插入原最优表,继续计算。

C 1 1 0 0 0 C B X B X 1 X 2 X 3 X 4 X 5 b 1 X 1 1 0 -1/4 1/4 0 3/4 1 X 2 0 1 3/4 1/4 0 7/4 0 X 5 0 0 -3 -1 1 -3 σ
0 0 -1/2 -1/2 0
5/2
原始不可行,对偶可行,用对偶单纯形法计算
C 1 1 0 0 0
b
C B X B X1X2X3X4X5
1 X1 1 0 -1/4 1/4 0 3/4 1 X20 1 3/4 1/4 0 7/4 0 X50 0-3 -1 1 -3
σ0 0 -1/2 -1/2 0 5/2
第三行乘(-1/3)
b
C 1 1 0 0 0
C B X B X1X2X3X4X5
1 X1 1 0 -1/4 1/4 0 3/4 1 X20 1 3/4 1/4 0 7/4 0 X50 0 1 1/3 -1/3 1
σ0 0 -1/2 -1/2 0 5/2
第一行加第三行乘(1/4)
C 1 1 0 0 0
b
C B X B X1X2X3X4X5
1 X1 1 0 0 1/6 -1/1
2 1 1 X20 1 3/4 1/4 0 7/4 0 X50 0 1 1/
3 -1/3 1
σ0 0 -1/2 -1/20 5/2
第二行加第三行乘(-3/4)
C 1 1 0 0 0
b
C B X B X1X2X3X4X5
1 X1 1 0 0 1/6 1/1
2 1 1 X20 1 0 0 1/4 1 0 X30 0 1 1/
3 -1/3 1
σ0 0 0 -1/6-1/3 2
得到最优解(1,1,1) Z=2
b
C 1 1 0 0 0
C B X B X1X2X3X4X5
1 X1 1 0 0 1/6 1/1
2 1
1 X20 1 0 0 1/4 1
0 X30 0 1 1/3 -1/3 1
σ0 0 0 -1/6-1/3 2
X2
2
A
1
X1 O 1 2
标准问题:Max Z= x 1+ x 2s.t. -x 1+x 2+ x 3=1
3x 1+x 2+ x 4=4x 1,x 2 ,x 3 ,x 4 0, 取整数值
x 3=1 +x 1-x 2x 4=4 -3x 1-x 2代入
-3x 3 -x 4 ≤-3x 2

1。

相关文档
最新文档