matlab层次分析法的组合一致性检验

合集下载

层次分析法判断矩阵求权值以及一致性检验程序

层次分析法判断矩阵求权值以及一致性检验程序

function [w,CR]=mycom(A,m,RI)[x,lumda]=eig(A);r=abs(sum(lumda));n=find(r==max(r));max_lumda_A=lumda(n,n);max_x_A=x(:,n);w=A/sum(A);CR=(max_lumda_A-m)/(m-1)/RI;end本matlab程序用于层次分析法中计算判断矩阵给出的权值已经进行一致性检验。

其中A为判断矩阵,不同的标度和评定A将不同。

m为A的维数RI为判断矩阵的平均随机一致性指标:根据m的不同值不同。

当CR<0.1时符合一致性检验,判断矩阵构造合理。

下面是层次分析法的简介,以及判断矩阵构造方法。

一.层次分析法的含义层次分析法(The analytic hierarchy process)简称AHP,在20世纪70年代中期由美国运筹学家托马斯·塞蒂(T.L.Saaty)正式提出。

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

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

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

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

(1)层次分析法的原理层次分析法是将决策问题按总目标、各层子目标、评价准则直至具体的备投方案的顺序分解为不同的层次结构,然后得用求解判断矩阵特征向量的办法,求得每一层次的各元素对上一层次某元素的优先权重,最后再加权和的方法递阶归并各备择方案对总目标的最终权重,此最终权重最大者即为最优方案。

这里所谓“优先权重”是一种相对的量度,它表明各备择方案在某一特点的评价准则或子目标,标下优越程度的相对量度,以及各子目标对上一层目标而言重要程度的相对量度。

层次分析法比较适合于具有分层交错评价指标的目标系统,而且目标值又难于定量描述的决策问题。

层次分析

层次分析

干部选拔模型摘要如今干部选拔问题已经引起了政府和人民的热切关注,怎样才能选择好的干部已经成为当今社会的焦点问题。

每一位干部都应具有干部应有的良好素质,如:健康状况、业务知识、写作水平、口才、政策水平和工作作风等。

许多单位的选拔标准就用这些属性来衡量。

使用层次分析法对甲、乙、丙三人进行综合评价,并选出最合适的人。

使用MATLAB对程序进行运行以便观察结果。

关键字:层次分析法、MATLAB。

一、问题重述某单位希望从三名同志中选择一名作为干部,选拔的标准用6个属性来衡量:健康状况、业务知识、写作水平、口才、政策水平和工作作风等。

组织部门根据选拔的标准对甲、乙、丙每人进行打分,最终从3人中选择最合适的人。

通过建立数学模型运用层次分析法对闻听进行分析。

二、模型假设1、假设选拔甲、乙、丙时,不考虑其他随机因素,对三人按照选拔标准进行客观的打分。

2、假设三人在选拔时都正常发挥,不考虑其他额外因素,且都不受外界的影响,进行公平的竞争。

3、假设组织部门严格按照部门的流程进行选拔,也不考虑外界因素和影响。

三、符号说明p: 选拔干部的标准的第k个属性;kB: 判断矩阵;: 判断矩阵的特征根;W: 判断矩阵的权向量;CI: 一致性指标;RI:随机一致性指标;CR:一致性比率(用于确定判断矩阵的不一致性的容许范围);四、问题分析对于干部选拔的问题,就是综合分析的最优化问题,也是一个多目标的决策问题,使用层次分析法对甲、乙、丙按照选拔标准进行综合分析,并使用MATLAB 对分析的程序进行运行,观察和分析结果,最终有组织部门根据分析结果从三人中选择最合适的人。

五、建立模型使用层次分析法,先建立层次结构模型,模型分为3层:第一层,为解决问题目的的目标层;第二层,为实现总目标而采取的各种措施和方案的准则层;第三层,用于解决问题的各种措施和方案。

