层次分析法
(The analytic hierarchy process,简称AHP)(hierarchy n. 层级;等级制度)
建模中最基础的方法之一,主要用于解决评价类问题。
评价类问题:
举例:选择哪个方案更好,哪位运动员或者职工表现的更优秀
解决评价类问题首先三个条件:
①我们的评价目标是什么?
②为了达到目标可选的几种方案?
③评价的准则或者说指标是什么?
一般来说,评价的指标或者准则可以根据题目中的背景材料,常识,以及网上收集到的参考资料进行结合,从而筛选合适目标

收集资料
①优先选择知网(万方,百度学术,谷歌学术等平台)搜索相关内容文件,借鉴别人的方法

②https://search.chongbuluo.com/ 虫部落——快搜
在平台上搜索别人的看法

③注意查询时关键字要准确

一,模型介绍

1.直接权重法

两个事物对比,直接比较出权重
例如:

这里权重比例可以直接通过Excel表格进行计算,同时注意计算时将指标权重进行绝对引用(绝对引用的快捷键F4)这样固然简单,仍有很多弊端。

  • 得到的数据往往比较片面不周全

  • 在确定影响某因素的诸因子在该因素中所占的比重时,遇到的主要困难 是这些比重常常不易定量化。此外,当影响某因素的因子较多时,直接
    考虑各因子对该因素有多大程度的影响时,常常会因考 虑不周全、顾此 失彼而使决策省提出与他实际认为的重要性程度不相-致的數据,甚至
    有可能提出一组隐含矛盾的数据。
    –选自司守奎[kui]老师的《数学建模算法与应用教材》
    2.间接权重法(分而治之)

  • 目的:为了改善直接权重法的片面性

  • 解决方法:两个两个指标进行比较,最终根据两两比较的结果来计算权重
    重要程度表:

    层次分析法中的判断矩阵:
    例如:
    类似这样的表格我们记为A,对元素为aij.判断
    (1)aij表是的意义是,与j指标相比,i的重要程度
    (2)当i=j时,两个指标相同,同等重要因此为1,对角线元素为1、
    (3)aij>0且满足aij*aji=1,满足这一条件即可判断为正互反矩阵

首先判断填写景色一栏


根据重要程度表进行填写 ,主要填写右上角的数字,当右上角的数字填写后根据正互反矩阵的性质即可得到左下角与右上角互为倒数。即可填写完整个表格。
类比填完其他比较项目:

五个维度:景色,花销,饮食,居住,交通。我们已经填写完毕。但是大家仔细看还是会发现问题,在景色比较表格中,我们会发现苏杭景色比北戴河好,苏杭比桂林景色好很多,也就是北戴河不如桂林,但是第二行可以看出,北戴河的景色比桂林好,出现了矛盾。
也就是作为不一致矩阵
一致矩阵
满足以下规律:
特点
各行各列之间成倍数关系

与之前所讲述的正互反矩阵的关系
①aij>0且满足aijaji=1,满足这一条件即可判断为正互反矩阵,并且在层次分析法中我们过早的判断矩阵是正互反矩阵
②若同时,正互反矩阵也满足aij
ajk=aik,则称其为一致矩阵。

注意:在使用判断矩阵求权重之前必须对其进行一致性检验

接下来介绍一致性检验:
一致性检验


引理: A为n阶方阵, r(A)=1,则A有一个特征值为tr(A),其余特征值均为0.
因为一致知阵的各行成比例,所以一致矩阵的秩定为1.

由引理可知:一致矩阵有一 个特征值为n, 其余特征值均为0.

另外,我们很容易得到,特征值为n时,对应的特征向量刚好为

不知道大家是否还记得线性代数,这里进行补充:

特征值:设 A 是n阶方阵,如果存在数m和非零n维列向量 x,使得 Ax=mx 成立,则称 m 是矩阵A的一个特征值(characteristic value)或本征值(eigenvalue)。

当判断矩阵越不一致时,最大特征值与n就相差越大。

