第5章-整数规划(割平面法)

合集下载

第五章第3节 割平面解法

第五章第3节  割平面解法
x i + ∑ N ik x k − N i = f i − ∑ f ik x k
k k
(3)
(3) 现在提出变量(包括松弛变量)为整数的 条件(当然还有非负的条件). • 这时,上式由左边看必须是整数,但由右边 看,因为0<fi<1,所以不能为正,即
f i − ∑ f ik x k ≤ 0
k
(4)
由于 x1、x2 的值已都是整数,解题已完成。
做为换入变量,再按原单纯形法进行迭代,得表5 将x3做为换入变量,再按原单纯形法进行迭代,得表5-3。 表5-3
cj CB XB 1 x1 1 x2 0 x3 cj-zj b 1 1 1 2
1 x1 1 0 0 0
1 x2 0 1 0 0
0 x3 0 0 1 0
这就是一个切割方程。
• 由(5-4)式,(5-6)式,(5-7)式可知: • ① 切割方程(5-7)式真正进行了切割,至 少把非整数最优解这一点割掉了。 • ② 没有割掉整数解,这是因为相应的线性 规划的任意整数可行解都满足(5-7)式的缘 故。

求解下面整数规划
• max z=x1+x2 -x1+x2≤1 3x1+x2≤4 x1,x2≥0 x1,x2 整数
求一个切割方程的步骤: 1 求一个切割方程的步骤: (1) 令xi是相应线性规划最优解中为分数值的一个基 变量,由单纯形表的最终表得到
x i + ∑ a ik x k = b i
k
(1)
(2) 将bi和αik都分解成整数部分N与非负真 分数f之和,即 • bi=Ni+fi,其中0<fi<1 • αik=Nik+fik,其中0≤fik<1 (2) • 而N表示不超过b的最大整数。代入(1)式得

整数规划.

整数规划.

5.2 整数规划的解题思路
1. 当人们开始接触整数规划问题时,常常会 有如下两种初始想法: 想法一:因为可行方案的数目常常是有限 的,因此,从理论上讲,经过一一比较后, 总能求得最好方案。例如背包问题充其量有 2n-1种方式。但是这种穷尽法是行不通的。假 设一台计算机每秒比较一百万个方式,那么 要比较20!种方式,大约需要800年,要比较 260种方式,需要360多个世纪。
可行域=空集
max f = x1 + 4 x2 s.t. - 2 x1 + 3x2 ≤3 x1 + 2 x2 ≤8 x2 ≤2 x1 , x2 ≥0 解得 x1 = 4, x2 = 2
2. 分枝定界法的最优解步骤:
第一步:首先将整数规划问题当作一般的线性规划问 题处理,如果得到的解是整数解,则停止,否则转入第 二步; 第二步:增加整数约束,分枝,对分枝用线性规划求 解。如果得到的最优整数解的目标函数比其他分枝的最 优整数解的目标函数值都要好,则停止,否则转第三步; 第三步:(Ⅰ)若未获整数解的目标函数值比同层的 分枝要差,则暂停分枝。 (Ⅱ)如果其他枝的整数解目标函数值比这样要好,此 枝再也不用再分枝。 (Ⅲ)如果其他分枝的整数解目标函数比这枝要差,回 过头来继续对此枝分枝,希望找到一个使目标函数值有 所改善的整数解,转回第二步。
原始结点
图示:
上述说法可用图表示
max f = x1 + 4 x2 - 2 x1 + 3x2 ≤3
s.t.
x1 + 2 x2 ≤8
x1 , x2 ≥0 解 x1 = 2.5, x2 = 2.7
分枝 1 分枝 2
x2 ≥3
结点 1
x2 ≤2
原始结点
max f = x1 + 4 x2 s.t. x + 2 x ≤8 1 2 - 2 x1 + 3x2 ≤3 x2 ≥3 x1 , x2 ≥0

割平面法

割平面法

31/7=4+3/7 于是,(1)式变为
4 1 3 x4 ( 1 ) x3 (3 ) x5 4 7 7 7