层次结构模型如下用123456,,,,,p p p p p p 分别表示:健康状况、业务水平、写作水平、口才、政策水平、工作作风。

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-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个旅游胜地可供选择.例如:1P :苏州杭州,2P 北戴河,3P 桂林,到底到哪个地方去旅游最好?要作出决策和选择。

(完整版)层次分析法及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求解层次分析法程序代码【求解步骤+代码】

Matlab求解层次分析法程序代码【求解步骤+代码】

层次分析法1)建立层次结构模型:(2)构造判断矩阵判断矩阵()ij A a =应为正互反矩阵,而且ij a 的判断如下(1~9尺度法):(3)单层排序及一致性检验1、单层排序求解判断矩阵A 的最大特征值max λ,再由最大特征值求出对应的特征向量ω()max A ωλω=,并将ω标准化,即为同一层相对于上一层某一因素的权重,根据此权重的大小,便可确定该层因素的排序。

2、一致性检验取一致性指标max 1nCI n λ-=-,(n 为A 的阶数)令CR RI=,若0.1CR <,则认为A 具有一致性。

否则,需要对A 进行调整,直到具有满意的一致性为止。

(4)层次总排序及一致性检验假定准则层12,,,n C C C 排序完成,其权重分别为12,,,n a a a ,方案层P 包含m 个方案:12,,,m P P P 。

其相对于上一层的()1,2,,j C j n =对方案层P 中的m 个方案进行单层排序,其排序权重记为12,,,j j mj b b b ()1,2,,j n =,则方案层P 中第i 个方案Pi 的总排序权重为1nj ijj a b=∑,见下表:从而确定层的排序。

例:纯文本文件txt3.txt 中的数据格式如下:1 1 1 4 1 1/2 1 1 2 4 1 1/2 1 1/2 1 53 1/2 1/4 1/4 1/5 1 1/3 1/3 1 1 1/3 3 1 12 2 23 3 11 1/4 1/24 1 32 1/3 11 1/4 1/54 1 1/25 2 11 3 1/31/3 1 1/73 7 11 1/3 53 1 71/5 1/7 11 1 71 1 71/7 1/7 11 7 91/7 1 11/9 1 1matlab程序:>> fid=fopen('txt3.txt','r');n1=6;n2=3;a=[];for i=1:n1tmp=str2num(fgetl(fid));a=[a;tmp]; %读准则层判断矩阵endfor i=1:n1str1=char(['b',int2str(i),'=[];']);str2=char(['b',int2str(i),'=[b',int2str(i),';tmp];']); eval(str1);for j=1:n2tmp=str2num(fgetl(fid));eval(str2); %读方案层的判断矩阵endendri=[0,0,0.58,0.90,1.12,1.24,1.32,1.41,1.45]; %一致性指标[x,y]=eig(a);lamda=max(diag(y));num=find(diag(y)==lamda);w0=x(:,num)/sum(x(:,num));cr0=(lamda-n1)/(n1-1)/ri(n1)for i=1:n1[x,y]=eig(eval(char(['b',int2str(i)])));lamda=max(diag(y));num=find(diag(y)==lamda);w1(:,i)=x(:,num)/sum(x(:,num));cr1(i)=(lamda-n2)/(n2-1)/ri(n2);endcr1, ts=w1*w0, cr=cr1*w0层次分析法层次分析法层次分析法层次分析法层次分析法层次分析法层次分析法层次分析法层次分析法层次分析法层次分析法层次分析法层次分析法层次分析法层次分析法层次分析法层次分析法层次分析法层次分析法实例与步骤结合一个具体例子,说明层次分析法的基本步骤和要点。

层次分析法一致性检验讲解

层次分析法一致性检验讲解

层次分析法(Analytic Hierarchy Process,简称AHP)是对一些较为复杂、较为模糊的问题作出决策的简易方法,它特别适用于那些难于完全定量分析的问题。

它是美国运筹学家T. L. Saaty 教授于70 年代初期提出的一种简便、灵活而又实用的多准则决策方法。

§1 层次分析法的基本原理与步骤人们在进行社会的、经济的以及科学管理领域问题的系统分析中,面临的常常是一个由相互关联、相互制约的众多因素构成的复杂而往往缺少定量数据的系统。

