|
这段代码是用于实现AHP(层次分析法)的权重计算。下面是代码的解释: 数据读入:
$ m0 K; c! S" C# v- 将评判矩阵以矩阵形式存储在变量A中。评判矩阵A大小为n x n,其中n为矩阵的维度。8 T9 T. B' \( o6 F/ X
一致性检验和权向量计算: / }3 k) Z3 W$ N% L, ]9 p
- 使用特征值分解(eig函数)对评判矩阵A进行分解,得到特征向量和特征值。
- 从特征值中提取最大特征值r。
- 计算一致性指标CI,通过计算(r-n)/(n-1)得到。
- 构建一致性比例指标RI(随机一致性指标)的参照表。
- 计算一致性比例CR,通过计算CI除以RI的最后一个值得到。
- 判断一致性检验结果CR是否小于0.10,若小于,则通过,否则不通过。
$ _5 ~9 n/ _7 c7 X. J4 h
权向量计算:
+ S1 I; I6 u8 b3 l- o, e9 H- 将特征向量的第一列除以该列的和,得到权向量w。
- 将权向量w转置,使其变成行向量。
; J) B& P9 F* F! s$ Q/ P4 x c
结果输出:
8 ~2 Z& U: p. J E1 ~( m- 输出一致性指标CI、一致性比例CR、一致性检验结果、特征值r和权向量w的结果。7 q6 ?6 n, M' y6 M& i1 ^$ I- `6 q
该代码假设评判矩阵A已经提前定义好。如果要使用自定义的评判矩阵,请修改变量A的值。
* c3 u1 S2 v$ m8 | p! P0 B7 E4 u( K: ~/ u
; A3 U" F) ?: F& m( D( i/ s. M9 q+ @1 Z9 r
$ s/ R7 R* S! T. e
|