LINGO使用与编程技巧_第1页
LINGO使用与编程技巧_第2页
LINGO使用与编程技巧_第3页
LINGO使用与编程技巧_第4页
LINGO使用与编程技巧_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

(二)线性规划LINGO模型与结果(四)中等规模的LINGO模型(一)LINGO软件主界面(三)LINGO软件选项卡LINGO使用与编程技巧目前一页\总数三十八页\编于十四点查找Edit|Find括号匹配Edit|MatchParenthesis显示解答LINGO|Solution行定位Edit|GoToLine模型求解LINGO|Solve模型图示LINGO|Picture选项设置LINGO|Options1/7/4.1(一)LINGO软件主界面目前二页\总数三十八页\编于十四点File主菜单输出不同格式文件输入LINDO模型文件2/7/4.1目前三页\总数三十八页\编于十四点Edit主菜单3/7/4.1编写模型时,输入函数特殊粘贴,用于数据接口数据接口时链接对象数据接口时插入对象目前四页\总数三十八页\编于十四点Edit|PasteFunction子菜单4/7/4.1编写模型时,用于输入函数不同的函数类型变量范围函数目前五页\总数三十八页\编于十四点

LINGO系统主菜单5/7/4.1显示LINDO格式模型调整LINGO选项卡内容按LINDO模型展开线性规划敏感性分析显示模型求解结果用于LINGO模型求解目前六页\总数三十八页\编于十四点LINGO|Generate子菜单6/7/4.1按LINDO模型格式展开LINGO模型文件并显示结果不显示LINDO模型格式,只显示结果目前七页\总数三十八页\编于十四点Window主菜单7/7/4.1显示模型求解结果状态窗口调整显示模型窗口调整模型窗口,按瀑布形式排列将当前窗口后置目前八页\总数三十八页\编于十四点1.简单的LINGO模型示例及其特点(13点)1/6/4.2(1)目标函数为“MAX=”;(2)约束条件没有约束标志;(3)系数与变量之间有运算符,“*”号不能省略;(二)线性规划LINGO模型与结果目前九页\总数三十八页\编于十四点(4)程序行的结束标志为“;”,无论目标函数行、约束行、说明注释语句行等都必须以分号结束;(5)约束行的名称放在一对方括号“[]”中,如[OBJ]MAX=200*X1+300*X2;(6)模型以“MODEL:”开始,以“END”结束,虽然可以省略,建议保留;2/6/4.2(7)LINGO的语句顺序不重要,总是根据“MAX=”或“MIN=”语句来寻找目标函数,其它语句或是约束条件,或是注释语句,或是标题“TITLE”语句;(8)限定变量取整数值的语句为“@GIN(vname)”,0/1变量语句为“@BIN(vname)”;目前十页\总数三十八页\编于十四点(9)LINGO模型不区分大小写字母,变量和行名由以字母开头的字母和数字组成,不超过32个字符;(11)LINGO模型允许乘号“*”和乘方“^”等运算,变量也可以出现在约束的右端,数字可以出现在左端;(12)语句是构成LINGO模型的基本单位,每一条语句必须以分号“;”结尾,多行写成的一条语句,最后以分号“;”结束;(13)注释语句以“!”开始,以“;”结束,选“File|Save”保存文件,文件名的后缀为“.lg4”.(10)LINGO中函数调用一律用“@”开头,常见的有非负限定函数“@FREE(vname)”,变量取值范围限定函数“@BND(a,vname,b)”;3/6/4.2目前十一页\总数三十八页\编于十四点运行LINGO子菜单命令“LINGO|Solve”得结果:2.LINGO模型的结果4/6/4.2目前十二页\总数三十八页\编于十四点子菜单“Window|StatusWindow”可查看模型状态.3.显示LINGO模型的状态窗口5/6/4.2目前十三页\总数三十八页\编于十四点6/6/4.2LINGO模型上机练习(1)编写LINGO模型并求解:4.范围函数@Bnd(a,x,b);目前十四页\总数三十八页\编于十四点线性求解程序选项全局最优求解程序选项非线性求解程序选项整数求解程序选项通用求解选项界面选项整数预处理程序选项1/9/4.3

