数学模型数学建模第四次作业整数规划和对策论模型

合集下载

第四章 数学规划模型 数学建模(姜启源第四版)ppt课件

第四章  数学规划模型 数学建模(姜启源第四版)ppt课件

12小时
3公斤A1
4公斤A2
获利24元/公斤
获利16元/公斤
8小时 每天 50桶牛奶 时间480小时 至多加工100公斤A1 x1桶牛奶生产A1 x2桶牛奶生产A2
决策变量
目标函数
获利 24×3x1 获利 16×4 x2 每天获利 Max z 72x1 64x2 原料供应
x1 x2 50
基本模型
变量
目标 函数 约束 条件
x5 kg A1加工B1, x6 kg A2加工B2 利润
Max z 24x1 16x2 44x3 32x4 3x5 3x6
x1 x5 x 2 x6 加工能力 50 3 4 附加约束 4( x1 x5 ) 2( x2 x6 )
4公斤A2
获利16元/公斤
每天: 50桶牛奶
时间480小时 至多加工100公斤A1
制订生产计划,使每天获利最大 • 35元可买到1桶牛奶,买吗?若买,每天最多买多少? • 可聘用临时工人,付出的工资最多是每小时几元? • A1的获利增加到 30元/公斤,应否改变生产计划?
基本 1桶 模型 牛奶 或
线性规划模型
A1,A2每公斤的获利是与各自 产量无关的常数
每桶牛奶加工A1,A2的数量, 时 间是与各自产量无关的常数 A1,A2每公斤的获利是与相互 产量无关的常数 每桶牛奶加工A1,A2的数量,时 间是与相互产量无关的常数 加工A1,A2的牛奶桶数是实数
可 加 性
连续性
模型求解
x1 x2 50
20桶牛奶生产A1, 30桶生产A2,利润3360元。
结果解释
Global optimal solution found. Objective value: 3360.000 Total solver iterations: 2 Variable Value Reduced Cost X1 20.00000 0.000000 X2 30.00000 0.000000 Row Slack or Surplus Dual Price 1 3360.000 1.000000 原料无剩余 MILK 0.000000 48.00000 三 TIME 0.000000 2.000000 时间无剩余 种 CPCT 40.00000 0.000000 加工能力剩余40

02-整数规划数学模型及其解法-4h

02-整数规划数学模型及其解法-4h
, i = 1,2 ,3 ,4 ,5
− x1 − x 2 − x 3 < − 3 + My i − 3 x − 2 x − x < − 5 + My i 1 2 3 x 1 < 10 + My i 则有 (M 为任意大的正数) x 2 < 4 + My i x 3 < 11 + My i y1 + y 2 + L + y 5 ≥ 2
(1) (2)
25
4.用以表达含固定费用的函数
如用xj代表产品j的生产数量,其生产费用函数通 常可表示为: ( x j > 0) K j + c j x j C j (x j ) = ( x j = 0) 0 式中kj是同产量无关的生产准备费用。 问题的目标是使所有产品的总生产费用为最小。 n 即:
7
引例2-3
各点的设备投资及年获利预测表
A1 A2 A3 A4 A5 A6 A7 A8 A9 A10
投 资 100 120 150 80 70 90 80 140 160 180 额 利 36 40 50 22 20 30 25 48 58 61 润 投资总额不能超过720万元。 问应选择哪几个点,可使年利润为最大?
10
整数规划的图解
有人认为,对整数规划问题的求解可以 先不考虑对变量的整数约束,作为一般 线性规划问题来求解,当解为非整数时 可用四舍五人或凑整方法寻找最优解。 当然在变量取值很大时,用上述方法得 到的解与最优解差别不大。但当变量取 值较小时,得到的解就可能与实际整数 最优解差别很大。再者当问题规模较大 时,用凑整办法来算工作量很大。
j =1
n
K j + c j x j ( x j > 0) C j (x j ) = ( x j = 0) 0

数模常用算法系列--整数线性规划(分枝定界法)、整数非线性规划(蒙特卡洛法)

数模常用算法系列--整数线性规划(分枝定界法)、整数非线性规划(蒙特卡洛法)

