2022年亚太杯APMCM数学建模大赛C题全球是否变暖求解全过程文档及程序

news2024/9/22 7:39:42

2022年亚太杯APMCM数学建模大赛

C题 全球是否变暖

为方便各位阅览及了解掌握亚太杯的写作技巧,这里非技术使用中文,公式部分由于翻译过程繁琐使用英文来撰写此文章.

原题再现:

  加拿大的49.6°C创造了地球北纬50°以上地区的气温新纪录,一周内数百人死于高温;美国加利福尼亚州死亡谷是54.4°C,这是有史以来地球上记录的最高温度;科威特53.5°C,甚至在阳光下超过70°C,在中东的许多国家超过50°C。
在这里插入图片描述
  自今年以来,我们已经看到了大量惊人的温度报告。地球正在燃烧的事实是毫无疑问的。在6月底到7月初这些地区出现可怕的高温之后,意大利再次创下欧洲气温纪录,达到惊人的48.8°C,许多国家宣布意大利处于高温状态紧急事件,全球气候变暖是一种与自然有关的现象。这是由于温室效应的持续积累,导致地球大气系统吸收和释放的能量不平衡,以及能量在地球大气系统中的不断积累,导致温度上升和全球气候变暖。
  在工业革命之前,二氧化碳(CO2)在大气中一直在百万分之280(ppm)左右。CO的浓度22004年3月,大气中达到了377.7 ppm,导致了当时10年的最大平均增长。[1]根据美国国家海洋和大气管理局(NOAA)和斯克里普斯海洋研究所(SIO)的科学家称,每月平均CO2浓度水平在2022年5月达到421 ppm。[2]的一个经济合作与发展组织(OEC
D)的报告预测了一个CO2到2050年,该水平为685 ppm。[3]
  APMCM组委会已经要求您的团队解决当前报告和未来全球温度水平的预测。他们提供了数据集2022_APMCM_C_Data。csv,其中包含239177条记录,以协助您的研究。
  要求
  1.你同意有关全球气温的说法吗?使用2022_APMCM_C_Data。附件中的csv和其他您的团队收集的数据集,以分析全球温度变化。
  a)你同意2022年3月全球气温的上升导致了比过去10年期间更大的上升吗?为什么或为什么不呢?
  b)根据历史数据,请建立两个或两个以上的数学模型来描述过去,并预测未来的全球温度水平。
  c)使用1个(b)中的每个模型来分别预测2050年和2100年的全球气温。你们的模型是否同意2050年或2100年全球观测点的平均温度将达到20.00°C的预测?如果
不是在2050年或2100年,那么您的预测模型中的观测点的平均温度何时会达到20.00°C?
  d)你认为1(b)的模型最准确?为什么
  2.影响温度变化的原因是什么?
  a)使用问题1的结果和附件2022_ APMCM_C_ Data中的数据。csv和您的团队收集的其他数据集,建立一个数学模型来分析全球温度、时间和位置之间的关系(如果有的话),并解释这种关系或证明它们之间没有关系。
  b)请收集相关数据,分析自然灾害的因素(如火山爆发、森林火灾、COVID-19等)。这对全球温度有什么影响吗?
  c)你认为影响全球温度变化的主要原因是什么?
  d)你认为有什么措施来遏制或减缓全球变暖吗?
  3.准备一篇非技术性的文章(最多1页),请写一篇非技术性的文章文章(最多1页)给APMCM组委会,解释你的团队的发现和对未来的建议。
  您的PDF解决方案总共不超过25页,应该包括:
  一页汇总表。
  目录。
  你的完整解决方案。
  有一页纸的非技术性文章。
  注:APMCM竞赛的页面限制版数为25页。您提交的所有方面都达到了25页的限制(摘要,表,目录,文章)。但是,参考文献列表和附录的页面并不受限制。

整体求解过程概述(摘要)

  为解决问题我们首先将提供的数据进行数据处理,将数据转换成年月日参数,对题中数据进行基本的可视化处理。之后我们发现所提供的数据不足以支撑,因此在伯利克网搜集了2013-2022年全球各个国家的气温信息。我们将数据利用统计学知识进行分析并计算出每一年全球气温平均变化温度。通过分析最后我们可以得出2016年、2017年、2019年、2020年3月份气温平均变化温度高于2022年3月气温平均变化温度,因此过去10年观察到的气温增幅更大的说法为正确的。
  随后我们利用控制变量法发现:温度和时间成周期性变化,温度和时间之间成强相关,跟位置成弱相关。这是基于现实基础的,如四季更替导致的气温上涨下降。我以跨度较大的时间周期如1744年-1996年美国纽约八月份气温变化情况的时间为例,从中可以证明位置对于与气温的变化是不明显的。因为在时间长河之中,沧海桑田般发展变化,过去的海洋现在可能已是高山。但在较短时间段内如同一年内南半球的夏天和北半球的夏天比,南半球比北半球的平均气温低一些。因为北半球陆地面积大,陆地比热容小,热得快,冷得快。因此位置因素对于相同时间情况下的气温也存在一定联系。为了准确得出三者关系,我们进一步将前面的数据进行二次处理,将经纬度转换成location单一变量,绘制出皮尔逊相关系数热力图,进一步证明了:温度和时间成周期性变化,温度和时间之间成强相关,跟位置成弱相关的结论。
  通过数据处理分析们进一步发现了影响全球气温的主要因素有COVID-19、冰川融化、海平面上升、极端自然灾害等。

