数学建模之灰色关联分析(GRA)

2023-11-17

本文参考的是司守奎,孙兆亮主编的数学建模算法与应用(第二版)

灰色关联分析不仅能够用做关联分析,也能够用于评价。
其具体分析步骤如下:

第一步,需要确定评价对象和参考数列。
评价对象一般指的就是待分析的各个特征组,例如需要评价一个同学的成绩,那么他的语文成绩、数学成绩、英语成绩等就是一个特征组,即一个评价对象。
参考数列有两种选择,一种是从各个特征组中抽取出各自特征最优的值,构成一个虚拟的最优方案,并将此作为参考数列,那么其他方案都是参考最优方案得出的关联系数,即能够作为方案的评价,这也很容易理解,与最优方案关联越大,说明这个方案实际也是越优的。另一种是将待分析的方案中,挑选一组方案作为参考数列,例如需要分析小红、小明、小兰三者之间小红的成绩的和谁的关系比较大,那么就可以以小红的成绩作为参考数列,进行关联性分析,分析出的关联系数即可说明小红的成绩与谁的相关性越大,从而分析谁对小红的影响比较大(这是我随便举得例子,也不知道恰不恰当)
在这里插入图片描述
第二步,可以通过熵权法、层次分析法等确定权重,一般这里取等权重即可。
在这里插入图片描述
第三步,计算灰色关联系数。其中分辨系数一般取0.5即可
在这里插入图片描述
第四步,计算加权关联度。
在这里插入图片描述
第五步,评价分析。
在这里插入图片描述
接下来展示一个例题
在这里插入图片描述
其实最开始,需要进行的步骤是对数据进行预处理,这是任何任务顺利进行下去不可或缺的环节。对于这题,数据预处理主要是将效益型指标归一化以及将成本型指标归一化为效益型的形式,即通过数值大小直接能够反应此指标的优劣。

data = [0.83 0.90 0.99 0.92 0.87 0.95
    326 295 340 287 310 303
    21 38 25 19 27 10
    3.2 2.4 2.2 2.0 0.9 1.7
    0.20 0.25 0.12 0.33 0.20 0.09
    0.15 0.20 0.14 0.09 0.15 0.17
    250 180 300 200 150 175
    0.23 0.15 0.27 0.30 0.18 0.26
    0.87 0.95 0.99 0.89 0.82 0.94];

%效益型指标归一化
for i =[1 5:9]
    data(i,:) = (data(i,:)-min(data(i,:)))/(max(data(i,:))-min(data(i,:)));
end
%成本型指标归一化
for i = 2:4
    data(i,:) = (max(data(i,:))-data(i,:))/(max(data(i,:))-min(data(i,:)));
end

预处理后结果如下:
在这里插入图片描述

接下来开始灰色关联分析。
第一步,确定评价对象和参考数列,由于我们是用于评价,那么评价对象就为各个方案,参考数列即为虚拟最优方案,即各个实际方案的最优值。

