一、方法和原理
D里面的元素可以表示 山东 浙江等等 ai1.....ain 可以表示具体的因素 有n个 称为n个
具体的例子
D为某个研究院 aij 表示第i个研究院第j个影响元素
二、算法步骤
确定变量是属于哪一类 成本型还是效益型 两者的正理想解和负理想解是不一样的 效益型 正理想解是越大越好 负理想解是越小越好 ,然而负理想解是相反的。
三、实例
我们上来不能直接对数据进行处理 要进行预处理
区间型 需要进行甄别 确定某一个区间
预处理的方法
aij有可能不为0,所以道理相同
标准的0-1变化 0,1都存在 在这个区间
区间变化符合这个公式 然后推上这个公式
clc,clear
a=[0.1 5 5000 4.7
0.2 6 6000 5.6
0.4 7 7000 6.7
0.9 10 10000 2.3
1.2 2 400 1.8];
[m,n]=size(a);
x2=@(qujian,lb,ub,x)(1-(qujian(1)-x)./(qujian(1)-lb)).*(x>=lb&x<qujian(1))+(x>=qujian(1)&x<=qujian(2))+(1-(x-qujian(2)))./(ub-qujian(2)).*(x>qujian(2)&x<=ub);
qujian=[5,6];lb=2;ub=12;
a(:,2)=x2(qujian,lb,ub,a(:,2));
for j=1;n
b(:,j)=a(:,j)/norm(a(:,j));
end
w=[0.2 0.3 0.4 0.1];
c=b.*repmat(w,m,1);
cstar=max(c);
cstar(4)=min(c(:,4));
c0=min(c);
c0=max(c(:,4));
for i=1:m
sstar(i)=norm(c(i,:)-cstar)
s0(i)=norm(c(i,:)-c0);
end
f=s0./(sstar+s0);
[sf,ind]=sort(f,'descend')