2021年亚太杯三等奖选手C题思路

article/2025/3/15 17:03:47

文章目录

    • 亚太杯C题第一小问
    • 亚太杯C题第二小问
    • 亚太杯C题第三小问
    • 亚太杯C题第四小问
    • 亚太杯C题第五小问

昨天晚上刚出了亚太杯的成绩,获得了三等奖,毕竟是第一次参加数学建模比赛,不是成功参与奖就很高兴了,结束了之后,还要进行总结复盘,接下来,就是我们队伍的思路。

因为A题和B题都读不懂,所以我们才选了C题,但是坏处是,选C题的人数也很多。

亚太杯C题第一小问

在这里插入图片描述
在这里插入图片描述
读完第一问,我们不难发现,有几个关键词需要我们注意。
选择合适指标,收集相关数据,建立塞罕坝对生态环境影响的评价模型,为了定量评价。。。。。。。。对塞罕坝恢复前后的环境状况进行对比分析
所以我们从第一步开始,先选择合适指标:
通过对以往环境对比评价类型的论文的参考,我们选择了三个方面,分别是,经济情况,土壤情况,以及二氧化碳情况,六个指标,对环境情况进行分析,采用了层次分析模型,下面是我们的模型示意图:
在这里插入图片描述
备选层只有两个选择,一个是恢复前的塞罕坝,一个是恢复后的塞罕坝,
第二步就是构建权重矩阵,我们可以得到
在这里插入图片描述
代码如下

disp('input A');
A=input('A=');
[n,n]=size(A);
[V,D]=eig(A);
tempNum=D(1,1);
pos=1;
for h=1:nif D(h,h)>tempNumtempNum=D(h,h);pos=h;end
end    
w=abs(V(:,pos));
w=w/sum(w);
t=D(pos,pos);
disp('rules w=');disp(w);disp('bigget t=');disp(t);
CI=(t-n)/(n-1);RI=[0 0 0.52 0.89 1.12 1.26 1.36 1.41 1.46 1.49 1.52 1.54 1.56 1.58 1.59 1.60 1.61 1.615 1.62 1.63];
CR=CI/RI(n);
if CR<0.10disp(' ACCE PT!');disp('CI=');disp(CI);disp('CR=');disp(CR);
else disp(' NOT ACCEPCT!');
end

最后得到的CR<0.1,一致性检验通过,所以第一题就算是做完了。
优点:

  • 快速,用了一个上午就做出来了;
  • 简单,因为备选对象只有两个,所以算起来,矩阵很好列

缺点:

  • 不准确,因为图速度,选取的指标太少了,其实结果是不准确的;

  • 人为因素较多,在建模的时候,一想就知道恢复后更好,所以靠眼看,都知道谁好,有种从结论写过程的感觉;

到这里第一题就做完了,看起来还很顺利,但后面我们就陷入了瓶颈

亚太杯C题第二小问

在这里插入图片描述
读完题目之后,我们可以从其中选取几个关键词:请选择合适的指标,收集相关数据,建立数学模型,评估塞罕坝对北京抗沙能力的影响定量评估塞罕坝在北京抗沙尘暴中的作用。

  1. 选取合适的指标,我们采用的是主成分分析法,根据第一问,我们选择从经济与森林面积出发建立经济层面与森林面积层面的指标,经过数据收集并且对数据进行了优化处理,通过对京津冀2019年的影响抗沙能力的林业面积和林业经济的各项指标进行主成分分析(在做主成分分析之前一定要进行数据优化,要不然就会因为尺度不一样而出大问题),根据总方差的解释结果,找到占比最大的指标,即为影响最大的指标,通过主成分分析法,找到四个主要指标,分别为林业总产值、林业用地面积、森林覆盖率,找到相关专业论文,找到了AQI,一共四个主要指标。
  2. 评估塞罕坝对北京抗沙能力的影响,这个要求我们当时也是没读明白,为什么塞罕坝会影响北京的抗沙能力,后来想了想,就是塞罕坝建立前怎么样,与建立后,北京的一些指标的对比,所以根据这四个指标在2001年与2019年的数据对比,得出了结论,(2001年塞罕坝已初步建成,但是国家统计局的网站上,最早只能找到2001,所以我们只选了2001年的),可以看出,2019年北京的四项指标,明显好于2001年。
  3. 关于塞罕坝在北京抗沙过程中的作用,我们的找到NOx 与SO2 比值的年际变化图:

