Skip to main content

层次分析法🧩

什么是层次分析法

美国运筹学加Saaty于20世纪70年代初提出著名的层次分析法(Analytic Hierarchy Process-AHP). 层次分析法是将与决策有关的元素分解成目标,准则,方案等层次,在此基础之上进行定性和定量分析的决策方法. 该方法具有系统,灵活,简洁的优点.

求权重的方法

  • 几何平均法
  • 算术平均法
  • 特征向量法
  • 最小二乘法
note

利用层次分析法解决实际问题时,一般采用其中某一种方法求权重,四种方法求权重得出的结果一般比较接近 ,但也有细微的差别,而这些细微的差别可能在解决实际问题时得出不一样的结果,所以在数学建模中,最好每一种求权重的方法都要尝试一遍,综合考虑,从而得出更科学的决策.

层次分析法的步骤

1. 建立递阶层结构模型

应用AHP分析决策问题时,首先要把问题条理化,层次化,构造出一个有层次的结构模型,这些层次可以分为三类: 最高层(目的层),中间层(准则层),最底层(方案层).递阶层次结构中的层次数与问题的复杂程度需要分析的详尽程度有关,一般地层次数不受限制,每一层中个元素所支配的元素一般不超过9个.

2. 构造出各层次中的所有判断矩阵

准则层中的个准则在目标中衡量所占的比重并不一定相同,在决策者的心目中,它们个占有一定的比例,引用数字1-9来定义判断矩阵A=(aij)n×nA=(a_{ij})_n \times n

标度含义
1表示两个因素相比,具有同样的重要性
3表示两个因素相比,一个因素比另一个因素稍微重要
5表示两个因素相比,一个因素比另一个因素明显重要
7表示两个因素相比,一个因素比另一个因素强烈重要
9表示两个因素相比,一个因素比另一个因素极端重要
2,4,6,8上述两相邻判断的中值
倒数A和B相比如果标度为3,那么B和A相比就是1/3

3. 层次单排序及一致性检验

  1. 计算一致性指标
CI(consistency  index)CI=λmaxnn1λmax为判断矩阵的最大特征值CI(consistency \ \ index)\\ CI=\frac{\lambda_{max}-n}{n-1}\\ \lambda_{max}为判断矩阵的最大特征值
  1. 查找一致性指标RI1RI^1

    n1234567891011121314
    RI000.520.891.121.241.361.411.461.491.521.541.561.58
  2. 计算一致性比例

    CR(consistency  ratio)CR=CIRICR(consistency \ \ ratio)\\ CR=\frac{CI}{RI}

    只有当CR<0.10CR<0.10时,才能认为判断矩阵的一致性是可以接受的,否则应对判断矩阵做适当的修正,令其满足一致性约束条件.

    4. 层次总排序及一致性检验

    最终要得到个元素,特别是最底层中个方案对目标的排序权重,从而进行方案选择,对层次总排序也需作一致性检验,计算各层要素对系统总目标的合成权重,并对各被选方案排序.