数模常⽤算法系列--整数线性规划(分枝定界法)、整数⾮线性规划(蒙特卡洛法)整数线性规划求解----分枝定界法什么是整数规划?线性规划中的变量(部分或全部)限制为整数时,称为整数规划。

若在线性规划模型中,变量限制为整数,则称为整数线性规划。

⽬前所流⾏的求解整数规划的⽅法,往往只适⽤于整数线性规划。

⽬前还没有⼀种⽅法能有效地求解⼀切整数规划。

整数规划的分类- 变量全限制为整数时,称(完全)整数规划- 变量部分限制为整数时,称混合整数规划什么是分枝定界法原理如下:设有最⼤化的整数规划问题A,与它相应的线性规划为问题B,从解问题B开始,若其最优解不符合A的整数条件,那么B的最优⽬标函数必是A的最优⽬标函数z^*的上界\overline{z};⽽A的任意可⾏解的⽬标函数值将是z^*的⼀个下界\underline z ,分枝定界法就是将B的可⾏域分成⼦区域的⽅法。

逐步减⼩\overline z和增⼤\underline z最终求到z^*本质就是个分治回溯,逼近最⼤值的算法。

Matlab算法如下:(强烈警告,(不会验证)由于⽐较懒,并未对算法正确性验证,思路上验证了⼀下没问题就码上来了,如果有错,请⼀定联系~~)% c,A,Aeq,Beq,LB,UB,是linprog函数的相关参数,知道了它们就可以求出对应的线性规划最优解,% now是⽬前已经知道的整数解的最⼤值function y = control(c,A,Aeq,Beq,LB,UB,now)ret = 0;[x,fval] = linprog(c,A,Aeq,Beq,LB,UB); % x是最优解的解向量,fval是对应的函数值if fval < nowy = fval;return;end % 如果得到的当前最优解fval⼩于已知的now,那说明最优整数解不在这个区间,则剪枝返回。

for i = 1 : length(x)if rem(x(i),1) ~= 0 % rem(x,1)如果返回值不为0,则表⽰是⼩数。

数学建模整数规划PPT学习教案

数学建模整数规划PPT学习教案
x31 x32 x 33 90 y3
已知三工厂每月的经营费用 di (与 产量无关)分别为 100、90、120 .问如 何选址使每月经营和运输费用最低 .
x11 x21 x31 40
x12 x22 x32 60
x13 x23 x33 45
y1 y2 y3 2
Solution:
1、 先检查最大上界(极大化问题)的活问题
优点:检 查子问 题较其 他规则 为少;
缺点:计算机储存量较大 .
2、 先检查最新产生的最大上界的活问题 优点:计算机储存量较少 ;
缺点:需要更多的分支运算 .
选择的不 同,提 供了发 挥的余 地
第13页/共30页
第五章去掉整数约整束数为3<规x 划<4 之间无整数解P Example4
0123456789
x1第14页/共30页
P6 (x2≥5)
x1=0、x2=5 Z6=40
*
§2 整 数 规 划 的解 法 Example 5 (投资方案的最优选择)
投资 年度
项目
A1 A2 A3
投资 额度
1 042 5
某公司欲对三个项目进行投资, 根据预算 四年内 的投资 额、三 个项目 每年所需投资额以及所创利润如表. 问应对哪 几个项 目进行 投资, 可获利 最大?
整数规划
物品 重量 aj
1
3
2
4
3
3
4
3
5
15
6
13
7
16
价值 cj 12 12 9 15 90 26 112
Solution: 这是一个 0-1 规划问题.
1 x j 0
如果带第 j 件物品 否则 j = 1~7

整数规划模型

