【AHP】层次分析法 | 过程解读 案例实践

article/2025/9/12 5:02:09

层次分析法 | 过程解读 案例实践


导读

本文将带领读者了解 AHP 法,通过案例学习,学会使用 AHP 法解决实际问题。在适当的地方将深入了解,例如 AHP 法过程中出现的不一致情况,我们将详细讨论为什么会出现不一致情况,如何验证是否不一致,如何解决不一致情况。

本文无代码实现,更注重 AHP 法过程本身的原理。


文章目录

  • 层次分析法 | 过程解读 案例实践
    • 导读
    • 一. AHP 层次分析法介绍
    • 二. AHP 的实际问题应用案例
      • 1. 确定评价指标,建立层次关系
      • 2. 构造上一层每个节点与下一层的判断矩阵
      • 3. 层次单排序及一致性检验
      • 4. 层次总排序
    • 三. 不一致现象 与 一致性检验
    • 四. (补充) 特征值法求相对重要性权重
    • 参考文献


一. AHP 层次分析法介绍

  • AHP 层次分析法简介

    AHP,即层次分析法(Analytic Hierarchy Process,AHP)是一种系统化的、层次化的多目标综合评价方法。在评价对象的待评价属性复杂多样,结构各异,难以量化的情况下AHP层次分析法也能发挥作用。

  • AHP 基本思想 [1]

    AHP 把复杂的问题分解为各个组成因素,又将这些因素按支配关系分组形成地递阶层次结构。通过两两比较的方式确定方式确定层次中诸因素的相对重要性。然后综合有人员的判断,确定备选方案相对重要性的总排序。整个过程体现了入门分解问题—判断—综合,的思想特征。

  • AHP 步骤

    1. 分析问题,明确需求,确定评价指标,并建立评价层次关系。
    2. 构造上一层每个节点与下一层的判断矩阵。
    3. 由判断矩阵得出层间的相对权重(层次单排序及一致性检验)。
    4. 计算各层对总评价目标的总权重(层次总排序),得出各备选方案的评估结果。

注意


下文中计算数值均四舍五入保留三位小数。一些归一化结果为了保证其结果和为1,可能存在一定的计算误差。但不影响最终结果的准确性


二. AHP 的实际问题应用案例

本章节我们将在选择购买空调的过程中使用 AHP 来完成决策。

为了从三种空调,空调A、空调B、空调C,中选购最合适的空调,我们采用 AHP 法对我们的需求进行分析与评估,最终完成决策。

1. 确定评价指标,建立层次关系

为了选出最合适的空调,我们确定从四个指标来对空调进行评估,分别是:价格、噪声、功耗、寿命。 在 AHP 中,要构建三层层次关系:目标层、准则层、方案层。

在这里插入图片描述

  • 目标层
    只有一个要素,是分析问题的预期结果或期望实现的最终目标,是评价的最高准则,可称为目的或目标层
  • 准则层
    准则层可以是多层构成,其包括所要考虑的准则,子准则等。
  • 方案层
    表示实现目标所提供的各种方案与措施,是最终评价对象,决策的结果将从中选出。

2. 构造上一层每个节点与下一层的判断矩阵

对一层的每一个节点,与其下层的所有与其有关联的节点构建判断矩阵。

判断矩阵描述了下一层节点之间的相对重要性或优越性。为了量化节点间的优劣先后,将用到以下判断矩阵标度定义。

标度含义
1两个要素相比,重要性相同
3两要素相比,前者比后者稍微重要或有优势
5两要素相比,前者比后者比较重要或有优势
7两要素相比,前者比后者十分重要或有优势
9两要素相比,前者比后者绝对重要或有优势
2,4,6,8为上述标度之间的中间值
若要描述后者与前者比较,则用倒数为标度。例如 1/3 描述的是,后者比前者稍微重要。

这么说还是有些抽象,我们用以上标度为规则,来构建目标层与准则层之间的判断矩阵如下。

选购空调价格噪声功耗寿命
价格11/31/51
噪声3115
功耗5115
寿命11/51/51

表中描述的是为了达到目标,准则层节点之间的相对重要程度,决定这些数值大小的可以是决策者的主观判断,也可以是基于调查或文献来判断,也可以是由专家讨论决定,本文中的值都由笔者主观决定。

如,价格行,噪声列(矩阵中坐标为[1,2])值为 1/3 ,意味着价格(前者)的重要程度是噪声(后者)重要程度的 1/3。反过来,我们也可以说相对于价格,噪声的重要程度为 3。

因此判断矩阵是斜对角线对称元素互为倒数的。 并且规定,而在斜对角线上,要素和自身比较的标度恒 1。判断矩阵是一个正互反矩阵。

