|
这段代码是用于实现AHP(层次分析法)的权重计算。下面是代码的解释: 数据读入:
% s3 c% O! I! g1 d: U) ^- 将评判矩阵以矩阵形式存储在变量A中。评判矩阵A大小为n x n,其中n为矩阵的维度。- i8 C5 @: J* V: f: o/ Q
一致性检验和权向量计算:
) U$ e; L7 A9 a' v- 使用特征值分解(eig函数)对评判矩阵A进行分解,得到特征向量和特征值。
- 从特征值中提取最大特征值r。
- 计算一致性指标CI,通过计算(r-n)/(n-1)得到。
- 构建一致性比例指标RI(随机一致性指标)的参照表。
- 计算一致性比例CR,通过计算CI除以RI的最后一个值得到。
- 判断一致性检验结果CR是否小于0.10,若小于,则通过,否则不通过。
2 L' o2 N ]$ j l, l* F
权向量计算: 5 e8 M$ R, H0 B, m! z8 e) M% J
- 将特征向量的第一列除以该列的和,得到权向量w。
- 将权向量w转置,使其变成行向量。
9 P; E) r+ g% Q) S$ c5 [
结果输出:
; }& P6 A# s2 T1 e5 I- 输出一致性指标CI、一致性比例CR、一致性检验结果、特征值r和权向量w的结果。
/ f0 Z1 K" _- u. k, l* I0 f
该代码假设评判矩阵A已经提前定义好。如果要使用自定义的评判矩阵,请修改变量A的值。3 Z6 \5 e. N' k4 b8 I Z* j2 f/ w% {
c) Y% r' ]8 R, l. X" Z& _8 i6 |2 J# ^) x. z
R5 L8 L: k" V; \( {: c6 M
% ~" y6 |# d& S; |. {$ ^
|