收藏 分享(赏)

粗糙集属性约简matlab程序.doc

上传人:精品资料 文档编号:9765255 上传时间:2019-09-02 格式:DOC 页数:4 大小:37.50KB
下载 相关 举报
粗糙集属性约简matlab程序.doc_第1页
第1页 / 共4页
粗糙集属性约简matlab程序.doc_第2页
第2页 / 共4页
粗糙集属性约简matlab程序.doc_第3页
第3页 / 共4页
粗糙集属性约简matlab程序.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

1、粗糙集- 属性约简-matlab 程序Data2 为条件属性, decision2 为决策属性%my_test 函数实现clc;%读取信息系统文件file = textread(data2.txt,%s,delimiter,n,whitespace,); %读取文件信息,每一行为一个胞元m,n=size(file); %胞元的大小for i=1:mwords=strread(filei,%s,delimiter, );%读取每个胞元中字符,即分解胞元为新的胞元words=words;%转置Xi=words; endX=X;%B,num,AT=my_reduct(X); %信息系统的约简ind_

2、AT=ind(X); %信息系统的不可等价关系%显示约简信息系统disp(约简后的条件系统为:);m,n=size(B);for i=1:mdisp(Bi);end%读取决策系统文件file = textread(decision2.txt,%s,delimiter,n,whitespace,);m,n=size(file);for i=1:mwords=strread(filei,%s,delimiter, );words=words;Di=words; endD=D;%决策系统的正域约简X_D=X;l,k=size(X_D1);pos_d=pos(X_D,D);%正域for i=1:m %

3、正域有问题%if(ismember(num(i),pos_d)Bi=; %若约简后的信息系统 Bi不在正域中则删除该行end %因为相同的条件得到的决策不一样,end%将在正域规则下约简过的信息系统 B 连接决策系统 Dm,n=size(B);for i=1:mif(isequal(Bi,)Bi1,k+1=Di1;endend%显示约简决策系统disp(约简后的决策系统为:);m,n=size(B);for i=1:mdisp(Bi);end-%my_reduct 函数实现function C,num,reduct_attr=my_reduct(X)%y 为约简后的 cell 数组,reduc

4、t_attr 为可约去的属性%X 为行向量(元素为胞元)clc;%约简m,n=size(X);p,k=size(X1);ind_AT=ind(X);%寻找不可等价关系reduct_attr=; %可约去的的属性num=zeros(m,1);%约简后的信息对应的个体for i=1:kB=delete_AT(X,i);if(isequal(ind_AT,ind(B) %若 IND(AT-a=IND(AT)reduct_attr=union(reduct_attr,i); %则寻找到可约去的属性X=B;endend%剔除重复的行k=1;for i=1:mif(isequal(ind_ATi,)C_i

5、=ind_ATi,1(1);num(k)=i;Ck,1=XC_i; %返回约简后的信息系统k=k+1;endend -%ind 函数实现function yy=ind(X) %寻找不可分辨关系m,n=size(X);k=1;ind_AT=cell(m,1);for i=1:mfor j=(i+1):m %潜在问题,如 i=m 是终止循环,此时若最后一行不为空的话,将漏扫if(isequal(Xi,) %若 Xi不为空ind_ATk=union(ind_ATk,i); %不可等价关系赋初值if(isequal(Xi,Xj)Xj=; %若 Xi=Xj,则删除 Xjind_ATk=union(ind

6、_ATk,j); %寻找不可等价关系endend endk=k+1;end-%delete_AT 函数的源代码function y=delete_AT(X,ATi) % 删除 X 中第 i 列的属性值m,n=size(X);l,k=size(X1);for i=1:mXiATi=;endy=X;-%pos 函数实现function pos_d=pos(X,D)%求决策系统的正域函数%X 为条件属性,D 为决策属性ind_D=ind(D); %求决策属性 D 的不可等价关系m,n=size(ind_D);ind_X=ind(X); %求信息系统属性 X 的不可等价关系low=; %存储正域个体的编号for i=1:mfor j=1:mif(isequal(ind_Xi,)%由性质 Pos_AT(d)=low_AT(X1)Ulow_AT(X2)U.endendendendpos_d=low;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报