【MATLAB源码】数学建模基础教程(2)--层次分析法(评价类算法)

系列文章目录在最后面,各位同仁感兴趣可以看看!

层次分析法

  • 引言
  • 一、层次分析法的特点
  • 二、模型的建立求解过程
    • (1)问题的提出:实际问题的转化
    • (2)建立层次结构模型
    • (3)构造判断(成对比较)矩阵
    • (4)一致性检验:
  • 三、层次分析法的优点与局限
    • 代码开源
  • 最后:总结
  • 系列文章目录


引言

层次分析法(AHP)是由美国运筹学家、匹茨堡大学教授托马斯·L·萨蒂(T.L. Saaty)在20世纪70年代初提出的一种层次权重决策分析方法。萨蒂教授当时为美国国防部研究一个课题,即根据各个工业部门对国家福利的贡献大小来进行电力分配。他应用了网络系统理论和多目标综合评价方法,提出了这一方法。层次分析法通过将复杂的决策问题分解为多个层次和子问题,逐层分析,并利用专家判断和数学计算确定各因素的相对重要性,最终为决策提供科学的依据。

一、层次分析法的特点

(1) 这种方法的特点是在深入分析复杂决策问题的本质、影响因素及其内在关系的基础上,利用较少的定量信息,将决策的思维过程数学化,从而为多目标、多准则或无结构特性的复杂决策问题提供简便的解决方案。它是一种适用于难以完全定量的复杂系统进行决策的模型和方法。
(2)层次分析法在经济、科技、文化、军事、环境乃至社会发展等方面的管理决策中都有广泛的应用。它常用于解决诸如综合评价、选择决策方案、估计和预测、以及投入量的分配等问题。通过这种方法,决策者能够更有效地分析和处理复杂的决策问题,确保决策过程更加科学和合理。

二、模型的建立求解过程

(1)问题的提出:实际问题的转化

在我们日常生活中,其实有许多决策问题。决策是指在面临多种方案时,根据一定的标准选择某一种方案。例如拿典型的旅游例子来讲:假期旅游,是去风光秀丽的苏州,还是去凉爽宜人的北戴河,或者是去山水甲
天下的桂林?通常会依据景色、费用、食宿条件、旅途等因素选择去哪个地方
.其中这些景色、费用、食宿条件、旅途等就是决策的目标,就是我们最终比较得出的最优化结果,如下图是基本的原理过程;

在这里插入图片描述


运用层次分析法构造系统模型时,大体可以分为以下四个步骤:
1.建立层次结构模型
2.构造判断(成对比较)矩阵
3.层次单排序及其一致性检验
4.层次总排序及其一致性检验

(2)建立层次结构模型

层次分析法通过将决策的目标、考虑的因素(决策准则)和决策对象按它们之间的相互关系分为最高层、中间层和最低层,绘制出层次结构图。具体如下:

  1. 最高层(目标层):决策的目的、要解决的问题。
  2. 中间层(准测层):考虑的因素、决策的准则,影响选择的因素。
  3. 最低层(方案层):决策时的备选方案,就是有几种方案可选。
    我们可以用一个简单明了的图,给大家直观的表达:如下图所示

    在这里插入图片描述


    几点注意
    1.处于最上面的的层次通常只有一个元素,一般是分析问题的预定目标或理想结果。中间层次一般是准则、子准则。最低一层包括决策的方案。层次之间元素的支配关系不一定是完全的,即可以存在这样的元素,它并不支配下一层次的所有元素。
    2.层次数与问题的复杂程度和所需要分析的详尽 程度有关。每一层次中的元素一般不超过9个,因一层中包含数目过多的元素会给两两比较判断带来困难。
    3.一个好的层次结构对于解决问题是极为重要的。 层次结构建立在决策者对所面临的问题具有全面 深入的认识基础上,如果在层次的划分和确定层 次之间的支配关系上举棋不定,最好重新分析问 题,弄清问题各部分相互之间的关系,以确保建 立一个合理的层次结构。
    还是以上面的旅游举例来说,可以进行划分的层次结构如下图所示:直观明了的把问题转化为层次逻辑

    在这里插入图片描述


    层次分析法所要解决的问题是关于最低层对最高层的相对权重问题。通过确定这些相对权重,可以对最低层中的各种方案和措施进行排序,从而在不同的方案中作出选择或形成选择方案的原则。具体而言,最高层代表决策的目的和要解决的问题,中间层则包含考虑的因素和决策准则,而最低层则是备选方案。