层次分析法为这类问题的决策和排序提供了一种新的、简洁而实用的建模方法。

运用层次分析法建模,大体上可按下面四个步骤进行:(i)建立递阶层次结构模型;(ii)构造出各层次中的所有判断矩阵;(iii)层次单排序及一致性检验;(iv)层次总排序及一致性检验。

下面分别说明这四个步骤的实现过程。

1.1 递阶层次结构的建立与特点应用AHP 分析决策问题时,首先要把问题条理化、层次化,构造出一个有层次的结构模型。

在这个模型下,复杂问题被分解为元素的组成部分。

这些元素又按其属性及关系形成若干层次。

上一层次的元素作为准则对下一层次有关元素起支配作用。

这些层次可以分为三类:(i)最高层:这一层次中只有一个元素,一般它是分析问题的预定目标或理想结果,因此也称为目标层。

(ii)中间层:这一层次中包含了为实现目标所涉及的中间环节,它可以由若干个层次组成,包括所需考虑的准则、子准则,因此也称为准则层。

(iii)最底层:这一层次包括了为实现目标可供选择的各种措施、决策方案等,因此也称为措施层或方案层。

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

每一层次中各元素所支配的元素一般不要超过9 个。

这是因为支配的元素过多会给两两比较判断带来困难。

下面结合一个实例来说明递阶层次结构的建立。

例1 假期旅游有、、3 个旅游胜地供你选择,试确定一个最佳地点。

MATLAB层次分析法

MATLAB层次分析法

C11
C1
0
桥梁 D1
隧道 D2
渡船 D3
(1)过河效益层次结构
例3 横渡江 河、海峡方 案的抉择
经济代价 B1
过河的代价 A
社会代价 B2
环境代价 B3
投 操 冲冲 交 居 汽 对 对
入 作 击击 通 民 车 水 生
资 维 渡生 拥 搬 排 的 态
金 护 船活 挤 迁 放 污 的
C1 C2 业 方 C5 C6 物 染 破






对外 贸易
位 置
供选择的岗位
例3 横渡江 河、海峡方 案的抉择
经济效益 B1
过河的效益 A
社会效益 B2
节 收岸 当 建安 交 自
省 入间 地 筑全 往 豪
时 C2 商 商 就 可 沟 感

