第一讲例题

上传人:桔**** 文档编号:429694395 上传时间:2023-12-13 格式:DOCX 页数:9 大小:38.95KB
返回 下载 相关 举报
第一讲例题_第1页
第1页 / 共9页
第一讲例题_第2页
第2页 / 共9页
第一讲例题_第3页
第3页 / 共9页
第一讲例题_第4页
第4页 / 共9页
第一讲例题_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《第一讲例题》由会员分享,可在线阅读,更多相关《第一讲例题(9页珍藏版)》请在金锄头文库上搜索。

1、LINGO 语言应用讲座(一)Lingo 解方程、求极值以及简单规划问题例1 求解非线性方程组x 2 + y 2 = 22 x 2 + x + y 2 + y = 4 其 LINGO 代码如下:model:x“2+y“2=2;2*x2+x+y2+y=4;bnd(0.4,x,0.5);bnd(1,y,2);end例2某工厂有两条生产线,分别用来生产M和P两种型号的产品,利润分别为200元/个和 300元/个,生产线的最大生产能力分别为每日100和120,生产线每生产一个M产品需要1 个劳动日(1个工人工作8小时称为1个劳动日)进行调试、检测等工作,而美国P产品需 要2个劳动日,该厂工人每天共计能

2、提供160劳动日,假如原材料等其他条件不受限制,问 应如何安排生产计划,才能使获得的利润最大?解 设两种产品的生产量分别为x和x,则该问题的数学模型为12目标函数 max z = 200x + 300x1x 100,i约束条件x 120, 2x + 2x 0, i = 1,2.i其 LINGO 代码如下:Model:MAX=200*X1+300*X2;X1=100;X2=120;X1+2*X2=160;EndGlobal optimal solution found.29000.000Objective value:Total solver iterations:VariableValueRe

3、duced CostX1100.00000.000000X230.000000.000000RowSlack or SurplusDual Price129000.001.00000020.00000050.0000090.000000.0000000.000000150.0000该报告说明:运行2步找到全局最优解,目标函数值为29000,变量值分别为Xl=100, X2=30.“Reduced Cost”的含义是缩减成本系数(最优解中变量的Redced Cost值自动取零), “Row”是输入模型中的行号,“Slack or Surplus”的意思为松弛或剩余,即约束条件左边与 右边的差值,

4、对于“=”不等式,左边减右边的差值称为Surplus (剩余),当约束条件的两 边相等时,松弛或剩余的值为零,如果约束条件无法满足,即没有可行解,则松弛或剩余的 值为负数.“Dual price”的意思是影子价格,上面报告中Row 2的松弛值为0,意思是第二 行的约束条件,即第一条生产线的最大生产能力已经到达饱和状态(100 个),影子价格为 50,含义是:如果该生产线最大生产能力增加1,能使目标函数值,即利润增加50,;报告 中Row3的松弛值为90,表示按照最优解安排生产(X20=30),则第三行的约束条件,即第 条生产线的最大值不起作用,故影子价格为0;例 3 求解非线性规划问题max

