综合评价方法研究

《python数学实验与建模》中课后习题练习与代码笔记3。

综合评价方法包涵较多的模型,本次主要解析两个模型:TOPSIS(逼近理想解)模型和灰色关联分析模型。本次建模问题是传统模型,并没有进行扩展和改进。

一、基本模型

⑴TOPSIS模型

TOPSIS模型是逼近理想解的排序方法,它借助于评价问题的正理想解和负理想解,对各理想解进行排序。正理想解是一个虚拟的最佳对象,正理想解各个指标数值是评价对象该指标的最好值;负理想解亦是一个虚拟的最差对象,负理想解各个指标数值是评价对象该指标的最差值。通过求出各评价对象与正理想解与负理想解的距离,并通过距离指标对各评价对象进行优劣排序。

数学原理如下:

⑵灰色关联分析模型

在系统发展过程中,若两个因素变化的趋势具有一致性,即同步变化程度较高,即可谓二者关联程度较高;反之,则较低。因此,灰色关联分析方法,是根据因素之间发展趋势的相似或相异程度,亦即“灰色关联度”,作为衡量因素间关联程度的一种方法。

数学原理如下:

二、模型应用与求解

以《python数学实验与建模》第九章课后习题9.1为例。

求解过程python实现如下所示:

import numpy as np
a = np.array([[8.1,255,12.6,13.2,76,5.4],[6.7,210,13.2,10.7,102,7.2],[6.0,233,15.3,9.5,63,3.1],[4.5,202,15.2,13,120,2.6]])
for j in range(0,6):#数据归一化处理a[:,j] = (a[:,j]-min(a[:,j]))/(max(a[:,j])-min(a[:,j]))
print(a)#查看数据的表现情况
#topsis方法
cplus = a.max(axis = 0)
cminus = a.min(axis = 0)
print('正理想解=',cplus,'负理想解=',cminus)
print(a-cplus)#每一列都减去cplus
d1 = np.linalg.norm(a-cplus,axis = 1)
d2 = np.linalg.norm(a-cminus,axis = 1)
print(d1,d2)#显示到正理想解和负理想解的距离
f1 = d2/(d1+d2)
print('topsis的评价值为:',f1)#最终经过综合评估,1号方案可能比较适合
#灰色关联分析
t = cplus-a#计算参考序列与每个序列的差
print('\n',t)
mmin = t.min()#计算最小值
print(mmin)
mmax = t.max()#计算最大值
print(mmax)
rho = 0.5 #分辨系数
xs = (mmin + rho*mmax)/(t+rho*mmax)#计算灰色关联系数
f2 = xs.mean(axis = 1)#求每一行的均值
print("关联系数=",xs,"\n关联度=",f2)#显示灰色关联系数与灰色关联度,可以看出依旧是方案1较为合适

三、结果简要分析

⑴TOPSIS模型输出分析

先确定正理想解与负理想解如下:

正理想解= [1. 1. 1. 1. 1. 1.] 负理想解= [0. 0. 0. 0. 0. 0.]

最终的topsis评价值为如下,可以看出,方案1比较合适。

topsis的评价值为: [0.58313806 0.49911304 0.40463435 0.492181  ]

⑵灰色关联分析模型

通过计算各个数据点的关联系数如下:

[[1.         1.         0.33333333 1.         0.39310345 0.56097561][0.5625     0.37062937 0.39130435 0.42528736 0.61290323 1.        ][0.46153846 0.54639175 1.         0.33333333 0.33333333 0.359375  ][0.33333333 0.33333333 0.93103448 0.90243902 1.         0.33333333]] 

最终的每一行计算平均值得出每个方案的关联度如下,可以看出依然是方案一比较合适,符合TOPSIS模型输出的一致性。

[0.71456873 0.56043738 0.50566198 0.63891225]

四、总结

慢慢走,欣赏啊。

