加推实战之层次分析法

层次分析法,简称AHP,是一个运筹学方法

方法背景及应用概述

AHP方法是美国运筹学家匹茨堡大学教授萨蒂于20世纪70年代初,在为美国国防部研究"根据各个工业部门对国家福利的贡献大小而进行电力分配"课题时,应用网络系统理论和多目标综合评价方法,提出的一种层次权重决策分析方法。

  • 公司要选拔人才,会考核多个维度,选谁是主观选,还是有客观的方法论?

  • 要送父母一个按摩椅,多个品牌怎么选?

  • 要做一次国庆节的旅游,多个目标地点怎么选?

  • 用JS手撕一下这个方法,并将其通用化😄

先从实际的例子来了解这个方法的步骤

  • 景色要好,但费用不能太贵

  • 费用便宜的话,住的和吃的会不会太差?

  • 对多个属性,可能无法一次性端平

  • 上图啥意思?

  • 这是一个带有主观判断的表,例如

  • 景色:费用,你认为是多少?我认为景色稍微重要 ,那就是 3:1,如果反过来 就是 1:3

  • 于是 景色:费用 就是一个 数值😄

  • 依次类推,每个决策维度两两比较,形成一个 「判断矩阵」

  • 矩阵对角是互为倒数,这就说明我们只需要对比一遍就可以获得「判断矩阵」

  • 只需要完成矩阵中的,上三角 或 下三角,其他自动完成

一致性判断

  • 两两比较 的时候,可能会出现 A比B 好,B比C好,C比A好,这样的,前后不一致的比例判断,我们可以采用「层次单排序及一致性检验」

  • 一致性指标:

  • 是特征值

    ,n是特征个数
  • CI 接近 0 ,有满意的一致性

  • CI 越大, 越不一致

  • 求出CI后,再用CR = CI / RI < 0 .1 来判断是否一致

  • 如果不满足一致性,请重新两两对比😄

  • RI (随机一致性指标) 查表得出,要自己求RI,可以构造n个对比矩阵,然后求特征值的平均数

  • RI如下

  • n=1~12时,RI分别为 0,0,0.52,0.89,1.12,1.26,1.36,1.41,1.46,1.49,1.52,1.54

  • 查表很简单,判断的维度不超过12,上例是5😄

  • 上面的公式需要求出,矩阵的特征值,计算略微复杂,我们使用和积法来近似求「特征值」以及「特征向量」

上JS代码来求一个判断矩阵的CR和特征向量

  • 增加注解详细说明代码

  • 有了这个函数,我们就完成了此方法的核心🔥

每个判断维度对应目标的对比矩阵

  • 简单的说,选定景色,这个维度,两两比较,苏杭、北戴河、桂林的对比矩阵,然后确保一致性。

  • 这样一共会出现5个 对比矩阵,都是3*3的

  • 加上维度的对比矩阵,一共有6个矩阵

  • 具体矩阵如下

  • 再一次观察,其实都是对角互为倒数的😄

  • 下面的代码就SO EASY了,就这么短

结果如下

有了这个小工具,我们可以做人才选拔

  • 当然AHP方法是带有主观性的,可以用多个人产生对比矩阵,形成决策树,这样评判更公平😄

  • 我们可以将上面的过程,做成一个可视化的界面,例如这样:

  • 我们在《需求反馈系统》中,实战就用到了AHP算法😄

总结

  • 了解AHP,使用到实际业务场景

  • 通过JS实现之,通用化后,可以解决任何需要多层决策的问题

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值