




已阅读5页,还剩32页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
LINGO入门 LINGO的菜单 用LINGO编程语言建立模型 LINGO的运算符和函数 LINGO的基本用法 1 1LINGO入门 第一章LINGO的基本用法 1 LINGO的主要功能特色 1 既能求解线性规划问题 也有较强的求解非线性规划问题的能力 2 输入模型简练直观 3 运行速度快 计算能力强 4 内置建模语言 提供几十个内部函数 从而能以较少语句 较直观的方式描述较大规模的优化模型 5 将集合的概念引入编程语言 很容易将实际问题转换为LINGO模型 6 能方便地与Excel 数据库等其他软件交换数据 建模时需要注意的几个基本问题 1 尽量使用实数优化模型 减少整数约束和整数变量的个数 2 尽量使用光滑优化模型 减少非光滑约束的个数 如 尽量少地使用绝对值函数 符号函数 多个变量求最大 或最小 值 四舍五入函数 取整函数等 3 尽量使用线性优化模型 减少非线性约束和非线性变量的个数 如x y 5改为x 5y 4 合理设定变量的上下界 尽可能给出变量的初始值 5 模型中使用的单位的数量级要适当 如小于103 约束条件 2 LINGO的基本用法 例1 某工厂有两条生产线 分别用来生产M和P两种型号的产品 利润分别为200元 个和300元 个 生产线的最大生产能力分别为每日100和120 生产线每生产一个M产品需要1个劳动日 1个工人工作8小时为1个劳动日 进行调试 检测等工作 而每个P产品需要2个劳动日 该厂工人每天共计能提供160劳动日 假如原材料等其他条件不受限制 问应该如何安排生产计划 才能使获得的利润最大 解 设两种产品的生产量分别为x1和x2 则该数学模型为 目标函数 再用LINGO处理 输入LINGO如下 LINGO处理结果 LINGO的语法规定 1 求目标函数的最大值和最小值分别用MAX 或MIN 来表示 2 每个语句必须以分号 结束 每行可以有多个语句 语句可以跨行 3 变量名称必须以字母 A Z 开头 由字母 数字 0 9 和下划线 组成 长度不超过32个字符 不区分大小写 4 可以给语句加上标号 例如 OBJ MAX 5 以 开头 以 结束的语句是注释语句 6 如果对变量的取值范围没有作特殊说明 则默认所有决策变量都非负 7 LINGO模型以语句 MODEL 开头 以 END 结束 对于比较简单的模型 这两句可以省略 LINGO求解报告 缩减成本系数 相差值 松弛或剩余 注 最优解中变量的缩减成本系数值自动取零 约束条件中 对于 不等式 称之为剩余 Surplus 不等式左右两边值相等时 松弛和剩余的值为0 如果约束条件无法满足 则松弛和剩余的值为负 影子 对偶 价格 含义 如果该生产线最大生产能力增加1 能使目标函数值增加50 1 2了解LINGO的菜单 新建 打开 保存 打印 剪切 复制 粘贴 取消 重做 查找 定位 匹配括号 求解 显示答案 模型图示 选项设置 窗口后置 关闭所有窗口 平铺窗口 在线帮助 上下文相关帮助 文件菜单 编辑菜单 LINGO菜单 窗口菜单 帮助菜单 输出特殊格式文件 MPS格式文件 MPI格式文件 IBM开发的数学规划文件标准格式 LINDO公司制定的数学规划文件格式 用户基本信息 该命令弹出一个对话框 要求输入用户名和密码 这些信息在用 ODBC函数访问数据库要用到 选择性粘贴 该命令把Window剪贴板中的内容插入到光标所在位置 插入新对象 链接 修改模型内插入对象的链接性质 对象的性质 在模型中选择一个链接或嵌入对象 用本命令可以查看和修改这个对象的属性 灵敏度分析 该命令产生当前模型的灵敏度分析报告 1 最优解保持不变的情况下 目标函数的系数变化范围 2 在影子价格和缩减成本系数都不变的前提下 约束条件右边的常数变化范围 例 做下列模型的灵敏度分析 MAX 200 X1 300 X2 X1 100 X2 120 X1 2 X2 160 注 灵敏性分析耗费相当多的求解时间 因此当速度很关键时 就没有必要激活它 生成模型的展开形式 为当前模型生成一个用代数表达式表示的完整形式 即LINGO将所有基于集合的表达式 目标函数和约束条件 扩展成为等价的完全展开的普通数学表达式模型 生成图形 由模型生成图形 以矩阵形式显示模型的系数 调试 模型统计资料 调试结果 找到充分行 SufficientRows 和必要行 NecessaryRows 查看 以为本方式显示模型内容 命令行窗口 主要是为用户交互地测试命令脚本而设计 通常不用 状态窗口 变量 约束 非零系数 内存使用量 已运行时间 求解器状态 扩展求解器状态 1 3用LINGO编程语言建立模型 一 LINGO模型的基本组成 例2 某公司有6个供货栈 库存货物总数分别为60 55 51 43 41 52 现有8个客户各要一批货 数量分别为35 37 22 32 41 32 43 38 各供货栈到8个客户处的单位货物运输价见下表 试确定各货栈到各客户处的货物调运数量 使总的运输费用最小 解 设xij从第i个货栈到第j个客户的运货量 cij表示从第i个货栈到第j个客户的单位货物运价 ai表示第i个货栈的最大供货量 dj表示第j个客户的订货量 模型如下 1 集合定义部分 集合是一组相关对象构成的组合 集合在使用之前需要预先给出定义 初始集合的定义三要素 集合的名称 集合的元素 集合的属性 可视为与该集合有关的变量或常量 集合分为初始 基本 原始 集合和衍生 派生 集合 初始集合的定义格式 集合的名称 集合的元素 集合的属性 例 定义例2的货栈集合ai和dj WH W1 W6 AI VD V1 V8 DJ 衍生集合的定义四要素 集合的名称 对应的初始集合 集合的元素 可以省略 集合的属性 可以没有 例 定义集合 表示例3中从第i个货栈到第j个客户的运货量xij 和第i个货栈到第j个客户的单位货物运价cij LINKS WH VD C X 注 如果集合的元素省略不写 则默认衍生集合的元素取它所对应初始集合的所有可能组合 2020 3 18 19 可编辑 2 数据初始化 如何给例2中的集合AI DJ C X赋值 AI 60 55 51 43 41 52 DJ 35 37 22 32 41 32 43 38 C 6 2 6 7 4 2 5 9 4 9 5 3 8 5 8 2 5 2 1 9 7 4 3 3 7 6 7 3 9 2 7 1 2 3 9 5 7 2 6 5 5 5 2 2 8 1 4 3 DATA ENDDATA 注 数据初始化部分以 DATA 开始 以ENDDATA结束 这两个语句必须单独成一行 数据之间的逗号和空格可以替换 3 目标函数和约束条件 例2的目标函数 用LINGO语句表示为 MIN SUM LINKS I J C I J X I J 注 SUM是LINGO提供的内部函数 其作用是对某个集合的所有成员 求指定表达式的和 SUM有两个参数 集合名称和表达式 如果表达式中参与运算的属性属于同一个集合 则 SUM的索引可以省略 即 MIN SUM LINKS C X 例2的约束条件 用LINGO语句表示为 FOR WH I SUM VD J X I J AI I 注 FOR是LINGO提供的内部函数 其作用是对某个集合的所有成员分别生成一个约束表达式 FOR有两个参数 集合名和约束表达式 这里的集合名表示对该集合所有成员生成对应约束表达式 问 语句中的I J能不能省略 用LINGO语句表示为 FOR VD J SUM WH I X I J DJ J 1 4LINGO的运算符和函数 一 LINGO的常用运算符 1 算术运算符 2 逻辑运算符 逻辑运算符优先级别 NOT 最高 AND 和 OR 最低 3 关系运算符 关系运算符通常用在条件表达式中 用来指定约束条件表达式左边与右边必须满足的关系 有以下三种 注 LINGO没有单独的 关系 如果出现了单个 LINGO认为是省略了 如果需要严格小 大 于关系 如A严格小于B 可以表示成 这里是一个小的正数 它的值依赖于模型中A小于B多少才算不等 例 计算2 GT 3 AND 4 GT 2 结果为0 FALSE 二 数学函数 三 概率函数 四 集合操作函数 上表中 前五个函数的表示形式为 函数名 集合名 条件 表达式 例 FOR VD J J NE 5 表达式e 表示什么含义 五 变量定界函数 注 BND函数可以用约束条件代替 但使用 BND函数表达变量的取值范围比使用约束条件的求解速度快 且不计入约束条件的数目中 FREE X 的作用是取消对变量X的默认非负设置 例 求函数z x 2 2 y 2 2的最小值 min x 2 2 y 2 2 free x 请大家上机验证一下有 FREE和没有的差别 五 其他函数 例 用 IF表示下列函数 f IF x LE 500 4 x 500 3 x 或f IF x GT 500 500 3 x 4 x 思考 此外还有 文件输入输出函数 金融函数 结果报告函数 补充 一 稠密集合与稀疏集合 SETS WH W1 W6 AI VD V1 V8 DJ LINKS WH VD C X ENDSETS 省略了成员列表 只是指出它基于两个初始集合的衍生集合称为稠密集合 如果衍生集合的成员只是稠密集合中的一部分 子集 则称为稀疏集合 稀疏集合的定义方法有两种 1 直接列表法 2 元素过滤法 例 有如下工作流程 SETS TASK ABCDEFGHIJK PRED TASK TASK A BB CC FC GF JG JJ KD E E HE IH JI J ENDSETS 1 直接列表法 2 元素过滤法 例 某公司8个职员两两相容度如下表 SETS REN 1 8 LINKS REN REN ENDSETS 注 这里 1和 2表示第一和第二个父集合的元素索引值 二 数据段的几点说明 1 赋值 SETS SET1 A B C X Y ENDSETS 例 给下列集合赋值 法1 DATA X 1 2 3 Y 4 5 6 ENDDATA 法2 DATA X Y 1 42 53 6 ENDDATA 注 同一集合的多个属性一起赋值时 LINGO用按列赋值方式进行 2 通过键盘输入数据 例 当A 125 A 265时 下列模型的目标函数值是多少 Max 98 x1 A x2 x1 2 0 3 x1 x2 2 x2 2 x1 x2 100 x1 x2 GIN x1 GIN x2 DATA A ENDDATA MODEL END 3 部分赋值 SETS WH W1 W6 A ENDSETS 例 给下列集合的第二和第三个元素赋值为60和55 DATA A 60
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 3.1工艺模块简介
- 八月十五美容院活动方案
- 公交公司七进活动方案
- 公交客运节约活动方案
- 小狗和小猫500字(8篇)
- 公众号策划活动方案
- 公会协力活动方案
- 公会趣味活动方案
- 公关公司创意策划方案
- 公关赞助活动策划方案
- JG/T 283-2010膨胀玻化微珠轻质砂浆
- 前台订机票管理制度
- 浪潮新员工培训体系大纲
- 2025年7月浙江省普通高中学业水平考试历史仿真模拟卷01(含答案)
- 2024福建省闽投深海养殖装备租赁有限责任公司招聘7人笔试参考题库附带答案详解
- 法人变更交接协议书
- 地七年级下册全册知识要点总复习-2024-2025学年七年级地理教学课件(人教版2024)
- 2024-2025学年部编版四年级语文下册期末模拟试卷
- 车牌过户协议书范本
- 2025年中考历史考试纲要解读
- 2025年统编版八年级下册道德与法治期末复习课件327张
评论
0/150
提交评论