2020年第九届数学建模国际赛小美赛C题亚马逊野火解题全过程文档及程序

news2024/12/23 2:04:33

2020年第九届数学建模国际赛小美赛

C题 亚马逊野火

原题再现:

  野火是指发生在乡村或荒野地区的可燃植被中的任何不受控制的火灾。这样的环境过程对人类生活有着重大的影响。因此,对这一现象进行建模,特别是对其空间发生和扩展进行建模,是支持政府和公共机构控制和风险管理野火季节的相关任务。
  火灾数据通常以时空事件的形式提供,即给定研究的地理区域,在特定时间收集一些感兴趣的测量值。在全球范围内,火灾活动主要通过中分辨率成像光谱仪(MODIS)等卫星仪器收集。MODIS在美国国家航空航天局(NASA)运行的Aqua和Terra卫星上运行。请使用这些数据分析亚马逊流域的火灾事件,并确定火灾事件的时空模式。发现的任何模式都将有助于提高森林火灾的认识和预防工作。

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

  2019年亚马孙森林火灾引起了全世界对亚马孙森林火灾危机的关注。为了降低这一事件再次发生的概率,我们将在2019年8月逐步细化亚马逊森林的时空统计分布格局,从宏观火场到具体火势蔓延的时空格局。
  首先,建立火点识别模型。查找识别已发生火灾的数据点。我们将根据通道21/20的温度、通道31的温度、表面温度和数据的置信水平来识别火灾。
  然后将上述数据导入Tableau,得到亚马逊地区火力点的地理分布图。在地图上,我们可以看到亚马逊地区的火灾主要分布在三个危险区域。这三个危险区域显示为三角形、椭圆形和平行四边形。三角危险区位于南美洲北部。椭圆形危险区是巴西北部城市罗莱马。平行四边形危险区连接巴西中部、韦尔瓦和秘鲁。
  在此之后,我们探索了亚马逊的时间模式。在亚马逊河流域内,多年来发生了大量的火灾,这些火灾集中在每年的8月、9月和10月。其日常数据不规则,但存在距离和时间相近的火灾数据点。因此,我们推测,可能会有重复记录火灾由于问题,如像素捕捉精度的卫星。基于这个猜想,
  建立了火灾中心确定模型。采用迭代算法对1KM内的火点进行均匀化处理,数据记录时差小于2天。
  最后,为了研究2019年亚马逊地区火灾蔓延的时空格局,我们建立了火源点确定模型。利用Tableau计算火点之间的距离和时差,找出10KM内最早、最亮的火点作为火源点。以火源点为基准建立笛卡尔坐标系,在10KM范围内找到距离火源点最大的火源点。求解了两点间的扩散速度和扩散方向。我们选取了2019年8月50个火源点的数据,计算得出2019年火源一般向东北或西南方向移动,蔓延速度分别约为0.72km/h和0.51km/h。
  在此基础上,得出了火灾发生前重点防控的时间和地点。我们还得到了火灾发生时可能的蔓延方向,即要聚焦的路径。

模型假设:

  •忽略火灾蔓延的地形特征。
  •同一火灾中涉及的区域可视为平坦。
  •所有出现在10 km范围内的火灾均从火源蔓延。
  •本文中使用的数据均有效。

问题重述:

  问题背景

  森林火灾是人类无法控制的,在林地内自由蔓延和扩大,对森林、森林生态系统和人类造成一定的危害和破坏。
  2019年亚马逊森林火灾频发,INPE报告截至2019年8月29日巴西发生火灾超过80000起,在同一跟踪期间同比增长77%。玻利维亚、巴拉圭和秘鲁报告了随后的火灾,截至2019年8月29日,火灾逐年增加,这三个国家在2019年的火灾总数分别超过19000起、11000起和6700起。据《商业内幕》报道,到2019年,亚马逊生物群落的森林损失预计将超过906000公顷(2.24*106英亩;9060km^2;3500平方英里)。除了对全球气候的影响外,火灾排放的二氧化碳和一氧化碳过多还造成环境问题,对亚马逊的生物多样性造成潜在影响,并威胁到生活在森林中的土著部落。

