当前位置: 首页 > news >正文

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

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页的限制(摘要,表,目录,文章)。但是,参考文献列表和附录的页面并不受限制。

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

  全球变暖引发的一系列危害,影响到人类生存的方方面面。本文通过数学模型分析,采用多种预测与分析的算法研究全球温度变化、影响全球温度变化的原因,并且基于研究结果对于全球变暖的问题提出科学合理的建议。
  针对问题一,首先,我们将题目所提供的数据进行数据预处理,基于题目提供的2012年到2013年的数据出的绘制拟合曲线图与统计分析,得到气温变化规律,再通过Python从网站上采集了从2012年至今的每日全球平均气温数据,分析出2022年3月全球气温上升导致比过去10年观察到的增幅更大是不正确的。其次,综合第一小问绘制的拟合曲线图,我们建立多项式拟合模型以及根据实际背景在模型中加入适当熵权参数λ修正后的利用指数平滑法的时间序列模型,描述过去并且预测未来的全球温度水平,并且预测出2050年与2100年的平均气温分别为19.6℃与20℃。最后,对建立的两个模型进行分析,得到时间序列模型的准确性更高。
  针对问题二,首先,我们选择两个城市为代表,将数据可视化,采用控制变量法,得到同一地点一年中不同时间与温度的关系、同一时间不同地点与温度的关系,再选择一个城市为代表,得到同一地点不同年份与温度的关系。其次,将题目提供的位置数据处理成单一变量,将位置、时间、平均温度、平均温度的置信度进行斯皮尔曼相关性分析,得到温度、时间、位置之间的关系。接着,通过Python在网络上搜集火山爆发、森林火灾、COVID-19、极端气候、冰川融化、海平面上升等自然灾害对温度影响的数据,对数据进行基于熵权法的多元因子分析,得到自然灾害对全球气温的影响,并且获得自然灾害对温度影响权重占比。最后,我们通过查阅相关资料,分析出我们认为的影响全球气变化的主要因素,再通过结合第三小问中分析出的主要影响因素,提出抑制或减缓全球变暖的措施。
  针对问题三,我们解释了我们的发现,得到了气温变化与位置、时间以及经济的关系和规律,并且提出了对于气温影响人口和环境保护的建议。
  综合来看,本文较好地分析了全球气温水平,对未来全球温度增长水平进行预测,并且为抑制或减缓全球气候变暖提供一份强有力的理论依据。

模型假设:

  为了便于模型建立,简化运算,本文对模型做出如下基本假设:
  1. 假设题目所给的数据大部分真实可靠;
  2. 假设我们爬取的数据里已涵盖战争,疫情等因素对于全球气温的影响;
  3. 假设在考虑预测全球变暖未来气温时环境保护思想已深入人心;
  4. 假设未来科技发展均符合低碳环保理念;
  5. 假设未来疫情消失且全球各个国家和平共处;

