第3章整数规划模型
运筹学-第3章整数规划

2018/8/17
9
生产计划问题
某机器制造厂可生产四种产品,对于三种主要资源(钢, 人力,能源)的单位消耗及单位利润见表。问如何安排 生产,可使总利润最大?
消耗 产品1
1
产品2 产品3
10 6 0 7 3 4 2 8
产品4
0 1 5 4
资源量
5000 3000 3000
资源A(钢)
资源B(人力) 2 资源C(能源) 2 单位利润 1
这里取M=5000
2018/8/17
15
(2)批量生产
在前例中的基础上, 增加假设:产品4要求批量生 产,批量为不少于500件。 试建立最佳生产计划模型。
定义0-1变量y4
1 , x 4 500 y 4= 0 , x 4=0
500y4 x4 My4 y4 {0,1}
增加约束
2018/8/17 4
附加条件
项目1和项目3至少采纳一个; y1+y2 ≥1 项目2和项目5不能同时采纳; y2+y5 ≤1 项目1仅在项目2采纳后才可考虑是否采纳; y1≤ y2 项目1仅在项目2和3同时采纳后才可考虑是否采纳; 项目1,2,3不能同时采纳; y1+y2+y3 ≤2 或者选择项目1和2,或者选择项目3; y1= y2, y1+y3 =1; 或者 0.5(y1+y2) +y3 =1.
i 1 j 1 5 4
1, 采用Ai建厂 yi , i 3,4,5 0 ,不采用
s.t. x11 x12 x13 x14 400 x x x x 600 23 24 21 22 x31 x32 x33 x34 200y3 x41 x42 x43 x44 200y4 x x x x 200y 5 51 52 53 54 y3 y 4 y5 1 x11 x21 x31 x41 x51 300 x12 x22 x32 x42 x52 350 x13 x23 x33 x43 x53 400 x x x x x 150 24 34 44 54 14 xij 0, i 1,2,3,4,5, j 1,2,3,4 y3 , y4 , y5 {0,1}
(完整word版)整数规划的数学模型及解的特点

