【数学建模】清风数模更新5 灰色关联分析

灰色关联分析综述

诸如经济系统、生态系统、社会系统等抽象系统都包含许多因素,系统整体的发展受各个因素共同影响。

为了更好地推动系统发展,我们需要清楚哪些因素是主要的,哪些是次要的,哪些是积极的,哪些是消极的,这就要求我们进行系统分析。

数理统计中的系统分析方法包括回归分析、方差分析和主成分分析,它们都存在一些不足之处,当数据样本较少时,灰色关联分析方法可以较好地克服那些不足。

因此,当样本个数较大时,一般使用标准化回归;当样本个数较少时,才使用灰色关联分析。

灰色关联分析的基本思想,是根据序列曲线的几何形状的相似程度来判断其联系是否紧密,曲线越接近,相似序列之间的关联度就越大,反之就越小。

接下来我们用两个例题来介绍一下灰色关联分析的两种应用。

应用一:进行系统分析

 第一步:画统计图并分析

 由图可知:

  1. 四个变量均呈上升趋势;
  2. 第二产业的增幅较为明显;
  3. 第二产业和第三产业的差距在后三年相差更大。

第二步:确定分析数列

母序列(参考数列、母指标):能反映系统行为特征的数据序列。类似于因变量Y,这里记作X0

子序列(比较序列、子指标):影响系统行为的因素组成的数据序列。类似于自变量X,记作X1~Xn

在例题中,国内生产总值就是母序列,第一、第二和第三产业就是子序列。

第三步:对变量进行预处理

目的:去量纲,缩小变量范围以简化计算。

对母序列和子序列中的每个指标进行预处理先求出每个指标的均值,再用该指标的每个元素除以其均值

 第四步:计算子序列中各个指标与母序列的关联系数

 第五步:求出灰色关联度

 第六步:比较关联度,得出结论

对这个例题来说,该地区在2000年至2005年间的国内生产总值受到第三产业的影响最大(其灰色关联度最大)。

代码

clear;clc
load gdp.mat  % 导入数据 一个6*4的矩阵
Mean = mean(gdp);  % 求出每一列的均值以供后续的数据预处理
gdp = gdp ./ repmat(Mean,size(gdp,1),1);  %size(gdp,1)=6, repmat(Mean,6,1)可以将矩阵进行复制,复制为和gdp同等大小,然后使用点除(对应元素相除)
disp('预处理后的矩阵为:'); disp(gdp)
Y = gdp(:,1);  % 母序列
X = gdp(:,2:end); % 子序列
absX0_Xi = abs(X - repmat(Y,1,size(X,2)))  % 计算|X0-Xi|矩阵(在这里我们把X0定义为了Y)
a = min(min(absX0_Xi))    % 计算两级最小差a
b = max(max(absX0_Xi))  % 计算两级最大差b
rho = 0.5; % 分辨系数取0.5
gamma = (a+rho*b) ./ (absX0_Xi  + rho*b)  % 计算子序列中各个指标与母序列的关联系数
disp('子序列中各个指标的灰色关联度分别为:')
disp(mean(gamma))

应用二:综合评价问题

题目:评价下表中20条河流的水质情况。(用Topsis结合熵权法也可以解决)

 解题步骤

  1. 对指标正向化
  2. 对正向化后的矩阵进行预处理
  3. 将预处理后的矩阵每一行取出最大值构成母序列
  4. 计算各个指标与母序列的灰色关联度
  5. 计算各个指标灰色关联度的权重
  6. 计算各个评价对象的得分(用权重计算)
  7. 对得分进行归一化

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机视觉五大核心研究任务全解:分类识别、检测分割、人体分析、三维视觉、视频分析

目录 一、引言1.1 计算机视觉的定义1.1.1 核心技术1.1.2 应用场景 1.2 历史背景及发展1.2.1 1960s-1980s: 初期阶段1.2.2 1990s-2000s: 机器学习时代1.2.3 2010s-现在: 深度学习的革命 1.3 应用领域概览1.3.1 工业自动化1.3.2 医疗图像分析1.3.3 自动驾驶1.3.4 虚拟现实与增强现…