业 业 业 靠 通 C8
C1
C3 C4 C5 C6 C7
环境效益 B3
舒进 美
适出 化
C9
方 便
Ci : C j aij
A
(aij )nn , aij
0,
a ji
1 aij
选 择
1 1/ 2 4 3 3
2
1
7
5
5
A~成对比较阵
旅 A 1/ 4 1/ 7
游 地
1/ 3
1/ 5
1/ 3 1/ 5
1 2
1/ 2 1
1/ 3
1
A是正互反阵
3 1 1
要由A确定C1,…, Cn对O的权向量
2
n
min
wi ( i1,,n ) i1
n j1 ln aij
ln wi wj
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
4409e-016 ans = 方案层对准则层的第4因素的特征向量和CI值: ans = 0.6337 0.1919 0.1744 ans = 0.0046 ans = 方案层对准则层的第5因素的特征向量和CI值: ans = 0.1667 0.1667 0.6667 ans = -4.4409e-016 ans = 组合一致性比率CR值 CR = 0.0188 ans = 方案层对目标层的组合权向量为:
function s(x,y) %层次分析的初始化 %默认只有两层 x为准则数,y为方案数 %A为准则层对目标层生成的比较阵 %B为方案层对准则层生成的比较阵 %EigA为准则层的特征向量 %EigB为方案层的特征向量 x=5;y=3; EigA=zeros(x,1); EigB=zeros(y,x); dim=x; RI=[0 0 0.58 0.90 1.12 1.24 1.32 1.41 1.45 1.49 1.51];%RI标准 %准则层对目标层的成对比较阵 A=[1 1/2 4 3 3 21755 1/4 1/7 1 1/2 1/3 1/3 1/5 2 1 1 1/3 1/5 3 1 1] tempB=zeros(x+1); tempB=jianyan(dim,A); EigA=tempB(1:x); ci1=tempB(1+x); '准则层的特征向量:' EigA '准则层的ci值:' ci1 ci=zeros(1,x); dim=y; % 方案层对准则层各成对比较阵 B{1}=[1 2 5 1/2 1 2 1/5 1/2 1]; B{2}=[1 1/3 1/8 3 1 1/3 8 3 1];
0.3333 1.0000 1.0000 0.2500 1.0000 1.0000 ans = 1.0000 1.0000 0.2500 1.0000 1.0000 0.2500 4.0000 4.0000 1.0000 ans = 方案层对准则层的第1因素的特征向量和CI值: ans = 0.5954 0.2764 0.1283 ans = 0.0028 ans = 方案层对准则层的第2因素的特征向量和CI值: ans = 0.0819 0.2363 0.6817 ans = 7.7081e-004 ans = 方案层对准则层的第3因素的特征向量和CI值: ans = 0.4286 0.4286
result = 0.2993 0.2453 0.4554
ans = 准则层的特征向量: EigA = 0.2636 0.4758 0.0538 0.0981 0.1087 ans = 准则层的ci值: ci1 = 0.0180 ans = 方案层对准则层各成对比较阵: ans = 1.0000 2.0000 5.0000 0.5000 1.0000 2.0000 0.2000 0.5000 1.0000 ans = 1.0000 0.3333 0.1250 3.0000 1.0000 0.3333 8.0000 3.0000 1.0000 ans = 1.0000 1.0000 3.0000 1.0000 1.0000 3.0000 0.3333 0.3333 1.0000 ans = 1.0000 3.0000 4.0000
%判断该比较阵是不是一致阵 [V,D]=eig(CmpMatrix);%求得特征向量和特征值 %求出最大特征值和它所对应的特征向量 tempNum=D(1,1); pos=1; for h=1:dim if D(h,h)>tempNum tempNum=D(h,h); pos=h; end end eigVector=V(:,pos); maxeig=D(pos,pos); CI=(maxeig-dim)/(dim-1); CR=CI/RI(dim); if CR>0.1 disp('准则对目标影响度评分生成的矩阵不是一致阵,请重新评分') return end %归一化 sum=0; for h=1:dim sum=sum+eigVector(h); end for h=1:dim eigVector(h)=eigVector(h)/sum; end f=[eigVector;CI]; 结果: A= 1.0000 0.5000 4.0000 3.0000 3.0000 2.0000 1.0000 7.0000 5.0000 5.0000 0.2500 0.1429 1.0000 0.5000 0.3333 0.3333 0.2000 2.0000 1.0000 1.0000 0.3333 0.2000 3.0000 1.0000 1.0000
B{3}=[1 1 3 113 1/3 1/3 1]; B{4}=[1 3 4 1/3 1 1 1/4 1 1]; B{5}=[1 1 1/4 1 1 1/4 4 4 1]; '方案层对准则层各成对比较阵:' B{:} %判断该比较阵是不是一致阵 for k=1:x tempB=zeros(y+1); tempB=jianyan(dim,B{k}); EigB(:,k)=tempB(1:y); ci(k)=tempB(y+1); ['方案层对准则层的第',num2str(k),'因素的特征向量和CI值:'] EigB(:,k) ci(k) end %下面进行组合一致性检查 RI=[0 0 0.58 0.90 1.12 1.24 1.32 1.41 1.45 1.49 1.51]; CR=ci1/RI(x)+ci*EigA/RI(y); '组合一致性比率CR值' CR if CR>0.1 disp('组合一致性不通过,请重新评分') return end %下面根据比较阵的结果进行组合 result=EigB*EigA; '方案层对目标层的组合权向量为:' result function f=jianyan(dim,CmpMatrix) RI=[0 0 0.58 0.90 1.12 1.24 1.32 1.41 1.45 1.49 1.51];
相关文档
最新文档