数学建模·熵权法

熵权法

一种计算评价指标之间权重的方法。熵权法是一种客观的方法,没有主观性,比较可靠。

具体定义

熵权法的核心在于计算信息熵,信息熵反映了一个信息的紊乱程度,体现了信息的可靠性
在这里插入图片描述

具体步骤

Step1正向化处理

将所以评价指标转换为极大型,目的是将数据进一步转变为概率

  • 将极小型转换为极大型
    极小型是指评价指标越小越好
    在这里插入图片描述
  • 代码如下:注意矩阵X可以是列向量
function[res]=Min2Max(X)res=max(X)-X;
end

  • 将中间型转换为极大型

中间型是指评价指标越接近最佳值越好,其中最佳值是给出的
在这里插入图片描述

  • 代码如下
function[res]=Mid2Max(X,best)M=max(abs(X-best));res=1-abs(X-best)/M;
end

  • 将区间型转换为极大型

区间型是指评价指标在区间内最好,在区间外欠佳
在这里插入图片描述

  • 代码如下
function[res]=interval2Max(X,a,b)M=max(a-min(X),max(X)-b);for i=1:size(X)if X(i)>=a&&X(i)<=bX(i)=1;elseif X(i)<aX(i)=1-(a-X(i))/M;elseX(i)=1-(X(i)-b)/M;endendres=X;
end

Step2标准化

标准化是将每一列的每一个元素除以每一列的元素平方的求和
在这里插入图片描述
标准化的意义:消除计量单位不同造成的影响

概率矩阵

如果说正向化使每个数据是是不是好事的程度,这时候归一化就可以得到好事放生的概率
在这里插入图片描述

Step3利用信息熵计算权重集

注意信息熵的计算公式里有对数,所以应该适当修改概率矩阵值为0的项
这个公式本质上也是对每一列中所有元素按照公式求和,最后除以ln n归一化处理
在这里插入图片描述

主体代码

