%层次分析法权重函数
function [w,CR]= cengci(A)[~, 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));
end
a =sum(y(:,i));
w = y(:,i)/a;
t = m(i);%一致性检验
CI =(t-n)/(n-1);
RI =[000.520.891.121.261.361.411.461.491.521.541.561.581.59];
CR = CI/RI(n);if CR >=0.1
disp('CR=');
disp(CR);
disp('一致性检验不通过,继续修改判断矩阵');else
disp('CR=');
disp(CR);
disp('判断矩阵的一致性可以接受');
disp(w);
end
%使用层次分析法权重函数
clear
clc
%输入自己的判断矩阵
A =;[w,CR]= cengci(A);