1 / 85
文档名称:

数学建模软件lingo教程.doc

格式:doc   大小:665KB   页数:85页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

数学建模软件lingo教程.doc

上传人:花开一叶 2019/5/2 文件大小:665 KB

下载得到文件列表

数学建模软件lingo教程.doc

相关文档

文档介绍

文档介绍:螂LINGO使用教程莀芆 LINGO是用来求解线性和非线性优化问题的简易工具。LINGO内置了一种建立最优化模型的语言,可以简便地表达大规模问题,利用LINGO高效的求解器可快速求解并分析结果。羂膁 一般来说LINGO多用于解决大规模数学规划。袆用时要注意以下几点:莇每条语句后必须使用分号“;”结束。问题模型必须由MODEL命令开始,END结束。莅用MODEL命令来作为输入问题模型的开始,格式为MODEL:statement(语句)。薀目标函数必须由“min=”或“max=”开头。蚆膄§1LINGO快速入门蒃 肀当你在windows下开始运行LINGO系统时,会得到类似下面的一个窗口:莇 膆 薁 葿 *** 芇 羄 袈 袇 肅 肂 薂 薈 膆蒅羁外层是主框架窗口,包含了所有菜单命令和工具条,其它所有的窗口将被包含在主窗口之下。在主窗口内的标题为LINGOModel–LINGO1的窗口是LINGO的默认模型窗口,建立的模型都都要在该窗口内编码实现。下面举两个例子。:袃薃在模型窗口中输入如下代码:蒁min=2*x1+3*x2;聿x1+x2>=350;羅x1>=100;蚁2*x1+x2<=600;袀然后点击工具条上的按钮即可。衿 。产销单位运价如下表。肄单艿位销地蕿运虿B1莀B2袅B3薄B4莂B5螆B6羆B7蚃B8袁产量袃价膂产地薆A1螄6螁2芁6芇7螅4膃2蚀5肇9袆60节A2肀4螈9蚄5蚄3蕿8薈5螅8螃2节55芈A3螇5袁2蚂1罿9薄7芃4肁3蝿3蚅51莂A4蒀7葿6蚇7蚄3羀9芀2蒄7袂1荿43螆A5薅2羁3蝿9蒇5薇7芃2蒂6***5莄41蒂A6袁5羇5蒆2螄2莁8蚈1薇4袂3螀52蒈销量莄35芅37腿22膈32莆41莃32蕿43罿38蒇 蒁使用LINGO软件,编制程序如下:节model:虿!6发点8收点运输问题;芄sets:袄warehouses/wh1..wh6/:capacity;螂vendors/v1..v8/:demand;莀links(warehouses,vendors):cost,volume;芆endsets羂!目标函数;膁min=***@sum(links:cost*volume);袆!需求约束;莇***@for(vendors(J):莅***@sum(warehouses(I):volume(I,J))=demand(J));薀!产量约束;蚆***@for(warehouses(I):膄***@sum(vendors(J):volume(I,J))<=capacity(I));蒃 肀!这里是数据;莇data:膆capacity=605551434152;薁demand=3537223241324338;葿cost=62674295***49538582芇52197433羄76739271袈23957265袇55228143;肅enddata肂end薂然后点击工具条上的按钮即可。薈为了能够使用LINGO的强大功能,接着第二节的学****吧。膆蒅羁§2LINGO中的集莈袃对实际问题建模的时候,总会遇到一群或多群相联系的对象,比如工厂、消费者群体、交通工具和雇工等等。LINGO允许把这些相联系的对象聚合成集(sets)。一旦把对象聚合成集,就可以利用集来最大限度的发挥LINGO建模语言的优势。薃现在我们将深入介绍如何创建集,并用数据初始化集的属性。学完本节后,你对基于建模技术的集如何引入模型会有一个基本的理解。蒁 ,是程序设计最强有力的基本构件。借助于集,能够用一个单一的、长的、简明的复合公式表示一系列相似的约束,从而可以快速方便地表达规模较大的模型。蚁 ,这些对象也称为集的成员。一个集可能是一系列产品、卡车或雇员。每个集成员可能有一个或多个与之有关联的特征,我们把这些特征称为属性。属性值可以预先给定,也可以是未知的,有待于LINGO求解。例如,产品集中的每个产品可以有一个价格属性;卡车集中的每辆卡车可以有一个牵引力属性;雇员集中的每位雇员可以有一个薪水属性,也可以有一个生日属性等等。肆LINGO有两种类型的集:原始集(primitive set)和派生集(derivedset)。肄一个原始集是由一些最基本的对象组成的。艿一个派生集是用一个或多个其它集来定义的,也就是说,它的成员来自于其它已存在的集。蕿 。在LINGO模型中使用集之前,必须在集部分事先定义。集部分以关键字“sets:”开始,以“endsets”结束。一个模型可以没有集部分,或有一个简单的集部分,或有多个集部分。一个集部分可以放置于模型