层次分析法-评价类问题
层次分析法是一种常用的综合评价方法,在分析权重时,结果可能不准确,因为数据是自己填的。
运用
建立递阶层次结构模型
画层次结构图:(使用 SmartArt / 亿图图示 生成)
- 目标层:评价的目标
- 准则层:指标/因素(根据什么指标来评价方案的好坏)
- 措施层:可选方案
- 权重(和为一)
上图为打分法解决评价类问题的图。同颜色单元格和为1,表示权重。
关于指标/因素
根据题目中的背景材料、常识、网上收集到的参考资料筛选出合适的指标。
下面有一个推荐的索引网站:虫部落
构造出各层次中所有判断矩阵
选好指标后,需要确定指标的权重,为了避免考虑不周,需要两两比较,推算权重。
下图是重要程度。
判断矩阵满足
a
i
j
∗
a
j
i
=
1
a_{ij}*a_{ji}=1
aij∗aji=1
指标与指标相比较,得出一个判断矩阵(正互反矩阵)。
接下来在每个指标下,在把方案之间相互比较,得出多个矩阵。在填写时一定要注意逻辑上有无问题,虽然两两比较了,但整体上的排序不能出现矛盾。
层次单排序及一致性检验
一致矩阵
各行各列成倍数关系
性质:
- 在满足正互反矩阵的前提下,还满足 a i j ∗ a i j = a i k a_{ij}* a_{ij}=a_{ik} aij∗aij=aik
- n阶正互反矩阵A为一致矩阵时,当且仅当最大特征值 λ m a x = n \lambda_{max}=n λmax=n
- n阶正互反矩阵A不是一致矩阵时,则最大特征值 λ m a x > n \lambda_{max}>n λmax>n
一致矩阵检验
- 计算一致性指标CI C I = λ m a x − n n − 1 CI=\frac{\lambda_{max}-n}{n-1} CI=n−1λmax−n
- 查找对应的平均随机一致性指标RI
- 计算一致性比例CR C R = C I R I CR=\frac{CI}{RI} CR=RICI
- 若 C R < 0.1 CR<0.1 CR<0.1 ,则以为判断矩阵的一致性可以接受,否则需修正:往一致矩阵上调整。
计算权重
权重一定要进行归一化处理
- 一致矩阵算一列即可(每一列成比例):用每一元素除以所在列的和。
- 判断矩阵要算所有列,假设有 n n n列,则得到 n n n种权重,将所有的权重加起来数值上就为 n n n。再将每个元素的n种情况的权重加起来除以 n n n即可。
- 简化版:算术平均法求权重:
1、将判断矩阵按照列归一化:每一个元素除以所在列的和
2、按行求和(各列相加)
3、将相加后的向量中每一个元素除以 n n n求得权重向量
数学表述:
Assuming that a judgment matrix
A
=
[
a
11
⋯
a
1
n
⋮
⋱
⋮
a
n
1
⋯
a
n
n
]
A=\left[ \begin{matrix} a_{11} &\cdots& a_{1n} \\ \vdots&\ddots&\vdots\\ a_{n1} &\cdots& a_{nn} \end{matrix}\right]
A=⎣⎢⎡a11⋮an1⋯⋱⋯a1n⋮ann⎦⎥⎤
Then, using the method of arithmetic average, we get the weight vector,
ω
i
=
1
n
∑
j
=
1
n
a
i
j
∑
k
=
1
n
a
k
j
\omega_{i}=\frac{1}{n}\sum_{j=1}^{n}\frac{a_{ij}}{\sum_{k=1}^{n}a_{kj}}
ωi=n1j=1∑n∑k=1nakjaij
下面展示一些 latex里矩阵代码
。
Assuming that a judgment matrix
$$A= \begin{bmatrix}
a_{11} &\cdots& a_{1n} \\
\vdots&\ddots&\vdots\\
a_{n1} &\cdots& a_{nn}
\end{bmatrix}$$
Then, using the method of arithmetic average, we get the weight vector,
$$\omega_{i}=\frac{1}{n}\sum_{j=1}^{n}\frac{a_{ij}}{\sum_{k=1}^{n}a_{kj}}$$
用matlab可以求出算术平均法、几何平均法、特征法所求出的对应值。
用excel可以计算各方案的得分,注:F4可以锁定单元格。
局限
- 决策层不能过多(n<=15): n n n过大可能会导致判断矩阵和一致矩阵差异较大。
- 决策层中含有已知数据时,使用TOPSIS法 。