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题 全球变暖与否 原题再现: 加拿大的49.6C创造了地球北纬50以上地区的气温新纪录,一周内数百人死于高温;美国加利福尼亚州死亡谷是54.4C,这是有史以来地球上记录的最高温度;科威特53…...
苹果开发者 Xcode发布TestFlight全流程
打包前注意事项 使用Xcode导出安装包之前,必须先确认账户的所有合约是否全部同意,如果有不同意的,在出包的时候会弹出报错 这是什么意思 这意味着您有一些需要在应用商店连接上验证的协议(protocol)/契约(Contract)。解决方案 连接到应用商店…...
Spring Security—Servlet 应用架构
目录 一、Filter(过滤器)回顾 二、DelegatingFilterProxy 三、FilterChainProxy 四、SecurityFilterChain 五、Security Filter 六、打印出 Security Filter 七、添加自定义 Filter 到 Filter Chain 八、处理 Security 异常 九、保存认证之间的…...
排序优化:如何实现一个通用的、高性能的排序函数?
文章来源于极客时间前google工程师−王争专栏。 几乎所有的编程语言都会提供排序函数,比如java中的Collections.sort()。在平时的开发中,我们都是直接使用,这些排序函数是如何实现的?底层都利用了哪种排序算法呢? 问题…...
车载开发学习——CAN总线
CAN总线又称为汽车总线,全程为“控制器局域网(Controller Area Network)”,即区域网络控制器,它将区域内的单一控制单元以某种形式连接在一起,形成一个系统。在这个系统内,大家以一种大家都认可…...
2023年知名国产数据库厂家汇总
随着信创国产化的崛起,大家纷纷在寻找可替代的国产数据库厂家。这里小编就给大家汇总了一些国内知名数据库厂家,仅供参考哦! 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提供了两种在标准库中创建错误的方法,[errors.New和fmt.Errorf],当与用户交流更复杂的错误信息时,或在调试时与未来的自己交流时,有时这两种机制不足以充分捕获和报告所发生的情况。为了传达更复杂的错误信息并实现更多的…...
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 的独立看门狗(以下简称 IWDG)。 STM32F1内部自带了两个看门狗,一个是独立看门狗 IWDG,另一个是窗口看门狗 WWDG, 本章只介绍独立看门狗 IWDG,窗口看门狗 WWDG 会在后面章节介绍。 本章要实现的功能…...
GEE:计算和打印GEE程序的执行时间
作者:CSDN @ _养乐多_ 本文记录了计算和打印程序的执行时间的Google Earth Engine (GEE)代码,并举例说明。 大家在执行GEE代码的时候,有时候为了对比两个不同的脚本,不知道代码执行花费了多少时间。本文记录了打印代码执行时间的函数,并举了一个应用案例说明。可以知道…...
GDPU 数据结构 天码行空5
一、实验目的 1.掌握队列的顺序存储结构 2.掌握队列先进先出运算原则在解决实际问题中的应用 二、实验内容 仿照教材顺序循环队列的例子,设计一个只使用队头指针和计数器的顺序循环队列抽象数据类型。其中操作包括:初始化、入队…...
SQLAlchemy学习-12.查询之 order_by 按desc 降序排序
前言 sqlalchemy的query默认是按id升序进行排序的,当我们需要按某个字段降序排序,就需要用到 order_by。 order_by 排序 默认情况下 sqlalchemy 的 query 默认是按 id 升序进行排序的 res session.query(Project).all() print(res) # [<Project…...
如何轻松打造数字人克隆系统+直播系统?OEM教你快速部署数字人SaaS系统源码
数字人做为国内目前最热门的人工智能创业赛道,连BAT都在跑步入局,中小企业更是渴望不渴及。但随着我国数字人头部品牌企业温州专帮信息科技有限公司旗下灰豚AI数字人平台的开源。使得中小企业零门槛可以轻松打造灰豚AI数字人一模一样的平台。灰豚数字人A…...
药物滥用第四篇介绍
OXY: 羟考酮(Oxycodone,OXY),分子式为C18H21NO4,是一种半合成的蒂巴因衍生物。羟考酮为半合成的纯阿片受体激动药,其作用机制与吗啡相似,主要通过激动中枢神经系统内的阿片受体而起镇…...
Apache Doris (四十三): Doris数据更新与删除 - Update数据更新
🏡 个人主页:IT贫道_大数据OLAP体系技术栈,Apache Doris,Clickhouse 技术-CSDN博客 🚩 私聊博主:加入大数据技术讨论群聊,获取更多大数据资料。 🔔 博主个人B栈地址:豹哥教你大数据的个人空间-豹哥教你大数据个人主页-哔哩哔哩视频 目录 1. Update数据更新原理...
面试算法29:排序的循环链表
问题 在一个循环链表中节点的值递增排序,请设计一个算法在该循环链表中插入节点,并保证插入节点之后的循环链表仍然是排序的。 分析 首先分析在排序的循环链表中插入节点的规律。当在图4.15(a)的链表中插入值为4的节点时&…...
python中不可变类型和可变类型
不可变类型:修改之后内存存储地址不会发生改变 可变类型:修改之后内存存储地址发生改变 set...
vue3封装Axios库的 API 请求并使用拦截器来处理请求和响应
目录 为什么添加封装该部分? 具体代码: 对代码的解释: 如何使用? 为什么添加封装该部分? 简化发送 HTTP 请求的流程提供统一的错误处理机制支持用户状态管理和鉴权具备良好的扩展性和灵活性提高开发效率并使得代码…...
RK3588开发笔记(二):基于方案商提供sdk搭建引入mpp和sdk的宿主机交叉编译Qt5.12.10环境
若该文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/133915614 红胖子网络科技博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬…...
【kafka】Golang实现分布式Masscan任务调度系统
要求: 输出两个程序,一个命令行程序(命令行参数用flag)和一个服务端程序。 命令行程序支持通过命令行参数配置下发IP或IP段、端口、扫描带宽,然后将消息推送到kafka里面。 服务端程序: 从kafka消费者接收…...
线程同步:确保多线程程序的安全与高效!
全文目录: 开篇语前序前言第一部分:线程同步的概念与问题1.1 线程同步的概念1.2 线程同步的问题1.3 线程同步的解决方案 第二部分:synchronized关键字的使用2.1 使用 synchronized修饰方法2.2 使用 synchronized修饰代码块 第三部分ÿ…...
蓝桥杯3498 01串的熵
问题描述 对于一个长度为 23333333的 01 串, 如果其信息熵为 11625907.5798, 且 0 出现次数比 1 少, 那么这个 01 串中 0 出现了多少次? #include<iostream> #include<cmath> using namespace std;int n 23333333;int main() {//枚举 0 出现的次数//因…...
HarmonyOS运动开发:如何用mpchart绘制运动配速图表
##鸿蒙核心技术##运动开发##Sensor Service Kit(传感器服务)# 前言 在运动类应用中,运动数据的可视化是提升用户体验的重要环节。通过直观的图表展示运动过程中的关键数据,如配速、距离、卡路里消耗等,用户可以更清晰…...
从面试角度回答Android中ContentProvider启动原理
Android中ContentProvider原理的面试角度解析,分为已启动和未启动两种场景: 一、ContentProvider已启动的情况 1. 核心流程 触发条件:当其他组件(如Activity、Service)通过ContentR…...
【Linux】Linux安装并配置RabbitMQ
目录 1. 安装 Erlang 2. 安装 RabbitMQ 2.1.添加 RabbitMQ 仓库 2.2.安装 RabbitMQ 3.配置 3.1.启动和管理服务 4. 访问管理界面 5.安装问题 6.修改密码 7.修改端口 7.1.找到文件 7.2.修改文件 1. 安装 Erlang 由于 RabbitMQ 是用 Erlang 编写的,需要先安…...
Pydantic + Function Calling的结合
1、Pydantic Pydantic 是一个 Python 库,用于数据验证和设置管理,通过 Python 类型注解强制执行数据类型。它广泛用于 API 开发(如 FastAPI)、配置管理和数据解析,核心功能包括: 数据验证:通过…...
QT开发技术【ffmpeg + QAudioOutput】音乐播放器
一、 介绍 使用ffmpeg 4.2.2 在数字化浪潮席卷全球的当下,音视频内容犹如璀璨繁星,点亮了人们的生活与工作。从短视频平台上令人捧腹的搞笑视频,到在线课堂中知识渊博的专家授课,再到影视平台上扣人心弦的高清大片,音…...
React从基础入门到高级实战:React 实战项目 - 项目五:微前端与模块化架构
React 实战项目:微前端与模块化架构 欢迎来到 React 开发教程专栏 的第 30 篇!在前 29 篇文章中,我们从 React 的基础概念逐步深入到高级技巧,涵盖了组件设计、状态管理、路由配置、性能优化和企业级应用等核心内容。这一次&…...
机器学习的数学基础:线性模型
线性模型 线性模型的基本形式为: f ( x ) ω T x b f\left(\boldsymbol{x}\right)\boldsymbol{\omega}^\text{T}\boldsymbol{x}b f(x)ωTxb 回归问题 利用最小二乘法,得到 ω \boldsymbol{\omega} ω和 b b b的参数估计$ \boldsymbol{\hat{\omega}}…...