整数规划的数学模型及解的特点整数规划IP (integer programming):在许多规划问题中,如果要求一部分或全部决策变量必须取整数。
例如,所求的解是机器的台数、人数、车辆船只数等,这样的规划问题称为整数规划,简记IP 。
松弛问题(slack problem):不考虑整数条件,由余下的目标函数和约束条件构成的规划问题称为该整数规划问题的松弛问题。
若松弛问题是一个线性规化问题,则该整数规划为整数线性规划(integer linear programming)。
一、整数线性规划数学模型的一般形式∑==nj jj x c Z 1min)max(或中部分或全部取整数n j nj i jij x x x mj ni x b xa ts ,...,,...2,1,...,2,10),(.211==≥=≥≤∑=整数线性规划问题可以分为以下几种类型1、纯整数线性规划(pure integer linear programming):指全部决策变量都必须取整数值的整数线性规划。
有时,也称为全整数规划。
2、混合整数线性规划(mixed integer liner programming):指决策变量中有一部分必须取整数值,另一部分可以不取整数值的整数线性规划。
3、0—1型整数线性规划(zero —one integer liner programming):指决策变量只能取值0或1的整数线性规划。
1 解整数规划问题0—1型整数规划0—1型整数规划是整数规划中的特殊情形,它的变量仅可取值0或1,这时的⎪⎪⎪⎩⎪⎪⎪⎨⎧≥≤+≥+≤-+=且为整数0,5210453233max 2121212121x x x x x x x x x x z变量xi 称为0—1变量,或称为二进制变量。
0—1型整数规划中0—1变量作为逻辑变量(logical variable),常被用来表示系统是否处于某一特定状态,或者决策时是否取某个方案。
整数规划-模型资料

问题的目标函
数为总利润求
nm
z
rij xij
i1 j1
的最大值.
nm
max z
rij xij ,
i1 j 1
n
xij X j ( j 1, 2,L
, m),
s.t.
i 1 m
ajX
j
M,
j 1
xij
0且为整数(i
1, 2,L
, n),
X j 0且为整数( j 1, 2,L , m).
x1, x2 0且x1, x2取整数13其lFra bibliotekngo语句如下:
MODEL: sets: row/1..2/:b; arrange/1..2/:c,x; link(row,arrange):a; endsets data: b=6,20;c=1,1;a=2,1,4,5; enddata [OBJ]max=@sum(arrange(j):c(j)*x(j)); @for(row(i):@sum(arrange(j):a(i,j)*x(j))<=b(i);); @for(arrange(j):x(j)>=0;); @for(arrange(j):@gin(x(j));); END
源的单位价格为 a j ( j 1, 2,L , m) ,该企业现有资金 M 元.
试问该企业应购买多少第 j 种资源(总量为 X j ),又 如何分配给所属的 n 个生产车间,使得总利润最大?
2
解 设决策变量为 xij (i 1, 2,L , n; j 1, 2,L , m) 表示分
配给第 i 个生产车间的第 j 种资源的资源量,均为非负整 数,第 j 种资源的需求总量 X j ( j 1, 2,L , m) 也都为整数.
第3章 整数规划

第3章 整数规划3.1 整数规划的数学模型一个规划问题中要求部分或全部决策变量是整数,则这个规划称为整数规划。
当要求全部变量取整数值的,称为纯整数规划(Pure Integer Programming ,IP ),要求一部分变量取整数值的,称为混合整数规划(Mixed Integer Programming ,MIP ),决策变量全部取0或1的规划称为0-1整数规划(Binary Integer Programming ,BIP ),如果模型是线性的,称为整数线性规划(Integer Linear Programming, ILP )。
本章只讨论整数线性规划。
求解整数规划问题时,如果先不能考虑对变量的整数约束,作为一般线性规划问题来求解,当解为非整数时再用舍入凑整方法寻求最优解,这样得到的解有可能不是整数规划的可行解或是可行解而不是最优解。
【例3.1】某人有一背包可以装10公斤重、0.025m 3的物品。
他准备用来装甲、乙两种物品,每件物品的重量、体积和价值如表3-1所示。
问两种物品各装多少件,所装物品的总价值最大。
表3-1【解】设甲、乙两种物品各装x 1、x 2件,则数学模型为⎪⎩⎪⎨⎧≥≤+≤++=且均取整数,0,255.22108.02.134max 21212121x x x x x x x x Z (3.1)如果不考虑x 1、x 2取整数的约束(称为式(3.1)的松弛问题),线性规划的可行域如图3-1中的阴影部分所示。
图3-1用图解法求得点B 为最优解:X =(3.57,7.14),Z =35.7。
由于x 1,x 2必须取整数值,整数规划问题的可行解集只是图中可行域内的那些整数点。
用凑整法求解时需要比较四种组合,但(4,7)、(4,8)(3,8)都不是可行解,(3,7)虽属可行解,代入目标函数得Z =33,并非最优。
实际上问题的最优解是(5,5),Z =35。
即两种物品各装5件,总价值35元。
第三章_整数线性规划

b
j 1
j
xj B
• 目标—总收益最大
max
c
j1
n
j
x
j
max
c
j1
n
j
x
j
n b j x j B s .t . j 1 x 1 , 0 ; j 1 , 2 ..., n j
旅游售货员问题
• 背景
• 案例 • 模型
背 景
• 旅游线路安排 预定景点走且只走一次 路上时间最短 • 配送线路—货郎担问题 送货地到达一次 总路程最短
混合整数规划模型
min c x Ax b s .t . x 0 x i 为整数 , i 1, 2 ,..., p
§2.2 整数线性规划算法
• 与线性规划的关系
• 分支定界算法
• 割平面算法 • 近似算法
与线性规划的关系
放松的线性规划 整数规划
min c
min c
x ij 1, 0 ; i 1, 2 ..., 17 , j 1, 2 , 3
• 约束
包裹容量限制
c
i 1
3
17
i
x ij r j ; j 1, 2 , 3
必带物品限制
3
x ij 1; i 1, 2 ..., 7
j 1
选带物品限制
x ij 1; i 8 , 2 ..., 17
3. 对于问题B,任选一个不符合整数条件的变量 xj=bj,对问题B进行分支,增加两个约束条件: xj[bj] 和 xj[bj] +1,形成两个后继问题B1 和 B2 ,求它们的松弛问题,得到目标函数值的上 界。转步骤4 。 4. 考察所有后继问题, (a)如果它的目标函数值的上界不如zb,舍去该支, 转步骤4 。 (b)如果没有后继问题, 则当前最优解就是原问题 的最优解,stop。 (c)寻找目标函数值的界最好的后继问题,转步骤5。
整数规划

Aj 各点的设备投资及每年可获利润由于地点不同都是不一样的,预测 情况见表所示 (单位:万元)。但投资总额不能超过720万元,问应选择哪 几个销售点,可使年利润为最大?
解:设:0--1变量 xi = 1 (Ai 点被选用) 或 0 (Ai 点没被选用)。 这样我们可建立如下的数学模型: Max z =36x1+40x2+50x3+22x4+20x5+30x6+25x7+48x8+58x9+61x10 s.t. 100x1+120x2+150x3+80x4+70x5+90x6+80x7+140x8+160x9+180x10 ≤ 720 x1 + x2 + x3 ≤ 2 x4 + x5 ≥ 1 x6 + x7 ≥ 1 x8 + x9 + x10 ≥ 2 xi ≥ 0 且xi 为0--1变量,i = 1,2,3,……,10
第三步:作最少的直线覆盖所有0元素。 (1)对没有◎的行打√号; (2)对已打√号的行中所有含Ø元素的列打√号; (3)再对打有√号的列中含◎ 元素的行打√号;
(4)重复(2),(3)直到得不出新的打√号的行、列为止; (5)对没有打√号的行画横线,有打√号的列画纵线, 这就得到覆盖所有0元素的最少直线数 l 。l 应等于m, 若不相等,说明试指派过程有误,回到第二步(4),另 行试指派;若 l=m < n,须再变换当前的系数矩阵, 以找到n个独立的0元素,为此转第四步。 第四步:变换矩阵(bij)以增加0元素。 在没有被直线覆盖的所有元素中找出最小元素,然后 打√各行都减去这最小元素;打√各列都加上这最小元 素(以保证系数矩阵中不出现负元素)。新系数矩阵 的最优解和原问题仍相同。转回第二步。
第3章-整数规划-谢家平PPT课件

y21 y22 150000 x11 x21 50000 x12 x22 100000 x13 x23 50000
y11 y21 x11 x12 x13 y12 y22 x21 x22 x23 y11 y21 200000w1 y12 y22 250000w2
• 但对于大型的整数规划问题,可行的整数解数量很多,用 穷举法求解是不可能的。例如,指派问题 。
10
性质: • 任何求最大目标函数值的纯整数规划或混合整数
规划的最大目标函数值小于或等于相应的线性规 划的最大目标函数值; • 任何求最小目标函数值的纯整数规划或混合整数 规划的最小目标函数值大于或等于相应的线性规 划的最小目标函数值。
x1 =4, x2 =1,Z =29,满足约束条件,才是最优解。
9
二、穷举整数法
x2
5
2x1 + x2 =9
4•
3 • • • (3,3)
2
•
•
•
(3 1 ,2 7 ) 99
5x1 +7 x2 =35
1•• ••
1 234
x1
• 对于决策变量少,可行的整数解又较少时,这种穷举法有 时是可行的,并且也是有效的。
• 把相应的线性规划的可行域分成两个部分: x2
5
x1=3 x1=4
4•
3••
2•• •
5x1 +7 x2 =35
1
•
•
•
• 2x1 + x2 =9
1 234
x1
14
21.4.1
15
X1≤2
线性规划2 Z2=13.90
X1=2 X2=3.30
整数规划模型

第三章 整数规划模型一. 提出问题:工厂选址某企业欲建工厂,可选厂址有A 1、A 2、A 3、A 4四处,每个地址至多可建一个工厂,在各地址建立工厂的生产能力、在各地址经营工厂单位时间的固定成本、产品运往各需求点的单位运费如下表:问应如何选择厂址和安排运输计划,才能得到经济上花费最少的方案 二. 分析问题 1. A 1、A 2、A 3、A 4各处都有可能建厂,用变量y[i]来表示是否建厂y[i]=⎩⎨⎧地址不建厂在地址建厂在i i 01i=1,2,3,4;2. 设从i 地址运到j 需求点的运输量可设为x[i][j]为整数 3.运到各点的量应不小于需求(x[1][j]+x[2][j]+x[3][j]+x[4][j]>=b[j]); 4.各厂的生产总量不超过生产能力(x[i][1]+x[i][2]+x[i][3]+x[i][4]<=d[i]*y[i] i=1,2,3,4);5. 运到各需求点的量如何计算b1[j]=x[1][j]+x[2][j]+x[3][j]+x[4][j]j=1,2,3,4; 6. 各厂的生产总量a1[i]= x[i][1]+x[i][2]+x[i][3]+x[i][4]; 7. 目标函数:总费用z=建厂费用+ 运输费用8.运输费用=单位运输费用*运输量(从i 地址运到j 需求点单位运输费用c[i][j]已知,从i 地址运到j 需求点的运输量可设为x[i][j]) 三. 模型建立根据分析建立整数规划模型: 设1(1,2,,4)0i i y i ⎧==⎨⎩ 在处建厂否则,ij x i j 表示从点运到点的货物数量(i,j=1,2,,4),建立如下整数规划模型:4441114141..(1,2,,4)(1,2,,4)0,0ii ijiji i j iji i j ijj i ij i m in z ay cx s t xd y i xb j x y =====⎧=+⎪⎪⎪≤=⎪⎨⎪⎪≥=⎪⎪≥=⎩∑∑∑∑∑ 或1其中(,1,2,,4)ijc i j i j = 表示从点到点的单位运费,i i a A 为点处建厂经营的单位固定成本(i=1,2,,4), j b j 表示需求点B 处的需求量(j=1,2,,4),(1,2,,4)i i d A i = 表示处的生产能力。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
§3.1 投资决策问题
例 某市有 b 亿元资金用于 n 个项目投 资,对第 i 个项目投资需要 bi 亿元,可 获 得 利 税 收 入 ci 亿 元 . 试 确 定 投 资 方 案,使得该市的利税收入最多.
问题分析
• 目标:利税收入; • 决策量:由于每个项目投资数额已定,
只是投与不投,我们选择0-1变量; • 约束:总资金b亿元.
模型的建立
解:设 xi 为采用第 i 种方案所用原料数, y 为
原料总数
6
min y xi
s.t.x1
4x2
3x3
i 1
2x4
x5
1000;
x2
2x3
3x4
5x5
6x6
2000;
xi 0,且xi为整数(i=1,2, 6)
例 2 假设要用某类钢板下 m 种零件 A1, A2, Am 的毛料. 根据既省料又容易操作的原则,人们在一块钢板 上,已经设计出 n 种不同的下料方案,设在第 j 种 下料方案中,可下得第 i 种零件 Ai 的个数为 aij ,第 i 种零件的需要量为 bi ,i 1, 2, m .问应如何下料, 才能既满足需要,又使所用的钢板总数最少?
4x1 3x2 2x3 x4 x5 50 x2 2x4 x5 3x6 20
x3 x5 2x7 15
xi 为整数
最优解:x2=15, x5=5, x7=5, 其余为0;
最优值:25。
按模式2切割15根, 与目标1的结果“共切割
按模式5切割5根, 27根,余料27米” 相比
按模式7切割5根, 共25根,余料35米
任务
人
英
日
德
俄
2
15
13
4
甲
10
4
14
15
乙
9
14
16
13
丙
丁
7
8
11
9
§3.7 混合泳接力队的选拔
蝶泳 仰泳 蛙泳 自由泳
5名候选人的百米成绩
甲 1’06”8 1’15”6 1’27” 58”6
乙 57”2 1’06” 1’06”4 53”
丙 1’18” 1’07”8 1’24”6 59”4
丁 1’10” 1’14”2 1’09”6 57”2
问题分析
• 决策量:机床 A加i 工 的B j 数量 ,xij i 1, 2, 共m, j 个1, 2, n m n
• 约束:机床 A工i 作能力 ;ai 对零件 需B j求数量 个 bj
• 目标:总成本 y(元)
模型建立
mn
min y
cij xij
i1 j1
n
s.t. tij xij ai , i 1, 2, m
j 1
m
xij bj , j 1, 2, n
i 1
xij
0, 且xij
I,i
1,
, m; j 1,
,n
I {0,1, 2, }
练习 某车间有甲、乙车床,加工
三种工件,有关信息见下表, 试确定车床加工任务,既满足 加工工件要求,又使加工费最 小。
工件 机时(小时) 加工费
车
床
B1 B2 B3 B1 B2 B3
74.2
71
j=3
87
66.4
84.6
69.6
83.8
j=4
58.6
53
59.4
57.2
62.4
若选择队员i参加泳姿j 的比赛,记xij=1, 否则记xij=0
目标 函数
45
Min Z
cij xij
j 1 i1
约束 条件
每人最多入选泳姿之一
4
xij 1, i 1,5
j 1
每种泳姿有且只有1人
ci 元,问:在投资总额不超过 B 元的条件下,怎样选址,
可使公司年利润最大?
问题分析
• 目标:求最大利润
• 决策变量:是否在 A点i 建立门市部,0-1变
量
• 约束: 满足选点规定 ;投资总额 B
• 约定符号:
1, xi 0,
选择Ai点建立门市部 Ai点没有被选用
i
1,
2,
3,
7
z 年总利润(元)
i1 j1
i 1
n
s.t. xij Di yi j 1
m
xij bj
i 1
xij 0,
i 1, 2, m j 1, 2, n i 1, 2, m
yi 0或1,
j 1, 2, n
例 2 某公司在市东、西、南三区建立门市部,用
Bj , j 1, 2, 3 表 示 . 设 三 个 区 共 有 7 个 位 置 点
§3.4 生产组织与计划问题
例 某工厂用 m 台机床: A1, A2, Am ,加工 n 种零件: B1, B2, Bn .在一个生产周期内,已知第 i 台机床 Ai 只能 工作 ai 个机时,i 1, 2, m .工厂必须完成加工零件 B j 的数量为 b j 个,j 1, 2, n .机床 Ai 加工零件 B j 一个所 需的机时和成本分别为 tij (机时/个)和 cij(元/个). 问:在这个生产周期,应如何安排各机床的生产任务, 才能既完成加工任务,又使总的加工成本最小。
方案
规 每根原料下 B1
B2
格 管根数
B3 需求量
3米长
3个 2个 0个
5根
4米长 余料量
0个 1个 1米 0米
2个
5根
所用钢 2米 筋数最
少
模型建立
• 设 x1, x2为, x3采用方案 为所用y钢筋总数
B1所, B2用, B钢3 筋数,
min y x1 x2 x3
s.t.3x1 2x2 5 x2 2x3 5
问:应如何选择厂址和安排运输计划,才能得到经济 上花费最少的方案。
问题分析
• 决策量:确定是否选择 B建i 厂;B到i 运Aj送量 • 目标:总花费=固定成本费+产品运输费
• 约束:建厂地点要求,生产能力,需求量要 求
• 运费~运送量~连续变量
在 建厂或不建~用0或1表示
Bi
构成了混合整 数规划
符号假定:在单位时间内
模型建立
7
max z ci xi
i 1
7
s.t. bi xi B
i 1
x1 x2 x3 2
x4 x5 1 x6 x7 1
xi 0或1, i 1, 2, 7
§3.6 指派问题
例 有 n 项 任 务 A1, A2, An 要 完 成 , j 1,2, n .由于任务性质和每人专长 不同,因此,每人完成不同任务时 的效率(或所用时间)有差别.问: 应当指派哪个人去完成哪项任务使 总的效率最高(或所用时间最少)
xi 0且xi I={0,1,2, },i 1, 2,3
练习:
现有长度为500cm的钢管, 要截98cm,78cm的两种 钢管,各要1000根,2000 根。问:怎样截,用原料最 少?
方案
规 格
每根 下料 数
B1
B2
B3
B4
B5
B6
需求量
A1 5
4
3
2
1
0
1000根
A2 0
1
2
3
5
6
2000根
i 1
xij 0或1,
i 1, 2, n j 1, 2, n i, j 1, 2, n
练习:有一份说明书,要分别译成 英(E)、日(J)、德(G)、俄(R)四种 文字。交给甲、乙、丙、丁 4 人完 成,每人完成一种,因各人专长不 同,他们翻译所需时间见表,问: 应分派哪个人完成哪项任务,使总 的花费时间最少?
模型建立
•令
1, 装第i件物品,
xi 0,
否则 i 1, 2, , n
• 设装入物品的总价值为z,则上述背包问
题的数学模型为
n
max z ci xi ,
i 1
n
s.t. bi xi b,
i 1
xi
0或1,i
1, 2,
n
§3.3 合理下料问题
例 1 某工厂有 10 米长的钢管若干 根,要截取 3 米、4 米长的钢管各 5 根,问:如何截取,使所用钢筋数 最少?
模型建立
设xi
1, 0,
对第i个项目投资, 否则, i 1, 2,
n
Z 为总利税收入(亿元)
则模型为:
max z m ci xi
i 1
n
s.t. bi xi b
i 1
xi 0或1
§3.2 背包问题
例 设有一个容积为b ,有n 个体积分 别为 bi (i 1,2, n) ,使用价值分别为 ci (i 1,2, n) 的物品可以装入背包,问 应选择哪几件物品装入背包,才 能得到最大的使用价值?试建立 数学模型.
模型建立
• 设 x为j 采用方案 下Bj 料所用钢板的 数量, y为所用钢板总数
n
min y xj
j 1
n
s.t. aij x j bi ,i 1, 2, m
j 1
x
j
0,且x j
I,
j
1, 2,
n, I {0,1, 2, }
客户需求
例3 钢管下料 原料钢管:每根19米
4米50根
戊 1’07”4 1’11” 1’23”8 1’02”4
如何选拔队员组成4100米混合泳接力队?
穷举法:组成接力队的方案共有5!=120种。
0-1规划模型 cij(秒)~队员i 第j 种泳姿的百米成绩
cij
i=1
i=2