掌握决策之道:层次分析法(AHP)的步骤、应用与局限性

目录

一、层次分析法简介

举一个小例子: 

评价类问题可用打分解决,比如:小华高考结束后,在华科和武大两所学校之间做抉择。

评价类问题可用打分解决 

二、层次分析法的步骤

(一)一道引出层次分析法的例题

 (二)建立层次分析法的步骤

(1)第一步、建立层次结构模型

(2) 第二步、构造判断矩阵

 (3)第三步、 求权重并做一致性检验

​​①计算最大特征值方法1:算术平均法

②计算最大特征值方法2:几何平均法

③计算最大特征值方法3:特征值法 

三种方法结果综合分析: 

(4)第四步、根据权重矩阵计算得分,并进行排序

三、总结 

判断矩阵不满足一致性检验,CR>0.1,如何修正? 

层次分析法的优点:

 层次分析法的一些局限性:

层次分析法的适用情况:


一、层次分析法简介

层次分析法是建模比赛中最基础的模型之一,其主要用于解决评价问题

例如:选择哪种方案最好、哪位运动员或者员工表现的更优秀

举一个小例子: 

评价类问题可用打分解决,比如:小华高考结束后,在华科和武大两所学校之间做抉择。

评价类问题可用打分解决 

最终建议小华选择得分最高的一个学校:华科。 

二、层次分析法的步骤

(一)一道引出层次分析法的例题

小华同学想出去旅游。在查阅了网上的攻略后,他初步选择了苏杭、北戴河和桂林三地之一作为目标景点。

你确定评价指标、形成评价体系来为小华同学选择最佳的方案。

 解决评价类问题,首先要想到以下个问题:

我们评价的目标是什么?

我们为了达到这个目标有哪几种可选的方案?

评价的准则或者说指标是什么?(我们根据什么东西来评价好坏)

 解决评价类问题,大家首先要想到以下三个问题:

① 我们评价的目标是什么?

  答:为小华同学选择最佳的旅游景点。

② 我们为了达到这个目标有哪几种可选的方案?

  答:三种,分别是苏杭、去北戴河和去桂林

③ 评价的准则或者说指标是什么?(我们根据什么东西来评价好坏)

  答:题目没给相关数据支撑,需要我们查阅相关的资料。

一般而言,前两个问题的答案是显而易见的,第三个问题的答案 需要我们根据题目中的背景材料、常识以及网上搜集到的参考资料进行结合,从中筛选出最合适的指标

脑洞:假如现在小华就在我们面前,我们要对他提哪些问题才能帮他合理地做决定?  

问题: 一次性考虑这五个指标之间的关系,往往考虑不周。

解决方法: 两个两个指标进行比较,最终根据两两比较的结果来推算出权重。

目的:求权重!!!!!!

有同学可能会想,直接叫小华填好这张表不就完事啦~

  这样往往比较片面和不周全  (隔一天问他答案可能就变)

在确定影响某因素的诸因子在该因素中所占的比重时,遇到的主要困难 是这些比重常常不易定量化。此外,当影响某因素的因子较多时,直接考虑各因子对该因素有多大程度的影响时,常常会因考虑不周全、顾此 失彼而使决策者提出与他实际认为的重要性程度不相一致的数据,甚至 有可能提出一组隐含矛盾的数据。

                       ——选自司守奎[kuí]老师的数学建模算法与应用

 (二)建立层次分析法的步骤

(1)第一步、建立层次结构模型

解决评价类问题,大家首先要想到以下三个问题:

① 我们评价的目标是什么?

  答:为小华同学选择最佳的旅游景点。

② 我们为了达到这个目标有哪几种可选的方案?

  答:三种,分别是苏杭、去北戴河和去桂林

③ 评价的准则或者说指标是什么?(我们根据什么东西来评价好坏)

  答:题目没给相关数据支撑,需要我们查阅相关的资料。

注意:如果你用到了层次分析法,那么这个层次结构图要放在你的建模论文中。  

(2) 第二步、构造判断矩阵

根据五个指标,分别构造出来的判断矩阵,如下: 

 (3)第三步、 求权重并做一致性检验

在使用判断矩阵求权重之前,必须对其进行一致性检验。

一致性检验的目的:为了检验各元素重要度之间的协调性,避免出现AB重要,BC重要,而C又比A重要这样的矛盾情况出现。

引理:n阶判断矩阵A为一致矩阵时,当且仅当最大特征值=n

           n阶判断矩阵A非一致时,一定满足最大特征值>n

判断矩阵越不一致时,最大特征值与n相差就越大

三种方法计算最大特征值:

①算术平均法(和积法)

②几何平均法(方根法)

③特征值法

​​①计算最大特征值方法1:算术平均法

第一步:将判断矩阵按照列归一化 (每一个元素除以其所在列的和)

第二步:将归一化的各列按行求和

第二步:将相加后得到的向量中的每个元素除以n即可得到权重向量

 结果如下:

②计算最大特征值方法2:几何平均法

③计算最大特征值方法3:特征值法 

三种方法结果综合分析: 

(4)第四步、根据权重矩阵计算得分,并进行排序

三、总结 

