最优化方法(线性规划)——用Lingo对线性规划进行灵敏度分析

最优化方法(线性规划)——用Lingo对线性规划进行灵敏度分析
最优化方法(线性规划)——用Lingo对线性规划进行灵敏度分析

lingo 软件求解线性规划及灵敏度分析

注:以目标函数最大化为例进行讨论,对求最小的问题,有类似的分析方法!所有程序运行环境为lingo10。 一、用lingo 软件求解线性规划

例1:

m a x 23..4310

3512,0

z x y s t x y x y x y =++≤+≤≥

在模型窗口输入:

model: max=2*x+3*y; 4*x+3*y<=10; 3*x+5*y<12;

! the optimal value is :7.454545 ; End 如图所示:

运行结果如下(点击 工具栏上的‘solve ’或点击菜单‘lingo ’下的‘solve ’即可):

Global optimal solution found.

Objective value: 7.454545(最优解函数值)

Infeasibilities: 0.000000 Total solver iterations: 2(迭代次数)

Variable (最优解) Value Reduced Cost X 1.272727 0.000000 Y 1.636364 0.000000

Row Slack or Surplus Dual Price 1 7.454545 1.000000 2 0.000000 0.9090909E-01 3 0.000000 0.5454545

例2:

12123124125m a x 54..

390280450

z x x s t x x x x x x x x x x =+++=++=++=≥ 在模型窗口输入:

model:

max=5*x1+4*x2; x1+3*x2+x3=90; 2*x1+x2+x4=80; x1+x2+x5=45; end

运行(solve )结果如下:

Global optimal solution found.

Objective value: 215.0000 Infeasibilities: 0.000000 Total solver iterations: 3

Variable Value Reduced Cost X1 35.00000 0.000000 X2 10.00000 0.000000 X3 25.00000 0.000000 X4 0.000000 1.000000 X5 0.000000 3.000000

Row Slack or Surplus Dual Price 1 215.0000 1.000000 2 0.000000 0.000000 3 0.000000 1.000000 4 0.000000 3.000000

例3

23123234235m in 2..22

3120

z x x s t x x x x x x x x x x =-+-+=-+=-+=≥ 在模型窗口输入:

model:

min=-x2+2*x3; x1-2*x2+x3=2; x2-3*x3+x4=1; x2-x3+x5=2; end

运行结果如下:

Global optimal solution found.

Objective value: -1.500000 Infeasibilities: 0.000000 Total solver iterations: 2

Variable Value Reduced Cost X2 2.500000 0.000000 X3 0.5000000 0.000000 X1 6.500000 0.000000 X4 0.000000 0.5000000 X5 0.000000 0.5000000

Row Slack or Surplus Dual Price 1 -1.500000 -1.000000 2 0.000000 0.000000 3 0.000000 0.5000000 4 0.000000 0.5000000

例4:(非线性)

m in ..

124

x y z s t x y x z +++≤+= 在模型窗口输入:

model :

min =@abs (x)+@abs (y)+@abs (z); x+y<=1; 2*x+z=4; @free (x); @free (y);

@free(z);

End

求解器状态如下:(可看出是非线性模型!)

运行结果为:

Linearization components added:

Constraints: 12

Variables: 12

Integers: 3

Global optimal solution found.

Objective value:(最优解函数值) 3.000000

Objective bound: 3.000000 Infeasibilities: 0.000000

Extended solver steps: 0

Total solver iterations: 3

Variable(最优解) Value Reduced Cost X 2.000000 0.000000

Y -1.000000 0.000000 Z 0.000000 0.000000

Row Slack or Surplus Dual Price

1 3.000000 -1.000000

2 0.000000 1.000000

3 0.000000 -1.000000

二、用lingo软件进行灵敏度分析实例

例5:

m a x 603020864842 1.5202 1.50.58

5

,,0

S x y z

x y z x y z x y z y x y z =++++≤++≤++≤≤≥

在模型窗口输入: Lingo 模型:

model:

max=60*x+30*y+20*z; 8*x+6*y+z<48; 4*x+2*y+1.5*z<20; 2*x+1.5*y+0.5*z<8; y<5; end

(一)求解报告(solution report )

通过菜单Lingo →Solve 可以得到求解报告(solution report )如下:

Global optimal solution found at iteration: 0 Infeasibilities: 0.000000 Objective value: 280.0000 Total solver iterations: 2

Variable Value Reduced Cost X 2.000000 0.000000 Y 0.000000 5.000000 Z 8.000000 0.000000

Row Slack or Surplus Dual Price 1 280.0000 1.000000 2 24.00000 0.000000 3 0.000000 10.00000 4 0.000000 10.00000 5 5.000000 0.000000

分析Value,Reduced Cost ,Slack or Surplus ,Dual Price 的意义如下: 1、最优解和基变量的确定

Value 所在列给出了问题的最优解。

由于基变量取值非零,因此Value 所在列取值非零的决策变量x,z 是基变量。 2、差额成本

Reduced Cost (或opportunity cost )所在列的三个数值表示当决策变量取值增加一个单位时,目标函数值的减少量。例如:第2个数5表示当变量y 增加一个单位时,最优目标函数值减少的量。例如:当y=1时,最优目标函数值为280-5=275。可通过如下模型可检验:

model:

max=60*x+30*y+20*z;

8*x+6*y+z<48;

4*x+2*y+1.5*z<20;

2*x+1.5*y+0.5*z<8;

y<5;

y=1;

end

注:(1)换一个角度说,就是目标函数中变量y的系数至少增加5,那么生产y才会有利!

(2)基变量的Reduced Cost值为0,只有非基变量的Reduced Cost值才可能不为0;故由value,和Reduced Cost值分析可知y为非基变量。

3、松弛变量取值

Slack or Surplus所在列的各数表示各行的松弛变量的取值。目标函数行的Slack or Surplus 值没啥意义,不用考虑。可通过如下模型检验:

model:

max=60*x+30*y+20*z;

8*x+6*y+z+s1=48;

4*x+2*y+1.5*z+s2=20;

2*x+1.5*y+0.5*z+s3=8;

y+s4=5;

end

4、对偶价格(影子价格)

Dual Price所在列的各数表示相应约束条件的右端常数增加一个单位时,最优目标函数值的增加量。注,只有紧约束行的Dual Price值不为0。例如:要检验第三行约束,可通过如下模型:

model:

max=60*x+30*y+20*z;

8*x+6*y+z<48;

4*x+2*y+1.5*z<21;

2*x+1.5*y+0.5*z<8;

y<5;

end

(二)灵敏度分析报告

首先设置:Lingo→Options→General solver→Dual computations→Prices and Range。

当求解完成后,最小化求解报告窗口,然后点击菜单Lingo→Range,可得灵敏度分析报告:

Ranges in which the basis is unchanged:

Objective Coefficient Ranges

Current Allowable Allowable Variable Coefficient Increase Decrease

X 60.00000 20.00000 4.000000 Y 30.00000 5.000000 INFINITY Z 20.00000 2.500000 5.000000

Righthand Side Ranges

Row Current Allowable Allowable

RHS Increase Decrease

2 48.00000 INFINITY 24.00000

3 20.00000 4.000000 4.000000

4 8.000000 2.000000 1.333333

5 5.000000 INFINITY 5.000000

