|
程序:MATLAB program for AHP
clc,clear
fid=fopen('txt.txt','r');
n1=6;n2=4;
a=[];
for i=1:n1
tmp=str2num(fgetl(fid));
a=[a;tmp];% Read criterion layer judgment matrix
end
for i=1:n1
str1=char(['b',int2str(i),'=[];']);
str2=char(['b',int2str(i),'=[b',int2str(i),';tmp];']);
eval(str1);
for j=1:n2
tmp=str2num(fgetl(fid));
eval(str2); % Judgment matrix of reading scheme layer
end
end
ri=[0,0,0.58,0.90,1.12,1.24,1.32,1.41,1.45]; % Consistency index
[x,y]=eig(a);
lamda=max(diag(y));
num=find(diag(y)==lamda);
w0=x(:,num)/sum(x(:,num));
cr0=(lamda-n1)/(n1-1)/ri(n1)
for i=1:n1
[x,y]=eig(eval(char(['b',int2str(i)])));
lamda=max(diag(y));
num=find(diag(y)==lamda);
w1(:,i)=x(:,num)/sum(x(:,num));
cr1(i)=(lamda-n2)/(n2-1)/ri(n2);
end
cr1, ts=w1*w0, cr=cr1*w0,w0,w1
Powered by Discuz! X2.5 © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 ) 论坛法律顾问:王兆丰
GMT+8, 2025-6-20 00:25 , Processed in 0.259228 second(s), 27 queries .