同样的,需要构建准则层每一个节点到方案层所有节点的判断矩阵。

  • 三种空调对于价格的判断矩阵
价格空调 A空调 B空调 C
空调 A11/71/5
空调 B712
空调 C51/21

图中 [2,1] 的值为 7 ,意味着空调 B 的价格优势相对于空调 A 十分有优势。 其他同理,下面多个判断矩阵也同理。

  • 三种空调对于噪声的判断矩阵
噪声空调 A空调 B空调 C
空调 A125
空调 B1/214
空调 C1/51/41
  • 三种空调对于功耗的判断矩阵
功耗空调 A空调 B空调 C
空调 A131/2
空调 B1/311/5
空调 C251
  • 三种空调对于寿命的判断矩阵
寿命空调 A空调 B空调 C
空调 A11/51/3
空调 B514
空调 C31/41

注意


  • 判断矩阵的值显然只需要填写上半三角区或下半三角区就可以确定整个判断矩阵,请务必保持判断矩阵的 " \ " 向对角线对称的元素互为倒数。
  • 标度的定义是谁更重要或有优势,不是直接比较其量的大小。例如在三种空调对于功耗的判断矩阵中,[1,2] 的值为 3,指的不是空调 A 的功耗相对于空调 B 比较有大,这意味着空调 A 比空调 B 更耗电。标度的实际意思是空调 A 的功耗相对于空调 B 比较有优势,这意味着空调 A 比空调 B 更有优势,更省电。
  • 判断矩阵的数值不能随便乱填,还需要遵守逻辑规范。例如在三种空调对于寿命的判断矩阵中可知,空调 B 的寿命比空调 C 更有优势,而空调 C 也比 空调 A 更有优势,那么就不能说空调 A 比 空调 B 更有优势,这显然是违背逻辑的 ,为了避免这种逻辑上的差错,我们可以先填矩阵,后利用一致性检验(下文即将介绍)来判断我们的矩阵是否存在逻辑上的错误,若有我们则修改标度。

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

所谓层次单排序,指的是:根据判断矩阵计算对于上一层的一个节点而言本层次与之有联系的所有节点的重要性次序的权重值,从而根据权重对其进行重要性排序。

我们以目标层与准则层开始。

选购空调价格噪声功耗寿命 w i \mathbf{w}_i wi w i 0 \mathbf{w}_i^0 wi0 A w i 0 \mathbf{Aw}_i^0 Awi0 λ m i \mathbf{λ}_{mi} λmi
价格11/31/510.5080.0990.4004.040
噪声31151.9680.3811.5464.058
功耗51152.2360.4331.7444.028
寿命11/51/510.4470.0870.3494.011
λ m a x = 4.033 , C . I . = 0.011 , R . I . = 0.89 , C . R . = 0.012 < 0.1 \mathbf{λ}_{max} = 4.033,C.I. = 0.011,R.I. = 0.89,C.R. = 0.012<0.1 λmax=4.033C.I.=0.011R.I.=0.89C.R.=0.012<0.1

