- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
引入0-1变量: f (x) -M(1-y) g (x) My (*)
22
f (x) -M(1-y)
(*)
g (x) My
如果f (x)<0成立,则y不能为1,否则与(*)矛 盾; 所以 y=0, g (x) 0 成立。 如果 f (x) 0(即f (x)<0不成立) 则y的取值已无关紧要,因为y取任何值(*)总 成立,所以y的取值不由(*)控制,因此g (x) 的取值不受任何限制。
P1
1 P2 0 1 2 3 4 x1
41
两个子问题: (P1)Max Z=4x1+3x2
s.t. 3x1+4x2 12
4x1+2x2 9 x1,x2 0 , x1 1 ,整数 用单纯形法可解得相应的(P1)的最 优解(1,9/4) Z=10(3/4)
42
(P2)Max Z=4x1+3x2 s.t. 3x1+4x2 12
39
例: 用分枝定界法求解:
Max Z=4x1+3x2
s.t. 3x1+4x2 12
4x1+2x2 9
x1,x2 0 整数 用单纯形法可解得相应的松驰问题的 最优解(6/5,21/10)Z=111/10为各分 枝的上界。
40
x2 4 3 2
分枝:x1 1,x1 2
(6/5,21/10)
此时 f(x) a f(x) -a 是矛盾约束。
15
(5) (6)
f(x) a(6)
引入一个整数变量来处理
f(x)+a My
M是足够大整数,y 是0-1变量
注意:对 |f(x)| a (a>0) 不必引入0-1变 量,因为f(x) a和f(x) -a并不矛盾。
4x1+2x2 9
x1,x2 0 , x1 2 ,整数 用单纯形法可解得相应的(P2)的最 优解(2,1/2) Z=9(1/2)
43
再对(P1) x1 1 (1,9/4)分枝:
x2 4
(P3) x2 2
P4
(P4) x2 3
3
2
P1
1 P3 0 1
P2 2
3
4
x1
44
(P1)两个子问题:
20
逻辑关系约束
比较典型的逻辑关系是 if-then关系,也 称if-then约束,这类逻辑关系一般涉及 两个约束,如果第一个约束成立,则第 二个约束也必须成立,否则,如果第一 个约束不成立,则第二个约束也可以不 成立。可以描述如下:
21
如果f (x)<0成立,则g (x) 0必须成立;
如果f (x)<0不成立,则对g (x)无限制。
而 2x1+3x2 8-M 自然成立,从而是多余的;
当y=1, 2x1+3x2 8 成立,
而 x1+ x2 2+M 自然成立,从而是多余的。
18
多中选一的约束
例如:模型希望在下列n个约束中,只能 有一个约束有效, fi(x) 0 i=1,2,….n. 引入 n个0-1变量yi , i=1,2,…n,则上式可改 写为: fi(x) M(1-yi)
M是足够大的整数,y 是0-1变量
14
f(x)-5 0
f(x) 0
(1)
(2)
-f(x)+5 M(1-y)
f(x) My
(3)
(4)
当y=1时,(1)(3)无差别,(4)式显然成立;
当y=0时,(2)(4)无差别,(3)式显然成立。
以上方法可以处理绝对值形式的约束
f(x) a (a>0)
5 D 4 3 I(2,4) P3
2
1 O
P1
P2
P5 P4 5 6 7 A8 9
B(9.2,2.4)
1
2
3
4
10
x1
29
X1 2 X2 3 X1 6 P
P1 P2 P3
X2
4
X1
3
X1
X2 2
P4
7
X2
3
P5
30
假如放弃整数要求后,用单纯形法 求得最优解,恰好满足整数性要求, 则此解也是原整数规划的最优解。 以上内容中描述了目前解整数规划问 题的两种基本途径。
3
例:一登山队员做登山准备,他需 要携带的物品有:食品,氧气, 冰镐,绳索,帐篷,照相机和通 讯设备,每种物品的重要性系数 和重量如下,假定登山队员可携 带最大重量为25公斤。问:如何 装备?
4
序号
1
2
3
4
5
6
7
物品 食品 氧气 冰镐 绳索 帐篷 相机 设备 重量 重要 系数 5 20 5 15 2 18 6 14 12 8 2 4 4 10
1 2
5 D 4 3
I(2,4)
B(9.2,2.4)
2
1 O 1 2 3 4 5 6 7 A8 9 10
x1
27
x2 5 D 4 3
假如能求出可行域的“整点凸包”(包含所有 整点的最小多边形OEFGHIJ),则可在此凸 包上求线性规划的解,即为原问题的解。但求 “整点凸包”十分困难。
I(2,4)
J
6
例 背包问题( Knapsack Problem) 一个旅行者,为了准备旅行的必须用品,要 在背包内装一些最有用的东西,但有个限 制,最多只能装b公斤的物品,而每件物品只 能整个携带,这样旅行者给每件物品规定 了一个“价值”以表示其有用的程度,如 果共有n件物品,第j件物品aj公斤,其价值为 cj.问题变成:在携带的物品总重量不超过b 公斤条件下,携带哪些物品,可使总价值最 大?
25
例 求下列问题: Max Z=3x1+13x2 s.t. 2x1+9x2 40
11x1-8x2 82
x1,x2 0,且取整数值
26
Max Z=3x1+13x2 放弃整数要求后,最优解B(9.2,2.4) 400=58.8, s.t. 2x1+9x2 Z 而原整数规划最优解I(2,4) Z0=58,实际上B附 11x1-8x2 82 近四个整点(9,2)(10,2)(9,3)(10,3)都不是原规划 x2 最优解。 x ,x 0,且取整数值
I H B(9.2,2.4) G F 1 2 3 4 5 6 E 7 A8 9 10 x1
28
2
1
O
假如把可行域分解成五个互不相交的子问题 P1 P2 P3 P4 P5之和, P3 P5的定义域都是空集,而 x2 放弃整数要求后P1最优解I(2,4),Z1=58 P2最优 解(6,3),Z2=57 P4最优解(98/11,2),Z4=52(8/11)
23
解法概述
当人们开始接触整数规划问题时,常会有 如下两种初始想法: 因为可行方案数目有限,因此经过穷举 法一一比较后,总能求出最好方案,例如, 背包问题充其量有2n种方式,实际上这种 方法是不可行。
设想计算机每秒能比较1000000个方式,那 么比较完260种方式,大约需要360世纪。
24
先放弃变量的整数性要求,解一个 线性规划问题,然后用“四舍五入” 法取整数解,这种方法,只有在变量 的取值很大时,才有成功的可能性, 而当变量的取值较小时,特别是0-1规 划时,往往不能成功。
35
若松驰问题有最优解,但其各分量不 全是整数,则这个解不是原整数规划的 最优解,转下一步。
36
若松驰问题有最优解,但其各分量不全 是整数,则这个解不是原整数规划的最 优解,转下一步。
从不满足整数条件的基变量中任选 一 个xl进行分枝,它必须满足xl [xl ] 或 xl [xl ] +1中的一个,把这两个约束条件加 进原问题中,形成两个互不相容的子问 题(两分法)。
(P3)Max Z=4x1+3x2
s.t. 3x1+4x2 12
4x1+2x2 9
x1,x2 0 ,x1 1, x2 2整数
用单纯形法可解得相应的(P3)的最 优解(1,2) Z=10 为上界
45
(P1)两个子问题:
(P4)Max Z=4x1+3x2
s.t. 3x1+4x2 12 4x1+2x2 9 x1,x2 0 ,x1 1, x2 3整数 用单纯形法可解得相应的(P4)的最 优解(0,3) Z=9
7
解:如果令xj=1表示携带物品j,xj=0表 示不携带物品j,则问题表示成0-1规划: Max Z = Σcjxj s.t. Σajxj b xj=0 或1
8
例 用集装箱托运货物 货物 m3/箱 百斤/箱 百元/箱 问:甲乙货物托运多少 甲 5 2 20 箱,使总利润最大?
乙 限制 4 24 5 13 10
y1+ y2 + … + yn=1
19
如果希望有k个约束有效,则:
fi(x) M(1-yi), y1+ y2 + … + yn= k
如果希望至多有k个约束成立,则: fi(x) M(1-yi), y1+ y2 + … + yn k 如果希望至少有k个约束成立,则: fi(x) M(1-yi), y1+ y2 + … + yn k
37
定界:把满足整数条件各分枝的最优 目标函数值作为上(下)界,用它来判 断分枝是保留还是剪枝。
38
定界:把满足整数条件各分枝的最优 目标函数值作为上(下)界,用它来判 断分枝是保留还是剪枝。 剪枝:把那些子问题的最优值与界值 比较,凡不优或不能更优的分枝全剪掉, 直到每个分枝都查清为止。