(三)LINGO选项卡(LINGO|Options)目前十五页\总数三十八页\编于十四点LINGO的选项卡一般选项2/9/4.3(尝试用不同方法求解)文件格式语法配色命令窗口关键词蓝色,注释绿色,其他黑色错误信息对话框简洁输出解的截断启动时弹出版本信息扩展格式纯文本格式括号匹配目前十六页\总数三十八页\编于十四点3/9/4.3通用求解器默认为32M矩阵生成器内存限制运行限制模型的重新生成模型线性化对偶计算3种级别设置4种线性化程度设置线性化大M系数设置线性化误差限目前十七页\总数三十八页\编于十四点4/9/4.3线性求解程序4种可能方法求解方法模型降维价格策略是否检查无关的变量3种可能设置原始单纯形可行性误差限对偶单纯形3种可能设置矩阵分解(大模型)检查数据平衡目前十八页\总数三十八页\编于十四点5/9/4.3非线性求解程序初始或最后可行性误差限缓慢改进迭代次数上限导数计算方式选择求解策略生成初始解识别二次规划选择检查约束迭代按最陡边缘策略选择迭代搜索方向非线性最优误差限目前十九页\总数三十八页\编于十四点6/9/4.3整数预处理程序启发式方法探测水平级别约束割平面最大迭代次数根节点次数生成割平面策略类型,共12种目前二十页\总数三十八页\编于十四点7/9/4.3整数求解程序分支的方向和优先级整性,绝对相对误差限LP求解程序,冷热方式启动算法最优,绝对相对误差限误差限:篱笆值,节点选择,分支层数目前二十一页\总数三十八页\编于十四点8/9/4.3全局最优求解程序控制变量上界各种分支策略选择活跃节点策略模型重整级别多初始点求解尝试次数目前二十二页\总数三十八页\编于十四点调整选项卡,尝试用不同的求解程序求解前面模型.目前二十三页\总数三十八页\编于十四点1/12/4.4(四)LINGO数学模型实例分析某工厂在计划期内要安排生产A、B两种产品,已知生产单位产品所需设备台时及对甲、乙两种原材料的消耗,有关数据如表1.1.问:应如何安排生产计划,使工厂获利最大?建立线性规划问题的数学模型,用LINGO求出最优解并做相应的分析.

LINGO模型示例分析与上机练习(1)目前二十四页\总数三十八页\编于十四点2/12/4.4解

