|
这段代码是用于实现AHP(层次分析法)的权重计算。下面是代码的解释: 数据读入: * q5 ?3 T5 o. V$ e9 _0 C
- 将评判矩阵以矩阵形式存储在变量A中。评判矩阵A大小为n x n,其中n为矩阵的维度。8 v M. E% l+ t6 M# _
一致性检验和权向量计算: & `7 J* E0 K1 ^2 H
- 使用特征值分解(eig函数)对评判矩阵A进行分解,得到特征向量和特征值。
- 从特征值中提取最大特征值r。
- 计算一致性指标CI,通过计算(r-n)/(n-1)得到。
- 构建一致性比例指标RI(随机一致性指标)的参照表。
- 计算一致性比例CR,通过计算CI除以RI的最后一个值得到。
- 判断一致性检验结果CR是否小于0.10,若小于,则通过,否则不通过。" A! q" |2 {, x1 M. M
权向量计算: 6 }! e2 @) T: @! R
- 将特征向量的第一列除以该列的和,得到权向量w。
- 将权向量w转置,使其变成行向量。
+ Q7 l" M, W( X# D. _* Z2 X9 L6 b4 X
结果输出:
$ F2 Z; e0 G' |9 r& v- 输出一致性指标CI、一致性比例CR、一致性检验结果、特征值r和权向量w的结果。
, ?5 k3 g$ Q: p& o, d& R
该代码假设评判矩阵A已经提前定义好。如果要使用自定义的评判矩阵,请修改变量A的值。
2 [" v6 [! M9 z3 j4 o+ s0 j
* H8 H6 o# Z) V4 i$ k ^. ^$ o, s) [* Z2 \8 t9 R4 d/ i) f6 L* O
5 Y. K U+ }: b9 j
4 g/ A L. Q$ Y2 s- E% f |