判断矩阵不满足一致性检验CR>0.1,如何修正? 

1. 重新构建判断矩阵:请专家重新评估要素之间的相对重要程度,确保判断矩阵满足一致性要求。

2. 调整判断矩阵中的数据:对判断矩阵中不满足一致性的元素进行微调,以达到一致性。可以使用辅助软件(如 YaahpAHP-Online 等)提供的功能进行检查和处理

3.降低判断矩阵阶数:如果判断矩阵的阶数过高,可以考虑降低其阶数,从而简化模型。这可以通过合并一些相关性较高的指标或子目标来实现。但要注意,降低阶数可能会影响分析结果的准确性。

往一致矩阵上调整    使一致矩阵各行成倍数关系

层次分析法的优点:

系统性:将对象视作系统,按照分解、比较、判断、综合的思维方式进行决策。成为继机理分析、统计分析之后发展起来的系统分析的重要工具

实用性定性与定量相结合,能处理许多用传统的最优化技术无法着手的实际问题,应用范围很广,同时,这种方法使得决策者与决策分析者能够相互沟通,决策者甚至可以直接应用它,这就增加了决策的有效性

简洁性:计算简便,结果明确,具有中等文化程度的人即可以了解层次分析法的基本原理并掌握该法的基本步骤,容易被决策者了解和掌握。便于决策者直接了解和掌握。

 层次分析法的一些局限性:

层次分析法的适用情况:

它适合用于以下几种情况:

1. 当决策问题涉及多个因素且这些因素之间存在层次关系时,可以使用层次分析法来理清各因素之间的关系,并确定各个层次的权重。

2. 当决策问题涉及到一些难以量化的因素时,层次分析法可以帮助我们将这些因素转化为可以比较的量化指标,从而进行决策。

3. 当决策问题需要考虑多方面的观点和意见时,层次分析法可以帮助我们综合各方的观点,形成统一的决策。

4. 当决策问题需要平衡多种目标和利益时,层次分析法可以帮助我们确定各个目标和利益的权重,以便找到最佳的平衡点。

总之,层次分析法适合于那些涉及多个因素、难以量化、需要考虑多方面观点和需要平衡多种目标和利益的决策问题。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/11754.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何在创建之前检测 Elasticsearch 将使用哪个索引模板

作者:来自 Elastic Musab Dogan 概述 Elasticsearch 提供两种类型的索引模板:旧(legacy)索引模板和可组合 (composable) 索引模板。 Elasticsearch 7.8 中引入的可组合模板旨在替换旧模板,两者仍然可以在 Elasticsear…

深入理解MVCC与Read View:并发控制的关键要素

MVCC MVCC的几个问题1.update、insert、select和delete如何在MVCC中维护版本链?2.select读取,是读取最新的版本呢?还是读取历史版本?3.当前读和快照读4.那为什么要有隔离级别呢?5.如何保证,不同的事务&…

Automa:一键自动化,网页数据采集与工作流程优化专家

Automa:解锁自动化浏览器潜能,赋能工作效率,让复杂任务变得简单- 精选真开源,释放新价值。 概览 Automa是一款创新的网页自动化工具,专为寻求提升工作效率、简化数据收集过程的现代工作者设计。它融合了先进的数据抓取…

模板:vector(顺序表容器)

1.构造函数 explicit vector (const allocator_type& alloc allocator_type()); //默认构造函数explicit vector (size_type n, const value_type& val value_type(),const allocator_type& alloc allocator_type()); //n个重复的valtemplate <class Input…

Angular入门

Angular版本&#xff1a;Angular 版本演进史概述-天翼云开发者社区 - 天翼云 安装nodejs&#xff1a;Node.js安装与配置环境 v20.13.1(LTS)-CSDN博客 Angular CLI是啥 Angular CLI 是一个命令行接口(Angular Command Line Interface)&#xff0c;是开发 Angular 应用的最快、最…

大模型时代下两种few shot高效文本分类方法

介绍近年(2022、2024)大语言模型盛行下的两篇文本分类相关的论文&#xff0c;适用场景为few shot。两种方法分别是setfit和fastfit&#xff0c;都提供了python的包使用方便。 论文1&#xff1a;Efficient Few-Shot Learning Without Prompts 题目&#xff1a;无需提示的高效少…

深入了解 MyBatis 插件:定制化你的持久层框架

序言 MyBatis 是一个流行的 Java 持久层框架&#xff0c;它提供了简单而强大的数据库访问功能。然而&#xff0c;有时候我们需要在 MyBatis 中添加一些自定义的功能或行为&#xff0c;来满足特定的需求。这时&#xff0c;MyBatis 插件就发挥了重要作用。本文将深入探讨 MyBati…

An 2024下载

An2024下载&#xff1a; 百度网盘下载https://pan.baidu.com/s/1cQQCFL16OUY1G6uQWgDbSg?pwdSIMS Adobe Animate 2024&#xff0c;作为Flash技术的进化顶点&#xff0c;是Adobe匠心打造的动画与交互内容创作的旗舰软件。这款工具赋予设计师与开发者前所未有的创意自由&#x…

HIVE卡口流量需求分析

