基于Matlab的AHP分析程序设计

合集下载

AHP及matlab程序

AHP及matlab程序

层次分析法(AHP)及matlab程序层次分析法是一种新的定性分析与定量分析相结合的系统分析方法,是将人的主观判断用数量形式表达和处理的方法,简称AHP(The Analytic Hierarchy Process)法。

近年来,层次分析法在草地农业生态系统的系统分析、设计与决策中日益受到重视。

1层次分析法的基本方法和步骤层次分析法是把复杂问题分解成各个组成因素,又将这些因素按支配关系分组形成递阶层次结构。

通过两两比较的方式确定各个因素相对重要性,然后综合决策者的判断,确定决策方案相对重要性的总排序。

运用层次分析法进行系统分析、设计、决策时,可分为4个步骤进行;(1)分析系统中各因素之间的关系,建立系统的递阶层次结构;(2)对同一层次的各元素关于上一层中某一准则的重要性进行两两比较,构造两两比较的判断矩阵;(3)由判断矩阵计算被比较元素对于该准则的相对权重;(4)计算各层元素对系统目标的合成权重,并进行排序,2递阶层次结构的建立首先把系统问题条理化、层次化,构造出一个层次分析的结构模型。

在模型中,复杂问题被分解,分解后各组成部分称为元素,这些元素又按属性分成若干组,形成不同层次。

同一层次的元素作为准则对下一层的某些元素起支配作用,同时它又受上面层次元素的支配。

层次可分为三类;(1)最高层:这一层次中只有一个元素,它是问题的预定目标或理想结果,因此也叫目标层;(2)中间层:这一层次包括要实现目标所涉及的中间环节中需要考虑的准则。

该层可由若干层次组成,因而有准则和子准则之分,这一层也叫准则层;(3)最底层:这一层次包括为实现目标可供选择的各种措施、决策方案等,因此也称为措施层或方案层。

上层元素对下层元素的支配关系所形成的层次结构被称为递阶层次结构。

当然,上一层元素可以支配下层的所有元素,但也可只支配其中部分元素。

递阶层次结构中的层次数与问题的复杂程度及需要分析的详尽程度有关,可不受限制。

每一层次中各元素所支配的元素一般不要超过9个,因为支配的元素过多会给两两比较判断带来困难。

层次分析法及matlab程序

层次分析法及matlab程序

层次分析法建模层次分析法(AHP-Analytic Hierachy process)---- 多目标决策方法70 年代由美国运筹学家T·L·Satty提出的,是一种定性与定量分析相结合的多目标决策分析方法论。

吸收利用行为科学的特点,是将决策者的经验判断给予量化,对目标(因素)结构复杂而且缺乏必要的数据情况下,採用此方法较为实用,是一种系统科学中,常用的一种系统分析方法,因而成为系统分析的数学工具之一。

传统的常用的研究自然科学和社会科学的方法有:机理分析方法:利用经典的数学工具分析观察的因果关系;统计分析方法:利用大量观测数据寻求统计规律,用随机数学方法描述(自然现象、社会现象)现象的规律。

基本内容:(1)多目标决策问题举例AHP建模方法(2)AHP建模方法基本步骤(3)AHP建模方法基本算法(3)AHP建模方法理论算法应用的若干问题。

参考书:1、姜启源,数学模型(第二版,第9章;第三版,第8章),高等教育出版社2、程理民等,运筹学模型与方法教程,(第10章),清华大学出版社3、《运筹学》编写组,运筹学(修订版),第11章,第7节,清华大学出版社一、问题举例:A.大学毕业生就业选择问题获得大学毕业学位的毕业生,“双向选择”时,用人单位与毕业生都有各自的选择标准和要求。

就毕业生来说选择单位的标准和要求是多方面的,例如:①能发挥自己的才干为国家作出较好贡献(即工作岗位适合发挥专长);②工作收入较好(待遇好);③生活环境好(大城市、气候等工作条件等);④单位名声好(声誉-Reputation);⑤工作环境好(人际关系和谐等)⑥发展晋升(promote, promotion)机会多(如新单位或单位发展有后劲)等。

问题:现在有多个用人单位可供他选择,因此,他面临多种选择和决策,问题是他将如何作出决策和选择?——或者说他将用什么方法将可供选择的工作单位排序?B.假期旅游地点选择暑假有3个旅游胜地可供选择。

基于MATLAB的AHP实现

基于MATLAB的AHP实现

基于MATLAB的AHP实现
摘要
本文主要介绍了基于MATLAB的AHP算法的实现过程,并且给出了一
个具体的实现过程和实现结果,以便于读者更好地理解AHP算法的原理及
其实现方法。

