LINGO教程(基本语法).pptVIP

  1. 1、本文档共152页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
LINGO软件的基本使用方法;内容提要;1. LINGO入门;安装文件20M多一点,需要接受安装协议、选择安装目录(缺省C:\LINGO9)。;第一次运行时提示输入授权密码,如图:;LINGO软件的主要特色;从LINDO 到 LINGO;在LINGO中使用LINDO模型;LINGO的文件类型;在LINGO中使用LINDO模型;在LINGO中使用LINDO模型;④ 运行程序的LINGO报告窗口(如下图) ;运行状态窗口;运行状态窗口;运行状态窗口;注:凡是可以从一个约束直接解出变量取值时,这个变量就不认为是决策变量而是固定变量,不列入统计中;只含有固定变量的约束也不列入约束统计中。;LINGO早期版本对LINDO的兼容问题;从LINDO模型到LINGO模型的实质性转化工作主要在于以下几个方面(这也是LINGO模型的最基本特征): 将目标函数的表示方式从“MAX”变成了“MAX=”; “ST”(SubjectTo)在LINGO模型中不需要,被删除; 在系数与变量之间增加运算符“*”(即乘号不能省略); 每行(目标、约束和说明语句)后面增加一个分号“;”; 约束的名字被放到 “[ ]”中,不放在右半括号“)”前; LINGO中模型以“MODEL:”开始,以“END” 结束。对简单的模型,这两个语句也可以省略。;一个简单的LINGO程序;程序语句输入的备注:;输出结果:;输出结果备注:;一个简单的LINGO程序;2.在LINGO中使用集合 ;集合的基本用法和LINGO模型的基本要素 ;问题的模型(可以看出是LP模型 );注:LINDO中没有数组,只能对每个季度分别定义变量,如正常产量就要有RP1,RP2,RP3,RP4 4个变量等。写起来就比较麻烦,尤其是更多(如1000个季度)的时候。 记四个季度组成的集合QUARTERS={1,2,3,4},它们就是上面数组的下标集合,而数组DEM,RP,OP, INV对集合QUARTERS中的每个元素1,2,3,4分别对应于一个值。LINGO正是充分利用了这种数组及其下标的关系,引入了“集合”及其“属性”的概念,把QUARTERS={1,2,3,4}称为集合,把DEM,RP,OP, INV称为该集合的属性(即定义在该集合上的属性)。;QUARTERS集合的属性;集合元素及集合的属性确定的所有变量;LINGO中定义集合及其属性 ;目标函数的定义方式;约束的定义方式;本例中,对于产品数量的平衡方程,由于下标i=1时的约束关系式与i=2,3,4时有所区别,所以不能省略下???“i”。实际上,i=1时要用到变量INV(0),但定义的属性变量中INV不包含INV(0)(INV(0)=10是一个已知的)。 为了区别i=1和i=2,3,4,把i=1时的约束关系式单独写出,即“INV(1)=10+RP(1)+OP(1)-DEM(1);” ; 而对i=2,3,4对应的约束,对下标集合的元素(下标i)增加了一个逻辑关系式“i#GT#1”(这个限制条件与集合之间有一个竖线“|”分开,称为过滤条件)。 限制条件“i#GT#1”是一个逻辑表达式,意思就是i1;“#GT#”是逻辑运算符号,意思是“大于(Greater Than的字首字母缩写)” 。;问题的求解:运行菜单命令“LINGO|Solve” ;注:由于输入中没有给出行名,所以行名是系统自动按照行号1-9生成的。 选择菜单命令“LINGO|Generate|Disply model(Ctrl+G)”,可以得到展开形式的模型(如图),可以看到完整的模型,也能确定行号(行号放在方括号“[ ]”中,且数字前面带有下划线“_”)。 最好在输入模型时用户主动设定约束的行名(即约束名),使程序清晰些。单一约束的行名设置方法就是将行名放在方括号“[ ]”中,置于约束之前。 后面将结合具体例子介绍在使用集合的情况下如何设置行名。 ;小结:LINGO模型最基本的组成要素 ;(2)目标与约束段:目标函数、约束条件等,没有段的开始和结束标记???因此实际上就是除其它四个段(都有明确的段标记)外的LINGO模型。 这里一般要用到LINGO的内部函数,尤其是与集合相关的求和函数@SUM和循环函数@FOR等。 上例中定义的目标函数与quarters的元素数目是 4或 1000并无具体的关系。约束的表示也类似。;(3)数据段(DATA):以 “DATA:” 开始, “ENDDATA”结束,对集合的属性(数组)输入必要的常数数据。 格式为:“attribute(属性) = value_list(常数列表);” 常数列表(value_list)中数据之间可以用逗号“,”分开,也可以用空格分开(回车等价于一个空格),如上面对DEM的赋值也可以写成“DEM=40 6

文档评论(0)

178****9325 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档