在这里插入图片描述
  除环境损害外,导致野火的刀耕火种行动还威胁到居住在雨林附近或雨林内的巴西约306 000土著人民。为避免亚马逊河流域特大森林火灾事故的重复发生,分析了亚马逊河流域火灾的时空分布规律,以期在火灾控制方面取得突破。

  我们的工作
  为了研究亚马逊森林火灾的时空格局,需要对亚马逊森林火灾数据进行识别和处理。我们需要建立模型来识别真实的火灾现场,然后对火灾现场的时空特征进行建模分析。
  为解决此问题,我们的团队将执行以下操作:
  •建立火点识别模型。根据MODIS提供的279万个数据点的置信水平和通道波长反映的温度数据,识别潜在的真实火灾。
  •分析亚马逊流域火灾的空间特征。确定亚马逊河流域的火灾危险区,在那里人们或政府当局需要保持警惕。
  •分析亚马逊流域火灾的时间特征。我们将根据年份、季节和月份来查看其时间模式。
  •根据观测点的时间和空间信息,调查未来我们应如何应对火灾。根据各观测点的时间和温度特征,确定各小范围(10km)火灾的起止点,表征火灾变化方向和速度的概率分布。

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

在这里插入图片描述

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

部分程序代码:(代码和文档not free)

%Read Data
clear;
% Initializing parameters
coordinate_file = 'lat_lng.xlsx';
[num,txt] = xlsread(coordinate_file);
Lat=num(1:1451,2);
Lng=num(1:1451,3);
Latg=[Lat.*111,Lng.*111];
D = pdist(Latg);
DD=D;
zz= squareform(D);
for i=1:1051975
if D(i) > 1
D(i)=0;
end
end
Z = squareform(D);
[x,y]=find(Z~=0);
for i=1:1222
for j=1:1222
if (x(i)==y(j)) && (x(j)==y(i))&&(i<j)
x(j)=x(i),y(j)=y(i);
end
end
end
for i=1:1222
for j=1:1222
if x(i)==y(j)
y(j)=0;
end
end
end
z=[x,y];
for i=1:1222
for j=i+1:1222
if x(i)==x(j)
x(j)=0;
end
end
end
x2=find(x~=0);
x22=x(x2);
x22=x22';
xml=1:1:1451;
for i=1:365
for j=1:1451
if(x22(i)~=j)
xml(j)=xml(j);
else
xml(j)=0;
end
end
end
xmll=find(xml~=0)
xmll=xmll';
Lx=num(1:1086,7)';
Ly=num(1:1086,8)';
Lz=num(1:1086,9)';
xx= -16:1:-4; %linspace(-16,10,1451);
yy= -65:1:-59; %linspace(-78,-42,1451);
[XX,YY]=meshgrid(xx,yy);
zm=griddata(Lx,Ly,Lz,XX,YY,'v4');
surf(xx,yy,zm)
xlabel(' Latitude ');
ylabel(' Longitude ');
zlabel(' temperature(K)');
2、angle_circulation
coordinate_file = 'a.xlsx';
[num,txt] = xlsread(coordinate_file);
x1=num(11:50,2)'./57.3;
y1=num(11:50,3)'./57.3;
x2=num(11:50,4)'./57.3;
y2=num(11:50,5)'./57.3;
for i=1:40
b(i)=atan((x2(i)-x1(i))./(y2(i)-y1(i)));
end
b1=57.3.*b';
3、Sensitive Analysis
coordinate_file = 'lat_lng.xlsx';
[num,txt] = xlsread(coordinate_file);
Lat=num(1:1451,2);
Lng=num(1:1451,3);
Latg=[Lat.*111,Lng.*111];
D = pdist(Latg);
DD=D;
zz= squareform(D);
for i=1:1051975
if D(i) > 1
D(i)=0;
end
end
Z = squareform(D);
[x,y]=find(Z~=0);
for i=1:1222
for j=1:1222
if (x(i)==y(j)) && (x(j)==y(i))&&(i<j)
x(j)=x(i),y(j)=y(i);
end
end
end
for i=1:1222
for j=1:1222
if x(i)==y(j)
y(j)=0;
end
end
end
z=[x,y];
for i=1:1222
for j=i+1:1222
if x(i)==x(j)
x(j)=0;
end
end
end
x2=find(x~=0);
x22=x(x2);
x22=x22';
xml=1:1:1451;
for i=1:365
for j=1:1451
if(x22(i)~=j)
xml(j)=xml(j);
else
xml(j)=0;
end
end
end
xmll=find(xml~=0)
xmll=xmll';
x=[0.75,0.8,0.85,0.9,0.95,1,1.05,1.1,1.15,1.2,1.25];
y=[1459,1259,1197,1135,1101,1086,991,902,856,804,659];
plot(x,y)
axis([0.75 1.25 0 2000]);
xlabel('Assimilation Distance');
ylabel('Residual fire points');
全部论文请见下方“ 只会建模 QQ名片” 点击QQ名片即可

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

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

