TOPSIS算法(优劣解距离法)的使用举例与matlab实现

本文介绍了TOPSIS(优劣解距离法)的起源、优点,详细阐述了算法步骤,包括决策矩阵形成、加权决策矩阵计算、每个方案的优劣值计算,并给出了一个使用例子及MATLAB代码实现。
摘要由CSDN通过智能技术生成

一、算法的提出

 
​  C.L.Hwang和K.Yoon在1981年首次提出TOPSIS (Technique for Order Preference by Similarity to an Ideal Solution)算法,直接即逼近理想解排序法,国内通常称之为优劣解距离法。
 
  相比较于层次分析法AHP与模糊综合评价法,TOPSIS算法能够充分利用原始数据的信息,并能更精确反映出各个状况/方案之间的优劣与差距。
 
  ​TOPSIS算法的基本过程为先将原始数据矩阵(决策矩阵)进行正向化处理得到正向化矩阵,再进行标准化处理消除各指标量纲的影响。再通过AHP或其他方法得到各个因素之间的权重向量,构造出新的加权决策矩阵。
  
  然后在所有的数据中找到最优和最劣方案,计算各个评价对象相对于最优方案与最劣方案的欧氏距离,最终获得各评价对象与最优方案的相对接近程度,以此作为评价优劣的依据。
 
  TOPSIS算法对数据的分布及含量等没有严格限制,且数据易处理计算简单,思路清晰,因而被广泛使用。

二、TOPSIS算法的一般步骤

注意:下列的交标含义请仔细辨别,交标含义并未相同含义贯穿始终。
如果有不清楚的地方可以在评论区指出,有人指出后我再修改交标含义。

1.形成决策矩阵

设共有 n n n个评价对象,每个评价对象含有 m m m个参数指标。将 n n n个评价对象的参数指标排列得到 n × m n×m n×m矩阵,即决策矩阵:
[ x 11 x 12 … x 1 m x 21 x 22 … x 2 m … … ⋱ … x n 1 x n 2 … x n m ] \begin{bmatrix} x_{11} & x_{12} & \dots & x_{1m} \\ x_{21} & x_{22} & \dots& x_{2m}\\ \dots& \dots & \ddots& \dots\\ x_{n1}& x_{n2}& \dots& x_{nm}\end{bmatrix} x11x21xn1x12x22xn2x1mx2mxnm

2.计算加权决策矩阵

(1)指标正向化处理

常见的四种指标(即评价对象的 m m m个参数指标所属类型)

指标类型 指标特点 举例
极大型指标(效益型) 越大越好 成绩、利润
极小型指标(成本型) 越小越好 成本、费用
中间型指标 越接近某个值越好 人体所处环境温度
区间型指标 落在某个区间最好 体温、饮用水中的矿物质含量

为了后续处理,我们需要将所有类型的指标转换为极大值指标,且需要将所有指标类型统一转换为各自对应的正向化指标,准换的方式可以不一样,下面给出一些转换公式的参考。

a.极大值指标正向化

x i ′ = x i − x m i n x m a x − x m i n x'_i=\frac{x_i-x_{min}}{x_{max}-x_{min}} xi=xmaxxminxixmin

b.极小型指标极大正向化

x i ′ = x m a x − x i x m a x − x m i n x'_{i}=\frac{x_{max}-x_i}{x_{max}-x_{min}} xi=xmaxxminxmaxxi

c.中间型指标极大正向化

x i ′ = 1 − ∣ x i − x b e s t ∣ ∣ x i − x b e s t ∣ m a x x'_i=1-\frac{|x_i-x_{best}|}{|x_i-x_{best}|_{max}} xi=1xixbestmaxxixbest

d.区间型指标极大正向化

设最佳区间为 [ a , b ] [a,b] [a,b],且记
M = max ⁡ { a − min ⁡ { x i } , max ⁡ { x i } − b } M=\max\{a-\min\{x_i\},\max\{x_i\}-b\}

  • 34
    点赞
  • 220
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值