层次分析法练习(Analytical Hierarchy Process Exercise)

Analytical Hierarchy Process Exercise

要购置一台笔记本电脑,考虑价格、外观、配置等因素,构造层次结构模型,并进行决策。

①目标为购置一台笔记本电脑。目标层即这一个因素。

②准则层共一层,这一层的三个准则分别为价格 C1 C 1 ,外观 C2 C 2 , 配置 C3 C 3

方案层,这里有3个购买方案 P1,P2,P3 P 1 , P 2 , P 3 。其层次模型如下:
这里写图片描述

构造成对比较矩阵。用1~9标度构造下层因素相对于上层每个因素的成对比较矩阵是,直到最下层的方案层。

准则层对目标层的判断矩阵A:

A=11/41/241321/31 A = [ 1 4 2 1 / 4 1 1 / 3 1 / 2 3 1 ]

方案层对准则层的判断矩阵共有三个,分别为 B1,B2,B3 B 1 , B 2 , B 3
B1=11/71/371331/31B2=1521/511/31/231B3=1631/611/31/331 B 1 = [ 1 7 3 1 / 7 1 1 / 3 1 / 3 3 1 ] B 2 = [ 1 1 / 5 1 / 2 5 1 3 2 1 / 3 1 ] B 3 = [ 1 1 / 6 1 / 3 6 1 3 3 1 / 3 1 ]

计算权向量并做一致性检验。对每一个成对比较矩阵,用 特征向量法计算最大特征值和对应的归一化特征向量。并计算一致性指标,查表得到随机一致性指标,两者一起构造一致性比率,若矩阵的一致性通过检验,则归一化的特征向量即为权向量,若不通过,则需要对判断矩阵进行修正。

​ 通过计算得,A矩阵的一致性比率为0.0172, B1,B2,B3 B 1 , B 2 , B 3 的一致性比率为0.0066,0.0035,0.0172。上述矩阵的一致性比率均小于0.1,即通过了一致性检验。

​ 通过近似方法 limkAkRRTAKR=w lim k → ∞ A k R R T A K R = w ,可分别得到归一化特征向量,分别为

w=0.55840.12200.3196w0=0.66940.08790.24260.12200.64830.22970.09530.65480.2499 w = [ 0.5584 0.1220 0.3196 ] w 0 = [ 0.6694 0.1220 0.0953 0.0879 0.6483 0.6548 0.2426 0.2297 0.2499 ]

​ 这里 w0 w 0 写成列向量组的形式便于后面运算。

计算组合权向量并做一致性检验。

​ 两个矩阵相乘即可得到最后的归一化特征向量W:

W=0.41920.33750.2434 W = [ 0.4192 0.3375 0.2434 ]

​ 最后还要做组合一致性检验来确认这个 W W 是否可以作为最终的权值。
CRcombi=CIcombi/RIcombi

​ 计算得 CRcombi=0.0096<0.1 C R c o m b i = 0.0096 < 0.1 。符合一致性检验标准。认为整个层次判断通过一致性检验,对应的组合权向量可以作为方案排序的依据。因为 0.4192>0.3375>0.2434 0.4192 > 0.3375 > 0.2434 。所以3个方案的排序结果为 P1>P2>P3 P 1 > P 2 > P 3 。即买第一个电脑是最满意的。

源代码

 clear
close all
clc 

%根据自己的主观判断
%准则层对目标层的判断矩阵
A=[1   4  2
   1/4 1 1/3
   1/2   3  1];

%方案层对准则层的判断矩阵
B1=[1 7 3
    1/7 1 1/3
    1/3 3 1];

B2=[1 1/5 1/2
    5 1 3
    2 1/3 1];

B3=[1 1/6 1/3
    6 1 3
    3 1/3 1];

k=3;%3阶

%准则层对目标层
%求其CI,先求最大特征值和对应的特征向量
%直接使用系统的eig函数
maxv=max(abs(eig(A)));%注意是绝对值
Ci=(maxv-k)./(k-1);
Cr=Ci./0.5323;%该RI为自己计算结果 参见RCI.m

%Cr<0.1 认为具有一致性
%使用近似法求解归一化特征向量
times=300;
R=ones(3,1);
w=A^times*R/(R'*A^times*R);


%元胞数组
B={B1,B2,B3};

for i=1:3
    max_v(i)=max(abs(eig(cell2mat(B(i)))));%注意是绝对值
    CI(i)=(max_v(i)-k)./(k-1);
    CR(i)=CI(i)./0.5323;%该RI为自己计算结果 参见RCI.m
end
%CR均小于<0.1 认为具有一致性
for i=1:3
    temp=cell2mat(B(i));
    W0(:,i)=temp^times*R/(R'*temp^times*R);
end 

%w为各准则对目标的权向量
%W0为列向量组为各方案对每一准则的权向量
%下面求各方案对目标的权向量W
W=W0*w;

%下面进行组合一致性检验
CI_combi=CI*w;
RI=ones(1,3)*0.5323;
RI_combi=RI*w;
CR_combi=CI_combi/RI_combi;
%CR_combi<0.1
%可以认为整个层次判断通过一致性检验
xxxxxxxxxx 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值