Matlab笔记——层次分析法020
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
20. 层次分析法
一、概述
层次分析法(Analytic Hierarchy Process, AHD)是将要决策的问题及其有关因素分解成目标、准则、方案等层次,进而进行定性和定量分析的决策方法。它的特征是合理地将定性与定量决策结合起来,按照思维、心理的规律把决策过程细致化(层次化、数量化)。
层次分析法广泛地应用到处理复杂的决策问题,而决策是基于该方法计算出的权重,所以也常用来确定指标的权重。
层次分析法的基本思路与人们对一个决策问题的思维、判断过程大体上是一样的。例如,选购一台笔记本电脑,假设有三种不同品牌款式的笔记本电脑A、B、C供选择。我们一般会根据价格、外观、重量、用途、功耗、品牌等一些准则去反复比较这个三个候选。首先,会确定这些准则在自己心目中各占多大比重,不同的人这种比重会有很大差异(喜欢玩游戏的人看重硬件性能和散热、预算有限的人看重价格等)。其次,还会就每一个准则将A、B、C进行对比,比如A 最便宜,B次之;C性能最好,B次之;C的品牌最知名等。最后,将这两个层次的比较判断进行综合,在A、B、C中确定一台作为最符合自己需求的电脑。
二、算法步骤
1. 将问题条理化、层次化,建立层次结构模型
1)最高层(目标层)——只有一个元素:决策目标;
2)中间层(准则层)——考虑的因素,决策的准则、子准则;
3)最底层(方案层)——决策时的备选方案、措施。
层次分析法要解决的问题是,求出最底层对最高层的相对权重,以此对最底层的方案、措施进行排序,选择最优方案。
注1:为了避免两两比较判断过于复杂,每层次中各元素所支配的元素一般不要超过9个,否则应划分为若干子层;
注2:层次分析法只考虑相邻两个层次间自上向下的支配作用,认为同一层次的元素间相互独立,若考虑进来需要网络分析法(ANP )。
例如前文提到的选购笔记本电脑的决策模型,可以建立如下的层次结构:
2. 构造判断矩阵(成对比较矩阵)
构造好层次模型后,针对某一层来讲,在比较第i 个元素与第j 个元素相对于上一层某个因素的重要性时,使用数量化的相对权重a ij 来表示,假设共有n 个元素参与比较,则矩阵
1111()n ij n n n nn a a A a a a ⨯⎛⎫ ⎪== ⎪ ⎪⎝⎭
L
M O
M L
称为判断矩阵(或成对比较矩阵)。
Saaty 根据绝大多数人认知事物的心理习惯,建议用1~9及其倒数作为标度来确定a ij 的值。
其中,2, 4, 6, 8分别介于1, 3, 5, 7, 9对应的重要程度之间。显然,A 中的元素满足:
i) a ij > 0; ii) a ji = 1/a ij ; iii) a ii =1
称为正互反矩阵。
例如,选购笔记本电脑模型中,可以根据实际三台电脑的重量得到电脑对准则层B 3的判断矩阵(a ij 可以取笔记本电脑j 与i 的重量之比,重量越轻越好):
311/31/5313/555/31B C A -⎛⎫ ⎪= ⎪ ⎪⎝⎭
3. 层次单排序及判断矩阵的一致性检验
通常用特征根法从判断矩阵导出,单一准则下元素相对排序权重。 定义若n 阶正互反矩阵 (a ij )n ×n 满足a ik a kj = a ij (对应a ij =w i /w j , 故需要a ik a kj =(w i /w k )/(w k /w j ) = a ij ),则称(a ij )n ×n 为一致性矩阵。
特征根法的基本思想是,当正互反矩阵(a ij)n×n为一致性矩阵时,对应于判断矩阵的最大特征根λmax的特征向量,经归一化后(使向量中各元素之和等于1)即为排序权向量,记为w, w的元素为同一层次因素对于上一层次某因素相对重要性的排序权值,这一过程称为层次单排序。
能否进行层次单排序,就看判断矩阵是否为一致性矩阵,有如下定理:
定理n阶正互反矩阵A为一致性矩阵的充要条件是,A的最大特征值λmax = n.
在实际操作中,由于客观事物的复杂性以及人们对事物判断比较时的模糊性,很难构造出完全一致的判断矩阵。因此,Satty在构造层次分析法时,提出了一致性检验,所谓一致性检验是指判断矩阵允许有一定不一致的范围。
一致性检验步骤如下:
1)计算判断矩阵A的最大特征值λmax;
2)求出一致性指标(Consistencey Index ):
max C.I.1n
n λ-=-
C.I.=0表示完全一致,C.I.越大越不一致;
3)用随机模拟取平均的方法,求相应的平均随机一致性指标R.I., 或者直接用Satty 模拟1000次得到的R.I.表:
4)计算一致性比率:
C.I.C.R.=R.I.
5)判断,当C.R.<0.1时,认为判断矩阵A 有满意的一致性;若C.R.≥0.1, 应考虑修正判断矩阵A.
4. 计算各元素对目标层的合成权重(层次总排序)
为了实现层次分析法的最终目的,需要从上而下逐层进行各层元素对目标合成权重的计算。
设已计算出第k-1层n k -1个元素相对于目标的合成权重为:
1
(1)11112(,,,)k k k k k T n w w w w -----=L 再设第k 层的n k 个元素关于第k-1层第j 个元素(j=1,…,n k -1)的单一准则排序权重向量为:
()()()12(,,,)k k
k k k T j j j n j u u u u =L
上式对k 层的n k 个元素是完全的,若某些元素不受k-1层第j 个元
素支配,相应位置用0补充,于是得到n k ×n k -1阶矩阵:
111()()()11121()()()21222()
()()()12k k k k k k k k k n k k k n k k k k n n n n u u u u u u U u u u ---⎛⎫ ⎪ ⎪= ⎪ ⎪ ⎪⎝⎭L L M M O
M L 从而可以得到第k 层的n k 个元素关于目标层的合成权重向量:
()()(1)k k k w U w -=
按递归展开得
()()(1)(3)(2)k k k w U U U w -=L
写成分量形式为
1
()
()(1)1, 1,,k n k k k i ij j k j w u w i n --===∑L
各层元素对目标层的合成排序权重向量是否可以满意接受,与单一准则下的排序问题一样,需要进行综合一致性检验:
当C.R.(k)< 0.1时,则认为层次结构在第k 层以上的判断具有整体满意的一致性。
注:实际应用中,整体一致性检验常不予进行。主要原因是,整