本文的主要内容如下:AHP算法背景、AHP算法步骤说明、MATLAB脚本实现示例及最终结果分析。

关键词:AHP;MATLAB;实现
1.AHP算法背景
AHP(Analytic Hierarchy Process)是一种多层次分析方法,它被
广泛用于从复杂的问题中获得有效的决策。

AHP首次由T.L. Saaty提出,最初是在数量化和定量分析方面提出的一种重要工具,它能够对复杂的问
题非常有效地进行排序,从而得出最佳解决方案。

AHP使用比较和评估的方法来处理多个目标,它将一个复杂的决策问
题分解为一系列被称为层次结构的子问题,从而将复杂的问题减少到一个
可解决的范围里。

AHP构建了一个层次结构矩阵,其中每一行表示一个子
问题,每一列表示一个目标,然后通过综合评估这些子问题来求出最终的
结果。

AHP算法的工作方式如下:建立目标层级结构;采用层次划分法建
立子问题层次结构;确定比较矩阵:评价矩阵;计算层次结构最优解。

2.AHP算法步骤说明
AHP算法的基本步骤如下:
(1)确定研究的问题和研究目标。

matlab实现ahp算法

matlab实现ahp算法

matlab实现ahp算法AHP (Analytic Hierarchy Process) 是一种用于决策分析的方法,它基于对不同因素之间的相对重要性进行比较来确定最佳决策。

下面是一个MATLAB实现的简单示例,展示如何使用AHP算法进行决策分析。

首先,我们需要定义决策中的不同因素和它们之间的相对重要性。

假设我们要选择一种新的汽车品牌,我们可以定义以下因素:价格、燃油效率、安全性和外观。

我们可以使用1到9的比较尺度来比较这些因素的相对重要性,其中1表示相等,3表示略微重要,5表示中等重要,7表示强烈重要,9表示极其重要。

我们可以将这些比较结果表示为一个矩阵:```C=[1,3,5,7;1/3,1,3,5;1/5,1/3,1,3;1/7,1/5,1/3,1];```接下来,我们需要计算每个因素的权重。

首先,我们需要计算每一列的归一化特征向量,然后将其平均。

在MATLAB中,我们可以使用`eig`函数来计算特征向量和特征值。

下面是计算权重的代码:```matlab[V, D] = eig(C);weights = abs(V(:, 1)) / sum(abs(V(:, 1)));```现在,我们可以使用计算得到的权重来进行决策。

假设我们还有一组可选汽车品牌:品牌A、品牌B和品牌C。

我们可以为每个品牌定义相应的因素值,例如:```品牌A:价格=5000,燃油效率=30,安全性=8,外观=7品牌B:价格=6000,燃油效率=35,安全性=9,外观=6品牌C:价格=5500,燃油效率=32,安全性=6,外观=9```然后,我们可以计算每个品牌的得分,得分等于每个因素值乘以相应的权重的总和。

在MATLAB中,我们可以使用以下代码计算得分:```matlabbrandA = [5000, 30, 8, 7];brandB = [6000, 35, 9, 6];brandC = [5500, 32, 6, 9];scores = [brandA; brandB; brandC] * weights;```最后,我们可以比较得分以做出最佳决策。

matlab计算AHP层次分析法

matlab计算AHP层次分析法

matlab计算AHP层次分析法第一篇:matlab计算AHP层次分析法用matlab解决层次分析法AHP1、求矩阵最大特征值及特征向量用matlab求:输入:A=[1 1/2 2 1/4;2 1 1 1/3;1/2 1 1 1/3;4 3 3 1][x,y]=eig(A)得出:特征向量x=[0.2688 0.3334 0.2373 0.8720]最大特征值λmax=4.19642、一致性检验CI=(λmax-n)/(n-1)=(4.1964-4)/(4-1)=0.0655 CR=CI/RI=0.0655/0.9=0.0727(注:维数为4时,RI=0.9)CR=0.0727<0.1,矩阵一致性通过检验3、对最大特征值进行归一化处理,即可得到各指标权重(归一化:分项/分项之和)W=[0.157 0.195 0.139 0.510]第二篇:AHP层次分析法层次分析法层次分析法(The analytic hierarchy process,简称AHP),也称层级分析法什么是层次分析法层次分析法(The analytic hierarchy process)简称AHP,在20世纪70年代中期由美国运筹学家托马斯·塞蒂(T.L.Saaty)正式提出。

它是一种定性和定量相结合的、系统化、层次化的分析方法。

