文章目录

熵权法

熵权法是一种客观赋权方法,在具体使用过程中,根据各指标的数据的分散程度,利用信息熵计算出各指标的熵权,再根据各指标对熵权进行一定的修正,从而得到较为客观的指标权重。

熵是系统无序程度的一个度量;根据信息熵的定义,对于某项指标,可以用熵值来判断某个指标的离散程度。其信息熵值越小,指标的离散程度越大, 该指标对综合评价的影响(即权重)就越大,如果某项指标的值全部相等,则该指标在综合评价中不起作用。

信息熵的计算公式由信息学家香农提出:$$H_j=-\sum_{i=1}^mp_i\cdot lnp_i$$

熵权法的计算步骤

1. 假定由$M$个评价对象$M=(M_1,M_2,\cdots,M_m)$,每个评价对象下都有$N$个评价指标$N=(N_1,N_2,\cdots,N_n)$,则可以构建评价矩阵$X=\{x_{ij}\}_{m×n}(i=1,2,\cdots,m;j=1,2,\cdots,n)$,其中$x_{ij}$表示第$i$个评价对象下第$j$项指标的数值。原始决策矩阵为:

$$
X=
\begin{bmatrix}
x_{11} & x_{12} & \cdots & x_{1n} \\
x_{21} & x_{22} & \cdots & x_{2n} \\
\cdots & \cdots & \cdots & \cdots \\
x_{m1} & x_{m2} & \cdots & x_{mn} \\
\end{bmatrix}
$$

2. 如果数据方向不一致时,需要进行提前数据处理,通常为正向化、逆向化、(适度化)三种处理(统称为数据归一化处理)。指标越大越好的我们称之为正向指标,越小越好的则称为逆向指标,亦或者在某一点附近最好的适度指标值。称归一化后的数据为$V$。

正向指标:$v_{ij}=\frac{x_{ij}-\min{x_j}}{\max{(x_j)}-\min{(x_j)}}$

负向指标:$v_{ij}=\frac{\max{x_j}-x_{ij}}{\max{(x_j)}-\min{(x_j)}}$

适度指标:$v_{ij}=\frac{|x_{ij}-x_{\text{适}}|}{\max{(x_j)}-\min{(x_j)}}$

3. 计算每个指标的熵值。熵权法中的信息熵定义为$$H_j=-\frac{1}{lnm}\sum_{i=1}^mp_{ij}ln(p_{ij})$$其中,$p_{ij}=\frac{V_{i,j}}{\sum_{i=1}^nV_{ij}}$,$H$介于0和1之间。并且当$p_{ij}$等于0时,令$p_{ij}ln(p_{ij})=0$即可;也可以在归一化时所有值加1。

4. 最终得到熵权:$$W_j=\frac{1-H_j}{\sum{(1-H_j)}}$$

5. 此时便可以通过线性加权得到最终评估值。其中$Y_i = \sum_{j=1}^nx_{ij}\cdot w_{ij}$

熵权法的优缺点

1.优点
首先,熵权法是客观确定权重的方法,相较于层次分析法等主观法而言具有一定的精确性;
其次,该方法确定出的权重可以进行修正,从而决定了其适应性较高的特点。

2.缺点
该方法的应用范围有限,仅适于计算权重。

TOPSIS法

TOPSIS (Technique for Order Preference by Similarity to an Ideal Solution )法是C.L.Hwang和K.Yoon于1981年首次提出,TOPSIS法根据有限个评价对象与理想化目标的接近程度进行排序的方法,是在现有的对象中进行相对优劣的评价(判断谁好谁坏的)。TOPSIS法是一种逼近于理想解的排序法,该方法只要求各效用函数具有单调递增(或递减)性就行。TOPSIS法是多目标决策分析中一种常用的有效方法,又称为优劣解距离法。基本过程为基于归一化后的原始数据矩阵,采用余弦法找出有限方案中的最优方案和最劣方案,然后分别计算各评价对象与最优方案和最劣方案间的距离,获得各评价对象与最优方案的相对接近程度,以此作为评价优劣的依据。该方法对数据分布及样本含量没有严格限制,数据计算简单易行。

比如说给出十八条河流的水质指标及具体数据,要求建立合适的模型,给这些河流的水质从高到低排排序。此时若使用层次分析法这种主观性较强的方法,容易产生较大的误差,而使用TOPSIS法来判断各河流间的优劣程度就比较合适。

TOPSIS步骤

首先介绍下TOPSIS中指标的四个种类:

指标名称 指标特点 例子
极大型(效益型)指标 越大(多)越好 成绩、GDP增速、企业利润
极小型(成本型)指标 越小(少)越好 费用、坏品率、污染程度
中间型指标 越接近某个值越好 水质量评估时的PH值
区间型指标 落在某个区间最好 体温、水中植物性营养物量

TOPSIS 法使用距离尺度来度量样本差距,使用距离尺度就需要对指标属性进行同向化处理(若一个维度的数据越大越好,另一个维度的数据越小越好,会造成尺度混乱)。通常采用成本型指标向效益型指标转化(即数值越大评价越高,事实上几乎所有的评价方法都需要进行转化),此外,所有数据最好都变成正数。

因此,TOPSIS第一步为正向化:

正向指标不作处理;

逆向指标正向化:$$v_{ij}=\max{x_j}-x_{ij}\text{或}v_{ij}=\frac{1}{x_{ij}}(x\gt 0)$$

