当前位置: 首页 > news >正文

数学建模:CRITIC赋权法

🔆 文章首发于我的个人博客:欢迎大佬们来逛逛

CRITIC赋权法

算法流程

  1. 构建原始数据矩阵 X X X,他是一个 m ∗ n m * n mn 的矩阵, m m m 表示评价对象个数, n n n 表示指标个数
  2. 对原始数据矩阵进行正向化处理
  3. 计算矩阵的变异性,即计算矩阵的**标准差:**得到的 S i S_i Si 表示 第 i i i 个指标的标准差

{ x ˉ j = 1 n ∑ i = 1 n x i j S j = ∑ i = 1 n ( x i j − x ˉ j ) 2 n − 1 \left\{\begin{array}{rcl}\mathrm{\bar x_j~=~\frac1n~\sum_{i=1}^nx_{ij}}\\\\\mathrm{S_j~=\sqrt{\frac{\sum_{i=1}^n\left(x_{ij}~-\bar x_j~\right)^2}{n-1}}}\end{array}\right. xˉj = n1 i=1nxijSj =n1i=1n(xij xˉj )2

  1. 描述指标的冲突性,首先计算指标之间两两的相关系数矩阵,然后计算指标的冲突性
    1. 求相关系数矩阵可以直接调用matlab的corr函数

R j = ∑ i = 1 n ( 1 − r i j ) \mathrm{R_j~=\sum_{i=1}^n(1-r_{ij})} Rj =i=1n(1rij)

  1. 计算指标的信息承重量

C j = S j ∑ i = 1 n ( 1 − r i j ) = S j × R j \mathrm{C_j~=S_j~\sum_{i=1}^n~(1-r_{ij}~)=S_j~\times R_j} Cj =Sj i=1n (1rij )=Sj ×Rj

  1. 计算每个指标的客观权重

W j = C j ∑ j = 1 p C j \mathrm{W_j=\frac{C_j}{\sum_{j=1}^pC_j}} Wj=j=1pCjCj


代码实现

%%对比性
function [Score,w]=mfunc_CRITIC(data1)% CRITIC方法:求解每个指标对应的客观权重算法% paramts: %      data1: 原始数据矩阵,(m,n) m为评价对象,n为评价指标% returns:%      Score:每个评价对象的综合得分%      w: 所有指标的客观权重% 计算标准差STD=std(data1);%%矛盾性r=corr(data1);%计算指标间的相关系数f=sum(1-r);%%信息承载量c=STD.*f;%计算所有指标的权重w=c/sum(c);%计算得分[m,~]=size(data1);data= data1 ./ repmat(sum(data1.*data1) .^ 0.5, m, 1); %矩阵归一化% data=mapminmax(data1',0.002,1);%标准化到0.002-1区间% data=data';s=data*w';Score=100*s/max(s);
end

相关文章:

数学建模:CRITIC赋权法

🔆 文章首发于我的个人博客:欢迎大佬们来逛逛 CRITIC赋权法 算法流程 构建原始数据矩阵 X X X,他是一个 m ∗ n m * n m∗n 的矩阵, m m m 表示评价对象个数, n n n 表示指标个数对原始数据矩阵进行正向化处理计算…...

Facebook message tag 使用攻略

Messenger 讯息传不出去?无法发送FB 讯息给非好友? 2020年3月,Facebook 为了防止用户被过多的推广或垃圾讯息困扰而更新使用条款,现在商家要用FB传讯息给所有人(包括非好友),应该使用 Facebook …...

气传导耳机哪个品牌比较好?综合表现很不错的气传导耳机推荐

​气传导耳机不仅能够提升幸福感还能听到周围环境声,大大提高安全性。如果你在寻找一款高品质的气传导耳机,又不知从何入手时,不要担心,我已经为你精心挑选了四款市面上综合表现很不错的气传导耳机,让你享受更好的音质…...

Rabbitmq的消息转换器

Spring会把你发送的消息序列化为字节发送给MQ,接收消息的时候,还会把字节反序列化为Java对象 ,只不过,默认情况下Spring采用的序列化方式是JDK序列化。众所周知,JDK序列化存在下列问题: 数据体积过大 有安全漏洞 可读…...

nvidia-docker的使用

拉取镜像 docker pull nvidia/cuda可能出现的问题 问题描述 Error response from daemon: manifest for nvidia/cuda:latest not found: manifest unknown: manifest解决方法: 为找到正确且合适的docker镜像版本 在supported-tags中找到与自己系统对应的cuda版本…...

C++新经典 | C语言

目录 一、基础之查漏补缺 1.float精度问题 2.字符型数据 3.变量初值问题 4.赋值&初始化 5.头文件之<> VS " " 6.逻辑运算 7.数组 7.1 二维数组初始化 7.2 字符数组 8.字符串处理函数 8.1 strcat 8.2 strcpy 8.3 strcmp 8.4 strlen 9.函数 …...

物联网智慧种植农业大棚系统

一、项目背景 智慧农业是是将物联网技术和农业生产箱管理的新型农业&#xff0c;依托部署在农业生产现场的各种传感节点&#xff0c;以物联网网关为通道形成数据传输网络&#xff0c;可以实现控制柜、环境监测传感器、气象监测机器等设备的远程监控&#xff0c;达到及时高校的…...

TabBar组件如何跳转页面?

1、先引入 2、假数据 const tabs [{key: home,title: 首页,icon: <AppOutline />,badge: Badge.dot,},{key: todo,title: 待办,icon: <UnorderedListOutline />,badge: 5,},{key: message,title: 消息,icon: (active: boolean) >active ? <MessageFill /&…...

Vue.js中,router和route

<div class"search">{{$route.params.things}}<van-nav-bar fixed title"商品列表" left-arrow click-left"$router.go(-1)" /><van-searchreadonlyshape"round"background"#ffffff"value"手机"sh…...

【微服务】07-缓存

文章目录 为不同的场景设计合适的缓存策略1. 缓存是什么2. 缓存的场景3. 缓存的策略4. 缓存位置5. 缓存实现的要点6. 注意问题7. 使用的组件8. 内存缓存和分布式缓存区别 总结 为不同的场景设计合适的缓存策略 1. 缓存是什么 缓存是计算结果的“临时”存储和重复使用缓存本质…...

权限校验中的“双token”方案

1. 双Token中的两个token分别是什么&#xff1f; 1.1 access_token 1.2 fresh_token 2. 为什么需要双token&#xff1f;一个token不行吗&#xff1f; 答&#xff1a; 两个token的职责不同。其中&#xff0c;access_token是在每次请求的时候携带给后端进行权限校验&#xff…...

TensorFlow的基本概念

TensorFlow 是由 Google 开发的开源机器学习框架&#xff0c;其基本概念如下&#xff1a; 1. 张量&#xff08;Tensor&#xff09;&#xff1a;TensorFlow 中最基本的数据结构&#xff0c;是多维数组&#xff0c;可以理解为向量或矩阵的推广。常见的张量有常量张量、变量张量和…...

【卷积神经网络】MNIST 手写体识别

LeNet-5 是经典卷积神经网络之一&#xff0c;1998 年由 Yann LeCun 等人在论文 《Gradient-Based Learning Applied to Document Recognition》中提出。LeNet-5 网络使用了卷积层、池化层和全连接层&#xff0c;实现可以应用于手写体识别的卷积神经网络。TensorFlow 内置了 MNI…...

Ansible学习笔记2

Ansible是Python开发的自动化运维工具&#xff0c;集合了众多运维工具&#xff08;Puppet、cfengine、chef、func、fabric&#xff09;的优点&#xff0c;实现了批量系统配置&#xff0c;批量程序部署、批量运行命令等功能。 特点&#xff1a; 1&#xff09;部署简单&#xff…...

80. 删除有序数组中的重复项 II

【中等题】 题目&#xff1a; 给你一个有序数组 nums &#xff0c;请你 原地 删除重复出现的元素&#xff0c;使得出现次数超过两次的元素只出现两次 &#xff0c;返回删除后数组的新长度。 不要使用额外的数组空间&#xff0c;你必须在 原地 修改输入数组 并在使用 O(1) 额…...

CVE-2023-36874 Windows错误报告服务本地权限提升漏洞分析

CVE-2023-36874 Windows错误报告服务本地权限提升漏洞分析 漏洞简介 Windows错误报告服务在提交错误报告前会创建wermgr.exe进程&#xff0c;而攻击者使用特殊手法欺骗系统创建伪造的wermgr.exe进程&#xff0c;从而以system权限执行代码。 影响版本 Windows10 1507 * Wind…...

IDEA遇到 git pull 冲突的几种解决方法

1 忽略本地修改&#xff0c;强制拉取远程到本地 主要是项目中的文档目录&#xff0c;看的时候可能多了些标注&#xff0c;现在远程文档更新&#xff0c;本地的版本已无用&#xff0c;可以强拉 git fetch --all git reset --hard origin/dev git pull关于commit和pull的先后顺…...

[Unity]UI和美术出图效果不一致

问题描述&#xff1a;美术使用PS在Gamma空间下设计的UI图&#xff0c;导入到Unity&#xff0c;因为Unity使用的是线性空间&#xff0c;导致半透明的UI效果和美术设计的不一致。 解决方案&#xff1a; &#xff08;一&#xff09;让美术在线性空间下工作 &#xff08;二&…...

SpringBoot整合JPA和Hibernate框架

Springboot整合JPAHibernate框架【待完成】 随着MybatisPlus技术的发展&#xff0c;JPA和Hibernate技术已经逐步淘汰 JPA遵循了Hibernate框架规则&#xff0c;目前使用的不多 1、添加依赖 <!--jpa--> <dependency><groupId>org.springframework.boot</…...

Java中文件的创建(三种方式),文件常用的方法

文件的创建 方式1&#xff1a; new File(String pathName) 根据路径构建一个File对象方式2&#xff1a; new File(File parent,String child) 根据父目录文件子路径构建方式3&#xff1a; new File(String parent,String child) 根据父目录子路径构建 代码&#xff1a; //方…...

阿里云ACP云计算备考笔记 (5)——弹性伸缩

目录 第一章 概述 第二章 弹性伸缩简介 1、弹性伸缩 2、垂直伸缩 3、优势 4、应用场景 ① 无规律的业务量波动 ② 有规律的业务量波动 ③ 无明显业务量波动 ④ 混合型业务 ⑤ 消息通知 ⑥ 生命周期挂钩 ⑦ 自定义方式 ⑧ 滚的升级 5、使用限制 第三章 主要定义 …...

在rocky linux 9.5上在线安装 docker

前面是指南&#xff0c;后面是日志 sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io -y docker version sudo systemctl start docker sudo systemctl status docker …...

高危文件识别的常用算法:原理、应用与企业场景

高危文件识别的常用算法&#xff1a;原理、应用与企业场景 高危文件识别旨在检测可能导致安全威胁的文件&#xff0c;如包含恶意代码、敏感数据或欺诈内容的文档&#xff0c;在企业协同办公环境中&#xff08;如Teams、Google Workspace&#xff09;尤为重要。结合大模型技术&…...

【单片机期末】单片机系统设计

主要内容&#xff1a;系统状态机&#xff0c;系统时基&#xff0c;系统需求分析&#xff0c;系统构建&#xff0c;系统状态流图 一、题目要求 二、绘制系统状态流图 题目&#xff1a;根据上述描述绘制系统状态流图&#xff0c;注明状态转移条件及方向。 三、利用定时器产生时…...

Android15默认授权浮窗权限

我们经常有那种需求&#xff0c;客户需要定制的apk集成在ROM中&#xff0c;并且默认授予其【显示在其他应用的上层】权限&#xff0c;也就是我们常说的浮窗权限&#xff0c;那么我们就可以通过以下方法在wms、ams等系统服务的systemReady()方法中调用即可实现预置应用默认授权浮…...

SpringTask-03.入门案例

一.入门案例 启动类&#xff1a; package com.sky;import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cache.annotation.EnableCach…...

鸿蒙DevEco Studio HarmonyOS 5跑酷小游戏实现指南

1. 项目概述 本跑酷小游戏基于鸿蒙HarmonyOS 5开发&#xff0c;使用DevEco Studio作为开发工具&#xff0c;采用Java语言实现&#xff0c;包含角色控制、障碍物生成和分数计算系统。 2. 项目结构 /src/main/java/com/example/runner/├── MainAbilitySlice.java // 主界…...

Python ROS2【机器人中间件框架】 简介

销量过万TEEIS德国护膝夏天用薄款 优惠券冠生园 百花蜂蜜428g 挤压瓶纯蜂蜜巨奇严选 鞋子除臭剂360ml 多芬身体磨砂膏280g健70%-75%酒精消毒棉片湿巾1418cm 80片/袋3袋大包清洁食品用消毒 优惠券AIMORNY52朵红玫瑰永生香皂花同城配送非鲜花七夕情人节生日礼物送女友 热卖妙洁棉…...

安宝特方案丨船舶智造的“AR+AI+作业标准化管理解决方案”(装配)

船舶制造装配管理现状&#xff1a;装配工作依赖人工经验&#xff0c;装配工人凭借长期实践积累的操作技巧完成零部件组装。企业通常制定了装配作业指导书&#xff0c;但在实际执行中&#xff0c;工人对指导书的理解和遵循程度参差不齐。 船舶装配过程中的挑战与需求 挑战 (1…...

嵌入式学习笔记DAY33(网络编程——TCP)

一、网络架构 C/S &#xff08;client/server 客户端/服务器&#xff09;&#xff1a;由客户端和服务器端两个部分组成。客户端通常是用户使用的应用程序&#xff0c;负责提供用户界面和交互逻辑 &#xff0c;接收用户输入&#xff0c;向服务器发送请求&#xff0c;并展示服务…...