基于CRITIC-TOPSIS法的各地区评价

1.CRITIC-TOPSIS法原理

1.1 基本理论

        CRITIC-TOPSIS法是一种结合CRITIC(Criteria Importance Through Intercriteria Correlation)法和TOPSIS(Technique for Order Preference by Similarity to Ideal Solution)法的综合评价方法。该方法通过CRITIC法来确定评价指标的权重,再利用TOPSIS法计算各评价对象与理想解和负理想解的接近程度,从而实现对评价对象的排序和优选。这种方法结合了两种方法的优点,既能充分考虑指标之间的冲突性和相关性,又能直观反映评价对象之间的优劣关系。

1.2 CRITIC法原理

        CRITIC法是一种客观赋权方法,它根据评价指标的对比强度和指标之间的冲突性来确定指标的权重。具体步骤如下:

  1. 数据标准化:首先,需要对原始数据进行标准化处理,以消除不同指标之间的量纲差异。标准化公式如下:

x'_{ij} = \frac{x_{ij} - \min_{i} x_{ij}}{\max_{i} x_{ij} - \min_{i} x_{ij}}

其中,x'_{ij}是标准化后的数据,x_{ij}是原始数据,i代表评价对象,j代表评价指标。

        2.计算标准差:计算每个评价指标的标准差\sigma_j,以衡量指标的对比强度。标准差越大,说明该指标在不同评价对象之间的差异越大,权重也应相应提高。

\sigma_j = \sqrt{\frac{1}{m}\sum_{i=1}{m}(x'_{ij} - \bar{x}'_j)2}

其中,m是评价对象的数量,\bar{x}'_j是第j个评价指标的平均值。

        3.计算相关系数:计算各评价指标之间的相关系数r_{jk},以衡量指标之间的冲突性。相关系数绝对值越大,说明两个指标之间的冲突性越小,权重也应相应降低。

r_{jk} = \frac{\sum_{i=1}^{m}(x'_{ij} - \bar{x}'j)(x'_{ik} - \bar{x}'_k)}{\sqrt{\sum{i=1}^{m}(x'_{ij} - \bar{x}'_j)^2\sum{i=1}{m}(x'_{ik} - \bar{x}'_k)2}}

        4.计算信息量:信息量C_j等于对比强度(标准差)与冲突性(相关系数)的乘积,它综合反映了指标的重要性。

C_j = \sigma_j \sum_{k=1}^{n}|r_{jk}|

其中,n是评价指标的总数。

        5.确定权重:最后,对各评价指标的信息量进行归一化处理,得到各指标的权重w_j

w_j = \frac{C_j}{\sum_{j=1}^{n}C_j}

1.3 TOPSIS法原理

        TOPSIS法是一种基于与理想解接近程度进行排序的多属性决策方法。具体步骤如下:

  1. 构造加权标准化决策矩阵:将标准化后的数据矩阵与CRITIC法确定的权重相乘,得到加权标准化决策矩阵Z。

Z = [z_{ij}]_{m \times n}

其中,z_{ij} = w_j x'_{ij}

        2.确定理想解和负理想解:在加权标准化决策矩阵中,找出每一列的最大值和最小值,分别构成理想解Z+和负理想解Z-。

Z^+ = [\max_{i} z_{ij}]_{1 \times n}

Z^- = [\min_{i} z_{ij}]_{1 \times n}

        3.计算距离:计算各评价对象与理想解和负理想解的距离D_i+D_i-。通常采用欧氏距离来计算。

D_i+ = \sqrt{\sum_{j=1}{n}(z_{ij} - z_j+)2}

D_i- = \sqrt{\sum_{j=1}{n}(z_{ij} - z_j-)2}

        4.计算综合接近度:计算各评价对象的综合接近度C_i,它表示评价对象与理想解的接近程度。

C_i = \frac{D_i^-}{D_i^+ + D_i^-}

        5.排序:根据综合接近度C_i对评价对象进行排序,综合接近度越大的评价对象排名越靠前。

对象进行排序。综合接近度越大的评价对象,其排名越靠前,表示该评价对象在所有评价对象中表现越好。

1.4 CRITIC-TOPSIS法原理

        CRITIC-TOPSIS法将CRITIC法和TOPSIS法相结合,首先使用CRITIC法确定各评价指标的权重,然后利用这些权重进行TOPSIS法的计算,从而得到各评价对象的综合排序。

        具体步骤如下:

  1. 数据预处理:对原始数据进行标准化处理,以消除不同指标之间的量纲差异。标准化公式如下:

