数学建模实验一

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数学建模实验一 -CAL-FENGHAI-(2020YEAR-YICAI)_JINGBIAN

LINGO软件入门与数学规划建模练习

学校:北京信息科技大学班级:信计1101 姓名:王雅卿学号:2011012505

实验目的:1、掌握Lingo软件求解简单数学规划模型的一般编程方法;

2、掌握引入集合及其属性的方法,编程求解一些规模较大的数学规划模

型。

实验内容:1、使用Lingo软件求解简单的线性规划模型、整数规划模型及非线

性规划模型等;

2、建立各类实际问题的数学规划模型,并运用Lingo软件编程求解

所建立的模型,从而掌握通过建立数学规划模型解决一些实际问题

的一般方法。

实验题目:

1、投资组合问题

美国某三种股票(A,B,C)12年(1943~1954)的投资收益率R i(i=1,2,3)(收益

率=(本金+收益)/本金)如表5-7所示(表5-7中还列出各年度500种股票的

指数供参考)。假设你在1955年有一笔资金打算投资这三种股票,希望年收益

率达到1.15,试给出风险最小的投资方案。

表5-7 美国三种股票1943~1954的收益率

1951 1.09 1.195 1.021

1952 1.083 1.39 1.131

1953 1.0350.928 1.006

1954 1.176 1.715 1.908

平均 1.0891 1.2137 1.2346解:设投资A,B,C三种股票的资金份额分别为。程序:

(1)用Matlab计算协方差

R1=xlsread('Book1.xls',1,'B2:B13');

R2=xlsread('Book1.xls',1,'C2:C13');

R3=xlsread('Book1.xls',1,'D2:D13');

R=[R1 R2 R3];

mean(R1)

mean(R2)

mean(R3)

cov(R)

xlswrite('Book1.xls',cov(R),'sheet2')

(2)用Lingo求最优方案

sets:

gupiao/1..3/:x,avgR;

links(gupiao,gupiao):cov;

endsets

data:

avgR=@ole('Book1.xls','avg');

cov=@ole('Book1.xls','xie');

@ole('Book1.xls','jieguo')=x;

enddata

min=@sum(links(i,j):x(i)*x(j)*cov(i,j));

@for(gupiao(j):@sum(gupiao(i):x(i)*avgR(i))>=1.15); @for(gupiao(i):x(i)>=0);

@for(gupiao(i):x(i)<=1);

@for(gupiao(j):@sum(gupiao(i):x(i))=1);

结果:

(1)协方差

(2)资金份额

即:投资A,B,C三种股票的资金份额分别为0.530253,0.35637,,0.113377

2、设土地开发有两个目的,一是用于发展农业,二是用于发展城市。有三个部门提出了各自的要求:(1)城市建设部门要求至少开发4000亩土地用于城市建设;(2)农业部门要求至少开发5000亩土地用于发展农业;(3)土地开发部门要求至少开发10000亩土地。已知城市用地每亩开发费用是400元,农业用地每亩开发费用是300元。问怎样计划,才能使开发费用花费最少。

解:设开发用于城市建设的土地为亩,用于发展农业的土地为亩。最少花

程序:

min=400*x1+300*x2;

x1>=4000;

x2>=5000;

x1+x2>=10000;

结果:

即:开发用于城市建设的土地为4000亩,用于发展农业的土地为6000亩,最

小费用为

3400000元。

3、(混合泳接力队的选拔问题)某班准备从5名游泳队员中选择4人组成接力队,参加学校的4x100m混合泳接力比赛。5名队员4种泳姿的百平米均成绩如表,问应该如何选拔队员组成接力队?

如果最近队员的丁的蛙泳成绩有较大退步,只有1′15″2;而队员戊经过艰苦训练自由泳成绩有所进步,达到57″5,组成接力队的方案是否应该调整?

表5-11 5名队员4种泳姿的百米平均成绩

解:设x(i,j)为第i种泳姿,第j个人,x(i,j)=1为第i种泳姿选第j个人,x(i,j)=0为第i种泳姿不选第j个人。从excel表格中读数据,并将结果写到excel表格中。

(1)程序:

model:

sets:

yongzi/a1..a4/;

duiyuan/b1..b5/;

links(yongzi,duiyuan):T,x;

endsets

data:

T=@ole('Book2.xlsx','tt');

@ole('Book2.xlsx','xx')=x;

enddata

min=@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秒,戊的自由泳成绩改为57.5秒。

结果:

即:接力队选乙,丙,丁,戊分别参加蝶泳,仰泳,蛙泳,自由泳。

4、(生产计划安排问题)某企业用A,B两种原油混合加工成甲,乙两种成品油销售数据见表5-12,表中百分比是成品油中原油A的最低含量。

表5-12 生产计划安排

甲乙现有库存量最大采购量产品

原油

相关文档
最新文档