资源描述:
《Lingo软件简单入门教程二ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Lingo软件入门(2)3.模型的数据部分和初始部分4.Lingo函数5.LingoWindows命令13模型的数据部分和初始部分在处理模型的数据时,需要为集指派一些成员并且在Lingo求解模型之前为集的某些属性指定值。为此,Lingo为用户提供了两个可选部分:输入集成员和数据的数据部分(DataSection)和为决策变量设置初始值的初始部分(InitSection)。3.1模型的数据部分3.2模型的初始部分23模型的数据部分和初始部分3.1模型的数据部分为什么需要数据部分数据部分入门数据部分提供了模型相对静止部分和数据
2、分离的可能性。显然,这对模型的维护和维数的缩放非常便利。数据部分以关键字“data:”开始,以关键字“enddata”结束。在这里,可以指定集成员、集的属性。其语法如下:对象列=数值列;3数据部分入门(续)对象列:包含要指定值的属性名数值列:包含要分配给对象列中的对象的值,用逗号或空格隔开。注意属性值的个数必须等于集成员的个数。看下面的例子。sets:set1/A,B,C/:X,Y;endsetsdata:X=1,2,3;Y=4,5,6;enddata在集set1中定义了两个属性X和Y。X的三个值是1、2和3,Y的三个值是
3、4、5和6。4数据部分入门(续)也可采用如下例子中的复合数据声明(datastatement):sets:set1/A,B,C/:X,Y;endsetsdata:X,Y=142536;enddata看到这个例子,可能会认为X被指定了1、4和2三个值,因为它们是数值列中前三个,而正确的答案是1、2和3。假设对象列有n个对象,Lingo在为对象指定值时,首先在n个对象的第1个索引处依次分配数值列中的前n个对象,然后在n个对象的第2个索引处依次分配数值列中紧接着的n个对象,……,以此类推。53.1模型的数据部分参数在数据部分也可
4、以指定一些标量变量(scalarvariables)。当一个标量变量在数据部分确定时,称之为参数。data:interest_rate=.085;enddata模型中用利率8.5%作为一个参数也可以同时指定多个参数。data:interest_rate,inflation_rate=.085.03;enddata63.1模型的数据部分指定属性为一个值可以在数据声明的右边输入一个值来把所有的成员的该属性指定为一个值。sets:days/MO,TU,WE,TH,FR,SA,SU/:needs;endsetsdata:needs
5、=20;enddataLingo将用20指定days集的所有成员的needs属性。73.1模型的数据部分指定属性为一个值(续)对于多个属性的情形,也可以指定一个值sets:days/MO,TU,WE,TH,FR,SA,SU/:needs,cost;endsetsdata:needscost=20100;enddata83.1模型的数据部分数据部分的未知数值有时只想为一个集的部分成员的某个属性指定值,而让其余成员的该属性保持未知,以便让Lingo去求出它们的最优值。在数据声明中输入两个相连的逗号表示该位置对应的集成员的属性值
6、未知。两个逗号间可以有空格。sets:years/1..5/:capacity;endsetsdata:capacity=,34,20,,;enddata属性capacity的第2个和第3个值分别为34和20,其余的未知。93.2模型的初始部分模型的初始数值初始部分是Lingo提供的一个可选部分。在初始部分中,可以输入初始声明(initializationstatement)。初始部分输入的值仅被Lingo求解器当作初始点来用,并且仅仅对非线性模型有用。一个初始部分以“init:”开始,以“endinit”结束。init:
7、X,Y=0,.1;endinitY=@log(X);X^2+Y^2<=1;好的初始点会减少模型的求解时间(看迭代次数)。104Lingo函数Lingo有9种类型的函数:1.基本运算符:包括算术运算符、逻辑运算符和关系运算符2.数学函数:三角函数和常规的数学函数3.金融函数:Lingo提供的两种金融函数4.概率函数:Lingo提供了大量概率相关的函数5.变量界定函数:这类函数用来定义变量的取值范围6.集操作函数:这类函数为对集的操作提供帮助7.集循环函数:遍历集的元素,执行一定的操作的函数8.数据输入输出函数:这类函数允许模
8、型和外部数据源相联系,进行数据的输入输出9.辅助函数:各种杂类函数114.1基本运算符4.1.1算数运算符算术运算符是针对数值进行操作的。LINGO提供了5种二元运算符:^ 乘方﹡乘/ 除﹢加﹣减Lingo唯一的一元算术运算符是取反函数“﹣”。算术运算符示例:2﹣5/3,(2﹢4)/5等等。124.1.