-
2022-01-30 20:19:23
clear,clc %层次分析法 A = [1 1/2 1/3 1/2; 2 1 1/2 1; 3 2 1 2; 2 1 1/2 1]; % 输入判断矩阵 n = size(A,1); %方阵的行(列)数 %% 特征值法求权重 [V,D] = eig(A); %V是特征向量, D是由特征值构成的对角矩阵 max_eig= max(D(:)); %求出矩阵A的最大特征值 [r,c] = find(D==max_eig,1); % 寻D中首个与最大特征值相等的元素的位置记录其行和列。 w=V(:,c) ./ sum(V(:,c)); % 对求出的特征向量进行归一化即可得到我们的权重 disp('特征值法求权重的结果为:') disp(w) %% 计算一致性比例CR CI = (max_eig - n) / (n-1); %一致性指标CI RI=[0 0 0.58 0.9 1.12 1.24 1.32 1.41 1.45 1.49]; %随机一致性指标RI %注意:这里的RI最多支持 n = 10 CR=CI/RI(n); disp('一致性指标CI=');disp(CI); disp('一致性比例CR=');disp(CR); if CR<0.10 disp('因为CR<0.10,所以该判断矩阵A的一致性可以接受!'); else disp('注意:CR>=0.10,因此该判断矩阵A需要进行修改!'); end score=[60 90 100 80]';%输入该人员各指标得分(转换为和权重一样的列向量) score_total=sum(w.*score); %计算综合得分
更多相关内容 -
层次分析法Matlab代码
2018-09-18 09:38:40层次分析法的matlab代码,主要用于计算各影响因子的权重,下载后换成你的数据就可以用了。 -
层次分析法matlab
2018-08-27 15:43:51数学建模层次分析法matlab程序,有助于帮助理解层次分析法的过程。 -
层次分析法matlab实现
2018-07-03 17:07:35层次分析法的matlab实现,通过导入excel表格的邻接矩阵直接可以得出个各指标权重。 -
层次分析法matlab.txt
2021-01-15 16:51:28层次分析法matlab.txt -
层次分析法MATLAB代码
2018-05-25 13:58:04层次分析法在MALAB中的应用,操作简单,易于上手。用户只需改变变量即可输出结果。 -
基于Matlab GUI层次分析法的实现和应用
2020-10-20 09:56:12摘要:本文详细阐述了层次分析法及其步骤,利用Matlab和GUI技术整合来实现层次分析法,并用实例加以验证。使得层次分析法界面化简洁化,操作更便捷。 1.层次分析法基本原理 层次分析法(Analytic ... -
层次分析法MATLAB
2018-02-20 22:50:40层次分析法 MATLAB程序,可以运行。方便移植,希望对学习的人有帮助 -
层次分析法Matlab代码[在代码前面有例子介绍如何用,后面的代码可直接运行]
2019-03-07 09:47:40层次分析法Matlab代码[在代码前面有例子介绍如何用,后面的代码可直接运行] -
层次分析法的Matlab代码.m
2020-08-10 19:59:41层次分析法AHP的Matlab代码,包含一个具体的计算评估指标权重的算例,做评估的同学可参考,亲测可用 -
层次分析法AHP_MATLAB代码.zip
2020-04-02 20:06:32分总目标层、准则层、方案层进行层次分析,最后给出各个方案的抉择权重。可以根据具体问题改变判定矩阵对具体问题进行具体分析。 -
层次分析法(AHP)Matlab代码
2020-10-31 13:00:53本资源是我在数模竞赛中建立模型时涉及到的AHP模型判断矩阵计算的部分,代码亲测有效,现在将代码完善上传到CSDN中,希望可以对各位小伙伴有帮助~ -
AHP层次分析法matlab代码
2022-03-30 20:41:44AHP层次分析法matlab代码 -
AHP层次分析法matlab程序
2014-05-17 19:55:24AHP层次分析法matlab程序,可应用于模糊数学中利用层次分析法求权重 -
01 层次分析法matlab程序 内含教学PPT非常详细.zip
2019-10-15 16:21:28压缩包内包含三个文件适合使用层次分析法一切应用 1、层次分析法的教学PPT 2、层次分析法的源程序 3、层次分析法成对比较矩阵 -
层次分析法(AHP)MATLAB实现
2019-01-17 19:40:15层次分析法MATLAB源代码,可直接进行使用,注释简单易懂 -
层次分析法matlab源程序
2021-04-19 02:40:50层次分析法matlab源程序 层次分析法 matlab 源程序 disp( 请输入判断矩阵 A(n 阶) );A=( 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...层次分析法matlab源程序
层次分析法 matlab 源程序 disp( 请输入判断矩阵 A(n 阶) );A=( 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));while kpi=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));enda=sum(y(:,i));w=y(:,i)/a;t=m(i);disp(w);disp(t);%以下是一致性检验CI=(t-n)/(n-1);RI=[0 0 0.52 0.89 1.12 1.26 1.36 1.41 1.46 1.49 1.52 1.54 1.56 1.58 1.59];CR=CI/RI(n);if CR0.1disp( 组合一致性不通过,请重新评分 )returnend%下面根据比较阵的结果进行组合result=EigOfOpt*EigOfCri;result function f=AHP1(dim,CmpMatrix) RI=[0 0 0.58 0.90 1.12 1.24 1.32 1.41 1.45 1.49 1.51]; %判断该比较阵是不是一致阵%判断该比较阵是不是一致阵[V,D]=eig(CmpMatrix);%求得特征向量和特征值%求出最大特征值和它所对应的特征向量tempNum=D(1,1);pos=1;for h=1:dimif D(h,h)tempNumtempNum=D(h,h);pos=h;endend eigVector=V(:,pos);maxeig=D(pos,pos);maxeigdim CI=(maxeig-dim)/(dim-1);CR=CI/RI(dim);if CR0.1disp( 准则对目标影响度评分生成的矩阵不是一致阵,请重新评分 )returnendCI%归一化sum=0;for h=1:dimsum=sum+eigVector(h);endsumpause,for h=1:dimeigVector(h)=eigVector(h)/sum;endf=[eigVector;CI];
-
层次分析法matlab程序举例
2021-04-21 09:31:01《层次分析法matlab程序举例》由会员分享,可在线阅读,更多相关《层次分析法matlab程序举例(4页珍藏版)》请在人人文库网上搜索。1、层次分析法程序举例:A=1 1/7 1/5 2 4 1/3;7 1 3 5 5 3;5 1/3 1 5 5 3;1/2 1/3 1/...《层次分析法matlab程序举例》由会员分享,可在线阅读,更多相关《层次分析法matlab程序举例(4页珍藏版)》请在人人文库网上搜索。
1、层次分析法程序举例:A=1 1/7 1/5 2 4 1/3;7 1 3 5 5 3;5 1/3 1 5 5 3;1/2 1/3 1/5 1 2 1/3;1/4 1/5 1/5 1/2 1 1/5;3 1/3 1/3 3 5 1;v,d=eig(A);eigenvalue=diag(d);lamda=max(eigenvalue);cil=(lamda-6)/5;crl=cil/1.26;w1=v(:,1)/sum(v(:,1)挑选合适的工作。经双方恳谈,已有三个单位表示愿意录用某毕业生。该生根据已有信息建立了一个层次结构模型,如下图所示。 程序:A=1 1/7 1/5 2 4 1/3;7 1 。
2、3 5 5 3;5 1/3 1 5 5 3;1/2 1/3 1/5 1 2 1/3;1/4 1/5 1/5 1/2 1 1/5;3 1/3 1/3 3 5 1;v,d=eig(A);eigenvalue=diag(d);lamda=max(eigenvalue);ci=(lamda-6)/5cr=ci/1.26w1=v(:,1)/sum(v(:,1)B1=1 1/4 1/2;4 1 3;2 1/3 1;v,d=eig(B1);eigenvalue=diag(d);lamda=max(eigenvalue);cil1=(lamda-3)/2cr1=cil1/0.52b1w=v(:,1)/sum(。
3、v(:,1)B2=1 1/4 1/5;4 1 1/2;5 2 1;v,d=eig(B2);eigenvalue=diag(d);lamda=max(eigenvalue);cil2=(lamda-3)/2cr2=cil2/0.52b2w=v(:,1)/sum(v(:,1)B3=1 1/2 2; 2 1 3;1/2 1/3 1;v,d=eig(B3);eigenvalue=diag(d);lamda=max(eigenvalue);cil3=(lamda-3)/2cr3=cil3/0.52b3w=v(:,1)/sum(v(:,1)B4=1 1/3 5; 3 1 7;1/5 1/7 1;v,d=e。
4、ig(B4);eigenvalue=diag(d);lamda=max(eigenvalue);cil4=(lamda-3)/2cr4=cil4/0.52b4w=v(:,1)/sum(v(:,1)B5=1 1 7;1 1 7;1/7 1/7 1;v,d=eig(B5);eigenvalue=diag(d);lamda=max(eigenvalue);cil5=(lamda-3)/2cr5=cil5/0.52b5w=v(:,1)/sum(v(:,1)B6= 1 7 9;1/7 1 1;1/9 1 1;v,d=eig(B6);eigenvalue=diag(d);lamda=max(eigenvalue);cil6=(lamda-3)/2cr6=cil6/0.52b6w=v(:,1)/sum(v(:,1)q=0.0091 0.0123 0.0046 0.0324 -6.6613e-016 0.0035 0.0068;r=cr1 cr2 cr3 cr4 cr5 cr6;pp=w1.*qqq=w1.*r。
-
层次分析法matlab代码+文档.rar
2020-07-08 16:58:09AHP层次分析法代码+文档,文档非常详细,适合初学者使用,构造判断矩阵的讲解(层次分析法),代码可正常运行 -
层次分析法MATLAB程序.rar
2021-03-13 17:09:44层次分析法,简称AHP,是指将与决策总是有关的元素分解成目标、准则、方案等层次,在此基础之上进行定性和定量分析的决策方法。 -
层次分析法matlab程序
2013-08-06 12:19:13层次分析法的matlab实现程序代码,亲测可用,欢迎下载 -
层次分析法matlab实现.doc
2020-10-25 13:15:53层次分析法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... -
层次分析法matlab源程序.pdf
2020-10-29 23:44:49精品文档 层次分析法 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... -
层次分析法matlab代码及使用方法
2019-05-11 23:26:09某决策人用成对比较法,得到成对比较阵如下: [1,2,7,5,5; 1/2,1,4,3,3; 1/7,1/4,1,1/2,1/3; 1/5,1/3,2,1,1; 1/5,1/3,3,1,1] 其中的x1=1;x2=2;x3=7;x4=5;x5=5; 怎么来的呢? 。。。。。。。。。。。。 其实...clc; clear; disp('请输入判断矩阵A'); %111111111 A=input('A='); [m,n]=size(A); %获取指标个数 RI=[0 0 0.58 0.90 1.12 1.24 1.32 1.41 1.45 1.49 1.51]; R=rank(A); %求判断矩阵的秩 [V,D]=eig(A); %求判断矩阵的特征值和特征向量,V特征值,D特征向量; tz=max(D); B=max(tz); %最大特征值 [row, col]=find(D==B); %最大特征值所在位置 C=V(:,col); %对应特征向量 CI=(B-n)/(n-1); %计算一致性检验指标CI CR=CI/RI(1,n); if CR<0.10 disp('CI=');disp(CI); disp('CR=');disp(CR); disp('对比矩阵A通过一致性检验,各向量权重向量Q为:'); Q=zeros(n,1); for i=1:n Q(i,1)=C(i,1)/sum(C(:,1)); %特征向量标准化 end Q %输出权重向量 else disp('对比矩阵A未通过一致性检验,需对对比矩阵A重新构造'); end
本代码只需要在提示输入处,输入构成的比较矩阵 就会输出各指标的权重值。
例子: 选拔干部考虑5个条件:品德x1,才能x2,资历x3,年龄x4,群众关系x5。某决策人用成对比较法,得到成对比较阵如下:
[1,2,7,5,5;
1/2,1,4,3,3;
1/7,1/4,1,1/2,1/3;
1/5,1/3,2,1,1;
1/5,1/3,3,1,1]
其中的x1=1;x2=2;x3=7;x4=5;x5=5; 怎么来的呢?
。。。。。。。。。。。。 其实这些x的值就是由决策人决定了,对应值也就是决策人认为的重要性了 -
数学建模-层次分析法matlab示例(包含一致性纠错)
2020-07-02 11:45:591. 建立层次结构模型 分为最高层、中间层(可以有多层)和最底层。 最高层:决策目的,要解决的问题 中间层:考虑的因素,决策准则 最底层:决策的备选方案 2. 构造判断矩阵 打分依据(两两比较打分,来减少主观的... -
层次分析法matlab程序举例教学文案.doc
2020-06-04 05:11:45层次分析法matlab程序举例 精品文档 精品文档 收集于网络如有侵权请联系管理员删除 收集于网络如有侵权请联系管理员删除 精品文档 收集于网络如有侵权请联系管理员删除 层次分析法程序举例 A=[1 1/7 1/5 2 4 1/3;... -
AHP层次分析法matlab源代码
2016-08-26 00:47:39层次分析法完整代码,m文件 -
层次分析法matlab'程序
2018-10-23 17:57:42层次分析法程序,用者应该注意的是对数据的标准化处理有多样性,自己可以根据自己的情况合适修改相应的代码部分,本代码采用的是归一化处理 -
数学建模-层次分析法matlab程序举例.zip
2022-01-18 17:35:10数学建模-层次分析法matlab程序举例.zip