LINGO的基本用法的几点注意事项
•语句是组成LINGO模型的基本单位,每个语句都 以分号“;”结尾,编写程序时应注意模型的可读 性。例如:一行只写一个语句,按照语句之间的嵌套
关系对语句安排适当的缩进,增强层次感。
•以感叹号“!”开始的是说明语句(说明语句也 需要以分号结束)。
Lingo简单引例
1、简单线性规划求解
•Lingo 中“<”代表“<=”,“>”代表“>=”
输出结果: 运行菜单命令“LINGO|Solve”
最大利润=11077.5
最优整数解 X=(35,65)
输出结果备注:
LINGO是将它作为PINLP(纯整数非线性规划)来求解, 因此找到的是局部最优解。
通过菜单 “WINDOW| Status Window”看到状态窗 口,可看到最佳目标值 “Best Obj”与问题的上界 “Obj Bound”已经是一样的, 当前解的最大利润与这两个 值非常接近,是计算误差引 起的。如果采用全局最优求 解程序(后面介绍),可以验 证它就是全局最优解。
优化问题的一般形式
优化问题三要素:决策变量;目标函数;约束条件
min f (x)
s.t. hi (x) 0, i 1,...,m g j (x) 0, j 1,...,l
决策变量
x D n
目标函数
约 束 条 件
• 无约束优化(没有约束)与约束优化(有约束) • 可行解(只满足约束)与最优解(取到最优值)
集的名字/可选,集的成员/可选,集成员的属性
示例: 定义一个名为friend的基本集合,它具有成员John、 Jill、Rose和Mike,属性有sex和age
sets: friend/John Jill,Rose Mike/:sex,age; endsets