(3)构造判断(成对比较)矩阵

在建立递阶层次结构后,上下层次之间元素的隶属关系得以确定。假设上一层次的元素 ( Ck ) 作为准则,对下一层次的元素 ( A1, A2, …, An ) 存在支配关系,我们的目的是在准则 ( Ck ) 之下,根据它们的相对重要性为 ( A1, A2, …, An ) 赋予相应的权重。为此,需要比较同一层次中每个因素相对于上一层次同一因素的相对重要性。这种比较通常通过对每个因素进行成对比较,以确定它们对决策目标的贡献,从而最终形成相应的权重矩阵,并计算出每个方案的权重值。

在确定各层次因素之间的权重时,如果仅依靠定性的结果,常常难以被他人接受。因此,萨蒂等人提出了构造成对比较矩阵 A = aij 的方法。具体而言,该方法有以下特点:
1.不将所有因素放在一起进行比较,而是进行两两相互比较。
2. 在比较时采用相对尺度,以尽可能减少不同性质因素之间比较的困难,从而提高准确度。
成对比较矩阵用于表示本层所有因素相对于上一层某一因素的相对重要性。判断矩阵的元素 ( aij ) 是使用萨蒂的1-9标度方法给出的。心理学家认为,成对比较的因素不宜超过9个,因此每层因素最好不要超过9个。这种方法有效地简化了比较过程,使得决策者能够更清晰地理解各因素的重要性,并为权重的计算提供了可靠的基础。那么判断矩阵aij的标度方法表如下所示:

在这里插入图片描述


对于 n 个元素来说, 通过A1, A2, …, An两两比较, 得到成对比较 (判断)矩阵 A=(aij) n*n:其中判断矩阵具有如下性质:
(1)aij>0;
(2)aij=1/aji;
(3)aii=1。
我们称 A为正的互反矩阵根据性质(2)和(3),事实上,对于n 阶判断矩阵仅需对其上(下)三角元素共n(n-1)/2个给出判断即可。对应于判断矩阵最大特征根λmax的特征向量,经归一化(使向量中各元素之和等于1)后记为W。
通过调查部分人的想法程度,得到以旅游为例子的矩阵。

在这里插入图片描述

(4)一致性检验:

对矩阵归一化处理之后,由aikakj=aij,i,j=1,2,…,n。在正互反矩阵A中,若aikakj=aij(A的元素具有传递性)则称A为一致矩阵。定理:n阶正互反阵A的最大特征根λmax>=n,当且仅λ=n时A为一致阵。一般地,我们并不要求判断具有这种传递性和一致性,这是由客观事物的复杂性与人的认识的多样性所决定的.但在构造两两判断矩阵时,要求判断大体上的一致是应该的.出现甲比乙极端重要,乙比丙极端重要,而丙又比甲极端重要的判断般是违反常识的.一个混乱的经不起推敲的判断矩阵有可能导致决策的失误,而且当判断矩阵过于偏离一致性时,用上述各种方法计算的排序权重作为决策依据,其可靠程度也值得怀疑.因而必须对判断矩阵的一致性进行检验.

由于λ(A的特征根)连续的依赖于aij,则λ比n大的越多,A的不一致性越严重。引起的判断误差越大。因而可以用λ-n数值的大小来衡量A的不
一致程度。
定义一致性指标 CI=(λmax-n)/(n-1)
其中:CI=0 ,有完全的一致性
CI接近于0,有满意的一致性
CI越大,不一致越严重

定义一致性比率:CR=CI/RI ,一般的,当一致性比率CR=CI/RI<0.1.时,认为的不一致程度在容许范围之内,有满意的一致性,通过一致性检验.否则要重新构造成对比较矩阵A,对aij加以调整.
注意:一致性检验:利用一致性指标和一致性比率<0。1及随机致性指标的数值表,对A进行检验的过程