将所有整数项放在等式的左边,非整数值项放 在右边,得
3 4 1 x4 x3 3x5 4 x3 x5 7 7 7

⑶式左边是一个整数值,右边是一个小于1的 数。由于是等式,所以,右边应该是一个小于 或等于0的整数值,即
二、构造割平面约束的方法
在松弛问题的最优表中,设 b的分量bko不是 整数,将其分成整数与非负分数之和,即
bko Nko fko, 其中N ko为不超过bko的最大整数, fko为非负真分数; bko 所在行中的每一个非基 变量xj的系数分成整数与非负分数两部分:
ako , j Nko , j fko , j
1、求出松弛问题的最优解,若全部变量为整数解, 停止计算;否则转2。
2、构造割平面方程 •构造方法 割平面约束具备两个性质: ⑴ 已获得的非整数最优解不满足该线性约束, 从而保证在以后的解中不可能再出现。
⑵ 所有的整数解皆满足该线性约束,从而保 证整数规划问题的最优解始终都保留在每次所 形成的、新的线性规划问题的可行域中。 我们通过下面的例子来说明构造这种线性约束 的思路。
第二节 解纯整数规划的割平面法
一、 割平面方法的基本思想和步骤
二、构造割平面约束的方法
三、示例
一、 割平面方法的基本思想和步骤
•基本思想: 在IP问题的松弛问题中依次引进线性约束(称 Gomory约束或割平面),使问题的可行域逐步缩 小,所割去的区域仅包含问题的部分非整数解;当 规划问题的最优解恰好位于缩小的可行域的一个顶 点时,算法结束。 •求解步骤

第五章整数规划

第五章整数规划

第五章 整数规划主要内容:1、分枝定界法; 2、割平面法; 3、0-1型整数规划; 4、指派问题。

重点与难点:分枝定界法和割平面法的原理、求解方法,0-1型规划模型的建立及求解步骤,用匈牙利法求解指派问题的方法和技巧。

要 求:理解本章内容,熟练掌握求解整数规划的方法和步骤,能够运用这些方法解决实际问题。

§1 问题的提出要求变量取为整数的线性规划问题,称为整数规则问题(简称IP )。

如果所有的变量都要求为(非负)整数,称之为纯整数规划或全整数规划;如果仅一部分变量要求为整数,称为混合整数规划。

例1 求解下列整数规划问题211020m ax x x z +=⎪⎪⎩⎪⎪⎨⎧≥≤+≤+为整数21212121,0,13522445x x x x x x x x 如果不考虑整数约束,就是一个线性规划问题(称这样的问题为原问题相应的线性规划问题),很容易求得最优解为:96m ax ,0,8.421===z x x 。

用图解法将结果表示于图中画“+”号的点都是可行的整数解,为满足要求,将等值线向原点方向移动,当第一次遇到“+”号点(1,421==x x )时得最优解为1,421==x x ,最优值为z=90。

由上例可看出,用枚举法是容易想到的,但常常得到最优解比较困难,尤其是遇到变量的取值更多时,就更困难了。

下面介绍几种常用解法。

§2 分枝定界法分枝定界法可用于解纯整数或混合的整数规划问题。

基本思路:设有最大化的整数规划问题A ,与之相应的线性规划问题B ,从解B 开始,若其最优解不符合A 的整数条件,那么B 的最优值必是A 的最优值*z的上界,记为z ;而A 的任意可行解的目标函数值是*z的一个下界z ,采取将B 的可行域分枝的方法,逐步减少z 和增大z ,最终求得*z 。

现举例说明: 例2 求解A219040m ax x x z +=⎪⎪⎩⎪⎪⎨⎧≥≤+≤+为整数21212121,0,702075679x x x x x x x x 解:先不考虑条件⑤,即解相应的线性规划B (①--④),得最优解=1x 4.81, =2x 1.82,①② ③ ④ ⑤=0z 356(见下图)。

割平面法-经典