整数规划模型
决策变量全部取 0 或1的规划称为0-1 整数规划
王秋萍:整数规划模型
为(非负)整数
仅一部分变 量为整数
4
有些问题用线性规划数学模型无法描述,可以 通过设置逻辑变量建立整数规划的数学模型。
王秋萍:整数规划模型
5
逻辑变量在建立数学模型中的作用
m个约束条件中只有k个起作用
设m个约束条件可表为
∑a x
ij j =1
n
j
≤ bi
i = 1, 2, " , m
定义 又M为任意大的正数,则
n ⎧ ⎪ ∑ aij x j ≤ bi + Myi j =1 ⎨ ⎪ y + y +" + y = m − k 2 m ⎩ 1
王秋萍:整数规划模型
6
逻辑变量在建立数学模型中的作用
约束条件的右端项可能是r个值 ( b1 , b2 ," , br ) 中的一个,即 n
( i = 1," , m; j = 1," , m ) 则分配问题的数学模型为 min z = ∑∑ a x
m m i =1 j =1 ij
ij
⎧ m xij = 1 ( i = 1,", m ) ⎪ ∑ j =1 ⎪ m ⎪ ( j = 1,", m ) ⎨ ∑ xij = 1 ⎪ i =1 ⎪ xij = 0或1 ( i = 1," , m; j = 1," , m ) ⎪ ⎩
j = 1, 2, 3 ⎧ x j − My j ≤ 0 ⎪ x + x + x ≥ 4000 ⎪ 1 2 3 ⎨ ⎪ x1 ≤ 1500, x2 ≤ 2000 ⎪ ⎩ x j ≥ 0, y j = 1或0, j = 1, 2, 3

整数规划的数学模型分枝定界法割平面法型整数规

整数规划的数学模型分枝定界法割平面法型整数规

将 L0 分解为 L1 和 L2,其中: L1={L0, x2 7} L2={L0, x2 8}

2018/9/17
求解练习题
L1 求解单纯形表 cj 2 5 4 0 0 CB XB x1 x2 x3 x4 x7 4 x3 1/2 0 1 1 -1/2 5 x2 1/2 1 0 0 1/2 0 x6 3/2 0 0 -5 5/2 0 x7 0 1 0 0 0 σ 基变量系数向量单位化 cj 2 5 4 0 0 CB XB x1 x2 x3 x4 x7 4 x3 1/2 0 1 1 -1/2 5 x2 1/2 1 0 0 1/2 0 x6 3/2 0 0 -5 5/2 0 x7 -1/2 0 0 0 -1/2 -5/2 0 0 -4 -1/2 σ
……...
am1 x1+ am2 x2 +…+ amn xn (=,) bm x1~n 0 且取整数 纯整数规划: 所有变量都有取整约束 混合整数规划: 只有部分变量有取整约束
2018/9/17
分枝定界法
1.分枝定界法的基本思路 2.第65页例5-1
3.练习题
2018/9/17
分枝定界法的基本思路
2018/9/17
用割平面法解例
x2 +3/4 x3 +1/4 x4 =7/4 现将各系数分成整数和非负真分数两部分,从而可得: (1+0)x2+(0+3/4) x3+(0+1/4) x4 =(1+3/4) 将整数部分的变量移至等式右端有: 3/4 x3 +1/4 x4 =3/4+(1- x2 ) 非负整数解(1- x2)为整数,左端非负故有: 3/4 x3 +1/4 x4 =3/4+非负整数 从而: 3/4 x3 +1/4 x4 3/4 或 x2 1 以 x2 1为割平面可使可行域减少一个包括A点在内的三角形。 2018/9/17

数学建模之规划问题

数学建模之规划问题

一、线性规划1.简介1.1适用情况用现有资源来安排生产,以取得最大经济效益的问题。

如: (1)资源的合理利用(2)投资的风险与利用问题 (3)合理下料问题 (4)合理配料问题 (5)运 输 问 题 (6)作物布局问题(7)多周期生产平滑模型 (8)公交车调度安排 1.2建立线性规划的条件(1)要求解问题的目标函数能用数值指标来反映,且为线性函数;(2)要求达到的目标是在一定条件下实现的,这些约束可用线性等式或不等式描述。

1.3线性规划模型的构成决策变量、目标函数、约束条件。

2、一般线性规划问题 数学标准形式:目标函数:1max ==∑ njjj z cx约束条件:1,1,2,...,,..0,1,2,...,.=⎧==⎪⎨⎪≥=⎩∑nij j i j ja xb i m s t x j nmatlab 标准形式:3、可以转化为线性规划的问题 例:求解下列数学规划问题解:作変量変换1||||,,1,2,3,4,22+-===i i i ii x x x x u v i 并把新变量重新排序成一维变量[]1414,,,,,⎡⎤==⎢⎥⎣⎦Tu y u u v v v ,则可把模型转化为线性规划模型其中:[]1,2,3,4,1,2,3,4;=T c 12,1,;2⎡⎤=---⎢⎥⎣⎦Tb 111111131 - - ⎡⎤⎢⎥= - -⎢⎥⎢⎥ -1 -1 3⎣⎦A 。

利用matlab 计算得最优解:12342,0,=-===x x x x 最优值z=2。

程序如下: 略二、整数规划 1.简介数学规划中的变量(部分或全部)限制为整数时称为整数规划。

目前流行求解整数规划的方法一般适用于整数线性规划。

1.1整数规划特点1)原线性规划有最优解,当自变量限制为整数后,出现的情况有①原线性规划最优解全是整数,则整数规划最优解与线性规划最优解一致。