问题分析:

  问题一的分析
  问题一可以分为四个小问,第一小问需要我们通过数据分析出2022年3月全球气温上升导致比过去10年观察到的增幅更大是否正确。对于第一小问,我们先将题目所提供的数据进行数据预处理,转换日期数据格式,基于题目提供的各国的2012年到2013年的数据出的绘制拟合曲线图与统计分析,得到气温变化规律,再通过Python从伯克利地球气温统计网站上采集了从2012年至今的每日全球平均气温数据,基于这些数据可以分析出,2022年3月全球气温上升导致比过去10年观察到的增幅更大是否正确。第二小问需要我们建立两个模型描述过去并且预测未来的全球温度水平。综合第一小问绘制的拟合曲线图,我们通过多项式拟合和函数逼近的方法,得到拟合多项式曲线函数,从而描述过去并且预测未来的全球温度水平;除此之外,我们建立利用指数平滑法的时间序列模型,并且根据实际背景在模型中加入适当熵权参数λ修正该模型,从而描述过去并且预测未来的全球温度水平。对于第三小问,我们可以基于第二小问中得到的模型预测2050年和2100年的全球平均温度,并观测到平均温度在什么时候达到20℃。第四小问需要我们判断第二小问中建立的哪一个模型更为准确,我们可以通过考虑多方面因素,如社会因素等判断哪一个模型更为准确。

  问题二的分析
  问题二可以分为四个小问,第一小问需要我们根据题目提供数据已经自己收集的数据建立一个数学模型研究全球温度、时间、位置之间的关系。对于第一小问,首先,选择两个代表国家为例,将数据可视化,采用控制变量法进行初步分析,得到同一地点一年中不同时间与温度的关系、同一时间不同地点与温度的关系。其次,控制位置不变,选择一个城市为代表,得到同一地点不同年份与温度的关系[5]。最后,将题目提供的位置数据处理成单一变量,将位置、时间、平均温度、平均温度的置信度进行斯皮尔曼相关性分析,得到温度、时间、位置之间的关系。对于第二小问,先通过Python在网络上搜集火山爆发、森林火灾、COVID-19、极端气候、冰川融化、海平面上升等自然灾害对温度影响的数据,对数据进行基于熵权法的多元因子分析,得到自然灾害对全球气温的影响,并且获得自然灾害对温度影响权重占比。对于第三小问,我们通过查阅相关资料,分析出我们认为的影响全球气变化的主要因素。对于第四小问,我们通过结合第三小问中分析出的主要影响因素,并结合相关资料,提出抑制或减缓全球变暖的措施。

  问题三的分析
  问题三需要撰写一篇非技术性文章,解释团队的发现和对未来的建议。我们基于问题一与问题二得到的结果,得到了气温变化与位置、时间以及经济的关系和规律,并加以解释,最后提出了对于气温影响人口和环境保护的建议。

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

在这里插入图片描述

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

程序代码:

部分python程序如下:
import pandas as pd
import datetime 
df = pd.read_csv("2022_APMCM_C_Data.csv",encoding='gb2312')
df['dt'].apply(lambda x: type(x))
df['dt']=pd.to_datetime(df['dt'])
df['dt'] = df['dt'].apply(lambda x: x.strftime('%Y%m%d'))
df10years = df [(df['dt'] <= '20220228') & (df['dt'] >= '20120201')]
df10years = df10years.sort_values(by='dt')
df10yearsChina = df10years[df10years['Country']=='China']
df10yearsNanjing = df10years[df10years['City']=='Nanjing']
df10yearsRussia = df10years[df10years['Country']=='Russia']
from pyecharts import Bar
import pandas as pd
bar = Bar("Change of Russia and AverageTemperature in the past 10 years")
datax = df10yearsRussia['dt']
datay = df10yearsRussia['AverageTemperature']
bar.add("", datax, datay,is_random=True)
bar.render("近10年来俄罗斯温度直方图.html")
import pandas as pd
import datetime 
df = pd.read_csv("2022_APMCM_C_Data.csv",encoding='gb2312')
df['dt'].apply(lambda x: type(x))
df['dt']=pd.to_datetime(df['dt'])
df['dt'] = df['dt'].apply(lambda x: x.strftime('%Y%m%d'))
df10years = df [(df['dt'] <= '20220228') & (df['dt'] >= '20120201')]
df10years = df10years.sort_values(by='dt')
df10yearsChina = df10years[df10years['Country']=='China']
df10yearsNanjing = df10years[df10years['City']=='Nanjing']
df10yearsRussia = df10years[df10years['Country']=='Russia']
from pyecharts import Bar
import pandas as pd
bar = Bar("Change of Russia and AverageTemperature in the past 10 years")
datax = df10yearsRussia['dt']
datay = df10yearsRussia['AverageTemperature']
bar.add("", datax, datay,is_random=True)
bar.render("近10年来俄罗斯温度直方图.html")
全部论文及程序请见下方“ 只会建模 QQ名片” 点击QQ名片即可

相关文章:

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