info
  • 正互反矩阵:若矩阵中每个元素aij>0a_{ij}>0且满足aij×aji=1a_{ij} \times a_{ji}=1,则称该矩阵是正互反矩阵
  • 在层次分析法中,我们构造的判断矩阵均是正互反矩阵
  • 一致矩阵: 若正互反矩阵满足aij×ajk=aika_{ij} \times a_{jk}=a_{ik},则称其为一致矩阵 [a11a12a1na21a22a2nan1an2ann]\begin{bmatrix} a_{11} & a_{12} & \cdots&a_{1n} \\ a_{21} & a_{22} &\cdots&a_{2n} \\ \vdots & \vdots & \ddots & \vdots\\ a_{n1} & a_{n2} & \cdots&a_{nn} \\ \end{bmatrix}为一致矩阵的充要条件:{aij>0a11=a22==ann=1[ai1,ai2,,ain]=k[a11,a12,,a1n]\left\{\begin{array}{l} a_{ij}>0\\ a_{11}=a_{22}= \cdots =a_{nn}=1\\ \begin{bmatrix} a_{i1},&a_{i2},\cdots,a_{in} \end{bmatrix}=k \begin{bmatrix} a_{11},&a_{12},\cdots,a_{1n} \end{bmatrix} \end{array}\right.

引理:

AAnn阶方阵,且r(A)=1r(A)=1,则AA有一个特征值为tr(A)(tr(A)A的所有特征元素之和,其值为对角线元素的和,n)tr(A)(tr(A)为A的所有特征元素之和,其值为对角线元素的和,即n),其余特征值均为0. 因为一致矩阵得各行成比例且不是零矩阵,所以一致矩阵的秩一定为1. 由引理可知:一致矩阵有一个特征值为nn,其余特征值均为0.

  • 另外,特征值为nn时,对应的特征向量刚好为
    k[1a11,1a12,,1a1n]Tk \begin{bmatrix}\frac{1}{a_{11}},&\frac{1}{a_{12}},&\cdots,&\frac{1}{a_{1n}}\end{bmatrix}^T
  • nn阶正互反矩阵AA为一致矩阵时,最大特征值λmax=n\lambda_{max}=n.
  • 且当正互反矩阵AA非一致时,一定满足λmax>n\lambda_{max}>n

计算权重的四种方法介绍

算数平均值法

  • 将判断矩阵按照列归一化;

  • 将归一化的各列相加(按行求和)

  • 将相加后的到的向量中每个元素除以nn即可得到权重向量 假设判断矩阵

    A=[a11a12a1na21a22a2nan1an2ann]A=\begin{bmatrix} a_{11} & a_{12} & \cdots &a_{1n} \\ a_{21} & a_{22} & \cdots &a_{2n} \\ \vdots & \vdots & \ddots & \vdots\\ a_{n1} & a_{n2} & \cdots &a_{nn} \\ \end{bmatrix}

    那么算术平均法求得得权重向量为
    ωi=1nj=1naijk=1nakj\omega_{i}=\frac{1}{n} \sum_{j=1}^{n}\frac{a_{ij}}{\sum_{k=1}^{n}a_{kj}}

几何平均法

几何平均法求权重也有三步:

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

假设判断矩阵

A=[a11a12a1na21a22a2nan1an2ann]A=\begin{bmatrix} a_{11} & a_{12} & \cdots &a_{1n} \\ a_{21} & a_{22} & \cdots &a_{2n} \\ \vdots & \vdots & \ddots & \vdots\\ a_{n1} & a_{n2} & \cdots &a_{nn} \\ \end{bmatrix}

那么几何平均法求得的权重向量为

ωi=(j=1naij)1nk=1n(j=1nakj)1n\omega_{i}=\frac{(\prod_{j=1}^{n}a_{ij})^{\frac{1}{n}}}{\sum_{k=1}^{n}(\prod_{j=1}^{n}a_{kj})^{\frac{1}{n}}}

特征值法

将权重向量WW右乘权重比矩阵AA,有 AW=λmaxWAW=\lambda_{max}W 同上,λmax\lambda_{max}为判断矩阵的最大特征值,存在且唯一,WW的分量均为正分量,最后,将求得的权重向量作归一化处理即为所求 所以特征值法的核心就是要求特征向量WW,然后对WW归一化

(AλmaxE)W=0(A-\lambda_{max}E)W=0

最小二乘法

用拟合方法确定权重向量,使残差平方和最小,即求解如下非线性规划模型:

minZ=i=1nj=1n(aijwjwi)2s.t.i=1nwi=1wi>0,i=1,2,3,,n.min Z=\sum_{i=1}^{n}\sum_{j=1}^{n}(a_{ij}w_{j}-w{i})^2 \\ s.t.\sum_{i=1}^{n}w_{i}=1\\ w_{i}>0,i=1,2,3,\cdots,n.