|
这段代码是用于实现AHP(层次分析法)的权重计算。下面是代码的解释: 数据读入:
& h% {3 q4 z6 X6 F' }7 t- I o- 将评判矩阵以矩阵形式存储在变量A中。评判矩阵A大小为n x n,其中n为矩阵的维度。4 G/ Q1 g' N% M2 Y6 U7 d
一致性检验和权向量计算:
, Y6 n' L4 P$ H0 O" f5 A1 c( m3 f- 使用特征值分解(eig函数)对评判矩阵A进行分解,得到特征向量和特征值。
- 从特征值中提取最大特征值r。
- 计算一致性指标CI,通过计算(r-n)/(n-1)得到。
- 构建一致性比例指标RI(随机一致性指标)的参照表。
- 计算一致性比例CR,通过计算CI除以RI的最后一个值得到。
- 判断一致性检验结果CR是否小于0.10,若小于,则通过,否则不通过。3 n$ T3 H2 T$ V6 P& p h
权向量计算:
* {2 F) O8 [3 m- 将特征向量的第一列除以该列的和,得到权向量w。
- 将权向量w转置,使其变成行向量。( Y, F( J9 P$ T' K7 t& H# d
结果输出: + \' U8 B; T& `9 S# l9 \
- 输出一致性指标CI、一致性比例CR、一致性检验结果、特征值r和权向量w的结果。* v0 j c% |7 H5 O: s
该代码假设评判矩阵A已经提前定义好。如果要使用自定义的评判矩阵,请修改变量A的值。4 [7 z% V F. d5 p! R5 l8 v
' e% F, r l, @( c/ t+ a
, k" s5 M/ i- v& Z# y2 ]' k
2 _/ c( R" I3 M2 X
; g: d# E8 L5 V# f# h3 N6 z |