线性规划数学模型为:在LINGO的MODEL窗口内输入如下模型:model:max=2*x1+3*x2;x1+2*x2<=8;4*x1<=16;4*x2<=12;end目前二十五页\总数三十八页\编于十四点3/12/4.4选菜单Lingo/Solve(或按Ctrl+S),或用鼠标点击“求解”按纽,如果模型有语法错误,则弹出一个标题为“LINGOErrorMessage”(错误信息)的窗口,指出在哪一行有怎样的错误,每一种错误都有一个编号(具体含义可查阅相关文献或LINGO的Help)。改正错误以后再求解,如果语法通过,LINGO用内部所带的求解程序求出模型的解,然后弹出一个标题为“LINGOSolverStatus”(求解状态)的窗口,其内容为变量个数、约束条件个数、优化状态、耗费内存、所花时间等信息,点击Close关闭窗口,屏幕上出现标题为“SolutionReport”(解的报告)的信息窗口,显示优化计算(线性规划中换基迭代)的步数、优化后的目标函数值、列出各变量的计算结果。本例的具体内容如下:目前二十六页\总数三十八页\编于十四点Globaloptimalsolutionfoundatiteration:5Objectivevalue:14.00000VariableValueReducedCostX14.0000000.000000X22.0000000.000000RowSlackorSurplusDualPrice114.000001.00000020.0000001.50000030.0000000.125000044.0000000.000000目前二十七页\总数三十八页\编于十四点灵敏性分析目前二十八页\总数三十八页\编于十四点该报告说明:运行5步找到全局最优解,目标函数值为14,变量值分别为。“ReducedCost”的含义是需缩减成本系数或需增加利润系数(最优解中取值非零的决策变量的ReducedCost值等于零)。“Row”是输入模型中的行号,目标函数是第一行;“SlackorSurplus”的意思是松弛或剩余,即约束条件左边与右边的差值,对于“”的不等式,右边减左边的差值为Slack(松弛),对于“”的不等式,左边减的右边差值为Surplus(剩余),当约束条件两边相等时,松弛或剩余的值等于零。“DualPrice”的意思是对偶价格(或称为影子价格),上述报告中Row2的松弛值为0,表明生产甲产品4单位、乙产品2单位,所需设备8台时已经饱和,对偶价格1.5的含义是:如果设备增加1台时,能使目标函数值增加1.5。报告中Row4的松弛值为4,表明生产甲产品4单位、乙产品2单位,所需原材料乙8公斤还剩余4公斤,因此增加原材料乙不会使目标函数值增加,所以对偶价格为0。目前二十九页\总数三十八页\编于十四点某公司饲养实验用的动物以供出售,已知这些动物的生长对饲料中3种营养成分(蛋白质、矿物质和维生素)特别敏感,每个动物每周至少需要蛋白质60g,矿物质3g,维生素8mg,该公司能买到5种不同的饲料,每种饲料1kg所含各种营养成分和成本如表1.2所示,如果每个小动物每周食用饲料不超过52kg,求既能满足动物生长需要,又使总成本最低的饲料配方.

LINGO模型示例分析与上机练习(2)目前三十页\总数三十八页\编于十四点5/12/4.4解在LINGO的MODEL窗口内输入如下模型:Min=0.2*x1+0.7*x2+0.4*x3+0.3*x4+0.5*x5;0.3*x1+2*x2+x3+0.6*x4+1.8*x5>=60;0.1*x1+0.05*x2+0.02*x3+0.2*x4+0.05*x5>=3;0.05*x1+0.1*x2+0.02*x3+0.2*x4+0.08*x5>=8;X1+x2+x3+x4+x5<=52;目前三十一页\总数三十八页\编于十四点求解输出结果如下:Globaloptimalsolutionfoundatiteration:4Objectivevalue:22.40000VariableValueReducedCostX10.0000000.7000000X212.000000.000000X30.0000000.6166667X430.000000.000000X510.000000.000000RowSlackorSurplusDualPrice122.40000-1.00000020.000000-0.583333334.1000000.00000040.000000-4.16666750.0000000.8833333目前三十二页\总数三十八页\编于十四点灵敏性分析:目前三十三页\总数三十八页\编于十四点因此,每周每个动物的配料为饲料A2、A4、A5分别为12、30和10,合计为52,可使得饲养成本达到最小,最小成本为22.4元;不选用饲料A1和A3的原因是因为这两种饲料的价格太高了,没有竞争力。“ReducedCost”分别等于0.7和0.617,说明当这两种饲料的价格分别降低0.7元和0.62元以上时,不仅选用这两种饲料而且使得饲养成本降低。从“SlackorSurplus”可以看出,蛋白质和维生素刚达到最低标准,矿物质超过最低标准4.1;从“DualPrice”可以得到降低标准蛋白质1单位可使饲养成本降低0.583元,降低标准维生素1单位可使饲养成本降低4.167元,但降低矿物质的标准不会降低饲养成本,如果动物的进食量减少,就必须选取精一些的饲料但要增加成本,大约进食量降低1可使得饲养成本增加0.88元。目前三十四页\总数三十八页\编于十四点某公司的6个工地要开工,每个工地的位置与水泥用量如下表,目前2个临时料厂位置为P(5,1)和Q(2,7),日储量为20吨,请回答以下问题:(1)假设从料厂到工地均有直线道路相连,试制订每天应从P、Q两料厂分别向各工地运送多少

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论