连续出现了一系列的新值,我们将一一介绍。


  • w i \mathbf{w}_i wi w i 0 \mathbf{w}_i^0 wi0 w i \mathbf{w}_i wi基于判断矩阵计算得出,采用方根法计算,其计算过程为

    1. 判断矩阵各行元素求几何平均数。


      w i = [ 1 × 1 3 × 1 5 × 1 4 3 × 1 × 1 × 5 4 5 × 1 × 1 × 5 4 1 × 1 5 × 1 5 × 1 4 ] = [ 0.508 1.968 2.236 0.447 ] \mathbf{w}_i = \left[ \begin{matrix} \sqrt[4]{1\times\frac{1}{3}\times\frac{1}{5}\times1} \\ \sqrt[4]{3\times1\times1\times5} \\ \sqrt[4]{5\times1\times1\times5} \\ \sqrt[4]{1\times\frac{1}{5}\times\frac{1}{5}\times1} \\ \end{matrix} \right] =\left[ \begin{matrix} 0.508\\ 1.968\\ 2.236\\ 0.447 \end{matrix} \right] wi= 41×31×51×1 43×1×1×5 45×1×1×5 41×51×51×1 = 0.5081.9682.2360.447

    2. w i \mathbf{w}_i wi 归一化得到要素相对权重 w i 0 \mathbf{w}_i^0 wi0


      w 0 = [ 0.508 0.508 + 1.968 + 2.236 + 0.447 1.968 0.508 + 1.968 + 2.236 + 0.447 2.236 0.508 + 1.968 + 2.236 + 0.447 0.447 0.508 + 1.968 + 2.236 + 0.447 ] = [ 0.099 0.381 0.433 0.087 ] \mathbf{w}^0 = \left[ \begin{matrix} \frac{0.508}{0.508+1.968+2.236+0.447}\\ \frac{1.968}{0.508+1.968+2.236+0.447}\\ \frac{2.236}{0.508+1.968+2.236+0.447}\\ \frac{0.447}{0.508+1.968+2.236+0.447} \end{matrix} \right] = \left[ \begin{matrix} 0.099 \\ 0.381 \\ 0.433 \\ 0.087 \end{matrix} \right] w0= 0.508+1.968+2.236+0.4470.5080.508+1.968+2.236+0.4471.9680.508+1.968+2.236+0.4472.2360.508+1.968+2.236+0.4470.447 = 0.0990.3810.4330.087

    而对于采用方根法的通用公式为


    特征矩阵: A = [ a 11 a 12 ⋯ a 1 n a 21 ⋮ ⋱ a n 1 a n n ] , w i 0 = ( ∏ j = 1 n a i j ) 1 n ∑ i = 1 n ( ∏ j = 1 n a i , j ) 1 n , n = 1 , 2 , ⋯ , n 特征矩阵:A = \left[ \begin{matrix} a_{11}&a_{12}&\cdots&a_{1n}\\ a_{21}\\ \vdots&&\ddots\\ a_{n1}&&&a_{nn} \end{matrix} \right] ,\mathbf{w}_i^0 = \frac{(\prod_{j=1}^na_{ij})^{\frac{1}{n}}}{\sum_{i=1}^n (\prod_{j=1}^n a_{i,j})^{\frac{1}{n}}},n=1,2,\cdots,n 特征矩阵:A= a11a21an1a12a1nann wi0=i=1n(j=1nai,j)n1(j=1naij)n1,n=1,2,,n


    也可以使用求和法计算权重 w i 0 \mathbf{w}_i^0 wi0 ,这里只给出公式不给出本例的计算过程。求和法得到的 w i 0 \mathbf{w}_i^0 wi0 值可能与方根法求到的 w i 0 \mathbf{w}_i^0 wi0 不完全一样,这是正常的。


    w i 0 = 1 n ∑ j = 1 n a i j ∑ k = 1 n a i j , n = 1 , 2 , ⋯ , n \mathbf{w}_i^0 = \frac{1}{n}\sum_{j=1}^n\frac{a_{ij}}{\sum_{k=1}^na_{ij}},n = 1,2,\cdots,n wi0=n1j=1nk=1naijaij,n=1,2,,n

    1. 将判断矩阵的每列归一化,即 a i j ∑ k = 1 n a i j \frac{a_{ij}}{\sum_{k=1}^na_{ij}} k=1naijaij
    2. 将得到的新矩阵求各行的算数平均数得到 w i 0 \mathbf{w}_i^0 wi0
  • A w i 0 \mathbf{Aw}_i^0 Awi0 即为判断矩阵 A \mathbf{A} A 与权重 w i 0 \mathbf{w}_i^0 wi0 的矩阵点乘运算结果


    A w 0 = [ 1 1 3 1 5 1 3 1 1 5 5 1 1 5 1 1 5 1 5 1 ] ⋅ [ 0.099 0.381 0.433 0.087 ] = [ 0.4 1.546 1.744 0.349 ] \mathbf{Aw}^0 = \left[ \begin{matrix} 1 & \frac{1}{3} & \frac{1}{5} & 1 \\ 3 & 1 & 1 & 5 \\ 5 & 1 & 1 & 5 \\ 1 & \frac{1}{5} & \frac{1}{5} & 1 \end{matrix} \right]· \left[ \begin{matrix} 0.099\\ 0.381\\ 0.433\\ 0.087 \end{matrix} \right]= \left[ \begin{matrix} 0.4\\ 1.546\\ 1.744\\ 0.349 \end{matrix} \right] Aw0= 13513111515111511551 0.0990.3810.4330.087 = 0.41.5461.7440.349

  • λ m i \mathbf{λ}_{mi} λmi 是用于计算 λ m a x \mathbf{λ}_{max} λmax 的中间值,而 λ m a x \mathbf{λ}_{max} λmax 用于一致性检验。


    λ m i = A w i 0 w i 0 \mathbf{λ}_{mi} = \frac{\mathbf{Aw}_i^0}{\mathbf{w}_i^0} λmi=wi0Awi0

  • λ m a x \mathbf{λ}_{max} λmax 用于计算后续的 C . I . \mathbf{C.I.} C.I. 值,从而完成一致性检验。


    λ m a x = 1 n ∑ i = 1 n λ m i \mathbf{λ}_{max} = \frac{1}{n}\sum_{i=1}^{n}\mathbf{λ}_{mi} λmax=n1i=1nλmi

  • C . I . \mathbf{C.I.} C.I. R . I . \mathbf{R.I.} R.I. C . R . \mathbf{C.R.} C.R. C . I . \mathbf{C.I.} C.I. 为一致性指标, R . I . \mathbf{R.I.} R.I. 为平均随机一致性指标, C . R . \mathbf{C.R.} C.R. 为一致性指标,这些指标用于完成判断矩阵的一致性检验。


    C . I . = λ m a x − n n − 1 \mathbf{C.I.} = \frac{\mathbf{λ}_{max}-n}{n-1} C.I.=n1λmaxn


    R . I . \mathbf{R.I.} R.I. 的值要参考平均随机一致性指标表来确定,其值由 n \mathbf{n} n 即判断矩阵的阶 数,查下表得

    n \mathbf{n} n1234567891011121314
    R . I . \mathbf{R.I.} R.I.000.520.891.121.261.361.411.461.491.521.541.561.58

    本例中 n = 4 \mathbf{n}=4 n=4 R . I . = 0.89 \mathbf{R.I.} = 0.89 R.I.=0.89


    C . R . = C . I . R . I . \mathbf{C.R.}=\frac{\mathbf{C.I.}}{\mathbf{R.I.}} C.R.=R.I.C.I.


    C . R . < 0.1 \mathbf{C.R.} < 0.1 C.R.<0.1 则认为判断矩阵通过了一致性检验,若不满足条件则需要检查判断矩阵,并对其值进行调整。 本例中 C . R . = 0.012 < 0.1 \mathbf{C.R. = 0.012<0.1} C.R.=0.012<0.1,因此通过了一致性检验,可继续进行后续的步骤。

