LINGO简介分析.ppt

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
LINGO简介分析

1、集合的基本用法 要注意当使用集合时,模型的目标函数是用求和函数 @SUM(集合(下标):关于集合的属性的表达式) 的方式定义的,这个函数的功能是对语句中冒号“:”后面的表达式按照“:”前面的集合指定的下标(元素)进行求和。 约束条件是用循环函数 @FOR(集合(下标):关于集合的属性的约束关系式) 的方式定义的,意思是对“:”前面的集合的每个下标(元素),“:”后面的约束关系式都要成立。 SETS: !pp为集合名; pp/1..4/:r,x,y,z; ENDSETS DATA: r=40,60,75,25; ENDDATA Min=@SUM(pp(i):400*x(i)+450*y(i)+20*z(i)); @for(pp(i):x(i)=40); !下面I#GT#1是一个逻辑关系式,意思是i1,称为 过滤条件 @for(pp(i)|I#GT#1:z(i)=z(i-1)+x(i)+y(i)-r(i)); z(1)=10 +x(1)+y(1)-r(1); 2、基本集合与派生集合 可以利用两个集合,定义一个由二元对组成的新集合,它的功效就相当于一个二维数组。格式是: link(集合名1,集合名2):集合名3; 或 集合名3(集合名1,集合名2):属性列表; 这里的集合名1,集合名2当然应该是之前定义了的基本集合。 MODEL: SETS: Demand/1..6/:a,b,d; Supply/1..2/:x,y,e; Link(Demand, Supply):c; ENDSETS DATA: a=1.25,8.75,0.5,5.75,3,7.25; b=1.25,0.75,4.75,5,6.5,7.75; d=3,5,4,7,6,11; e=20,20; ENDDATA Init: x,y=5,1,2,7; ENDInit min=@sum(link(i,j):c(i,j)*((x(j)-a(i))^2+(y(j)-b(i))^2)^(1/2)); @for(Demand(i):@sum(Supply(j):c(i,j))=d(i);); @for(Supply(j):@sum(Demand(i):c(i,j))=e(j);); @for(Supply:@free(x); @free(y);); END LINGO 优化软件简介 一、如何编写、运行一个LINGO 程序 1、编写 双击LINGO图标,启动软件,屏幕上显示LINGO的初始用户界面。光标所在的窗口称为模型窗口(model window),用来供用户输入优化模型(LINGO程序)。 输入结束后,从莱单中选择File/Save(F5)命令把它保存在一个文件中,默认的后缀名为lg4,即LINGO程序的二进制文件。 保存的文件将来可以用File/Open(F3)重新打开进行修改。 2、运行 从莱单中选择LINGO/Solve(Ctrl+S)命令运行程序。 出现最终结果的报告窗口。 二、如何编写一个简单的LINGO程序 说明: (1)在模型窗口中输入一个LINGO程序,以“MODEL:”开始,以“END”结束。这两个语句也可以省略。 (2)目标函数的表达方式是“MAX=”或“MIN=”,约束条件的S.T不要写出。 (3)决策变量的变量名由字母和数字组成,但必须以字母开头,且长度不超过32个字符。不区分大小写字母(包括LINGO本身的关键字,如MAX、MIN、END)。 (4)每行可以用行号(行名)进行标识,行名写法和变量名一样,行号用数字前带下划线表示,以方括号“[ ]”为行号(行名)的首尾,位于目标函数或每一个约束条件的开头。如果用户没有指定行号(行名),系统会自动产生行号,将目标函数所在行作为第一行,从第二行起为约束条件。 (5)注释语句用“!”开头,单独一个语句。 (6)变量与其系数间用“*”连接。 (7)每个语句(目标函数、约束条件和注释语句)结束用“;”,允许一行写多个语句,但最好一行只写一个语句。 (8)LINGO假定所有变量非负,可以用命令“@FREE(变量名)”取消变量的非负假定。 (9)用命令“@BND(下界,变量名,上界)”设置变量的上界和下界。 (10)一般整数变量可用“@GIN(变量名)”来标识,0-1型变量可用“@BIN(变量名)”来标识。 (11) 可以在模型

文档评论(0)

wbjsn + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档