层次分析法原理分析及Python实现层析分析法

本文详细介绍了层次分析法的定义、步骤、实例,并通过Python代码展示了如何实现层次分析法,包括层次结构模型构建、成对比较矩阵的创建与一致性检验等关键步骤。
摘要由CSDN通过智能技术生成

层次分析法概述

定义

本文所有图片均来自本人的OneNote笔记
在这里插入图片描述
在这里插入图片描述

步骤归纳

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

例子

  1. 建立层次结构模型
    在这里插入图片描述

  2. 构造判断(成对比较)矩阵
    在这里插入图片描述
    在这里插入图片描述
    第二层A的各个因素对目标层Z的成对比较矩阵(专家打分法)
    在这里插入图片描述
    说明C2的重要性是C1的两倍
    第三层B的各个因素A1,A2……A5的成对比较矩阵分别如下:
    在这里插入图片描述

  3. 层次单排序及其一致性检验
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    0.6=1/(1+1/2+1/6) 矩阵中其他数值同理
    0.587=1/3(0.6+0.615+0.545)

  4. 层次单排序及其一致性检验
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

应用实例

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Python实现

程序如下:

(本程序配的案例,现在是机密,先不能公开,但看程序仍可以理解)

import numpy as np

# A--D的判断矩阵
A_D = np.array([
    [1, 2, 6, 4],
    [1 / 2, 1, 5, 2],
    [1 / 6, 1 / 5, 1, 1 / 2],
    [1 / 4, 1 / 2, 2, 1]
])
# A1-A4的判断矩阵
A1_A4 = np.array([
    [1, 4, 5, 4],
    [1 / 4, 1, 4, 2],
    [1 / 5, 1 / 4, 1, 1 / 3],
    [1 / 4, 1 / 2, 3, 1]
])
# B1-B3的判断矩阵
B1_B3 = np.array([
    [1, 2, 3],
    [1 / 2, 1, 3],
    [1 / 3, 1 / 3, 1]
])
# C1--C2
C1_C2 = np.array([
    [1, 2],
    [1 / 2, 1]
])
# D1--D2
D1_D2 = np.array([
    [1, 1],
    [1, 1]
])
# A11_A14的判断矩阵
A11_A14 = np.array([
    [1, 1 / 5, 1 / 4, 1 / 2],
    [5, 1, 2, 3],
    [4, 1 / 2, 1, 2],
    
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值