自动切换HTTP爬虫ip助力Python数据采集

在Python的爬虫世界里,你是否也被网站的IP封锁问题困扰过?别担心,我来教你一个终极方案,让你的爬虫自动切换爬虫ip,轻松应对各种封锁和限制!快来跟我学,让你的Python爬虫如虎添翼! 首…

Git 常用操作

一、Git 常用操作 1、Git 切换分支 git checkout命令可以用于三种不同的实体:文件,commit,以及分支。checkout的意思就是对于一种实体的不同版本之间进行切换的操作。checkout一个分支,会更新当前的工作空间中的文件,…

arp请求消息的种类介绍

目录 1 Arp协议定义和作用: 2 Arp消息的结构: 3 Arp请求帧格式 4 Arp应答帧格式 5 Arp请求的种类: 5.1.二层广播arp请求 5.2 单播arp请求消息 5.3 Ip冲突探查arp请求 5.4免费arp宣告使用此ip地址 有图片,看不清的话&#…

B树和B+树区别

B树和B树的区别 B树 B树被称为平衡树,在B树中,一个节点可以有两个以上的子节点。B树的高度为log M N。在B树中,数据按照特定的顺序排序,最小值在左侧,最大值在右侧。 B树是一种平衡的多分树,通常我们说m阶…

Android布局【TableLayout】

文章目录 说明常见属性子控件设置属性 项目结构主要代码 说明 TableLayout也称为表格布局 常见属性 android:collapseColumns:设置需要被隐藏的列的序列号,从0开始android:stretchColumns:设置允许被拉伸的列的列序号,从0开始&…

vscode vue3+vite 配置eslint

vue2webpackeslint配置 目前主流项目都在使用vue3vite,因此针对eslint的配置做了一下总结。 引入ESlint、pritter 安装插件,执行以下命令 // eslint // prettier // eslint-plugin-vue // eslint-config-prettier // eslint-plugin-prettier yarn ad…

Cenos7 搭建Minio最新版集群部署服务器(一)

------> 道 | 法 | 术 | 器 | 势 <------ 多台服务器间免密登录|免密拷贝 Cenos7 搭建Minio集群部署服务器(一) Cenos7 搭建Minio集群Nginx统一访问入口|反向动态代理(二) Spring Boot 与Minio整合实现文件上传与下载(三) CentOS7的journalctl日志查看方法 …

Docker 安装和架构说明

Docker 并非是一个通用的容器工具&#xff0c;它依赖于已存在并运行的Linux内核环境。 Docker实质上是在已经运行的Liunx下制造了一个隔离的文件环境&#xff0c;因此他的执行效率几乎等同于所部署的linux主机。因此Docker必须部署在Linux内核系统上。如果其他系统想部署Docke…

WSL2打开GUI软件显示方框的解决方法

项目场景&#xff1a; WSL2是支持GUI应用的&#xff0c;而且页面的适配性也不错&#xff0c;很多大厂出的软件基本都没有错位的问题。但是有些时候会出现中文场景下方框的问题&#xff0c;接下来就协助你们解决方框的问题&#xff0c;简单到极点。 问题描述 以Ubuntu-22.04下…

【Tomcat】Tomcat部署及优化

Tomcat 它是一个免费、开源的web应用服务器&#xff1b;基于java代码开发的软件&#xff1b;处理动态请求和基于Java代码的页面开发&#xff1b; 可以在html当中写入Java代码&#xff0c;Tomcat可以解析html页面当中的Java代码&#xff0c;执行动态请求以及动态页面 缺点&#…

英码国产高配边缘计算盒子上市!搭载TPU处理器BM1684X,适配麒麟系统,支持OTA升级!

随着人工智能技术不断深入实际应用场景&#xff0c;加速各行各业场景应用落地&#xff0c;边缘计算的重要性越发凸显。相较于传统的集中式云计算&#xff0c;边缘计算在距离数据源或用户更近的地方提供计算能力&#xff0c;不仅满足了对实时性要求较高的场景应用需求&#xff0…