惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

SecWiki News
SecWiki News
I
InfoQ
The Cloudflare Blog
人人都是产品经理
人人都是产品经理
博客园 - Franky
T
Tailwind CSS Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
量子位
博客园_首页
罗磊的独立博客
V
V2EX
李成银的技术随笔
大猫的无限游戏
大猫的无限游戏
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
T
True Tiger Recordings
Vercel News
Vercel News
Cyberwarzone
Cyberwarzone
Cisco Talos Blog
Cisco Talos Blog
F
Fox-IT International blog
D
Darknet – Hacking Tools, Hacker News & Cyber Security
M
Microsoft Research Blog - Microsoft Research
Know Your Adversary
Know Your Adversary
爱范儿
爱范儿
The Register - Security
The Register - Security
G
Google Developers Blog
The Hacker News
The Hacker News
Malwarebytes
Malwarebytes
S
Securelist
博客园 - 三生石上(FineUI控件)
Jina AI
Jina AI
T
Threat Research - Cisco Blogs
T
The Exploit Database - CXSecurity.com
S
SegmentFault 最新的问题
博客园 - 叶小钗
F
Fortinet All Blogs
Apple Machine Learning Research
Apple Machine Learning Research
宝玉的分享
宝玉的分享
博客园 - 聂微东
T
Threatpost
博客园 - 【当耐特】
D
Docker
P
Privacy & Cybersecurity Law Blog
www.infosecurity-magazine.com
www.infosecurity-magazine.com
G
GRAHAM CLULEY
V
Visual Studio Blog
C
Cisco Blogs
IT之家
IT之家
S
Security Archives - TechRepublic
Latest news
Latest news
阮一峰的网络日志
阮一峰的网络日志

小松鼠的博客