2022年亚太杯APMCM数学建模大赛 C题 全球变暖与否 原题再现&#xff1a; 加拿大的49.6C创造了地球北纬50以上地区的气温新纪录&#xff0c;一周内数百人死于高温&#xff1b;美国加利福尼亚州死亡谷是54.4C&#xff0c;这是有史以来地球上记录的最高温度&#xff1b;科威特53…...

苹果开发者 Xcode发布TestFlight全流程

打包前注意事项 使用Xcode导出安装包之前&#xff0c;必须先确认账户的所有合约是否全部同意&#xff0c;如果有不同意的&#xff0c;在出包的时候会弹出报错 这是什么意思 这意味着您有一些需要在应用商店连接上验证的协议(protocol)/契约(Contract)。解决方案 连接到应用商店…...

Spring Security—Servlet 应用架构

目录 一、Filter&#xff08;过滤器&#xff09;回顾 二、DelegatingFilterProxy 三、FilterChainProxy 四、SecurityFilterChain 五、Security Filter 六、打印出 Security Filter 七、添加自定义 Filter 到 Filter Chain 八、处理 Security 异常 九、保存认证之间的…...

排序优化:如何实现一个通用的、高性能的排序函数?

文章来源于极客时间前google工程师−王争专栏。 几乎所有的编程语言都会提供排序函数&#xff0c;比如java中的Collections.sort()。在平时的开发中&#xff0c;我们都是直接使用&#xff0c;这些排序函数是如何实现的&#xff1f;底层都利用了哪种排序算法呢&#xff1f; 问题…...

车载开发学习——CAN总线

CAN总线又称为汽车总线&#xff0c;全程为“控制器局域网&#xff08;Controller Area Network&#xff09;”&#xff0c;即区域网络控制器&#xff0c;它将区域内的单一控制单元以某种形式连接在一起&#xff0c;形成一个系统。在这个系统内&#xff0c;大家以一种大家都认可…...

2023年知名国产数据库厂家汇总

随着信创国产化的崛起&#xff0c;大家纷纷在寻找可替代的国产数据库厂家。这里小编就给大家汇总了一些国内知名数据库厂家&#xff0c;仅供参考哦&#xff01; 2023年知名国产数据库厂家汇总 1、人大金仓 2、瀚高 3、高斯 4、阿里云 5、华为云 6、浪潮 7、达梦 8、南大…...

【ARM Coresight SoC-400/SoC-600 专栏导读】

文章目录 1. ARM Coresight SoC-400/SoC-600 专栏导读目录1.1 Coresight 专题1.1.1 Performance Profiling1.1.2 ARM Coresight DS-5 系列 1. ARM Coresight SoC-400/SoC-600 专栏导读目录 本专栏全面介绍 ARM Coresight 系统 及SoC-400, SoC-600 中的各个组件。 1.1 Coresigh…...

在Go中创建自定义错误

引言 Go提供了两种在标准库中创建错误的方法&#xff0c;[errors.New和fmt.Errorf]&#xff0c;当与用户交流更复杂的错误信息时&#xff0c;或在调试时与未来的自己交流时&#xff0c;有时这两种机制不足以充分捕获和报告所发生的情况。为了传达更复杂的错误信息并实现更多的…...

Vue.js2+Cesium1.103.0 十三、通过经纬度查询 GeoServer 发布的 wms 服务下的 feature 对象的相关信息

Vue.js2Cesium1.103.0 十三、通过经纬度查询 GeoServer 发布的 wms 服务下的 feature 对象的相关信息 Demo <template><divid"cesium-container"style"width: 100%; height: 100%;"><div style"position: absolute;z-index: 999;bott…...

使用STM32怎么喂狗 (IWDG)

STM32F1 的独立看门狗&#xff08;以下简称 IWDG&#xff09;。 STM32F1内部自带了两个看门狗&#xff0c;一个是独立看门狗 IWDG&#xff0c;另一个是窗口看门狗 WWDG&#xff0c; 本章只介绍独立看门狗 IWDG&#xff0c;窗口看门狗 WWDG 会在后面章节介绍。 本章要实现的功能…...

GEE:计算和打印GEE程序的执行时间