相关文章

[算法基础 ~排序] Golang 实现

文章目录 排序什么是排序排序的分类1. 冒泡1.1 冒泡排序1.2. 快速排序 2. 选择2.1 简单选择排序2.2 堆排序 3. 插入3.1 直接插入3.2 折半插入3.3 希尔排序 4. 归并排序代码实现 5. 基数排序 排序图片就不贴了吧 排序 什么是排序 以下部分动图来自CSDN ::: tip 稳定性的概念 …

网络测试工具:tcping-测试端口连接

网络测试工具&#xff1a;tcping-测试端口连接 平常使用的ping&#xff0c;是通过icmp协议去测试网络连通性的&#xff0c;tcping是通过tcp三次握手测试端口的连通性。总的来说&#xff0c;ping测试的是L3的连通性&#xff0c;tcping测试的是L4的连通性。 tcping工具下载 htt…

Go语言学习:第1天

一、为什么开始学go语言 我自己是做测试的&#xff0c;所测试项目使用的是go语言。开始学习go语言的原因有两个&#xff1a;一方面&#xff0c;为了更好的做好工作&#xff1b; 另一方面&#xff0c;为了提高自己的核心竞争力。 二、第1天学习到的内容 2.1 Go是怎么解决包依…

打包less

接HTML和css之后对less进行打包 1.在之前的文件夹里的src文件夹创建一个less文件 2.打开webpack——>中文文档——>Loader——>less—loader 3.复制下图代码到终端 4.复制下图内容到webpack.config.js脚本 5.在src里的js文件年引入less文件 6.在终端运行 npm run te…

[原创]如何正确的部署R语言开发环境(含动图演示).

[简介] 常用网名: 猪头三 出生日期: 1981.XX.XX QQ联系: 643439947 个人网站: 80x86汇编小站 https://www.x86asm.org 编程生涯: 2001年~至今[共22年] 职业生涯: 20年 开发语言: C/C、80x86ASM、PHP、Perl、Objective-C、Object Pascal、C#、Python 开发工具: Visual Studio、D…

arm-linux设备fsck命令移植

arm-linux设备fsck命令移植 文章目录 **arm-linux设备fsck命令移植**1、下载e2fsprogs-源码2、解压3、进入源码目录4、配置编译环境&#xff1a;使用以下命令配置交叉编译环境5、测试 1、下载e2fsprogs-源码 首先要确定自己的文件系统格式&#xff0c;IG2000的文件系统是ext4&…

基于OpenCV+CNN+IOT+微信小程序智能果实采摘指导系统——深度学习算法应用(含python、JS工程源码)+数据集+模型(四)

目录 前言总体设计系统整体结构图系统流程图 运行环境Python环境TensorFlow 环境Jupyter Notebook环境Pycharm 环境微信开发者工具OneNET云平台 模块实现1. 数据预处理2. 创建模型并编译3. 模型训练及保存1&#xff09;模型训练2&#xff09;模型保存 4. 上传结果1&#xff09;…

【AI】ChatGLM3-6B上手体验

之前写过ChatGLM2-6B大语言模型的部署安装文档&#xff0c;现在ChatGLM模型已经更新迭代到第三代了&#xff0c;从官方公布的数据来看&#xff0c;模型的能力是得到了进一步的增强。 这次写文章主要是来记录一下使用过程&#xff0c;方便回头查看。 ChatGLM3-6B官方的视频教程…

VSCode中如何查看EDI报文?

VSCode是开发人员常用的一款软件&#xff0c;为了降低EDI报文的阅读门槛&#xff0c;知行的开发人员设计了EDI插件&#xff0c;可以在VSCode中下载使用。 如何打开一个EDI报文——VSCode EDI插件介绍 EDI插件下载流程 进入VSCode&#xff0c;打开Extensions&#xff0c;在搜索…

STM32-01-认识单片机