记录一次线上k8s工作节点无法创建容器的问题排查思路与解决办法 记一次线上GoLang项目OOM排查过程 从LastPass转向拥抱开源KeePass的心路历程 故障定位与 AI 结合前后端编码实践 FileBeat收集nginx-ingress-controller日志 K8s云原生环境下文件描述符占用过高查询思路 2024年最新关闭火绒安全工具的开机自启方法 Kubernetes任务调度实践-Go语言实现Job和CronJob对比分析 离线更新k8s环境下的trivy漏洞库方法 使用Go语言接入Choerodon实现基于OAuth2的统一身份认证登录 在Vue2中自定义Switch组件并实现父子组件双向数据绑定 关于docker jdk1.8镜像中的GB18030-2022标准支持及验证 Go框架gin中的session存储gin-contrib-sessions和go-session 关于修改node_module中的源码问题记录 docker-compose网络和内网服务IP冲突问题 慎用存储过程:一条语句引发的数据库存储100%占用 Spring Boot中4种文件下载方法的实现 避坑-不能将specific类型的gitlab-runner改变为share类型 Docker compose中的MySQL主从复制模式和percona-toolkit工具使用 在minio中开启https访问以及使用rclone备份minio桶 在多机Docker环境下部署Choerodon的解决方案 Prometheus中Monitor添加对SpringBoot Actuator的Basic认证 在Nginx的容器镜像中隐藏Nginx的Server响应头 K8s中的两种nginx-ingress-controller及其区别 两个docker工具:runlike和whaler Grafana中的邮件报警和截图插件grafana-image-enderer K8s中externalName-service和services-without-selectors maven配置文件settings.xml中的一些概念总结 K8s中flexvolume插件驱动的安装 K8s中的coredns无法解析svc问题排查 K8s中使用Ingress访问请求体过大问题解决 关于k8s中对于SpringBoot应用TCP类型的就绪探针不准确的问题发现 K8s中的环境变量与应用程序的对应关系与操作 SpringMVC4升级为SpringBoot2实战 在Vmware中Ubuntu22.04的vm-tools和网络问题 修改k8s节点主机名并重新加入集群 离线安装Grafana插件 Spring Data Jpa 中使用CriteriaBuilder动态拼接SQL 在SpringBoot项目配置Liquibase数据库版本管理 记录Vue中父子组件传值的实战应用 实现单例模式的8种方法 三种常用的生产者消费者模式实现 使用两个线程交替打印0-100的奇偶数 关于部署于JBoss5中的Spring应用获取项目真实部署路径的问题 获取下一个完全对称日 通过短信验证码验证修改密码的解决方案 在Win10中使用Win+R快速启动软件 使用RSA加解密时注意Cipher.getInstance(String var0,Provider var1)提供的Provider是否正确 在RestEasy2.x中解决接口重复提交问题 几道简单的CTF题目思路 重温Spring---Spring事务控制与基于XML和注解的配置方法 重温Spring---Spring AOP基于XML和注解的配置 重温Spring---AOP动态代理和Spring AOP及其基本原理 重温Spring---Spring IOC基于XML和注解的配置和比较 在Windows10中安装MySQL5.7 Zip版本及常用配置 重温Spring---使用Spring IOC解决程序耦合 策略模式与责任链模式实战应用 Linux上直接打开war包修改文件 在Windows上运行两个微信的简单脚本 ThreadPoolExecutor的使用方法与分页查询数据实例 IDEA中Shelve Changes 和 Git Stash 通过resteasy发布RESTful接口 解决前端请求后台接口,后台报错Can not deserialize instance of java.util.ArrayList out of START_OBJECT token 使用VBA脚本汇总Excel文档 使用Jenkins+GitLab实现自动部署vue项目 Kubernetes:使用hostPath挂载nginx集群的配置文件和html 彻底搞定VirtualBox虚拟机的网络设定 在Docker中安装MySQL5.7并开启远程访问(附授权和修改密码方式) 利用git命令和java文件流 获取自己改动过的文件 浅谈Spring定时任务的使用(Scheduled注解) 在Spring项目简单配置Flyway(V4.2版本)数据库版本管理 解决Spring单元测试中因外键关联导致的失败integrity constraint violation:foreign key no action Redis安装与哨兵模式配置入门 关于Vue中使用Element-UI样式row-class-name失效的问题 Element-UI中实现可动态增加行列和可编辑单元格的表格 Windows系统查看端口占用、结束进程方法和命令 源码分析之解决layui框架重载表格时额外参数不清空的问题 Spring Data Jpa 返回自定义对象(实体部分属性、多表联查) 如何将一个jar放到本地maven仓库中 关于SSM项目停止Tomcat时Log4j出现java.lang.NoClassDefFoundError: 获取el-table单元格值并根据该值对元素自定义样式渲染 解决Git每次push都要重新输入账号密码和HttpRequestException encountered的问题 解决前后端分离项目中Vue不带cookies的问题 SSM集成Shiro自定义权限过滤器不执行解决方案 SSM集成Shiro不进入自定义Realm的doGetAuthorizationInfo的解决方案 Vue+SSM中使用Token验证登录 Git拉代码推送代码提示密码错误如何修改 Git配置SSH Key(Git配置多个账户) 安装Tomcat服务器以及错误汇总(tomcat8.0、jdk8) 关于我
层次分析法(AHP)分析步骤与计算方法
2020-06-22 · via 小松鼠的博客

层次分析法(Analytic Hierarchy Process,AHP)

是一种定性和定量相结合的、系统的、层次化的分析方法。这种方法的特点就是在对复杂决策问题的本质、影响因素及其内在关系等进行深入研究的基础上,利用较少的定量信息使决策的思维过程数学化,从而为多目标、多准则或无结构特性的复杂决策问题提供简便的决策方法。是对难以完全定量的复杂系统做出决策的模型和方法。

层次分析法的原理,层次分析法根据问题的性质和要达到的总目标,将问题分解为不同的组成因素,并按照因素间的相互关联影响以及隶属关系将因素按不同的层次聚集组合,形成一个多层次的分析结构模型,从而最终使问题归结为最低层(供决策的方案、措施等)相对于最高层(总目标)的相对重要权值的确定或相对优劣次序的排定。

层次分析法的步骤,运用层次分析法构造系统模型时,大体可以分为以下四个步骤:

1. 建立阶梯层次结构模型

深入分析实际问题,将有关因素自上而下分层(目标—准则或指标一方案或对象),上层受下层影响,而层内各因素基本上相对独立。 按他们之间的相互关系分成最高层、中间层和最低层,绘制层次结构图。

层次结构模型
层次结构模型