断矩阵一致性检验的步骤如下:
(1)计算一致性指标 CI: CI=(λmax-n)/(n-1) 其中n为判断矩阵的阶数;
(2)查找平均随机致性指标RI.平均随机一致性指标是多次(500次以上)重复进行随机判断矩阵特征根计算之后取算术平均得到的.一般用于查表得到RI:如下表

阶数123456789101112131415
RI000.520.891.121.261.361.411.461.491.521.541.561.581.59

(3)计算一致性比例CR:**CR=CI/RI,**当C.R.<0.1时,一般认为判断矩阵的一致
性是可以接受的.否则应对判断矩阵作适当的修正.
根据上面例子最后求得结果如下:

在这里插入图片描述

三、层次分析法的优点与局限

1.优点:
(1)系统性:层次分析法通过将研究对象视为一个整体系统,运用系统思维进行全面的决策分析,因而成为继机理分析和统计分析之后,发展起来的重要系统分析工具。
(2)实用性:该方法成功结合了定性与定量分析,能够高效地解决许多传统优化技术难以应对的复杂实际问题。此外,层次分析法还促进了决策者与分析者之间的有效沟通,使得决策者可以在一定程度上直接应用该方法,从而显著提高决策的有效性和可靠性。
(3)简洁性:层次分析法的基本原理和步骤易于理解,具备中等文化水平的人士都能够快速掌握。该方法的计算过程非常简便,所得结果直观明了,决策者可以轻松理解和应用。
2.缺点:
(1)局限性:层次分析法的一个主要局限在于,它只能在现有方案中选择出最佳选项,而无法提出全新的解决方案,限制了其创新性。
(2)粗糙性:在比较、判断和计算过程中,层次分析法的处理方式较为粗略,因而不适合用于对高精度要求较高的问题。
(3)主观性:从建立层次结构模型到构建成对比较矩阵,主观因素对整个过程的影响十分显著,这可能导致最终的决策结果难以获得所有相关决策者的普遍认同。

代码开源

clc; clear; % 清空命令行和工作区% 定义判断矩阵
A = [根据方案层定义矩阵];% 计算特征值和一致性检验
maxlam = max(eig(A)); % 最大特征值
n = size(A, 1); % 评价指标个数
RI = [0, 0, 0.58, 0.9, 1.12, 1.24, 1.32, 1.41, 1.45...]; % 随机一致性指标,查表根据阶数
CI = (maxlam - n) / (n - 1); % 一致性指数
CR = CI / RI(n); % 一致性比率% 一致性检验
if CR < 0.1disp('该矩阵通过一致性检验。');
elsedisp('该矩阵未通过一致性检验!');return;
end% 归一化处理
Aprogress = A ./ sum(A); % 归一化判断矩阵
W = mean(Aprogress, 2); % 计算权重向量% 输入原始数据
data = [判断的方案程度矩阵];% 数据归一化处理
data = data ./ sum(data); % 归一化每列数据% 计算综合评分
grade = data * W; % 综合评分

最后:总结

通过上面大介绍,大概层次分析法就是这样,我也是从基础跟大家讲起,算法比较简单易懂,如果有什么讲的不好的希望大佬们指正,谢谢!最后哈哈哈哈哈,还是希望,能给我点赞收藏关注一下,真的非常谢谢咯,最后后续看看还有什么可以讲解的,后续进行分享。别忘了点赞!!!!!!哈哈哈哈哈哈,下期见


系列文章目录

专栏1:
第一篇文章:【MATLAB源码】机器视觉与图像识别技术—视觉系统的构成(视频与图像格式转换代码及软件下载)
第二篇文章:【MATLAB源码】机器视觉与图像识别技术(2)—图像分割基础
第三篇文章:【MATLAB源码】机器视觉与图像识别技术(2)续—图像分割算法
第四篇文章:【MATLAB源码】机器视觉与图像识别技术(3)—数字形态学处理以及图像特征点提取
第五篇文章: 【MATLAB源码】机器视觉与图像识别技术(4)—模式识别与视觉计数
第六篇文章: 【MATLAB源码】机器视觉与图像识别技术(5)—BP神经网络和视觉标定
第七篇文章:【MATLAB源码】机器视觉与图像识别技术实战示例文档—鱼苗面积预测计数
第八篇文章:【MATLAB源码】机器视觉与图像识别技术(6)—帧差法和videoinput视频读取
第九篇文章:【MATLAB源码】机器视觉与图像识别技术(7)续—BP神经网络
专栏2:
第一篇文章:【MATLAB源码】数学建模基础教程—初步认识数学建模

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

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

