运用LINGO进行优化模型求解并与EXCEL进行连接.doc

上传人:rrsccc 文档编号:9546081 上传时间:2021-03-05 格式:DOC 页数:11 大小:210.50KB
返回 下载 相关 举报
运用LINGO进行优化模型求解并与EXCEL进行连接.doc_第1页
第1页 / 共11页
运用LINGO进行优化模型求解并与EXCEL进行连接.doc_第2页
第2页 / 共11页
运用LINGO进行优化模型求解并与EXCEL进行连接.doc_第3页
第3页 / 共11页
运用LINGO进行优化模型求解并与EXCEL进行连接.doc_第4页
第4页 / 共11页
运用LINGO进行优化模型求解并与EXCEL进行连接.doc_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《运用LINGO进行优化模型求解并与EXCEL进行连接.doc》由会员分享,可在线阅读,更多相关《运用LINGO进行优化模型求解并与EXCEL进行连接.doc(11页珍藏版)》请在三一文库上搜索。

1、实 验 报 告(二)课程名称 数学实验 实验项目 运用LINGO进行优化模型求解,并与EXCEL进行连接实验环境 PC机、LINGO 班级/学号/姓名 指导教师 实验日期 2013-11-5 成绩 一、实验名称:运用LINGO进行优化模型求解,并与EXCEL进行连接二、实验目的:1、 掌握Lingo求解线性规划模型的方法及回看求解结果报告;2、 掌握Lingo进行灵敏度分析的方法;3、 掌握Lingo求解整数规划和0-1规划的方法;4、 掌握Lingo中集合的定义方法;5、 掌握Lingo与Excel之间的链接方法;三、实验内容:习题四:1.用LINGO求解下列线性规划问题(1)程序:mode

2、l:max=6*x1+2*x2+10*x3+8*x4;5*x1+6*x2-4*x3-4*x4=20;3*x1-3*x2+2*x3+8*x4=25;4*x1-2*x2+x3+3*x4=10;end结果:(2)程序:model:max=-5*x1+5*x2+13*x3;-1*x1+x2+3*x3=20;12*x1+4*x2+10*x3=90;end结果:(3)程序:model:min=2*x+y;7*x-5*y-23=0;x+7*y-11=0;free(x);free(y);end结果:2.用LINGO求解如下整数规划问题(1)程序:model:max=5*x1+10*x2+3*x3+6*x4;x

3、1+4*x2+5*x3+10*x4=0;-2*x1+4*x2+2*x3+4*x4=1;x1+x2-x3+x4=1;bin(x1);bin(x2);bin(x3);bin(x4);end结果:(3)程序: max=x+y;2*x-y-30;2*x+3*y-60;3*x-5*y-150;gin(x);gin(y);end结果:习题五:1、 某厂生产A、B、C三种产品其所需劳动力、材料等有关数据见表格。问题:1)确定获利最大的产品生产计划; 2)产品A的利润在什么范围内变动时,上述最有计划不变? 3)如果劳动力数量不增,材料不足时可以从市场买,每单位0.4元,问该厂要不要购进原材料扩大生产,以购多少

