层次分析法模型原理以及代码实现
层次分析法是解决评价类问题的一个常用方法,下面让我们来介绍一下这个方法
目录
提出问题
第一步:分析系统中各因素之间的关系,建立系统的递阶层次结构。
1.层次结构实现方法:
可使用ppt自带的smartart或者清风老师分享的“亿图图示”。具体过程请观看教学视频
第二步:构造判断矩阵
1.构造各个指标之间的判断矩阵
图示的判断矩阵为最终成品,但在实际过程中我们无法直接比较五个指标的重要性,而是指标之间两两比较,最后才能得到成品
2.构造每个指标下的各个单位的判断矩阵
第三步:进行一致性检验
1.一致性检验的方法
2.一致性检验的代码实现
利用公式计算出CI的值,再通过与RI进行相除,与0.1进行比较。无论是指标间的判断矩阵还是单位间的判断矩阵,都需要通过一致性检验
3.如何对一致性指数进行修正?
第四步:根据权重矩阵计算得分,并进行排序
这一步我们要分别对指标判断矩阵和单位间的判断矩阵进行求权,一共有三种方法可以达到目标
此处我们只介绍算术平均法和特征值法
1.算数平均法求权重
(1)计算原理
(2)例题
先对每一列进行归一化,然后把归一化后的值平均起来
(3)代码实现
第一步归一化:sum(A)对矩阵来说,是对每一列的数进行求和,得到一个行向量,再用repmat(Sum_A,n,1),将这个行向量复制n行,这样就可以让原矩阵和这个sum矩阵点除
这一就完成了归一化的操作
第二步:将归一化的各列相加(按行求和)
此过程其实是一个平均的过程,用代码sum(Stand_A,2)即可实现
第三步:将相加后得到的向量中每个元素除以n即可得到权重向量
此过程其实是一个求平均的过程,上一步是把权重进行求和,这一步则是加权
2.特征值法求权重
(1)计算原理
(2)代码实现
第一步:求出矩阵A的最大特征值以及其对应的特征向量
首先,求出特征值和特征向量,并找出最大特征值
之后,找到D中第一个与最大特征值相等的元素的位置,记录它的行和列。利用其列的索引找出最大特征值对应的特征向量
第二步:对求出的特征向量进行归一化即可得到我们的权重
对最大特征值对应的特征向量进行归一化即可
第五步:汇总指标权重和对应的单位权重,进行加权求和,得出最后的结果
此步需要利用excel进行计算(F4锁定单元格)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步