中间指标正向化:

$$
x’=
\begin{cases}
2\frac{x-m}{M-m},&m\le x\le \frac 12(M+m) \\
2\frac{M-x}{M-m},&\frac 12(M+m)\le x\le M \\
\end{cases}
$$

区间指标正向化:

$$
x’=
\begin{cases}
1-\frac{a-x}{a-a^*}& x\lt a\\
1 & a\le x\le b\\
1-\frac{x-b}{b^*-b}& x \gt b \\
\end{cases}
$$

其中,$[a,b]$为指标$x$的最佳稳定区间,$[a^*,b^*]$为最大容忍区间。

正向化后构造矩阵、并标准化处理

假定由$M$个评价对象$M=(M_1,M_2,\cdots,M_m)$,每个评价对象下都有$N$个评价指标$N=(N_1,N_2,\cdots,N_n)$,则可以构建评价矩阵$X=\{x_{ij}\}_{m×n}(i=1,2,\cdots,m;j=1,2,\cdots,n)$,其中$x_{ij}$表示第$i$个评价对象下第$j$项指标的数值。此时数据矩阵为:

$$
X=
\begin{bmatrix}
x_{11} & x_{12} & \cdots & x_{1n} \\
x_{21} & x_{22} & \cdots & x_{2n} \\
\cdots & \cdots & \cdots & \cdots \\
x_{m1} & x_{m2} & \cdots & x_{mn} \\
\end{bmatrix}
$$

构造加权规范矩阵,属性进行向量规范化,即每一列元素都除以当前列向量的范数(使用余弦距离度量):

$$z_{ij}=\frac{x_{ij}}{\sum_{i=1}^nx_{ij}^2}$$

由此得到标准化矩阵$Z$:

$$
X=
\begin{bmatrix}
z_{11} & z_{12} & \cdots & z_{1n} \\
z_{21} & z_{22} & \cdots & z_{2n} \\
\cdots & \cdots & \cdots & \cdots \\
z_{m1} & z_{m2} & \cdots & z_{mn} \\
\end{bmatrix}
$$

确定最优方案和最劣方案(亦称为正负理想解)

最优方案$Z^+$由$Z$中每列元素的最大值构成:$$Z^+=(Z_1^+,Z_2^+,\cdots,Z_n^+)$$

最劣方案$Z^-$由$Z$中每列元素的最小值构成:$$Z^-=(Z_1^-,Z_2^-,\cdots,Z_n^-)$$

其中$$Z_j^+=\max{(Z_{1j},Z_{2j},\cdots,Z_{nj})}$$$$ Z_j^-=\min{(Z_{1j},Z_{2j},\cdots,Z_{nj})}$$

计算各评价对象与最优方案、最劣方案的接近程度,采用欧式距离计算公式:
$$D^+=\sqrt{\sum_{j=1}^n(Z_{ij}-Z_j^+)^2}$$
$$D^-=\sqrt{\sum_{j=1}^n(Z_{ij}-Z_j^-)^2}$$

计算各评价对象与最优方案的贴近程度$C_i$

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

其中,$0\le C_i \le 1$,且$C_i$越接近于1表明该对象越好。

熵权TOPSIS法

TOPSIS法用于研究评价对象与‘理想解’的距离情况,结合‘理想解’(正理想解和负理想解),计算得到最终接近程度C值。熵权TOPSIS法核心在于TOPSIS,但在计算数据时,首先会利用熵值(熵权法)计算得到各评价指标的权重,并且将评价指标数据与权重相乘,得到新的数据,利用新数据进行TOPSIS法研究。

通俗地讲,熵权TOPSIS法是先使用熵权法得到新数据newdata(数据×熵权法计算得到的权重),然后利用新数据newdata进行TOPSIS法研究。

熵权TOPSIS法步骤

熵权TOPSIS分析的常见4个分析步骤如下:

  • Step1:数据正向化/逆向化处理;
  • 如果数据中有逆向指标(数字越大反而越不好的意思),此时需要使用‘逆向化’功能处理。让数据变成正向指标(即数字越大越好的意思)。
  • ‘逆向化’的数据计算公式为:(Max-X)/(Max-Min),明显可以看出,针对逆向指标进行‘逆向化’处理后,数据就会变成正向指标。
  • Step2:数据标准化处理;
  • 针对数据进行标准化处理,目的在于解决量纲化问题。常见的标准化处理方法有:‘归一化’,‘区间化’,‘均值化’等。
  • ‘归一化’将所有数据压缩在0到1之间;
  • ‘区间化‘将所有数据压缩在自己设定的区间;’
  • ‘均值化’= 当前值 / 平均值。
  • 一般而言,如果数据全部都大于0,建议使用‘均值化’;如果数据中有负数或者0,建议做‘区间化’让数据限定在一个区间(一般为1~2之间)也可以在求熵用到对数时直接令其为0;当然也可以考虑‘归一化’,让数据全部介于0~1之间。
  • 具体标准化的处理方式有很多种,具体结合文献和自身数据选择使用即可。不同的处理方式肯定会带来不同的结果,但结论一般不会有太大的偏倚。
  • Step3:熵权法求权重,利用权重与数据相乘得到新数据newdata;
  • Step4:利用TOPSIS法计算。
  • 求得TOPSIS相关的指标结果。如正负理想解、贴近程度$C_i$等。