lingo操作介绍

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

1.2 菜单介绍

1.2.1 File

1 New

新建一个窗口, 当你执行这个命令时, 会出现如下对话框:

你可以在对话框中选择你想要建立的类型. 类型如下:

1)扩展名为(*.lg4)

LG4格式是LINGO4.0的版本,是在Windows下最主要的储存文件格式, 这种格式支持字体格式, 自定义格式以及动态连接, LG4以二进制格式存储, 所以不能被其它的应用软件直接读取.

2)扩展名为(*.lng)

LNG是捷便的存储方式,是4.0版本前的标准文件格式,为了与前版本的兼容,所以还一直在用,LNG文件是以ASCII形式存储的,所以能被支持文本文件的应用程序读取.该格式不支持多种字体.

3)扩展名为(*.ltd)

LTD是数据文件, 可以从@FILE函数导入数据,@FILE函数只能读取文本文件,所以所有的LTD文件是以ASCII形式存储, 也不支持多种字体.

4)扩展名为(*.ltf)

LTF是LINGO的调试文件格式, 也是以ASCII格式存储,能直接被LINGO的File|Take command执行.

2 Log Output

输出文本文件,可以将随后原输出到报告窗口的内容输出到文本中. 该命令与Maple 中的writeto命令非常相似.

在Maple中输入如下:

> x:=sin(5.);

writeto("c://maple.txt");

y:=x+1:

print(x,y);

print(x);

> y;

> writeto(terminal);

> y;

执行菜单中的Edit|Excute|Worksheet, 按钮,窗口重新显示如下:

> x:=sin(5.);

writeto("c://maple.txt");

y:=x+1:

print(x,y);

print(x);

x:=-.9589242747

> y;

> writeto(terminal);

> y;

0.4010757253

而在C盘的maple.txt文件的内容为:

-.9589242747, .0410757253

-.9589242747

.0410757253

从中可以知道,用了writeto(filename)命令以后把结果输出到filename 中. 直到碰到writeto(terminal)命令时,才重新在工作窗口中显示.

当你点击菜单File|Log Output时,系统出现保存对话框,系统就会将命令窗口中的输出结果保存到指定的文件中.

3 Import LINDO File

该命令是用来导入LINDO软件保存的LINDO文件(*.LTX)格式. 只要在LINGO中导入LINDO文件格式, LINGO系统自动将该文件转化为LINGO可执行语句.

1.2.2 Edit

1 Paste Function

用该命令可以在当前点插入LINGO的内部函数,

2 Select Fonts

设置字体类型, 字体大小,字体颜色.

1.2.3 LINGO

1 Solve

用solve命令对当前窗口中的模型求解, 该命令只对report script窗口起作用, 不能对数据窗口求解.

当你对一个模型进行求解, LINGO首先检查该模型的语句格式是否正确, 如果LINGO 发现在语句中存在错误, 将会出现类似于如下的对话框:

在上图的Error Text框中, LINGO提示发生语句错误的行数及该行的内容. 在通常情况下, LINGO系统能很好的指出错误, 但是有时也会提供错误的信息.

如果在编译的过程中没有语法的错误, LINGO将调用适当的内部函数对模型进行优化求解. 假如我们在工作窗口输入如下内容:

点击菜单LINGO|SOLVE,或者点击工具栏,将会在屏幕上显示LINGO解的状态窗口(Solver Status Windows):

该状态窗口用于跟踪整个求解过程, 下面我们将详细的描写该窗口中的一些主要的内容.

1)按钮

在解的状态窗口提供了两个按钮, 一个为关闭按钮(Close), 另一个是打断(interrupt Solver)求解按钮,该按钮的作用是阻止LINGO求解下一个迭代. 在线性模型中,LINGO 一般能给出优化解(除整数规划时没有整数解),如果这线性模型被打断了,LINGO返回的将是无意义的, 应该被忽略的值.

注意:如果你按了interrupt solver这个按钮, 解的情况是这样的:

•毫无疑问这不是最优解;

•解可能不能全部满足约束条件;

•如果这个是线性模型,这个解毫无意义.

2)文本框

在该窗口中有一个文本框, 该文本框的作用是更新状态窗口的相隔时间, 单位为秒, 在默认时为2秒.

3)状态窗口(Solver Status Box)

状态窗口的详细的介绍如下:

其中

一旦LINGO处理完成该模型, 建立一个包括该模型解的报告(Solve Report)窗口. 你可以通过拉窗口的滚动条, 检查该窗口内部的内容. 该窗口如下:

第一:Solution Report告诉我们求该模型迭带的次数是0次;第二:该目标函数的最大值是1.285714;第三:取到最优值时变量X、Y分别为1.142857、0.1428571.

我们用数学软件Maple来验证该结果:

> with(simplex):

maximize( x+y, {4*x+3*y <= 5, 3*x+4*y <= 4 } );

> evalf(%);

比较LINGO与Maple所求的结果, 完全一致.

相关文档
最新文档