第十届数学建模新生杯比赛(A题)
问题一:
建立模型:线性规划模型
符号说明
符号 | 含义 |
a | 写出甲类作业的数量 |
b | 写出乙类作业的数量 |
z | 目标值 |
列出约束条件与目标函数
约束条件:
1. 2a+b<10
2. a+b<8
3 .b<7
目标函数(max):z=4a+3b
调用matlab函数
1.函数介绍:
需要调用linprog函数(如用optimproblem函数要求matlab版本在2017及以上),格式如下:
[x,fval]=linprog(f,a,b,aeq,beq,lb,up,options)
1.x为取得最值时自变量x的取值
2.fval为取得最值时最值的值; f为目标函数,本题中为:z=4a+3b,表示为[4,3](线代知识)
3.a,b为不等约束,其中a为不等约束左边系数,b为不等约束右边系数
4.aeq,beq为等式约束,aeq为等式左边系数,beq为等式右边系数
5.lb,up分别为自变量自身取值范围。本题中a,b取值范围均为[0,+∞]
6.options为使用的方法种类,一般不做更改
7.注意,linprog函数默认求目标函数最小值,所以如果要求最大值需要使目标函数系数乘以-1
8.linprog函数不等约束方程里默认为Ax<b的形式,如果你得出Bx>C的约束方程,需要乘以-1变成(-B)x<-C的形式
调用解题函数代码:
[x,fval]=linprog([-4,-3],[2,1;1,1;0,1],[10;8;7],[0,0;0,0;0,0],[0;0;0],[0,0],[inf,inf]);
fval=-fval
输出结果:
Optimal solution found.
x =2.00006.0000fval =26
代码解释:
1、matlab中linprog函数默认求解目标函数最小值,而题目中为了求解最大值,所以把目标函数系数[4,3]改为[-4,-3],再由fval=-fval求出最大值。
2、由于本题没有等式约束,自变量的取值范围也没有额外要求,所以aeq,beq部分为零矩阵,lb也为零矩阵,ub为无限大。(matlab中inf为+∞),所以上述主要代码也可以缩减为:
[x,fval]=linprog([-4,-3],[2,1;1,1;0,1],[10;8;7])
问题二
建立模型:整数规划模型
模型建立与求解
符号和建模就不细说了,下面直接分析求解:
分析:由题目可以确定,目标函数是游泳成绩之和,最优解是其最小值。约束条件是每人只能选取一种游泳方式、每种游泳方式只能一人使用。因此自变量可以设成某个人用某种游泳方式(1~20),例如甲的四种游泳方式对应编号1-4,乙的编号对应5-8…自变量的取值为0、1,表示参加与否。
代码如下(matlab):
clc;
clear;
c = [66.8 75.6 87 58.6 ...57.2 66 66.4 53 ...78 67.8 84.6 59.4 ...70 74.2 69.6 57.2 ...67.4 71 83.8 62.4];
A = zeros(5,20);
for i = 1:4A(1,i)=1;A(2,i+4)=1;A(3,i+8)=1;A(4,i+12)=1;A(5,i+16)=1;
end
b = [1,1,1,1,1]';
Aeq = zeros(4,20);
for i = 0:4;Aeq(1,1+4*i)=1;Aeq(2,2+4*i)=1;Aeq(3,3+4*i)=1;Aeq(4,4+4*i)=1;
end
beq = [1,1,1,1];
lb = zeros(1,20);
ub = ones(1,20);
intcon = [1:20];
[x,fval]=intlinprog(c,intcon,A,b,Aeq,beq,lb,ub)
结果:
蝶泳 | 仰泳 | 蛙泳 | 自由泳 |
乙 | 丙 | 丁 | 甲 |
问题三
建立模型:灰色预测模型
模型建立与求解
直接分析问题求解了,论文不能像这样写。
解:
代码实现(matlab):
%GM(1,N)
clc;
clear;
x0 = [4383 7625 10500 11316 17818 83 131 180 195 306 146 212 233 259 404]; % 录入数据
[m,n] = size(x0);
x1_d = cumsum(x0,2); %累加序列
x11 = x1_d(1,:);
z11=0.5*(x11(1:end-1)+x11(2:end));%紧邻均值生成
b = [-z11' x1_d(2,2:end)' x1_d(3,2:end)'];
y = x0(1,2:end)';
u = b\y %参数矩阵
%%引入条件
x20 = [x0(2,:),400];
x30 = [x0(3,:),500];
x21 = cumsum(x20);x31 = cumsum(x30);
for k = 0:length(x21)-1x1(k+1) = (x0(1,1)-u(2)/u(1)*x21(k+1)-u(3)/u(1)*x31(k+1)).*exp(-u(1)*k)+u(2)/u(1)*x21(k+1)+u(3)/u(1)*x31(k+1);
end
x10hat = [x1(1),diff(x1)]; %进行差分运算
epsilon = x0(1,:) - x10hat(1:end-1); %计算残差
delta = abs(epsilon./x0(1,:)); %计算相对误差
xhat = x10hat(end) % 预测最终值
(注:以上仅为解析,并不是评分标准)
第十届数学建模新生杯比赛(A题)相关推荐
- 2018南邮全国计算机大赛,关于举办2018年南京邮电大学第十届数学建模竞赛通知...
为了提高学生的综合素质,增强创新意识,培养学生应用数学知识解决实际工程问题的能力,激发学生学习数学的积极性,同时选拔参加2018年全国大学生数学建模竞赛和2019年美国大学生数学建模竞赛的队员,经学校 ...
- 2020年广东工业大学第十届文远知行杯新生程序设计竞赛(同步赛)G.排解忧伤
2020年广东工业大学第十届文远知行杯新生程序设计竞赛(同步赛)G.排解忧伤 题目链接 题目描述 猪猪参加小米赞助的icpc比赛之后惨遭打铁,为了排解忧伤,他开始观察嘉宾席. 嘉宾席是间隔为1,一字排 ...
- 第十届先进成图大赛计算机,【学科竞赛】2017年---第十届全国大学生“高教杯”先进成图技术与产品信息建模创新大赛...
第十届全国大学生"高教杯"先进成图技术与产品信息建模创新大赛 第十届全国大学生"高教杯"先进成图技术与产品信息建模创新大赛赛场上再传捷报:我院机电与信息工程系派 ...
- 高中生计算机创新大赛作品,2017 第十届“英特尔杯”全国大学生软件创新大赛获奖作品...
获奖作品展示 • 第十届英特尔杯全国大学生软件创新大赛 - 特等奖(1名) 译motion 同时荣获最具创业潜力奖 团队:Quadra_L 学校:中南大学 译motion是一款专 ...
- 第十届“数学、计算机与生命科学交叉研究”青年学者论坛
第十届"数学.计算机与生命科学交叉研究" 青年学者论坛 一 会议简介 时光荏苒,不经意间"数学.计算机与生命科学交叉研究"青年学者论坛已经迎来十周年纪念.&q ...
- 山西省第十届计算机技能大赛,《附件2山西省第十届职业院校技能大赛比赛方案》.doc...
<附件2山西省第十届职业院校技能大赛比赛方案>.doc 附件2: ??? 一.大赛名称:山西省第届职业院校技能大赛 ??? 二.比赛时间:201年月??? 三.比赛地点:四.主办和承办单位 ...
- 山西省第十届计算机技能大赛,附件2山西省第十届职业院校技能大赛比赛方案.doc...
附件2山西省第十届职业院校技能大赛比赛方案.doc 附件2: ??? 一.大赛名称:山西省第届职业院校技能大赛 ??? 二.比赛时间:201年月??? 三.比赛地点:四.主办和承办单位: 主办单位:山 ...
- 数学建模比赛超全整理【数学建模有哪些比赛?】【全网最全数模整理】
文章目录 一.全国大学生数学建模竞赛 二.美国大学生数学建模竞赛 三.中国研究生数学建模竞赛 四.认证杯(小美赛) 五.华数杯(国内赛和国际赛) 六.MathorCup高校数学建模挑战赛 七.全国大学 ...
- 2022数学建模高教杯国家一等奖经验分享
此篇投稿者即是粉丝,也是我2022年带得最早的一批徒弟之一.能拿到国一我也非常开心,于是让他写了以下经验分享,希望对大家有所帮助. 很荣幸能在大学最后的时光中拿到国一,自此之后也可以算正式退役了,在这 ...
最新文章
- 浅析data:image/png;base64的应用
- (转载)浏览器兼容性问题大汇总
- 成功解决OSError: dlopen() failed to load a library: cairo / cairo-2 / cairo-gobject-2 / cairo.so.2
- python爬虫 库_七款必备的Python爬虫库,你知道几个?
- switch 字符串 java_JDK7新特性switch支持字符串
- 怎么打包图片_怎么将许多张照片打包发到邮箱?
- 二叉树的公共祖先(递归)
- 基础 | 零散的MySql基础记不住,看这一篇就够啦
- 机器学习实战(十)Apriori(关联分析)
- python基础教程百度云-python从入门到精通视频百度云盘下载
- 对Python中列表和数组的赋值,浅拷贝和深拷贝的实例讲解
- Blender的简单技巧——阵列、旋转、数组和曲线
- 自然语言处理之分词、命名主体识别、词性、语法分析-stanfordcorenlp-NER(二)
- 用java实现楼层导航_楼层导航
- cv2.resize()函数不同插值方法比较
- CSS的repeating-radial-gradient()属性-径向渐变
- 四川一度智信:如何做好电商?
- 提问 未来计算机的发展趋势是什么,未来计算机的发展趋势是什么?
- 实践干货!猿题库 iOS 客户端架构设计
- jmeter利用察看结果树查看响应调试取样器(Debug Sampler)(3)