②整数规划无可行解。

③有可行解(存在最优解),但最优解值变差。

2)整数规划最优解不能按照实数最优解简单取整获得。

数学建模 -整数规划

数学建模 -整数规划
z1 3
松弛问题 L0: max z 30x1 20x 2 2 x1 3 x 2 14.5 s.t 4 x1 x 2 16.5 x1 0, x 2 0
z 2 130 剪枝 ( IP)的最优解:x 3,x 2 1 2
最优值:Z * 130
4x1+x2=16.5
3 L3:xx21 2 z 3 130 关闭
11 L4 x1 4 ,x2 3 28543;3x2=14.5
L5 x1 2,x2 7
剪枝 z 130 5
2
L6 剪枝
无可行解
· · · · · · · · · 1 2 3 4 5 6 7

19:01
分枝定界法

分枝定界法

(1)分枝:通常,把全部可行解空间反复地分割为越 来越小的子集,称为分枝; (2)定界:并且对每个子集内的解集计算一个目标下 界(对于最小值问题),这称为定界。 (3)剪枝:在每次分枝后,凡是界限超出已知可行解 集目标值的那些子集不再进一步分枝,这样,许多子 集可不予考虑,这称剪枝。 求解生产进度问题、旅行推销员问题、工厂选址问题、 背包问题及分配问题。
对( IP) max z 30x1 20x 2 2 x1 3x 2 14.5 4 x1 x 2 16.5 s.t x 0, x 2 0 1 x1 , x 2为整数
父问题
松弛问题 ( L0 ): max z 30x1 20x 2 2 x1 3 x 2 14.5 s.t 4 x1 x 2 16.5 最优解: x1 3.5, x1 0, x 2 0
x 2 2 .5
子问题
( L1 ) max z 30x1 20x 2 ( L ) max z 30x 20x 2 1 2 2 x1 3 x 2 14.5 2 x1 3x2 14.5 4 x1 x 2 16.5 4 x1 x2 16.5 s.t s.t x1 3 x1 4 x1 0, x 2 0 x1 0, x2 0
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数学模型第四次作业 整数规划和对策论模型4.1实验目的学会建立整数规划模型、对策论模型,学会用LINGO 软件求解。

4.2 基本实验1. 工程安排问题三年内有五项工程可以考虑施工,每项工程的期望收入和年度费用如表4.1所示。

假定每一项已经选定的工程要在整个三年内完成。

目标是要选出使总收入达到最大的那些工程。

解:根据题意,设0 1 i i x i ⎧=⎨⎩第个工程未被选中第个工程被选中,i=1,2,3,4,5目标函数为:123452*********Max x x x x x =++++限制条件为:1234512345123455437825794625..8102102501i x x x x x x x x x x s t x x x x x x ++++≤⎧⎪++++≤⎪⎨++++≤⎪⎪⎩为或 使用Lingo 编程:model :max=20*x1+40*x2+20*x3+15*x4+30*x5;5*x1+4*x2+3*x3+7*x4+8*x5<=25;1*x1+7*x2+9*x3+4*x4+6*x5<=25;8*x1+10*x2+1*x3+2*x4+10*x5<=25;@bin(x1);@bin(x2);@bin(x3);@bin(x4);@bin(x5);end运行得到结果:Global optimal solution found.Objective value: 95.00000Objective bound: 95.00000Infeasibilities: 0.000000Extended solver steps: 0Total solver iterations: 0Variable Value Reduced CostX1 1.000000 -20.00000X2 1.000000 -40.00000X3 1.000000 -20.00000X4 1.000000 -15.00000X5 0.000000 -30.00000Row Slack or Surplus Dual Price1 95.00000 1.0000002 6.000000 0.0000003 4.000000 0.0000004 4.000000 0.000000分析结果易知,总收入达到最大为95(千元),应选第一、二、三、四项工程可以使总收入达到最大。

