2011年认证杯SPSSPRO杯数学建模B题(第一阶段)生物多样性的评估全过程文档及程序

本文主要是介绍2011年认证杯SPSSPRO杯数学建模B题(第一阶段)生物多样性的评估全过程文档及程序,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

2011年认证杯SPSSPRO杯数学建模

B题 生物多样性的评估

原题再现:

  2010 年是联合国大会确定的国际生物多样性年。保护地球上的生物多样性已经越来越被人类社会所关注,相关的大规模科研和考察计划也层出不穷。为了更好地建立国际交流与专家间的合作,联合国还建立了生物多样性和生态系统服务政府间科学政策平台(IPBES)。但迄今为止,几乎所有的考察计划都面临着一个基本的困难:如何评价被考察区域的生物多样性。传统的方法是清点物种数量,但现在有许多科学家认为这种方法具有很大的局限性。譬如有人提出应当考虑物种的相似程度。有人则提出有一些物种的基因多样性程度远远超过另一些物种,所以应当考虑基因的多样性等。但现在还缺少一种能全面考虑不同因素的对生物多样性进行测定的方法。
  第一阶段问题:
  问题: 请你建立合理的数学模型,设计一个全面而有效的评价生物多样性的指标,以利于今后考察和科研工作的开展。

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

  本文建立了人工神经网络和模糊综合评价两个指标模型。生物多样性包括 3 个主要因素及 13 个二级因素,量化这些因素来确定最终的生物多样性评价指标。
  合理评价指标的确定关键在于各因素权重的确定,结合人工神经网络的自学习和自适应能力,我们首先建立了基于人工神经网络的评价指标,通过 BP 神经网络对样本进行训练,不断调整评价因素对评价指标的权重,以使各因素对目标的权重达到最优,进而得到理想的评价标准。
  生物多样性评价中各因素是抽象、定性的,通过对某一地区的考察,无法给出某个因素具体的量化数据情况,只能模糊评价该因素的情况是恶劣还是良好。鉴于生物多样性评价模型的层次性,提出模糊综合评价指标。模糊综合评价的模型中,由于评价因素的抽象性和难以量化性,我们利用层次分析法得到各因素对目标的权重,将评测人员对各因素感性的认识转化为具体的权重数值,同时减少由于评价人员主观因素对结果造成的影响,为模糊综合评判指标的确定提供了权值基础。该模型还将对各因素的认识划分为 5 个等级 ,运用偏大柯西分布隶属函数对各等级进行量化,得到其评语的量化值。根据具体情况,对各项二级因素打分,结合由偏大柯西分布的隶属函数确定的单项评语的量化值确定模糊评判集,再根据模糊评判理论,由各因素权值和模糊评判集得到生物多样性的评估指数。
  在少量数据基础上,基于专家打分趋向正态分布的事实,我们模拟了专家考察团的评判,检验了模糊综合评价指标的全面性和有效性。文章最后对两种模型进行了比较,并对实际生物多样性评价给出两点建议,以利于今后考察和科研工作的开展。

问题分析:

  传统的生物多样性评价方法只是清点物种数量。但是,生物多样性包括遗传多样性、物种多样性和生态系统多样性三个层次和水平1。遗传多样性是指蕴藏在生物体基因中的遗传信息的综合,因此对其测度是比较复杂的,但总体上对于遗传基因的特征表现主要考虑种型情况、特有情况和古老残遗情况三个方面。
  物种多样性是地球上现有生物有机体种的复杂多样性,包括群落种的物种数、总个体数、物种的多度和均匀度等。统计物种数是被最为广泛采用、也是最为简单的生物评价方法。但是,单纯以物种数作为评价标准具有较大片面性,考察某一地区的物种多样性还必须考虑到物种的相对丰度,即相对于这一地区的各个群落内,某种或某一类群生物的个体数量的估量。同时,随着生态环境遭到破坏,有很多物种处于濒危状态,这些物种的情况对于考察相应地区的生物多样性也有着举足轻重的作用,所以,生物多样性评价还不得不考虑某一地区的物种濒危程度。从宏观上,生物种群的稳定性对于考察某一地区的生物多样性也是至关重要的。最后,生物多样性日益受到人类生活的影响,全面的评价也必须把人类的威胁考虑进去。
  生态系统多样性是指生物圈内生境、生物群落和生态学过程的多样化。是从宏观上考察生物多样性的必要手段,包括群落的组成、结构和动态。它是物种多样性的宏观与抽象。在认真领会其概念的基础上,列出以下指标对生态系统多样性进行评价,即生境类型多样性、生境稀有性、自然性、面积适宜性、生态系统稳定性。
  综上,将生物多样性的评价指标归纳于图 1(3 个主因素与 13 个子因素)。这三者相辅相成,相互包容且相互关联,因此,全面而有效地评价生物多样性离不开综合考虑这三个方面的内容。
在这里插入图片描述

论文缩略图:

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

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

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