相关文章

Codeforces Round 871 (Div. 4)(A~H)

比赛链接 Dashboard - Codeforces Round 871 (Div. 4) - Codeforces A. Love Story 找到与codeforces 有多少个不同的字符。 #include<bits/stdc.h> #define int long long #define TEST int T; cin >> T; while (T--) #define ios ios::sync_with_stdio(fals…

前端常用的性能优化方案

目录 性能分析工具lighthouseWebpack Bundle分析 开发阶段按需引入路由懒加载 打包阶段打包配置减少包体积配置压缩分包 资源预加载/预请求 部署阶段开启http2静态资源缓存gzip压缩 性能优化主要在三个阶段进行&#xff1a;开发阶段、开发结束后的打包阶段、项目部署上线阶段 首…

提升生产效率:APS高级计划排程系统在车间工序级排程的革命性应用

在制造业的数字化转型浪潮中&#xff0c;APS高级计划排程系统以凭借自身卓越的排程运算能力和应用灵活性&#xff0c;已经成为中大型制造业提升生产效率的关键工具。APS系统的介入&#xff0c;打通了传统ERP和MES等各类业务系统运营平台&#xff0c;并且通过产能均衡规划&#…

为什么我3d模型选择面选不到?---模大狮模型网

在展览3D模型设计行业中&#xff0c;设计师常常面临诸多技术挑战&#xff0c;其中之一是在模型编辑过程中遇到选择面的困难。这不仅影响了设计工作效率&#xff0c;还可能影响最终作品的质量和展示效果。本文将探讨在3D模型设计中为何会遇到“为什么我3D模型选择面选不到?”这…

【MySQL进阶篇】管理

1、系统数据库 MySQL数据库安装完成之后&#xff0c;自带以下四个数据库&#xff0c;具体作用如下&#xff1a; 数据库含义mysql存储MySQL服务器正常运行所需要的各种信息&#xff08;时区、主从、用户、权限等&#xff09;information_schema提供了访问数据库元数据的各种表…

实战OpenCV之环境安装与配置

OpenCV是什么 OpenCV&#xff0c;英文全称为Open Source Computer Vision Library&#xff0c;是一个开源的计算机视觉和机器学习软件库。它设计用于提供一系列功能强大的算法&#xff0c;以帮助开发者处理图像和视频数据&#xff0c;实现各种视觉任务&#xff0c;包括&#xf…

.NET内网实战:模拟Installer关闭Defender

01基本介绍 02编码实现 原理上通过Windows API函数将当前进程的权限提升至TrustedInstaller&#xff0c;从而实现了对Windows Defender服务的控制。通常可以利用Windows API中的OpenSCManager、OpenProcessToken、ImpersonateLoggedOnUser以及ControlService等函数协同工作&am…

从干涉实验、化学反应到晶体管的科学之旅 - 《量子宇宙》读后感

在《量子宇宙》这本书中&#xff0c;作者没有讲述历史和发现的故事&#xff0c;而是从头到尾用公式推导来展示宇宙和现代物理学的壮美。 量子理论处理的是概率&#xff0c;而不是确定性。大自然在某些方面本质上就是由或然率支配的。计算粒子出现的概率是我们能做到的极限。 …

渗透小游戏,各个关卡的渗透实例---步骤简单(含代码)

文章目录 Less-1Less-2Less-5updatexml报错注入&#xff1a; Less-6Less-7Less-8Less-9Less-11Less-13Less-15 Less-1 首先&#xff0c;可以看见该界面&#xff0c;该关卡主要是SQL注入&#xff0c;由于对用户的输入没有做过滤&#xff0c;使查询语句进入到了数据库中&#xff…

springboot电影院线上购票系统-计算机毕业设计源码68220

目录 摘要 1 绪论 1.1 选题背景与意义 1.2国内外研究现状 1.3论文结构与章节安排 2系统分析 2.1.1 技术可行性分析 2.1.2 经济可行性分析 2.1.3 法律可行性分析 2.2 系统流程分析 2.2.1 添加信息流程 2.2.2 修改信息流程 2.2.3 删除信息流程 2.3 系统功能分析 2.…

