|
这段代码是用于实现AHP(层次分析法)的权重计算。下面是代码的解释: 数据读入:
! \0 ?( j3 B" V' H- 将评判矩阵以矩阵形式存储在变量A中。评判矩阵A大小为n x n,其中n为矩阵的维度。! ]7 {* Q& j. m8 Y# i. z9 {
一致性检验和权向量计算:
) C# r1 q$ j% {% t5 n# o; m+ g- 使用特征值分解(eig函数)对评判矩阵A进行分解,得到特征向量和特征值。
- 从特征值中提取最大特征值r。
- 计算一致性指标CI,通过计算(r-n)/(n-1)得到。
- 构建一致性比例指标RI(随机一致性指标)的参照表。
- 计算一致性比例CR,通过计算CI除以RI的最后一个值得到。
- 判断一致性检验结果CR是否小于0.10,若小于,则通过,否则不通过。
7 [; F6 T5 v5 M4 a R
权向量计算:
" @+ z! P5 \2 I0 W7 U+ L, X- 将特征向量的第一列除以该列的和,得到权向量w。
- 将权向量w转置,使其变成行向量。& l" F2 u) s; X' f7 f0 M
结果输出: ! h0 y) Z* V6 D) }: F2 S
- 输出一致性指标CI、一致性比例CR、一致性检验结果、特征值r和权向量w的结果。
: c, D- m: W* H; [
该代码假设评判矩阵A已经提前定义好。如果要使用自定义的评判矩阵,请修改变量A的值。
! s4 N& J7 H' a/ R. j9 w% v8 a1 v7 W- Q: r
4 _" u6 i* l2 U$ J. p# b" u1 g. c# U
5 b% z7 M3 |, z" S2 V0 z6 r5 J |