Lingo与线性规划

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Ling o与线性规划

线性规划得标准形式就是

(1)

其中称为口标函数,自变量称为决策变量,不等式组(1)称为约束条件、

满足不等式组(1)得所有得集合称为可行域,在可行域里面使得Z取最小值得称为最优解,最优解对应得函数值称为最优值。

求解优化模型得主要软件有L i ng o、Ma t 1 a b> Ex c el等。其中Lingo 就是一款专业求解优化模型得软件,有其她软件不可替代得方便功能。本文将简要介绍其在线性规划领域得应用。

—、基本规定

1、目标函数输入格式

ma x二函数解析式;或者min二函数解析式;

2、约束条件输入格式

利用:>、V、〉=、〈二等符号。但就是>与>二没有区别。L ingo软件默认所以自变量都大于等于0、

3、运算

加(+),减(-),乘(*),除(/),乘方(x A a),要注意乘号(*)不能省略。

4、变量名

不区分大小写字母,不超过32个字符,必须以字母开头。

5、标点符号

每个语句以分号“;”结束,感叹号“!”开始得就是说明语句(说明语句也需要以分号";”结束)o但就是,mo d el, s e t s, data以":”结尾。endsets, e n ddata, e n d尾部不加任何符号。

6、命令不考虑先后次序

7、MODEL 语句

一般程序必须先输入MODEL:表示开始输入模型,以“END”结束。对简单

(1)

例1求目标函数得最小值,约束条件为

输入Ling o 程序:

min = 2*x1 + 3*x2;

x I + x2 >= 350?x1 >= 1 0 0;2A *X 1 + x2 <= 600;

有两种运行方式:

1、点击工具条上得按钮 即可。

2、点击菜单:LINGO —Solve

运行结果如下:

下面对其各个部分进行说明:

Gl o bal o p tima 1 solution f oun d :表示已找到全局最优解。 Ob j e ctive value :表示最优值得大小。可见本题函数最小值8 00。

Rov

Slack or Surplus

Dual Price 1

800.0000

-1.000000

2 CLOOCICICICI -4・00 OOOCI

3 150.0CICICI O ・000000 4

CLOOCICICICI

1・000000

Global optimal solution found ・

Objective value:

800.0000

Infeasibilities:

0 ・ OOOCICICI

Total solver iterations:

2

Variable

得模型,这两个语句也可以省略。

8、改变变量得取值范围

bin (变量名); bnd (a,变量名,b ); free (变量名);

gin (变量名);

限制该变量为0或1、

限制该变量介于a, b 之间、 允许该变量为负数、 限制该变量为整数、

Value

250.0000

・dodo

Reduced Cost o ・000000 o

・000000

Infea s i b i I i ties:矛盾约束得数目。

T o tai s o 1 ver ite r a t i o ns:迭代次数。

Variable:变量。本题有两个变量。

Vai u e:变量对应得最优解,即。

Reduced Cost:变量在最优解得基础上增加一个单位,目标函数值得改变量。例如,一个变量得Red need Cost值为8,那么当该变量增加一个单位,在最大化(最小化)问题中目标函数值将减少(增大)8个单位。

Slack o r Surplus:表示接近等于得程度,即约束离相等还差多少。在约束条件就是<=中,表示松弛程度,在约束条件就是> =中,不就是过剩程度。如果约束条件就是则S 1 ack or Su r p lus为0,该约束就是个紧约束(或有效约束)。如果一个约束就是矛盾得,即模型无可行解则Slack or s urplu s得值就是负数。

知道Slack or S u rplus得值,可以帮助我们发现优化模型中错误得约束条件。在上例中第2与第4行松弛变量均为0,说明对于最优解来讲,两个约束(第2与4行)均取等号,即都就是紧约束,第3行为150,即最优解使得第3行过剩150、

Dual Price :对偶价格得值,它表示约束条件中得常数,每增加一个单位,目标函数值改变得数量(在最大化问题中LI标函数值就是增加,在最小化问题中訂标函数值就是减少)。比如,在上一个Min模型中第四行得1,表示2次xl+ X2 < =6 0 0增加一个单位到2 *x 1 + x2 <= 6 0 1,可以使目标值增加一1(因为第一行就是目标函数得DualPrice就是—1),即Object i ve valu e =7 9 9;如果增加J 个单位到59 9会使目标值增加到801o

例2求目标函数得最小值.约束条件为

输入L i ngo程序:

min = 4*x1A2-x2^2+2*x3A2 + 12;

3 次x1 + 2 次x2+x3=9;

x1+x2+x3=-1 ;Af r e e(x1) ;free (x2); free (x3);

运行结果:

相关文档
最新文档