%% 读取数据
X=xlsread('blind date.xlsx');
disp("成功读取!")
%% 正向化
disp("现在进行正向化操作,请按照提示操作")
vec_col=input("请输入需要正向化的列数,以数组的形式输入\n");
for i=1:size(vec_col,2)%1是行数2是列数
flag = input(['第' num2str(vec_col(i)) '列是哪类数据(【1】:极小型 【2】:中间型 【3】:区间型),请输入序号:\n']);if flag==1X(:,vec_col(i))=Min2Max(X(:,vec_col(i)));elseif flag==2best=input("请你传入最佳值\n");X(:,vec_col(i))=Mid2Max(X(:,vec_col(i)),best);elsearr=input("请你输入区间的左右端点,以数组的形式\n");X(:,vec_col(i))=Interval2Max(X(:,vec_col(i)),arr(1),arr(2));end
end
disp("正向化完成!");%% 标准化
[n,m]=size(X);
Square_X=X.*X;
Sum_X=sum(Square_X).^0.5;
Stand_X=X./repmat(Sum_X,n,1);
disp("标准化完成!")
%% 概率矩阵P
P=Stand_X./repmat(sum(Stand_X),n,1);
for i=1:nfor j=1:mif P(i,j)==0P(i,j)=0.000001endend
end
H=sum(-P.*log(P));
e=H./log(n);
d=1-e;
d=d./sum(d);
disp("计算完成,下面是正向矩阵、标准矩阵和计算得出的权重矩阵");
disp(X);
disp(Stand_X);
disp(d);```

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

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

相关文章

玩客云刷入海纳思系统

玩客云(晶晨S805)刷机 | 海纳思系统 (ecoo.top) https://www.ecoo.top/update/soft_init/amlproject/USB_Burning_Tool_v2.1.3.exe https://node4.histb.com:9088/update/system/s805/hinas_s805_eMMC.burn.img.zip

LabVIEW液压数据采集测试系统

液压系统是装载机的重要组成部分&#xff0c;通过液压传动和控制实现各项作业功能&#xff0c;如提升、倾斜、转向等。液压系统的性能直接影响装载机的作业效率和稳定性。为了保证装载机液压系统的正常运行和优化设计&#xff0c;需要对其进行数据采集和测试。本文介绍了一套基…

Wireshark 对 https 请求抓包并展示为明文

文章目录 1、目标2、环境准备3、Wireshark 基本使用4、操作步骤4.1、彻底关闭 Chrome 进程4.2、配置 SSLKEYLOGFILE [核心步骤]4.3、把文件路径配置到 Wireshark 指定位置4.4、在浏览器发起请求4.5、抓包配置4.6、过滤4.6.1、过滤域名 http.host contains "baidu.com4.6.2…

通用图形处理器设计GPGPU基础与架构(三)

一、前言 前两篇已经介绍了 GPGPU 的背景 和 GPGPU 的编程模型相关的内容&#xff0c;本文将在 SIMT 计算模型的基础上&#xff0c;介绍 GPGPU 控制核心架构和微体系结构的设计。 二、CPU-GPGPU 异构计算系统 一个由 CPU 和 GPGPU 构成的异构计算平台如下图所示&#xff0c;GP…

树结构添加分组,向上向下添加同级,添加子级

树结构添加分组&#xff0c;向上向下添加同级&#xff0c;添加子级 效果代码实现页面js 效果 代码实现 页面 <el-tree :data"treeData" :props"defaultProps" :expand-on-click-node"false":filter-node-method"filterNode" :ref&…

Hive的基本操作(查询)

1、基础查询 基本语法 select 字段列表|表达式|子查询 from 表(子查询|视图|临时表|普通表) where [not] 条件A and|or 条件B --先&#xff1a;面向原始行进行筛选 group by 字段A[,字段B,...] > 分组【去重处理】 having 聚合条件(非原始字段条件) --再&#x…

iPhone数据恢复:如何从iPhone恢复误删除的短信

来自iPhone的意外删除的短信可能很关键。它们可能是来自您常用应用程序、银行交易、付款收据的重要通知&#xff0c;也可能是来自朋友的重要文本、孩子的学校通知等。 如果您也从iPhone丢失了此类消息&#xff0c;我们在这里分享如何在没有备份以及有备份的情况下在iPhone上恢…

热门软件缺陷管理工具2024:专业评测与建议

国内外主流的10款软件缺陷管理工具软件对比&#xff1a;PingCode、Worktile、禅道、Tapd、Teambition、Tower、JIRA、Bugzilla、MantisBT、Trac。 在软件开发过程中&#xff0c;管理缺陷和漏洞常常成为一项挑战&#xff0c;尤其是在项目规模庞大时。选择一个高效的软件缺陷管理…

object-C 解答算法:两数之和(leetCode-1)

两数之和(leetCode-1) 题目如下图:(也可以到leetCode上看完整题目,题号1) 解答方法一: 最简单的方法就是双指针遍历数组.代码如下 - (NSMutableArray *)sumOfTwoNumbers:(NSMutableArray *)array target:(int)target {NSMutableArray * resultArray [[NSMutableArray alloc…

探索Facebook在人工智能领域的最新进展

在当今快速发展的科技领域中&#xff0c;人工智能&#xff08;AI&#xff09;作为一项关键技术&#xff0c;正在逐步改变着社交媒体的面貌。作为全球最大的社交平台之一&#xff0c;Facebook积极探索和应用人工智能&#xff0c;以提升用户体验、增强平台安全性并推动技术创新。…

数学建模·灰色关联度

灰色关联分析 基本原理 灰色关联分析可以确定一个系统中哪些因素是主要因素&#xff0c;哪些是次要因素&#xff1b; 灰色关联分析也可以用于综合评价&#xff0c;但是由于数据预处理的方式不同&#xff0c;导致结果 有较大出入 &#xff0c;故一般不采用 具体步骤 数据预处理…

实战案例:用百度千帆大模型API开发智能五子棋

前随着人工智能技术的迅猛发展&#xff0c;各种智能应用层出不穷。五子棋作为一款经典的棋类游戏&#xff0c;拥有广泛的爱好者。将人工智能技术与五子棋结合&#xff0c;不仅能提升游戏的趣味性和挑战性&#xff0c;还能展现AI在复杂决策问题上的强大能力。在本篇文章中&#…

WPF实现一个带旋转动画的菜单栏

WPF实现一个带旋转动画的菜单栏 一、创建WPF项目及文件1、创建项目2、创建文件夹及文件3、添加引用 二、代码实现2.ControlAttachProperty类 一、创建WPF项目及文件 1、创建项目 打开VS2022,创建一个WPF项目&#xff0c;如下所示 2、创建文件夹及文件 创建资源文件夹&…

LVS+Nginx高可用集群---keepalived原理与实战

1.高可用集群架构keepalived双机主备原理 高可用&#xff1a;(HA) 部署nginx存在两台nginx。当主节点的nginx宕机停止服务的时候&#xff0c;nginx备用机起到跟nginx(主) keepalived的概念&#xff1a;解决单点故障&#xff1b;组件免费&#xff1b;可以实现高可用HA机制&…

Unity不用脚本实现点击按钮让另外一个物体隐藏

1.首先在场景中创建一个按钮和一个其他随便什么东西 2.点击按钮中的这个加号 3.然后将刚刚你创建的物体拖到这里来 4.然后依次点击下面这些给按钮绑定事件 5.运行游戏并点击按钮&#xff0c;就会发现拖进来的物体消失了 总结&#xff1a;如果按钮的功能单一&#xff0c;可以使用…

EPLAN 去掉PDF中的红色跳转标识

EPLAN PDF图纸导出后体验跳转标识会有红色标识&#xff0c;如何去掉呢&#xff1f;下面介绍一下方法&#xff1a; 此为现象&#xff1a; EPLAN 2.9的帮助文档里提示&#xff1a; 在导出的 PDF 文档中&#xff0c;跳转后的跳转目标现在通过红色的闪烁框进行标识。可能的跳转目…

尚硅谷大数据技术-数据湖Hudi视频教程-笔记03【Hudi集成Spark】

大数据新风口&#xff1a;Hudi数据湖&#xff08;尚硅谷&Apache Hudi联合出品&#xff09; B站直达&#xff1a;https://www.bilibili.com/video/BV1ue4y1i7na 尚硅谷数据湖Hudi视频教程百度网盘&#xff1a;https://pan.baidu.com/s/1NkPku5Pp-l0gfgoo63hR-Q?pwdyyds阿里…

让AI语言模型自由飞翔:LangChain框架的奇妙世界

今天&#xff0c;我将为大家揭开一项令人激动的技术——LangChain。想象一下&#xff0c;如果能将人工智能的强大能力与我们日常使用的数据和工具无缝连接&#xff0c;那将开启怎样崭新且无限的可能&#xff01; LangChain&#xff0c;一个专为大型语言模型设计的框架&#xf…

数据分析——numpy教程

1.NumPy&#xff1a; 是Python的一个开源的数值计算库。可以用来存储和处理大型矩阵&#xff0c;比python自身的嵌套列表结构要高效&#xff0c;支持大量的维度数组与矩阵运算&#xff0c;此外也针对数组运算提供大量的数学函数库&#xff0c;包括数学、逻辑、形状操作、排序、…

Python实现批量转换图片格式:告别单调乏味的图片圈套!

各位小伙伴们&#xff0c;你是不是也厌倦了那些单调乏味的图片格式&#xff1f;又或者饱受不同格式的图片文件所困扰&#xff1f;别急&#xff0c;今天小编来给你送上一份活泼有趣的Python教程&#xff0c;让我们一起告别单调&#xff0c;迎接多彩多姿的图片世界吧&#xff01;…