学习day2 数学建模 TOPSIS

TOPSIS

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

基本步骤

  1. 将原始矩阵正向化 (转换为极大型指标)
  2. 正向矩阵标准化 (消除量纲的影响)
  3. 计算得分并归一化

将原始矩阵正向化

在这里插入图片描述
现实生活中主要是这么几种指标,为了适合使用TOPSIS,都需要转换成极大型指标。

转换规则如下:
在这里插入图片描述
极小值指标:用最大值减去属性值即可。
中间值指标:自己选定一个最优中间值,计算出离中间值的距离与最大距离的占比。
区间型指标:选定一个最佳区间,算出离双端的最大距离,计算出离最近一端所占的比值。

如:
在这里插入图片描述
身高为中间值指标,设取的中间值为165。M=175-165=10。B的转换值为 1 − ∣ 164 − 165 ∣ 10 = 0.9 1- \frac{|164-165|}{10} = 0.9 110∣164165∣=0.9
体重为区间型指标,设区间为[90,100]。M=120-100-20。B的转换值为 1 − ∣ 80 − 90 ∣ 20 = 0.5 1-\frac{|80-90|}{20} = 0.5 120∣8090∣=0.5

正向矩阵标准化

主要是为了消除量纲的影响,比如:1000km和38℃,如果不进行标准化,1000km的影响会远大于38℃。

标准化公式为:
Z i j = x i j ∑ i = 1 n x i j 2 Z_{ij} = \frac{x_{ij}}{\sqrt{\sum_{i=1}^{n}x_{ij}^2}} Zij=i=1nxij2 xij

也就是每个元素 除以 该列所有元素的平方合开根号。
比如A的颜值:
9 9 2 + 8 2 + 6 2 ≈ 0.669 \frac{9}{\sqrt{9^2+8^2+6^2}} \approx 0.669 92+82+62 90.669

在这里插入图片描述

计算得分并归一化

在这里插入图片描述

计算得分:

取每列的最大值和最小值分别组成 Z + Z^+ Z+ Z − Z^- Z,也就是最好的点和最差的点。

计算每个点到最好的和最差点的欧式距离 D i + D_i^+ Di+ D i − D_i^- Di

计算得分 S i = D i − D i + + D i − S_i = \frac{D_i^-}{D_i^+ + D_i^-} Si=Di++DiDi

进行归一化转换成百分比:

进行归一化的主要目的是为了转换成百分比。

S i ~ = S i ∑ i = 1 n S i ∗ 100 \tilde{S_i} = \frac{S_i}{\sum_{i=1}^{n}S_i}*100 Si~=i=1nSiSi100

也就是每个元素除以每列的和。

在这里插入图片描述
比如:

上图中 Z + = ( 0.669 , 0.919 , 0.976 , 0.894 ) Z^+=(0.669,0.919,0.976,0.894) Z+=(0.669,0.919,0.976,0.894) Z − = ( 0.446 , 0 , 0 , 0 ) Z^-=(0.446,0,0,0) Z=(0.446,0,0,0)

A的颜值:
D i + = ( 0.669 − 0.669 ) 2 + ( 0.919 − 0 ) 2 + ( 0.976 − 0 ) 2 + ( 0.894 − 0 ) 2 = 1.611 D_i^+=\sqrt{(0.669-0.669)^2+(0.919-0)^2+(0.976-0)^2+(0.894-0)^2} = 1.611 Di+=(0.6690.669)2+(0.9190)2+(0.9760)2+(0.8940)2 =1.611
D i − = ( 0.446 − 0.669 ) 2 + ( 0 − 0 ) 2 + ( 0 − 0 ) 2 + ( 0 − 0 ) 2 = 0.223 D_i^-=\sqrt{(0.446-0.669)^2+(0-0)^2+(0-0)^2+(0-0)^2} = 0.223 Di=(0.4460.669)2+(00)2+(00)2+(00)2 =0.223
S i = 0.223 0.223 + 1.611 = 0.122 S_i = \frac{0.223}{0.223+1.611}=0.122 Si=0.223+1.6110.223=0.122

同理计算出其他的,进行归一化:
S i ~ = 0.122 0.122 + 0.624 + 0.622 = 8.9 % \tilde{S_i} = \frac{0.122}{0.122+0.624+0.622} = 8.9\% Si~=0.122+0.624+0.6220.122=8.9%

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值