QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2226|回复: 0
打印 上一主题 下一主题

熵权法确定权重

[复制链接]
字体大小: 正常 放大

1189

主题

4

听众

2934

积分

该用户从未签到

跳转到指定楼层
1#
发表于 2023-8-20 17:23 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
这段代码实现了熵权法模型的权重计算。下面是代码的解释:
  • 函数定义:
      d5 S  ~5 H! f* p' `8 ^
    • 函数名为shang,接受三个输入参数:x(决策矩阵),standard(是否已经处理化),flag(判断类型)。
    • 返回权重向量w。
      ; \, Q5 N5 X* M# F* O
  • 变量初始化:

    , U5 x# \2 X0 h7 P
    • 获取决策矩阵x的最小值a和最大值b。
    • 获取决策矩阵的行数rows和列数cols。
    • 如果函数调用时只提供两个参数,并且standard为0(表示尚未进行处理),则将flag设置为全1向量(表示所有指标都是高优指标)。5 `( q& ]7 o7 \. u8 F# T* D
  • 标准化指标:

    : ~5 \6 K" J! `8 t* Y! n, P
    • 如果参数standard为0,表示决策矩阵尚未进行处理化。
    • 使用循环将决策矩阵x的每个元素进行标准化处理。( a7 _7 W' ?& ^4 \5 A. e
      • 如果flag(j)为1,表示该指标为高优指标,使用线性映射将值映射到0到1之间。
      • 否则,表示该指标为低优指标,使用线性映射将值映射到1到0之间。
        $ u# M  d6 A+ H1 U' ?
  • 计算概率矩阵p:
    $ O6 b* v. ^8 ]
    • 计算标准化矩阵x每列的和he。
    • 使用循环计算概率矩阵p,即将标准化矩阵x的每个元素除以对应列的和he(j)。5 a+ C7 B; U9 R  z1 c
  • 指标归一化:
    ! s" k' Q6 f: }& R3 M% _
    • 使用循环将概率矩阵p的每个元素进行指标归一化处理。$ J3 e, v. I' w! R  u0 T" r
      • 如果p(i,j)等于0,将z(i,j)设置为0。
      • 否则,将z(i,j)设置为p(i,j)的自然对数log(p(i,j))。
        4 J3 ~) F3 O0 N. V: o
  • 计算e值:

    ; h2 ]! A3 n% l) X& a
    • 初始化e为大小为1 x cols的零向量。
    • 对概率矩阵p和归一化矩阵z进行逐元素乘积得到矩阵Q。
    • 使用循环计算e值,即对Q的每列求和,乘以常数k。
      8 X. j4 t; E" H4 x3 s$ _1 `9 u; H
  • 计算权重w:

    * ?* a, }8 j9 j7 h/ A0 c- q
    • 计算e值的和he。
    • 使用循环计算权重w,即将(1 - e(i))除以(cols - he)。该步骤将权重归一化,使得所有权重之和为1。2 P8 W7 X4 }8 G2 v& R
该函数的作用是根据熵权法模型,计算决策矩阵中每个指标的权重。熵权法模型是一种多指标决策方法,通过标准化指标和概率计算,得到每个指标的权重,用于综合评价和决策分析。
0 Y3 o2 W2 J5 o4 ^6 k) x' P, t+ y& Q
$ X8 ~2 x( ]$ g+ r4 y3 Z3 b
; b% D" |4 l7 X$ s7 a1 x

shang.m

979 Bytes, 下载次数: 0, 下载积分: 体力 -2 点

售价: 3 点体力  [记录]  [购买]

zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
您需要登录后才可以回帖 登录 | 注册地址

qq
收缩
  • 电话咨询

  • 04714969085
fastpost

关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

手机版|Archiver| |繁體中文 手机客户端  

蒙公网安备 15010502000194号

Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

GMT+8, 2026-6-11 20:53 , Processed in 0.403371 second(s), 55 queries .

回顶部