分析Objective Coefficient Ranges ,Righthand Side Ranges 的意义如下:(不必控制变量,可以同时改变多个值)

1、目标函数中系数的变化对最优基的影响

Objective Coefficient Ranges 表示目标函数行各系数在某个范围内变化时,最优基保持不变。以变量x 的系数为例:当x 的系数在()6046020-+(开区间)内取值时,最优基保持不变。此时,最优解不变,最优目标函数值变了。例如:可通过如下模型检验:

model:

max=56.0001*x+30*y+20*z; 8*x+6*y+z<48;

4*x+2*y+1.5*z<20; 2*x+1.5*y+0.5*z<8; y<5; end

2、约束条件右端常数变化对最优基的影响

Righthand Side Ranges 表示约束右端项各数在某个范围内变化时,最优基保持不变。以第一个约束行为例:当右端项在()482448-+∞(开区间)内取值时,最优基保持不变。此时,最优解不变,目标函数的最优值变化了。例如:可通过如下模型检验:

model:

max=60*x+30*y+20*z; 8*x+6*y+z<4800; 4*x+2*y+1.5*z<20; 2*x+1.5*y+0.5*z<8; y<5; end

注:

关于lingo 软件的更广泛的应用见相关参考书或者lingo 软件的帮助文档!!

练习:

1、建立线性规划模型并求解

(1)某工厂生产甲、乙两种产品。已知生产甲种产品t 1需耗A 种矿石t 10、B 种矿石t 5、煤t 4;生产乙种产品t 1需耗A 种矿石t 4、B 种矿石t 4、煤t 9。每t 1甲种产品的利润是600元,每t 1乙种产品的利润是1000元。工厂在生产这两种产品的计划中要求消耗A 种矿石不超过t 300、B 种矿石不超过t 200、煤不超过t 360。甲、乙两种产品应各生产多少,能使利润总额达到最大? max z=600x+1000y; s.t. 10x+4y<=300; 2x+4y<=200; 4x+9y<=360; x>=0,y>=0;

Global optimal solution found.

Objective value: 42648.65 Infeasibilities: 0.000000 Total solver iterations: 3

Variable Value Reduced Cost X 17.02703 0.000000 Y 32.43243 0.000000 Row Slack or Surplus Dual Price 1 42648.65 1.000000 2 0.000000 18.91892 3 36.21622 0.000000 4 0.000000 102.7027

(2)设有A 1,A 2两个香蕉基地,产量分别为60吨和80吨,联合供应B 1,B 2,B 3三个销地的销售量经预测分别为50吨、50吨和40吨。两个产地到三个销地的单位运价如下表所示:

表1(单位运费:元/吨)

问每个产地向每个销地各发货多少,才能使总的运费最少? minz=600*x11+300*x12+400*x13+400*x21+700*x22+300*x23; x11+x12+x13=60; x21+x22+x23=80; x11+x21=50; x12+x22=50; x13+x23=40;

x11>=0,x12>=0,x13>=0,x21>=0,x22>=0,x23>=0; Global optimal solution found.

Objective value: 48000.00 Infeasibilities: 0.000000 Total solver iterations: 1

Variable Value Reduced Cost X11 0.000000 100.0000 X12 50.00000 0.000000 X13 10.00000 0.000000 X21 50.00000 0.000000 X22 0.000000 500.0000 X23 30.00000 0.000000 Row Slack or Surplus Dual Price 1 48000.00 -1.000000 2 0.000000 0.000000 3 0.000000 100.0000 4 0.000000 -500.0000 5 0.000000 -300.0000 6 0.000000 -400.0000 2、用Lingo 软件对下列线性规划问题进行灵敏度分析。 (1)

12312312312123m in 33..

25231612,,0

x x x s t x x x x x x x x x x x -++-+≤-+≤+≤≥ Ranges in which the basis is unchanged:

Objective Coefficient Ranges

Current Allowable Allowable V ariable Coefficient Increase Decrease X1 -3.000000 1.500000 3.000000 X2 3.000000 3.000000 1.500000 X3 1.000000 INFINITY 5.000000 Righthand Side Ranges

Row Current Allowable Allowable RHS Increase Decrease 2 5.000000 3.000000 1.000000 3 16.00000 1.000000 6.000000 4 12.00000 INFINITY 1.000000 (2)

1212312412515m a x 2..

506221,,0

L x x s t x x x x x x x x x x x +++=-++=++=≥ Ranges in which the basis is unchanged:

Objective Coefficient Ranges

Current Allowable Allowable V ariable Coefficient Increase Decrease

X1 2.000000 4.000000 1.000000 X2 1.000000 1.000000 0.6666667 X3 0.0 0.8000000 INFINITY X4 0.0 0.5714286 0.5000000 X5 0.0 0.2000000 INFINITY Righthand Side Ranges

Row Current Allowable Allowable RHS Increase Decrease 2 5.000000 1.000000 1.500000 3 0.0 INFINITY 1.400000 4 21.00000 9.000000 3.500000 (3)

()

123412341234m ax 30354045..

34647043658001,2,3,4i x x x x s t x x x x x x x x x i ++++++≤+++≤≥=

Ranges in which the basis is unchanged:

Objective Coefficient Ranges

Current Allowable Allowable V ariable Coefficient Increase Decrease

X1 30.00000 5.000000 INFINITY X2 35.00000 10.00000 8.000000 X3 40.00000 20.00000 INFINITY X4 45.00000 13.33333 5.714286 Righthand Side Ranges

Row Current Allowable Allowable RHS Increase Decrease 2 70.00000 36.66667 6.000000 3 80.00000 7.500000 27.50000 3、综合题

某工厂用甲,乙两种原料生产A,B,C,D 四种产品,每种产品的利润、现有原料数量及每种产品消耗原料定额如下表:

问题:

(1)怎样组织生产才能使总利润最大?

(2)如果产品A的利润有波动,波动范围应限制在什么范围内,才能使得原生产计划不变?(3)若原料甲的数量发生变化,在什么范围内变化时才能使得原生产计划不变?

(4)若工厂引进新产品E,已知生产1万件E消耗原料甲3千克,材料乙1千克,问E 的利润为至少为多少时,投资才有利?(提示:利用差额成本分析!)

要求:建立相应的数学模型,用Lingo进行分析。

解:

(1)

model:

max=9*x1+8*x2+50*x3+19*x4;

3*x1+2*x2+10*x3+4*x4<=18;

2*x3+2.5*x4<=3;

end

Global optimal solution found.

Objective value: 87.00000

Infeasibilities: 0.000000

Total solver iterations: 1

Variable Value Reduced Cost

X1 0.000000 3.000000

X2 1.500000 0.000000

X3 1.500000 0.000000

X4 0.000000 9.500000

Row Slack or Surplus Dual Price

1 87.00000 1.000000

2 0.000000 4.000000

3 0.000000 5.000000

(2)and(3)

Ranges in which the basis is unchanged:

Objective Coefficient Ranges

Current Allowable Allowable

Variable Coefficient Increase Decrease

X1 9.000000 3.000000 INFINITY

X2 8.000000 2.000000 2.000000

X3 50.00000 INFINITY 7.600000

X4 19.00000 9.500000 INFINITY

Righthand Side Ranges

Row Current Allowable Allowable

RHS Increase Decrease 有问题 2 18.00000 INFINITY 3.000000 有问题 3 3.000000 0.6000000 3.000000