由于它在处理复杂的决策问题上的实用性和有效性,很快在世界范围得到重视。

它的应用已遍及经济计划和管理、能源政策和分配、行为科学、军事指挥、运输、农业、教育、人才、医疗和环境等领域。

层次分析法的基本思路与人对一个复杂的决策问题的思维、判断过程大体上是一样的。

不妨用假期旅游为例:假如有3个旅游胜地A、B、C供你选择,你会根据诸如景色、费用和居住、饮食、旅途条件等一些准则去反复比较这3个候选地点.首先,你会确定这些准则在你的心目中各占多大比重,如果你经济宽绰、醉心旅游,自然分别看重景色条件,而平素俭朴或手头拮据的人则会优先考虑费用,中老年旅游者还会对居住、饮食等条件寄以较大关注。

层次分析法matlab程序及应用

层次分析法matlab程序及应用

第一讲、AHP 方法matalab 编程举例例5 某工厂在扩大企业自主权后,有一笔留成利润,要由厂领导和职代会来决定如何使用,可供选择的方案有1P ——发奖金; 2P ——扩建集体福利事业; 3P ——办职工业余技校;4P ——建图书馆、俱乐部; 5P ——引进新设备。

这些方案都各具有其合理的因素,因此如何对这些方案进行综合评价,并由此进行方案排序及优选是厂领导和职代会面临的实际问题。

解: 上述问题属于方案排序与优选问题,且各待选方案的具体内容已经确定,故可采用AHP 法来解决。

⑴ 建立方案评价的递阶层次结构模型该模型最高一层为总目标A :合理使用企业利润。

第二层设计为方案评价的准则层,它包含有三个准则,1B :进一步调动职工劳动积极性; 2B :提高企业技术水平; 3B :改善职工物质与文化生活。

最低层为方案层,它包含从1P —5P 五种方案。

其层次结构模型见图。

图:合理分配利润的递阶层次结构⑵ 构造比较判断矩阵设以A 为比较准则,B 层次各因素的两两比较判断矩阵为B A -,类似地以每一个i B 为比较准则,P 层次各因素的两两比较判断矩阵P B i -。

因此得到四个比较判断矩阵如下。

综合各个专家的意见后得到的第三层相对第二层的各个比较判断矩阵⑶ 层次单排序及其一致性检验对于上述各比较判断矩阵,用MATLAB 数学软件求出其最大的特征值及其对应的特征向量,对此特征向量经归一化后,即可得到相应的层次单排序的相对重要性权重向量,一致性指标CI 和一致性比例CR ,列表如下:表 合理使用企业利润的计算结果由此可见,所有四个层次单排序的CR 的值均小于0.1,符合满意一致性要求。