总结一致性检验的步骤:
第一步:计算一致性指标CI

第二步:查找对应的平均随机一致性指标RI

第三步:计算一致性比例CR

如果CR < 0.1,则可认为判断矩阵的一致性可以接受;否则需要对判断矩阵进行修正。

如果CR>1应该如何让修正?
往一致矩阵上调,一致矩阵的各行各列成倍数关系

化为一致矩阵后应如何进行计算权重?

还是以景色为例:当我们以将苏州看为1,则北戴河为1/2,桂林为1/5,因此每一列都有一个重要性为1的数,怎样才能更方便呢?进行归一化!
综合以上进行计算平均权重:

计算平均权重 三种方法:

①算术法计算平均权重

②几何平均法求权重

③特征值法求解

①算术法计算平均权重

归一化
第一列:
苏杭:1/(1+0.5+0.25)=0.5882
北戴河:1/(1+0.5+0.25)=0.2941
桂林:1/(1+0.5+0.25)=0.1177
第二列:
苏杭:2/(2+1+0.5)=0.5714
北戴河:1/(2+1+0.5)=0.2857
桂林:0.5/(2+1+0.5)=0.1429

第三列:
苏杭:5/(5+2+1)=0.625
北戴河:2/(5+2+1)=0.25
桂林:1/(5+2+1)=0.125

得到平均权重为:
苏杭= (0.5882+0.5714+0.625)/3=0.5949

北戴河= (0.2941+0.2857+0. 25)/3=0.2766

桂林= (0.1177+0.1429+0.125)/3=0.1285

②几何平均法求权重

第一步:将A的元素按照行相乘的得到新的行向量
第二步:将新的向量的每个分量开n次方
第三步:对该向量进行归一化处理


③特征值法求解
首先明白一致矩阵有一个特征值为n,其余特征值为0.另外我们可以看出当特征值为n时,对应的特征向量为

第一步:求出矩阵A的最大特征值以及其对应特征向量
第二步:对求出的特征向量进行归一化即可得到权重

最后用三种方法得出的权重:

所以我们就得到了在景色这一方它的权重

一此类推即可得到其他方面的参数最后在经过国计算分别得到苏杭北戴河桂林的所占权重即可。

总结层次分析第三个步骤:
①分析系统中各因之间关系,建立系统递阶层次结构
(层次分析法一定要配层次结构图)PPT中SMARTART可以生成

②对于同一层次的各元素关于上一层次中某一准则的重要性进行两两比较构造两两比较矩阵(判断矩阵)

③由判断矩阵计算被比较元素对于该准则相对权重并进行一致性检验,检验通过权重才能用。
三种计算权重方法:
(1)算术平均法(2)几何平均法(3)特征值法(比较常用)
为了保证结果稳健性建议三种方法都使用。

层次法一些局限性
(1)评价决策层不能太多,太多话n会很大,判断矩阵和一致矩阵差异可能会很多大

(平均随机一致性指标RI的表格中N最多是15)

(2)如果决策层中指标的数据是已知,那么我们如何利用这些数据来使得贫家更加准确呢?

完更,大家都看到这里了,如果觉得不错的话点个赞嘛

