|
这段代码是用于实现AHP(层次分析法)的权重计算。下面是代码的解释: 数据读入:
8 ~6 H' c' x; ~, E8 j7 c, Q7 n9 d0 K- 将评判矩阵以矩阵形式存储在变量A中。评判矩阵A大小为n x n,其中n为矩阵的维度。9 h, {4 `3 S5 j3 Z( W3 G8 C r
一致性检验和权向量计算: : K5 w- v* m# `7 Z; s8 c" X
- 使用特征值分解(eig函数)对评判矩阵A进行分解,得到特征向量和特征值。
- 从特征值中提取最大特征值r。
- 计算一致性指标CI,通过计算(r-n)/(n-1)得到。
- 构建一致性比例指标RI(随机一致性指标)的参照表。
- 计算一致性比例CR,通过计算CI除以RI的最后一个值得到。
- 判断一致性检验结果CR是否小于0.10,若小于,则通过,否则不通过。
" Q F: P: t+ R, ?( w; u* {
权向量计算: 7 t6 Y6 d" t( |$ }4 {# t8 @
- 将特征向量的第一列除以该列的和,得到权向量w。
- 将权向量w转置,使其变成行向量。
8 k' X, g, {- b
结果输出: ) E, q6 k1 y+ S1 |
- 输出一致性指标CI、一致性比例CR、一致性检验结果、特征值r和权向量w的结果。8 g( ~$ A' H, s2 M; [
该代码假设评判矩阵A已经提前定义好。如果要使用自定义的评判矩阵,请修改变量A的值。2 @' y9 t+ [3 m6 [
?& }: R' e2 ]1 n- `" O$ n" a
& |" b; W3 R4 G; R: G' x+ S
1 e) O& ~* ?5 ^, N/ b, O$ p! c2 g& c/ }$ Z' @0 o1 }" w6 y/ w
|