急求!用matlab解决此层次分析法问题,题如图所示,结果已给出,求此问题的matlab程序语言过程!

问答/455℃/2025-01-08 21:46:16

优质解答:

clc;clear

format rat

T=[1 1 2 4; 1 1 3/2 3; 1/2 2/3 1 2;1/4 1/3 1/2 1]

A1=[1 5/4 5/3 2;4/5 1 1 2;3/5 1 1 3/2;1/2  1/2 2/3 1]

%A2……A4

n=length(T);

%T的

disp('##############对矩阵T的运算#########################')

format short

[w,r]=eig(T);

r_T=r(1)

w_T=w(:,1)/sum(w(:,1))

format long

CI_T=(r_T-n)/(n-1)

RI=0.9;%查表n=4时为0.9

CR_T=CI_T/RI

if CR_T<0.1

    disp('通过一致性检验')

else

     disp('没通过一致性检验')

end

%A1的

disp('##############对矩阵A1的运算#########################')

format short

[w,r]=eig(A1);

r_A1=r(1)

w_A1=w(:,1)/sum(w(:,1))

format long

CI_A1=(r_A1-n)/(n-1)

RI=0.9;%查表n=4时为0.9

CR_A1=CI_A1/RI

if CR_A1<0.1

    disp('通过一致性检验')

else

     disp('没通过一致性检验')

end

%剩下3个矩阵自己写写看,记得先把矩阵输入

结果(帮你做两个,剩下自己仿照):

T =

       1              1              2              4       

       1              1              3/2            3       

       1/2            2/3            1              2       

       1/4            1/3            1/2            1       

A1 =

       1              5/4            5/3            2       

       4/5            1              1              2       

       3/5            1              1              3/2     

       1/2            1/2            2/3            1       

##############对矩阵T的运算#########################

r_T =

    4.0104

w_T =

    0.3745

    0.3244

    0.2007

    0.1004

CI_T =

   0.003454300746967

CR_T =

   0.003838111941075

通过一致性检验

##############对矩阵A1的运算#########################

r_A1 =

    4.0166

w_A1 =

    0.3428

    0.2701

    0.2339

    0.1533

CI_A1 =

   0.005531181156471

CR_A1 =

   0.006145756840524

通过一致性检验

>> 

我来回答

猜你喜欢

Copyright © 作文乐园 Inc.
Www.821218.Com All Rights Reserved
网站、品牌合作请联系