|
这段代码是用于实现AHP(层次分析法)的权重计算。下面是代码的解释: 数据读入:
1 c U' `8 N1 H, R- \) u. H- 将评判矩阵以矩阵形式存储在变量A中。评判矩阵A大小为n x n,其中n为矩阵的维度。
! C% I- E" J$ P5 L- |
一致性检验和权向量计算: * o( ~' L) c U0 A$ {! R, [8 O3 S+ a
- 使用特征值分解(eig函数)对评判矩阵A进行分解,得到特征向量和特征值。
- 从特征值中提取最大特征值r。
- 计算一致性指标CI,通过计算(r-n)/(n-1)得到。
- 构建一致性比例指标RI(随机一致性指标)的参照表。
- 计算一致性比例CR,通过计算CI除以RI的最后一个值得到。
- 判断一致性检验结果CR是否小于0.10,若小于,则通过,否则不通过。+ F K5 f' }' G- L4 H
权向量计算:
# ]6 q; Z$ m( X2 M- 将特征向量的第一列除以该列的和,得到权向量w。
- 将权向量w转置,使其变成行向量。2 g; g, a2 Q1 o( h) x+ ~, ]
结果输出:
! Q+ J+ g" M" y V' c- c3 Y- 输出一致性指标CI、一致性比例CR、一致性检验结果、特征值r和权向量w的结果。2 U7 f# s6 \/ W
该代码假设评判矩阵A已经提前定义好。如果要使用自定义的评判矩阵,请修改变量A的值。# v0 V& D! e0 Q" B$ [3 t: g: l' i
& k. Y) ^' G l) r6 W
/ Q2 w- \- \. @8 S/ `1 |
1 ^7 X: b* C" g3 k2 e: G9 X8 M, } n6 l2 J6 N0 T( S- R
|