基本步驟:
1.建立層次分析結構模型。常見的有目標層-準則層-方案層模型。
2.構造成對比較矩陣。常用的有1-9尺度。尺度大小取決於下層的元素個數。
3.計算權向量並作一致性檢驗。引入一致性指標ci,ci越大,不一致越嚴重。引入隨機一致性指標ri。定義一致性比率cr=ci/ri。cr<0.1時,通過一致性檢驗。
4.計算組合權向量作組合一致性檢驗,組合權向量可作為決策的定量依據。方案層對目標層的組合權向量為ww*w。選擇組合權向量大的元素作為輸出結果。
**:
function example9_12
clca=[1
,1,1
,4,1
,1/2
1,1,
2,4,
1,1/
21,1
/2,1
,5,3
,1/2
1/4,
1/4,
1/5,
1,1/
3,1/
31,1
,1/3
,3,1
,12,
2,2,
3,3,
1];%一致矩陣
[x,y]
=eig(a)
;eigenvalue=diag(y)
;lamda=
max(eigenvalue)
;ci1=
(lamda-6)
/5;cr1=ci1/
1.24
w1=x(:,
1)/sum
(x(:,1
))b1=[1,
1/4,
1/2;
4,1,
3;2,
1/3,
1];[x,y]
=eig(b1)
;eigenvalue=diag(y)
;lamda=eigenvalue(1)
;ci21=
(lamda-3)
/2;cr21=ci21/
0.58
w21=x(:,
1)/sum
(x(:,1
))b2=[11
/41/
5;41
1/2;
521]
;[x,y]
=eig(b2)
;eigenvalue=diag(y)
;lamda=eigenvalue(1)
;ci22=
(lamda-3)
/2;cr22=ci22/
0.58
w22=x(:,
1)/sum
(x(:,1
))b3=[13
1/3;
1/31
1/7;
371]
;[x,y]
=eig(b3)
;eigenvalue=diag(y)
;lamda=eigenvalue(1)
;ci23=
(lamda-3)
/2;cr23=ci23/
0.58
w23=x(:,
1)/sum
(x(:,1
))b4=[11
/35;
317;
1/51
/71]
;[x,y]
=eig(b4)
;eigenvalue=diag(y)
;lamda=eigenvalue(1)
;ci24=
(lamda-3)
/2;cr24=ci24/
0.58
w24=x(:,
1)/sum
(x(:,1
))b5=[11
7;11
7;1/
71/7
1];[x,y]
=eig(b5)
;eigenvalue=diag(y)
;lamda=eigenvalue(1)
;ci25=
(lamda-3)
/2;cr25=ci25/
0.58
w25=x(:,
1)/sum
(x(:,1
))b6=[17
9;1/
711;
1/91
1];[x,y]
=eig(b6)
;eigenvalue=diag(y)
;lamda=eigenvalue(1)
;ci26=
(lamda-3)
/2;cr26=ci26/
0.58
w26=x(:,
1)/sum
(x(:,1
))w_sum=
[w21,w22,w23,w24,w25,w26]
*w1ci=
[ci21,ci22,ci23,ci24,ci25,ci26]
;cr=ci*w1/
sum(
0.58
*w1)
結果如下:
可以看的出來,在cr<0.1即通過一致性檢驗的情況下,我們選擇權重最大的作為輸出結果。
層次分析法MATLAB
輸入成對比較矩陣,輸出權重值和一致性檢驗結果。disp 請輸入判斷矩陣a n階 a input a n,n size a x ones n,100 y ones n,100 m zeros 1,100 m 1 max x 1 y 1 x 1 x 2 a y 1 m 2 max x 2 y 2 x 2...
MATLAB學習 層次分析法(AHP)
matlab實現 層次分析法 ahp disp 請輸入判斷矩陣a n階 a input a n,n size a x ones n,100 y ones n,100 m zeros 1,100 m 1 max x 1 y 1 x 1 x 2 a y 1 m 2 max x 2 y 2 x 2 m 2...
層次分析法
ahp分析方法,其基本步驟可歸納為 1 建立遞階層次結構 建立遞階層次結構是ahp法中關鍵一步,如圖所示。首先,把複雜問題中所包含的因素分解為不同層次。同一層次的因素作為準則對下一層次的某些因素起支配作用,同時,它又受上乙個層次因素的支配。這種從上到下的支配關係形成了乙個遞階層次結構,處於最上層的是...