评价模型:TOPSIS法(理想解法)

简介: 评价模型:TOPSIS法(理想解法)

写在前面:

博主本人大学期间参加数学建模竞赛十多余次,获奖等级均在二等奖以上。为了让更多学生在数学建模这条路上少走弯路,故将数学建模常用数学模型算法汇聚于此专栏,希望能够对要参加数学建模比赛的同学们有所帮助。


1.算法介绍


TOPSIS法也称为理想解法,是一种有效的多指标评价方法。这种方法通过构造评价问题的正理想解和负理想解及各指标的最优解和最劣解,通过计算每个方案到理想方案的相对贴近度,即靠近正理想解和远离负理想解的程度,来对方案进行排序,从而选出最优方案。


2.算法步骤


(1)用向量规范化的方法求得规范决策矩阵


设原问题的决策矩阵,规范化后的决策矩阵为,其中


5b2a9ecb506d86b59d8151b869f930f3_524471f701634af38d075b2aad041de1.png


其中m为矩阵数据的行数,n为矩阵数据的列数。


(2)构造加权规范阵b434cb020e20d2d3084b58afd53d0e52_eq_C%3D%28c_%7Bij%7D%29_%7Bm%5Ctimes%20n%7D.png


设各属性的权重为wij,则


cd4ed071a6d0a0e2a8f8a1f697ff2aa4_abc5c53caadf4093a40086a56193ba5c.png


(3)确定正理想解和负理想解


3f4bf6a582f88d1f88c1e914eb5f54df_7eda2618d0694078a8d4bbccb605012b.png

20442c38ba5888b8edc430da954d1bb1_cc8d8c1e96904f488f570c6ea6e52ad2.png


(4)计算各方案到正理想解与负理想解的距离


备选方案到正理想解的距离为


db888aeba9c0dc4e997af5f3b2cab0ec_fbf54945e62448d099e7f9cebe34594e.png


备选方案到负理想解的距离


3b6c130b60aa08914f7566ea634c5410_21a8c62b919f41168ba08ce2c1ca74eb.png


(5)计算各方案的综合评价指数


aa3835b5a96e967a6504415a32b3b1a5_0c07f13d2e354ee6865bd345935bed42.png


(6)将由大到小进行排序


3.案例分析


       为了客观的评价我国研究生教育的实际状况和各研究生院的教学质量,国务院学位委员会办公室组织过一次研究生院的评估,为了取得经验,先选5所研究生院,收集有关数据资料进行了试评估,表中是所给出的部分数据。


31f95015329dfd3dfde7d78bf91c49a8_2c5bebebe4cb44e5a22ebb07c8df1907.png


3.1模型建立与求解


(1)对属性进行向量规范化


对生师比进行区间型属性变换:设给定的最优区间为,为无法容忍下限,1e3ba3794757e442c0baffc9c324a46a_eq_a_%7Bj%7D%5E%7B%27%27%7D.png为无法容忍上限,则


68068a49d8783c038c77d2d51ae24780_19c4ed515edf47aaa1e0207007391efe.png


设研究生院的生师比的最优区间为[5,6],下限为2,上限为12,对生师比进行规范化处理得到的结果如下:

处理前

处理后

5

1

6

1

7

0.8333

10

0.3333

2

0

clc,clear
x2=@(qujian,lb,ub,x)(1-(qujian(1)-x)./(qujian(1)-lb)).*(x>=lb&x<qujian(1))+...
(x>=qujian(1)&x<=qujian(2))+(1-(x-qujian(2))./(ub-qujian(2))).*(x>qujian(2)&x<=ub);
qujian=[5,6];lb=2;ub=12;
ssb=[5 6 7 10 2]';
ssb2=x2(qujian,lb,ub,ssb)

对人均专著、科研经费、逾期毕业率进行向量规范化处理,得到如下结果:


人均专著   生师比     科研经费   逾期毕业率  


   0.0638    0.5970    0.3449    0.4546


   0.1275    0.5970    0.4139    0.5417


   0.2550    0.4975    0.4829    0.6481


   0.5738    0.1990    0.6898    0.2225


   0.7651         0        0.0276    0.1741


(2) 计算加权的向量规范化属性矩阵


设置权向量w=[0.2,0.3,0.4,0.1],得到加权的向量规范化属性矩阵如下:


人均专著   生师比     科研经费   逾期毕业率  


   0.0128    0.1791    0.1380      0.0455


   0.0255    0.1791    0.1656      0.0542


   0.0510    0.1493    0.1931      0.0648


   0.1148    0.0597    0.2759      0.0222


   0.1530         0        0.0110      0.0174


(3)求出各属性的正理想解和负理想解


正理想解:Cstar = 1×4  


   0.1530    0.1791    0.2759    0.0174


负理想解:C0 = 1×4  


   0.0128         0    0.0110    0.0648


(4)求出各方案到正理想解和负理想解的距离


各方案到正理想解的距离


Sstar = 1×5  


   0.1987    0.1726    0.1428    0.1255    0.3198


各方案到负理想解的距离


S0 = 1×5  


   0.2204    0.2371    0.2385    0.2932    0.1481