(4)

model:

max=9*x1+8*x2+50*x3+19*x4+x5;

3*x1+2*x2+10*x3+4*x4+3*x5<=18;

2*x3+2.5*x4+x5<=3;

end

Global optimal solution found.

Objective value: 87.00000

Infeasibilities: 0.000000

Total solver iterations: 1

Variable Value Reduced Cost

X1 0.000000 3.000000

X2 1.500000 0.000000

X3 1.500000 0.000000

X4 0.000000 9.500000

X5 0.000000 16.00000

Row Slack or Surplus Dual Price

1 87.00000 1.000000

2 0.000000 4.000000

3 0.000000 5.000000

4、整数规划

(1)

max z=4*x1+3*x2;

s.t. 3*x1+4*x2<=12;

4*x1+2*x2<=9;

x1>=0,x2>=0,且为整数

model:

max=4*x1+3*x2;

3*x1+4*x2<=12;

4*x1+2*x2<=9;

@gin(x1);

@gin(x2);

end

Global optimal solution found.

Objective value: 10.00000

Objective bound: 10.00000

Infeasibilities: 0.000000

Extended solver steps: 0

Total solver iterations: 0

Variable Value Reduced Cost

X1 1.000000 -4.000000

X2 2.000000 -3.000000

Row Slack or Surplus Dual Price

1 10.00000 1.000000

2 1.000000 0.000000

3 1.000000 0.000000 (2)

min z=x1+4*x2;

2*x1+x2<=8;

x1+2*x2>=6;

x1>=0,x2>=0,且为整数

model:

min=x1+4*x2;

2*x1+x2<=8;

x1+2*x2>=6;

@gin(x1);

@gin(x2);

end

Global optimal solution found.

Objective value: 10.00000

Objective bound: 10.00000 Infeasibilities: 0.000000

Extended solver steps: 0

Total solver iterations: 0

Variable Value Reduced Cost

X1 2.000000 1.000000

X2 2.000000 4.000000

Row Slack or Surplus Dual Price

1 10.00000 -1.000000

2 2.000000 0.000000

3 0.000000 0.000000 (3)

max z=x1+x2;

-x1+x2<=1;

3*x1+x2<=4;

x1>=0,x2>=0,且为整数

model:

max=x1+x2;

-x1+x2<=1;

3*x1+x2<=4;

@gin(x1);

@gin(x2);

end

Global optimal solution found.

Objective value: 2.000000

Objective bound: 2.000000 Infeasibilities: 0.000000

Extended solver steps: 0

Total solver iterations: 0

Variable Value Reduced Cost

X1 1.000000 -1.000000

X2 1.000000 -1.000000

Row Slack or Surplus Dual Price

1 2.000000 1.000000

2 1.000000 0.000000

3 0.000000 0.000000

五种最优化方法

五种最优化方法 1.最优化方法概述 1.1最优化问题的分类 1)无约束和有约束条件; 2)确定性和随机性最优问题(变量是否确定); 3)线性优化与非线性优化(目标函数和约束条件是否线性); 4)静态规划和动态规划(解是否随时间变化)。 1.2最优化问题的一般形式(有约束条件): 式中f(X)称为目标函数(或求它的极小,或求它的极大),si(X)称为不等式约束,hj(X)称为等式约束。化过程就是优选X,使目标函数达到最优值。 2.牛顿法 2.1简介 1)解决的是无约束非线性规划问题; 2)是求解函数极值的一种方法; 3)是一种函数逼近法。 2.2原理和步骤

3.最速下降法(梯度法) 3.1最速下降法简介 1)解决的是无约束非线性规划问题; 2)是求解函数极值的一种方法; 3)沿函数在该点处目标函数下降最快的方向作为搜索方向; 3.2最速下降法算法原理和步骤

4.模式搜索法(步长加速法) 4.1简介 1)解决的是无约束非线性规划问题; 2)不需要求目标函数的导数,所以在解决不可导的函数或者求导异常麻烦的函数的优化问题时非常有效。 3)模式搜索法每一次迭代都是交替进行轴向移动和模式移动。轴向移动的目的是探测有利的下降方向,而模式移动的目的则是沿着有利方向加速移动。 4.2模式搜索法步骤

5.评价函数法 5.1简介 评价函数法是求解多目标优化问题中的一种主要方法。在许多实际问题中,衡量一个方案的好坏标准往往不止一个,多目标最优化的数学描述如下:min (f_1(x),f_2(x),...,f_k(x)) s.t. g(x)<=0 传统的多目标优化方法本质是将多目标优化中的各分目标函数,经处理或数学变换,转变成一个单目标函数,然后采用单目标优化技术求解。常用的方法有“线性加权和法”、“极大极小法”、“理想点法”。选取其中一种线性加权求合法介绍。 5.2线性加权求合法 6.遗传算法 智能优化方法是通过计算机学习和存贮大量的输入-输出模式映射关系,进

1最优化方法教案(线性规划)

最优化方法 一、引言 最优化理论与方法是一门应用性很强的年轻学科。它研究某些数学上定义的问题的最优解,即对于给出的实际问题,从众多的方案中选出最优方案。 虽然最优化可以追朔到十分古老的极值问题,然而,他成为一门独立的学科诗在上世纪40年代末,是在1947年Dantzing 提出求解一般线性规划问题的单纯型法之后。现在,解线性规划、非线性规划以及随机规划、非光滑规划、多目标规划、几何规划、整数规划等各种最优化问题的理论的研究发展迅速,新方法不断出现,实际应用日益广泛。在电子计算机的推动下,最优化理论与方法在经济计划、工程设计、生产管理、交通运输等方面得到了广泛应用,成为一门十分活跃的学科。 现在大多数有代表性的最优化算法已有可以方便使用的软件包,如lindo\lingo 优化软件包。但有效利用这些成果是以有待解决的问题已被模型化成最优化问题的形式为前提的。要做到这点,要有深刻的洞察力和综合能力,这需要掌握最优化算法的结构和特点,并与专业知识的结合和兼蓄。 最优化有着丰富的内容和方法,本课我们主要介绍线性规和非线性规划的主要方法与理论他们是最优化理论的重要分支,也是最基本的部分。 第一部分:线性规划 第一章:单纯型法 第一节问题的引出: 例 1:某制造公司需要生产n 种产品,生产这n 种产品需要m 种不同的原材料,第i (i=1,2,.....m.。)种原材料的拥有量为b i 。实际情况很复杂,我们将其简化或理想化,只关注某个时间点的特定情况,第i 种原材料在某时间点的市场价格为ρi ,生产单位数量的第j 种产品需消耗第i 种原材料a ij 个单位。第j 种产品在同一时间点上的市场价格为σj 。 考虑问题一:如何安排1,2,…….n 种产品的生产,从而使收益最大 设第j 种的产量为j x 单位,第j 种产品的收益与市场销售价i σ有关,也与生产第j 种产 品所消耗的原材料费用1 m i j i i a ρ=∑有关,因此第j 种单位产品的纯收入为1 m j j ij i i c a σρ==-∑, 全部纯收入 j j c x ∑,此时0j x ≥。 而我们不可能超出原材料的拥有量生产产品。生产n 种产品时,所消耗的第i (i=1,2,.....m.。)种原材料的总量为 11221 n i i in n ij j j a x a x a x a x =++ +=∑