割平面法-经典
解纯整数规划的割平面法
割平面法的基础仍然是用解LP的方法去解整数规划问题. 其基本的步骤是: (1) 把约束条件中所有的系数整数化; (2) 不考虑决策变量的整数约束条件, 增加线性约束条件 (cutting plane), 使得原可行域中切割掉一部分,这部分只 包含非整数部分,但没有切割掉任何整数可行解;
1 3 x3 x4 0 4 4 4 3 即 3x 3 x 4 3
上式就是所要求的一个切割方程(割平面).
引入松驰变量x5, 从而可得到一等式约束条件,将所得等
式约束加入到原标准化的松驰问题之中, 得到如下新的 松驰问题.
max s .t . z x1 x 2 x1 x 2 x 3 3x 1 x 2 x4 1 4
k k
(3) 由变量(包括松驰变量)的非负整数条件, 从而可得
f i - f ik x k 0
k
上式即为所要求的切割方程 割平面法是Gomory在1958年提出的, 当时引起了人们广 泛注意, 但至今完全用它解决实际问题仍是少数, 因为其 收敛性很慢. 但若下其它方法(如分枝定界法)配合使用,
3x 3 x 4 x 5 3 x1 , x 2 , x 3 , x4 , x5 0
将所得等式约束加入到原标准化的松驰问题的最优单纯
形表之中,得 cj 1 1 0 0 0
CB
1
XB
b
x1
1
x2
0
x3
-1/4
x4 x5
1/4 0
x1 3/4
1
0
x2 7/4
x5 -3
0
0 0
1
0 0
(3) 求解上面的LP问题,若所得的最优解为整数, 则该解也

运筹学第5章:整数规划

运筹学第5章:整数规划
1 xj 0 对项目j投资 对项目j不投资 (j 1, ,n) 2,
则问题可表示为:
max z c j x j
j 1 n
n a j x j B j 1 x1 x2 0 s.t. x3 x4 1 x x x 2 7 5 6 x j 0或1 j 1,2, , n 【例5-3】工厂A1和A2生产某种物资,由于该种物资供不应 求,故需要再建一家工厂,相应的建厂方案有A3和A4两个。这 种物资的需求地有B1、B2、B3、B4四个。各工厂年生产能力、各 地年需求量、各厂至各需求地的单位物资运费cij(j=1,2,3,4) 见表5-2。
三、割平面法的算法步骤
步骤1:将约束条件系数及右端项化为整数,用单纯形法求 解整数规划问题(ILP)的松弛问题(LP)。设得到最优基B,相应 的基最优解为X*。 步骤2:判别X*的所有分量是否全为整数?如是,则X*即为 (ILP)的最优解,算法终止;若否,则取X*中分数最大的分 量 x * ,引入割平面(5.7)。
表5-2
Ai cij A1 A2 Bj B1 2 8 B2 9 3 B3 3 5 B4 4 7 生产能力 (千吨/年) 400 600
A3
A4 需求量(千吨/年)
7
4 350
6
5 400
1
2 30025 150200200工厂A3或A4开工后,每年的生产费用估计分别为1200万元或 1500万元。现要决定应该建设工厂A3还是A4,才能使今后每年 的总费用(即全部物资运费和新工厂生产费用之和)最少。
一般来说,整数线性规划可分为以下几种类型:
1. 纯整数线性规划(Pure Integer Linear Programming): 指全部决策变量都必须取整数值的整数线性规划,也称为全整 数规划。 2. 混合整数线性规划(Mixed Integer Linear Programming):指决策变量中一部分必须取整数值,而另一部 分可以不取整数值的整数线性规划。 3. 0-1整数线性规划(Zero-one Integer Linear Programming):指决策变量只能取0或1两个值的整数线性规划。

运筹学第五章 整数规划ppt课件