[row,col] = size(data);
cankao = max(data')'; %获取参考数列
cankao %由于评价这里取虚拟最优方案作为参考数列

可得参考数列:
在这里插入图片描述
第二步,确定权重,可以通过熵权法、层次分析法等确定权重,一般这里取等权重即可。

第三步,计算关联系数。分辨系数一般取0.5即可

t = repmat(cankao,[1,col])-data;%求参考序列与每一个序列的差
mmin = min(min(t));%计算最小差
mmax = max(max(t));%计算最大差
rho = 0.5;%分辨系数
xishu = (mmin + rho * mmax)./(t + rho * mmax)%计算灰色关联分析

第四步,计算加权关联度,由于我们权重为等权重,即权重都为1,那么直接取均值即可。

guanliandu = mean(xishu)%取等权重,计算关联度

第五步,评价分析。

[gsort,ind] = sort(guanliandu,'descend')%对关联度从大到小排序

结果如下:
在这里插入图片描述
matlab完整代码如下:

clc,clear
data = [0.83 0.90 0.99 0.92 0.87 0.95
    326 295 340 287 310 303
    21 38 25 19 27 10
    3.2 2.4 2.2 2.0 0.9 1.7
    0.20 0.25 0.12 0.33 0.20 0.09
    0.15 0.20 0.14 0.09 0.15 0.17
    250 180 300 200 150 175
    0.23 0.15 0.27 0.30 0.18 0.26
    0.87 0.95 0.99 0.89 0.82 0.94];

%效益型指标归一化
for i =[1 5:9]
    data(i,:) = (data(i,:)-min(data(i,:)))/(max(data(i,:))-min(data(i,:)));
end
%成本型指标归一化
for i = 2:4
    data(i,:) = (max(data(i,:))-data(i,:))/(max(data(i,:))-min(data(i,:)));
end

[row,col] = size(data);
cankao = max(data')'; %获取参考数列
cankao %由于评价这里取虚拟最优方案作为参考数列

t = repmat(cankao,[1,col])-data;%求参考序列与每一个序列的差
mmin = min(min(t));%计算最小差
mmax = max(max(t));%计算最大差
rho = 0.5;%分辨系数
xishu = (mmin + rho * mmax)./(t + rho * mmax)%计算灰色关联分析
guanliandu = mean(xishu)%取等权重,计算关联度
[gsort,ind] = sort(guanliandu,'descend')%对关联度从大到小排序
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

数学建模之灰色关联分析(GRA) 的相关文章

随机推荐

  • 用acme.sh申请免费ssl证书-let‘s encrypt

    这个是申请泛域名证书 移动端和电脑端直接用这个就可以了 不需要分开申请 安装脚本 curl https get acme sh sh 进入 cd acme sh 看下目录有什么 root csdn ls adl acme sh drwx 8
  • CO_XT_COMPONENTS_DELETE 删除工单组件

    REPORT zdtest6 判断是否有原始组件 如有全删 DATA ls return TYPE coxt bapireturn DATA lt resbkeys TYPE coxt t resbdel lt return TYPE ST
  • RabbitMQ--扩展--03--日志文件,故障恢复,集群迁移,集群监控

    RabbitMQ 扩展 03 日志文件 故障恢复 集群迁移 集群监控 1 RabbitMQ日志查看 如果在使用RabbitMQ 的过程中出现了异常情况 通过查看RabbitMQ 的服务日志可以让你在处理异常的过程中事半功倍 RabbitMQ
  • python基础—字符串操作

    1 字符串 Python内置了一系列的数据类型 其中最主要的内置类型是数值类型 文本序列 字符串 类型 序列 列表 元组和range 类型 集合类型 映射 字典 类型 本章在介绍字符串 列表 元组和range类型共有的通用序列操作方法的基础
  • 常用的相似度计算方法原理及实现

    在数据分析和数据挖掘以及搜索引擎中 我们经常需要知道个体间差异的大小 进而评价个体的相似性和类别 常见的比如数据分析中比如相关分析 数据挖掘中的分类聚类 K Means等 算法 搜索引擎进行物品推荐时 相似度就是比较两个事物的相似性 一般通
  • 笔记本计算机bios设置,联想笔记本BIOS设置详解

    大部分用户朋友遇到系统损坏时 不得不选择重装系统这样简单粗暴快的方式来解决 然而在准备重装时却遇到BIOS设置难题 不得不求助网络上各路大神 却还是没能真正得到帮助 下面快启动小编为大家分享联想笔记本BIOS设置详解 希望能为大家排忧解难
  • 一些杂七杂八的概率统计基础(变分推断所需)

    在开始之前要了解以下这个统计学中背景知识 贝叶斯学派与频率学派 极大似然估计学派 最大的区别就是 贝叶斯学派认为参数 不是一个确定值 而是一个随机变量 且随机变量一定是服从某个分布的 在概率统计中 随机变量 随机数量 变量中的值是随机现象的
  • 莫烦强化学习视频笔记:第五节 5.2 Policy Gradients 算法更新和思维决策

    目录 1 要点 2 算法流程 3 算法代码形式 3 1 算法更新 3 2 思维决策 3 2 1 初始化 3 2 2 建立 Policy 神经网络 3 2 3 选行为 3 2 4 存储回合 3 2 5 学习 1 要点 Policy gradi
  • linux vim/vi 跳转到最后一行 跳转快捷键

    vim vi操作 跳到文本的最后一行 按 G 即 shift g 跳到文本的第一行的第一个字符 按两次 g 跳到当前行的最后一个字符 在当前行按 键 即 shift 4 跳到当前行的第一个字符 在当前行按 0
  • 《数字图像处理》笔记

    目录 第1章 绪论 1 1 图像概述 1 1 1 基本概念和术语 1 1 2 不同波段的图像示例 1 1 3 不同类型的图像示例 1 2 图像工程概述 1 2 1 图像工程的三个层次 1 3 图像表示和显示 1 3 1图像和像素的表示 1
  • Vue使用babel-polyfill兼容IE解决白屏及语法报错

    解决vue elementUI项目使用webpack打包上线后 服务器环境下IE报语法错误及白屏问题 在最近的项目中 在使用webpack打包后发布 有用户反馈使用IE浏览器访问会白屏 这就不能忍受了 经过排查发现 发生这个错误应该是有文件
  • Theos(七):常见问题

    目录 Theos 故障排除 Theos Troubleshooting 空的 THEOS 环境变量或者损坏的符号链接 Empty THEOS or corrupt symlink 缺少 SDK Missing SDK SDK 体积过小 Sm
  • js逆向之浏览器控制台

    js逆向之浏览器控制台 首先介绍一下浏览器控制台的使用 以开发者使用最多的chrome为例 Windows操作系统下的F12键可以打开控制台 mac操作系统下用Fn F12键打开 我们选择平时使用较多的模块进行介绍 2 1 Network
  • 详解HashMap+源码讲解(慎看!!!)

    HashMap 一 Map 1 关于Map的说明 2 Map常用方法说明 二 了解HashMap原理 自己实现 1 常用方法说明 使用 会用就行 1 实现一个HashMap对象 2 调用 put k v 3 调用 get k 2 什么是哈希
  • (jsp和Servlet 功能篇) Servlet 实现文件上传

    在开发过程中用得比较多的上传组件是commons fileupload和japSmartUpload 这两个组件都可以很好的完成文件上传的功能 此例用commons fileupload 这个组件在http jakarta apache o
  • 乐高叉车wedo教案_乐高 WEDO自带12个活动教学参考书.pdf

    活动内容 序号 活动名称 类别 Dancing Birds 1 跳舞的鸟 Spinner 2 疯狂机械 陀螺 Drumming Monkey 3 打鼓的猴子 Alligator 4 鳄鱼 Lion 5 野生动物 狮子 Bird 6 鸟 Go
  • 【TIDB】TIDB数据类型详解

    TIDB的数据类型 文章目录 TIDB的数据类型 1 数值类型 2 日期和时间类型 3 字符串类型 3 SET 类型 4 JSON类型 1 数值类型 1 整数类型 2 浮点类型 3 定点类型 decamal 20 6 2 日期和时间类型 3
  • C++实现顺序表和单链表

    顺序表 顺序表是在计算机内存中以数组的形式保存的线性表 是指用一组地址连续的存储单元依次存储数据元素的线性结构 确定了起始位置 就可通过公式计算出表中任一元素的地址 LOC ai LOC a1 i 1 L 1 i n L是元素占用存储单元的
  • 【信息】宁波银行金融科技系统研发面经:笔试,技术面,行政面,终面

    0 内推 我的内推码 90OF50 具体内推信息可见 宁波银行金融科技部2023届校招开始了 内推码 90OF50 社招请直接与我私信联系哦 前端 后端 数据 产品 测试 设计等等岗位求贤若渴 1 前言 答主已经如愿收到了offer 邮件
  • 数学建模之灰色关联分析(GRA)

    本文参考的是司守奎 孙兆亮主编的数学建模算法与应用 第二版 灰色关联分析不仅能够用做关联分析 也能够用于评价 其具体分析步骤如下 第一步 需要确定评价对象和参考数列 评价对象一般指的就是待分析的各个特征组 例如需要评价一个同学的成绩 那么他