2. 固定费用问题一服装厂生产三种服装,生产不同种类的服装要租用不同的设备,设备租金和其他的经济参数如表4.2所示。

假定市场需求不成问题,服装厂每月可用人工工时为2000小时,该厂如何安排生产可以使每月利润达到最大?解:根据题意三种服装的利润分别为120元、10元、100元.设x i 表示生成第i (i =1,2,3)种服装的数量,y i 表示是否生产第i 种服装。

列出目标函数:列出限制条件:5x 1+x 2+4x 3≤20003x 1≤300y 10.5x 2≤300y 22x 3≤300y 3使用Lingo 编程求解:model :sets:⎩⎨⎧=种服装,不生产第种服装生产第i i y i 0,1)000320005000(10010120m ax 321321y y y x x x ---++=m/1,2,3/:x,y;endsets[obj]max=100*x(1)+10*x(2)+100*x(3)-5000*y(1)-2000*y(2)-3000*y(3);5*x(1)+x(2)+4*x(3)<=2000;3*x(1)<=300*y(1);0.5*x(2)<=300*y(2);2*x(3)<=300*y(3);@for(m(i):x(i)>=0;@bin(y(i)););end得到结果:Global optimal solution found.Objective value: 21000.00Objective bound: 21000.00Infeasibilities: 0.000000Extended solver steps: 0Total solver iterations: 0Variable Value Reduced CostX( 1) 100.0000 0.000000X( 2) 600.0000 0.000000X( 3) 150.0000 0.000000Y( 1) 1.000000 -5000.000Y( 2) 1.000000 -4000.000Y( 3) 1.000000 -12000.00Row Slack or Surplus Dual PriceOBJ 21000.00 1.0000002 300.0000 0.0000003 0.000000 33.333334 0.000000 20.000005 0.000000 50.000006 100.0000 0.0000007 600.0000 0.0000008 150.0000 0.000000所以三种服装应该都生产,且生产西服100件、衬衫600件、羽绒服150件时可以使每月利润达到最大21000元。

3. 串并联系统可靠性问题有一台电器由三个部件组成,这三个部件串联,假如有一个部件发生故障,电器就不能工作。

可以通过在每个部件里安装1到2个备份元件来提高该电器的可靠性(不发生故障的概率)。

表4.3列出了可靠性和成本费用。

假设制造该电器的已有资金共10万元,那么怎样来构造这件电器呢?解:构造集合bujian/1..3/(部件),yuanjian/1..2/(每个部件可并联的元件数集合),links(bujian,yuanjian):p,C,R 。

其中⎩⎨⎧=,其他个元件部件并联,给01j i p ij列出Lingo 程序:model :sets :bujian/1..3/; !部件1,2,3;yuanjian/1..2/; !每个部件可装元件1,2;links(bujian,yuanjian)/1,1 1,2 2,1 2,2 3,1 3,2/:p,C,R;!p(i,j)=1,则表示部件i 上并联j 个元件,否则,p(i,j)=0.C,R 分别为成本,可靠性;!links 中的元素必须罗列出来;endsetsdata :C=1 23 52 4;R=0.60 0.800.70 0.800.50 0.70;enddatamax=@prod(bujian(I):@sum(yuanjian(J)|@in(links,I,J):p(I,J)*R(I,J) )); !整个系统的可靠性,为每个部件的可靠性之积;@for(bujian(I):@sum(yuanjian(J)|@in(links,I,J):p(I,J))=1);@for(links(I,J)|@in(links,I,J):@bin(p(I,J)));!对于每一个部件,并联的元件数是一定的,p(I,J)只能取0或1,且p(I,J)的和为1;@sum(bujian(I):@sum(yuanjian(J)|@in(links,I,J):p(I,J)*C(I,J)))<=10; !总成本小于10(万元);end运行得到如下结果:Linearization components added:Constraints: 64Variables: 16Integers: 16Global optimal solution found.Objective value: 0.3920000Objective bound: 0.3920000Infeasibilities: 0.000000Extended solver steps: 0Total solver iterations: 12Variable Value Reduced CostP( 1, 1) 0.000000 0.000000P( 1, 2) 1.000000 0.000000P( 2, 1) 1.000000 0.000000P( 2, 2) 0.000000 0.000000P( 3, 1) 0.000000 0.000000P( 3, 2) 1.000000 0.000000C( 1, 1) 1.000000 0.000000C( 1, 2) 2.000000 0.000000C( 2, 1) 3.000000 0.000000C( 2, 2) 5.000000 0.000000C( 3, 1) 2.000000 0.000000C( 3, 2) 4.000000 0.000000R( 1, 1) 0.6000000 0.000000R( 1, 2) 0.8000000 0.000000R( 2, 1) 0.7000000 0.000000R( 2, 2) 0.8000000 0.000000R( 3, 1) 0.5000000 0.000000R( 3, 2) 0.7000000 0.000000Row Slack or Surplus Dual Price1 0.3920000 1.0000002 0.000000 0.0000003 0.000000 0.0000004 0.000000 0.0000005 1.000000 0.000000因此,此时的最优解可以得到:即在第一个部件上并联两个元件,第二个部件上并联一个元件,第三个部件上并联两个元件,此时系统的在成本允许的情况下稳定性达到最大0.392。

4. 二选一约束条件某汽车公司正在考虑生产3种类型的汽车:微型、中型和大型。

表4.4给出了每种汽车需要的资源及产生的利润。

目前有6000吨钢材和60000小时的劳动时间。

要生产一种在经济效益上可行的汽车,这种汽车必须至少生产1000辆。

试为该公司制定一个使生产利润达到最大的方案。

解:设X1、X2、X3分别表示生产微型汽车、中型汽车、大型汽车的数量。

引入0-1变量,化为整数规划。

设yi 只取0, 1两个值,则生产1000辆或不生产用数学表达为:目标函数:max=2000*x1+3000*x2+4000*x3;限制条件:1.5 *x1+3 *x2+5 *x3<=6000;30* x1+25*x2+40* x3<=60000;x1<=5000*y1; (取个合理范围)x1>=1000* y1;x2<=5000*y2;x2>=1000* y2;x3<=5000*y3;x3>=1000*y3;x1,x2,x3为整数;用Lingo 编程求解:model :max =2000*x1+3000*x2+4000*x3;3,2,1},1,0{1000=∈=i y yi xi i ⎩⎨⎧-=变量不生产该车型,生产该车型100,1iy1.5*x1+3*x2+5*x3<=6000;30* x1+25*x2+40*x3<=60000;x1<=5000*y1;x1>=1000*y1;x2<=5000*y2;x2>=1000*y2;x3<=5000*y3;x3>=1000*y3;@bin(y1);@bin(y2);@bin(y3);@gin(x1);@gin(x2);@gin(x3);End运行得到结果:Objective value: 6000000.Objective bound: 6000000.Infeasibilities: 0.000000Extended solver steps: 1Total solver iterations: 8Variable Value Reduced Cost X1 0.000000 -2000.000 X2 2000.000 -3000.000 X3 0.000000 -4000.000 Y1 0.000000 0.000000 Y2 1.000000 0.000000 Y3 0.000000 0.000000Row Slack or Surplus Dual Price1 6000000. 1.0000002 0.000000 0.0000003 10000.00 0.0000004 0.000000 0.0000005 0.000000 0.0000006 3000.000 0.0000007 1000.000 0.0000008 0.000000 0.0000009 0.000000 0.000000易知生产中型车2000辆可以使生产利润达到最大为6000000美元。

相关文档
最新文档