%topsis法,指標歸壹化采用向量歸壹化法,即正負指標均存在
%A為決策矩陣,W為權值矩陣,M為正指標所在的列,N為負指標所在的列
[ma,na]=size(A);
A=xiangliangguiyi(A); %用向量歸壹化法得到[標準決策矩陣]
for i=1:na
B(:,i)=A(:,i)*W(i); %按列循環得到[加權標準化矩陣]
end
V1=zeros(1,na); %初始化理想解和負理想解
V2=zeros(1,na);
BMAX=max(B); %取加權標準化矩陣每列的最大值和最小值
BMIN=min(B); %
for i=1:na
if i<=size(M,2) %循環得到理想解和負理想解,註意判斷,不然會超個數
V1(M(i))=BMAX(M(i));
V2(M(i))=BMIN(M(i));
end
if i<=size(N,2)
V1(N(i))=BMIN(N(i));
V2(N(i))=BMAX(N(i));
end
end
for i=1:ma %按行循環求各方案的貼近度
C1=B(i,:)-V1;
S1(i)=norm(C1); %S1,S2分別為離正理想點和負理想點的距離,用二階範數
可求
C2=B(i,:)-V2;
S2(i)=norm(C2);
T(i)=S2(i)/(S1(i)+S2(i)); %T為貼近度
end
A
B
V1
V2
S1
S2
T