其中,xij′​是标准化后的数据,xij​是原始数据。

        2.使用CRITIC法确定权重:按照前面介绍的CRITIC法步骤,计算各评价指标的权重w_{j}​。

        3.构造加权标准化决策矩阵:将标准化后的数据xij′​与权重wj​相乘,得到加权标准化决策矩阵Z。

        4.确定理想解和负理想解:根据加权标准化决策矩阵Z,确定理想解Z+和负理想解Z−。

        5.计算距离和综合接近度:按照TOPSIS法的步骤,计算各评价对象与理想解和负理想解的距离D_i+D_i-,以及综合接近度C_i

        6.排序:根据综合接近度C_i对评价对象进行排序,综合接近度越大的评价对象排名越靠前。

1.5 优缺点分析

        CRITIC-TOPSIS法结合了CRITIC法和TOPSIS法的优点,具有以下优点:

  1. 客观性:CRITIC法基于数据的客观属性确定权重,避免了主观因素的干扰;TOPSIS法则通过计算评价对象与理想解的接近程度进行排序,结果客观可靠。
  2. 灵活性:该方法可以处理多属性、多指标的评价问题,适用于各种复杂的评价场景。
  3. 可解释性:通过计算各评价指标的权重,可以清晰地了解各指标在综合评价中的重要性;通过计算综合接近度,可以直观地了解各评价对象的表现。

        然而,CRITIC-TOPSIS法也存在一些缺点:

  1. 敏感性:该方法对原始数据较为敏感,数据的微小变化可能导致结果发生较大变化。
  2. 权重确定方法:虽然CRITIC法是一种较为客观的权重确定方法,但它仅考虑了数据的客观属性,没有考虑决策者的主观偏好和实际需求。
1.6 结论

        CRITIC-TOPSIS法是一种有效的综合评价方法,它结合了CRITIC法和TOPSIS法的优点,能够客观、准确地评价多个对象在不同指标下的表现。在实际应用中,可以根据具体问题和需求选择合适的权重确定方法和排序方法,以获得更加准确和可靠的评价结果。

2.代码

数据集形式:数据与结果都不是绝对的准确,只是用来学习CRITIC-TOPSIS法。

图1

clc;clear;close all;	
load('T_25_Jun_2024_19_04_15.mat')	
test_data1=G_out_data.test_data1;	
zhibiao_label1=ones(1,size(test_data1,2));	
zhibiao_label=G_out_data.zhibiao_label;  %正向化指标设置	
if length(zhibiao_label)<length(zhibiao_label1)	
zhibiao_label=[zhibiao_label,zhibiao_label1(length(zhibiao_label)+1:size(test_data1,2))];	
end	
A_data1=jisuan(test_data1,zhibiao_label);  %正向化之后的矩阵	
[n,~]=size(A_data1);	
A_data =A_data1 ./ repmat(sum(A_data1.*A_data1) .^ 0.5, n, 1); %矩阵归一化	
symbol_label=G_out_data.symbol_label;	[~,quan]=CRITIC(A_data,symbol_label);	
score=TOPSIS(A_data,quan,symbol_label);	
disp('CRITIC-TOPSIS法')	
disp('评价得分')	
score=score'	
disp('CRITIC法 得到权重为:') 	
disp(quan) 	
Out_table(:,1)=cell2table(G_out_data.table_str);	
Out_table(:,2)=array2table(G_out_data.table_data);	
Out_table.Properties.VariableNames={'评价对象','评分'};	
disp(Out_table)	

        运行结果如下:数据与结果都不是绝对的准确,只是用来学习CRITIC-TOPSIS法。

地区评分
上海100.00 
广东92.62 
北京87.47 
江苏81.21 
浙江79.42 
山东77.76 
天津58.35 
河南53.08 
辽宁50.43 
河北47.56 
四川45.75 
福建43.13 
湖北39.52 
湖南39.26 
安徽35.10 
内蒙古32.27 
黑龙江30.14 
山西27.93 
吉林27.56 
广西27.34 
江西26.33 
云南25.35 
陕西24.90 
重庆24.53 
新疆18.88 
贵州18.46 
甘肃14.32 
宁夏13.69 
海南13.45 
青海10.59 
西藏6.41 

        简单绘制柱状图如图1所示:

