数学建模 层次分析法(AHP) 个人总结 续更


1.问题提出

日常生活中有很多的决策问题。决策是指在面临多种方案时需要依据一定的标准(一个或多个)选择某一种方案。

例,择业:
面临毕业,可能有高校、科研单位、企业等单位可以去选择,一般依据工作环境、工资待遇、发展前途等因素择业。

2.概念提出

3.层次分析法的基本思路

数学建模 层次分析法(AHP) 个人总结 续更

4.层次分析法的基本步骤

4.1 建立层次结构模型

将问题包含的因素分层:
1.最高层(解决问题的目的);
2.中间层(选择为实现总目标而采取的各种措施、方案所必须遵循的准则。也可称策略层、约束层、准则层等);
3.最低层(用于解决问题的各种措施、方案等)。

如上例:
假设小明选择了高校、科研单位、企业作为择业目标,以工作环境,工作待遇,发展前途三个指标.

数学建模 层次分析法(AHP) 个人总结 续更

4.2 构建成对比较矩阵

在确定各层次各因素之间的权重时,如果只是定性的结果(个人理解是直接判断每个因素的占比),则常常不容易被别人接受,因而Saaty等人提出一致矩阵法。

1.不把所有因素放在一起比较,而是两两相互比较。

2.对此时采用相对尺度,以尽可能减少性质不同的诸因素相互比较的困难,以提高准确度。

引入判断的标度方法:

评估尺度 定义 说明
1 同等重要 两要素的贡献程度具同等重要性
3 稍微重要 经验与判断稍微偏好某一要素
5 颇为重要 经验与判断强烈偏好某一要素
7 极为重要 实际显示非常强烈偏好某一要素
9 绝对重要 有足够证据肯定绝对偏好某一要素
2,4,6,8 相邻尺度之中间值 介于两种判断之间
工作环境 工资待遇 发展前途
工作环境 1
工资待遇 1
发展前途 1

再次引用上例,如果我们觉得:

1.工资待遇比工资环境稍微重要,工资待遇/工资环境=3

2.发展前途和工资待遇介于稍微重要和同等重要之间,发展前途/工资待遇=2

3.发展前途比工资环境极为重要,发展前途/工资待遇=7

得到下表:

工作环境 工资待遇 发展前途
工作环境 1 1/3 1/7
工资待遇 3 1 1/2
发展前途 7 2 1

得到矩阵:记为AA, 对应的元素为aija_{ij}
A=[11/31/7311/2721] A = \left[ \begin{matrix} 1&1/3&1/7\\ 3&1&1/2 \\ 7&2&1 \end{matrix} \right]
其中: aija_{ij}表示,与指标jj相比,ii的重要程度。

4.3 做一致性检验

从理论上分析得到:如果AA是完全一致的成对比较矩阵,应该有
a12a23=a13a_{12}a_{23}=a_{13}

1/21/3=1/6 1/2 *1/3=1/6

而实际上,

a13=1/7 a_{13} = 1/7

例如:

工资待遇/工资环境=3
发展前途/工资待遇=2
此时,如果完全一致,发展前途/工资待遇 应该等于6,而我们标度,发展前途/工资待遇=7
  
对比较矩阵时要求满足完全满足是不太可能的。因此退而要求成对比较矩阵有一定的一致性,即可以允许成对比较矩阵存在一定程度的不一致性。

检验步骤:
1.计算衡量一个成对比较矩阵 A (n>1 阶方阵)不一致程度的指标CI
  CI=λmax(A)nn1CI=\frac{\lambda_{max}(A)-n}{n-1}

2.查找对应的平均随机一致性指标RI

n 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
RI 0 0 0.52 0.89 1.12 1.26 1.36 1.41 1.46 1.49 1.52 1.54 1.56 1.58 1.59

3.计算一致性比例CR

CR=CIRICR=\frac{CI}{RI}

判断方法如下:
当CR<0.1时,判定成对比较阵 A 具有满意的一致性,或其不一致程度是可以接受的;否则就调整成对比较矩阵 A,直到达到满意的一致性为止。

对上例矩阵
A=[11/31/7311/2721] A = \left[ \begin{matrix} 1&1/3&1/7\\ 3&1&1/2 \\ 7&2&1 \end{matrix} \right]
 计算得到λmax(A)=3.003,CI=λmax(A)331=0.0013\lambda_{max}(A)=3.003,CI=\frac{\lambda_{max}(A)-3}{3-1}=0.0013,查得RI=0.52RI=0.52
CR=CIRI=0.0181.12=0.0025<0.1CR=\frac{CI}{RI}=\frac{0.018}{1.12}=0.0025<0.1

这说明 A 不是一致阵,但 A 具有满意的一致性,A 的不一致程度是可接受的。

4.4 层次总排序及决策

现在完整解决例题,从高校和企业选择一个最符合上述3个因素的就业地点。
对此,对高校和企业分别比较它们的工作环境,工资待遇,发展前途.

工作环境 高校 科研单位 企业
高校 1 3 5
科研单位 1/3 1 4
企业 1/5 1/4 1

得到方阵:
B1=[1351/3141/51/41]B1 = \left[ \begin{matrix} 1&3&5\\ 1/3&1&4\\ 1/5&1/4&1 \end{matrix} \right]

工资待遇 高校 科研单位 企业
高校 1 1/7 1/5
科研单位 7 1 3
企业 5 1/3 1

得到方阵:
B2=[11/71/5713531]B2 = \left[ \begin{matrix} 1&1/7&1/5\\ 7&1&3\\ 5&3&1 \end{matrix} \right]

发展前途 高校 科研单位 企业
高校 1 1/5 1/3
科研单位 5 1 2
企业 3 1/2 1

得到方阵:
B3=[11/51/351231/21]B3 = \left[ \begin{matrix} 1&1/5&1/3\\ 5&1&2\\ 3&1/2&1 \end{matrix} \right]
 
同时也计算这三个判断矩阵的CRCR,经计算

CR(B1)=0.08246797115384596CR(B1) = 0.08246797115384596

CR(B2)=0.09039914423076918CR(B2)= 0.09039914423076918

CR(B3)=0.003552500000000206CR(B3)=0.003552500000000206

都可以接受

计算权重:

1.将判断矩阵按照列归一化
(每一个元素出意其所在列的和)

工作环境 高校 科研单位 企业
高校 0.652 0.706 0.5
科研单位 0.217 0.235 0.4
企业 0.130 0.059 0.1

2.将同属于一个因素的值相加并除以nn

工作环境 权重
高校 0.610
科研单位 0.284
企业 0.096

同理,

工资待遇 权重
高校 0.072
科研单位 0.589
企业 0.339
发展前途 权重
高校 0.109
科研单位 0.570
企业 0.321
指标权重
工作环境 0.092
工资待遇 0.282
发展前途 0.626

汇总结果,得到权重矩阵

指标权重 高校 科研单位 企业
工作环境 0.092 0.610 0.284 0.096
工资待遇 0.282 0.072 0.589 0.339
发展前途 0.626 0.109 0.570 0.321

计算得,高校=0.092x0.060+0.282x0.072+0.626x0.109=0.145
同理,科研单位=0.549
企业=0.305

综上,择业应该选择科研单位

5.参考文献

  1. 层次分析法-MBA智库 https://wiki.mbalib.com/wiki/AHP
  2. 数学建模清风课程笔记
  3. 百度文库链接: link.