资源简介
层次分析法(AHP)源码,新手亲测亲写,写的比较简单,有问题留言回复
代码片段和文件信息
% 子函数 层次单排序
function [eigenvalueMaxCRw] = AHPfun(matrix);
%% AHP step1:计算各判断矩阵最大特征值
% [vd] = eig(m);
% V是以列向量对应的特征向量
% D是对角线上为特征值的矩阵
[MaMad] = eig (matrix);
% 取出对角线元素为特征值
D = diag(Mad);
[D I] = sort(D ‘descend‘);
% 最大特征值
eigenvalueMax = max(D);
%% AHP step2:计算CR 检验判断矩阵一致性
% 获取判断矩阵自由度
[mn]=size(matrix);
% 录入RI 平均随机一致性指标
RI = [ 0 0 0.58 0.90 1.12 1.24 1.32 1.41 1.45 ] ;
if m > 9
RIvalue = 1.45 ;
else
RIvalue = RI(m) ;
end
% 计算CI
CI = (eigenvalueMax-m)/(m-1) ;
% 计算CR
CR = CI / RIvalue ;
%% AHP step3:层次单排序
% 计算判断矩阵每一行乘积
multValue = ones(1m) ;
for i= 1:m
for j=1:n
multValue(1i) = multValue(1i) * matrix(ij) ;
end
end
% 对乘积以自由度开根号
powValue = ones(1m) ;
for i=1:m
powValue(1i)=( multValue(1i).^(1/m) );
end
% 归一化求权重值
sumValue = sum(powValue2) ;
w = ones(1m) ;
for i=1:m
w(1i)= powValue(1i) / sumValue ;
end
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1880 2016-09-16 19:55 AHPmain.m
文件 1034 2016-04-09 10:14 AHPmodel.m
文件 198 2016-04-09 21:59 matrixMult.m
文件 220 2016-09-06 20:03 AHP_CR.m
文件 847 2016-09-06 22:17 AHP_Eigenvector.m
文件 1717 2015-10-25 18:08 AHP_Weights.m
文件 453 2015-10-25 21:34 AHP_WeightsSequence.m
文件 1051 2016-04-09 10:19 AHPfun.m
- 上一篇:递归下降语法分析实验报告
- 下一篇:suitecrm7.10.7 中文语言包
评论
共有 条评论