问题分析:

在这里插入图片描述

问题一分析

  为了分析全球气温上升变化,我们首先需要进行数据处理分析。由于提供的数据支撑不足,我们将题中所给的数据加上团队所搜集获取的数据进行数据处理分析。将日期信息转化成年月日变量参数,然后筛选出来2012年至2022年十年内3月份的气温数据情况,并通过时间变化阶段内的气温波动情况绘制了拟合曲线图,通过代入均值的方式表示出气温数据集变化率情况,通过这些变化率情况的比较,对2022年3月全球气温上升导致的增幅与过去10年的增幅的情况分析对比进行评价得出结论。随后我们通过多项式拟合法将2012年至2022年十年内的气温数据绘制成函数曲线建立预测模型,通过分析判断某时间段的变化趋势,增加实际问题背景所带来影响因素的权比。通过建立周期性变化的时间序列模型并在模型中加入适当熵权参数 λ 以修正其模型的正确性,最后通过此模型预测出未来的全球温度水平。 通过增加背景影响因子对两个模型进行分析预测出2050年和2100年的全球温度水平,最后判断出哪个模型更为精确并进行评价。

问题二分析

  为了分析并寻找出影响全球温度变化的原因。我们首先要将题中附加所给的数据加上团队所搜集的数据进行汇总并绘制气温堆叠面积图,依据不同年份、不同温度和不同国家地区位置的信息建立基于控制变量法的数学模型。选取发达国家中心城市中美国纽约和日本东京作为典型,先控制时间的不变,通过数据的分析寻找他们之间温度和位置关系,之再控制位置不变,通过不同数据的分析寻找时间和温度关系,并推广至自然灾害等因素对全球气温变化的关系。最终得出结论并对模型进行评价,提出对减缓全球变暖的相关建议。

问题三分析

  为了提出发现和给出对未来的建议,我们需要考虑造成全球变暖的人为因素和造成全球变暖的自然因素。人们焚烧化石燃料,如石油,煤炭等,或砍伐森林并将其焚烧时会产生大量的二氧化碳。自然因素如火山爆发喷射出火山灰和有害气体等。火山的喷发会直接导致温度的提高,而且它所释放出的气体也会造成温室效应。这些温室气体对来自太阳辐射的可见光具有高度透过性,而对地球发射出来的长波辐射具有高度吸收性,能强烈吸收地面辐射中的红外线,导致地球温度上升。由于自然条件下太阳的活动影响远大于人为的影响并且不可控,因此我们的建议是从人类文明自身的可持续发展方面入手。

模型假设:

  (1) 假设2022年3月全球气温上升导致比过去10年观察到的增幅更大是正确的。
  (2) 假设2050年或2100年观测点的全球平均气温将到20.00C的预测是错误的。
  (3) 假设时间序列模型比控制变量法模型更为精确。
  (4) 假设全球平均气温、时间和位置之间存在正相关联系。
  (5) 假设COVID-19因素对于全球平均气温的影响是最大的。
  (6) 假设人类文明的不和谐发展是导致全球气温上升的主要原因。
  (7) 假设有效控制碳排放可以使未来全球气温上升幅度控制在1.5℃内。

模型的建立与求解整体论文缩略图

在这里插入图片描述
在这里插入图片描述

全部论文及程序请见下方“ 只会建模 QQ名片” 点击QQ名片即可

程序代码:

部分Matlab程序如下:

clc, clear
load a w; 
b=zscore(a);
w=repmat(w,n,1);
c=b.*w 
cstar=max(c) 
c0=min(c) 
for i=1:n
 sstar(i)=norm(c(i,:)-cstar); 
 s0(i)=norm(c(i,:)-c0); 