在完成目标层与准则层的层次单排序与一致性检验之后,还需对准则层到方案层的多个判断矩阵进行层次单排序与一致性检验。这里直接给出结果。

  • 三种空调对于价格的判断矩阵的层次单排序与一致性检验

    价格空调 A空调 B空调 C w i \mathbf{w}_i wi w i 0 \mathbf{w}_i^0 wi0 A w i 0 \mathbf{Aw}_i^0 Awi0 λ m i \mathbf{λ}_{mi} λmi
    空调 A11/71/50.3060.0750.2263.016
    空调 B7122.410.5921.7833.011
    空调 C51/211.3570.3331.0043.015
    λ m a x = 3.014 , C . I . = 0.007 , R . I . = 0.52 , C . R . = 0.013 < 0.1 \mathbf{λ}_{max} = 3.014,C.I. = 0.007,R.I. = 0.52,C.R. = 0.013<0.1 λmax=3.014C.I.=0.007R.I.=0.52C.R.=0.013<0.1
  • 三种空调对于噪声的判断矩阵的层次单排序与一致性检验

    噪声空调 A空调 B空调C w i \mathbf{w}_i wi w i 0 \mathbf{w}_i^0 wi0 A w i 0 \mathbf{Aw}_i^0 Awi0 λ m i \mathbf{λ}_{mi} λmi
    空调 A1252.1540.5701.7213.019
    空调 B1/2141.260.3331.0063.021
    空调 C1/51/410.3680.0970.2943.030
    λ m a x = 3.023 , C . I . = 0.012 , R . I . = 0.52 , C . R . = 0.023 < 0.1 \mathbf{λ}_{max} = 3.023,C.I. = 0.012,R.I. = 0.52,C.R. = 0.023<0.1 λmax=3.023C.I.=0.012R.I.=0.52C.R.=0.023<0.1
  • 三种空调对于功耗的判断矩阵的层次单排序与一致性检验

    功耗空调 A空调 B空调C w i \mathbf{w}_i wi w i 0 \mathbf{w}_i^0 wi0 A w i 0 \mathbf{Aw}_i^0 Awi0 λ m i \mathbf{λ}_{mi} λmi
    空调 A131/21.1450.3090.9273.000
    空调 B1/311/50.4050.1090.3283.009
    空调 C2512.1540.5821.7453.000
    λ m a x = 3.003 , C . I . = 0.0015 , R . I . = 0.52 , C . R . = 0.003 < 0.1 \mathbf{λ}_{max} = 3.003,C.I. = 0.0015,R.I. = 0.52,C.R. = 0.003<0.1 λmax=3.003C.I.=0.0015R.I.=0.52C.R.=0.003<0.1
  • 三种空调对于寿命的判断矩阵的层次单排序与一致性检验

    寿命空调 A空调 B空调C w i \mathbf{w}_i wi w i 0 \mathbf{w}_i^0 wi0 A w i 0 \mathbf{Aw}_i^0 Awi0 λ m i \mathbf{λ}_{mi} λmi
    空调 A11/51/30.4050.10.3103.100
    空调 B5142.410.6742.0783.083
    空调 C31/410.9090.2260.6953.075
    λ m a x = 3.086 , C . I . = 0.043 , R . I . = 0.52 , C . R . = 0.083 < 0.1 \mathbf{λ}_{max} = 3.086,C.I. = 0.043,R.I. = 0.52,C.R. = 0.083<0.1 λmax=3.086C.I.=0.043R.I.=0.52C.R.=0.083<0.1

