数学建模之“TOPSIS数学模型”原理和代码详解

news2024/11/18 21:39:17

一、简介

TOPSIS(Technique for Order Preference by Similarity to Ideal Solution)是一种多准则决策分析方法,用于解决多个候选方案之间的排序和选择问题。它基于一种数学模型,通过比较每个候选方案与理想解和负理想解之间的相似性来评估其优劣。

TOPSIS方法包括以下步骤:

  1. 确定决策准则:首先确定影响决策的准则,例如成本、效益、可行性等。这些准则应该能够量化,并与候选方案相关联。

  2. 归一化:对每个准则进行归一化处理,将其转化为标准化的0-1范围内的值。这样可以确保不同准则的权重在计算中得到平等的考虑。

  3. 确定理想解和负理想解:根据每个准则的重要性,确定一个理想解和一个负理想解。理想解是在各个准则上表现最佳的方案,而负理想解则是在各个准则上表现最差的方案。

  4. 计算相似性:使用距离度量方法(如欧几里得距离或曼哈顿距离)计算每个候选方案与理想解和负理想解之间的相似性。

  5. 计算综合评分:根据相似性计算每个候选方案的综合评分。综合评分越接近1,表示该方案越接近理想解;综合评分越接近0,表示该方案越接近负理想解。

  6. 排序和选择:按照综合评分对候选方案进行排序,并选择得分最高的方案作为最优解。

TOPSIS方法的优点包括简单易用、不需要主观权重设定、能够有效处理多准则决策问题。然而,它也有一些限制,例如对准则之间的相互关系没有考虑,不能处理不确定性和不完备信息等。

总之,TOPSIS数学模型是一种常用的多准则决策方法,可以帮助决策者在多个候选方案中做出合理的选择和排序。

二、实例

以下是一个典型的TOPSIS例题:

假设你是一家公司的采购经理,你需要从三个供应商中选择一个最佳的供应商来购买某种原材料。你考虑的准则有:价格、质量和交货时间。根据这些准则,你收集到了每个供应商的数据如下:

供应商A:价格 8, 质量 9, 交货时间 5
供应商B:价格 6, 质量 7, 交货时间 8
供应商C:价格 9, 质量 8, 交货时间 7

现在使用TOPSIS方法来选择最佳供应商。

1. 归一化:
首先,对每个准则进行归一化处理,将它们转化为0-1范围内的标准化值。这里我们可以使用最小-最大归一化方法。

供应商A:价格 8/9 ≈ 0.89, 质量 9/9 = 1, 交货时间 5/9 ≈ 0.56
供应商B:价格 6/9 ≈ 0.67, 质量 7/9 ≈ 0.78, 交货时间 8/9 ≈ 0.89
供应商C:价格 9/9 = 1, 质量 8/9 ≈ 0.89, 交货时间 7/9 ≈ 0.78

2. 确定理想解和负理想解:
根据每个准则的重要性,确定理想解和负理想解。对于价格和交货时间,理想解是最小值,负理想解是最大值;对于质量,理想解是最大值,负理想解是最小值。

理想解:价格 0, 质量 1, 交货时间 0
负理想解:价格 1, 质量 0, 交货时间 1

3. 计算相似性:
使用距离度量方法(如欧几里得距离)计算每个供应商与理想解和负理想解之间的相似性。

供应商A:与理想解的相似性 = √((0.89-0)^2 + (1-0)^2 + (0.56-0)^2) ≈ 1.12
         与负理想解的相似性 = √((0.89-1)^2 + (1-0)^2 + (0.56-1)^2) ≈ 0.84
供应商B:与理想解的相似性 = √((0.67-0)^2 + (0.78-1)^2 + (0.89-0)^2) ≈ 0.73
         与负理想解的相似性 = √((0.67-1)^2 + (0.78-0)^2 + (0.89-1)^2) ≈ 1.24
供应商C:与理想解的相似性 = √((1-0)^2 + (0.89-1)^2 + (0.78-0)^2) ≈ 0.26
         与负理想解的相似性 = √((1-1)^2 + (0.89-0)^2 + (0.78-1)^2) ≈ 1.12

4. 计算综合评分:
根据相似性计算每个供应商的综合评分,使用正负理想解的相对距离。

供应商A:综合评分 = 0.84 / (0.84 + 1.12) ≈ 0.43
供应商B:综合评分 = 1.24 / (0.73 + 1.24) ≈ 0.63
供应商C:综合评分 = 0.26 / (0.26 + 1.12) ≈ 0.19

5. 排序和选择:
根据综合评分对供应商进行排序,并选择得分最高的供应商作为最优解。

综合评分排序:供应商B > 供应商A > 供应商C

因此,在这个例子中,供应商B被认为是最佳供应商,因为它在价格、质量和交货时间准则上相对于其他供应商更接近理想解。

 //

三、补充

TOPSIS是一种解决多属性决策问题的评价方法,亦称理想点解法。

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

用理想解法求解多属性决策问题的概念简单,只要在属性空间定义适当的距离测度就能计算备选方案与理想方案的距离。为了区分这两个备选方案与正理想解的距离相同的情况,引入备选方案与负理想解的距离,离负理想解远者为优。

这里所指的距离通常是指欧式距离。需要指出的是:正理想解是一个并不存在的虚拟的最佳方案,它的每个属性值都是决策矩阵中该属性的最优值;负理想解是虚拟的最差方案,它的每个属性值都是决策矩阵中该属性的最差值。 

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/886554.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

图卷积网络:GNN 简介【01/4】

图片来源:作者 一、说明 图形神经网络 (GNN) 代表了深度学习领域最迷人、发展最迅速的架构之一。作为旨在处理结构化为图形的数据的深度学习模型,GNN 带来了非凡的多功能性和强大的学习能力。 在各种类型的GNN中,图卷…