lingo灵敏度分析实例

一个实例理解Lingo的灵敏性分析 线性规划问题的三个重要概念: 最优解就是反应取得最优值的决策变量所对应的向量。 最优基就是最优单纯形表的基本变量所对应的系数矩阵如果其行列式是非奇异的,则该系数矩阵为最优基。 最优值就是最优的目标函数值。 Lingo的灵敏性分析是研究当目标函数的系数和约束右端项在什么范围(此时假定其它系数不变)时,最优基保持不变。灵敏性分析给出的只是最优基保持不变的充分条件,而不一定是必要条件。下面是一道典型的例题。 一奶制品加工厂用牛奶生产A1,A2两种奶制品,1桶牛奶可以在甲车间用12小时加工成3公斤A1,或者在乙车间用8小时加工成4公斤A2。根据市场需求,生产的A1,A2全部能售出,且每公斤A1获利24元,每公斤A2获利16元。现在加工厂每天能得到50桶牛奶的供应,每天正式工人总的劳动时间480小时,并且甲车间每天至多能加工100公斤A1,乙车间的加工能力没有限制。试为该厂制订一个生产计划,使每天获利最大,并进一步讨论以下3个附加问题: 1)若用35元可以买到1桶牛奶,应否作这项投资?若投资,每天最多购买多少桶牛奶?2)若可以聘用临时工人以增加劳动时间,付给临时工人的工资最多是每小时几元? 3)由于市场需求变化,每公斤A1的获利增加到30元,应否改变生产计划? 模型代码: max=72*x1+64*x2; x1+x2<=50; 12*x1+8*x2<=480; 3*x1<=100; 运行求解结果: Objective value: 3360.000 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 2 0.000000 48.00000 3 0.000000 2.000000 4 40.00000 0.000000 这个线性规划的最优解为x1=20,x2=30,最优值为z=3360,即用20桶牛奶生产A1, 30桶牛奶生产A2,可获最大利润3360元。输出中除了告诉我们问题的最优解和最优值以外,还有许多对分析结果有用的信息。 其中,“Reduced Cost”列出最优单纯形表中判别数所在行的变量的系数,表示当变量有微小变动时, 目标函数的变化率。其中基变量的reduced cost值应为0,对于非基变量Xj, 相应的reduced cost值表示当某个变量Xj 增加一个单位时目标函数减少的量( max型问题)。本例中X1,X2均为基变量。 “Slack or Surplus”给出松驰变量的值,模型第一行表示目标函数,所以第二行对应第一个约束。3个约束条件的右端不妨看作3种“资源”:原料、劳动时间、车间甲的加工能力。输出中Slack or Surplus给出这3种资源在最优解下是否有剩余:原料、劳动时间的剩余均为

用excel规划求解并作灵敏度分析

题目 如何利用EXC E L求解线性规划 问题及其灵敏度分析 第 8 组 姓名学号 乐俊松 090960125 孙然 090960122 徐正超 090960121 崔凯 090960120王炜垚 090960118 蔡淼 090960117南京航空航天大学(贸易经济)系 2011年(5)月(3)日

摘要 线性规划是运筹学的重要组成部分,在工业、军事、经济计划等领域有着广泛的应用,但其手工求解方法的计算步骤繁琐复杂。本文以实际生产计划投资组合最优化问题为例详细介绍了Excel软件的”规划求解”和“solvertable”功能辅助求解线性规划模型的具体步骤,并对其进行了灵敏度分析。

目录 引言 (4) 软件的使用步骤 (4) 结果分析 (9) 结论与展望 (10) 参考文献 (11)

1. 引言 对于整个运筹学来说,线性规划(Linear Programming)是形成最早、最成熟的一个分支,是优化理论最基础的部分,也是运筹学最核心的内容之一。它是应用分析、量化的方法,在一定的约束条件下,对管理系统中的有限资源进行统筹规划,为决策者提供最优方案,以便产生最大的经济和社会效益。因此,将线性规划方法用于企业的产、销、研等过程成为了现代科学管理的重要手段之一。[1] Excel中的线性规划求解和solvertable功能并不作为命令直接显示在菜单中,因此,使用前需首先加载该模块。具体操作过程为:在Excel的菜单栏中选择“工具/加载宏”,然后在弹出的对话框中选择“规划求解”和“solvertable”,并用鼠标左键单击“确定”。加载成功后,在菜单栏中选择“工具/规划求解”,便会弹出“规划求解参数”对话框。在开始求解之前,需先在对话框中设置好各种参数,包括目标单元格、问题类型(求最大值还是最小值)、可变单元格以及约束条件等。 2 软件的使用步骤 “规划求解”可以解决数学、财务、金融、经济、统计等诸多实 际问题,在此我们只举一个简单的应用实例,说明其具体的操作 方法。 某人有一笔资金可用于长期投资,可供选择的投资机会包括购买国库券、公司债券、投资房地产、购买股票或银行保值储蓄等。投资者希望投资组合的平均年限不超过5年,平均的期望收益率不低于13%,风险系数不超过4,收益的增长潜力不低于10%。问在满足上述要求的前提下投资者该如何选择投资组合使平均年收益率最高?(不同的投资方式的具体参数如下表。)

线性规划灵敏度分析

淮北师范大学 2011届学士学位论文 线性规划灵敏度分析 学院、专业数学科学学院数学与应用数学 研究方向运筹学 学生姓名陈红 学号20071101008 指导教师姓名张发明 指导教师职称副教授 2011年4月10日

线性规划的灵敏度分析 陈 红 (淮北师范大学数学科学学院,淮北,235000) 摘 要 本文主要从价值系数j c 的变化,技术系数ij a 的变化,右端常数i b 的变化以及增加新的约束条件和增加一个新变量的灵敏度这几个方面来进行研究;资源条件是线性规划灵敏度分析中的主要应用内容,而对于资源条件b 的一个重要应用是:“影子价格问题”的实际应用,最后简述了线性规划在经济及管理问题上的典型应用和从求解例题的图解法揭示了最优解的一些重要特征。 关键词 单纯形法,灵敏度分析,最优解,资源条件,价值系数

Sensitivity Analysis of Linear Programming Chen Hong (School of Mathematical Science,Huaibei Normal University ,Huaibei,235000) Abstract This thesis is mainly from the variety of the cost coefficient …j c ?, the variety of technology coefficient …ij a ?, the variety of the resources condition…i b ?and increase the new restraint and new variable to analytical linear programming of sensitivity analysis.This thesis is mainly based on the simplex method and dual simplex method of linear programming to system analytical the influence of the variety upon the optical solution of the coefficient of the simplex table.Linear programming of sensitivity analysis in physically of application is mainly about application of the variety of resources c ondition…i b ?in the economic management …shadow price problem?. Keywords simplex method, sensitivity analysis, optimum solution , resources condition ,cost coefficient

最优化方法及其应用 - 更多gbj149 相关pdf电子书下载

