ligno软件集合的定义及使用简介.ppt

ligno软件集合的定义及使用简介.ppt

ID:50907013

大小:2.19 MB

页数:29页

时间:2020-03-15

ligno软件集合的定义及使用简介.ppt_第1页
ligno软件集合的定义及使用简介.ppt_第2页
ligno软件集合的定义及使用简介.ppt_第3页
ligno软件集合的定义及使用简介.ppt_第4页
ligno软件集合的定义及使用简介.ppt_第5页
资源描述:

《ligno软件集合的定义及使用简介.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、各农场均可种植甜菜、棉花和高粱三种作物,各种作物的用水量、净收益及国家规定的该地区各种作物种植总面积最高限额如下表:作物种类种植限额(亩)耗水量(百立方/亩)净收益(元/亩)甜菜6003400棉花5002300高粱3251100三个农场达成协议,他们的播种面积与其可灌溉面积相等,而各农场种何种作物并无限制.问如何制定各农场种植计划才能在上述限制条件下,使本地区的三个农场的总净收益最大.目录下页返回上页结束2.某地区有三个农场共用一条灌渠,每个农场的可灌溉地及分配到的最大用水量如下表:农场可灌溉地(亩)最大用水量(百立方)140060026008003300375解设农场1种植的甜菜

2、、棉花和高粱分别为亩,农场2种植的甜菜、棉花和高粱分别为亩,农场3种植的甜菜、棉花和高粱分别为亩.设三个农场可耕地分别为其最大用水量分别为其甜菜、棉花和高粱的种植限额分别为目录下页返回上页结束解法一根据题目条件,可建立如下线性模型:目录下页返回上页结束LINGO程序如下:MODEL:max=400*(x1+x2+x3)+300*(y1+y2+y3)+100*(z1+z2+z3);x1+x2+x3<=600;y1+y2+y3<=500;z1+z2+z3<=325;x1+y1+z1<=400;x2+y2+z2<=600;x3+y3+z3<=300;3*x1+2*y1+z1<=600;3

3、*x2+2*y2+z2<=800;3*x3+2*y3+z3<=375;END得到的解如下:X1=200,Y1=0,Z1=0;X2=58.33333,Y2=312.5,Z2=0;X3=0,Y3=187.5,Z3=0;最大总净收益为253333.3元.目录下页返回上页结束解设农场1种植的甜菜、棉花和高粱分别为亩,农场2种植的甜菜、棉花和高粱分别为亩,农场3种植的甜菜、棉花和高粱分别为亩.设三个农场可耕地分别为其最大用水量分别为其甜菜、棉花和高粱的种植限额分别为目录下页返回上页结束解法二根据题目条件,可建立如下线性模型:目录下页返回上页结束其净收益分别为其耗水量分别为LINGO编程如下:

4、MODEL:SETS:place/1..3/:a,b;kind/1..3/:c,d,e;plan(place,kind):x;ENDSETSDATA:a=400,600,300;b=600,800,375;c=600,500,325;d=3,2,1;e=400,300,100;ENDDATAmax=@sum(kind(j):e(j)*@sum(place(i):x(i,j)));@for(kind(j):@sum(place(i):x(i,j))<=c(j));@for(place(i):@sum(kind(j):x(i,j))<=a(i));@for(place(i):@sum(

5、kind(j):d(j)*x(i,j))<=b(i));END目录下页返回上页结束程序结构——集现在我们将介绍如何创建集,并用数据初始化集的属性。集是LINGO建模语言的基础,是程序设计最强有力的基本构件。借助于集,能够用一个单一的、长的、简明的复合公式表示一系列相似的约束,从而可以快速方便地表达规模较大的模型。利用集的概念就可以最大限度的发挥LINGO建模语言的优势。集部分是LINGO模型的一个可选部分。在LINGO模型中使用集之前,必须在集部分事先定义。集部分以关键字“sets:”开始,以“endsets”结束。一个模型可以没有集部分,或有一个简单的集部分,或有多个集部分。一个

6、集部分可以放置于模型的任何地方,但是一个集及其属性在模型约束中被引用之前必须被定义。程序结构——原始集集包括原始集和派生集两种。定义原始集为了定义一个原始集,必须详细声明:·集的名字·可选,集的成员·可选,集成员的属性定义一个原始集,用下面的语法:setname/member_list/:attribute_list;示例1:model:sets:students/John,Linda,Tom/:age,gender;endsetsEnd示例2:Model:Sets:Month/Jan..Dec/:temperature;Endsetsend程序结构——原始集集成员列表的罗列可以有

7、显式罗列和隐式罗列两种,显示罗列如上页所示,即将集成员全部罗列出来。隐式罗列不必罗列出每个集成员。可采用如下语法:setname/member1..memberN/[:attribute_list];这里的member1是集的第一个成员名,memberN是集的最末一个成员名。LINGO将自动产生中间的所有成员名。LINGO也接受一些特定的首成员名和末成员名,用于创建一些特殊的集。列表如下:隐式成员列表格式示例所产生集成员隐式成员列表格式示例所产生的集成员1..n1..

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。