运筹学第五章  整数规划ppt课件
,求解过程停止。 3.B有最优解,但不符合A的整数条件,记其目标函数值为z1。
第二步:确定A的最优目标函数值z*的上下界,其上界即为 z ,再用观察法
找到A的一个整数可行解,求其目标函数值作为z*的下界,记为z。
第三步:判断 z 是否等于z 。若相等,则整数规划最优解即为其目标函
数值等于z的A的那个整数可行解;否则进行第四步。
2020/3/2
11
•割平面法,即通过添加约束条件,逐步切割可行区域的 边角余料,让其整数解逐步的露到边界或顶点上来,只要 整数解能曝露到顶点上来,则就可以利用单纯形法求出来。
•关键是通过添加什么样的约束条件,既能让整数解往边 界露,同时又不要切去整数解,这个条件就是Gomory约束 条件。 •Gomory约束只是割去线性规划可行域的一部分,保留了 全部整数解。
2020/3/2
7
7
第二节 割平面法
2x1 2x2 11
13/4,5/2
松弛问题 x1+x2≤5 第二次切割
2020/3/2
第一次切割 4,1
8
设纯整数规划
n
m a x Z c j x j j 1

s
.t
.

n j 1
aij x j

bi

x
j

0且




j

1,L
引入约束 xi ≤ M yi ,i =1,2,3,M充分大,以保证yi=0 xi=0 这样我们可建立如下的数学模型:
Max z = 4x1 + 5x2 + 6x3 - 100y1 - 150y2 - 200y3 s.t. 2x1 + 4x2 + 8x3 ≤ 500

求解整数规划常用的方法有分枝定界法和割平面法

求解整数规划常用的方法有分枝定界法和割平面法
2
寻找割平面方程
(1)由单纯形最终表得到决策变量非整数解方程,设 1 x1 ai k xk bi 为
k
其中bi是基变量的非整数解。 (2)将aik和bi分解为整数N和正真分数f 两部分之和
a ik N ik f ik , bi N ni f bi
2
将(2)代入(1)中,然后将整数置于方程左边,分 数置于方程右变,即
xi
N
k
ik x k
N bi f bi
f
k
ik xk
0
(3)得割平面方程
f bi
f
k
ik x k
0
3
整数线性规划模型的求解——分枝定界法
基本思想 通过分枝枚举来寻找最优解。首先不考虑对变 量的整数要求,求解相应的线性规划模型,如求得 最优解不符合整数要求,则把原模型分解为两部分, 每一部分都增加新的约束条件以减少相应线性规划 模型的可行域。通过不断分解,逐步逼近满足要求 的整数最优解,在这个过程中包括了“分枝”和 “定界”两个关键步骤。
1 1 1 0
利用这一性质,可以使原系数矩阵(cij)变换成含有
很多0元素的新系数矩阵
11 c ij ,而最优解保持不变。
匈牙利法是针对目标要求极小化问题提出的 基本原理:为了实现目标极小,在系数矩阵 元素cij≥0条件下,如果能使矩阵具有一组处于 不同行不同列的零元素cij’=0,画上圈符号 “◎”,表示对应该元素的决策变量xij=1,未画 圈元素对应的决策变量xij=0,那么目标的数值 z’=0为最小,这样的组合解x就是最优解。所以 匈牙利法又称画圈法。 画圈法的关键是如何实现系数矩阵具有一组 处于不同行又不同列的0元素(独立零),并保 证所画的圈的个数等于矩阵的阶数。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

割平面法
求解整数规划问题:
Max Z=3x1+2x2
2x1+3x214
4x1+2x218
x1,x20,且为整数
解:首先,将原问题的数学模型标准化,这里标准化有两层含义:(1)将不等式转化为等式约束,(2)将整数规划中所有非整数系数全部转化为整数,以便于构造切割平面。