最优化方法及其应用 作者:郭科 出版社:高等教育出版社 类别:不限 出版日期:20070701 最优化方法及其应用 的图书简介 系统地介绍了最优化的理论和计算方法,由浅入深,突出方法的原则,对最优化技术的理论作丁适当深度的讨论,着重强调方法与应用的有机结合,包括最优化问题总论,线性规划及其对偶问题,常用无约束最优化方法,动态规划,现代优化算法简介,其中前八章为传统优化算法,最后一章还给出了部分优化问题的设计实例,也可供一般工科研究生以及数学建模竞赛参赛人员和工程技术人员参考, 最优化方法及其应用 的pdf电子书下载 最优化方法及其应用 的电子版预览 第一章 最优化问题总论1.1 最优化问题数学模型1.2 最优化问题的算法1.3 最优化算法分类1.4

组合优化问題简卉习题一第二章 最优化问题的数学基础2.1 二次型与正定矩阵2.2 方向导数与梯度2.3 Hesse矩阵及泰勒展式2.4 极小点的判定条件2.5 锥、凸集、凸锥2.6 凸函数2.7 约束问题的最优性条件习题二第三章 线性规划及其对偶问题3.1线性规划数学模型基本原理3.2 线性规划迭代算法3.3 对偶问题的基本原理3.4 线性规划问题的灵敏度习题三第四章 一维搜索法4.1 搜索区间及其确定方法4.2 对分法4.3 Newton切线法4.4 黄金分割法4.5 抛物线插值法习题四第五章 常用无约束最优化方法5.1 最速下降法5.2 Newton法5.3 修正Newton法5.4 共轭方向法5.5 共轭梯度法5.6 变尺度法5.7 坐标轮换法5.8 单纯形法习題五第六章 常用约束最优化方法6.1外点罚函数法6.2 內点罚函数法6.3 混合罚函数法6.4 约束坐标轮换法6.5 复合形法习题六第七章 动态规划7.1 动态规划基本原理7.2 动态规划迭代算法7.3 动态规划有关说明习题七第八章 多目标优化8.1 多目标最优化问题的基本原理8.2 评价函数法8.3 分层求解法8.4目标规划法习题八第九章 现代优化算法简介9.1 模拟退火算法9.2遗传算法9.3 禁忌搜索算法9.4 人工神经网络第十章 最优化问题程序设计方法10.1 最优化问题建模的一般步骤10.2 常用最优化方法的特点及选用标准10.3 最优化问题编程的一般过程10.4 优化问题设计实例参考文献 更多 最优化方法及其应用 相关pdf电子书下载

数学中的灵敏度分析

假设条件成为了建模过程中一个影响模型好坏的影响因素,灵敏度分析就是在模型建立后,对假设条件变化,检验模型的优劣性 一般来说Lingo做出来的灵敏度分析能够达到一个比较理想的程度,不过还是要根据模型本身来研究,建议你在开始之前先学习一下《数值分析》,对建模的灵敏度分析很有用哈,再根据《数值分析》的方法,对M-C(蒙特卡罗)方法进行灵敏度分析,你会很快掌握~~~ 随着现代工业的迅速发展,对工业设备的精度提出了更高的要求。但是,由于制造误差、轴承间隙、弹性变形等因素的影响,不可避免地会对设备的精度产生一定的影响。因此我们就有必要建立起一个数学模型并且应用恰当的分析方法来研究上述的各种误差对精度的影响关系,找出影响最大的因素,作为我们在实际的制造和装配过程中进行误差分配,降低生产成本,提高传动精度的理论依据。这里就可以采用灵敏度分析的方法。它主要包括局部灵敏度分析方法和全局灵敏度分析方法。 一、局部灵敏度分析方法 局部法主要分析因素对模型的局部影响(如某点)。局部法可以得到参数对输出的梯度,这一数值是许多领域研究中所需要的重要数据。局部法主要应用于数学表达式比较简单,灵敏度微分方程较易推出,不确定因素较少的系统模型中。主要包括直接求导法、有限差分法、格林函数法。 1.直接求导法 对于输入因素个数少、结构不复杂、灵敏度微分方程较易推导的系统或模型,直接法是一种简单快速的灵敏度分析方法。时变(非静止)系统可以用微分或微分-代数方程进行描述。假设要考虑的初值问题是 ,(1) 同样,代表n维输出变量,代表m维输入因素。代表初值数组。 式(1)对输入因素微分得到下述的灵敏度微分方程

(2) 或以矩阵形式表示为(3) 式中,是系统代数-微分方程右边对系统输出变量的导数(可称为雅可比矩阵),是对输入因素的导数,也可称为参数雅可比。微分方程(2)的初始条件为零向量。 上述的直接法建立在微分方程(2)的基础上,要得到其灵敏度矩阵S的解,需要先求得矩阵J和F的值。而矩阵的值又是由系统变量的真实值确定,因此,需同时或预先求得(1)方程的解。 对于非时变(静止)系统,将其代数方程,式中,Y是n维输出变量,X是m维输入因素。令表示隐性代数方程式的解。对输入因素求导数,得到下面的灵敏度公式: (4) 式中,称为静态灵敏度矩阵,和由静态点的变量值计算。对于变量少、结构不复杂、灵敏度微分方程较易推出的系统,直接法是一个简单快速的灵敏度分析方法。 2.有限差分法 局部灵敏度最简单的计算方法是有限差分法,其基本做法是使设计变量有一个微小的摄动,用差分格式来计算输出对设计变量的近似导数。其中比较简单的是采用向前差分格式 (5) 式中,截断误差与同阶。有时采用更为精确的中心差分公式 (6) 而,

matlab、lingo程序代码23-线性规划问题及灵敏度分析

线性规划问题及灵敏度分析在LINGO软件中的实现 (龙少波李东阳罗添元) 一、问题的提出: 某公司饲养实验用的动物以出售给动物研究所,已知这些动物的生长对饲 料中3种营养成分(蛋白质、矿物质和维生素)特别敏感,每个动物每周至少需 要蛋白质60g,矿物质3g,维生素8mg,该公司能买到5种不同的饲料,每种饲 料1kg所含各种营养成分和成本如下表所示,如果每个小动物每周食用饲料不超 过52kg,才能满足动物生长需要。 A1 A2 A3 A4 A5 营养最 低 要求蛋白质(g) 0.3 2 1 0.6 1.8 60 矿物质(g) 0.1 0.05 0.02 0.2 0.05 3 维生素(mg) 0.05 0.1 0.02 0.2 0.08 8 成本(元/ kg)0.2 0.7 0.4 0.3 0.5 问题: 1.求使得总成本最低的饲料配方? 2.如果另一个动物研究对蛋白质的营养要求变为59单位, 但是要求动物的价格比现在的价格便宜0.3元,问该养殖所 值不值得接受? 3.由于市场因素的影响,X2的价格降为0.6元每千克, 问是否要改变饲料配方? 二、建立线性规划数学模型 解答: (1)设需要饲料A1, A2, A3, A4分别为X1, X2, X3, X4kg,则建立线 性规划数学模型如下: 目标函数:MinS=0.2X1+0.7X2+0.4X3+0.3X4+0.5X5 约束条件:0.3X1+2X2+X3+0.6X4+1.8X5>=60 0.1X1+0.05X2+0.02X3+0.2X4+0.05X5>=3 005X1+0.1X2+0.02X3+0.2X4+0.08X5>=8

最优化方法及应用

