輸入成對比較矩陣,輸出權重值和一致性檢驗結果。
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);
p=0.0001;i=2;k=abs(m(2)-m(1));
while k>p
i=i+1;
x(:,i)=a*y(:,i-1);
m(i)=max(x(:,i));
y(:,i)=x(:,i)/m(i);
k=abs(m(i)-m(i-1));
enda=sum(y(:,i));
w=y(:,i)/a;
t=m(i);
disp(w);
%以下是一致性檢驗
ci=(t-n)/(n-1);ri=[0 0 0.52 0.89 1.12 1.26 1.36 1.41 1.46 1.49 1.52 1.54 1.56 1.58 1.59];
cr=ci/ri(n);
if cr<0.10
disp('此矩陣的一致性可以接受!');
disp('ci=');disp(ci);
disp('cr=');disp(cr);
end
矩陣例子:
[1, 1/2, 4, 3, 3;2, 1, 7, 5, 5;
1/4, 1/7, 1, 1/2, 1/3;
1/3, 1/5, 2, 1, 1;
1/3, 1/5, 3, 1, 1;]
[1,2,5;
1/2,1,2;
1/5,1/2,1;]
[1,1/3,1/8;
3,1,1/3;
8,3,1;]
[1,1,3;
1,1,3;
1/3,1/3,1;]
[1,3,4;
1/3,1,1;
1/4,1,1;]
[1,1,1/4;
1,1,1/4;
4,4,1;]
層次分析法(Matlab實現)
基本步驟 1.建立層次分析結構模型。常見的有目標層 準則層 方案層模型。2.構造成對比較矩陣。常用的有1 9尺度。尺度大小取決於下層的元素個數。3.計算權向量並作一致性檢驗。引入一致性指標ci,ci越大,不一致越嚴重。引入隨機一致性指標ri。定義一致性比率cr ci ri。cr 0.1時,通過一致性...
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法中關鍵一步,如圖所示。首先,把複雜問題中所包含的因素分解為不同層次。同一層次的因素作為準則對下一層次的某些因素起支配作用,同時,它又受上乙個層次因素的支配。這種從上到下的支配關係形成了乙個遞階層次結構,處於最上層的是...