层次分析法 你真的懂了吗?(完更)相关推荐

  1. 层次分析法AHP - 代码注释多 - ( 数据建模 Python代码)

    实际生活中,往往有一些很复杂的系统,我们没办法直观草率的确定权重,比如甲.乙.丙三人竞选总统,严谨的说,需要从三人的社交能力.管理能力.经济能力等方面来考虑,在每个方面,三位候选人的得分也不同,那么到 ...

  2. 学习笔记----层次分析法

    层次分析法(MATLAB实现) 定义 例题 步骤 细节补充 应用实例 定义   层次分析法是指将一个复杂的多目标决策问题作为一个系统,将目标分解为多个目标或准则,进而分解为多指标(或准则.约束)的若干 ...

  3. 【人类高质量层次分析法教程】1分钟实现AHP+矩阵一致性调整

    [视频教程]1分钟实现AHP+矩阵一致性调整 课程简介 视频教程 指标体系的确定.专家咨询及数据整理实操 AHP分析+矩阵一致性调整 群决策 资源获取 课程简介 首先说明一下我设计本次课程的目的,目前 ...

  4. ahp层次分析法matlab代码_Matlab数据分析实战,基于AHP高校食堂满意度调查分析

    层次分析法(Analytical Hierachy Process,AHP)是匹兹堡大学T.L.Saaty教授在20世纪70年代初期提出对定性问题进行定量分析的一种渐变灵活的多准则决策方案. 其特点是 ...

  5. 目标层准则层MATLAB,层次分析法-MATLAB

    层次分析法-MATLAB 第八章 层次分析法 层次分析法(Analytic Hierarchy Process,简称AHP)是对一些较为复杂.较为模糊的问题作出决策的简易方法,它特别适用于那些难于完全 ...

  6. R语言应用实战-基于R语言的综合评价(层次分析法AHP为例)

    一.综合评价的基本概念 对一个事物的评价往往会涉及多个因素或者多个指标,评价是在多个因素相互作用下的一个综合判断.多指标综合评价方法具有以下的特点:包含若干个指标,分别说明被评价对象的不同方面,评价方 ...

  7. 数学建模学习笔记——层次分析法(评价类,专家打分一般不用)

    层次分析法 (1)评价类问题--打分解决 问法--确认评价指标.形成评价体系         亿图图示  

  8. 数学建模——层次分析法Python代码

    数学建模--层次分析法Python代码 import numpy as np class AHP: """ 相关信息的传入和准备 """ d ...

  9. AHP层次分析法解决用户价值评估

    前言 @Author : Runsen 现在互联网都有得到用户,那用户到底有没有价值需要评估. 通过各种指标来给用户综合打分,每个用户最后会得到一个分值,分值越高,说明用户的价值越高.这是一个总的目标 ...

最新文章

  1. 2021年大数据ZooKeeper(五):ZooKeeper Java API操作
  2. Android流量统计TrafficStats类
  3. exchange2007 灾难恢复E00.log(虚拟环境实验)
  4. 貌似长沙有个用膳吧外卖网
  5. 独家专访 | 从跨国投行到开源社区,IBM Spark总工程师Nick Pentreath的传奇经历
  6. delphi初级教程之delphi断点调试一
  7. 在探索的飞鸽传书科学的道路上
  8. 你真明白 Python 装饰器么?
  9. robotium之无name、ID仅有desc定位
  10. Mysql主备延迟的来源
  11. 无码间串扰的时域和频域条件
  12. SSM项目实战之十一:用户信息的添加
  13. nestjs+vue+ts打造一个酷炫的星空聊天室
  14. 说说Redis的常用应用场景
  15. 刚入行java程序员VS 3年以上java程序员,太形象了,哈哈哈~·~
  16. 安卓应用安全指南 5.4.3 通过 HTTPS 的通信 高级话题
  17. 出走的门徒之二—摩拜 王晓峰:给岁月以文明
  18. 自动ip的计算机共享打印,局域网内自动获取ip地址怎么设置打印机共享文件夹...
  19. JAVA将证件号打星号
  20. 10分钟搞懂区块链扩容,4个解决方案拿走不谢

热门文章

  1. 磁盘操作系统(DOS)
  2. Linux挂载Windows共享文件夹
  3. C++一本通题库1013
  4. CentOS6.5挂载U盘
  5. 本文将要讨论Objective-C中的方法替换(method replacement)和swizzling(移魂大法)。
  6. Scp全量远程拷贝(推送、拉取)
  7. 我要砍价-自动砍价-思路
  8. java 翻译 go语言_[翻译]Go语言1.4版本将支持面向Android开发
  9. vue--实现跑马灯效果
  10. 排序算法-归并排序详细图解