注意


在层次单排序过程中的 平均随机一致性表( R . I . \mathbf{R.I.} R.I. 值表)是由蒙特卡洛算法模拟随机矩阵验证一致性是否可以接受得来的。有兴趣的读者可以查询,了解。

总结


完成一个判断矩阵的层次单排序与一致性检验的求值过程为,简单总结如下:

  1. 选定方法求 w i \mathbf{w_{i}} wi(尚未归一化的权重)
  2. 归一化 w i \mathbf{w_{i}} wi 得到 w i 0 \mathbf{w_{i}^0} wi0(相对重要性权重)
  3. 将判断矩阵 A 与 w i 0 \mathbf{w_{i}^0} wi0 矩阵点乘得到 A w i 0 \mathbf{Aw}_i^0 Awi0
  4. A w i 0 \mathbf{Aw}_i^0 Awi0 除以 w i 0 \mathbf{w_{i}^0} wi0 得到 λ m i \mathbf{λ}_{mi} λmi
  5. 使用 λ m i \mathbf{λ}_{mi} λmi 求得 λ m a x \mathbf{λ}_{max} λmax
  6. 利用 λ m a x \mathbf{λ}_{max} λmax C . I . \mathbf{C.I.} C.I.,查表得到 R . I . \mathbf{R.I.} R.I. 对应的值,将 C . I . \mathbf{C.I.} C.I. R . I . \mathbf{R.I.} R.I. 相除得到 C . R . \mathbf{C.R.} C.R.
  7. 比较 C . R . \mathbf{C.R.} C.R. 与 0.1 的大小,确定是否通过一致性检验,不通过则修改判断矩阵的值,直到通过一致性检验。
  8. 完成层次单排序,获得结果 w i 0 \mathbf{w_{i}^0} wi0

4. 层次总排序

层次总排序得出了方案层对于目标层的重要程度权重,从而我们可以选出权重最大的为决策结果

评价标准价格噪声功耗寿命
最终评分
总权重(w)
权重0.0990.3810.4330.087
空调 A0.0750.5700.3090.1000.367
空调 B0.5920.3330.1090.6740.291
空调 C0.3330.0910.5820.2260.342

以上表格关于四大评价指标对各空调的权重(第二行)来自于目标层与准则层判断矩阵的层次单排序结果权重。空调 ABC 对于四大评价指标的分别权重来自于准则层到方案层的判断矩阵层次单排序结果权重。表格中的最终得分计算方法是:用各评价指标的权重,乘上某空调各个指标对应的权重求和。以求空调 A 的最终得分为例,公式如下


空调 A 评分 = 0.099 × 0.075 + 0.381 × 0.570 + 0.433 × 0.309 + 0.087 × 0.100 = 0.367 空调 A 评分 = 0.099\times0.075+0.381\times0.570+0.433\times0.309+0.087\times0.100=0.367 空调A评分=0.099×0.075+0.381×0.570+0.433×0.309+0.087×0.100=0.367


空调 BC 的评分同理。因为 w 空调 A > w 空调 C > w 空调 B \mathbf{w_{空调A}}>\mathbf{w_{空调C}}>\mathbf{w_{空调B}} w空调A>w空调C>w空调B,所以我们通过 AHP 法得出购买空调 A 最符合我们的需求。


三. 不一致现象 与 一致性检验

上文中有提到判断矩阵中会出现不一致的现象,也使用计算一致性比例的问题来判断判断矩阵是否出现不一致的现象。本章节将较为详细的分析讲解判断矩阵中出现的不一致现象,并介绍一种和求和法与方根法同样常用的求要素相对权重的方法——特征值法。

正如上文中所提到的不一致现象,我们继续利用空调对寿命的判断矩阵来进行分析。

寿命空调 A空调 B空调 C
空调 A11/51/3
空调 B514
空调 C31/41

该判断矩阵在上一章中已经通过一致性检验。但我们仔细分析,会发现该判断矩阵中依然存在不一致的问题。我们进行下列推断


