|
这段代码是用于实现AHP(层次分析法)的权重计算。下面是代码的解释: 数据读入:
2 [* Q/ q, k; n7 ` t1 |- 将评判矩阵以矩阵形式存储在变量A中。评判矩阵A大小为n x n,其中n为矩阵的维度。 D' M7 ^, p5 j4 ]9 d
一致性检验和权向量计算: 0 M; Q9 A" N$ ~. i* L' O
- 使用特征值分解(eig函数)对评判矩阵A进行分解,得到特征向量和特征值。
- 从特征值中提取最大特征值r。
- 计算一致性指标CI,通过计算(r-n)/(n-1)得到。
- 构建一致性比例指标RI(随机一致性指标)的参照表。
- 计算一致性比例CR,通过计算CI除以RI的最后一个值得到。
- 判断一致性检验结果CR是否小于0.10,若小于,则通过,否则不通过。9 X/ a: |9 k' U1 q: V+ M3 O9 J' e4 j
权向量计算:
# {9 j8 ?' X3 h. k# R% C- 将特征向量的第一列除以该列的和,得到权向量w。
- 将权向量w转置,使其变成行向量。
7 l" w4 V. j0 w
结果输出: # P% Z) ~( b/ {+ s
- 输出一致性指标CI、一致性比例CR、一致性检验结果、特征值r和权向量w的结果。
6 r" z5 S8 G+ k) W. L/ P/ }* `
该代码假设评判矩阵A已经提前定义好。如果要使用自定义的评判矩阵,请修改变量A的值。
: o7 X x/ J& j% D, o( _
& b; j3 q6 {, Y! `# u3 a
. |8 Q8 l a0 h0 o6 \
# O) b( X& l- v( J; L# ?, p5 _: V
; ~/ S* {- v8 D9 w+ n |