陆吾生教授是加拿大维多利亚大学电气与计算机工程系 (Dept. of Elect. and Comp. Eng. University of Victoria) 的正教授, 且为我校兼职教授,曾多次来我校数学系电子系讲学。陆吾生教授的研究方向是:最优化理论和小波理论及其在1维和2维的数字信号处理、数字图像处理、控制系统优化方面的应用。 现陆吾生教授计划在 2007 年 10-11 月来校开设一门为期一个月的短期课程“最优化理论及其应用”(每周两次,每次两节课),对象是数学系、计算机系、电子系的教师、高年级本科生及研究生,以他在2006年出版的最优化理论的专著作为教材。欢迎数学系、计算机系、电子系的研究生及高年级本科生选修该短期课程,修毕的研究生及本科生可给学分。 上课地点及时间:每周二及周四下午2:00开始,在闵行新校区第三教学楼326教室。(自10月11日至11月8日) 下面是此课程的内容介绍。 ----------------------------------- 最优化方法及应用 I. 函数的最优化及应用 1.1 无约束和有约束的函数优化问题 1.2 有约束优化问题的Karush-Kuhn-Tucker条件 1.3 凸集、凸函数和凸规划 1.4 Wolfe对偶 1.5 线性规划与二次规划 1.6 半正定规划 1.7 二次凸锥规划 1.8 多项式规划 1.9解最优化问题的计算机软件 II 泛函的最优化及应用 2.1 有界变差函数 2.2 泛函的变分与泛函的极值问题 2.3 Euler-Lagrange方程 2.4 二维图像的Osher模型 2.5 泛函最优化方法在图像处理中的应用 2.5.1 噪声的消减 2.5.2 De-Blurring 2.5.3 Segmentation ----------------------------------------------- 注:这是一门约二十学时左右的短期课程,旨在介绍函数及泛函的最优化理论和方法,及其在信息处理中的应用。只要学过一元及多元微积分和线性代数的学生就能修读并听懂本课程。课程中涉及到的算法实现和应用举例都使用数学软件MATLAB 华东师大数学系

线性规划模型的应用与灵敏度分析正文

线性规划模型的应用与灵敏度分析 第一章线性规划问题 1.线性规划简介及发展 线性规划(Linear Programming)是运筹学中研究最早、发展最快、应用广泛、方法成熟的一个重要分支,它是辅助人们进行科学管理的一种数学方法,研究线性约束条件下线性目标函数的极值问题的数学理论和方法,英文缩写为LP。它是运筹学的一个重要分支,广泛应用于军事作战、经济分析、经营管理和工程技术等方面,为合理利用有限的人力、物力、财力等资源做出的最优决策,提供科学的依据。 线性规划及其通用解法——单纯形法是由美国G.B.Dantzig在1947年研究空军军事规划提出来的。法国数学家傅里叶和瓦莱-普森分别于1832和1911年独立地提出线性规划的想法,但未引起注意。1939年苏联数学家康托罗维奇在《生产组织与计划中的数学方法》一书中提出线性规划问题,也未引起重视[1]。1947年美国数学家丹齐克提出线性规划的一般数学模型和求解线性规划问题的通用方法──单纯形法,为这门学科奠定了基础。1947年美国数学家诺伊曼提出对偶理论,开创了线性规划的许多新的研究领域,扩大了它的应用范围和解题能力[2]。1951年美国经济学家库普曼斯把线性规划应用到经济领域,为此与康托罗维奇一起获1975年诺贝尔经济学奖。50年代后对线性规划进行大量的理论研究,并涌现出一大批新的算法。例如,1954年莱姆基提出对偶单纯形法,1954年加斯和萨迪等人解决了线性规划的灵敏度分析和参数规划问题,1956年塔克提出互补松弛定理,1960年丹齐克和沃尔夫提出分解算法等。线性规划的研究成果还直接推动了其他数学规划问题包括整数规划、随机规划和非线性规划的算法研究[3]。由于数字电子计算机的发展,出现了许多线性规划软件,如MPSX,OPHEIE,UMPIRE等,可以很方便地求解几千个变量的线性规划问题。1979年苏联数学家提出解线性规划问题的椭球算法,并证明它是多项式时间算法。1984年美国贝尔电话实验室的印度数学家N.卡马卡提出解线性规划问题的新的多项式时间算法。用这种方法求解线性规划问题在变量个数为5000时只要单纯形法所用时间的1/50。现已形成线性规划多项式算法理论。50年代后线性规划的应用范围不断扩大。建立线性规

最优化方法及其Matlab程序设计

最优化方法及其Matlab程序设计 1.最优化方法概述 在生活和工作中,人们对于同一个问题往往会提出多个解决方案,并通过各方面的论证,从中提取最佳方案。最优化方法就是专门研究如何从多个方案中科学合理地提取出最佳方案的科学。最优化是每个人,每个单位所希望实现的事情。对于产品设计者来说,是考虑如何用最少的材料,最大的性能价格比,设计出满足市场需要的产品。对于企业的管理者来说,则是如何合理、充分使用现有的设备,减少库存,降低能耗,降低成本,以实现企业的最大利润。 由于优化问题无所不在,目前最优化方法的应用和研究已经深入到了生产和科研的各个领域,如土木工程、机械工程、化学工程、运输调度、生产控制、经济规划、经济管理等,并取得了显著的经济效益和社会效益。 用最优化方法解决最优化问题的技术称为最优化技术,它包含两个方面的内容: 1)建立数学模型。 即用数学语言来描述最优化问题。模型中的数学关系式反映了最优化问题所要达到的目标和各种约束条件。 2)数学求解。 数学模型建好以后,选择合理的最优化算法进行求解。 最优化方法的发展很快,现在已经包含有多个分支,如线性规划、整数规划、非线性规划、动态规划、多目标规划等。 2.最优化方法(算法)浅析 最优化方法求解很大程度上依赖于最优化算法的选择。这里,对最优化算法做一个简单的分类,并对一些比较常用的典型算法进行解析,旨在加深对一些最优化算法的理解。 最优化算法的分类方法很多,根据不同的分类依据可以得到不同的结果,这里根据优化算法对计算机技术的依赖程度,可以将最优化算法进行一个系统分类:线性规划与整数规划;非线性规划;智能优化方法;变分法与动态规划。 2.1 线性规划与整数规划 线性规划在工业、农业、商业、交通运输、军事和科研的各个研究领域有广泛应用。例如,在资源有限的情况下,如何合理使用人力、物力和资金等资源,以获取最大效益;如何组织生产、合理安排工艺流程或调制产品成分等,使所消耗的资源(人力、设备台时、资金、原始材料等)为最少等。 线性规划方法有单纯形方法、大M法、两阶段法等。 整数规划有割平面法、分枝定界法等。 2.2 非线性规划 20世纪中期,随着计算机技术的发展,出现了许多有效的算法——如一些非线性规划算法。非线性规划广泛用于机械设计、工程管理、经济生产、科学研究和军事等方面。

最优化方法及其应用课后答案

