基于遗传算法的粗糙集属性约简算法任永功概要.docx
- 文档编号:30751053
- 上传时间:2023-08-20
- 格式:DOCX
- 页数:12
- 大小:25.52KB
基于遗传算法的粗糙集属性约简算法任永功概要.docx
《基于遗传算法的粗糙集属性约简算法任永功概要.docx》由会员分享,可在线阅读,更多相关《基于遗传算法的粗糙集属性约简算法任永功概要.docx(12页珍藏版)》请在冰豆网上搜索。
基于遗传算法的粗糙集属性约简算法任永功概要
收稿日期:
2005-09-12 基金项目:
辽宁省自然科学基金项目(2050820资助;辽宁省教育厅高等学校科研基金项目(20040206;2004C031资助. 作者简介:
任永功,男,1972年生,副教授,研究方向为可视化数据挖掘、图像处理等;王 杨,女,1978年生,硕士研究生,研究方向为数.,,基于遗传算法的粗糙集属性约简算法
任永功,王 杨,闫德勤
(辽宁师范大学计算机系,辽宁大连116029E-mail:
renyg@dl.cn
摘 要:
属性约简是粗糙集理论中的一个核心问题,为了有效获取属性最小相对约简,本文提出了一种基于遗传算法的粗糙集属性约简算法.该算法将核引入遗传算法的初始群体来提高算法的性能,依照决策属性对条件属性的依赖度,在加强局部搜索能力的同时保持了该算法全局寻优的特性,能够获得最佳的搜索效果.实验结果证明了该算法能够快速有效的进行属性约简.关键词:
粗糙集;属性约简;遗传算法;相对约简;核
中图分类号:
TP18 文献标识码:
A 文章编号:
1000-1220(200605-0862-04
RoughSetAttributeReductionAlgorithmBasedonGA
RENYong-gong,WANGYang,YANDe-qin
(SchoolofComputerandInformationTechnology,LiaoningNormalUniversity,Dalian116029,China
Abstract:
Attributereductionisakeyproblemfortheroughsettheory.Inordertoachieveeffectivelyattributereduction,thepaperproposesaroughsetattributereductionalgorithmbasedonGA.ThecoreisjoinedinitialpopulationinGAinordertoacceleratecapability.Accordingtothedependabilityofdecisionattributetotheconditionattribute,itcanobtaintheprimeeffect.Experimentalresultsshowthealgorithmisfastandeffective.
Keywords:
roughset;attributereduction;geneticalgorithm;relativereduction;core
1 引 言
粗糙集(RoughSets[1]理论是波兰数学家Pawlak于1982年提出的一种处理不精确与不完全数据的数学理论,其主要特点是不需要预先给定某些特征或属性的数量描述,而是直接从给定问题的分类知识出发,通过不可分辨关系确定给定问题的知识约简.目前,粗糙集理论同神经网络、模糊理论、遗传算法等结合,已被应用于人工智能、模式识别、机器学习、决策支持与分析和数据挖掘等各种应用领域.属性约简是粗糙集理论中的一个核心问题,一般来讲,知识库中的知识并不是同等重要的,而且还存在冗余,这不利于作出正确而简洁的决策.属性约简就是在保持知识库分类能力不变的条件下,删除其中不相关或不重要的冗余知识.
遗传算法是模拟生物在自然环境中的遗传和进化过程而形成的一种自适应全局优化概率搜索算法.它最早由美国密执安大学的Holland教授提出,其搜索方式不是单一的方向或结构,它将多个个体作为可能的解并考虑搜索空间全局范围内的抽样,从而导致以更大的可能性收敛到全局最优解,因此遗传算法具有很强的全局搜索能力,能够在较短时间内找到全局最优解.
属性约简一直是粗糙集理论研究的重点,无论是研究问题域的关键还是求出刻划问题的最小规则集,都必须在决策表的最小约简求出的前提下才能得到解决,但是最小约简的
求解是一个NP难问题.目前有许多求解最小约简的算法[2-6],但是对那些大数据量高维数的决策表上进行最小约简的求解就必须探询一种更好的解决问题的办法.由于遗传算法在求解这种复杂问题所表现出来的能力,本文提出了一种基于遗传算法的粗糙集属性约简算法,实验结果证明该算法是有效的,可快速收敛到全局最优解.
2 相关基本概念
设S=(U,A,V,F为一信息系统,其中U={x1,x2,…,xn}是论域,A是属性集合,V是属性值集合,F是U×A→V的映射,它为U中各对象的属性指定唯一值.若A=C∪D,C∩D=,C称为条件属性集,D称为决策属性集,则该信息系统称为决策表.
定义1.设XU为论域的一个子集,PC,X的关于P的下近似为
P-X={x∈U[x]PX}
其中[x]P表示U中在等价关系P下的等价类元素构成的集合.
定义2.x,y∈U,对于QA,Q是U上的一个等价关系,如果满足xQy(q∈Q(fq(x=fq(y,则称Q是x,y的一个不可分辨关系.
定义3.设U为一个论域,P,Q为U上的两个等价关系
第27卷第5期 2006年5月
小型微型计算机系统MINI-MICROSYSTEMSVol.27No.5 May2006
簇,Q的P正域记为POSP(Q,定义为
POSP(Q=∪X∈U/Q
P-(X
定义4.设PC,对于划分{Y1,Y2,…,Yk}的P的近似精
度为
P=
∑k
i=1
card(P-Yi/card(U(1
其中,card(表示集合的基数.性质1.0≤p≤1.
(1当p=1时,决策信息完全由条件信息确定.(2p=0时,决策信息完全独立于条件信息.
定义5.设PC,若P=C,且不存在RP,使得R=P,则称P为C的一个属性约简.所有C的属性约简的交称为C的核,记为Core(C.
性质2.Core(C={c∈CC-C≠C}
3 遗传约简算法[7-8]
寻找最小相对约简对决策问题具有十分重要的意义.将遗传算法与粗糙集相结合,往往能取得较好的结果.遗传算法主要运算过程如下.3.1 编码方法
由于遗传算法不能直接处理解空间的解数据,因此我们必须通过编码将它们表示成遗传空间的基因型串结构数据.在此,我们使用固定长度的二进制符号串来表示群体中的个体,其等位基因是由二值符号集{0,1}所组成的.初始群体中各个个体的基因值可用均匀分布的随机数来生成.如:
100111001000101101就可表示一个个体,该个体的染色体长度是n=18,其中每一位对应一个条件属性,若某位取值为1,则表示选择其对应的条件属性,若某位取值为0,则表示不选择其对应的条件属性.
3.2 个体适应度评价
我们定义适应值函数如下:
F(x=(1-card(x/n+k(2其中:
card(x为染色体中1的个数,即染色体所含条件属性的个数;n为染色体的长度,即条件属性的个数;k为决策属性对该染色体所含的条件属性的依赖度.
该函数可以控制染色体朝着最小约简的方向进化:
k越大,说明决策属性D依赖条件属性C越强,当k=1时,决策信息完全由条件信息确定;通过card(x来控制染色体所含条件属性的长度.通过这两方面,我们构造的适应值函数可以在保持决策属性对整体条件属性依赖度不变的情况下找到所含条件属性最少的约简.
3.3 选择操作
本文采用适应度比例选择方法,从当前群体中选出优良的个体,将其复制到下一代群体中,该方法也称为赌盘选择.
其具体执行过程是:
(1先计算出群体中所有个体的适应度总和.
(2其次计算出每个个体的相对适应度的大小,它即为各CF(xj=F(xj/∑m
j=1
F(xJj=1,2,…,m
(3
(3最后使用模拟赌盘操作(即0到1之间的随机数来
确定各个个体被选中的次数.
3.4 交叉操作
本文采用单点交叉算子,其具体执行过程为:
对群体中的个体进行两两随机配对;对每一对相互配对的个体,随机设置某一基因座之后的位置为交叉点;对每一对相互配对的个体,依设定的交叉概率pc在其交叉点出相互交换两个个体的部分染色体,从而产生出两个新的个体.
3.5 变异操作
本文采用基本位变异算子,其具体执行过程为:
对个体的每一个基因座,依变异概率pm指定其为变异点;对每一个指定的变异点,核中属性对应的基因位不发生变异,其它则对其基因值做取反运算,从而产生出一个新的个体.3.6 最优保存策略
在得到新一代个体之后,如果其中最坏个体(适应值最小的适应值小于上一代最好个体(适应值最大的适应值,则用上一代最好的个体代替新一代最坏的个体,该方法确保算法收敛.
4 基于遗传算法的粗糙集属性约简算法
4.1 执行算法过程
输入:
一个决策表S=(U,A,V,F,A=C∪D,C是条件属性,D是决策属性.
输出:
此决策表的一个属性约简R.第1步:
由(1式计算出决策属性D对条件属性C的依赖度C(D.第2步:
令=Core(C=,逐个去掉一个属性c∈C,若C-C≠C,则Core(C=Core(C∪{c},即核为Core(C;若Core(D=C(D,则Core即为最小相对约简,否则执行第3步.
第3步:
随机产生m个长度为n(条件属性的个数的二进制串组成初始群体:
对于核中的属性,其对应位取1;其它则对应位随机取0或1.
第4步:
由(1式计算出决策属性对每个个体所含条件属性的依赖度;由(2式计算出每个个体的适应值;由(3式计算出每个个体被选择的概率;最后使用模拟赌盘操作(即0到1之间的随机数来选择个体.
第5步:
根据交叉概率pc进行交叉操作,采用单点交叉方式.
第6步:
根据变异概率pm进行变异操作,采用基本位变异方式,其中核中属性的对应位不发生变异.
第7步:
采用最优保存策略,将最优个体复制到下一代群体中.
第8步:
如果连续keep代的最优个体的适应值不再提高,则终止计算,否则转第4步.
4.2 算法的可行性和计算复杂性分析
863
5期 任永功等:
基于遗传算法的粗糙集属性约简算法
证明:
(1该算法是从一个初始群体出发,不断重复执行选择、交叉和变异的过程,使群体进化越来越接近某一目标,如果把每个个体看成是空间中的一个点,那么初始群体就是空间中的一组点,选择、交叉和变异就是在空间中点集变换的某种运算,通过这些运算最后达到解空间中的最优点.
(2文中采用的适应值函数可以控制染色体朝着最小约简的方向进化:
k越大,说明决策属性D依赖条件属性C越强;再通过card(x来控制染色体朝着最小约简的方向进化.本文算法保证了这两方面要求,所以该算法得到的R为问题的最优解.证毕.
命题2.该算法的计算复杂度为O(GEN*popsize*m*n*logn.
证明:
该算法的计算复杂度涉及了三个参数:
迭代次数、群体数目和适应值的计算,它们构成整个遗传算法的计算复杂度为O(GEN*popsize*适应值的计算复杂度.本文引入了属性依赖度来定义适应值,它的计算复杂度为O(m*n*logn,所以该算法的计算复杂度为O(GEN*popsize*m*n*logn.证毕.
5 实验结果
为考察本算法的有效性,我们使用本文算法分别对不同的信息系统做了多项实验.
表1是一个关于汽车数据的信息系统.其中论域U={1,2,…,21},条件属性集为C={类型,气缸,涡轮式,燃料,排气量,压缩率,功率,换档,重量},决策属性为D={里程}.
表1 汽车数据表
类型气缸涡轮式燃料排气量压缩率功率换档重量里程小型4Y1型中高高自动中中小型4N1型中中高手动中中小型4N1型中高高手动中中小型4Y1型中高高手动轻高小型4N1型中中中手动中中小型4N2型中中中自动重低小型4N1型中中高手动重低微型4N2型小高低手动轻高小型4N2型小高低手动中中小型4N2型小高中自动中中微型4N1型小高低手动轻高微型4N1型小中中手动中高小型4N2型中中中手动中中微型4Y1型小高高手动中高微型4N2型小中低手动中高小型4Y1型中中高手动中中小型4N1型中中高自动中中小型4N1型中中高自动中中微型4N1型小高中手动中高小型4N1型小高中手动中高小型4N2型小高中手动中中18,pc=0.8,pm=0.03,结果显示了迭代次数,每一代的最优个体,最优个体的适应值和该最优个体连续出现的次数.在本例中,第一代就出现了最优个体,并连续10代均不变,即求得属性约简后的结果为{类型,燃料,排气量,重量}.
表2 表1的计算结果
迭代
次数
最优
个体
最优个体的
适应值
最优个体连续出现次数11001100011.5555561
21001100011.5555562
31001100011.5555563
41001100011.5555564
51001100011.5555565
61001100011.5555566
71001100011.5555567
81001100011.5555568
91001100011.5555569
101001100011.55555610
为了进一步验证本算法的约简效果,我们从UCI机器学习数据库[9]中选择了ZooDatabase,论域U={1,2,…,101},条件属性集为C={animalname,hair,feathers,eggs,milk,airborne,aquatic,predator,toothed,backbone,breathes,venomous,fins,legs,tail,domestic,catsize};决策属性集D={type}.
表3是利用本遗传算法求解最小约简的结果.其中m=10,pc=0.6,pm=0.02,结果显示了迭代次数,每一代的最优个体,最优个体的适应值和该最优个体连续出现的次数.在本例中,第16代出现了最优个体,并连续10代均不变,即求得属性约简后的结果为{animalname}.
表3 本文算法对Zoo数据的约简结果
迭代
次数
最优个体
最优个体的
适应值
最优个体连续出现次数1101000000000100001.8235296
7101000000000000001.8823539
16100000000000000001.94117610应用本文算法与文献[4]、[5]的算法对比实验的结果也证明了本文算法可以大大的节省运算时间.
6 结束语
粗糙集理论以其独特的优势引起了广泛的关注,其与遗传算法的结合也越来越成为研究的热点[10-12],属性约简是粗糙集理论研究的核心内容之一,但是找出一个决策表的最小约简是NP难问题.本文提出了一种基于遗传算法的粗糙集属性约简算法,在加强局部搜索能力的同时保持了该算法全局寻优的特性,实验结果表明,该算法能够有效地对决策表进行约简,特别是数据规模较大时更加节省计算时间.进一步的工作将是继续完善遗传约简算法.
:
864 小 型 微 型 计 算 机 系 统 2006年
[J].CyberneticsandSystem,1998,29(27:
661-688.
[2]HuXH,CerconeN.Learninginrelationaldatabase:
aroughsetapproach[J].ComputationalIntelligence,1995,11(2:
323-337.
[3]HuX.Knowledgediscoveryindatabases:
Anattribute-orientedroughsetapproach[D].Ph.Dthesis,Reginauniversity,1995.[4]DaiJian-hua,LiYuan-chun.Analgorithmforreductionofattributesindecisionsystembasedonroughset[J].Mini-MicroSystems,2003,3(3:
523-526.
[5]HuKe-yun,LuYu-chang,ShiChun-yi.Featurerankinginroughsets[J].AICommunications,16(2003:
41-50.
[6]ZengHuang-lin.RoughSetTheoryandApplication[M].ChongQing:
ChongQingUniversityPress,1996.
[7]ZhouMing,SunShu-dong.GeneticAlgorithmPrincipleandApplication[M].Beijing:
DefenceIndustryPress,1999.
[8]ChenGuo-liang,WangXu-fa.GeneticAlgorithmandApplication[M].Beijing:
Post&TelecomPress,1996.
[9]UCIrepositoryofmachinelearningdatabase[EB/OL].http:
//www.cs.uci.edu/~mlearn/MLRepository.html.
[10]TaoZhi,XuBao-dong.RoughsetknowledgereductionapproachbasedonGA[J].SystemsEngineering,2003,7(4:
116-122.[11]WangWen-hui,ZhouDong-hua.Analgorithmforknowledgereductioninroughsetsbasedongeneticalgorithm[J].JournalOfSystemSimulation,2001,8(13:
91-94.
[12]DaiJian-hua,LiYuan-chun.Heuristicgeneticalgorithmforreductionofattributesinroughsettheory[J].JournalofXianJiaotongUniversity,2002,12(12:
1286-1290.
附中文参考文献:
[4]代建华,李元香.一种基于粗糙集的决策系统属性约简算法[J].小型微型计算机系统,2003,3(3:
523-526.
[6]曾黄麟.粗集理论及其应用[M].重庆:
重庆大学出版社,1996.[7]周 明,孙树栋.遗传算法原理及应用[M].北京:
国防工业出版社,1999.
[8]陈国良,王煦法.遗传算法及其应用[M].北京:
人民邮电出版社,1996
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 遗传 算法 粗糙 属性 任永功 概要
![提示](https://static.bdocx.com/images/bang_tan.gif)