图1 各地区排序

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

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

相关文章

深度学习语义分割算法之基础知识

文章目录 前言一、图像分割介绍1.语义分割2.实例分割3.全景分割 二、常见数据集格式1.PASCAL VOC2.MS COCO 三、语义分割结果四、语义分割常见评价指标1.Pixel Accuracy2.mean Accuracy3.mean IoU 五、语义分割标注工具结束语 &#x1f482; 个人主页:风间琉璃&#x1f91f; 版…

更适合敏感口腔的护理牙刷

最近在用一款清九野小红盾舒敏牙刷&#xff0c;感觉它很适合牙龈敏感的人&#xff0c;让刷牙体验有了显著的提升。这款牙刷的柔软刷毛和精细设计让我的刷牙过程变得轻松愉快。它的内外圈双重植毛技术&#xff0c;在清洁牙齿的同时&#xff0c;还能深入牙缝&#xff0c;温和地去…

设计模式原则——单一职责原则(SPS)

设计模式原则 设计模式示例代码库地址&#xff1a; https://gitee.com/Jasonpupil/designPatterns 单一职责原则&#xff08;SPS&#xff09;&#xff1a; 又称单一功能原则&#xff0c;面向对象五个基本原则&#xff08;SOLID&#xff09;之一原则定义&#xff1a;一个类应…

还能这样执行命令?命令执行绕过及防护规则研究

一、引言 我是渗透工程师->很多小伙伴在做攻防实战时发现有时在命令执行的payload中穿插单双引号命令也能执行成功&#xff0c;有时却又不行。那么到底在什么条件下用什么样的方式能实现对命令的切分呢&#xff1f;其中的原理又是如何&#xff1f;有没有其他绕过方式&#…

openlayers 轨迹回放(历史轨迹),实时轨迹

本篇介绍一下使用openlayers轨迹回放&#xff08;历史轨迹&#xff09;&#xff0c;实时轨迹 1 需求 轨迹回放&#xff08;历史轨迹&#xff09;实时轨迹 2 分析 主要是利用定时器&#xff0c;不断添加feature 轨迹回放&#xff08;历史轨迹&#xff09;&#xff0c;一般是…

rga_mm: RGA_MMU unsupported Memory larger than 4G!解决

目录 报错完整log如下:解决方案:报错完整log如下: [ 3668.824164] rga_mm: RGA_MMU unsupported Memory larger than 4G! [ 3668.824305] rga_mm: scheduler core[4] unsupported mm_flag[0x0]! [ 3668.824320] rga_mm: rga_mm_map_buffer map dma_buf err

Linux环境下安装MySQL5.7.20(源码安装)

&#x1f4e3;&#x1f4e3;&#x1f4e3; 哈喽&#xff01;大家好&#xff0c;本专栏主要发表mysql实战的文章&#xff0c;文章主要包括&#xff1a; 各版本数据库的安装、备份和恢复,性能优化等内容的学习。。 &#x1f4e3; ***如果需要观看配套视频的小伙伴们&#xff0c;请…

【Apache Doris】周FAQ集锦:第 8 期

【Apache Doris】周FAQ集锦&#xff1a;第 8 期 SQL问题数据操作问题运维常见问题其它问题关于社区 欢迎查阅本周的 Apache Doris 社区 FAQ 栏目&#xff01; 在这个栏目中&#xff0c;每周将筛选社区反馈的热门问题和话题&#xff0c;重点回答并进行深入探讨。旨在为广大用户和…

Fluent udf编译的一些注意事项

Fluent udf编译的一些注意事项 参考链接&#xff1a;1.fluent UDF编译环境处理_哔哩哔哩_bilibili 2.【觉兽课堂】ANSYS FLUENT UDF教学02&#xff1a;UDF语法及编写 小白入门必备_哔哩哔哩_bilibili #1 需要注意的内容 ##1.1 修改vs的路径 在fluent路径中&#xff0c;打开ud…

Golang笔记:使用serial包进行串口通讯

文章目录 目的使用入门总结 目的 串口是非常常用的一种电脑与设备交互的接口。这篇文章将介绍golang中相关功能的使用。 本文使用的包为 &#xff1a;go.bug.st/serial https://pkg.go.dev/go.bug.st/serial https://github.com/bugst/go-serial 另外还有一些常见的包如&…