2. 构造各层次中的所有判断矩阵

用成对比较法和1~9尺度,构造各层对上一层每一因素的成对比较阵。

在确定各层次各因素之间的权重时,如果只是定性的结果(就是我认为因素A1占80%,A2占10%等等),则常常不容易被别人接受,因此Santy等人提出:一致矩阵法,即:

  1. 不把所有因素放在一起比较,而是两两比较;
  2. 对此时采用相对尺度,以尽可能减少性质不同的诸因素相互比较的困难,以提高准去性;

成对比较矩阵是表示本层所有因素针对上一层某一个*因素(准则或目标)*的相对重要性的比较。成对比较矩阵的元素aij表示的是第i个因素相对于第j个因素的比较结果,这个值使用的是Santy的1-9标度方法给出。

标度含义
1表示两个因素相比,具有同样重要性
3表示两个因素相比,一个因素比另一个因素稍微重要
5表示两个因素相比,一个因素比另一个因素明显重要
7表示两个因素相比,一个因素比另一个因素强烈重要
9表示两个因素相比,一个因素比另一个因素极端重要
2,4,6,8上述两相邻判断的中值
倒数因素ij比较的判断aij,则因素ji比较的判断aji=1/aij

例如矩阵A:a23=5 就表示A2因素比A3因素对于目标层(Z)来说明显重要
A = egin{bmatrix} 1 & 2 & 6  1/2 & 1 & 5  1/6 & 1/5 & 1 nd{bmatrix}

ZA1A2A3
A1126
A21/215
A31/61/51

那两两进行比较以后,怎么才能知道,下层各因素对上层某因素的影响程度的排序结果呢? 层次单排序

3. 层次单排序及其一致性检验

就以上面的矩阵A来说, 因为这里a23=5 但是根据计算a23=a21a13=1/26=3。在构造成对矩阵的时候,很容易出现这种状况。那如果a23=a21a13 则称成对矩阵为一致阵 。

这里的成对比较矩阵有两种可能,一致阵或者不是一致阵:

  1. 如果成对比较矩阵是一致阵,则我们自然会取对应于最大特征根n 的归一化特征向量 {ω1,ω2,ω3,...,ωn} ,且i=1nωi=1ωi表示下层第 i个因素对上层某个因素影响程度的权值。
  2. 若成对比较矩阵不是一致阵,Saaty等人建议用其最大特征根对应的归一化特征向量作为权向量 W ,则AW=λW W={ω1,ω2,ω3,...,ωn}这样确定权向量的方法称为特征根法;

对应于判断矩阵最大特征根λmax的特征向量,经归一化(使向量中各元素之和为1)后记为WW的元素为同一层次元素对于上一层因素某因素相对重要性的排序权值,这一过程称为层次单排序。那能否确认层次单排序,需要进行一致性检验,所谓一致性检验是指对成对比较矩阵确定不一致的允许范围。

定义一致性指标CI=λnn1,

  • CI=0,有完全的一致性;
  • CI接近于0,有满意的一致性;
  • CI越大,不一致越严重。

为了衡量CI的大小,引入随机一致性指标RI,n表示矩阵阶数。

n1234567891011
RI000.580.901.121.241.321.411.451.491.51

定义一致性比率:CR=CIRI,一般认为一致性比率CR<0.1时,认为A的不一致程度在容许范围之内,有满意的一致性,通过一致性检验。可用其归一化特征向量作为权向量,否则要重新构造成对比较矩阵A,对aij加以调整。

1).第一步:计算W

由上可知,要进行一次性校验,需要先算出λ的值,而需要λ则需要先算出W。计算W这里给出两种比较简单的计算方法。

第一种:

  1. 先对矩阵列向量归一化;

  将矩阵的每一列分别加起来,再用原来的数(aij) 除以它所在列的和。如:1÷(1+1/2+1/6)=0.6

  1. 再求行和归一化;

  每一行分别相加,再除以每一行的个数(即每一行的平均数)。如:(0.6+0.615+0.545)÷3=0.587

​ 即得到W = egin{bmatrix} 0.587 & 0.324 & 0.089nd{bmatrix} ^ T

第二种:

