层次分析法模型原理以及代码实现

层次分析法是解决评价类问题的一个常用方法,下面让我们来介绍一下这个方法

提出问题

第一步:分析系统中各因素之间的关系,建立系统的递阶层次结构。

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锁定单元格)

posted @ 2024-06-27 06:05  卢宇博  阅读(150)  评论(0编辑  收藏  举报