在这里插入图片描述
根据增长趋势,我们得出结论:塞罕坝人工林不仅改善了当地的生态环境,而且对京、津及其周边地区的生态环境质量的改善起到重要作用。

亚太杯C题第三小问

在这里插入图片描述
刚看到这题,瞬间就懵了,来确定中国哪些地理位置需要建设生态区,一开始没有进行深入思考,就开始疯狂查找数据,我们发现,生态区分为:植物、动物、地形等,还有国家级,市级、县级。。。。。。。一开始就想无头苍蝇一样搜集数据,后来我们发现了关键的一点,将塞罕坝的生态保护模式推广到全国,我们就要弄清楚,塞罕坝的生态模式是什么,通过查阅资料,塞罕坝的生态模式就是,通俗来说,就是有风沙,然后,种树,那我们可不可以找到中国风沙最严重的地区,于是就开始根据全国风沙地图来选择,
在这里插入图片描述
不难看出来,那几个颜色最深的地方,就是风沙最严重的地方,来建立生态保护区。
1.生态保护区的指标:分为两层,一层是森林覆盖率和森林产值,第二层是几个乱七八糟的指标,因为我国建立生态区的标准过于复杂,所以我们从政府文件中选取了几个关键的指标。
2.判断其是否能建立:开始查找数据,因为地理位置偏远而且有的还是小县城,所以数据基本上,只有1年的数据,那没办法了,也只能硬着头皮来上,那么,该如何判断呢,这时,我突发奇想,既然我们这些小地方找不到数据,那我们找全国最大的,于是,我们利用神经网络算法,倒入了几组成功建立生态区的地区数据,经过机器学习,来判断我们找的这几个地方是否能建立生态区,后来一试,误差居然很小

代码如下

y=input(' input data');
n=length(y);
yy=ones(n,1);
yy(1)=y(1);
for i=2:nyy(i)=yy(i-1)+y(i)
end
B=ones(n-1,2);
for i=1:(n-1)B(i,1)=-(yy(i)+yy(i+1))/2;B(i,2)=1;
end
BT=B';
for j=1:(n-1)YN(j)=y(j+1);
end
YN=YN';
A=inv(BT*B)*BT*YN;
a=A(1);
u=A(2);
t=u/a;
t_test=input(' numbers');
i=1:t_test+n;
yys(i+1)=(y(1)-t).*exp(-a.*i)+t;
yys(1)=y(1);   
for j=n+t_test:-1:2ys(j)=yys(j)-yys(j-1);
end
x=1:n;
xs=2:n+t_test;
yn=ys(2:n+t_test);
plot(x,y,'^r',xs,yn,'*-b');
det=0;
for i=2:ndet=det+abs(yn(i)-y(i));
end
det=det/(n-1);
disp([' deviation:',num2str(det),'%']);disp([' predict:',num2str(ys(n+1:n+t_test))]);
net = newff(minmax(P),[7,1],{'tansig','purelin'},'trainlm');net.trainParam.show=50;%net.trainParam.lr=0.05;net.trainParam.epochs=1000;net.trainParam.goal=1e-5;[net,tr]=train(net,P,T);net.iw{1,1}net.b{1}net.lw{2,1}net.b{2}
P2=[-1;2];y3=sim(net,P2);

在这里插入图片描述
喜出望外,于是我们就利用神经网络算法给解决了问题,最大的缺点就是,数据根本找不到,我们后来都想编上几组 ,但是还好成功做出来了。

当时囫囵吞枣,做出来题就得意忘形了,而且当时都是调用已经写好的函数,也没有搞懂其中的意思,现在才看到我们当时只训练了3轮,怎么说也要100轮起步了。。。。

亚太杯C题第四小问

在这里插入图片描述
请从亚太地区选择另一个国家建立数学模型,因为不知道有什么可选取的规则,为了查找数据方便,我们就选了中国的好朋友,巴基斯坦,和第四问的思路差不多,还是寻找风沙图,但我们遇到了一个问题,就是找不到风沙图,毕竟不是在国内,于是转变思路,我们找了森林的分布图以及降水图
在这里插入图片描述
通过枚举法,说白了就是拿眼看 ,我们找到了以下地区的4项指标
在这里插入图片描述
通过灰色关联分析,和灰色预测,先判断其关联性,再通过灰色预测的斜率判断其建立生态区的规模,最终得出结果,找到了适合建立生态区的地区
在这里插入图片描述
代码如下

