一、优劣解距离法(TOPSIS)
1 简介
C.L.Hwang 和 K.Yoon 于1981年首次提出 TOPSIS (Technique for Order Preference by Similarity to an Ideal Solution),可翻译为逼近理想解排序法,国内常简称为优劣解距离法。TOPSIS 法是一种常用的综合评价方法,能充分利用原始数据的信息,其结果能精确地反映各评价方案之间的差距。基本过程为先将原始数据矩阵统一指标类型(一般正向化处理)得到正向化的矩阵,再对正向化的矩阵进行标准化处理以消除各指标量纲的影响,并找到有限方案中的最优方案和最劣方案,然后分别计算各评价对象与最优方案和最劣方案间的距离,获得各评价对象与最优方案的相对接近程度,以此作为评价优劣的依据。该方法对数据分布及样本含量没有严格限制,数据计算简单易行。
2 引例
下面是某些同学的C语言成绩,请你为他们打分,该评分能合理的描述他们的成绩
姓名 | 成绩 |
---|---|
小郑 | 60 |
小张 | 98 |
老郭 | 75 |
2.1 一个想法
直接用分数来表示他们之间的评分,这样能表达它们之间的排名,但这样不能很好的表达它们之间的相互关系,因为分数表示的其实是卷面所能表达的的最高分和最低分,并不是能取得的分数,而且很多指标不存在理论上的最大值和最小值,例如衡量经济增长水平的指标:GDP增速。
2.2 更好的想法
最高成绩:max=98,最低成绩:min=60。构造评分公式: x − m i n m a x − m i n \frac{x-min}{max-min} max−minx−min
姓名 | 成绩 | 未归一化的评分 | 归一化的评分 |
---|---|---|---|
小郑 | 60 | (60-60)/(98-60)=0 | 0/1.53=0 |
小张 | 98 | (98-60)/(98-60)=1 | 1/1.53=0.65 |
老郭 | 75 | (75-60)/(98-60)=0.53 | 0.53/1.53=0.34 |
3 指标类型
指标名称 | 指标特点 | 例子 |
---|---|---|
极大型(效益型)指标 | 越大(多)越好 | 成绩、GDP增速、企业利润 |
极小型(成本型)指标 | 越小(少)越好 | 费用、坏品率、污染程度 |
中间型指标 | 越接近某个值越好 | 水质量评估时的PH值 |
区间型指标 | 落在某个区间最好 | 体温、水中植物性营养物量 |
4 算法步骤
4.1 正向化指标
4.1.1 极小型指标---->极大型指标
公式: m a x − x max-x max−x
4.1.2 中间型指标---->极大型指标
公式:
M
=
m
a
x
(
∣
x
i
−
x
b
e
s
t
∣
)
M=max( \left | x_{i}-x_{best} \right | )
M=max(∣xi−xbest∣)
x
~
i
=
1
−
∣
x
i
−
x
b
e
s
t
∣
M
\tilde{x}_{i}=1-\frac{\left | x_{i}-x_{best} \right | }{M}
x~i=1−M∣xi−xbest∣
4.1.3 区间型指标---->极大型指标
公式:
M
=
max
{
a
−
min
{
x
i
}
,
max
{
x
i
}
−
b
}
M=\max \left\{a-\min \left\{x_{i}\right\}, \max \left\{x_{i}\right\}-b\right\}
M=max{a−min{xi},max{xi}−b}
x
~
i
=
{
1
−
a
−
x
i
M
,
x
i
<
a
1
,
a
≤
x
i
≤
b
1
−
x
i
−
b
M
,
x
i
>
b
\tilde{x}_{i}=\left\{\begin{array}{ll} 1-\frac{a-x_{i}}{M} &, x_{i}<a \\ 1 & , a \leq x_{i} \leq b \\ 1-\frac{x_{i}-b}{M} & , x_{i}>b \end{array}\right.
x~i=⎩
⎨
⎧1−Ma−xi11−Mxi−b,xi<a,a≤xi≤b,xi>b
4.2 正向化矩阵标准化
目的:消除量纲影响
十二种处理量纲的方式:https://zhuanlan.zhihu.com/p/225387114