end
f=s0./(sstar+s0);
xlswrite('book3.xls',[sstar' s0' f']) 
[sc,ind]=sort(f,'descend')
function r1 = gld_gjjd(x)
s = size(x);
len = s(2);
num = s(1);
for i = 1: num
 x(i,:) = x(i,:)./x(i,1);
end
dx(num,len-1) = 0;
for i = 1 : num
 for j = 1 : len - 1
 dx(i,j) = x(i,j+1) - x(i,j);
 end
end
c = 1;
beta(1,1:len-1) = 0;
w(1,1:len-1) = 0;
for i = 2 : num
 temp = sum(abs(x(i,:) - x(1,:)),2);
 for k = 1 : len - 1
 beta(i,k) = atan((dx(i,k) - dx(1,k))/(1 + dx(i,k)*dx(1,k)));
 if beta(i,k) < 0
 beta(i,k) = pi + beta(i,k);
end
 w(i,k) = 1 - abs(x(i,k) - x(1,k))/temp;
 end
function weights = EntropyWeight(R)
[rows,cols]=size(R); 
k=1/log(rows); 
f=zeros(rows,cols); 
sumBycols=sum(R,1); 
for i=1:rows
 for j=1:cols
 f(i,j)=R(i,j)./sumBycols(1,j);
 end
end
lnfij=zeros(rows,cols); 
for i=1:rows
 for j=1:cols
 if f(i,j)==0
 lnfij(i,j)=0;
 else
 lnfij(i,j)=log(f(i,j));
 end
 end
end
Hj=-k*(sum(f.*lnfij,1)); 
weights=(1-Hj)/(cols-sum(Hj));
end
全部论文及程序请见下方“ 只会建模 QQ名片” 点击QQ名片即可

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/138476.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringBoot的字符画(banner.txt)

好多小伙伴最近问我如何在启动项目的时候&#xff0c;在控制台打印如下的图案logo 其实很简单&#xff0c;Springboot提供了很方便的操作&#xff0c;在resource目录先新建一个banner.txt 然后将我们想要的图案拼接即可&#xff0c;如下图&#xff1a; 配置完成后正常启动项目…

TorchServe 详解:5 步将模型部署到生产环境

内容导读 TorchServe 自 2020 年 4 月推出至今&#xff0c;经历了 2 年多的发展&#xff0c;变得愈发成熟和稳定&#xff0c;本文将对 TorchServe 进行全面介绍。 TorchServe 是 PyTorch 中将模型部署到生产环境的首选解决方案。它是一个性能良好且可扩展的工具&#xff0c;用 …

【Java】多线程详解

目录 一、线程简介 进程&#xff08;Process &#xff09;与 线程&#xff08;Thread&#xff09; 二、线程创建 1、线程Thread 1.1. 步骤 1.2 应用 1.3 案例&#xff1a;下载图片 2、实现Runnable接口 2.1 步骤 2.2 应用 3.小结 3. 实现Callable接口&#xff08;了解…

利用Github账号实现(多个)个人网站

创建仓库 命名一定要是<username>.github.io这种形式username就是自己github账号的用户名。因为我已经有这个仓库&#xff0c;所以这里的报错可以忽略。 往仓库放入静态html文件 命名为index.html&#xff0c;随便放点内容。 在设置里面开启github page 这里可以选…

verilog学习笔记- 2)时序约束文件

目录 为什么要创建时序约束文件&#xff1f; 时序&#xff1a; 创建时序约束文件&#xff1a; 为什么要创建时序约束文件&#xff1f; 对于一些简单的工程时序的要求并不是特别的严格&#xff0c;添不添加时序约束文件影响不大。但是对于一些复杂的工程&#xff0c;涉及到高…

【SpringBoot应用篇】SpringBoot 启动扩展点/常用接口

【SpringBoot应用篇】SpringBoot 启动扩展点/常用接口SpringBoot常用的接口ApplicationContextInitializerBeanDefinitionRegistryPostProcessorBeanFactoryPostProcessorInstantiationAwareBeanPostProcessorSmartInstantiationAwareBeanPostProcessorBeanFactoryAwareApplica…

Dom 重点核心

关于dom操作&#xff0c;主要针对元素的操作。 主要有创建&#xff0c;增&#xff0c;删&#xff0c;改&#xff0c;查&#xff0c;属性操作&#xff0c;事件操作。 一、创建 1.document.write 2.innerHTML 3.createElement 二、增 1.appendChild&#xff08;在后面添加&am…

【iOS】块与大中枢派发

文章目录[TOC](文章目录)前言理解“块”这一概念块的基础知识块的内部结构全局块&#xff0c;栈块&#xff0c;堆块为常用的块类型创建typedef用handler块降低代码分散程度用块引用其所属对象时不要出现保留环多用派发系列&#xff0c;少用同步锁多用GCD&#xff0c;少用perfor…

Linux/ARM下QT MQTT库的编译安装

&#x1f482; 个人主页:风间琉璃&#x1f91f; 版权: 本文由【风间琉璃】原创、在CSDN首发、需要转载请联系博主&#x1f4ac; 如果文章对你有帮助、欢迎关注、点赞、收藏(一键三连)和订阅专栏哦目录 一、 Linux 环境下编译安装 二、 ARM Linux 环境下安装 一、 Linux 环境下…

破解分布式光伏运维难题,光伏+屋面数字化监控融合是关键

2022年5月&#xff0c;在东南地区某城市一幢写字楼上&#xff0c;技术人员们正不辞辛苦爬上数十米高的墙面&#xff0c;对写字楼的屋面和墙面进行勘察。随后&#xff0c;他们准备赶在台风季来临之前完成该写字楼的建筑光伏一体化项目安装与部署。 这是森特士兴集团股份有限公司…

fixed:error:0308010C:digital envelope routines::unsupported

目录1.故障现场2. 问题分析3. 修复方案4. 参考文献1.故障现场 最近由于一些原因&#xff0c;从Mac OSX 迁移到 Windows 平台&#xff0c;在尝试运行基于vue-element-admin 项目时&#xff0c;发生了如下异常&#xff1a; error:0308010C:digital envelope routines::unsuppor…

MySQL的一些指令,函数以及关键字

这个里面我准备记录一些比较有意思的MySQL的指令和函数&#xff0c;当然使用函数的时候我们要注意&#xff0c;会不会因为函数导致不走索引&#xff0c;走全表扫描的情况。 因为对索引字段做函数操作&#xff0c;可能会破坏索引值的有序性&#xff0c;因此优化器就决定放弃走树…

导读:21 世纪中叶的精准肿瘤学奇点?循环肿瘤细胞和单细胞测序?

Tips: 组学时代的循环肿瘤细胞&#xff1a;我们离实现“奇点”还有多远&#xff1f;&#xff08;Br J Cancer&#xff0c;IF&#xff1a;9.075&#xff09;&#xff0c;原文链接: https://pubmed.ncbi.nlm.nih.gov/35273384/ 循环肿瘤细胞的生物学、脆弱性和临床应用&#xff0…

用javascript分类刷leetcode22.字典树(图文视频讲解)

目录 Trie树&#xff0c;即字典树&#xff0c;又称前缀树&#xff0c;是一种树形结构&#xff0c;典型应用是用于统计和排序大量的字符串&#xff08;但不限于字符串&#xff09;&#xff0c;所以经常被搜索引擎用于文本词频统计。它的优先是&#xff0c;最大限度的减少无谓的…

数据挖掘与机器学习作业_06 决策树

决策树 步骤 1.计算不纯度2.选取不纯度最高的特征进行分支3.计算不纯度4.继续划分 from sklearn import tree from sklearn.model_selection import GridSearchCV from sklearn.model_selection import cross_val_score from sklearn.model_selection import train_test_spl…

单点登录 SSO 解决方案选型指南|身份云研究院

单点登录&#xff08;SSO&#xff09;是目前企业降本增效以及提升用户体验的主流选择方案。常规的单点登录指“登录一次&#xff0c;即可访问所有互相信任的应用&#xff0c;用户不再需要记住每一个应用的账号密码”&#xff0c;这有效解决了密码疲劳、登录效率等问题&#xff…

(深度学习快速入门)第三章第二节:通过一个二分类任务介绍完整的深度学习项目

文章目录一&#xff1a;数据集介绍二&#xff1a;一个完整的深度学习项目必备文件三&#xff1a;项目代码&#xff08;1&#xff09;config.py——超参数文件&#xff08;2&#xff09;preprocess——数据预处理文件&#xff08;3&#xff09;dataloader——数据集封装&#xf…

后端人眼中的Vue(一)

一、简介 1.1、Vue简介 ​ Vue是渐进式 JavaScript 框架&#xff0c;啥叫渐进式&#xff1f;渐进式意味着你可以将Vue作为你应用的一部分嵌入其中&#xff0c;或者如果你希望将更多的业务逻辑使用Vue实现&#xff0c;那么Vue的核心库以及其生态系统。比如CoreVue-routerVuexax…

Homekit智能家居DIY之智能灯泡

一、什么是智能灯 传统的灯泡是通过手动打开和关闭开关来工作。有时&#xff0c;它们可以通过声控、触控、红外等方式进行控制&#xff0c;或者带有调光开关&#xff0c;让用户调暗或调亮灯光。 智能灯泡内置有芯片和通信模块&#xff0c;可与手机、家庭智能助手、或其他智能…

RabbitMQ、Kafka、RocketMQ消息中间件对比总结

文章目录前言侧重点架构模型消息通讯其他对比总结参考文档前言 不论Kafka还是RabbitMQ和RocketMQ&#xff0c;作为消息中间件&#xff0c;其作用为应用解耦、异步通讯、流量削峰填谷等。 拿我之前参加的一个电商项目来说&#xff0c;订单消息通过MQ从订单系统到支付系统、库存…