谁会用matlab做AHP,求解矩阵的最大特征值和对应的正规化特征向量并做一致性检验?毕业论文中需要用matlab求解矩阵的最大特征值及对应的正规化特征向量并做一致性检验.因为没有matlab基础,所

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/30 09:29:14

谁会用matlab做AHP,求解矩阵的最大特征值和对应的正规化特征向量并做一致性检验?毕业论文中需要用matlab求解矩阵的最大特征值及对应的正规化特征向量并做一致性检验.因为没有matlab基础,所
谁会用matlab做AHP,求解矩阵的最大特征值和对应的正规化特征向量并做一致性检验?
毕业论文中需要用matlab求解矩阵的最大特征值及对应的正规化特征向量并做一致性检验.因为没有matlab基础,所以程序不会,
以以下矩阵为例:
U U1 U2 U3 U4 U5 U6
U1 1 1 1/4 3 3 3
U2 1 1 1/4 3 3 3
U3 4 4 1 5 5 5
U4 1/3 1/3 1/5 1 2 2
U5 1/3 1/3 1/5 1/2 1 3
U6 1/3 1/3 1/5 1/2 1/3 1
麻烦请给我完整代码,剩下的数据我可以带入代码中用matlab跑下.
在网上搜的答案总有问题.
并留下联系方式以防我后面遇到疑问需要请教就最好了.
抽到盲审的论文伤不起!

谁会用matlab做AHP,求解矩阵的最大特征值和对应的正规化特征向量并做一致性检验?毕业论文中需要用matlab求解矩阵的最大特征值及对应的正规化特征向量并做一致性检验.因为没有matlab基础,所
A=[]; %原始对比矩阵数据,对应你的U矩阵
A1=A;
[m,n]=size(A) ; %求出矩阵的行和列
z=sum(A); %列向量归一
for i=1:m
for j=1:n
A(i,j)=A(i,j)/z(j);
end
end
A; %列向量归一后的矩阵
B=cumsum(A,2); %行向量求和
for i=1:m-1 %去掉前m-1列,得单列向量
B(:,1)=[];
end
B2=sum(B); %列归一
for i=1:length(B)
B(i)=B(i)/B2;
end
B; %归一后得矩阵
TZXL=A1*B ; %所求得特征向量
for i=1:m %和法求最大特征向量
T(i)=TZXL(i)/B(i);
end
ZD=sum(T)/m %ZD为最大特征根
B %最大特征根对应的特征向量
RI=[0 0 0.58 0.9 1.12 1.24 1.32 1.41 1.45 1.49 1.51];%RI为随机一致性指标,如果不够的话,根据你的变量个数改变吧,网上一般有这个表
CI=(ZD-m)/(m-1) %CI为一致性指标
CR=CI/RI(m) %CR为一致性比率,