层次分析法matlab实现_第1页
层次分析法matlab实现_第2页
层次分析法matlab实现_第3页
层次分析法matlab实现_第4页
层次分析法matlab实现_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、ause,层次分析法matlab实现disp(请输入判断矩阵A(n阶);A=input(A=);n,n=size(A);x=ones(n,100);y=ones(n,100);m=zeros(1,100);m(1)=max(x(:,1);y(:,1)=x(:,1);x(:,2)=A*y(:,1);m(2)=max(x(:,2);y(:,2)=x(:,2)/m(2);p=0.0001;i=2;k=abs(m(2)-m(1);whilekpi=i+1;x(:,i)=A*y(:,i-1);m(i)=max(x(:,i);y(:,i)=x(:,i)/m(i);k=abs(m(i)-m(i-1);end

2、a=sum(y(:,i);w=y(:,i)/a;t=m(i);disp(w);disp(t);%以下是一致性检验CI=(t-n)/(n-l);RI=O00.520.891.121.261.361.411.461.491.521.541.561.581.59;CR=CI/RI(n);ifCR0.1disp(组合一致性不通过,请重新评分)returnend%下面根据比较阵的结果进行组合result=EigOfOpt*EigOfCri;resultfunctionf=AHP1(dim,CmpMatrix)RI=000.580.901.121.241.321.411.451.491.51;%判断该比较

3、阵是不是一致阵%判断该比较阵是不是一致阵V,D=eig(CmpMatrix);%求得特征向量和特征值%求出最大特征值和它所对应的特征向量tempNum=D(1,1);pos=1;forh=1:dimifD(h,h)tempNumtempNum=D(h,h);pos=h;endendeigVector=V(:,pos);maxeig=D(pos,pos);maxeigdimCI=(maxeig-dim)/(dim-l);CR=CI/RI(dim);ifCR0.1disp(准则对目标影响度评分生成的矩阵不是一致阵,请重新评分)returnendCI%归一化sum=0;forh=1:dimsum=s

4、um+eigVector(h);endsumpause,forh=1:dimeigVector(h)=eigVector(h)/sum;endf=eigVector;CI;层次分析法的应用在应用层次分析法研究问题时,遇到的主要困难有两个:(i)如何根据实际情况抽象出较为贴切的层次结构;(ii)如何将某些定性的量作比较接近实际定量化处理。层次分析法对人们的思维过程进行了加工整理,提出了一套系统分析问题的方法,为科学管理和决策提供了较有说服力的依据。但层次分析法也有其局限性,主要表现在:(i)它在很大程度上依赖于人们的经验,主观因素的影响很大,它至多只能排除思维过程中的严重非一致性,却无法排除决策

5、者个人可能存在的严重片面性。(ii)比较、判断过程较为粗糙,不能用于精度要求较高的决策问题。AHP至多只能算是一种半定量(或定性与定量结合)的方法。AHP方法经过几十年的发展,许多学者针对AHP的缺点进行了改进和完善,形成了一些新理论和新方法,像群组决策、模糊决策和反馈系统理论近几年成为该领域的一个新热点。在应用层次分析法时,建立层次结构模型是十分关键的一步。现再分析一个实例,以便说明如何从实际问题中抽象出相应的层次结构。例2挑选合适的工作。经双方恳谈,已有三个单位表示愿意录用某毕业生。该生根据已有信息建立了一个层次结构模型,如下图所示。目标层A工作满意程度Ci戶乞匕_方案层C|工作1|工作2

6、|工作3|1/21/21/21/2B41/41/41/511/31/3B5111/3311B62223313(方案层)BCCCBCCC11232123C11/41/2C11/41/511C4123C411/22C321/31BCCCBCCC31234123C1131/3C111/35C21/317C2317C331/71C31/51/71BCCCBCCC51236123C1117C1179C2117C21/711C31/71/71C31/911层次总排序)如下表所示。准则研究课题发展前途待遇同事情况地理位置单位名气总排序权值准则层权值0.15070.17920.18860.04720.1464

7、0.2879方案层工作10.13650.09740.24260.27900.46670.79860.3952单排序工作20.62500.33310.08790.64910.46670.10490.2996权值工作30.23850.56950.66940.07190.06670.09650.3052根据层次总排序权值,该生最满意的工作为工作1。计算程序如下:clca=1,1,1,4,1,1/21,1,2,4,1,1/21,1/2,1,5,3,1/21/4,1/4,1/5,1,1/3,1/31,1,1/3,3,1,12,2,2,3,3,1;x,y=eig(a);eigenvalue=diag(y)

8、;lamda=eigenvalue(1);ci1=(lamda-6)/5;cr1=ci1/1.24w1=x(:,1)/sum(x(:,1)b1=1,1/4,1/2;4,1,3;2,1/3,1;x,y=eig(b1);eigenvalue=diag(y);lamda=eigenvalue(1);ci21=(lamda-3)/2;cr21=ci21/0.58w21=x(:,1)/sum(x(:,1)b2=11/41/5;411/2;521;x,y=eig(b2);eigenvalue=diag(y);lamda=eigenvalue(1);ci22=(lamda-3)/2;cr22=ci22/0.

9、58w22=x(:,1)/sum(x(:,1)b3=131/3;1/311/7;371;x,y=eig(b3);eigenvalue=diag(y);lamda=eigenvalue(1);ci23=(lamda-3)/2;cr23=ci23/0.58w23=x(:,1)/sum(x(:,1)b4=11/35;317;1/51/71;x,y=eig(b4);eigenvalue=diag(y);lamda=eigenvalue(1);ci24=(lamda-3)/2;cr24=ci24/0.58w24=x(:,1)/sum(x(:,1)b5=117;117;1/71/71;x,y=eig(b5);eigenvalue=diag(y);lamda=eigenvalue(2);ci25=(lamda-3)/2;cr25=ci25/0.58w25=x(:,2)/sum(x(:,2)b6=179;1/711;1/911;x,y=eig(b6);eigenvalue=diag(y);lamda=ei

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论