[ 2 , 1 ] = 5 ⇒ 空调 B 比空调 A 比较有优势 [ 3 , 1 ] = 3 ⇒ 空调 C 比空调 A 稍微有优势 则,空调 B 比空调 C 应该稍 微 ① 有优 势 ② [2,1] = 5 \Rightarrow 空调 B 比 空调 A 比较有优势\\ [3,1] = 3 \Rightarrow 空调 C 比 空调 A 稍微有优势\\ 则,空调 B 比 空调 C应该稍微^{①}有优势^{②} [2,1]=5空调B比空调A比较有优势[3,1]=3空调C比空调A稍微有优势则,空调B比空调C应该稍有优


在结论中有两小点:

  • 我们在上文中说明过,如果认为空调 C 比空调 B 更有优势则与②相反,违背了逻辑,这种不一致是不被允许的。假如我们颠倒空调 BC 的优势顺序,得到以下判断矩阵:

    寿命空调 A空调 B空调 C
    空调 A11/51/3
    空调 B511/4
    空调 C341
    λ m a x = 4.24 , C . I . = 0.62 , R . I . = 0.52 , C . R . = 1.192 > 0.1 \mathbf{λ}_{max} = 4.24,C.I. = 0.62,R.I. = 0.52,C.R. =1.192>0.1 λmax=4.24C.I.=0.62R.I.=0.52C.R.=1.192>0.1
    经过计算,发现一致性检验不通过。

    若我们将空调 BC 的优势程度写为一样有优势则得到以下判断矩阵:

    寿命空调 A空调 B空调 C
    空调 A11/51/3
    空调 B511
    空调 C311
    λ m a x = 3.866 , C . I . = 0.433 , R . I . = 0.52 , C . R . = 0.833 > 0.1 \mathbf{λ}_{max} = 3.866,C.I. = 0.433,R.I. = 0.52,C.R. =0.833>0.1 λmax=3.866C.I.=0.433R.I.=0.52C.R.=0.833>0.1
    也不通过一致性检验。因此一致性检验确实起到了避免判断矩阵中数值出现逻辑冲突的情况

  • 在结论①中,其确定了的是空调 B 比空调 C 优势的程度大小为多少。结论中我们写的是 “稍微有优势”,那么判断矩阵中对应的位置应该是 3 和 1/3,但原题目中判断矩阵对应的位置为 4 和 1/4。我们可以试着计算一下判断矩阵是否通过一致性检验:
    寿命空调 A空调 B空调 C
    空调 A11/51/3
    空调 B513
    空调 C31/31
    λ m a x = 3.029 , C . I . = 0.0145 , R . I . = 0.52 , C . R . = 0.028 < 0.1 \mathbf{λ}_{max} = 3.029,C.I. = 0.0145,R.I. = 0.52,C.R. =0.028<0.1 λmax=3.029C.I.=0.0145R.I.=0.52C.R.=0.028<0.1
    通过一致性检验。而原来的 4 与 1/4 也通过了一致性检验,因此可见在基本的谁比谁有优势确定后,其优势程度大小是有可调节的弹性的。这是因为相对重要性标度本身对于要素之间的优势程度定义是模糊的。

四. (补充) 特征值法求相对重要性权重

上文中有介绍两种求要素相对重要性权重的方法:方根法与求和法。本章介绍一种和这两种同样常用的方法来求权重——特征值法。

  • 特征向量与特征值[2]


    A 为 n × n 矩阵, x 为非零向量, 若存在数 λ 使得 A x = λ x 有非平凡解 x , 则称 λ 为 A 的特征值, x 称为对应与 λ 的特征向量。 \mathbf{A} 为 \mathbf{n\times n} 矩阵,\mathbf{x} 为非零向量,\\若存在数 \mathbf{\lambda} 使得 \mathbf{Ax=\lambda x} 有非平凡解 \mathbf{x},\\则称 \mathbf{\lambda} 为 \mathbf{A} 的特征值,\mathbf{x} 称为对应与 \mathbf{\lambda} 的特征向量。 An×n矩阵,x为非零向量,若存在数λ使得Ax=λx有非平凡解x则称λA的特征值,x称为对应与λ的特征向量。


    利用特征值法求相对重要性权重,就是求判断矩阵的特征向量,并将特征向量列归一化,然后直接作为相对重要性权重向量。但这个方法对判断矩阵严格要求其为一致矩阵,而我们上例中的判断矩阵都是不完全一致的,因此不适用此方法(可重新确定判断矩阵的值使其为一致矩阵再用此方法)。

  • 一致矩阵


    若矩阵 A = [ a 11 a 12 ⋯ a 1 n a 21 ⋮ ⋱ a n 1 a n n ] 满足 : a i j > 0 a 11 = a 22 = ⋯ = a n n = 1 [ a i 1 , a i 2 , ⋯ , a i n ] = k i [ a 11 , a 12 , ⋯ , a 1 n ] 则称矩阵 A 为一致矩阵 若矩阵 A= \left[ \begin{matrix} a_{11}&a_{12}&\cdots&a_{1n}\\ a_{21}\\ \vdots&&\ddots\\ a_{n1}&&&a_{nn} \end{matrix} \right]满足: \\ \space\\ a_{ij}>0\\a_{11}=a_{22}=\cdots=a_{nn}=1\\ [a_{i1},a_{i2},\cdots,a_{in}] = k_i[a_{11},a_{12},\cdots,a_{1n}] \\则称矩阵 A 为一致矩阵 若矩阵A= a11a21an1a12a1nann 满足: aij>0a11=a22==ann=1[ai1,ai2,,ain]=ki[a11,a12,,a1n]则称矩阵A为一致矩阵


    由于涉及到的知识点过多,篇幅受限不做详细介绍与证明。


