层次分析法【AHP】

层次分析法

层次分析法(The analytic hierarchy process)简称AHP,在20世纪70年代中期由美国运筹学家托马斯·塞蒂(T.L.saaty)正式提出。它是一种定性和定量相结合的、系统化、层次化的分析方法。由于它在处理复杂的决策问题上的实用性和有效性,很快在世界范围得到重视。它的应用已遍及经济计划和管理、能源政策和分配、行为科学、军事指挥、运输、农业、教育、人才、医疗和环境等领域。

层次分析法的基本思路与人对一个复杂的决策问题的思维、判断过程大体上是一样的。不妨用假期旅游为例:假如有3个旅游胜地A、B、C供你选择,你会根据诸如景色、费用和居住、饮食、旅途条件等一些准则去反复比较这3个候选地点.首先,你会确定这些准则在你的心目中各占多大比重,如果你经济宽绰、醉心旅游,自然分别看重景色条件,而平素俭朴或手头拮据的人则会优先考虑费用,中老年旅游者还会对居住、饮食等条件寄以较大关注。其次,你会就每一个准则将3个地点进行对比,譬如A景色最好,B次之;B费用最低,C次之;C居住等条件较好等等。最后,你要将这两个层次的比较判断进行综合,在A、B、C中确定哪个作为最佳地点。

  • 步骤
    1、建立递阶层次结构模型
    2、构造出各层次中的所有判断矩阵
    3、层次单排序及一致性检验
    4、层次总排序及一致性检验
  • 递阶层次的建立与特点
    (1)最高层:这一层次中只有一个元素,一般它是分析问题的预定目标和理想结果。
    (2)中间层:这一层次中包含为了实现目标所涉及的中间环节,主要是一些考虑指标和一些准则。
    (3)最底层:这一层次中包含为了实现目标可供选择的各种方案。
    注1:为了避免两两比较判断过于复杂,每层次中各元素所支配的元素一般不要超过9个,否则应划分为若干子层;
    注2:层次分析法只考虑相邻两个层次间自上向下的支配作用,认为同一层次的元素间相互独立,若考虑进来需要网络分析法(ANP)。

引例
在B1、B2、B3中选择一个最优方案,影响因素有A1、A2、A3、A4、A5。

判断矩阵

ZA1A2A3A4A5
A111/2433
A221755
A31/41/711/21/3
A41/31/5211
A51/31/5311

matlab代码

%层次分析法(特征值法)
clc;clear;close all
disp('请输入准则层判断矩阵A(n阶)');
A=input('A=');
judge=AHPjudge(A);
if judge==true
    
[n,n]=size(A);
[V,D]=eig(A)%求特征向量和特征值
tempNum=D(1,1);
pos=1;
for h=1:n
    if D(h,h)>tempNum
        tempNum=D(h,h);
        pos=h;
    end
end
w=abs(V(:,pos));
w=w/sum(w);
t=D(pos,pos);
disp('准则层特征向量(权重向量):w=');
disp(w);
disp('准则层最大特征根t=');
disp(t);

%以下是一致性检验
CI=(t-n)/(n-1);
RI=[0 0 0.52 0.89 1.12 1.24 1.32 1.41 1.45 1.49 1.51 1.54 1.56 1.58 1.59];
CR=CI/RI(n);
if CR<0.10
    disp('此矩阵的一致性可以接受');
    disp('CI=');disp(CI);
    disp('CR=');disp(CR);
else disp('此矩阵的一致性验证失败,请重新进行评价');
end


else disp('请重新输入准则层判断矩阵A')
end

function [judge] = AHPjudge(A)
n = size(A,1);
for i=1:n
    for j=1:n
        a = A(i,j);
        b = A(j,i);
        if a*b==1
            continue;
        else
            judge = false;
            return;
        end
    end
end
judge = true;
end

结果

准则层特征向量(权重向量):w=
    0.2636
    0.4758
    0.0538
    0.0981
    0.1087

准则层最大特征根t=
    5.0721

此矩阵的一致性可以接受
CI=
    0.0180

CR=
    0.0161

与此类似,求出方案层中各方案的成对比较矩阵

注:每个矩阵即为每个影响因素下,每个解决方案的判断矩阵

注:左矩阵每列代表每个对比矩阵权值向量,右矩阵即为影响因素权值向量。

选择数值越高的即为最优选项 (B3为最优)

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值