Lingo软件的基本语法

Posted lgxo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Lingo软件的基本语法相关的知识,希望对你有一定的参考价值。

目录


基本语法

集合

sets:
	集合名称1 / 成员列表1 /: 属性1_1, 属性1_2, ···, 属性1_n1 ;
	集合名称2 / 成员列表2 /: 属性2_1, 属性2_2, ···, 属性2_n2 ;
	派生集合名称 ( 集合名称1, 集合名称2 ): 属性3_1, 属性3_2, ···, 属性3_n2 ;

例:

sets:
	product/A B/;
	machine/M N/;
	week/1..2/;
	allowed(product, machine, week):x;
endsets

数据

data:
	属性1 = 数据列表 ;
	属性2 = 数据列表 ;
enddata

数据计算段

数据计算段部分不能含有变量,必须是已知数据的运算。

calc:
	b = 0 ;
	a = a + 1 ;
endcalc

变量的初始化

变量初始化主要用于非线性问题赋初始值。
好的初始点会减少模型的求解时间。

init:
	X, Y = 0, .1 ;
endinit
Y = @log(X) ; 
X^2 + Y^2 <= 1 ;

模型的目标函数和约束条件

此处不具体介绍,而是通过另一篇博客具体例子给出。


实时数据处理

data:
	interest_rate, inflation_rate = .085  ? ;
enddata

注意

  1. Lingo 中是不区分大小写字符的。
  2. Lingo 中数据部分不能使用分式,例如数据部分不能使用 1/3 。
  3. Lingo 中的注释是使用“!”引导的。
  4. Lingo 中默认所有的变量都是非负的。
  5. Lingo 中矩阵数据是逐行存储的,Matlab 中数据是逐列存储的。
  6. 本文中代码为了突出语法中的标点符号,以空格显式声明。

以上是关于Lingo软件的基本语法的主要内容,如果未能解决你的问题,请参考以下文章

Lingo 基本使用

Lingo基本操作

Lingo速上手攻略

怎样用Lingo软件解线性规划问题

如果用lingo软件可以进行求解,那么用MATLAB可以实现吗

LINGO 18.0软件安装包下载及安装教程