1 2 ( ( 最优化方法部分课后习题解答 1.一直优化问题的数学模型为: 习题一 min f (x ) = (x ? 3)2 + (x ? 4)2 ? g (x ) = x ? x ? 5 ≥ ? 1 1 2 2 ? 试用图解法求出: s .t . ?g 2 (x ) = ?x 1 ? x 2 + 5 ≥ 0 ?g (x ) = x ≥ 0 ? 3 1 ??g 4 (x ) = x 2 ≥ 0 (1) 无约束最优点,并求出最优值。 (2) 约束最优点,并求出其最优值。 (3) 如果加一个等式约束 h (x ) = x 1 ? x 2 = 0 ,其约束最优解是什么? * 解 :(1)在无约束条件下, f (x ) 的可行域在整个 x 1 0x 2 平面上,不难看出,当 x =(3,4) 时, f (x ) 取最小值,即,最优点为 x * =(3,4):且最优值为: f (x * ) =0 (2)在约束条件下, f (x ) 的可行域为图中阴影部分所示,此时,求该问题的最优点就是 在约束集合即可行域中找一点 (x 1 , x 2 ) ,使其落在半径最小的同心圆上,显然,从图示中可 以看出,当 x * = 15 , 5 ) 时, f (x ) 所在的圆的半径最小。 4 4 ?g (x ) = x ? x ? 5 = 0 ? 15 ?x 1 = 其中:点为 g 1 (x ) 和 g 2 (x ) 的交点,令 ? 1 1 2 ? 2 求解得到: ? 4 5 即最优点为 x * = ? ?g 2 (x ) = ?x 1 ? x 2 + 5 = 0 15 , 5 ) :最优值为: f (x * ) = 65 ?x = ?? 2 4 4 4 8 (3).若增加一个等式约束,则由图可知,可行域为空集,即此时最优解不存在。 2.一个矩形无盖油箱的外部总面积限定为 S ,怎样设计可使油箱的容量最大?试列出这个优 化问题的数学模型,并回答这属于几维的优化问题. 解:列出这个优化问题的数学模型为: max f (x ) = x 1x 2 x 3 ?x 1x 2 + 2x 2 x 3 + 2x 1x 3 ≤ S

最优化方法(线性规划)——用Lingo对线性规划进行灵敏度分析

lingo 软件求解线性规划及灵敏度分析 注:以目标函数最大化为例进行讨论,对求最小的问题,有类似的分析方法!所有程序运行环境为lingo10。 一、用lingo 软件求解线性规划 例1: m a x 23..4310 3512,0 z x y s t x y x y x y =++≤+≤≥ 在模型窗口输入: model: max=2*x+3*y; 4*x+3*y<=10; 3*x+5*y<12; ! the optimal value is :7.454545 ; End 如图所示: 运行结果如下(点击 工具栏上的‘solve ’或点击菜单‘lingo ’下的‘solve ’即可): Global optimal solution found. Objective value: 7.454545(最优解函数值) Infeasibilities: 0.000000 Total solver iterations: 2(迭代次数)

Variable (最优解) Value Reduced Cost X 1.272727 0.000000 Y 1.636364 0.000000 Row Slack or Surplus Dual Price 1 7.454545 1.000000 2 0.000000 0.9090909E-01 3 0.000000 0.5454545 例2: 12123124125m a x 54.. 390280450 z x x s t x x x x x x x x x x =+++=++=++=≥ 在模型窗口输入: model: max=5*x1+4*x2; x1+3*x2+x3=90; 2*x1+x2+x4=80; x1+x2+x5=45; end 运行(solve )结果如下: Global optimal solution found. Objective value: 215.0000 Infeasibilities: 0.000000 Total solver iterations: 3 Variable Value Reduced Cost X1 35.00000 0.000000 X2 10.00000 0.000000 X3 25.00000 0.000000 X4 0.000000 1.000000 X5 0.000000 3.000000 Row Slack or Surplus Dual Price 1 215.0000 1.000000 2 0.000000 0.000000 3 0.000000 1.000000 4 0.000000 3.000000 例3

灵敏性分析

LINGO灵敏性分析(Range,Ctrl+R) 用该命令产生当前模型的灵敏性分析报告:研究当目标函数的费用系数和约束右端项在 什么范围(此时假定其它系数不变)时,最优基保持不变。灵敏性分析是在求解模型时作出的,因此在求解模型时灵敏性分析是激活状态,但是默认是不激活的。为了激活灵敏性分析,运行 LINGO|Options…,选择 General Solver Tab,在 Dual Computations 列表框中,选择 Prices and Ranges 选项。灵敏性分析耗费相当多的求解时间,因此当速度很关键时,就没有必要激活它。 下面我们看一个简单的具体例子。 例 5.1某家具公司制造书桌、餐桌和椅子,所用的资源有三种:木料、木工和漆工。生产数据如下表所示: 若要求桌子的生产量不超过 5 件,如何安排三种产品的生产可使利润最大? 用 DESKS、TABLES 和 CHAIRS 分别表示三种产品的生产量,建立 LP 模型。 max=60*desks+30*tables+20*chairs; 8*desks+6*tables+chairs<=48; 4*desks+2*tables+1.5*chairs<=20; 2*desks+1.5*tables+.5*chairs<=8; tables<=5; 求解这个模型,并激活灵敏性分析。这时,查看报告窗口(Reports Window),可以看 到如下结果。

“Global optimal solution found at iteration: 3”表示 3 次迭代后得到全局最优解。“Objective value:280.0000”表示最优目标值为 280。“Value”给出最优解中各变量的值:造 2 个书桌(desks), 0 个餐桌(tables), 8 个椅子(chairs)。所以 desks、chairs 是基变量(非 0), tables 是非基变量(0)。 “Slack or Surplus”给出松驰变量的值: 第 1 行松驰变量 =280(模型第一行表示目标函数,所以第二行对应第一个约束) 第 2 行松驰变量 =24 第 3 行松驰变量 =0 第 4 行松驰变量 =0 第 5 行松驰变量 =5 “Reduced Cost”列出最优单纯形表中判别数所在行的变量的系数,表示当变量有微小变动时, 目标函数的变化率。其中基变量的 reduced cost 值应为 0,对于非基变量 Xj, 相应的 reduced cost 值表示当某个变量 Xj 增加一个单位时目标函数减少的量( max 型问题)。本例中:变量 tables 对应的 reduced cost 值为 5,表示当非基变量 tables 的值从 0变为 1 时(此时假定其他非基变量保持不变,但为了满足约束条件,基变量显然会发生变化),最优的目标函数值 = 280 - 5 = 275。 “DUAL PRICE”(对偶价格)表示当对应约束有微小变动时, 目标函数的变化率。输 出结果中对应于每一个约束有一个对偶价格。若其数值为 p,表示对应约束中不等式右端项若增加 1 个单位,目标函数将增加 p 个单位(max 型问题)。显然,如果在最优解处约束正好取等号(也就是“紧约束”,也称为有效约束或起作用约束),对偶价格值才可能不是0。本例中:第 3、4 行是紧约束,对应的对偶价格值为 10,表示当紧约束 3) 4 DESKS + 2 TABLES + 1.5 CHAIRS <= 20 变为 3) 4 DESKS + 2 TABLES + 1.5 CHAIRS <= 21 时,目标函数值 = 280 +10 = 290。对第 4 行也类似。 对于非紧约束(如本例中第 2、5 行是非紧约束),DUAL PRICE 的值为 0, 表示对应约束中不等式右端项的微小扰动不影响目标函数。有时, 通过分析 DUAL PRICE, 也可对产生不可行问题的原因有所了解。 灵敏度分析的结果是 目标函数中 DESKS 变量原来的费用系数为 60,允许增加(Allowable Increase)=4、允许减少(Allowable Decrease)=2,说明当它在[60-4,60+20] = [56,80]范围变化时,

线性规划与灵敏度分析练习题

