
多属性决策的权重确定方法及matlab程序.doc
8页多属性决策的权重确定方法及 matlab程序本文介绍11种多属性决策权重确定方法及 matlab程序目录1•列和求逆归一化方法( NHM) 12•行和归一化方法(NRA) 13•和积法(ANC) 24•方根法(NGM) 25.特征向量法(EM) 26•上三角梯度特征向量法 HGEM 27•下三角梯度特征向量法 LGEM 38•综合梯度特征向量法 HLGEM 39•加权最小平方法 WLSM 310. 几何最小二乘法 GLSM 311. 最小平方几何距离方法( LSGM) 412. Matlab 程序 51•列和求逆归一化方法(NHM)A (aj )n n为一致性判断矩阵的充分条件是aii=—L,由此可以得到如下等式,j 1 i=1j 1 i=1jay二i,i,j 1丄,n ,两边关于i求和化简得到列和求逆归一化的排序公式为,1L ,n=1j = naiji=1如果A为非一致性判断矩阵,则求得权重还要进行归一化处理2•行和归一化方法(NRA)j 1 i=1j 1 i=1A (ay )n n为一致性判断矩阵的充分条件是aij = -~,对aij = ~~两边关于j求和,化 j jj 1 i=1j 1 i=1简得到行和求逆归一化的排序公式为,naj1,L ,n=j=1j = n naijj 1 i=13•和积法(ANC)A (aj )n n为一致性判断矩阵的充分条件是 可二二,由此可以得到如下等式,j%二i,i,j 1丄,n,对其两边关于j求和,化简得到和积法的排序权重公式为,aij n j=in,|1,L ,naiji 14•方根法(NGM)由aj =」,对其两边关于j求积,整理后得到方根法排序权重公式为,j5.特征向量法(EM)若判断矩阵A为一致性判断矩阵,则排序权重向量 3=( 1丄,n)T同时还是判断矩阵A的特征向量,A 3= max 3由此导出的排序方法称为特征向量法。
6•上三角梯度特征向量法 HGEM上三角梯度特征向量法上利用判断矩阵 A的上三角元素求解排序权重向量,1a12La1n1102La2n22MMMMM ="max _ _M000nnn解特征方程,得递推关系n 1 an 1 naji 1利用上面的递推公式可以确定排序权重向量,需要对所求权重再进行归一化处理7•下三角梯度特征向量法 LGEM同上三角梯度特征向量法,可以得到递推关系2 a21 1F1jiaij j,i3,L ,n利用上面的递推公式可以确定排序权重向量,需要对所求权重再进行归一化处理8•综合梯度特征向量法 HLGEM把上三角梯度特征向量法和下三角梯度特征向量法进行算术平均,即3=(3(H)+3(L))/2可以得到综合梯度特征向量法 HLGEM9•加权最小平方法 WLSM构造加权最小平法和最优化冋题n n2mi nJ ( i aj j)i 1 j 1ns.t i 1i 1可以构造拉格朗日函数求解最优化问题,Q 1eeTQ 1e其中,e (1,1,L ,1)Tna' (n 2)1(a12a21)L(a1nan1 )(a21a12)na2 (n 2)i 1L@2nan2)MMn2处(n 2)i 1M(an1a1n)(an2a2n)Ln2 aini 1(n 2)10.几何最小二乘法 GLSM构造几何最小二乘法最优化冋题min Ji 1 j 1 ns.t i 1i 1可以得到排序权重公式其中,e (1,1L ,1)Tn1j12ai2Lj 1nq21a212jLj 2MMLn1 an1n2an2L1n a1n2n a2nMnnjj nj ij i11.最小平方几何距离方法(LSGM)最小平方几何距离方法如下求解最优化问题min J(1 n) iaij jj i(1n)22aijij ij ins.t i 1i 1可以得到(QtQ) 1eT T 1eT(QTQ) 1e其中,Q (qij )n n, qijaijnj i(1 n)2j i12. Matlab 程序假设判断矩阵A满足一致性,17541/7111/2A=1/5111/31/4231利用上述 10 种权重排序方法排序clear;clc;a=[ 1 8 4 61/8 1 1/4 1/61/4 4 1 31/6 6 1/3 1][n,m]=size(a)%方法 1:列和求逆归一化方法( NHM) for i=1:nNHM_w(i)=1/sum(a(:,i));endw1(1,:)= NHM_w%方法 2:行和归一化方法( NRA) for i=1:nNRA_w(i)=sum(a(i,:))/sum(sum(a));endw2(1,:)= NRA_w%方法 3:和积法 (ANC)for i=1:nt=0for j=1:nt=t+a(i,j)/sum(a(:,j))endANC_w(i)=t/nend w3(1,:)=ANC_w%方法 4:方根法( NGM)for i=1:nt=1 for j=1:n t=t*a(i,j)endt=tA(1/n)tt(i)=tendNGM_w=tt/sum(tt)w4(1,:)=NGM_w%方法 5:特征向量法( EM) [Q,p]=eig(a)EM_w=Q(:,1)' w5(1,:)=EM_w w5=w5/sum(w5) %规范化%方法 6:上三角梯度特征向量法 HGEMHGEM_w(n)=1 HGEM_w(n-1)=a(n-1,n)*HGEM_w(n) for i=n-2:-1:1t=0for j=i+1:n t=t+a(i,j)*HGEM_w(j)endHGEM_w(i)=t/(n -i)endw6= HGEM_w./sum(HGEM_w)%方法 7:下三角梯度特征向量法 HGEMLGEM_w(1)=1 LGEM_w(2)=a(2,1)*LGEM_w(1) for i=3:nt=0for j=1:i-1 t=t+a(i,j)*LGEM_w(j)endLGEM_w(i)=t/(i-1)endw7= LGEM_w./sum(LGEM_w)%方法 8:综合梯度特征向量法 HLGEMw8=(w6+w7)./2%方法 9:加权最小平方法 WLSM for i=1:nfor j=1:nif i==jB(i,j)=sum((a(:,j).A2))+(n -2);elseB(i,j)=-(a(i,j)+a(j,i));endendende=ones(n,1);WLSM_w=(inv(B)*e)/(e'*inv(B)*e);w9=WLSM_w'%方法 10:几何最小二乘法 (GLSM)for i=1:nfor j=1:ndelt(i,j)=1心+a(i,j)A2)endendfor i=1:nfor j=1:nif j==iG(i,j)=sum(delt(i,:)) -delt(i,j)elseG(i,j)=-delt(i,j)*a(i,j)endendendGLSM_w=(inv(G)*e)./(e'*inv(G)*e)GLSM_w=GLSM_w./sum(GLSM_w)w10=GLSM_w'%方法 11 :最小平方几何距离方法( LSGM)for i=1:nfor j=1:nif j==ib(i,j)=(1 -n)/((1 -n)A2+sum(a(i,:F2 -a(i,i)A2))A(1/2)elseb(i,j)=a(i,j)/((1 -n)A2+sum(a(i,:).A2 -a(i,i)A2))A(1/2)endendendLSGM_w=(inv(b'*b)*e)./(e'*inv(b'*b)*e)w11=LSGM_w'W=[w1;w2;w3;w4;w5;w6;w7;w8;w9;w10;w11]最终结果:W=[ 0.648650.052632 0.17910.0983610.523540.04248 0.227320.206660.594070.048721 0.211720.145490.613550.04428 0.216920.125240.604470.045309 0.217590.132630.618310.039239 0.256840.0856120.541350.067669 0.203010.187970.579830.053454 0.229920.136790.653080.057697 0.182660.106570.673680.050007 0.183560.0927550.624040.040824 0.216460.11868]。