python数学建模|综合评价方法相关推荐

  1. 数学建模--综合评价方法

    综合评价方法 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 例如:第一章 Python 机器学习入门之pandas的使用 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮 ...

  2. python数学建模(二)线性规划2.实战(思路清晰\过程完整、详细)

    文章目录 (一)简单陈述本文章的内容 (二)线性规划例题(实战) 2.1 实战题目 2.2 符号规定和基本假设 2.3 模型的分析 2.4 模型的建立 2.5 模型一的求解和分析 2.5.1 (代码) ...

  3. python数学建模--绘图动态可视化图表

    目录 写在本博客的开篇 关于matplotlib绘图的两种模式 阻塞模式 交互模式 总结 绘制动态图的例子 二维折线图 结果演示 代码 三维折线图 结果演示 代码 三维散点图 结果演示 代码 写在本博 ...

  4. Python数学建模系列(六):蒙特卡洛算法

    文章目录 前言 往期文章 1.蒙特卡洛算法 样例1 样例2 样例3 2.三门问题 3.M*M豆问题 结语 前言 Hello!小伙伴! 非常感谢您阅读海轰的文章,倘若文中有错误的地方,欢迎您指出-   ...

  5. python可以用来数学建模吗_怎么用Python数学建模:python数据建模工具

    怎么用Python数学建模 djcjfhfhhjdvjfhvfghhfgbdthhgdchfjfuivvh DSI方法在几何建模上的应用 本节叙述如何应用DSI方法来与曲面S相联系的二维图形图3.1) ...

  6. Python数学建模系列(四):数值逼近

    文章目录 前言 往期文章 1. 一维插值 ​1.1 线性插值与样条插值(B-spline) 1.2 高阶样条插值 2. 二维插值 2.1 图像模糊处理--样条插值 2.2 二维插值的三维图 3. 最小 ...

  7. 【Python数学建模】SEIR传染病模型模型延伸-SEIDR模型(一),加入疫苗接种、政府管控、病毒变异等因素的影响

    目录 一. SEIR传染病模型 二. SEIR模型的延伸--SEIDR模型 三. 模型延伸--影响因素1:疫苗接种 四. 模型延伸--影响因素2:政府管控 五. 模型延伸--影响因素3:病毒变异 写在 ...

  8. Python数学建模系列(五):微分方程

    文章目录 前言 往期文章 1.微分方程分类 2.微分方程解析解 3.微分方程数值解 3.1 场线图与数值解 3.2 洛伦兹曲线与数值解 4.传染病模型 模型一:SI-Model 模型二:SIS mod ...

  9. 运用Python进行TOPSIS综合评价方法

    运用Python进行TOPSIS综合评价方法 第一步,读取数据: 第二步,对数据进行趋同化: 第三步,对数据进行归一化: 第四步,获取最优列值向量和最劣值向量: 第五步,计算最优方案和最劣方案: 第六 ...

  10. 【MATLAB】数学建模入门方法综述

    数学建模入门方法综述

最新文章

  1. webservice入门程序学习中经验总结
  2. Python案例:飞船向右发射子弹
  3. 一步一步写算法(之查找)
  4. php如何查询本周的数据,php、mysql查询当天,查询本周,查询本月的数据实例
  5. php form 上传_php+html5使用FormData对象提交表单及上传图片的方法
  6. Android NDK 入门与实践
  7. 在CentOS上部署开源博客系统Blog_mini
  8. Spark机器学习(一)—Spark相关
  9. LeetCode476
  10. october php,关于Laravel之October的安装配置过程
  11. c语言点菜菜单程序大学一,数据结构实训报告 c语言点餐系统 net
  12. 使用DDKWirzard+VS2005开发驱动
  13. php投影,ppt投影怎么显示备注
  14. Error: docker-ce conflicts with 2:docker-1.13.1-209.git7d71120.el7.centos.x86_64
  15. Ubuntu18修改host文件加速访问Github
  16. 14.1 常见数据结构、List集合(ArrayList、LinkedList)、Set集合(HashSet、LinkedHashSet)、可变参数方法
  17. 零代码平台在大型企业的进化之路
  18. 如何自己开发App?如何快速生成App?
  19. Tensorflow MNIST for Android
  20. linux基本功系列之tar命令实战

热门文章

  1. my sql实验视图_数据库SQL 视图的创建及使用实验报告(共5篇)
  2. Android四大组件(activity task stack)
  3. 适合win7的python版本_Python 3.9 发布,不再支持 Win7!
  4. 华为详解海思Hi3716高清机顶盒芯片方案
  5. 同态滤波 matlab代码,同态滤波处理光照不均匀图像Matlab代码
  6. 在C 语言中 下列变量命名不合规范的是,GJB9001C-2017内审员培训试题D卷(答案)
  7. android mmkv使用_Android:MMKV 组件入门
  8. python 人工智能项目代码_7个Python实战项目代码,让你分分钟晋级大神!
  9. SaaSpace:10种最佳免费密码管理器软件
  10. Linux源码阅读(Web在线阅读)