线性规划练习题 1、用单纯形表求解以下线性规划问题 (1) max z= x1-2x2+x3 s.t. x1+x2+x3≤12 2x1+x2-x3≤ 6 -x1+3x2≤9 x1, x2, x3≥0 (2) min z= -2x1-x2+3x3-5x4 s.t x1+2x2+4x3-x4≤ 6 2x1+3x2-x3+x4≤12 x1+x3+x4≤ 4 x1, x2, x3, x4≥0 (3) min z= 3x1-x2 s.t. -x1-3x2≥-3 -2x1+3x2≥-6 2x1+x2≤8 4x1-x2≤16 x1, x2≥0 二、配料问题 某工厂要用四种合金T1,T2,T3和T4为原料,经熔炼成为一种新的不锈钢G。这四种原料含元素铬(Cr),锰(Mn)和镍(Ni)的含量(%),这四种原料的单价以及新的不锈钢材料G所要求的Cr,Mn和Ni的最低含量(%)如下表所示: 表错误!文档中没有指定样式的文字。-1 设熔炼时重量没有损耗,要熔炼成100公斤不锈钢G,应选用原料T1,T2,T3和T4各多少公斤,使成本最小。 灵敏度分析练习题 一、已知以下线性规划问题

max z= 2x1+x2-x3 s.t. x1+2x2+x3≤8 -x1+x2-2x3≤4 x1, x2, x3≥0 及其最优单纯形表如下: z x1 x6 (1)求使最优基保持不变的c2=1的变化范围。如果c2从1变成5,最优基是否变化,如果变化,求出新的最优基和最优解。 (2)对c1=2进行灵敏度分析,求出c1由2变为4时的最优基和最优解。 (3)对变量x3在第二个约束中的系数a23=-2进行灵敏度分析,求出a23从-2变为1时新的最优基和最优解。 (4)增加一个新的变量x6,它在目标函数中的系数c6=4,在约束条件中的系数向量为a6 1 2 = ? ? ? ? ? ?, 求新的最优基和最优解。 (5)增加一个新的约束x2+x3≥2,求新的最优基和最优解。 (6)设变量x1在约束条件中的系数向量由 1 1 - ? ? ? ? ? ?变为 -? ? ? ? ? ? 1 2 ,求出新的最优基和最优解。 二、某工厂用甲、乙、丙三种原料生产A、B、C、D四种产品,每种产品消耗原料定额以及三种原料 的数量如下表所示: (1)求使总利润最大的生产计划和按最优生产计划生产时三种原料的耗用量和剩余量。 (2)求四种产品的利润在什么范围内变化,最优生产计划不会变化。 (3)求三种原料的影子价格和四种产品的机会成本,并解释最优生产计划中有的产品不安排生产的原因。 (4)在最优生产计划下,哪一种原料更为紧缺?如果甲原料增加120吨,这时紧缺程度是否有变化?

Lingo与线性规划

Lingo 与线性规划 线性规划的标准形式是 1111111..0,1,2,,n n m mn n m i a x a x b s t a x a x b x i n +≤????+≤??≥= ? (1) 其中11n n z c x c x =++称为目标函数,自变量i x 称为决策变量,不等式组(1)称为约束条件. 满足不等式组(1)的所有1(,,)n x x 的集合称为可行域,在可行域里面使得z 取最小值 的**1(,,)n x x 称为最优解,最优解对应的函数值称为最优值。 求解优化模型的主要软件有Lingo 、Matlab 、Excel 等。其中Lingo 是一款专业求解优化模型的软件,有其他软件不可替代的方便功能。本文将简要介绍其在线性规划领域的应用。 一、基本规定 1、目标函数输入格式 max=函数解析式; 或者 min=函数解析式; 2、约束条件输入格式 利用:>、<、>=、<=等符号。但是>与>=没有区别。Lingo 软件默认所以自变量都大于等于0. 3、运算 加(+),减(-),乘(*),除(/),乘方(x^a),要注意乘号(*)不能省略。 4、变量名 不区分大小写字母,不超过32个字符,必须以字母开头。 5、标点符号 每个语句以分号“;”结束,感叹号“!”开始的是说明语句(说明语句也需要以分号“;”结束)。但是,model ,sets ,data 以“:”结尾。endsets ,enddata ,end 尾部不加任何符号。 6、命令不考虑先后次序 7、MODEL 语句 一般程序必须先输入MODEL :表示开始输入模型,以“END”结束。对简单的模型,这两个语句也可以省略。 8、改变变量的取值范围 @bin(变量名); 限制该变量为0或1. @bnd(a,变量名,b ); 限制该变量介于a,b 之间. @free(变量名); 允许该变量为负数. @gin(变量名); 限制该变量为整数. 例1 求目标函数1 223z x x =+的最小值,约束条件为 输入Lingo 程序: min = 2*x1 + 3*x2; x1 + x2 >= 350; x1 >= 100; 2*x1 + x2 <= 600; 有两种运行方式:

五种最优化方法

精心整理 五种最优化方法 1.最优化方法概述 1.1最优化问题的分类 1)无约束和有约束条件; 2)确定性和随机性最优问题(变量是否确定); 3 4 1.2 2. 2.1 1 2 3 2.2 3. 3.1 1 2 3 3.2 4.模式搜索法(步长加速法) 4.1简介 1)解决的是无约束非线性规划问题; 2)不需要求目标函数的导数,所以在解决不可导的函数或者求导异常麻烦的函数的优化问题时非常有效。 3)模式搜索法每一次迭代都是交替进行轴向移动和模式移动。轴向移动的目的是探测有利的下降

方向,而模式移动的目的则是沿着有利方向加速移动。 4.2模式搜索法步骤 5.评价函数法 5.1简介 评价函数法是求解多目标优化问题中的一种主要方法。在许多实际问题中,衡量一个方案的好坏标准往往不止一个,多目标最优化的数学描述如下: min(f_1(x),f_2(x),...,f_k(x)) s.t.g(x)<=0 传统的多目标优化方法本质是将多目标优化中的各分目标函数,经处理或数学变换,转变成一个单目标函数,然后采用单目标优化技术求解。常用的方法有“线性加权和法”、“极大极小法”、“理想点法”。选取其中一种线性加权求合法介绍。 5.2线性加权求合法 6.遗传算法 智能优化方法是通过计算机学习和存贮大量的输入-输出模式映射关系,进而达到优化的一种方法,主要有人工神经网络法,遗传算法和模拟退火法等。 6.1遗传算法基本概念 1.个体与种群 个体就是模拟生物个体而对问题中的对象(一般就是问题的解)的一种称呼。 种群就是模拟生物种群而由若干个体组成的群体,它一般是整个搜索空间的一个很小的子集。 2.适应度与适应度函数 适应度就是借鉴生物个体对环境的适应程度,而对问题中的个体对象所设计的表征其优劣的一种测度。 适应度函数就是问题中的全体个体与其适应度之间的一个对应关系。该函数就是遗传算法中指导搜索的评价函数。 6.2遗传算法基本流程 遗传算法的中心思想就是对一定数量个体组成的生物种群进行选择、交叉、变异等遗传操作,最终求得最优解或近似最优解。 遗传算法步骤 步1在搜索空间U上定义一个适应度函数f(x),给定种群规模N,交叉率Pc和变异率Pm,代数T;

相关文档
最新文档