打分法解决评价类问题
主观性较强,根据权重表格计算得分(权重乘以分数再相加)
例题
避免直接权重,会导致多次填写不一致
思想:两两比较推测出权重
判断矩阵
上图是层次分析法的判断矩阵,对角线全为1,(景色,花费)=1/2,表示花费相对景色介于同样重要与稍微重要之间(略微重要);(花费,居住)=7 ,表示花费比居住强烈重要。
说明
aij,表示与j相比,i的重要程度
正互反矩阵
aij>0 and aij*aji=1 -->正互反矩阵(层次分析法中的判断矩阵)
回到问题,可以构建指标的判断矩阵,指标:景色、居住等
可能出现的问题:矩阵数据的自相矛盾
A=sh;B=bjh;C=gl
A=C,
B<A,B>C,
出现了矛盾 -->转化为一致矩阵
一致矩阵
满足aik=aij*ajk and 正互反矩阵
充要条件
aij>0
对角线全为1
行与行,列与列成比例
注意:在使用判断矩阵求权重时需进行一致性检验
原理:检验判断矩阵与一致性矩阵是否有大都差距
一致性检验步骤
计算一致性指标CI
查找对应的平均随机一致性指标RI
RI会查即可
计算一致性比例
CR=CI/RI
如果CR<0.1,一致性可以接受,否则需修正
一致矩阵计算权重
算数平均法
对列作归一化处理
归一化就是要把需要处理的数据经过处理后(通过某种算法)限制在你需要的一定范围内
简单讲就是每一个元素除以所在列的和
将归一化的各列相加(按行求和)
将相加后的各个向量的每个元素除以n得到权重向量
代码
Sum_A = sum(A); % 计算矩阵A中所有元素的和
SUM_A = repmat(Sum_A,n,1); % 把Sum_A当成一个元素,生成一个n*1阶矩阵
Stand_A = A ./ SUM_A; % 将A的每个元素除以SUM_A的对应元素——计算每个权重
% './'是逐元素的除法操作符disp('算术平均法求权重的结果为:');
disp(sum(Stand_A,2)./n) % 计算矩阵Stand_A的每一行的和,并将结果逐个除以n
几何平均法
代码
Prduct_A = prod(A,2); % 计算矩阵A的每一列的乘积
Prduct_n_A = Prduct_A .^ (1/n); % 对于矩阵每一个值开n次方disp('几何平均法求权重的结果为:');
disp(Prduct_n_A ./ sum(Prduct_n_A)) % 归一化
特征值法
大致了解原理,计算交给代码
[V,D] = eig(A); % 计算方阵的特征值和特征向量
Max_eig = max(max(D)); % 找出矩阵D中的最大元素,即求出最大特征值
[r,c]=find(D == Max_eig , 1); % 在D中找到等于最大特征值的位置,并返回其行索引r和列索引cdisp('特征值法求权重的结果为:');
disp( V(:,c) ./ sum(V(:,c)) ) % 计算第c列所有元素的和,然后用元素逐一除以这个和——归一化
(一般选取特征值法),将权重结果填入矩阵
计算个方案得分,利用excel完成更简便
注:这里需要锁定单元格(fn+f4-->锁定单元格),不然无法批量处理
以上是例题解决以及相关内容引入,下面看模型
概念
层次分析法( The Analytic Hierarchy Process 即 AHP) 是由美国运筹学家、匹兹堡大学教授 T . L. Saaty 于 20 世纪 70 年代创立的一种系统分析与决策的综合评价方法,是在充分研究了人类思维过程的基础上提出来的,它较合理地解决了定性问题定量化的处理过程。AHP 的主要特点是通过建立递阶层次结构,把 人类的判断转化到若干因素两两之间重要度的比较上 ,从而把难于量化的定性判断转化为可操作的重要度的比较上面。在许多情况下,决策者可以直接使用 AHP 进行决策,极大地提高了决策的有效性、可靠性和可行性,但其本质是一种思维方式,它把复杂问题分解成多个组成因素,又将这些因素按支配关系分别形成递阶层次结构,通过两两比较的方法确定决策方案相对重要度的总排序。整个过程体现了人类决策思维的基本特征,即分解、判断、综合,克服了其他方法回避决策者主观判断的缺点。
层次分析法步骤
明确内在关系,建立层次结构
运用画图软件画出来就可以
如果论文用到这个方法,必需出现这个图
进行两两比较,构造判断矩阵
进行一致性检验,计算相对权重
- 一致性检验的步骤上面有提到了,不在赘述
- 如果没有通过检验,就需要进行修改,使其满足一致矩阵的条件
- 计算权重一般是利用三种方法计算,然后取其平均值,避免偏差
计算权重得分
利用excel解决容易些
层次分析法说白了就是先检验后用于求权重