77范文网 - 专业文章范例文档资料分享平台

优化模型讲解 附LINGO程序(2)

来源:网络收集 时间:2020-03-26 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

2*x1+x2>=12; 2*x1+9*x2>=36; 2*x1+3*x2=24; 2.3 练习:运输问题

设有两个煤厂甲和乙,每月进煤数量分别为60和100吨,联合供应三个居民区A、B、C,三个居民区每月对煤的需求量依次为50吨、70吨和40吨。

煤厂到各个居民区的运输费用如图所示,如何分配供煤量使得总费用最少?

A甲乙104B58C6123 整数规划模型

部分变量或全部变量要求取整数,称为整数规划模型。

LINGO程序中通过“@gin(变量)”命令限制变量为整数,例如:

maxf?4x1?3x2

?4x1?x2?10?s.t?2x1?3x2?8 ?x,x?0且为整数?12LINGO程序:max=4*x1+3*x2; 4*x1+x2<=10; 2*x1+3*x2<=8; @gin(x1); @gin(x2); 3.1 电影院广告问题

某小型工厂计划每周花71元在两个小型电影院加映广告片,推销该厂的产品,为了获得更多的观众,要合理的在两个电影院里分配经费。已知甲电影院加映广告片的时间为4分钟,每放映一次要付12元,预计每次有200人观看,该电影院每周仅能为该厂提供13分钟广告时间;乙电影院广告片的时间为2分钟,每次收费16元,预计每次300人观看,该电影院仅能为该厂提供7分钟广告时间。若观众人数以百人计,试建立数学模型解答。

4

模型建立:

假设每周在甲电影院放映广告x1次,在乙电影院放映x2次,观看的观众总数为f。

maxf?2x1?3x2

?12x1?16x2?71??4x1?13s.t?

2x?7?2?x,x?0且为整数?12LINGO程序:

max=2*x1+3*x2; 12*x1+16*x2<=71; 4*x1<=13; 2*x2<=7; @gin(x1); @gin(x2);

3.2 练习:生产计划问题

某工厂拥有A、B、C三种类型的设备,生产甲、乙两种产品,每件产品在生产中需要占用的设备时数、每件产品可以获得的利润以及三种设备可利用的时数如表所示。

问题:工厂应如何安排生产可获得最大的利润?

设备A设备B设备C利润(元/件)产品甲3201500产品乙2132500设备能力/h6540754 0-1规划

0-1规划是整数规划中的一种特殊情形,当决策变量xi只能取0或1时,这样的整数规划称之为0-1规划。

约束条件可以写成“0?xi?1,且为整数”,LINGO中通过“@bin(变量)”命令实现。 4.1 背包问题

一旅行者的背包最多只能装6kg的物品,待装的物品有4件,它们的重量和价值依次为:2kg,1元;3kg,1.2元;3kg,0.9元;4kg,1.1元。那么他的背包中携带哪些物品可使价值最大?

5

模型建立:

用xi表示第i种物品是否被携带,令

?1,携带第i种物品 xi???0,不携带第i种物品携带物品的总价值记为f。

maxf?x1?1.2x2?0.9x3?1.1x4

?2x1?3x2?3x3?4x4?6s.t?

0?x?1,且x为整数(i?1,2,3,4)ii?LINGO程序:

max=x1+1.2*x2+0.9*x3+1.1*x4; 2*x1+3*x2+3*x3+4*x4<=6; @bin(x1); @bin(x2); @bin(x3); @bin(x4); 4.2 矿井选址问题

某煤矿准备在5个矿井挖煤,现在有10个矿井可供选择,设10个矿井的代号为A1、 A2、?、A10,相应的开采费用分别为8、9、3、10、4、7、5、14、11、8,对矿井的选择要满足以下限制条件: (1)或选A1和A7,或选A8;

(2)在A4、A5、A6、A7中最多只能选两个; (3)选择A3或A4,就不能选择A5,反之亦然。

如何选择,才能使开采总费用最小? 模型建立:

用xi表示第i个矿井是否被选择,令

?1,选择第i个矿井xi??

0,不选择第i个矿井?开采总费用记为f。

maxf?8x1?9x2?3x3?10x4?4x5?7x6?5x7?14x8?11x9?8x10

6

?10??xi?5?i?1?x1?x8?1??x7?x8?1 s.t?x4?x5?x6?x7?2??x3?x5?1??x4?x5?1?0?x?1,且x为整数(i?1,2,?,10)ii?LINGO程序:

max=8x1+9*x2+3*x3+10*x4+4*x5+7*x6+5*x7+14*x8+11*x9+8*x10; x1+x2+x3+x4+x5+x6+x7+x8+x9+x10=5; x1+x8=1; x7+x8=1; x4+x5+x6+x7<=2; x3+x5<=1; x4+x5<=1; @bin(x1); @bin(x2); @bin(x3); @bin(x4); @bin(x5); @bin(x6); @bin(x7); @bin(x8); @bin(x9); @bin(x10);

4.3 练习:混合泳接力队的选拔问题

某学校准备从5名游泳队员中选拔4人组成接力队,参加学校的4×100m混合泳接力赛。5名队员4种泳姿的百米平均成绩如表所示,问如何选拔队员组成接力队?

蝶泳仰泳蛙泳自由泳甲1分06秒81分15秒61分27秒58秒6乙57秒21分06秒1分06秒453秒丙1分18秒1分07秒81分24秒659秒4丁1分10秒1分14秒21分09秒657秒2戊1分07秒41分11秒1分23秒81分02秒47

5 LINGO应用

5.1 变量定界函数

变量定界函数对变量的取值范围附加限制,共有以下四种函数: @bnd(a,x,b):限制a?x?b。 @bin(x):限制x为0或1。

@free(x):取消对x的符号限制,即可取负数、0或正数。 @gin(x):限制x为整数。 5.2 集合

理解LINGO建模语言最重要的是理解集合及其属性的概念。一段完整的LINGO程序以“model:”开始,以“end”结束,中间的程序语句由三部分构成:

(1)集合定义部分:以“sets:”开始,以“endsets”结束,用来定义集合及其属性。 程序格式:“集合名称/集合元素/:集合属性”。

(2)数据输入部分:以“data:”开始,以“enddata”结束,用以对属性赋值。 程序格式:“集合属性=常量值”。

(3)其他部分:给出目标函数及约束条件。 例如,4.1背包问题。 模型建立:

用ci表示第i种物品的价值,di表示第i种物品的重量,xi表示第i种物品是否被携带,则

?1,携带第i种物品xi??

0,不携带第i种物品?携带物品的总价值记为f。

4maxf??cx

iii?1?4??dixi?6 s.t?i?1?0?x?1,且x为整数(i?1,2,3,4)ii?LINGO程序:

model: sets:

wupin/1,2,3,4/:c,d,x; endsets

8

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库优化模型讲解 附LINGO程序(2)在线全文阅读。

优化模型讲解 附LINGO程序(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/jiaoyu/875652.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: