function lei = mohufenlei(a,lamata)
%利用模糊等价矩阵进行模糊分类
a = jiejuzhen(a,lamata);
n = size(a,1);
lei = zeros(n,2);
lei(1:n,1) = 1:n;
k = 1;
leap = 0;
for i = 1:n
if leap == 1
k = k + 1;
end
leap = 0;
for j = i:n
if a(i,j) == 1
lei(j,2) = k;
a(:,j) = 0;
leap = 1;
end
end
end
function c = jiejuzhen(a,lamata)
%模糊截矩阵
for i = 1:size(a,1)
for j = 1:size(a,2)
if a(i,j) < lamata
c(i,j) = 0;
else
c(i,j) = 1;
end
end
end
运行实例:
a =
1.0000 0.4000 0.8000 0.5000 0.5000
0.4000 1.0000 0.4000 0.4000 0.4000
0.8000 0.4000 1.0000 0.5000 0.5000
0.5000 0.4000 0.5000 1.0000 0.6000
0.5000 0.4000 0.5000 0.6000 1.0000
>> mohufenlei(a,1)
ans =
1 1
2 2
3 3
4 4
5 5
>> mohufenlei(a,0.8)
ans =
1 1
2 2
3 1
4 3
5 4
>> mohufenlei(a,0.6)
ans =
1 1
2 2
3 1
4 3
5 3
>> mohufenlei(a,0.5)
ans =
1 1
2 2
3 1
4 1
5 1
>> mohufenlei(a,0.4)
ans =
1 1
2 1
3 1
4 1
5 1