还是以上面这个矩阵为例。
A = egin{bmatrix}  1 & 2 & 6  1/2 & 1 & 4  1/6 & 1/4 & 1 nd{bmatrix}

  1. 分别求出M1=1×2×6=12M2=2M3=0.042

  2. 计算Mi的n次方根:

    W1=M13=2.289W2=1.260W3=0.347

  3. 再归一化:

    i=13Wi=2.289+1.260+0.347=3.896

    W1=W1i=13Wi=2.2893.896=0.588W2=0.323,$W_3 = 0.$089

得出:W = egin{bmatrix} 0.588 & 0.323 & 0.089nd{bmatrix} ^ T

注:以上两种方法由于手动计算,略有偏差

2).第二步:计算λ的值

公式:λmax=i=1n(AW)inWiAW表示矩阵的乘法。

矩阵乘法公式(某一个值aij ):(AW)ij=k=1paikbkj=ai1b1j+ai2b2j+...+aipbpj

所以,λmax=i=1n(AW)inWi=1.7693×0.587+0.9743×0.324+0.2683×0.089=3.009

3).第三步:计算CI和RI

CI=λnn1=3.009331=0.0045

可直接查表得出RI=0.58

4).第四步:计算CR得出结论

CR=CIRI=0.00450.58=0.0078<0.1 ,通过一致性检验。

以上四步,第一步求出的W 对后面有用,而其它三步就只是为了进行一致性检验。

至此,只是完成了第二层对第一层(目标层)的层次单排序和一致性检验,我们还需要进行第三层对第二层的层次单排序和一致性检验,如果有更多层需要完成更多,直到最后一层(方案层)对上一次进行层次单排序和一致性检验。后面会有一个例子进行讲解。

4. 层次总排序及其一致性检验

  • 计算某一层次所有因素对于最高层(总目标)相对重要性的权值,称为层次总排序。
  • 这一过程是从最高层次到最低层次依次进行的。

A层m个因素A1,A2,···,Am,对总目标Z的排序为a1,a2,···,am

B层n个因素对上层A中因素为Aj 的层次单排序为b1j,b2j,···,bnj(j=1,2,3,···,m)
B层的层次总排序(即B层第i个因素对总目标的权值为:j=1majbij)为:
B1:a1b11+a2b12+···+amb1m,

B2:a1b21+a2b22+···+amb2m,
......
Bn:a1bn1+a2bn2+···+ambnm,

层次总排序的一致性比率为:CR=a1CI1+a2CI2+···+amCIma1RI1+a2RI2+···+amRIm,当CR<0.1时,认为层次总排序通过一致性检验。

举例

  某厂有一笔企业留成利润要决定如何使用,根据各方意见提出的决策方案有:发奖金;扩建集体福利设施;办技校;建图书馆;购买新设备。在决策时要考虑调动职工劳动积极性、提高职工技术文化水平、改善职工物质文化生活三方面,据此构造各因素之间相互联结的层次结构模型如下图所示。

1.建立阶梯层次结构模型

2. 计算单一准则下元素的相对重要性

i. 第二层相对于第一层的判断矩阵

通过计算得判断矩阵的特征向量和特征值分别为:

W=(0.105,0.637,0.258)λmax=3.308

对判断矩阵进行一致性检验,即计算CI和CR

CI=0.019CR=0.033<0.1

说明判断矩阵的一致性可以接受。

ii. 第三层元素相对于第二层元素判断矩阵

3.各个元素的权重

第二层对第一层各个元素的权重以第三层各个元素对第二层的权重得到的值累加等于第三层(方案)的总权重值。如:0.1050.491+0.6370+0.2580.406=0.157

4.结论

发奖金,福利设施,办技校,建图书馆,新设备对应的权重:

W=(0.157,0.164,0.393,0.113,0.172)

CI=0.028

RI=0.923 (这里不知道怎么来的,查表的话应该是1.12?待讨论)

CR=0.03<0.10

计算结果表明,对于合理使用企业留成利润来说,办技校(权重值最大)是首选的方案。

参考:

[1].https://www.bilibili.com/video/BV1KE411q7Wh

[2]. https://zhuanlan.zhihu.com/p/38207837

[3].https://blog.csdn.net/mmm_jsw/article/details/84863416

[4].AHP(层次分析法)方法、步骤PPT,点击下载