《3.优化建模基础1.ppt

  1. 1、本文档共59页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
优化模型的简单分类和求解难度 MATLAB优化工具箱能求解的优化模型 LINDO 公司软件产品简要介绍 LINGO软件的求解过程 建模时需要注意的几个基本问题 LINDO软件的安装 编写一个简单的LINDO程序 保存文件 某农场I、II、III等耕地的面积分别为100 hm2、300 hm2和200 hm2,计划种植水稻、大豆和玉米,要求三种作物的最低收获量分别为190000 kg、130000 kg和350000kg。I、II、III等耕地种植三种作物的单产如表1.3所示。若三种作物的售价分别为水稻1.20元/kg,大豆1.50元/ kg,玉米0.80元/kg。那么,(1)如何制订种植计划,才能使总产量最大?(2)如何制订种植计划,才能使总产值最大? 1. 变量名由字母和数字组成,但必须以字母开头,且长度不能超过8个字符,不区分大小写字母,包括关键字(如MAX、MIN等)也不区分大小写字母。 2. 对目标函数和约束用行号(行名)进行标识,这些标识会在将来的求解结果报告中用到。 行名可以和变量名一样命名,也可以只用数字命名,还可以含有中文字符,但长度同样不能超过8个字符。 为了方便将来阅读求解结果报告,建议用户总是自觉地对每个约束进行命名。 行名结束标志符号、即右括号“)”必须是英文字符,否则会出现错误。 建模培训 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd. 3. 可以用“TITLE”语句对输入的模型命名,用法是在TITLE后面写出其名字(最多72个字符,可以有汉字),在程序中单独占一行,可以在模型的任何地方。 模型命名的第一个作用类似于对模型的注释和说明。 模型命名的另一个目的,是为了方便将来阅读求解结果报告。因为用户有可能同时处理多个模型,很容易混淆模型与求解结果的对应关系。这时如果对不同模型分别进行了命名,就可以随时(例如在求解当前模型前)使用菜单命令“FILE|TITLE”将当前模型的名字显示在求解结果报告窗口中,这样就容易判别每个求解结果与每个模型的对应关系。 4. 模型中以感叹号“!” 开头的是注释行(注释语句,或称为说明语句),可以帮助他人或以后自己理解这个模型。实际上,每行中“!”符号后面的都是注释或说明。注释语句中可以使用汉字字符 。 建模培训 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd. 5. 变量不能出现在一个约束条件的右端(即约束条件的右端只能是常数);变量与其系数间可以有空格(甚至回车),但不能有任何运算符号(包括乘号“*”等)。 6. 模型中不接受括号“( )”和逗号“,”等符号(除非在注释语句中)。 例如: 4(X1+X2)需写为4X1+4X2;“10,000”需写为10000。 7. 表达式应当已经经过化简。 如不能出现2X1 + 3X2 - 4X1,而应写成 -2X1 + 3X2等。 8. LINDO 中已假定所有变量非负。若要取消变量的非负假定,可在模型的“END”语句后面用命令“FREE”。例如,在“END”语句后输入FREE vname,可将变量vname的非负假定取消。 建模培训 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd. 9. 可以在模型的“END”语句后面用命令“SUB”(即设置上界(SET UPPER BOUND)的英文缩写)设定变量的上界,用命令“SLB” (即设置下界(SET LOWER BOUND)的英文缩写)设定变量的上下界。其用法是:“SUB vname value”将变量vname的上限设定为value;“SLB”的用法类似。 用“SUB”和“SLB”表示的上下界约束不计入模型的约束,因此LINDO也不能给出其松紧判断和敏感性分析。 10. 数值均衡化考虑:如果约束系数矩阵中各非零元的绝对值的数量级差别很大(相差1000倍以上),则称其为数值不均衡的。为了避免数值不均衡引起的计算问题, 使用者应尽可能自己对矩阵的行列进行均衡化。此时还有一个原则, 即系数中非零元的绝对值不能大于100000 或者小于.0001。LINDO 不能对LP 中的系数自动进行数值均衡化,但如果LINDO 觉得矩阵元素之间很不均衡, 将会给出警告。 建模

文档评论(0)

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

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

1亿VIP精品文档

相关文档