模糊信息处理作业——统计隶属函数

 

membership.m
function [man]=membership(database)
[row,column]=size(database);
mi=database(1,2);
ma=database(1,3);
for i=2:row
t=database(i,2);
if(mi>t) mi=t;
end
t=database(i,3);
if(ma<t) ma=t;
end
end
long=ma-mi+1;
man(:,1)=linspace(mi,ma,long);
man(:,2)=[0];
for i=1:long
for j=1:row
if(man(i,1)>=database(j,2) && man(i,1)<=database(j,3))
man(i,2)=man(i,2)+1;
end
end
end
for i=1:long
man(i,3)=man(i,2)/row;
end
figure;
subplot(2,1,1);
plot(man(:,1),man(:,3));
subplot (2,1,2);
bar(man(:,1),man(:,2));

Threedatabase.mat

threeall.m
Young=membership(Threedatabase(:,[1,2,3]));
Middle=membership(Threedatabase(:,[1,4,5]));
Old=membership(Threedatabase(:,[1,6,7]));

隶属度

u   少年 青年 中年
15   1    0    0
25   0   0.9  0.1
35   0   0.1  0.9
45   0    0    1
55   0    0    1
65   0    0   0.2

少年

 

 青年

中年

posted on 2012-02-20 09:59  Samuel Yang  阅读(204)  评论(0编辑  收藏  举报