MATLAB实现层次分析法计算权重的代码函数实现

MATLAB实现层次分析法计算权重的代码函数实现function Q=AHP(A)
[m,n]=size(A);
RI=[0 0 0.58 0.90 1.12 1.24 1.32 1.41 1.45 1.49 1.51];
制礼作乐
R=rank(A);                        %求判断矩阵的秩
[V,D]=eig(A);                      %求判断矩阵的特征值特征向量,V特征值,D特征向量;
东茛宕碱tz=max(D);
B=max(tz);                        %最⼤特征值
[row, col]=find(D==B);            %最⼤特征值所在位置
C=V(:,col);                        %对应特征向量
CI=(B-n)/(n-1);                    %计算⼀致性检验指标CI
CR=CI/RI(1,n);
if CR<0.10
disp('CI=');disp(CI);
disp('CR=');disp(CR);
disp('对⽐矩阵A通过⼀致性检验,各向量权重向量Q为:');
Q=zeros(n,1);
for i=1:n
Q(i,1)=C(i,1)/sum(C(:,1)); %特征向量标准化杜华瑾>赤麂
end
江泽惠
else
disp('对⽐矩阵A未通过⼀致性检验,需对对⽐矩阵A重新构造');
end
7075t6
以上写在M⽂件中,最后在主界⾯添加判断矩阵,调⽤该函数⽅法:AHP(A);

本文发布于:2024-09-20 21:14:03,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/483909.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:矩阵   特征向量   特征值   权重   致性
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议