1. 准备阶段
安装LINGO软件:确保已在计算机上正确安装了LINGO软件,并能顺利打开软件界面。
了解LINGO基本语法:熟悉LINGO的代码结构,包含预定义、数据输入、目标函数、决策变量、约束条件等板块。掌握LINGO的运算符、函数、集合等基本概念和用法。
2. 编写代码阶段
建立模型:在LINGO软件的主窗口中,开始编写LINGO代码。代码通常以“model:”开头,以“end”结束,在简单模型中可省略这两个语句。
定义集合:使用“sets:”和“endsets”来定义集合。集合分为原始集合和导出集合。
```lingo
sets:
product / A B /;
machine / M N /;
week / 1..2 /;
allowed ( product , machine , week ) : x;
endsets
```
输入数据:使用“data:”和“enddata”来输入数据。
```lingo
data:
x = 10;
y = 20;
enddata
```
定义目标函数:使用“max=”或“min=”来定义目标函数。
```lingo
max = 72*x1 + 64*x2;
```
设置约束条件:使用关系运算符(如=、<=、>=)和逻辑运算符(如eq、ne、gt等)来设置约束条件。
```lingo
x1 + x2 <= 100;
x1 >= 10;
x2 >= 20;
```
其他函数设置:可以使用LINGO的变量定界函数(如@bin、@bnd、@free、@gin等)来进一步限制决策变量的取值范围。可以使用LINGO的循环函数(如@for、@sum等)来简化模型的表达。
3. 编译和运行阶段
检查代码:在编写完代码后,仔细检查代码中的语法错误和逻辑错误。确保每个语句都以分号“;”结束,且注释语句以“!”开头并以分号结束。
运行程序:从菜单中选择“LINGO/Solve(Ctrl+S)”命令运行程序。用鼠标选择主菜单中“Window/Reports Window”,这就是最终结果的报告窗口。
示例程序
```lingo
model:
sets:
product / A B /;
machine / M N /;
week / 1..2 /;
allowed ( product , machine , week ) : x;
endsets
data:
x = 10;
y = 20;
enddata
max = 72*x1 + 64*x2;
x1 + x2 <= 100;
x1 >= 10;
x2 >= 20;
solve;
```
注意事项
LINGO中是不区分大小写字符的。
变量名必须以字母开头,可以包含数字和下划线,不超过32个字符。
集合和变量的定义顺序是任意的。
注释以英文状态的“!”开始,必须以英文状态下的分号结束。
通过以上步骤和示例,你应该能够掌握使用LINGO编程的基本方法。