第七章 整数线性规划(ILP)

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

( P)
可先求其对应的线性规划问题
min z min CX AX b X 0
( P0 )
P P 如果 P0 中的最优解满足 中的整数要求,则以求得
的整
P 数最优解。如果P0 的最优解的分量不全是整数,就对 0 增
加一个约束条件(称它为割平面方程) ,新增加的割平面方 程将
三、整数线性规划问题的求解 ——分枝定界法 (Branch and Bound Method)
1)基本思想
分枝定界法求解整数规划问题的基本思想 是:通过分枝枚举来寻找最优解。实施的 作法是:首先不考虑对变量的整数要求, 求解相应的线性规划问题,如求得的最优 解不符合整数要求,则把原问题分解为两 部分,每一部分都增加新的约束条件以减 小原线性规划问题的可行域。通过不断地 分解,逐步逼近满足要求的最优解,直到 求得最优解。在这个过程中包括了"分枝" 和"定 界"两个关键步骤。
解,计算停止,否则转入下一步。
1
1
1
的最优
Step2、切割方程的确定 如果 B b 不全为整数,可设 x j i 是P0 问题中最优解为分数值的 一个基变量,由单纯形表的最终表得到
1
x j i b j i b ji x j ,
jR
(*)
R
是非基变量集合。
将 b ji 和 b ji 分解为整数部分与非负真分数部分之和,即
x j 0, j 1, 2 , n
。试探,求得
P z * 表示问题 其目标函数值, 并记为 , 以
z
得最优目标函数值;
z z* z 这时有
Step2、分枝并求解。 在非整数最优解中, 任选一个不满足整数约束条件的变 量 x j bj 以 [b j ] 表示小于b j 的最大整数,构造两个约束条件
b ji [b ji ] f ji , b ji [b ji ] f ji ,
0 f ji 1 0 f ji 1
其中 [bij ] 表示不超过bij 的最大整数部分。 将 bi 0 和 bij 代入到方程 (*) 中,则有
x ji [bi 0 ] [bij ] x j f ij x j f
(2)分枝定界法求解ILP问题 的一般步骤
根据分枝定界法的基本思想,人们归 纳总结出了分枝定界法求解整数规划 问题的一般步骤,这里以求目标函数 值最大化问题为例加以说明: 给出整数规划
max z maxCX AX b X 0 x j 整数(j 1,2, , n)
P0 的可行域割去一块,并且非整数的最优解恰好在这
P 一块中, 即非整数的最优解被割去而 的全部整数可行解保 留, 然后在解新的线性规划, 看其最优解是否满足整数要求, 就这样继续进行下去,直到得到最优解满足整数要求为止。
(2)割平面法求解ILP问题的一般步 骤
P Step1、 用单纯形法求解 ILP 问题(
x j [b j ], x j [b j ] 1
P 将这两个约束条件, 分别加入到原问题 中, 得到两个后继 线性规划问题,不考虑整数条件,求解这两个后继问题。
Step3、定界。 下界的修改:以每个后继问题为一个分枝标明求解的结 果, 从以符合整数条件的各分枝中, 找出最优目标函数值最大
3、旅行售货员问题(货郎担问题)
有 一 推 销 员 , 从 城 市v 0 出发,要遍访城市
v1 , v 2 , , v n 各一次, v vi 最后返回 0 , 已知从
v 到j
的旅费为 C ij ,问他应按怎样的次序访问这个城 市,才能使得总旅费最少?(设 C ij M , M 是足 够大的正数, i 0,1, , n
第7章
整数线性规划(ILP)
在前面讨论的线性规划问题中,最优解 可能是分数或小数,但对于某些具体问 题常要求解答是整数。我们称这样的线 性规划问题为整数线性规划问题 (Integer Linear Programming 简记为 ILP),整数规划是近20年来发展起来的 规划论的一个分支。
一、数线性规划问题的提出
)的相应的 LP 问题(松 也没有
P 弛问题 P0 ),如果P0 没有最优解,则计算停止,
最优解。 如果 P0 有最优解, 得到最终单纯形表,最优基为:
P B ( Pj1 , Pj2 , , Pjm ),B 的单纯形表为(bij ) , 0 的最优
P B 解为 B b ,如果B b 全为整数,则 b 也是
四、ILP问题的计算机求解
bj c
解:设投资决策变量为
1 xj 0
j 1,2,, n
投资第j个项目 不投资第j个项目
设获得的总利润为z,则上述问题的数 学模型为:
n max z c j x j j 1 n s.t. 0 b j x j B j 1 x j 0或1
显然上述是一个决策变量只能取0或1 的整数规划问题,这样的整数规划问 题称为0——1规划。决策变量取0或1 这个约束可以用一个非线性约束来代 替:
x j (1 x j ) 0, j 1,2,, n
某厂拟用集装箱托运甲乙 两种货物,每箱的体积、重量、 可获得的利润及托运所受的限 制入下表:
z 这为新的下界 ,即,求出一个新的整数最优解后,都要把新
的最优目标函数值 Z 值与原来的下界比较,若新的 Z 值更大, 则以它为新的下界, 在整个分枝定界法的求解过程中, 下界的 值不断增大。 上界的修改: 新的上界是未被分枝的问题中目标函数值中 最大的一个, 在整个分枝定界法的求解过程中, 上界的值不断 减小。

x j , j 1,2, 源自文库 , n
,目标函
z z z
*
分枝定界法可用于解纯整数规划问题,也可以 用于求混合整数规划问题。在20世纪60年代初由 Land和Dong提出经Dakin修正的,其优点是方法 灵活并且十分便于计算机求解,所以现在它已成 为求解整数规划的重要方法之一,目前已成功地 应用于求解整数规划问题、生产进度表问题、旅 行推销员问题、工厂选址问题、背包问题及分配 问题等。分枝定界法比穷举法优越,因为它仅在 一部分可行解的整数解中寻求最优解,计算量比 穷举法小,但若变量数目很大,其计算工作量也 是相当可观的。因此,它有时也需要与其他方法 (如切割平面法)配合使用,效率更高一些。
2、
货 物 甲 乙


3
每箱(米 ) 5 4
重 量 利 润 每箱 (百斤) 每箱(百元) 2 5 13 20 10
托运限 24 制
问两种货物各托运多少箱, 可使得利润最大?
解:设 x1 , x 2 分别为甲乙两种货物的托 运箱数,设获得的总利润为z,则上述 问题的数学模型为:
max z 20x1 10x 2 5 x1 4 x 2 24 2 x 5 x 13 1 2 x1 , x 2 0 x1 , x 2 整数
( P)
可先求其对应的线性规划问题
max z maxCX AX b X 0
( P0 )
Step1、求解相应的线性规划问题P0 ,并确定初始上、下 界。 即首先不考虑变量的整数要求,求解相应的线性规划问题。
P 若该线性规划问题无解,则整数规划问题
无解,停止计算;
若该线性规划问题P0 的最优解满足整数要求,即为原整数规划 问题 P 的最优解,计算完毕,若得到非整数最优解,即,最优 解中有非整数分量,其最优目标函数值是原整数规划问题的初 z 始上界,记为 ,而初始下界,可用观察法求得,取任意一个 明显的整数可行解,一般可取
整数规划中如果所有的变量都限制为 (非负)整数,就称为纯整数规划 (Pure ILP),如果仅一部分变量限制 为整数,就称为混合整数规划(Mixed ILP),整数规划的一个特例就是0—1 规划,他的变量仅取0或1。
整数线性规划问题举例
1、 投资决策问题 某部门在今后五年中可用于投资的资 金总额为B万元,有n(n 2)个可以投 资的项目,假定每个项目最多投资一 次,第j个项目所需投资资金为 b j 万元,获得的利润为 c j 万元, 问如何选择投资项目,才能使获得的 总利润最大。
jR jR
i0
现在提出变量(包括松弛变量)整数(非负)要求,即左边必须为 整数,右边 由于
0 f i0 1

jR
x ji [bi 0 ] [bij ] x j 是 0或正整数,
因此,
f
jR
ij
xj 0
f
jR
ij
x j f i0
这就是一个切割方程。
Step3 、 将 切 割 平 面 方 程 加 入 松 弛 变 量 ,
f i 0 f ij x j s i , s i 0 ,
jR
然后加入到 Step1 所得单纯形表的最后一行。
Step4、用对偶单纯形法迭代求解,若求得的最优解为整数则计 算停止,以求得最优整数解,或者对偶问题是无界的也停止计 算,表明原 ILP 问题不可行。否则,返回 Step2. Gomory 的切割法自 1958 年提出后,引起人们广泛的注意, 但至今完全用它解题仍是少数,原因是经常遇到收敛很慢的情 形。但若和其他方法(分枝定界法)配合使用也是有效的。
解:对每一对城市设一个变量xij ,令
1, 从v 直接进入v i j xij 0, 其他情况
则上述问题的数学模型为:
n minz C ij x ij i, j 0 n x 1, j 0,1, , n ij i 0 n x 1, i 0,1, , n ij j 0 u u nx n 1, 1 i j n j ij i x ij 0或1, i, j 0,1, , n 为实数, i 1,2, , n u i ,
第一组约束条件表示各个城市恰好进 入一次,第二约束条件表示各个城市 恰好离开一次,第三组约束条件用以 防止出现对于一个互不连通的旅行路 线圈。 显然这是一个混合整数规划问题。
二、整数线性规划问题的求解 ——割平面法
(1) 基本思想 给出整数规划
min z min CX AX b X 0 x j 整数(j 1,2, , n)
Step4、比较与剪枝。 求解第一分枝时,出现下列三种情形之一者, 均应剪枝。(1)该枝无可行解;(2)该枝已得到整 数最优解;(3)该枝得到非整数最优解,且目标函
z 数值 Z<
如果,得到非整数最优解且对应的目标函数值 Z> ,返回 Step2 继续分枝。直到 此时,得到整数最优解 数值。
z
z z * z
相关文档
最新文档