参考文献

[1] 汪应洛.系统工程[M].5版.北京:机械工业出版社,2015.12:123.

[2] David C. Lay,Steven R. Lay,Judi J. McDonald.线性代数及其应用[M].机械工业出版社:北京,2018.6:265.


文章内容来自个人学习总结
欢迎指出本文中存在的问题
未经本人同意禁止转载,不得用于商业用途

http://chatgpt.dhexx.cn/article/JZQFUf9w.shtml

相关文章

AHP层次分析法与python代码讲解(处理论文、建模)

目录 AHP是啥 题目 ①构建阶梯层次结构 ②构建判断矩阵 ④综合算术平均法 、几何平均法、特征值法求权重 方法1&#xff1a;算术平均法求权重 一般步骤 表达式解释 代码实现 方法2&#xff1a;几何平均法求权重 一般步骤 表达式解释 代码实现 方法3&#xff…

用人话讲明白AHP层次分析法(非常详细原理+简单工具实现)

用人话讲明白AHP层次分析法&#xff08;非常详细原理简单工具实现&#xff09; 文章目录 目录 1、前言与算法简述 2、AHP层次分析法过程 2.1 构建层次评价模型 2.2 构造判断矩阵 2.3 层次单排序与一致性检验 2.3.1 层次单排序 2.3.2 求解最大特征根与CI值 2.3.3 根据…

微信公众号如何设置开发者密码(APPSecret)?

1.电脑端登录微信公众号&#xff0c;在左侧的导航栏找到</>开发里的“基本配置”&#xff0c;点击进入 2.基本配置页面如下 3.点击开发者密码&#xff08;APPSecret&#xff09;启用按钮 4.有弹窗提示用管理员的微信号扫码后才能操作 5.手机端管理员微信扫码&#xff0c;…

iOS “[App] if we're in the real pre-commit handler we can't actually add any new fences due

最近运行APP&#xff0c;发现了这个问题&#xff0c;本着宁可错看&#xff0c;不可放过的原则&#xff0c;上stackoverFlow学习了一下&#xff1a; 链接&#xff1a;http://stackoverflow.com/questions/38458170/ios-10-app-if-were-in-the-real-pre-commit-handler-we-cant-…

微信小程序重置AppSecret 之后需要做的事情

现在appSecret是密文的如果保存不妥当 需要管理账号用重置 具体位置如下&#xff1a; 点击重置之后 2小时之内程序不会出现任何错误 但是2小时之后 当你打开你的微信小程序之后就会发现有很多接口出现如下错误&#xff1a; invalid appsecret 这个时候只需要联系后端同学 将之…

如何查看小程序的APPID和AppSecret

小程序APPID可以在手机上打开小程序后&#xff0c;点击右上角三点&#xff1a; 然后点击中间位置的小程序名称&#xff0c;进入小程序介绍页面&#xff1a; 点击“更多资料”后&#xff0c;进入页面就可以看到上方有APPID&#xff1a; 另一种方法&#xff1a; 在微信公众平台登…

微信小程序——查看AppId和AppSecret

1.登录微信公众平台&#xff1a;https://mp.weixin.qq.com/ 2.点击开发管理--------------》开发设置&#xff1a;

uniapp开发微信小程序解决上线:审核问题“包含明文的AppSecret,存在泄漏的安全风险“以及上线之后接口请求失败

微信小程序上线审核提示&#xff1a;审核问题“包含明文的AppSecret&#xff0c;存在泄漏的安全风险“ 解决&#xff1a; 原因是我在登录通过uni.login获取到code然后用code获取openid时用到了AppSecret&#xff0c;因为之前后端没空写接口我就在前端自己获取的openid&#xff…

通过appId和appSecret生成accessToken访问api后端接口(接口授权)

功能点 &#xff08;1&#xff09;申请获取appId和appSecret &#xff08;2&#xff09;通过appId和appSecret获取accessToken &#xff08;3&#xff09;mysql和redis进行key-value键值对存储 &#xff08;4&#xff09;对需要的接口url进行请求地址拦截 效果图&#xff1a; &…