作者:CSDN @ _养乐多_ 本文记录了计算和打印程序的执行时间的Google Earth Engine (GEE)代码,并举例说明。 大家在执行GEE代码的时候,有时候为了对比两个不同的脚本,不知道代码执行花费了多少时间。本文记录了打印代码执行时间的函数,并举了一个应用案例说明。可以知道…...

GDPU 数据结构 天码行空5

一、实验目的 1&#xff0e;掌握队列的顺序存储结构 2&#xff0e;掌握队列先进先出运算原则在解决实际问题中的应用 二、实验内容 仿照教材顺序循环队列的例子&#xff0c;设计一个只使用队头指针和计数器的顺序循环队列抽象数据类型。其中操作包括&#xff1a;初始化、入队…...

SQLAlchemy学习-12.查询之 order_by 按desc 降序排序

前言 sqlalchemy的query默认是按id升序进行排序的&#xff0c;当我们需要按某个字段降序排序&#xff0c;就需要用到 order_by。 order_by 排序 默认情况下 sqlalchemy 的 query 默认是按 id 升序进行排序的 res session.query(Project).all() print(res) # [<Project…...

如何轻松打造数字人克隆系统+直播系统?OEM教你快速部署数字人SaaS系统源码

数字人做为国内目前最热门的人工智能创业赛道&#xff0c;连BAT都在跑步入局&#xff0c;中小企业更是渴望不渴及。但随着我国数字人头部品牌企业温州专帮信息科技有限公司旗下灰豚AI数字人平台的开源。使得中小企业零门槛可以轻松打造灰豚AI数字人一模一样的平台。灰豚数字人A…...

药物滥用第四篇介绍

OXY&#xff1a; 羟考酮&#xff08;Oxycodone&#xff0c;OXY&#xff09;&#xff0c;分子式为C18H21NO4&#xff0c;是一种半合成的蒂巴因衍生物。羟考酮为半合成的纯阿片受体激动药&#xff0c;其作用机制与吗啡相似&#xff0c;主要通过激动中枢神经系统内的阿片受体而起镇…...

Apache Doris (四十三): Doris数据更新与删除 - Update数据更新

🏡 个人主页:IT贫道_大数据OLAP体系技术栈,Apache Doris,Clickhouse 技术-CSDN博客 🚩 私聊博主:加入大数据技术讨论群聊,获取更多大数据资料。 🔔 博主个人B栈地址:豹哥教你大数据的个人空间-豹哥教你大数据个人主页-哔哩哔哩视频 目录 1. Update数据更新原理...

面试算法29:排序的循环链表

问题 在一个循环链表中节点的值递增排序&#xff0c;请设计一个算法在该循环链表中插入节点&#xff0c;并保证插入节点之后的循环链表仍然是排序的。 分析 首先分析在排序的循环链表中插入节点的规律。当在图4.15&#xff08;a&#xff09;的链表中插入值为4的节点时&…...

python中不可变类型和可变类型

不可变类型&#xff1a;修改之后内存存储地址不会发生改变 可变类型&#xff1a;修改之后内存存储地址发生改变 set...

vue3封装Axios库的 API 请求并使用拦截器来处理请求和响应

目录 为什么添加封装该部分&#xff1f; 具体代码&#xff1a; 对代码的解释&#xff1a; 如何使用&#xff1f; 为什么添加封装该部分&#xff1f; 简化发送 HTTP 请求的流程提供统一的错误处理机制支持用户状态管理和鉴权具备良好的扩展性和灵活性提高开发效率并使得代码…...

RK3588开发笔记(二):基于方案商提供sdk搭建引入mpp和sdk的宿主机交叉编译Qt5.12.10环境

若该文为原创文章&#xff0c;转载请注明原文出处 本文章博客地址&#xff1a;https://hpzwl.blog.csdn.net/article/details/133915614 红胖子网络科技博文大全&#xff1a;开发技术集合&#xff08;包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬…...

谷歌浏览器插件