y=input(' input data');
n=length(y);
yy=ones(n,1);
yy(1)=y(1);
for i=2:nyy(i)=yy(i-1)+y(i)
end
B=ones(n-1,2);
for i=1:(n-1)B(i,1)=-(yy(i)+yy(i+1))/2;B(i,2)=1;
end
BT=B';
for j=1:(n-1)YN(j)=y(j+1);
end
YN=YN';
A=inv(BT*B)*BT*YN;
a=A(1);
u=A(2);
t=u/a;
t_test=input(' numbers');
i=1:t_test+n;
yys(i+1)=(y(1)-t).*exp(-a.*i)+t;
yys(1)=y(1);   
for j=n+t_test:-1:2ys(j)=yys(j)-yys(j-1);
end
x=1:n;
xs=2:n+t_test;
yn=ys(2:n+t_test);
plot(x,y,'^r',xs,yn,'*-b');
det=0;
for i=2:ndet=det+abs(yn(i)-y(i));
end
det=det/(n-1);
disp([' deviation:',num2str(det),'%']);disp([' predict:',num2str(ys(n+1:n+t_test))]);

亚太杯C题第五小问

在这里插入图片描述
第五问应该是纯文字描述我们的模型,不用再建模了,所以就基本上把前四题叙述了一遍。

写完了之后,算上附录一共26页,成就感满满,也没想到能够取得三等奖,今年国赛加油。


http://chatgpt.dhexx.cn/article/sui0wxLp.shtml

相关文章

python使用networks读取txt文件画一个有权有向图

class demo():def __init__(self):self.file_pathtest.txt#图文件 def draw_graph(self):G2 nx.DiGraph() # 创建&#xff1a;空的 有向图f open(self.file_path)lines [l.split() for l in f.readlines() if l.strip()]# print(lines)for i in lines:G2.add_edge(i[0],…

数学建模常用功能

目录 pandas读取数据 查看数据异常 提取指定列 将dataframe数据以numpy形式提取 数据划分 随机森林回归 GBDT回归 特征重要性可视化 输出&#xff1a; ​ 绘制3D散点图 导入自定义包且.py文件修改时jupyter notebook自动同步 dataframe删除某列中重复字段并删除对应行…

c语言文件操作

文件操作读写 1 文件处理原理及基本概念 C语言的文件处理功能&#xff0c;大体上分为两种&#xff1a;一种是设置缓冲区&#xff0c;另一种是不设置缓冲区。因为不设置缓冲区的方法直接对磁盘进行操作&#xff0c;速度较慢&#xff0c;并且由于不是C的标准函数&#xff0c;跨…

无人机视角展示(无人机图像定位 )--某数学建模A题MATLAB代码

近期没啥空&#xff0c;水个简单的。。。。 目前只写了第一问&#xff0c;有空再写。。。。。 问题描述 无人驾驶飞机简称“无人机”&#xff0c;是利用无线电遥控设备和自备的程序控制装置操纵的不载人飞机。搭载图像设备的无人机在高空航拍、区域巡视、军事侦查等方面有广泛…

2020 全国大学生数学建模竞赛C题思路+代码

题目链接&#xff1a;天翼云盘 珍藏美好生活 家庭云|网盘|文件备份|资源分享 前言 又是一年数据挖掘题型&#xff0c;第一次接触这种题型还是在去年的mathorcup上&#xff0c;这种题的难度就在于指标的建立和数据的处理上。后面会出一份关于数据挖掘题型&#xff0c;我的相关经…

PU learning半监督学习

半监督学习 Positive-unlabeled learning 什么是半监督学习 让学习器不依赖外界交互、自动地利用未标记样本来提升学习性能&#xff0c;就是半监督学习&#xff08;semi-supervised learning&#xff09;。 要利用未标记样本&#xff0c;必然要做一些将未标记样本所揭示的数…

详解基于图卷积的半监督学习

Kipf和Welling最近发表的一篇论文提出&#xff0c;使用谱传播规则&#xff08;spectral propagation&#xff09;快速近似spectral Graph Convolution。 和之前讨论的求和规则和平均规则相比&#xff0c;谱传播规则的不同之处在于聚合函数。它使用提升到负幂的度矩阵D对聚合进行…

【半监督医学图像分割 2023】RCPS

文章目录 【半监督医学图像分割 2023 】RCPS摘要1. 介绍2. 相关工作2.1 医学图像分割2.1 半监督学习2.3 对比学习 3. 方法3.1 整体概述3.2 纠正伪监督3.3 双向Voxel对比学习。 4. 实验 【半监督医学图像分割 2023 】RCPS 论文题目&#xff1a;RCPS: Rectified Contrastive Pseu…

