一、什么是Lingo
LINGO(Linear Interactive and General Optimizer),即“交互式的线性和通用优化求解器”,由美国LINDO系统公司推出。Lingo可以用于求解非线性规划,也可以用于一些线性和非线性方程组的求解等,功能十分强大,是求解优化模型的最佳选择。
Lingo的特色在于内置建模语言,提供十几个内部函数,可以允许决策变量是整数(即整数规划,包括 0-1 整数规划),方便灵活,而且执行速度非常快。能方便与EXCEL,数据库等其他软件交换数据。
——《百度百科–Lingo》
Lingo有两种命令模式:
(1)Windows模式(使用Ctrl+U即可编译)
(2)命令行模式
二、建模的核心
建模的核心在于集合set及其属性。
集合分为派生集合和基本集合。
派生集合又分为稀疏集合(可使用元素列表法、元素过滤法)以及稠密集合。
基本集合包括直接列举法和隐式列举法。
三、组成要素
1)集合段
sets:
endsets
2)目标与约束段
以end结束
3)数据段
data:
enddata
4)初始段
init:
endinit
5)定义初值
[格式]attribute(属性)=value_list(常数列表)
四、常见数学函数
@abs @cos @exp @floor @lgm @log @sign @sin @smax @smin @tan
@function
@for @max @min @sum
@index @in @wrap @size @bnd @bin @free @gin
@filename @ODBC @OLE @pointer @text