数学建模-TOPSIS优劣解距离法原理笔记

这里是根据清风数学建模视频课程整理的笔记,我不是清风本人。想系统学习数学建模的可以移步B站搜索相关视频

TOPSIS简介

​ TOPSIS(Technique for Order Preference by Similarity to an Ideal Solution)可翻译为逼近理想解排序法,国内常简称为优劣解距离法。TOPSIS 法是一种常用的综合评价方法,能充分利用原始数据的信息,其结果能精确地反映各评价方案之间的差距。主要用来评价优劣


步骤

第一步 将原始矩阵正向化

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

1、极小型指标→极大型指标

  • m a x − x max-x maxx

  • 若所有元素均为正数,也可以用 1 x \large \frac 1x x1​​

2、中间型指标→极大型指标

{ x i j } \{x_{ij}\} {xij}​​是一组​中间型指标序列,且最佳的数值为 x m a x x_{max} xmax,那么正向化公式如下:

M = m a x { ∣ x i − x m a x } \large M=max\{|x_i-x_{max}\} M=max{xixmax}

x i ‾ = 1 − ∣ x i − x m a x ∣ M \large \overline{x_i}=1-\frac {|x_i-x_{max}|}{M} xi=1Mxixmax​​

如下表:

M = m a x { ∣ 6 − 7 ∣ , ∣ 7 − 7 ∣ , ∣ 8 − 7 ∣ , ∣ 9 − 7 } = 2 \large M=max\{|6-7|,|7-7|,|8-7|,|9-7\}=2 M=max{∣67∣,∣77∣,∣87∣,∣97}=2
在这里插入图片描述
3、区间型指标→极大型指标

{ x i j } \{x_{ij}\} {xij}​是一组区间型指标序列,且最佳的数值为 [ a , b ] [a,b] [a,b]​,那么正向化公式如下:

M = m a x { a − m i n { x i } , m a x { x i } − b } \large M=max\{a-min\{x_i\},max\{x_i\}-b\} M=max{amin{xi},max{xi}b}
在这里插入图片描述
如下表:

a = 36 , b = 37 \large a=36,b=37 a=36,b=37

M = m a x { 36 − 35.2 , 38.4 − 37 } = 1.4 \large M=max\{36-35.2,38.4-37\}=1.4 M=max{3635.2,38.437}=1.4​​
在这里插入图片描述

第二步 正向化矩阵标准化

在这里插入图片描述
在这里插入图片描述

例如 89 ( 8 9 2 + 6 0 2 + 7 4 2 + 9 9 2 ) = 0.5437 \Large \frac {89}{\sqrt(89^2+60^2+74^2+99^2)}=0.5437 ( 892+602+742+992)89=0.5437

第三步 计算得分并归一化

只有一个指标的时候,计算评分公式为 x − m i n m a x − m i n \large \frac {x-min}{max-min} maxminxmin​,变形后 = x − m i n ( m a x − x ) + ( x − m i n ) \large =\frac {x-min}{(max-x)+(x-min)} =(maxx)+(xmin)xmin

x 与最小值的距离 x 与最大值的距离 + x 与最小值的距离 \Large \frac {x与最小值的距离}{x与最大值的距离+x与最小值的距离} x与最大值的距离+x与最小值的距离x与最小值的距离

假设有n个要评价的对象,m个评价指标的标准化矩阵

Z = [ z 11 z 12 ⋯ z 1 m z 21 a 22 ⋯ z 2 m ⋮ ⋮ ⋱ ⋮ z n 1 z n 2 ⋯ z n m ] \large Z=\begin{bmatrix} {z_{11}}&{z_{12}}&{\cdots}&{z_{1m}}\\ {z_{21}}&{a_{22}}&{\cdots}&{z_{2m}}\\ {\vdots}&{\vdots}&{\ddots}&{\vdots}\\ {z_{n1}}&{z_{n2}}&{\cdots}&{z_{nm}}\\ \end{bmatrix} Z= z11z21zn1z12a22zn2z1mz2mznm

定义最大值 Z + = ( Z 1 + , Z 2 + , … , Z m + ) = ( m a x { z 11 , z 21 , … , z n 1 } , m a x { z 12 , z 22 , … , z n 2 } , … , m a x { z 1 m , z 2 m , … , z n m } ) Z^+=(Z_1^+,Z_2^+,…,Z_m^+)=(max\{z_{11},z_{21},…,z_{n1}\},max\{z_{12},z_{22},…,z_{n2}\},…,max\{z_{1m},z_{2m},…,z_{nm}\}) Z+=(Z1+,Z2+,,Zm+)=(max{z11,z21,,zn1},max{z12,z22,,zn2},,max{z1m,z2m,,znm})

定义最小值

Z − = ( Z 1 − , Z 2 − , … , Z m − ) = ( m i n { z 11 , z 21 , … , z n 1 } , m i n { z 12 , z 22 , … , z n 2 } , … , m i n { z 1 m , z 2 m , … , z n m } ) Z^-=(Z_1^-,Z_2^-,…,Z_m^-)=(min\{z_{11},z_{21},…,z_{n1}\},min\{z_{12},z_{22},…,z_{n2}\},…,min\{z_{1m},z_{2m},…,z_{nm}\}) Z=(Z1,Z2,,Zm)=(min{z11,z21,,zn1},min{z12,z22,,zn2},,min{z1m,z2m,,znm})

定义第 i ( i = 1 , 2 , … , n ) i(i=1,2,…,n) i(i=1,2,,n)个评价对象与最大值的距离 D i + = ( ∑ j = 1 m ( Z j + − z i j ) 2 ) D_i^+=\sqrt(\sum_{j=1}^m(Z_j^+-z_{ij})^2) Di+=( j=1m(Zj+zij)2)

定义第 i ( i = 1 , 2 , … , n ) i(i=1,2,…,n) i(i=1,2,,n)个评价对象与最大值的距离 D i − = ( ∑ j = 1 m ( Z j − − z i j ) 2 ) D_i^-=\sqrt(\sum_{j=1}^m(Z_j^--z_{ij})^2) Di=( j=1m(Zjzij)2)

从而我们可以计算得到第 i ( i = 1 , 2 , … , n ) i(i=1,2,…,n) i(i=1,2,,n)个评价对象未归一化的得分: S i = D i − D i + + D i − \large S_i=\frac {D_i^-}{D_i^++D_i^-} Si=Di++DiDi

很明显 0 ≤ S i ≤ 1 0≤S_i≤1 0Si1,且 S i S_i Si越大 D i + D_i^+ Di+越小​

例如下表:

在这里插入图片描述
在这里插入图片描述

带权重的TOPSIS

在这里插入图片描述
在这里插入图片描述

  • 权重可以用层次分析法或者熵权法来确定(层次分析法更主观,熵权法更客观)
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值