(5)计算各方案的排序指标值并从优到劣进行排序


f = 1×5  


   0.5258    0.5787    0.6255    0.7003    0.3165


ind = 1×5  


    4     3     2     1     5


3.2 结果分析


根据求解结果可知:


1~5号研究生院教学质量的得分分别是0.5258,0.5787,0.6255,0.7003,0.3165


得分排名依次为4 3 2 1 5


Matlab代码:


clc,clear
a=[0.1 5 5000 4.7
0.2 6 6000 5.6
0.4 7 7000 6.7
0.9 10 10000 2.3
1.2 2 400 1.8];
[m,n]=size(a);
x2=@(qujian,lb,ub,x)(1-(qujian(1)-x)./(qujian(1)-lb)).*(x>=lb&x<qujian(1))+...
(x>=qujian(1)&x<=qujian(2))+(1-(x-qujian(2))./(ub-qujian(2))).*(x>qujian(2)&x<=ub);
qujian=[5,6];lb=2;ub=12;
a(:,2)=x2(qujian,lb,ub,a(:,2));
for j=1:n
b(:,j)=a(:,j)/norm(a(:,j))%向量规范化
end
w=[0.2 0.3 0.4 0.1];
c=b.*repmat(w,m,1)
Cstar=max(c);%正理想解
Cstar(4)=min(c(:,4))
C0=min(c);%负理想解
C0(4)=max(c(:,4))
for i=1:m
Sstar(i)=norm(c(i,:)-Cstar);%求到正理想解的距离
S0(i)=norm(c(i,:)-C0);%求到负理想解的距离
end
Sstar,S0
f=S0./(Sstar+S0)
[sf,ind]=sort(f,'descend')

TOPSIS搭配熵权法会更好用哦!


相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
目录
相关文章
|
算法 安全 Java
z3-solver求解器
一个非常高级的工具,SMT求解器。应用领域非常广,解各类方程,解各类编程问题(例如解数独),解逻辑题等都不在话下。
|
数据采集 机器学习/深度学习 资源调度
归一化和标准化
归一化和标准化
|
敏捷开发 存储 搜索推荐
《阿里巴巴Java开发手册v1.4.0(详尽版)》更新,新增16条设计规约
阿里巴巴集团推出的《阿里巴巴Java开发手册》是阿里巴巴近万名开发同学集体智慧的结晶,以开发视角为中心,详细列举如何开发更加高效、更加容错、更加有协作性,力求知其然,更知其不然,结合正反例,让Java开发者能够提升协作效率、提高代码质量。
741463 3
|
存储 SQL NoSQL
HarmonyOS学习路之开发篇—数据管理(分布式数据服务)
分布式数据服务(Distributed Data Service,DDS) 为应用程序提供不同设备间数据库数据分布式的能力。通过调用分布式数据接口,应用程序将数据保存到分布式数据库中。通过结合帐号、应用和数据库三元组,分布式数据服务对属于不同应用的数据进行隔离,保证不同应用之间的数据不能通过分布式数据服务互相访问。在通过可信认证的设备间,分布式数据服务支持应用数据相互同步,为用户提供在多种终端设备上最终一致的数据访问体验。
|
4月前
|
JavaScript 前端开发 机器人
Scratch少儿编程软件下载安装使用教程(2026最新版)
Scratch是由MIT媒体实验室开发的免费图形化编程工具,面向8-16岁青少年。无需写代码,拖拽彩色积木即可创作动画、游戏与交互故事,零英语基础也能上手,全球超1亿项目共享。(239字)
|
机器学习/深度学习 运维 算法
【两阶段鲁棒优化问题】用列和约束生成方法求解两阶段鲁棒优化问题(Matlab代码实现)
【两阶段鲁棒优化问题】用列和约束生成方法求解两阶段鲁棒优化问题(Matlab代码实现)
545 3
|
安全 数据处理 数据安全/隐私保护
C/S架构与B/S架构的适用场景分析
C/S架构(客户端/服务器架构)与B/S架构(浏览器/服务器架构)在适用场景上各有特点,主要取决于应用的具体需求、用户群体、系统维护成本、跨平台需求等因素。
1649 6
|
存储 Python
数据包络分析(Data Envelopment Analysis, DEA)详解与Python代码示例
数据包络分析(Data Envelopment Analysis, DEA)详解与Python代码示例
|
算法 安全 测试技术
电力系统——基于10机39节点的电力系统仿真(Matlab、Simulink仿真)
电力系统——基于10机39节点的电力系统仿真(Matlab、Simulink仿真)
567 0
|
XML 算法 API
通过亚马逊产品广告API获取国际商品详情的技术实现
本文详细介绍如何通过亚马逊产品广告API获取国际商品信息。首先,需注册亚马逊联盟账户并申请API访问权限,获取AWS Access Key ID等凭证。接着,解析API端点和服务,如ItemLookup和ItemSearch。然后,构建API请求,包括URL、参数设置及签名生成。以Python为例,使用requests或boto3库实现API调用,并处理XML格式的API响应。最后,注意API速率限制、区域设置、数据更新及错误处理。参考官方文档确保调用准确性和安全性。

热门文章

最新文章