cpp入门(命名空间,输入输出与缺省参数)

目录 cpp关键字 命名空间 命名空间的使用 1.加名称及作用域限定符 2.使用using将命名空间中某个成员引入 3.展开命名空间 注意 输入输出 缺省参数 cpp关键字 命名空间 定义命名空间&#xff0c;需要使用到namespace关键字&#xff0c;后面跟命名空间的名字&#xff0c…

素数普遍公式与哥德巴赫猜想

详见百度百科【素数普遍公式】 公元前250年同样是古希腊的数学家埃拉托塞尼提出一种筛法&#xff1a; &#xff08;一&#xff09;“要得到不大于某个自然数N的所有素数&#xff0c;只要在2---N中将不大于 的素数的倍数全部划去即可”。 &#xff08;二&#xff09;将上面的…

NodeJs实现对本地 mysql 数据库的增删改查

写在前面 今天我们接着写nodejs对数据库的操作&#xff0c;今天实现简单的增删改查&#xff0c;读之前请先移步到这里NodeJs 连接本地 mySql 数据库获取数据,避免后续一些代码出险阅读断层。 安装 nodemon npm install nodemon因为 nodejs 的服务是本地启动&#xff0c;避免后…

FPGA开发Vivado安装教程

前言 非常遗憾的一件事情是&#xff0c;在选修课程时我避开了FPGA&#xff0c;选择了其他方向的课程。然而&#xff0c;令我没有想到的是&#xff0c;通信项目设计的题目竟然使用FPGA&#xff0c;这简直是背刺。在仅有的半个月时间里&#xff0c;准备这个项目确实是非常紧张的…

高考英语3500词

DAY1 DAY2 DAY3 DAY4 DAY5 DAY6 DAY7 DAY8 DAY9 DAY10 DAY11 DAY12 DAY13 DAY14 DAY15 DAY16 DAY17 DAY18 DAY19 DAY20 DAY21 DAY22 DAY23 DAY24 DAY25 DAY26 DAY27 DAY28 DAY29 DAY30 DAY31 DAY32 DAY33 DAY34 DAY35 DAY36 DAY37 DAY38 DAY39 DAY40

网络配置(IP、NETMASK、GATEWAY、DNS、DHCP)

参考&#xff1a; 初学Linux之网络配置(IP、NETMASK、GATEWAY、DNS、DHCP)-CSDN博客【学习笔记】网关 & 路由_网关和路由-CSDN博客【学习笔记】计算机网络 IP地址与MAC地址_根据mac分配ip-CSDN博客【学习笔记】TCP 和 UDP 协议_tcp 发送 syn 应答没有syn ack-CSDN博客 一…

java版CRM客户关系管理系统Spring Cloud alibaba Spring Boot成长型企业必备的客户关系管理系统

鸿鹄CRM客户关系管理系统是一款基于Java语言开发的CRM系统&#xff0c;采用了Spring Cloud Alibaba、Spring Boot、MybatisPlus、Redis和VUE3 ElementUI等技术&#xff0c;构建了一个微服务架构。该系统具有以下功能模块&#xff1a; 一、待办事项 1、今日需联系客户&#xf…

实在RPA的硬件交互功能:U盾机械臂组件

一、为什么需要U盾机械臂&#xff1f; 在使用银行U盾&#xff08;USB Key&#xff09;进行操作时&#xff0c;涉及到许多手动确认步骤&#xff0c;特别是按下U盾上的确认按键。这种手动操作是自动化过程中的一个瓶颈。为了实现完全自动化&#xff0c;需要一种方法来自动按下U…

接口测试中遇到的sessionID验证问题

在接口测试中&#xff0c;经常会存在联调的接口&#xff0c;比如登录完去调用其他的接口&#xff0c;这时就会存在一个问题&#xff0c;那就是登录成功了&#xff0c;但是其他接口失败了&#xff0c;这个时候就需要用到一个sessionID去传入其他接口验证合法性请求&#xff0c;这…

Matlab进阶绘图第61期—滑珠散点图

滑珠散点图也是一种在《Nature》中常见的数据图。 其功能类似于柱状图&#xff0c;但更加简洁易读。 由于Matlab中没有现成的函数绘制滑珠散点图&#xff0c;因此需要大家自行解决。 本文利用自己制作的BubbleScatter工具&#xff0c;进行滑珠散点图的绘制&#xff0c;先来看…