半监督之数据增强

目录 前言 传统常见的 Free Lunch for Few-shot Learning: Distribution Calibration Learning to Augment for Data-Scarce Domain BERT Knowledge Distillation MixText: Linguistically-Informed Interpolation of Hidden Space for Semi-Supervised Text Classificati…

半监督的语义分割

现阶段传统的语义分割已经逐渐走向瓶颈&#xff0c;你设计一个网络&#xff0c;修改一下U-Net增加一个模块&#xff0c;现在已经很难再出优秀的成果&#xff0c;大家对你的创新程度认可度也越来越低。所以现在大家在进行语义分割的时候往往需要自行创造出一些需求&#xff0c;比…

半监督学习介绍

转载地址 https://blog.csdn.net/ice110956/article/details/13775071 什么是半监督学习? 传统的机器学习技术分为两类&#xff0c;一类是无监督学习&#xff0c;一类是监督学习。 无监督学习只利用未标记的样本集&#xff0c;而监督学习则只利用标记的样本集进行学习。 但…

半监督目标检测相关方法总结

戳我&#xff0c;查看GAN的系列专辑~&#xff01; 等你着陆&#xff01;【GAN生成对抗网络】知识星球&#xff01; 作者丨kinredon知乎 编辑丨极市平台 来源丨https://zhuanlan.zhihu.com/p/404160115 近期阅读了一些半监督目标检测&#xff08;Semi-Supervised Object Detecti…

半监督深度学习

个人博客&#xff1a;wyxogo.top 半监督学习 在有标签数据无标签数据混合成的训练数据中使用的机器学习算法。一般假设&#xff0c;无标签数据比有标签数据多&#xff0c;甚至多得多。 要求&#xff1a; 无标签数据一般是有标签数据中的某一个类别的&#xff08;不要不属于的…

半监督学习深度学习算法

该文章主体摘自知乎糯米稻谷的文章&#xff0c;对一些细节添加了自己的理解 文章链接https 半监督学习 啥是半监督学习&#xff08;Semi-supervised Learning&#xff09;1.简单自训练&#xff08;simple self-training&#xff09;2.协同训练&#xff08;co-training&#xff…

深度半监督学习方法总结

深度神经网络已被证明在对大量标记数据进行监督学习的训练中是非常有效的。 但是大多数现实世界的数据并没有被标记&#xff0c;并且进行全部标记也是不太现实的&#xff08;需要大量的资源、时间和精力&#xff09;。 为了解决这个问题半监督学习 ( semi-supervised learning)…

深度半监督学习

半监督学习介绍 Zhu X, Goldberg A B. Introduction to semi-supervised learning[J]. Synthesis lectures on artificial intelligence and machine learning, 2009, 3(1): 1-130. 链接半监督 无监督学习&#xff1a;主要目的是从独立同分布采样中得到的n个独立样本中找到in…

半监督SVM

半监督SVM 什么是半监督学习半监督SVM要做什么TSVM 这里是阅读周志华的《机器学习》中关于半监督SVM&#xff08;S3VM&#xff09;的笔记。 什么是半监督学习 在数据的搜集中&#xff0c;获得标记数据的成本是高昂的&#xff0c;而获得未标记的数据则是低廉的&#xff0c;为此…

半监督学习代码实战

sklearn官方例子——用半监督学习做数字识别 什么是半监督学习 半监督学习很重要&#xff0c;为什么呢&#xff1f;因为人工标注数据成本太高&#xff0c;现在大家参加比赛的数据都是标注好的了&#xff0c;那么如果老板给你一份没有标注的数据&#xff0c;而且有几百万条&am…

半监督学习综述

Chapter 7 Semi-supervised Learning 翻译不易&#xff0c;未经允许请勿转载&#xff01; Author: Mohamed Farouk Abdel Hady and Friedhelm Schwenker Translator: Howard Wonanut 摘要 传统的监督学习方法需要使用有标签数据建立模型。然而&#xff0c;在现实世界中给训练…

半监督学习(一)

什么是半监督学习? 传统的机器学习技术分为两类&#xff0c;一类是无监督学习&#xff0c;一类是监督学习。 无监督学习只利用未标记的样本集&#xff0c;而监督学习则只利用标记的样本集进行学习。 但在很多实际问题中&#xff0c;只有少量的带有标记的数据&#xff0c;因为…