count=[1,2,3,4,5,6,7,8,9,10,11,12,13,14];
for i=1 : size(m_data,1) for j=1 : 13 
m_data(i,j)=((m_data(i,j)-min(m_data(:,j),[],1))/(max(m_data(:,j),[],
1)-min(m_data(:,j),[],1))); end 
end
Count=70; 
%定义网络输入 p 和期望输出 t
p1=m_data(1:Count,1:13); 
t1=m_data(1:Count,14); p=p1';t=t1'; 
%设置网络隐单元的神经元数(5~30 验证后 10 个最好)n=30; 
%建立相应的 BP 网络net=newff(minmax(p),[n,1],{'tansig','purelin'},'trainlm'); 
%对没有训练的网络仿真y1=sim(net,p); %绘制仿真得到的曲线%figure %plot(t); %hold on %plot(y1,'r:') %legend('真实值','估计值');%title('没有训练的 BP 网络模型输出拟合曲线');%xlabel('输入样本点');%ylabel('汽车保有量'); %hold off %训练网络
net.trainParam.epochs=2000; net.trainParam.lr=0.05; net.trainParam.goal=0.005; net=train(net,p,t); %对训练后的网络进行仿真y=sim(net,p); 
%绘出训练后的仿真结果
%net.IW{1,1} % 输入层到隐层的权值
%net.b{1,1} % 输入层到隐层的阈值
%net.IW{2,1} % 隐层到输出层的权值
%net.b{2,1} % 隐层到输出层的阈值%figure; %plot(t); %hold on; %plot(y,'r:'); %legend('real','estimate'); %title('fitting curve'); %xlabel('sample points'); %ylabel('Passenger car ownership'); E=t-y;
ysse=sse(E);ymse=mse(E); 
hold off;
% figure 
% plot(1:Count,E); %polyfit(1:Count, E,3); 
p1=m_data(Count+1:79,1:13); 
t1=m_data(Count+1:79,14); p=p1';t=t1'; 
%plot(t); y=sim(net,p) 
tfigure plot(t); hold on; plot(y,'r:'); legend('real','estimate'); 
title('final fitting curve'); xlabel('sample points'); ylabel('Biodiversity'); %y*(4500.3924-81.62)+81.6 
%E=t-y;%ysse=sse(E); %ymse=mse(E); 
全部论文及程序请见下方“ 只会建模 QQ名片” 点击QQ名片即可

这篇关于2011年认证杯SPSSPRO杯数学建模B题(第一阶段)生物多样性的评估全过程文档及程序的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/888491

相关文章

使用Python快速实现链接转word文档

《使用Python快速实现链接转word文档》这篇文章主要为大家详细介绍了如何使用Python快速实现链接转word文档功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 演示代码展示from newspaper import Articlefrom docx import

在不同系统间迁移Python程序的方法与教程

《在不同系统间迁移Python程序的方法与教程》本文介绍了几种将Windows上编写的Python程序迁移到Linux服务器上的方法,包括使用虚拟环境和依赖冻结、容器化技术(如Docker)、使用An... 目录使用虚拟环境和依赖冻结1. 创建虚拟环境2. 冻结依赖使用容器化技术(如 docker)1. 创

浅析如何使用Swagger生成带权限控制的API文档

《浅析如何使用Swagger生成带权限控制的API文档》当涉及到权限控制时,如何生成既安全又详细的API文档就成了一个关键问题,所以这篇文章小编就来和大家好好聊聊如何用Swagger来生成带有... 目录准备工作配置 Swagger权限控制给 API 加上权限注解查看文档注意事项在咱们的开发工作里,API

java如何通过Kerberos认证方式连接hive

《java如何通过Kerberos认证方式连接hive》该文主要介绍了如何在数据源管理功能中适配不同数据源(如MySQL、PostgreSQL和Hive),特别是如何在SpringBoot3框架下通过... 目录Java实现Kerberos认证主要方法依赖示例续期连接hive遇到的问题分析解决方式扩展思考总

使用C#代码计算数学表达式实例

《使用C#代码计算数学表达式实例》这段文字主要讲述了如何使用C#语言来计算数学表达式,该程序通过使用Dictionary保存变量,定义了运算符优先级,并实现了EvaluateExpression方法来... 目录C#代码计算数学表达式该方法很长,因此我将分段描述下面的代码片段显示了下一步以下代码显示该方法如

k8s部署MongDB全过程

《k8s部署MongDB全过程》文章介绍了如何在Kubernetes集群中部署MongoDB,包括环境准备、创建Secret、创建服务和Deployment,并通过Robo3T工具测试连接... 目录一、环境准备1.1 环境说明1.2 创建 namespace1.3 创建mongdb账号/密码二、创建Sec

gradle安装和环境配置全过程

《gradle安装和环境配置全过程》本文介绍了如何安装和配置Gradle环境,包括下载Gradle、配置环境变量、测试Gradle以及在IntelliJIDEA中配置Gradle... 目录gradle安装和环境配置1 下载GRADLE2 环境变量配置3 测试gradle4 设置gradle初始化文件5 i

springboot健康检查监控全过程

《springboot健康检查监控全过程》文章介绍了SpringBoot如何使用Actuator和Micrometer进行健康检查和监控,通过配置和自定义健康指示器,开发者可以实时监控应用组件的状态,... 目录1. 引言重要性2. 配置Spring Boot ActuatorSpring Boot Act

mac安装redis全过程

《mac安装redis全过程》文章内容主要介绍了如何从官网下载指定版本的Redis,以及如何在自定义目录下安装和启动Redis,还提到了如何修改Redis的密码和配置文件,以及使用RedisInsig... 目录MAC安装Redis安装启动redis 配置redis 常用命令总结mac安装redis官网下

SpringBoot3集成swagger文档的使用方法

《SpringBoot3集成swagger文档的使用方法》本文介绍了Swagger的诞生背景、主要功能以及如何在SpringBoot3中集成Swagger文档,Swagger可以帮助自动生成API文档... 目录一、前言1. API 文档自动生成2. 交互式 API 测试3. API 设计和开发协作二、使用