使用Java服务器实现UDP消息的发送和接收(多线程)

目录 简介:1. 导入必要的库2. 创建服务器端代码3. 创建客户端代码4. 实现多线程处理5. 测试运行示例代码:函数说明服务器端代码说明:客户端代码说明: 总结: 简介: 在本篇博客中,我们将介绍如何…

Spring的三种异常处理方式

1.SpringMVC 异常的处理流程 异常分为编译时异常和运行时异常,编译时异常我们 try-cache 进行捕获,捕获后自行处理,而运行时异常是不 可预期的,就需要规范编码来避免,在SpringMVC 中,不管是编译异常还是运行…

激活函数总结(十):激活函数补充(Identity、LogSigmoid、Bent Identity)

激活函数总结(十):激活函数补充 1 引言2 激活函数2.1 Identity激活函数2.2 LogSigmoid激活函数2.3 Bent Identity激活函数 3. 总结 1 引言 在前面的文章中已经介绍了介绍了一系列激活函数 (Sigmoid、Tanh、ReLU、Leaky ReLU、PReLU、Swish、…

【校招VIP】测试方案之等价类

考点介绍: 在校招中,等价类也是重要的考查点。等价类划分是一种典型的黑盒测试设计方法,使用该方法主要对测试子项进行测试规格分析,得到用例,而不用对系统内部处理进行深入了解,它也是目前测试设计过程中使…

Python Opencv实践 - 图像金字塔

import cv2 as cv import numpy as np import matplotlib.pyplot as pltimg cv.imread("../SampleImages/pomeranian.png", cv.IMREAD_COLOR) print(img.shape)#图像上采样 #cv.pyrUp(src, dstNone, dstsizeNone, borderTypeNone) #参考资料:https://blo…

大势智慧软硬件技术答疑第九期

1.在使用模方修模大面积水面时,原模型没有瓦片的区域修补不了,软件也没有新增瓦片,怎么解决? 答:规则分块的数据,然后用新版本模方处理,设置好对应的空间框架。 2.重建大师密集匹配-纠正影像失败…

生产订单负数WIP处理方法(未发生费用准备金)

这个月财务在月结的时候反馈生产成本与制造费用不一致相差20多万, 先查看3611 制造相关的成本中心看上去过量与吸收不足均是0,都是ok的。 再查看一下啊 S_ALR_87013127 工单的投入产出平衡检查:订单结算后,实际成本借方实际成本贷…

[GitOps]微服务版本控制:使用ArgoCD 部署Grafana Loki

背景介绍 请回答:你们是如何保证线上部署的服务,从服务版本到参数配置,都是和测试通过的版本是一致的呢? 本文将介绍GitOps的基本原理以及ArgoCD的使用:ArgoCD部署Grafana Loki 到k8s集群。 本文项目地址&#xff1…

File Inclusion

File Inclusion 服务器执行PHP文件时,可以通过文件包含函数加载另一个文件中的PHP代码,并且当PHP来执行,这会为开发者节省大量的时间。这意味着您可以创建供所有网页引用的标准页眉或菜单文件。当页眉需要更新时,您只更新一个包含…

Curson 编辑器

Curson 汉化与vacode一样 Curson 自带chat功能 1、快捷键ctrlk(代码中编辑) 2、快捷键ctrll 右侧打开窗口

最新MPAS跨尺度、可变分辨率模式实践技术应用及典型案例分析

目录 一、MPAS 模式基本信息 二、MPAS 代码获取及结构 三、MPAS 移植、编译及运行实践 四、MPAS 全球均匀网格的运行 五、MPAS 全球非均匀网格的运行 六、MPAS 区域网格的运行 七、MPAS 运行中的配置 八、MPAS结果处理、分析及可视化 九、了解 MPAS代码的结构、主要模…

攻防世界-web-fileclude

1. 题目描述 打开链接,可以看到如下代码: 代码意思很简单,让我们传递两个参数,一个file1,一个file2,如果file2的内容为hello ctf,那么就可以在代码中include file1 2. 思路分析 这道题显然是…

Android Stodio编译JNI项目,Cmake出错:Detecting C compiler ABI info - failed

在使用Android Stodio编译JNI项目时出现Cmake错误,报错如下: Execution failed for task :app:configureCMakeDebug[arm64-v8a]. > [CXX1429] error when building with cmake using C:\Users\Dell\AndroidStudioProjects\MyApplication2\app\src\ma…

BDA初级分析——认识SQL,认识基础语法

一、认识SQL SQL作为实用技能,热度高、应用广泛 在对数据分析人员的调查中SQL长期作为热度排名第-一的编程语言超过Python和R SQL:易学易用,高效强大的语言 SQL:Structured Query Language 结构化查询语言 SQL:易学…

svn 过滤文件

1. 右键点击,依次选择 TortoiseSVN -> Settings 2. 添加需要过滤的后缀/关键词【 *.iml *.idea *.jar *.class 】

周期 角频率 频率 振幅 初相角

周期 角频率 频率 振幅 初相角 当我们谈论傅里叶级数或波形分析时,以下术语经常出现: 周期 T T T: 函数在其图形上重复的时间或空间的长度。周期的倒数是频率。 频率 f f f: 周期的倒数,即一秒内波形重复的次数。单位通常为赫兹&#xff…

Unity引擎使用InteriorCubeMap采样制作假室内效果

Unity引擎制作假室内效果 大家好,我是阿赵。   这次来介绍一种使用CubeMap做假室内效果的方式。这种技术名叫InteriorCubeMap,是UE引擎自带的节点效果。我这里是在Unity引擎里面的实现。 一、效果展示 这个假室内效果,要动态看才能看出效…