第4章 整数规划
目标规划整数规划第三、四、五章
销地 产地 A1 A2 4
B1
B2
B3 2
B4
B5
产量
3
11 3 6 4 3
12 7 5
5
3 2 5 1 4
6
4 2 9 2 5
4
0 8 0 5 0 9
A3
销量
当产大于销时,即
a b
i 1 i j 1 m
m
n
j
加入假想销地(假想仓库),销量为
a b
i 1 i j 1
n
(二)对偶变量法(位势法) 1.基本原理
检验数的计算: 一般问题:σj = C j- CBB-1 Pj = Cj - Y Pj 运输问题: σij = C ij- CBB-1 Pij = Cij - Y Pij = Cij - (u1,u2, …,um, v1, v2, …,vn) Pij = Cij - ( ui+ vj ) 当xij 为基变量时, σij = Cij - ( ui+ vj )=0 由此,任选一个对偶变量为0,可求出其余所有 的ui, vj 。 再根据σij = Cij - ( ui+ vj )求出所有非基变量的检验 数。
A 1 A2 A3
销量
B1 B2 B3 B4
4 12
产量
16 10 2 3 9 10 8 2 8 14 5 11 8 6 22 8 14 12 14 48
10
4
6
11
z 0 8 2 14 5 10 4 2 3 6 11 8 6 246 优点:就近供应,即优先供应运价小的业务。
4. 计划利润不少于48元。
- , P d + , P d -} Min{ P1 d16 maxZ= x1 +8 2 2x2 3 3 5x1 + 10x2 60 • 原材料使用不得超过限额 x1 - 2x2 +d1- -d1+ =0 • 产品II产量要求必须考虑 - -d + =36 4x + 4 x +d 1 2 2 2 • 设备工时问题其次考虑
运筹学-4-整数规划
若松弛问题的最优解满足整数要求,得到整数规划的最优解,否则转下 一步;
2)分支与定界: 任意选一个非整数解的变量xi,在松弛问题中加上约束: xi≤[xi] 和 xi≥[xi]+1 组成两个新的松弛问题,称为分枝。新的松弛问题具有特征:当原问题 是求最大值时,目标值是分枝问题的上界;当原问题是求最小值时,目 标值是分枝问题的下界。 检查所有分枝的解及目标函数值,若某分枝的解是整数并且目标函数 值大于(max)等于其它分枝的目标值,则将其它分枝剪去不再计算, 若还存在非整数解并且目标值大于(max)整数解的目标值,需要继续分枝, 再检查,直到得到最优解。
x1 , x2 , xn 0
实际问题要求xi为整数! 如机器的台数,人数等
第四章 整数规划
例: 胜利家具厂生产桌子和椅子两种家具。桌 子售价50元/个,椅子售价30元/个,生产桌子 和椅子需要木工和油漆工两种工种。生产一个 桌子需要木工4个小时,油漆工2小时。生产一 个椅子需要木工3个小时,油漆工1小时。该厂 每月可用木工工时为120小时,油漆工工时为 50小时。问该厂如何组织生产才能使每月的销 售收入最大?
第四章 整数规划
min z cij xij [1200 y3 1500 y4 ]
i 1 j 1 4 4
x11 x21 x31 x41 350 x12 x22 x32 x42 400 x13 x23 x33 x43 300 x14 x24 x34 x44 150 x x x x 400 11 12 13 14 s .t x21 x22 x23 x24 600 x31 x32 x33 x34 200 y3 x41 x42 x43 x44 200 y4 x 0 ( i , j 1, 2, 3, 4) ij yi 0,1 ( i 1, 2)
第4章 整数规划
第4章 整数规划判断:用分枝定界法求解一个极大化的整数规划问题,任何一个可行解的目标函数值是该问题目标函数值的下界;指派问题数学模型的形式同运输问题十分相似,故也可以用表上作用法求解;效率矩阵的任一行(或列)减去(或加上)任一常数,指派问题最优解不会受到影响; 匈牙利法只能用于平衡分配问题;对于极大化问题,匈牙利法不能直接求解。
整数规划问题解的目标函数值优于其相应的线性规划问题的解的目标函数。
用割平面法求解整数规划问题,构造的割平面有可能切去一些不属于最优解的整数解。
用分枝定界法求解一个极大化的整数规划问题时,当得到多于一个可行解时,通常可任取其中一个作为下界值,在进行比较剪枝。
分配问题的每个元素都加上同一个常数k ,并不会影响最优分配方案。
分配问题的每个元素都乘上同一个常数k ,并不会影响最优分配方案。
分配问题域运输问题的数学模型结构形式十分相似,故也可以用表上作业法求解。
隐枚举法也可以用来求解分配问题简答试述分枝定界法求解问题的主要思想。
试述隐枚举法的步骤。
试讲述割平面方法的基本原理. 试例举三种应该剪枝的情况。
计算题分枝定界法用分枝定界法求解下列整数规划问题12max Z x x =+1212129511414123,x x x x x x +≤-+≤≥0且为整数用分枝定界法求解下列整数规划问题12max 32Z x x =+121212231429,x x x x x x +≤+≤≥0且为整数用分枝定界法求解下列整数规划问题12max 2010Z x x =+1232312312324434323,,x x x x x x x x x x x ++≤≤+≤≥---0且为整数用分枝定界法求解下列整数规划问题12max 79Z x x =+121212136735,x x x x x x x +≤+≤≥-0,且为整数用分枝定界法求解下列整数规划问题123max 33Z x x x =++123231231231324432323,,,x x x x x x x x x x x x x ++≤≤+≤≥---0,且为整数用分枝定界法解下列整数规划问题:1212121212232478188..3219,0MaxZ x x x x x x s t x x x x =+-+≤⎧⎪+≤⎪⎨+≤⎪⎪≥⎩且为整数用分枝定界法解下列整数规划问题1212121212250..6221,0MaxZ x x x x x x s t x x x x =++≤⎧⎪-+≤⎪⎨+≤⎪⎪≥⎩且为整数用分枝定界法解下列整数规划问题12312121225231050..7228,0,MaxZ x x x x x s t x x x x x =-+-+≤⎧⎪-≤⎨⎪≥⎩为整数用分枝定界法解下列整数规划问题12312341234345272222..0,1,2,3,4,5,j MaxZ x x x x x x x x x x x s t x j x x =-+-⎧-+-+=⎪⎪⎪-++=⎨⎪≥=⎪⎪⎩为整数用分枝定界法求解下列整数规划模型12max 23z x x =+121257354936x x x x +≤+≤12,0x x ≥且为整数有如下整数规划问题12max z x x =+12129511414123x x x x +≤-+≤12,0x x ≥且为整数试用分枝定界法求其最优解。
第4章整数规划——指派问题
4 指派问题
解: 可行解{c12=0, c24 =0, c31 =0, c43 =0}是一个独立零元素组, c12=0, c24 =0, c31 =0, c43 =0分别称 为独立零元素; {c12=0, c23 =0, c31 =0, c44 =0}也 是一个独立零元素组,而{c14=0, c23 =0, c31 =0, c44 =0}就不是独立零元素 组.
4 指派问题
1)对新矩阵中所有不含“*”元素的行打√ ; 2)对打√的行中,所有打×零元素所在的列打√; 3)对所有打√列中标记“*”元素所在行打√; 4)重复上述2),3)步,直到不能进一步打√为止; 5)对未打√的每一行划一直线,对已打√的每一列划一纵线, 即得到覆盖当前0元素的最少直线数。 第四步:对矩阵未被直线覆盖过的元素中找最小元素,将打 √行的各元素减去这个最小元素,将打√列的各元素加上这个最小 元素(以避免打√行中出现负元素),这样就增加了零元素的个 数,返回第二步。 【例5】 求解例1和例2
X (2)
都是指派问题的最优解。
4 指派问题
4.3 指派问题的求解 指派问题既是一类特殊的整数规划问题,又是特殊的运输问 题,因此可以用多种相应的解法来求解,然而这些解法都没有充 分利用指派问题的特殊性质,有效地减少计算量,直到1955年库 恩(W. W. Kuhn)提出的匈牙利法才有效地解决了指派问题。 匈牙利法的理论基础 定义2 独立零元素组 在效率矩阵中,有一组在不同行不同 列的零元素,称为独立零元素组,其每个元素称为独立零元素。 5 0 2 0 2 3 0 0 C 【例4】 已知效率矩阵 0 5 6 7 4 8 0 0 求其独立零元素组。
0 , 不 指 派 Ai 承 建 商 店 B j x ij ( i , j 1, 2 ,3, 4 ,5 ) 1, 指 派 Ai 承 建 商 店 B j
第四章 整数规划
√
√
27
17
结论: 结论: 最优解为x 最优解为 1=1、x2=1、x3=0,即对Ⅰ和Ⅱ两个 、 、 ,即对Ⅰ 项目投资,利润最大为27万元 万元。 项目投资,利润最大为 万元。
18
例2:用完全枚举法求解 型整数规划 :用完全枚举法求解0-1型整数规划
max f = 3x1 − 2 x2 + 5 x3 x1 + 2 x2 − x3 ≤ 2 x + 4x + x ≤ 4 2 3 1 x1 + x2 ≤ 3 4x + x ≤ 6 1 3 x1 , x2 , x3 = 0或1
① ② ③ ④
16
点
过滤条件 f≥16 × √ × √ f≥26 × √ √ f≥27 √
约束条件 ① ② ③ ④
f值 值
(0,0,0) (0,0,1) (0,1,0) (0,1,1) (1,0,0) (1,0,1) (1,1,0) (1,1,1)
√ √
√ √
√ √
√ √
16 26
√ √ ×
× √
35
min
第二步: 第二步:检验
行检验 列检验
0 * 8 11 0 * 2 3 0 11
运筹第四章整数规划与分配问题
i=1,2
则问题可以表示为
4 用以表示含固定费用的函数 总费用
K j + c j x j ( x j > 0) Cj(xj ) = ( x j = 0) 0
则上述条件可以表示成
r n ∑ aij x j ≤ ∑ b; y + ... + y = 1 m 2 1
3、 两组条件中满足其中的一组 、
若 x1 ≤ 4, 则 x2 ≥ 1
若 x1 > 4, 则 x2 ≤ 3
定义
1 第i组条件不起作用 yi = 0 第i 组 条件 起作 用
0 0 X = 1 0 0 0 1 1 0 0 0 0 0 0 1 0
用矩阵形式表示为: 用矩阵形式表示为: 解矩阵
一般分配问题 设有n项任务 需有n个人去完成 项任务, 个人去完成, 设有 项任务,需有 个人去完成,每个人只能完成一 项任务,每项任务只能由一个人去完成,设第i人完成 项任务,每项任务只能由一个人去完成,设第 人完成 项任务需要的时间是a 第j 项任务需要的时间是 ij , 问如何分配才能使完成任 务的总时间最少? 务的总时间最少? 设
2. 整数规划问题的特征与性质
特征—变 特征 变量整数性要求 来源 问题本身的要求 引入的逻辑变量的需要 性质—可 性质—可行域是离散集合
3. 整数规划的分类
纯整数规划 要求全部决策变量的取值都为整数, 要求全部决策变量的取值都为整数 则称为纯整数规划 (All IP); ; 混合整数规划 仅要求部分决策变量的取值为整数,则称为混合整数规 仅要求部分决策变量的取值为整数, 划(Mixed IP); ; 0-1整数规划 整数规划 要求决策变量只能取0或 值 则称为0-1规划 规划(0-1 要求决策变量只能取 或1值,则称为 规划 Programming)。 。
第4章 整数规划
整数规划
整数规划问题的提出
整数规划模型与一般的线性规划模型 的区别仅在于: 的区别仅在于:整数规划的变量要求 部分的或全部的为整数。例如: 部分的或全部的为整数。例如:
m Z = x + x2 ax 1 14 1 x +9x2 ≤ 51 −6x +3x2 ≤1 1 x , x ≥ 0且 整 为 数 1 2
(纯整数规划问题) 纯整数规划问题)
解:设xi为第i天开始上班的人数: 为第i天开始上班的人数: Min: Min:z=x1+x2+x3+x4+x5+x6+x7 s.t. x1 +x4+x5+x6+x7≥17 +x5+x6+x7≥13 x1+x2 x1+x2+x3 +x6+x7≥15 x1+x2+x3+x4+ +x7≥19 x1+x2+x3+x4+x5 ≥14 x2+x3+x4+x5+x6 ≥16 x3+x4+x5+x6+x7≥11 xi≥0 ( i=1,2,…,7) i=1,2,…,7)
例:某市6 例:某市6个区,希望设 置最少消防站以便节省 费用。条件:
必须保证在城区任何地方发 生火警时,消防车能在15 生火警时,消防车能在15分 15分 钟之内赶到现场。各区之间 消防车行驶的时间见右表。
请确定设站方案。
布点问题的数学模型: 0-1规划 布点问题的数学模型:
设0−1为决策变量,当表示i地区设站,表示i 为决策变量,当表示i地区设站,表示i 地区不设站。这样根据消防车15分钟赶到现 地区不设站。这样根据消防车15分钟赶到现 场的限制,可得到如下模型
运筹学基础及应用第4章-整数规划与分配问题
整数规划的特点及应用
解:对每个投资项目都有被选择和不被选择两种可能,因此 分别用0和1表示,令xj表示第j个项目的决策选择,记为:
j投 资 1 对 项 目 xj ( j 1,2,..., n) j不 投 资 0 对 项 目
投资问题可以表示为:
max z
c
j 1
n
j
xj
n a j x j B j 1 x2 x1 s .t x 3 x4 1 x5 x6 x7 2 ) x j 0或者1 (j 1, 2, L n
B1 B2 B3 B4 年生产能力
A1
A2 A3 A4 年需求量
2
8 7 4 350
9
3 6 5 400
3
5 1 2 300
4
7 2 5 150
400
600 200 200
工厂A3或A4开工后,每年的生产费用估计分别为1200万或1500万元。 现要决定应该建设工厂A3还是A4,才能使今后每年的总费用最少。
0-1型整数线性规划:决策变量只能取值0或1的整数线性 规划。
整数规划的特点及应用
整数规划的典型例子
例4.1 工厂A1和A2生产某种物资。由于该种物资供不应求,故需要 再建一家工厂。相应的建厂方案有A3和A4两个。这种物资的需求地 有B1,B2,B3,B4四个。各工厂年生产能力、各地年需求量、各厂至各 需求地的单位物资运费cij,见下表:
例4.3 设整数规划问题如下
max Z x1 x 2 14x1 9 x 2 51 6 x1 3 x 2 1 x , x 0且 为 整 数 1 2
首先不考虑整数约束,得到线性规划问题(一般称为松弛问 题)。
运筹学基础及应用_(第四章_整数规划与分配问题)
(d) 8
(e)1号、
4号、6号、9号开采时不能超过两个,试表示上
述约束条件。
Next
基础教研室
(a)当x8=1 当x8=0 ∴ x8 x6
x6=1,x6≠0 x6=1,x6=0
(b)当x5 =1 当x5 =0 ∴ x5 + x3 1
x3=0, x3 ≠1 x3=0, x3 =1
基础教研室
【例1】求下述整数规划的最优解
Max z= 3x1 + 2x2 st . 2x1 + 3x2 14 x1 + 0.5x2 4.5 x10,x20,且为整数
基础教研室
x2 x1+0.5x2=4.5
4
(3.25, 2.5) 2 2x1+3x2=14
2
4
6
x1
3x1+2x2=6
二、整数规划的求解方法
1 -选择电网供应 设 y1 0 -不选择电网供应
10 d j x j f (1 y1 ) M j 1 10 0.3d j x j p (1 y2 ) M j 1 y1 y2 1 y1 , y2 0或1
基础教研室
【例3】投资决策问题 某公司准备1000万元资金在10个地点中选择若干个建立 工厂(工厂名称用地点名来命名),有关数据如下:
由于各个工厂之间有配套和协作关系,因此必须满足条件: 1、 建工厂1就必须同时建工厂2; 2、 若建工厂2就不允许建工厂3; 3、 工厂4和工厂5至少建一个; 4、 工厂6,7,8恰好建2个; 5、 工厂8,9,10最多建2个; 6、 建工厂4或者建工厂6,就不能建工厂8,反过来也一样; 7、 条件2,3,5最多满足2个。 问选择哪几个地点建厂最有利? Next
运筹学 第4章 整数规划与分配问题
匈牙利法思路:若能在 [Cij] 中找出 n 个位于
不同行不同列的0元素(称为独立0元素),则
令解矩阵[xij]中对应这n个独立0元素的元素
取值为 1 ,其他元素取值为 0 ,则它对应目
标函数zb=0是最小的。这就是以[Cij]为系数
矩阵分配问题的最优解,也得原问题的最
优解。
定理1 若从分配问题效率矩阵[cij]的每一行元素中分别减去 (或加上)一个常数ui(称为该行的位势),从每一列分别减去 (或加上)一个常数vj(称为该列的位势),得到一个新效率矩阵 [bij],若其中bij=cij-ui-vj,则[bij]的最优解等价于[cij]的最优解
第1步:找出效率矩阵每行的最小元素,并分别从每行
中减去。
第2步:再找出矩阵每列的最小元素,并分别从各列中 减去。
2 10 9 7 2 15 4 14 8 4 13 14 16 11 11 4 15 13 9 4
0 8 7 5 11 0 10 4 0 3 5 0 0 11 9 5
表明m个约束条件中有(m-k)个的右端项为( bi+M ),不起约 束作用,因而,只有k个约束条件起作用。 ② 约束条件的右端项可能是r个值b1 , b2 ,, br 中的某一个 即: 定义:
n
aij x j b1 或b2或或br
j 1
1 假定约束右端项为 bi yi 否则 0
现用下例来说明: max z=40x1+90x2 9x1+7x2≤56 7x1+20x2≤70 x1,x2≥0 x1,x2整数 ① ② ③ ④ ⑤
解:先不考虑条件⑤,即解相应的线性规划B,①~④(见图5-2), 得最优解x1=4.81,x2=1.82,z0=356
运筹学 整数规划( Integer Programming )
检查所有分枝的解及目标函数值,若某分枝的解是整数并且目标函数 值大于(max)等于其它分枝的目标值,则将其它分枝剪去不再计算,若 还存在非整数解并且目标值大于(max)整数解的目标值,需要继续分枝, 再检查,直到得到最优解。
割平面法的内涵:
Page 18
通过找适当的割平面,使得切割后最终得到这样的可行域( 不一定一次性得到), 它的一个有整数坐标的顶点恰好是 问题的最优解.
-Gomory割平面法
例: 求解
max z x1 x2 s.t. x1 x2 1
3x1 x2 4 x1 , x2 0, 整 数
1 x1 3/4 1 0 -1/4 1/4 0
1 x2 7/4 0 1 3/4 1/4 0
0 x5 -3 0 0 -3 -1 1
0 0 -1/2 -1/2 0
由对偶单纯形法, x5为换出变量, x3为换入变量, 得Page 29
cj CB XB b 1 x1 1 1 x2 1 0 x3 1
1 100 0 x1 x2 x3 x4 x5 1 0 0 1/3 1/12 0 1 0 0 1/4 0 0 1 -1 -1/3 0 0 0 -1/2 -1/6
收敛性很慢. 但若下其它方法(如分枝定界法)配合使用,
也是有效的.
分支定界法
Page 33
分支定界法的解题步骤:
1)求整数规划的松弛问题最优解; 若松弛问题的最优解满足整数要求,得到整数规划的最优解,否则转下
一步; 2)分支与定界:
任意选一个非整数解的变量xi,在松弛问题中加上约束: xi≤[xi] 和 xi≥[xi]+1
第四章整数规划与分配问题习题
1
0
X1 32/7 1 0 0 1/7 -1/7 0
X3 11/7 0 0 1 1/7 -22/7 0
S1 -4/7 0 0 0 [-1/7] -6/7 1
Cj—Zj
0 0 0 -1
-8
0
X2 3
0
00
1
0
X1 4 1 0 0 0
-1 1
X3 1 0 0 1 0
-4 1
X4 4 Cj—Zj
0001 0000
解:
(1)
LP(1)
1 x1 = 39
7 x2 = 29
5 Z1 = 329
z = 32 5 9
z = 28
x1≤3 LP(4) x1 = 3 x2 = 2 z4 = 28
剪去
x2≤2
x2≥3
LP(2) 1
x1 = 32 x2 = 2
z2 = 31
LP(3) 2
x1 = 25
x2 = 3 4
z3= 315
x3* = (1,2)T , z * = 3 由于表 3(b)中一非基变量x5的检验数为 0,故让x5进量,用单纯形法迭代一次,得另一最优解
(见表 4):
x3* = (2,1)T , z * = 3
8、 用完全枚举法求解 0—1 规划问题.
max z = 3x1 − 2x2 + 5x3 s.t. x1 + 2x2 − x3 ≤ 2
变换效益矩阵:
⎛0 1 2 3⎞⎛0 ⎞ ⎛0 1 2 3⎞ ⎛ⓞ Ø 2 3 ⎞
Ci'j
=
⎜ ⎜ ⎜
7 8
6 9
5 9
4 8
⎟ ⎟ ⎟
⎜ ⎜ ⎜
−4 −8
第4章线性整数规划指派问题
指派问题的数学模型
3、指派问题的数学模型是一个特殊的运输问题数学模型, 各个产地的产量和各个销地的销量均为1,可以采用运 输问题的表上作业法求解。但由于该问题的特殊性,用 表上作业法求解时效率很低。
4、指派问题的数学模型是一个0-1线性规划问题,可以用上 一节介绍的隐枚举法求解。但由于指派问题的变量和约 束条件都较多,采用隐枚举法求解计算量很大。
⑵ 任务数多于资源数。这时可引入若干个虚拟的资 源,并令效应矩阵中虚拟资源对应的行全为0元素。 这种情况下,实际上将有某些任务分配不到资源 (某些任务无人承担)。
9
指派问题的数学模型
匈牙利法是求解指派问题的有效算法。它是匈牙利数 学家柯尼格(Konig)根据指派问题的独特性质而提出的 一种巧妙而有效的算法,故称匈牙利法。
i1
xij
0,1 i
1~n,j
1~n
6
指派问题的数学模型
讨论: 1、问题中的效应系数cij可以有多种不同的实际意义,例
如可以为时间、价值、资源消耗量或工作效率等。根 据效应系数的具体含义,指派问题的目标函数可以取 最小值,也可以取最大值,但最大化问题可以转化为 最小化问题求解。 2、指派问题的数学模型是一个线性规划数学模型,约束 系数矩阵的元素不是1就是0,且约束方程的右端常数 均为1,其基本可行解必满足0-1变量的取值要求,故 可以直接用单纯形法求解,但求解工作量较大。
i1 j1
i 1 j1
nn
n
n
n
n
cij xij ui xij v j xij
5
指派问题的数学模型
则数学模型为:
nn
min S
运筹学整数规划
2 0 5 0 3
0 0 7 0 6
2 0 2 4 5
3。重复。依行,不考虑划去的0,只有一个0的 对0打圈,划去列 2
1
5 2 0 9 0
0 3 10 8 6
2 0 5 0 3
0 0 7 0 6
2 0 2 4 5
3
4。重复。依列,不考虑划去的0,只有一个0的 对0打圈,划去行 2
7 8 11
任务 人员
分派情况
甲 乙 丙
E J G R
丁
4
15
所需时间
13
9
甲 1 1 乙 1 丙 1 丁
对应每个指派问题, 都有类似的表格,我们称之 为效率矩阵或系数矩阵,某元素 cij ( i , j = 1,2, · · · · · · , n ) 表示指派第 i 个人去完成 第 j 项任务时的效率(或
整数规划问题的求解要比一般的线性规划困难
本章将着重讨论 1。一类特殊的整数规划——指派问题,它的数 学模型和求解。 2。求解整数规划方法——分枝定界法。
一、指派问题的数学模型
1。数学模型
某单位需要指派 n 个人去完成 n 项任务,每个人 只做一项工作,同时,每项工作只由一个人完成。由 于各人的专长不同,每个人完成各项任务的效率也不 同。于是产生了应指派哪一个人去完成哪一项任务, 使完成 n 项任务的总效率最高(如所用的时间为最 少)。我们把这类问题称之为指派问题或分派问题 (Assignment Problem)。
二、匈牙利法
指派问题的效率矩阵的每一个元素aij≥0
解矩阵是每行或每列只能有一个元素为1,其余 均为 0 的 n 阶方阵。如:
0 0 ( xij ) 1 0 1 0 0 0 0 1 0 0 0 0 0 1
运筹学-第4章--整数规划习题
第四章 整数规划4.1 某工厂生产甲、乙两种设备,已知生产这两种设备需要消耗材料A 、材料B,有关数据如下,问这两种设备各生产多少使工厂利润最大?(只建模不求解)解:设生产甲、乙这两种设备的数量分别为x 1、x 2,由于是设备台数,则其变量都要求为整数,建立模型如下:2123max x x z +=⎪⎪⎩⎪⎪⎨⎧≥≤+≤+为整数21212121,0,5.45.01432x x x x x x x x4.2 2197max x x z +=⎪⎩⎪⎨⎧≥≤+≤+-且为整数0,35763.212121x x x x x x t s 割平面法求解。
(下表为最优表)线性规划的最优解为:63max ,0,2/7,2/94321=====z x x x x由最终表中得:27221227432=++x x x ﻩ④ 将系数和常数项分解成整数和非负真分式之和,上式化为;2132********+=++x x x移项后得:①②③④①②③即:21221227212212274343-≤--→≥+x x x x 只要把增加的约束条件加到B 问题的最优单纯形表中。
表4-4由x1行得:7327171541=-+x x x 将系数和常数项分解成整数和非负真分数之和:74476715541+=+-+x x x x得到新的约束条件: 74767154-≤--x x747671654-=+--x x x 在的最优单纯形表中加上此约束,用对偶单纯形法求解:则最优解为3,421==x x ,最优目标函数值为z *=55。
4.3 m ax z =4x1+3x 2+2x 3⎪⎪⎩⎪⎪⎨⎧=≥+≥++≤+-10,,13344352.32132321321或x x x x x x x x x x x t s 隐枚举法解:(1)先用试探的方法找出一个初始可行解,如x 1=x2=0,x 3=1。
满足约束条件,选其作为初始可行解,目标函数z 0=2。
第四章 整数规划
第四章 整数线性规划(Inregre Linear Progemming )§1 整数规划特点及应用前面讨论的LP 的最优解可能是分数或小数。
但是在经济管理和工程实践中,常常会出现要求变量值取整数的现象。
如决策变量是机器台数、人数或车辆数等。
最初有些人认为:只要对非整数解“舍入取整”即可。
但后来发现这是不行的。
因为舍入取整后的解不见得是可行解,即使是可行解,也不一定是最优整数解。
因此,这里另设一章,研究此问题,并称这种求整数最优解的LP 问题为整数线性规划,简记为“ILP ”。
整数规划分为许多类型:通常把所有变量都要求取整数的整数规划,称其为全(纯)整数规划;把部分变量要求取整数的整数规划,称为混合型ILP 。
把所有变量取值均为0或1的整数规划称为0-1规划。
等等。
求解整数规划的一种简单方法是:先不考虑整数条件,直接求解相应的线性规划问题,当最优解为非整数且数值都较大时,把非整数最优解取整到最接近的整数可行解即可。
但是,当最优解为非整数且数值都较小时,这种舍入化整的办可能导致解的可行性被破坏。
例如,我们来研究下面整数规划问题。
例4-1求解下面ILP 问题: 相应的LP :⎪⎪⎩⎪⎪⎨⎧≥≤+≤++=为整数2121212121,0,5.45.0143223max x x x x x x x x x x z ⎪⎩⎪⎨⎧≥≤+≤++=0,5.45.0143223max 21212121x x x x x x x x z解:若先不考虑整数约束条件求解相应的LP问题,由图解法得可行域如图4-1。
最优解X*=(3.25,2.5)。
所谓整数解,即要求变量取整数值。
而由X*舍入化整得到的解,如(4,3)或(4,2)或(3,3)都不在可行域上,所以都不是可行解,而(3,2)虽是可行解,但它并不是最优整数解,因为该例有一个可行解X=(4,1),其目标值Z=14,大于可行解(3,2)的目标值13。
为了求得该整数规划的最优整数解,我们将经过B点的目标函数等值线向可行域内平行移动,首次碰到的整数点即为所求。
整数规划(PDF)
例4-2:求解整数规划问题
s.t. 4x1 2x2 1 4x1 2x2 11
2x2 1
c=[-1;-1];
x1, x2 0, 且取整数值
A=[-4 2;4 2;0 -2];
b=[-1;11;-1];
lb=[0;0];
M=[1;2];
%均要求为整数变量
Tol=1e-8; [x,fval]=linprog(c,A,b,[],[],lb,[]) [x1,fval1]=intprog(c,A,b,[],[],lb,[],M,Tol)
可行否
枚举法随着变量维数增加呈指数增长,不可行!
四舍五入可能都不是可行解,不可行!
max s.t.
f 5x1 8x2 x1 x2 6 5x1 9x2 45 x1, x2 0, 且取整数值
x* f*
9 15 T 44 165 4
x [2 4]
四舍五入后的解 不是可行解!
一般整数规划问题的MATLAB求解
输入参数
MATLAB工具箱中的bintprog函数在求0-1规划问题时,提供的参数有如下几种 模型参数: x、c、b、beq、A和Aeq 初始解参数:x0 算法控制参数: options,我们可以通过optimset命令对这些具体的控制参数进
行设臵,其中主要参数的设臵方法如下一页的表格所示
调用格式 [x,fval,exitflag]=intprog(c,A,b,Aeq,beq,lb,ub,M,TolXInteger)
一般整数规划问题的MATLAB求解
标准形式
min f cT x s.t. Ax b
Aeq x beq lb x ub xi 0 (i 1, 2,...,n) x j 取整数值 (j M )
运筹学:第4章 整数规划与分配问题
2021/4/18
17
资源 金属板(吨) 劳动力(人月) 机器设备(台月)
小号容器 2 2 1
中号容器 4 3 2
大号容器 8 4 3
解:设 x1, x2, x3 分别为小号容器、中号容器和大号容 器的生产数量。
0, 不生产j型号容器 y j 1, 生产j型号容器
建立如下的数学模型:
2021/4/18
为:
C
j
(x
j
)
K 0,
j
c
j
x
j
,
xj 0 xj 0
其中 K j 是与产量无关 的生产准备费用
n
目标函数: min z C j (x j )
j 1
定义
0 y j 1
则原问题可表示为
xj 0
xj 0
n
min z (c j x j K j y j ) j 1
s.t
0 x j Myj
y
j
0或1
2021/4/18
10
§2.2 应用举例
例1 东方大学计算机实验室聘用4名大学生(代号
1,2,3,4)和2名研究生(代号5,6)值班。已知各学生从 周一至周五每天可安排的值班时间及每人每小时报酬见下 表所示。
学生 代号
1 2 3 4 5 6
酬金 (元/h) 10.0 10.0
9.9 9.8 10.8 11.3
2021/4/18
29
(0) 8
2
5
11 (0) 5
4
2
3 (0) 0
0
11
4
5
根据上图,k=2,
周一 6 0 4 5 3 0
每天可安排的值班时间(h) 周二 周三 周四
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
整数规划的特点及应用
纯整数线性规划:指全部决策变量都必须取整数值的整数线性规划。 混合整数线性规划:决策变量中有一部分必须取整数值,另一部分可以不取 整数值的整数线性规划。 0-1型整数线性规划:决策变量只能取值0或1的整数线性规划。
• 整数规划的典型例子
整数规划的特点及应用
例4.1 工厂A1和A2生产某种物资。由于该种物资供不应求,故需要 再建一家工厂。相应的建厂方案有A3和A4两个。这种物资的需求地 有B1,B2,B3,B4四个。各工厂年生产能力、各地年需求量、各厂至各 需求地的单位物资运费cij,见下表:
B1
A1 A2 A3 2 8 7
B2
9 3 6
B3
3 5 1
B4
4 7 2
年生产能力
400 600 200
A4
年需求量
4
350
5
400
2
300
5
150
200
工厂A3或A4开工后,每年的生产费用估计分别为1200万或1500万元。 现要决定应该建设工厂A3还是A4,才能使今后每年的总费用最少。
• 解:这是一个物资运输问题,特点是事先不能确定 应该建A3还是A4中哪一个,因而不知道新厂投产后 的实际生产物资。为此,引入0-1变量:
• 应该怎样选择投资项目,才能使总预期收益最大。
• 解:对每个投资项目都有被选择和不被选择两种可能, 因此分别用0和1表示,令xj表示第j个项目的决策选择, 记为: j 1 对 项 目 投 资 xj ( j 1,2,..., n) j 0 对 项 目 不 投 资
投资问题可以表示为:
整数规划的特点及应用
• 例4.3 设整数规划问题如下
max Z x1 x 2 14x1 9 x 2 51 6 x1 3 x 2 1 x , x 0且 为 整 数 1 2
首先不考虑整数约束,得到线性规划问题(一般称为松弛问题)。
max Z x1 x 2 14x1 9 x 2 51 6 x1 3 x 2 1 x , x 0 1 2
Min {Z , W }
最优解如上,6门课程,总 学分21 。
多目标优化的处理方法:化成单目标优化。
• 以学分最多为目标,不管课程 多少。
最优解显然是选修所有9门课 程。
整数规划的特点及应用
• 整数规划问题解的特征:
整数规划问题的可行解集合是它松弛问题可行解集合的一个子集,任意两个 可行解的凸组合不一定满足整数约束条件,因而不一定仍为可行解。 整数规划问题的可行解一定是它的松弛问题的可行解(反之不一定),但其 最优解的目标函数值不会优于后者最优解的目标函数值。
• 2)分支与定界: •
• xi≤[xi] 和 xi≥[xi]+1
• 组成两个新的松弛问题,称为分枝。新的松弛问题具有特征:当原问 题是求最大值时,目标值是分枝问题的上界;当原问题是求最小值时, 目标值是分枝问题的下界。
•
检查所有分枝的解及目标函数值,若某分枝的解是整数并且目标函数 值大于(max)等于其它分枝的目标值,则将其它分枝剪去不再计算, 若还存在非整数解并且目标值大于(max)整数解的目标值,需要继续分 枝,再检查,直到得到最优解。
整数线性规划数学模型的一般形式:
整数规划的特点及应用
max Z (或 min Z ) c j x j
j 1
n
n a ij x j bi ( i 1.2 m ) j 1 x j 0 (j 1.2n) 且 部 分 或 全 部 为 整 数
• 整数线性规划问题的种类:
2x9 x1 x2 0
讨论:选修课程最少,学分尽量多,应学习哪些课程?
课程最少
学分最多
Min Z xi
i 1
9
Max W 5x1 4 x2 4 x3 3x4 4 x5 3x6 2 x7 2 x8 3x9
两目标(多目标)规划
• 以课程最少为目标,不管学分 多少。
分支定界法
• 例4.4 用分枝定界法求解整数规划问题
min Z x1 5 x 2 x 1 x 2 2 IP 5 x1 6 x 2 30 4 x1 x1 , x 2 0且 全 为 整 数
解:首先去掉整数约束,变成一般线性规划问题(原整数规划问题的松驰问题)
1 若 建 工 厂 yi ( i 1,2) 0 若 不 建 工 厂
再设xij为由Ai运往Bj的物资数量,单位为千吨;z表示总费用,单位万元。 则该规划问题的数学模型可以表示为:
整数规划的特点及应用
整数规划的特点及应用
min z c ij x ij [1200y1 1500y 2 ]
要求每人做一项工作,约束条件为:
86 x41 90 x42 80 x43 88 x44
x11 x12 x13 x14 1 x 21 x 22 x 23 x 24 1 x 31 x 32 x 33 x 34 1 x 41 x 42 x 43 x 44 1
x3 x1 , x3 x2
2x3 x1 x2 0
x4 x7 x4 x7 0
2 x5 x1 x2 0 x6 x7 0
模型求解(LINDO) 最优解: x1 = x2 = x3 = x6 = x7 = x9 =1, 其它为0;6门课程,总学分21
x8 x5 0
整数规划的特点及应用
• 每项工作只能安排一人,约束条件为:
x11 x 21 x 31 x 41 x12 x 22 x 32 x 42 x13 x 23 x 33 x 43 x14 x 24 x 34 x 44 1 1 1 1
先修课要求
微积分;线性代数 计算机编程 微积分;线性代数 计算机编程
应用统计 微积分;线性代数
要求至少选两门数学课、三门运筹学课和两门计算机课 为了选修课程门数最少,应学习哪些课程 ? 选修课程最少,且学分尽量多,应学习哪些课程 ?
0-1规划模型
课号 1 2 3 4 5 6 7 8 9 课名 微积分 线性代数 最优化方法 数据结构 应用统计 计算机模拟 计算机编程 预测理论 数学实验 所属类别 数学 数学 数学;运筹学 数学;计算机 数学;运筹学 计算机;运筹学 计算机 运筹学 运筹学;计算机
⑵
x2
工作
人员 甲 乙 丙 丁 A 85 95 82 86 B 92 87 83 90 C 73 78 79 80 D 90 95 90 88
整数规划的特点及应用
整数规划的特点及应用
设
1 x ij 0
分配第i人做j工作时 不分配第i人做j工作时
数学模型如下:
max Z 85 x11 92 x12 73x13 90 x14 95 x21 87 x22 78 x23 95 x24 82 x31 83x32 79 x33 90 x34
决策变量
xi=1 ~选修课号i 的 课程(xi=0 ~不选)
目标函数 选修课程总数最少
Min Z xi
i 1
9
约束条件
最少2门数学课, 3门运筹学课, 2门计算机课。
x1 x2 x3 x4 x5 2
x3 x5 x6 x8 x9 3
x4 x6 x7 x9 2
0-1规划模型
课号
优化方法 数据结构 应用统计 计算机模拟 计算机编程 预测理论 数学实验
先修课程要求 x3=1必有x1 = x2 =1
3 4 5 6 7 8 9
微积分;线性代数 计算机编程 微积分;线性代数 计算机编程 应用统计 微积分;线性代数
整数规划的特点及应用
• 用图解法求出最优解为:x1=3/2, x2 = 10/3,且有Z = 29/6 现求整数解(最优解):如用舍 入取整法可得到4个点即(1, 3),(2,3),(1,4),(2,4)。显然, 它们都不可能是整数规划的最优 解。 按整数规划约束条件,其可行 解肯定在线性规划问题的可行域 内且为整数点。故整数规划问题 的可行解集是一个有限集,如右 图所示。其中(2,2),(3,1)点的目标函数
整数规划的特点及应用
max z
c
j 1
n
j
xj
n a j x j B j 1 x 2 x1 s .t x x 1 4 3 x5 x6 x7 2 x 0或 者1 ( j 1,2, n) j
• 例4.3 指派问题或分配问题。人事部门欲安排 四人到四个不同岗位工作,每个岗位一个人。 经考核四人在不同岗位的成绩(百分制)如表 所示,如何安排他们的工作使总成绩最好。
i 1 j 1 4 4
x11 x 21 x 31 x 41 350 x12 x 22 x 32 x 42 400 x13 x 23 x 33 x 43 300 x14 x 24 x 34 x 44 150 x x x x 400 11 12 13 14 s .t x 21 x 22 x 23 x 24 600 x 31 x 32 x 33 x 34 200y1 x 41 x 42 x 43 x 44 200y 2 x 0 ( i , j 1,2,3,4) ij y i 0,1 ( i 1,2)
值最大,即为Z=4。
x2
3
⑴
⑵
(3/2,10/3)
3
x1
• 整数规划问题的求解方法:
分支定界法和割平面法 匈牙利法(指派问题)
整数规划的特点及应用