5、z = .x + fx + x + :x ,*123*4x 400,1l.lx + x 440,1 2s.t. 1.21x + 1.1x + x 484,1 2 31.331x + 1.21x + 1.1x + x 0, x 0, x 0, x 0.1234其 LINGO 代码如下:Model:Max=x1人(1/2)+x2人(1/2)+x3人(1/2)+x4人(1/2);x1=400;1.1*x1+x2=440;1.21*x1+1.1*x2+x3=484;1.33*x1+1.21*x2+1.1*x3+x4=532.4;end例4.求函数f(x) = e-x(x3 + 1.5cosx + xl

6、nx)在区间(0.2,4)内的极小点和极小值以及极大值点和极大值.Model:Max=(xA3+1.5*cos(x)+x* log(x)* exp(-x); bnd(0.2,x,4);endModel:Min=(xA3+1.5*cos(x)+x*log(x)*exp(-x);bnd(0.2,x,4);end例 5 基金的优化使用(2001 年数学建模竞赛题).假设某校基金会得到了一笔数额为M万元的基金,打算将其存入银行,小基金会计划 在 n 年内每年用部分本息奖励优秀师生,要求每年的奖金额相同,且在 n 年末仍保留原基 金数额.银行存款税后年利率见表1.1.2.表 1.1.2 银行存款税后利率

7、表存期1年2年3年5年税后年利率/%182.162.5922.88校基金会希望获得最佳的基金使用计划,以提高每年的奖金额,请在M=5000万元、n=5年的情况下设计具体存款方案.解 分析:假设首次发放奖金的时间是在基金到位后一年,一行每隔一年发放一次,每 年发放的时间大致相同,小基金会希望获得最佳的基金使用计划,一提高每年的奖金额,且 在n年末仍保留原基金数额M,实际上n年中发放的奖金总额全部来自与利息.如果全部基 金都存为一年定期,每年都用到期利息发放奖金,则每年的奖金数为5000*0.018=90万,这 是没有优化的存款方案.显然,准备在两年后使用的款项应当存成两年定期,必存两次一年 定期

8、的收益高,以此类推.目标是合理分配基金的存款方案,使得n年的利息总额最多.定义收益比a2 = 1 + 2.16% = 1.0432 .按照银行存款税后利率表计算得到个存款年限 对应的最优收益比见表1.1.3.表 1.1.3 各存款年限对应的最优收益比存期年限1年2年3年4年(3+1方式)5年最优收益比1.0181.04321.077761.097159681.144经分析得到两点结论:(1)一次性存成最长期,优于两个(或两个以上)较短期的组合(中途转存).(2)当存款年限需要组合时,收益比与组合的先后次序无关.建立模型 把总基金M分成5+1份,分别用x ,x,,x表示,其中x ,x,,x分别

9、126125存成 1-5 年定期,到期后本息合计用于当年发放奖金, x 存 5 年定期,到期的本息合计等 6于原基金总数M.用S表示每年用于奖励优秀师生的奖金额,用a表示第i年的最优收益比. i目标函数是每年的奖金额最大,即max S.约束条件有3个:各年度的奖金数额相等;奖金总数为M;n年末保留原基金总 额 M.于是得到模型如下:max S ,ax = S, i = 1,2,,5,iis.t.x = M,(1.1.2)ii=1a x = M.56这是线性规划模型,用LINGO软件求解,令M=5000,编写程序如下:其 LINGO 代码如下:MAX=S;1.018*x1=S;1.0432*x2

10、=S;1.07776*x3=S;1.07776*1.018*x4=S;1.144*x5=S;1.144*x6=M;M=5000;X1+x2+x3+x4+x5+x6=M;Global optimal solution found.Objective value:135.2227Total solver iterations: 0VariableValueReduced CostS135.22270.000000X1132.83170.000000X2129.62300.000000X3125.46640.000000X4123.24790.000000X5118.20160.000000X643

11、70.6290.000000M5000.0000.000000RowSlack or SurplusDual Price1135.22271.00000020.000000-0.211054830.000000-0.205956540.000000-0.199352250.000000-0.195827360.000000-0.187809370.000000-0.187809380.0000000.402663190.0000000.2148538例 6 某公司 6 个供货栈,库存货物总数分别为60,55,51,43,41,52,现由8 个客户各要一 批货,数量分别为35,37,22,32,

12、42,32,43,38,各供货栈到8 个客户处的单位货物运输价见表2表 2 供货栈到客户的单位货物运价(元/每单位)、客户 货栈VIV2V3V4V5V6V7V8W162674259W249538582W352197433W476739271W523957265W655228143试确定各货栈到各客户的货物调运数量,使总的运费最小.解引入决策变量X,代表从第i个货栈到第j个客户的货物运量用符号c表示从第i ij ij个货栈到第j个客户的单位货物运价,a表示第i个货栈的最大供货量,d表示第j个客户ii的订货量. 目标函数是总运输费用最小.约束条件有三条:各货栈运出的货物总量不超过其库存数;各客户收

13、到的货物总量等于其订货数量;决策变量x非负. ij则本问题的数学模型为:minz = E6 E8 c xi =1 j =1 ij ija ,i 1,2,,6,iE6 xij=d , j = 1,2,8,j0, i = 1,2,,6, j = 1,2,,8.1.2.1)ij1. 集合定义部分LINGO将集合(SET)的概念引入建模语言,集合是一组相关对象构成的组合,代表 模型中的实际事物,并于数学变量及常量联系起来,是实际问题到数学的抽象.例 1.2.1中的 6 个仓库可以看成是一个集合, 8 个客户可以看成另外一个集合.每个集合在使用之前需要预先给出定义,定义集合时要明确三方面内容:集合的名称

14、、 集合内的成员(组成集合的个体,也称元素)、集合的属性(可以看成是与该集合有关的变 量或常量,相当于数组) .本例先定义仓库集合:WH/W1.W6/AI;其中WH是集合的名称,W1.W6是集合内的成员是特定的省略号(如果不用省 略号,也可以把成员一一列出来,成员之间用逗号或空格分开),表明该集合有个成员,分 别对应6个货栈,AI是集合的属性,它可以看成是一个一维数组,有6个分量,分别表示 各货栈现有货物的总数.集合、成员、属性的命名规则与变量相同,可按自己的意愿,用有一定意义的字母数 字串来表示,式中“/”和“/:”是规定的语法规则.本例还定义客户集合:VD/V1.V8/DJ;该集合有8个成员,DJ是集合的属性(有8个分量)表示各客户的需求量. 以上两个集合称为初始集合(或称基本集合,原始集合),初始集合的属性

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 机械/制造/汽车 > 电气技术

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号