4、为宜?资源消耗定额产品ABC可用量(单位)劳动力63545材料34530产品利润(元/件)314解:设A,B,C的产量分别为x1,x2,x3,资源为a,消耗定额为b,利润为c。从excel表格中读数据。(1)程序:model:sets:ziyuan/a1,a2/:a;xiaohao/A,B,C/:c,x;links(ziyuan,xiaohao):b;endsetsdata:a=ole(Book1.xlsx,aa);c=ole(Book1.xlsx,cc);b=ole(Book1.xlsx,bb);ole(Book1.xlsx,xxx)=x;enddatamax=sum(xiaohao(j):

5、c(j)*x(j);for(ziyuan(i):sum(xiaohao(j):b(i,j)*x(j)=a(i);end结果:(2)将结果进行灵敏度分析即产品A的利润在2.4-4.8之间变动,上述最有计划不变。(3) 从第一问数据中,DUAL PRICE给出这两个资源在最优解下,“资源”增加1个单位时利润的增量:劳动力增加一个单位利润增加0.2元,原料增加1个单位利润增加0.6元。由第二问灵敏度分析可知CURRENT RHS的ALLOWABLE INCREASE 和ALLOWABLE DECREASE给出了影子价格有意义条件下约束右端的限制范围,即原材料最多增加15个单位。4、 (混合泳接力队的

6、选拔问题)某班准备从5名游泳队员中选择4人组成接力队,参加学校的4x100m混合泳接力比赛。5名队员4种泳姿的百平米均成绩如表,问应该如何选拔队员组成接力队? 如果最近队员的丁的蛙泳成绩有较大退步,只有1152;而队员戊经过艰苦训练自由泳成绩有所进步,打到575,组成接力队的方案是否应该调整?泳姿队员甲乙丙丁戊蝶泳10685721181101074仰泳115610610781142111蛙泳1271064124610961238自由泳586535945721024解:设x(i,j)为第i种泳姿,第j个人,x(i,j)=1为第i种泳姿选第j个人,x(i,j)=0为第i种泳姿不选第j个人。从exc

7、el表格中读数据。(1)程序:model:sets:yongzi/a1.a4/;duiyuan/b1.b5/;links(yongzi,duiyuan):T,x;endsetsdata:T=ole(Book2.xlsx,tt);ole(Book2.xlsx,xx)=x;enddatamin=sum(links:T*x);for(yongzi(i):sum(duiyuan(j):x(i,j)=1);for(duiyuan(j):sum(yongzi(i):x(i,j)=1);end结果:即接力队选乙,丙,丁,甲分别参加蝶泳,仰泳,蛙泳,自由泳。(2)将丁的蛙泳成绩改为75.2秒,戊的自由泳成绩改

8、为57.5秒。结果:即接力队选乙,丙,丁,戊分别参加蝶泳,仰泳,蛙泳,自由泳。选址问题某公司有6个建筑工地要开工,工地位置()和水泥日用量由表格给出,公司目前有两个临时存放水泥的场地(料场),分别位于A(5,1)和B(2,7),日存储量各20吨,请解决一下问题。(1) 假设从料场到工地之间均有直线道路项链,试制定日运输计划,即从A,B两个料场分别向各工地运送多少水泥,使总的吨千米数最小?(2) 为了进一步减少吨千米数,打算舍弃目前的两个临时料场,改建两个新料场,日存储量仍然为20吨,问建在何处为好?工地123456位置X1.258.750.55.7537.25Y1.250.754.7556.5

9、7.75日用量3547611解:设料场为lc,工地为gd。从excel表格中读数据。(1)程序:model:sets:lc/A,B/:x,y;gd/1.6/:a,b,d;links(lc,gd):c;endsetsdata:x=5,2;y=1,7;a,b,d=ole(Book3.xlsx,aa,bb,dd);ole(Book3.xlsx,cc)=c;enddatamin=sum(links(i,j):c(i,j)*sqrt(x(i)-a(i)2+(y(i)-b(j)2);for(lc(i):sum(gd(j):c(i,j)=20);for(gd(j):sum(lc(i):c(i,j)=d(j)

10、;end结果:(2)程序:model:sets:lc/A,B/:x,y,e;gd/1.6/:a,b,d;links(lc,gd):c;endsetsinit:x=5,2;y=1,7;endinitdata:a,b,d=ole(Book3.xlsx,aa,bb,dd);e=20,20;ole(Book3.xlsx,cc)=c;enddatamin=sum(links(i,j):c(i,j)*sqrt(x(i)-a(i)2+(y(i)-b(j)2);for(lc(i):sum(gd(j):c(i,j)=e(i);for(gd(j):sum(lc(i):c(i,j)=d(j);end结果:四、实验心得 通过这次实验,我学会了lingo软件的基本操作对于一个较复杂的数学模型能够狠方便的求解。做题过程中也常出现问题,比如lingo与excel文件之间的数据传递,调用数据是名称要与定义数据块名称一致,要使excel表格处于打开状态。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1