HIVE卡口流量需求分析 目录 HIVE卡口流量需求分析 1.创建表格 插入数据 2.需求 3.总结&#xff1a; 1.创建表格 插入数据 CREATE TABLE learn3.veh_pass( id STRING COMMENT "卡口编号", pass_time STRING COMMENT "进过时间", pass_num int COMMENT …

【iOS】架构模式

文章目录 前言一、MVC二、MVP三、MVVM 前言 之前写项目一直用的是MVC架构&#xff0c;现在来学一下MVP与MVVM两种架构&#xff0c;当然还有VIPER架构&#xff0c;如果有时间后面会单独学习 一、MVC MVC架构先前已经详细讲述&#xff0c;这里不再赘述&#xff0c;我们主要讲一…

Golang | Leetcode Golang题解之第87题扰乱字符串

题目&#xff1a; 题解&#xff1a; func isScramble(s1, s2 string) bool {n : len(s1)dp : make([][][]int8, n)for i : range dp {dp[i] make([][]int8, n)for j : range dp[i] {dp[i][j] make([]int8, n1)for k : range dp[i][j] {dp[i][j][k] -1}}}// 第一个字符串从 …

【SAP ABAP学习资料】通过RFC接口上传图片至SAP 图片格式转换 图片大小调整

SAP图片相关&#xff1a; 链接: 【SAP ABAP学习资料】图片上传SAP 链接: 【SAP ABAP学习资料】屏幕图片预览 链接: 【SAP ABAP学习资料】smartforms打印图片&#xff0c;动态打印图片 需求&#xff1a; SAP上传图片只能本地电脑选择图片通过SE78或PERFORM IMPORT_BITMAP_BDS上…

Milvus入门初探

引言 Milvus 是一款开源的向量数据库&#xff0c;专为处理向量搜索任务而设计。它支持多种类型的向量&#xff0c;如浮点向量、二进制向量等&#xff0c;并且可以处理大规模的向量数据。Milvus 在 AI 应用中非常流行&#xff0c;尤其是在需要执行相似性搜索或最近邻搜索的场景…

【超详细】跑通YOLOv8之深度学习环境配置3-YOLOv8安装

环境配置3下载安装内容如下&#xff1a; 1、配置清华等镜像源 2、创建环境 3、下载安装Pytorch 4、下载安装YOLOv8运行环境 版本&#xff1a;Python3.8&#xff08;要求>3.8&#xff09;&#xff0c;torch1.12.0cu113&#xff08;要求>1.8&#xff09; 1、配置清华等镜…

算法-卡尔曼滤波之为什么要使用卡尔曼滤波器

假设使用雷达来预测飞行器的位置&#xff1b; 预先的假设条件条件: 1.激光雷达的激光束每5s发射一次&#xff1b; 2.通过接受的激光束&#xff0c;雷达估计目标当前时刻的位置和速度&#xff1b; 3.同时雷达要预测下一时刻的位置和速度 根据速度&#xff0c;加速度和位移的…

ESP32重要库示例详解(三):按键之avdweb_Switch库

在Arduino开发中&#xff0c;我们经常需要处理按钮和开关的输入。avdweb_Switch库就是为了简化这一任务&#xff0c;提供了一个优雅且高效的事件处理方式。本文将通过一个实际示例&#xff0c;介绍该库的主要特性和用法。 导入库 在Arduino IDE导入avdweb_Switch库的步骤如下…

Python---NumPy万字总结【此篇文章内容难度较大,线性代数模块】(3)

NumPy的应用&#xff08;3&#xff09; 向量 向量&#xff08;vector&#xff09;也叫矢量&#xff0c;是一个同时具有大小和方向&#xff0c;且满足平行四边形法则的几何对象。与向量相对的概念叫标量或数量&#xff0c;标量只有大小&#xff0c;绝大多数情况下没有方向。我们…

家居分类的添加、修改、逻辑删除和批量删除

文章目录 1.逻辑删除家居分类1.将之前的docker数据库换成云数据库2.树形控件增加添加和删除按钮1.找到控件2.粘贴四个属性到<el-tree 属性>3.粘贴两个span到<el-tree>标签里4.代码5.效果6.方法区新增两个方法处理添加和删除分类7.输出查看一下信息8.要求节点等级小…

李开复引领的零一万物开源了Yi-1.5模型,推出了6B、9B、34B三个不同规模的版本

零一万物&#xff0c;由李开复博士引领的AI 2.0公司&#xff0c;近期开源了其备受瞩目的Yi-1.5模型&#xff0c;这一举措再次彰显了公司在人工智能领域的创新实力与开放精神。Yi-1.5模型作为零一万物的重要技术成果&#xff0c;不仅代表了公司在大模型技术研发上的新高度&#…

冥想的时候怎么专注自己

冥想的时候怎么专注自己&#xff1f;我国传统的打坐养生功法&#xff0c;实际最早可追溯到五千年前的黄帝时代。   每天投资两个半小时的打坐&#xff0c;有上千年之久的功效。因为当你们打坐进入永恒时&#xff0c;时间停止了。这不只是两个半小时&#xff0c;而是百千万亿年…