synchronized 与 Lock 的区别

synchronized 与 Lock 的区别 1、相同点2、不同点2.1 精确性与灵活性2.2 性能2.3 使用便利性 3、示例3.1 synchronized 示例3.2 Lock 示例 4、总结 &#x1f496;The Begin&#x1f496;点点关注&#xff0c;收藏不迷路&#x1f496; 在Java多线程编程中&#xff0c;synchroniz…

智能家居沙盘系统-智慧家居沙盘系统

智能家居和物联网技术是当前科技领域的热门话题&#xff0c;随着各类智能家居产品的不断推出&#xff0c;智能家居市场也逐渐呈现出蓬勃发展的态势。智能家居快速发展&#xff0c;而物联网相关人才供应远远不足。高校开展智能家居工程及设计人才教育培养具有重大意义。 基本介绍…

【stm32】EXTI外部中断

EXTI外部中断 1、中断系统2、中断执行流程3、STM32中断4、NVIC基本结构5、NVIC优先级分组6、EXTI简介&#xff08;引脚电平变化&#xff0c;申请中断&#xff09;7、EXTI基本结构8、AFIO复用IO口9、EXTI框图10、旋转编码器简介11、程序设计&#xff1a;1.使用对射式红外传感器触…

vue3实现商品图片放大镜效果(芋道源码yudao-cloud 二开笔记)

今天开发一个防某商城的商品图片放大镜&#xff0c;鼠标移动到图片位置时&#xff0c;右侧出现一个已放大的图片效果。 示例如下&#xff1a; 下图的图片的放大效果和小图的切换封装成了组件PicShow.vue&#xff0c;可根据需求自行修改&#xff0c;如下&#xff1a; 第一步&…

Html5总结

前端学习 html决定页面的结构css决定页面的样式js决定页面的行为 Html5 1.文本格式化标签&#xff08;熟记&#xff09; 你在网页中&#xff0c;有时需要为文字设置粗体、斜体或下划线效果&#xff0c;这时就需要用到HTML中的文本格式化标记 2.标签属性 例如&#xff1a; …

算法 —— 位运算

目录 位运算常用结论 位运算例题 位1的个数 比特位计算 汉明距离 只出现一次的数字 判定字符是否唯一 丢失的数字 两整数之和 消失的两个数字 进制转换 位运算常用结论 想详细了解位运算的内容可以阅读我的这篇博客&#xff1a;应该背下的位运算 以下我只介绍一些位…

3.特征工程-特征抽取、特征预处理、特征降维

文章目录 环境配置&#xff08;必看&#xff09;头文件引用1.数据集: sklearn代码运行结果 2.字典特征抽取: DictVectorizer代码运行结果稀疏矩阵 3.文本特征抽取(英文文本): CountVectorizer()代码运行结果 4.中文文本分词(中文文本特征抽取使用)代码运行结果 5.中文文本特征抽…

Linux基础笔记分享(超详细~)

文章目录 Linux基础1.基础概念2.基础命令命令行快捷键自动补全: tab移动光标快速删除翻看历史命令终止程序退出登录清屏 查看命令帮助alias命令别名-快捷键pwd-类似于地图cd-类似于传送术mkdir-类似于合成装备touch-创建文件ls-类似于查看装备tree-打印目录层级结构cp-复制命令…

HarmonyOS 习题(一)

1、在HarmonyOS系统架构中&#xff0c;以下哪项属于应用层? A&#xff09;AI子系统 B&#xff09;U框架 C&#xff09;电话 D&#xff09;内核 答案&#xff1a;C 解析&#xff1a; 2、在HarmonyOS系统架构中&#xff0c;以下哪项提供统一的外设访问能力和驱动的开发管理框架…

sqli-labs靶场练习(1、5-8关)

自己搭建环境啊喂...http://127.0.0.1/sqli-labs-php7-master/ 第一关 1.单引号判断是否存在注入点 /?id1 2.查询列数 ?id1 order by 3-- ?id1 order by 4-- 由此可判断有3列 3.查询用户名和密码分别在哪列 ?id-1 union select 1,2,3 -- 4.查询数据库名称为security ?…