项目中有时候会用到插件 sync-cookie-extension1.0.0&#xff1a;开发环境同步测试 cookie 至 localhost&#xff0c;便于本地请求服务携带 cookie 参考地址&#xff1a;https://juejin.cn/post/7139354571712757767 里面有源码下载下来&#xff0c;加在到扩展即可使用FeHelp…...

云启出海,智联未来|阿里云网络「企业出海」系列客户沙龙上海站圆满落地

借阿里云中企出海大会的东风&#xff0c;以**「云启出海&#xff0c;智联未来&#xff5c;打造安全可靠的出海云网络引擎」为主题的阿里云企业出海客户沙龙云网络&安全专场于5.28日下午在上海顺利举办&#xff0c;现场吸引了来自携程、小红书、米哈游、哔哩哔哩、波克城市、…...

Day131 | 灵神 | 回溯算法 | 子集型 子集

Day131 | 灵神 | 回溯算法 | 子集型 子集 78.子集 78. 子集 - 力扣&#xff08;LeetCode&#xff09; 思路&#xff1a; 笔者写过很多次这道题了&#xff0c;不想写题解了&#xff0c;大家看灵神讲解吧 回溯算法套路①子集型回溯【基础算法精讲 14】_哔哩哔哩_bilibili 完…...

STM32+rt-thread判断是否联网

一、根据NETDEV_FLAG_INTERNET_UP位判断 static bool is_conncected(void) {struct netdev *dev RT_NULL;dev netdev_get_first_by_flags(NETDEV_FLAG_INTERNET_UP);if (dev RT_NULL){printf("wait netdev internet up...");return false;}else{printf("loc…...

STM32F4基本定时器使用和原理详解

STM32F4基本定时器使用和原理详解 前言如何确定定时器挂载在哪条时钟线上配置及使用方法参数配置PrescalerCounter ModeCounter Periodauto-reload preloadTrigger Event Selection 中断配置生成的代码及使用方法初始化代码基本定时器触发DCA或者ADC的代码讲解中断代码定时启动…...

Golang dig框架与GraphQL的完美结合

将 Go 的 Dig 依赖注入框架与 GraphQL 结合使用&#xff0c;可以显著提升应用程序的可维护性、可测试性以及灵活性。 Dig 是一个强大的依赖注入容器&#xff0c;能够帮助开发者更好地管理复杂的依赖关系&#xff0c;而 GraphQL 则是一种用于 API 的查询语言&#xff0c;能够提…...

质量体系的重要

质量体系是为确保产品、服务或过程质量满足规定要求&#xff0c;由相互关联的要素构成的有机整体。其核心内容可归纳为以下五个方面&#xff1a; &#x1f3db;️ 一、组织架构与职责 质量体系明确组织内各部门、岗位的职责与权限&#xff0c;形成层级清晰的管理网络&#xf…...

Java 加密常用的各种算法及其选择

在数字化时代&#xff0c;数据安全至关重要&#xff0c;Java 作为广泛应用的编程语言&#xff0c;提供了丰富的加密算法来保障数据的保密性、完整性和真实性。了解这些常用加密算法及其适用场景&#xff0c;有助于开发者在不同的业务需求中做出正确的选择。​ 一、对称加密算法…...

高防服务器能够抵御哪些网络攻击呢?

高防服务器作为一种有着高度防御能力的服务器&#xff0c;可以帮助网站应对分布式拒绝服务攻击&#xff0c;有效识别和清理一些恶意的网络流量&#xff0c;为用户提供安全且稳定的网络环境&#xff0c;那么&#xff0c;高防服务器一般都可以抵御哪些网络攻击呢&#xff1f;下面…...

在web-view 加载的本地及远程HTML中调用uniapp的API及网页和vue页面是如何通讯的?

uni-app 中 Web-view 与 Vue 页面的通讯机制详解 一、Web-view 简介 Web-view 是 uni-app 提供的一个重要组件&#xff0c;用于在原生应用中加载 HTML 页面&#xff1a; 支持加载本地 HTML 文件支持加载远程 HTML 页面实现 Web 与原生的双向通讯可用于嵌入第三方网页或 H5 应…...