⑷ 层次总排序已知第二层(B 层)相对于总目标A 的排序向量为Tw)2582.0,6370.0,1047.0()2(=,而第二层(P 层)以第二层第i 个因素i B 为准则时的排序向量分别为: T p )0615.0,1465.0,0894.0,2636.0,439.0(31=Tp )2622.0,1175.0,5650.0,0553.0,0(32= Tp )0,125.0,125.0,375.0,375.0(33=则第三层(P 层)相对于总目标的排序向量为Twp p p W )1735.0,1225.0,4015.0,1597.0,1428.0(),,()2(333231=⋅=⑸ 层次总排序的一致性检验由于2CI=()0,0389.0,0198.0(),,232221=CICICI)9.0,9.0,12.1(),,(2322212==RI RI RIRI因此0269.0)258.0,6370.0,1047.0)(0,0389.0,0198.0()2(23==⋅=Tw CI CI9230.0)2582.0,637.0,1047.0)(9.0,9.0,12.1()2(23==⋅=w RI RI3323RICI CRCR+==0624.09230.00269.00332.0=+1.0<(6)结论某工厂合理使用企业留成利润这一总目标,所考虑的五种方案排序的相对优先排序为① 3P (开办职工业务技校),权重为4015.0; ② 5P (引进新技术设备),权重为1735.0; ③ 2P (扩建集体福利事业),权重为1597.0; ④ 1P (发奖金),权重为1428.0;⑤ 4P (建图书馆,俱乐部),权重为1225.0。

使用Matlab程序实现层次分析法(AHP)的简捷算法

使用Matlab程序实现层次分析法(AHP)的简捷算法

使用Matlab程序实现层次分析法(AHP)的简捷算法作者:于晶来源:《科技风》2016年第16期摘要:层次分析法简便易懂,可操作性和实用性强,但是构造判断矩阵往往不容易,计算判断矩阵的特征值特别繁琐且易出错,得到的一致性检验不易调整,这些都给使用层次分析法带来困难,以往使用办公软件电子表格(Excel)的方法计算单层次排序和总层次排序,这种方法使得计算和一致性检验变得容易,文本使用Matlab程序使得计算变得更容易,也使得层次分析法在多个领域得到推广和应用。

关键词:层次分析法;Excel;matlab1 层次分析法(AHP法)的原理和解决思路层次分析法是对定性问题进行定量分析的一种简便、灵活而又实用的多准则决策方法。

它的原理是模拟人的决策过程,具有思路清晰、方法简便、适用面广、系统性强等特点。

是解决多目标、多准则、多层次复杂问题决策或者大型工程风险分析的有力工具。

层次分析法解决问题的思路就是用下一次因素的相对排序求得上一次因素的相对排序。

按照因素之间的相互影响和隶属关系将各层次因素聚类组合,形成一个递进有序的层次结构模型。

2 层次分析法的应用难点2.1合适的判断矩阵构造不易模型确定后,按照模型层次结构和模型的各因素的相对重要性,综合专家群体咨询意见,采用标度法[ 1 ],从数字1/9一9中选取恰当值,构造各层的判断矩阵,并使之尽量符合一致性检验,这一步成为问题的关键。

但实际上系统越复杂,判定矩阵的阶数就会越高,计算就会越困难。

2.2计算量大,步骤繁琐层次分析法首先要求的就是判断矩阵的最大特征值?姿max,及其正规化的特征向量w,向量w的分量wi是相应因素的单层次权值,这部分计算理论上基于线性代数知识,不用计算机也可以将其计算出来。

但实际上,当矩阵的阶数高于4阶时,人工计算就变得相当困难且易出错,如使用计算机计算,就容易得多,常用的方法有Basic语言,电子表格Excel等方法。

但计算量都有待改进。

AHP层次分析法及MATLAB的应用研究

AHP层次分析法及MATLAB的应用研究

2004年第2期 钢 铁 技 术 ·43··管理·AHP层次分析法及MATLAB的应用研究胡明甫(中冶赛迪公司环检设计室, 重庆 400013)[摘 要]工程设计中经常存在优化设计及多指标、多方案情况下的分析决策问题,通常对方案的推荐一般较缺乏高科技含量的分析手段。

本研究成果采用具有先进水平的层次分析法AHP,结合被称为第四代计算机语言的MATLAB工具软件及基于矩阵理论基础的严格的一致性检验,可以普遍应用于设计优化和各种多目标、多方案分析决策领域。

该方法很有可能在公司相关专业得到极有价值的推广应用,前景看好。

[关键词]层次分析法 AHP MATLAB1 AHP层次分析法简介层次分析法(The Analytic Hierarchy Process,简称AHP)由美国运筹学家T.L.Saaty 提出,是一种定性与定量相结合的多目标决策分析技术,其基本原理是将待评价或识别的复杂问题分解成若干层次,由专家或决策者对所列指标通过重要程度的两两比较逐层进行判断评分,利用计算判断矩阵的特征向量确定下层指标对上层指标的贡献程度或权重,从而得到最基层指标对于总体目标的重要性权重排序。

层次分析以其系统性、灵活性、实用性等特点特别适合于多目标、多层次、多因素和多方案的复杂系统的分析决策。

以下对层次分析法作一简单介绍。

1.1明确工程问题及建立层次结构1.1.1明确工程系统的目的、层次和指标不同类型的工程系统中有许多不同的评价指标,这些性质不一的指标构成评价工程系统的指标体系,体系中不同指标之间很难进行直接的比较,因此,选取指标的方法首先就是总体分类或确定层次,指标体系一般分为三个层次,第一层目的层为综合效益,第二层为系统层(或称准则层),可分为资源利用、社会效益、经济效益和生态效应,第三层策略层(也称指标层、要素层或因素层)为对应第二层的各种具体指标。

也可根据具体情况,在系统层与指标层之间再设置一层状态层(或称准则层Ⅱ)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Ab ta t src:Anlt eacy Po es (HP ste motwd l sd dcs n maigmeh d u nov sa lre n mbro ayi Hirrh rcs A )i h s iey ue eii kn to ,b tivle ag u e f c o

1 程度 设计 背景 与思想
A HP ( n lt eac y P oe s 层 次 分 析 法 ) A a i Hi rh rc s , yc r

ap 1n 。 该 程 序 较 为 简 洁 ,完 全 适 合 A P分 析 。 h v .” i H
第 一部 分是利用专家赋值构 建判断矩 阵 ;第 二部分是
De in f AH P a y i o r m s d o M a l b sg o An l ss Pr g a Ba e n ta
C HE a mi g,JA Hu,L N Ya in N Gu n n I 2 I q o g (. n a S iT c cd m fH i n N t n l re i n lp ct n H ia a y 7 0 0 1 a y c eh A a e y o a a a o a B e d g a d Mu i i i , a n S na 5 2 0 ; S - n i n t la o n 2 t e A m n t t n o T x t n o hzo fA h i A h iC i o 4 10 . a d ii r i f aa o fC i u o n u n u h hu 2 7 0 ) St sa o i h , z
Ke r s AHPpo eue ; t bsf ae jdmetmar ; o uaino ie vle ;etr e t p rt n ywo d : rcd rs Mal otr ;u g n t x c mp tt f g nau s fauevco o ea o s a w i o e r i
marx o e ain ,wh c fe t h t d o o t n. alb s f re wa rfce ti h ti p r t n t p rt s i o ih afcst emeho fprmoi M ta ot o wa sp oiin n te marx o e ai ,wh c s smia o ih wa i l r t h a u g tu tr ,S ti ra ii o e r .Ba e n M a b o v n e n f ce tAHP o ue o r m o t e C lng a e sr cu e O i sa potb ly prc du e t sd o da ,a c n e inta d e in i c mp trprga wa e in d sd sg e .

研究与开发・
农 业 网络信 息
AGRf 7 C【 1 E/ T O  ̄' W RK I O NF RMATON /
21 0 2年 第 7期
基 于 Malb的 AH t a P分 析 程序 设 计
陈 冠铭 , 虎 林 亚 琼 贾 ,
(. 市南 繁科学 技术 研究 院 ,海南 三亚 520 ;2 徽省 池州 市 国家税 务局 ,安徽 池州 27 0) 1 三亚 700 . 安 4 10
判断矩 阵的一致性 ;第五部分是输 出相关 结果 。
2 程序 源代 码设计 与说 明
fn t n y a p 1( ) %AHP分 析 函 数 版本 1 u ci = h v A o 。
出现准确度不高 、工具使用不规范等问题 。
Ma a 件 精 于 矩 阵 运 算 ,是 美 国 Ma Wok 公 t b软 l t rs h 司 出品 的矩 阵 实 验 室 ( txL b rt y 的 简 称 ,用 Ma i aoa r) r o 于 算 法 开 发 、数 据 可 视 化 、数 据 分 析 以及 数 值 计 算 的 高 级 技 术 计 算 语 言 和 交 互 式 环 境 。M t b软 件 容 易 在 aa l 网 络 中获 得 试 用 。 为 了 准 确 和 快 速 地 构 建 判 断 矩 阵 ,

要 :层 次分析 法是 目前 最为广 泛 应用 的决 策 方法 ,但 涉及 大量 的 矩 阵运算 ,影 响 了该 方法 的推 广 。Maa 软 件精 于 tb l
矩阵运 算 ,与 C语 言结构 类 似 ,移植性 强 ,本研 究基 于 M tb设计 出了便捷 高效 的 A P计 算机 程序 。 aa l H 关键 词 :A P程 序 ;Maa ;判断 矩阵 ;特征值 运 算 ;特 征 向量运 算 H tb l 中图分类 号 :T 3 1 P1 文献 标识 码 :A 文章 编码 :17— 2 12 1 )70 2— 2 62 65 (020 —0 10
征 向量即元素 的权重并验证 数据 的保号性 既正负值 的

致性 ,并按总权重为 1 对数 据进行修正 ;第 四部分
型 ,首先要 建立判 断矩 阵 ,求取 特征值 与特征 向量 ,
这 涉 及 巨量 的 计算 。 目前 相 关 文 献 未 交 待 具 体 的 特 征 值 与权 重 运 算 方 法 ,若 没 有 方 便 的 工 具 。计 算 时 容 易
求 判 断 矩 阵 的特 征 值 和 原 始 特 征 向量 ;第 三 部 分 是 求 最 大 特 征 值 ,并 定 位 其 所 在 列 , 以确 定 其 所 对 应 的 特
是 由美 国运 筹 学 家 萨 蒂 教 授 ( .. a ) 于 17 年 代 TLS t ay 90 提 出 。是 目前 应 用 最 广 的 多 属 性 决 策 方 法 ,有 较 强 的 实 验 心 理 学基 础 。在 做 定 性 问题 定 量 化 研 究 领 域优 势 突 出 。系 统 性 也 较 强[ ” 。根 据 A P原 理 口 立 A P模 H 1 建 H
相关文档
最新文档