收藏 分销(赏)

粗糙集matlab程序.doc

上传人:人****来 文档编号:4743765 上传时间:2024-10-11 格式:DOC 页数:4 大小:35.51KB
下载 相关 举报
粗糙集matlab程序.doc_第1页
第1页 / 共4页
粗糙集matlab程序.doc_第2页
第2页 / 共4页
粗糙集matlab程序.doc_第3页
第3页 / 共4页
粗糙集matlab程序.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

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

2、等价关系%显示约简信息系统disp(约简后的条件系统为:);m,n=size(B);for i=1:m disp(Bi);end%读取决策系统文件file = textread(decision2.txt,%s,delimiter,n,whitespace,);m,n=size(file);for i=1:m words=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 %正域有问题% if(ismem

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

4、行向量(元素为胞元)clc;%约简m,n=size(X);p,k=size(X1);ind_AT=ind(X);%寻找不可等价关系reduct_attr=; %可约去的的属性num=zeros(m,1);%约简后的信息对应的个体for i=1:k B=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:m if(isequal(ind_ATi,) C_i=ind_ATi,1(1

5、); 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:m for j=(i+1):m %潜在问题,如i=m是终止循环,此时若最后一行不为空的话,将漏扫 if(isequal(Xi,) %若Xi不为空 ind_ATk=union(ind_ATk,i); %不可等价关系赋初值 if(isequal(Xi,Xj) Xj=; %若Xi=Xj,则删除Xj ind_ATk=union(ind_ATk,j);

6、 %寻找不可等价关系 end end end k=k+1;end -%delete_AT函数的源代码function y=delete_AT(X,ATi) % 删除X中第i列的属性值m,n=size(X);l,k=size(X1); for i=1:m XiATi=; end y=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:m for j=1:m if(isequal(ind_Xi,)&isequal(ind_Dj,) if(ismember(ind_Xi,ind_Dj) low=union(low,ind_Xi);%由性质Pos_AT(d)=low_AT(X1)Ulow_AT(X2)U. end end endendpos_d=low;

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
百度文库年卡

猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服