从而有:
Max Z=3x1+2x2
2x1+3x2+x3=14
2x1+x2+x4=9
x1,x20,且为整数
利用单纯形法求解,得到最优单纯形表,见表1:
表1
C B X B b 3 2 0 0
j
最优解为:x1=13/4, x2=5/2, Z=59/4
根据上表,写出非整数规划的约束方程,如:x2+1/2x3-1/2x4=5/2 (1)
将该方程中所有变量的系数及右端常数项均改写成“整数与非负真分数之和”的形式,即:
(1+0)x2+(0+1/2)x3+(-1+1/2)x4=2+1/2
把整数及带有整数系数的变量移到方程左
边,分数及带有分数系数的变量称到方程右边,得:
x2 - x4-2 =1/2-(1/2x3+1/2x4) (2)
由于原数学模型已经“标准化”,因此,在整数最优解中,x2和x4也必须取整数值,所以(2)式左端必为整数或零,因而其右端也必须是整数。

又因为x3,x40,所以必有:
1/2-(1/2x3+1/2x4)<1
由于(2)式右端必为整数,于是有:
1/2-(1/2x3+1/2x4)0 (3)

x3+x4 1 (4)
这就是考虑整数约束的一个割平面约束方程,它是用非基变量表示的,如果用基变量来表示割平面约束方程,则有:
2x1+2x211 (5)
从图1中可以看出,(5)式所表示的割平面约束仅割去线性规划可行域中不包含整数可行解的部分区域,使点E,2)成为可行域的一个极点。

0123456789100
1
2
3
4
5
6
7
8
9
2x1+3x2=142x1+x2=92x1+2x2=11
A
D
E
C
B
图1
在(3)式中加入松弛变量x 5,得: -1/2x 3-1/2x 4+x 5=-1/2 (6) 将(6)式增添到问题的约束条件中,得到新的整数规划问题: Max Z=3x 1+2x 2 2x 1+3x 2+x 3=14 2x 1+x 2+x 4=9
-1/2x 3-1/2x 4+x 5=-1/2
x i 0,且为整数,i=1,2,…,5
该问题的求解可以在表1中加入(6)式,然后运用对偶单纯形法求出最优解。

具体计算过程见表2:
表2
C B X B b 3 2 0 0 0
X1X2X3X4X5
2 X25/2 0 1 1/2 -1/2 0
3 X113/
4 1 0 -1/4 3/4 0
0 X5-1/2 0 0 [-1/2] -1/2 1
59/4 0 0 1/4 5/4 0 j
2 X2 2 0 1 0 -1 1
3 X17/2 1 0 0 1 -1/2
0 X3 1 0 0 1 1 -2
58/4 0 0 0 1 1/2 j
由此得最优解为:x1=7/2, x2=2, z=58/4
该最优解仍不满足整数约束条件,因而需进行第二次切割。

为此,从表2中抄下非整数解x1的约束方程为:
x1+x4-1/2x5 = 7/2
按整数、分数归并原则写成:
x1+x4-x5-3 = 1/2-1/2x50 (7)
这就是一个新的割平面方程,用基变量来表示,得:
x1+x2 5 (8)
在(7)中加入松弛变量x6,得:
-1/2x5+x6=-1/2 (9)
将(9)式增添到前一个问题的约束条件中去,得到又一个新的整数规划问题,对它求解可以在表2中加入(7)式,然后运用对偶单纯形法求出最优解。

具体计算过程见表3:
表3
C B X B b 3 2 0 0 0 0
X1X2X3X4X5X6
2 X2 2 0 1 0 -1 1 0
3 X17/2 1 0 0 1 -1/2 0
0 X5 1 0 0 1 1 -2 0
0 X6-1/2 0 0 0 0 [-1/2] 1
58/4 0 0 0 1 1/2 0 j
2 X2 1 0 1 0 -1 0 2
3 X1
4 1 0 0 1 0 -1
0 X3 3 0 0 1 1 0 -4
0 X5 1 0 0 0 0 1 -2
14 0 0 0 1 0 1
j
由此得最优解为:x1=4, x2=1,z=14。

该最优解符合整数条件,因此也是原整数规划问题的最优解。

从图1中可以看出,由(8)式表示的割平面约束,不仅割去线性规划可行域中剩下的不含整数解域,而且使最优整数解x1=4, x2=1(即图2中的G点),成为新的线性规划可行域的一个极点。

图2。

相关文档
最新文档