微信开发者之AppID和AppSecret举例子

-- 请不要为爱你的人流泪&#xff0c;因为爱你的人不会让你流泪&#xff01; 序 今天对这2东西做个相对全面的介绍&#xff0c;不一定深入&#xff0c;但是对实际开发还是很有必要的 我们在微信开发中总是会绕不开2个单词&#xff1a; AppID&#xff1a;开发者ID,有些叫AppK…

安全课堂|关于小程序AppSecret密钥泄露漏洞官方

原文链接:https://developers.weixin.qq.com/community/minihome/doc/0004a84fcb0bb0e89eddbaa5156401 安全课堂&#xff5c;关于小程序AppSecret密钥泄露漏洞官方 微信团队04-27 为进一步提升小程序的安全性和用户体验&#xff0c;目前平台对提审的小程序均需进行安全检测&…

【微信小程序】项目上线所需AppID、AppSecret和原始ID获取的逐步方法

一、简述 本文内容面向业务老师&#xff0c;通过详细的逐步方法&#xff0c;帮助对流程不熟悉的有微信小程序管理员权限的业务老师&#xff0c;通过微信公众平台&#xff0c;获得项目上线所需的AppID、AppSecret、原始ID&#xff0c;不熟悉流程的开发人员也可以阅读。 二、进…

微信小程序AppID、AppSecret如何获取

进入微信公众平台 https://mp.weixin.qq.com/ 获取AppID&#xff08;小程序ID&#xff09; 微信公众平台 - 开发 - 开发管理 - 开发设置 获取AppSecret 管理员用户&#xff0c;同AppID页面&#xff0c;点击“生成”&#xff0c;生成小程序秘钥 注意&#xff1a;尽量只生成一次&…

值得收藏!这 100 个 Python 实战小项目真棒!

学习 Python 会有这么一个阶段&#xff0c;太简单的程序看不上眼&#xff0c;复杂的开源项目又有点力不从心&#xff0c;这个时候&#xff0c;你就需要接触点简单的 Python 小项目来提升 Python 技能。 最近逛GitHub, 碰巧碰上有这样一个项目&#xff0c;收集了 100 个实用的 …

2022最新python100个实战练手项目,【附源码】,快来学习起来吧!

Python是目前最好的编程语言之一。由于其可读性和对初学者的友好性&#xff0c;已被广泛使用。那么要想学会并掌握Python&#xff0c;可以实战的练习项目是必不可少的。 接下来&#xff0c;我将给大家介绍20个非常实用的Python项目&#xff0c;帮助大家更好的学习Python。大家…

python爬虫实战小项目

本文所讲的爬虫实战属于基础、入门级别&#xff0c;使用的是python2.7实现的。 爬虫原理和思想 本项目实现的基本目标&#xff1a;在捧腹网中&#xff0c;把搞笑的图片都爬下来&#xff0c;注意不需要爬取头像的图片&#xff0c;同时&#xff0c;将图片命好名放在当前的img文件…

django项目实战基于Python实现的电影推荐系统

&#x1f496;&#x1f496;更多项目资源&#xff0c;最下方联系我们✨✨✨✨✨✨ 目录 Python项目介绍 资料获取 Python项目介绍 计算机毕业设计python毕设项目之django电影推荐系统-IT实战课堂_哔哩哔哩_bilibili计算机毕业设计python毕设项目之django电影推荐系统-IT实战…

给缺少Python项目实战经验的人

我们在学习过程中最容易犯的一个错误就是&#xff1a;看的多动手的少&#xff0c;特别是对于一些项目的开发学习就更少了&#xff01; 没有一个完整的项目开发过程&#xff0c;是不会对整个开发流程以及理论知识有牢固的认知的&#xff0c;对于怎样将所学的理论知识应用到实际…

Python项目实战 —— 淘宝用户行为分析

Python项目实战 Python项目实战 —— 0淘宝用户行为分析 一、背景 本数据集共有大约1200万条数据&#xff0c;数据为淘宝APP2014年11月18日至2014年12月18日的用户行为数据&#xff0c;字段分别是&#xff1a;user_id用户身份(已脱敏)、item_id商品ID(已脱敏)、behavior_type…

Python实战小项目

不是很稀饭《复联》嘛&#xff0c;看了《复联4》&#xff0c;就用50行Python代码做了这些&#xff1a; 视频展示&#xff1a;50行代码玩转《复仇者联盟》 教程地址&#xff1a;图片转字符画 相关教程地址&#xff1a;视频转字符动画 当然&#xff0c;这个仅仅是初学者的一个…