中间型转化公式为以ph值为例 , 最优解为7 。一组数据有7 , 8 , 9三个变量 , 则 , , 。所以。取i=2 , 原始数据为8 , 转化后位1-(8-7)/2=1/2 。
区间型转化较为复杂 , 若{}为一组中间型指标序列 , 且最佳的区间为[a,b],那么正向化的公式如下:
以人体体温为例 , 原始数据为35.2 , 35.8 , 36.6 , 37.1 , 37.8 , 38.4 。最优区间为36到37 , 则a=36 , b=37 , M=max(36-35.2 , 38.4-37)=1.4 , 代入上述公式即可得到转换后的数据 。
step2:正向化矩阵标准化
假设有n个要评价的对象 , m个正向化的评价指标 , 则可以构建正向化矩阵 。为第一个对象在第二个评价指标上正向化之后的得分 。
将标准化矩阵记为Z , 则其中的每一个元素都等于对应矩阵X中的元素取值除以所在列元素的平方和开根号 , 即。
step3:计算得分并归一化
n个评价对象 , m个评价指标的标准化矩阵如下:
定义最大值为每列元素最大值的集合
定义最小值为每列元素最小值的集合
则第i个评价对象与最大值的距离为j个指标分别与最大值计算距离之后的求和:
同理 , 第i个评价对象与最小值的距离为j个指标分别与最小值计算距离之后的求和:
那么 , 第i个评价对象未归一化的得分为 , 即z与最小值的距离除以z与最大值的距离和z与最小值的距离之和 。因为距离都是非负的 , 很明显取值在0和1之间 , 越大 , 越大 , 即越接近最优解 。
归一化之后的得分为,此处应满足。
归一化和标准化本质上都是为了消去量纲的影响 , 结果归一化之后更容易比较大小 。
得到所有方案的得分之后 , 建议对排序后的分数进行可视化展示 , 可利用excel绘制柱形图 。
按照上图所示 , 方案5的得分最高 , 所以应选择方案5 。
上述过程为基本topsis模型 , 该模型默认所有指标的权重相同 , 可以利用层次分析法或熵权法确定指标权重 , 构建带权重的topsis模型 。
资料来源:
以上资料来源于b站(up主:数学建模学习交流);seid=6343799996011307859 。
感谢up主的整理 , 视频讲述很详细 , 适合新手入门哦~
文章插图
如何搞定熵权topsis?一、分析前准备
1.研究背景
TOPSIS法用于研究评价对象与‘理想解’的距离情况 , 结合‘理想解’(正理想解和负理想解) , 计算得到最终接近程度C值 。熵权TOPSIS法核心在于TOPSIS , 但在计算数据时 , 首先会利用熵值(熵权法)计算得到各评价指标的权重 , 并且将评价指标数据与权重相乘 , 得到新的数据 , 利用新数据进行TOPSIS法研究 。
通俗地讲 , 熵权TOPSIS法是先使用熵权法得到新数据newdata(数据成熵权法计算得到的权重) , 然后利用新数据newdata进行TOPSIS法研究 。
例如:当前有一个项目进行招标 , 共有4个承包商 , 分别是A,B,C,D厂 。由于招标需要考虑多个因素 , 各个方案指标的优劣程度也并不统一 。为了保证评价过程中的客观、公正性 。因此 , 考虑通过熵权TOPSIS法 , 对各个方案进行综合评价 , 从而选出最优方案 。
2.数据格式
熵权TOPSIS法用于研究指标与理想解的接近度情况 。1个指标占用1列数据 。1个研究对象为1行 , 但研究对象在分析时并不需要使用 , SPSSAU默认会从上到下依次编号 。
【topsis的简单介绍】 二、SPSSAU操作
(1)登录账号后进入SPSSAU页面 , 点击右上角“上传数据” , 将处理好的数据进行“点击上传文件”上传即可 。
(2)拖拽分析项
在“综合评价”模块中选择“熵权topsis”方法 , 将分析项拖拽到右侧分析框中 , 点击“开始分析”即可 。
三、SPSSAU数据处理
1.数据正向化/逆向化处理
如果数据中有逆向指标(数字越大反而越不好的意思) , 此时需要使用‘SPSSAU数据处理-生成变量’的‘逆向化’功能处理 。让数据变成正向指标(即数字越大越好的意思) 。