第1讲 Lingo软件入门.pdf
第1 讲 LINGO 软件入门
司守奎
烟台市,海军航空大学
Email :sishoukui@163.com
1.1 初识LINGO 程序
LINGO 程序书写实际上特别简捷,数学模型怎样描述,LINGO 语言就对应地怎样表达。
首先介绍两个简单的LINGO 程序。
例1.1 求解如下的线性规划问题:
max z 72x 64x
1 2
x x 50,
1 2
12x 8x 480,
1 2
s.t.
3x1 100,
x , x 0
1 2
LINGO 求解程序如下
max=72*x1+64*x2;
x1+x2<=50;
12*x1+8*x2<=480;
3*x1<=100;
说明:LINGO 中默认所有的变量都是非负的,在LINGO 中就不需写出对应的约束。
例 1.2 抛物面z x 2 y 2 被平面x y z 1截成一椭圆,求原点到这椭圆的最短距
离。
该问题可以用拉格朗日乘子法求解。下面我们把问题归结为数学规划模型,用 LINGO
软件求解。
设原点到椭圆上点(x,y ,z) 的距离最短,建立如下的数学规划模型:
min x 2 y 2 z 2
x y z 1,
s.t. 2 2
z x y .
LINGO 求解程序如下:
min=(x^2+y^2+z^2)^(1/2);
x+y+z=1;
z=x^2+y^2;
@free(x); @free(y);
说明:LINGO 中默认所有变量都是非负的,这里x ,y 的取值是可正可负的,所以使用
LINGO 函数free 。
例1.3 求解如下的数学规划模型:
1
100
min x 2