文章目录 一、单片机简介二、Cortex-M系列介绍三、初识STM32四、STM32原理图设计五、搭建开发环境六、STM32初体验七、MDK5使用技巧 一、单片机简介 单片机是什么&#xff1f; 单片机&#xff1a;Single-Chip Microcomputer&#xff0c;单片微型计算机&#xff0c;是一种集成电…

Keepalived+Nginx实现高可用(上)

一、背景与简介 为了服务的高可用性&#xff0c;避免单点故障问题&#xff0c;通常我们使用"冗余设计思想"进行架构设计。冗余设计思想&#xff0c;本质就是将同一个应用或者服务放置在多台不同的服务器上[鸡蛋不放在同一个篮子里]&#xff0c;这样减少整体服务宕机的…

2023 年山东省职业院校技能大赛(高等职业教育) “信息安全管理与评估”样题

2023 年山东省职业院校技能大赛&#xff08;高等职业教育&#xff09; “信息安全管理与评估”样题 目录 任务 1 网络平台搭建&#xff08;50 分&#xff09; 任务 2 网络安全设备配置与防护&#xff08;250 分&#xff09; 模块二 网络安全事件响应、数字取证调查、应用程序安…

深入探索 Spring Boot:简化开发,加速部署的全方位利器

目录 导言 1. 自动配置&#xff08;Auto-Configuration&#xff09; 2. 起步依赖&#xff08;Starter Dependencies&#xff09; 3. 嵌入式 Web 服务器 4. Actuator 5. 外部化配置 6. 简化的安全性配置 7. Spring Boot CLI 8. Spring Boot DevTools 导言 在当今软件开…

散点图直方图折线图的替代

散点图直方图折线图的替代 seaborn官网 数据科学数据可视化&#xff0c;散点图 直方图 折线图的新方法 1.hexbinplot https://seaborn.pydata.org/examples/hexbin marginals.html相当于散点图做了聚合/分箱&#xff0c;使数据的分布展示更明显。Library: seaborn 2.瀑布图展示…

Pytorch-LSTM轴承故障一维信号分类(一)

目录 前言 1 数据集制作与加载 1.1 导入数据 第一步&#xff0c;导入十分类数据 第二步&#xff0c;读取MAT文件驱动端数据 第三步&#xff0c;制作数据集 第四步&#xff0c;制作训练集和标签 1.2 数据加载&#xff0c;训练数据、测试数据分组&#xff0c;数据分batch…

Qt Widgets 绘图行为逐步分析拆解

Qt 是目前C语言首选的框架库。之所以称为框架库而不单单是GUI库&#xff0c;是因为Qt提供了远远超过GUI的功能封装&#xff0c;即使不使用GUI的后台服务&#xff0c;也可以用Qt大大提高跨平台的能力。 仅就界面来说&#xff0c;Qt 保持各个平台绘图等效果的统一&#xff0c;并…

【EMNLP 2023】面向垂直领域的知识预训练语言模型

近日&#xff0c;阿里云人工智能平台PAI与华东师范大学数据科学与工程学院合作在自然语言处理顶级会议EMNLP2023上发表基于双曲空间和对比学习的垂直领域预训练语言模型。通过比较垂直领域和开放领域知识图谱数据结构的不同特性&#xff0c;发现在垂直领域的图谱结构具有全局稀…

Flink之迟到的数据

迟到数据的处理 推迟水位线推进: WatermarkStrategy.<Event>forBoundedOutOfOrderness(Duration.ofSeconds(2))设置窗口延迟关闭&#xff1a;.allowedLateness(Time.seconds(3))使用侧流接收迟到的数据: .sideOutputLateData(lateData) public class Flink12_LateDataC…

【华为数据之道学习笔记】3-9元数据治理面临的挑战

华为在进行元数据治理以前&#xff0c;遇到的元数据问题主要表现为数据找不到、读不懂、不可信&#xff0c;数据分析师们往往会陷入数据沼泽中&#xff0c;例如以下常见的场景。 某子公司需要从发货数据里对设备保修和维保进行区分&#xff0c;用来不对过保设备进行服务场景分析…

uniapp - 简单版本自定义tab栏切换

tab切换是APP开发最常见的功能之一&#xff0c;uniapp中提供了多种形式的tab组件供我们使用。对于简单的页面而言&#xff0c;使用tabbar组件非常方便快捷&#xff0c;可以快速实现底部导航栏的效果。对于比较复杂的页面&#xff0c;我们可以使用tab组件自由定义样式和内容 目录…