1、 算法中利用信息熵来控制蚂蚁拾起和放下对象动作, 既可以减少参数的个数, 又可以加快聚类的进程。蚁群聚类的基本模型和 ; 算法在自 然界中, 一些蚂蚁可以将蚁尸 聚成 公墓, 也可将幼虫按大小分类。 720289:8-5 等根据这两种现象提出 了 两种模型(%), 两者的原理是一致的, 即一群蚂蚁在一个二维区域内 任意移动, 允许按规则拾起和放下物体。 一个任意移动的未载物体的蚂蚁拾起一个物体的可能性 !按公式 () 计算; 一个任意移动的载有物体的蚂蚁放下一个物体的可能性 !#按公式(!) 计算, 其中 $是蚂蚁周围物体的个数,%和 %!均为常数。?%$!()#?$%!$!(!);8.2-
2、和 ,421, 在文献(#)中 , 基于 720289:8-5 的 基本 模型, 提出 了以下算法: A B/0414,34C,14:0 B A:- 2D2-E 412. F:G3,62 -,0F:.3E :0 5-4FH0F :-:- ,33 ,5201I F:G3,62 ,5201 ,1 -,0F:.3E I232612F I412H0F :-A B J,40 3:G B A:- (? 1: (.,K F:/L ( (,5201 803,F20),0F (I412 :668G42F 9E 412. )1M20N:.G812 $ (),0F ()7-,+ -,0F:. -2,3 08.92-
3、 ) 921+220 ,0F /L ()!()1M20 AA 拾起规则O46P 8G 412. H0F /LH3I2 /L ( (,5201 6,-E405 412. ),0F (I412 2.G1E)1M20N:.G812 $ (),0F #()7-,+ -,0F:#()1M20 AA 放下规则7-:G 412.一种利用信息熵的群体智能聚类算法刘波(暨南大学计算机科学系, 广州 =%!)HQ.,43: 39K3FFRI:M8$6:.摘要论文采用群体智能 (*+,-. /01233452062)的思想研究聚类问题。 在 ;8.2- 和 ,421, 基于蚁群的聚类算法中, 通过信息熵的计算与比较
4、, 改变了 拾起和放下对象的规则, 增加了 两区域对象的合并操作, 从而加快了 聚类速度并减少了 参数设置数目 。 该方法能够有效地聚集数据库的记录对象, 具有一定的实际应用价值。 关键词信息熵群体智能聚类文章编号 !QS%Q (!#)%QSQ%文献标识码 T中 图分类号 UO%! #$%()*+ !#+,()-. /%)*+ 0*(,12 3*4 563(. 7*#)+*89)$ :,(72G,-1.201 :L N:.G812- *642062,V40,0 W04D2-I41E,X8,05CM:8 =%!)UM2 G,G2- 6,-42I -2I2,-6M :0 638I12-405 8I
5、405 I+,-. 401233452062$/1 ,.20FI G46P405 ,0F F-:GG405 -832I 40!;%(38: ,01Y9,I2F 638I12-405 ,35:-41M. G-:G:I2F 9E ;8.2- ,0F ,421, 1M-:85M 6:.G81405 ,0F 6:.G,-405 40L:-.,14:0 201-:GE$TI, -2I831,41 IG22FI 8G 638I12-405 ,0F -2F862I 08.92- :L G,-,.212-I$UM2 .21M:F 6,0 638I12- -26:-FI 40 , F,1,9,I22LL2614
6、D23E ,0F 4I :L G-,6146,3 ,GG346,14:0 D,382$26,(4%: 40L:GE,I+,-. 401233452062,638I12-作者简介: 刘波, 女, 副教授, 主要研究方向: 数据挖掘, 数据仓库, 智能信息处理。 S计算机工程与应用!#$%() *+() ,+-./0 1. 23().456 7050810) (0*9:.2*(9 7*10 (.1 .88=*0) ;6.1:02 390(1() .2() .2?2*(1 5.831*.( .+ *1047以上算法考虑的是: 在一个 ! 的网格中, 蚂蚁在地点 #可以观察到周围 $ 的区域中的物体
7、(下面称对象)。 对象 %在地点 2 与周 围对象的相似度按公式 (%) 计算, 其中 ! 是一个衡量相异度的参数, (%,%()是两个对象 %和 %(的距离。 ) (%)A$!%(! *+,-($)(#)AB (%,%()!# *+ ) (%)C%.-+#/$%+(%)00(%)1A1AD) (%)(*)!(#)0(%)!) (%) *+ ) (%)E1!A*+ ) (%)1!$()在 F 算法中, 蚂蚁拾起和放下一个对象的可能性按公式(#)和公式 ()计算。 拾起或放下的规则是: 将一个随机数与计算所得的拾起或放下可能性值比较, 若随机数小则执行拾起或放下操作。 这种规则会导致一个对象多次
8、被拾起或放下, 从而聚类较慢。 %基于信息熵的蚁群聚类方法 (12.=6GH(1GI57102)在 文 献JKL中 , 阐 述了 M:3(.( 提出 的 信息 熵定义: 假设2 是一个随机变量,3 是其可能的取值集合 (连续型数据需离散化 ),0 (2) 是取 2 值的 可 能 性 函 数 , 信 息 熵 4 (2) 定 义 为 公式(N): 4 (2)B2! 3! 0 (2)5.90 (2)(N)一个多变量向 量 2O2A,2!, ,25P的 信息熵按公式 (K) 计算, 其中 : 0 (2) 60 (2A,2!, ,25) 是多 变量可能分布函 数,3A,3!, 35 是相应向 量项的可能
9、取值集合 (连续型数据需离散化)。 4 (2)B2A!3A! 25!35! 0 (2A,2!, ,25)5.90 (2A,2!, ,25) (K)文献JK,QL已提出 了基于信息熵的聚类算法, 这些方法均依据这样一个事实: 包含聚的子空间的信息熵比不包含聚的信息熵小。 借鉴这一思想, 下面在 (12.=6GH(1GI57102 算法中, 将信息熵引 入 F 算法中, 改变了拾起和放下判断规则。 R S 初始化 S R.2 每一对象 % ).将 %随机地放在一网格中;() .2.2 每一蚂蚁 ).%随机地选择网格中一地方;() .2R S 主循环 S R.2 .A 1. .43T ).2 每一蚂
10、蚁 ).,+ ( (蚂蚁未负载)3() (在 %之处)1:0(计算信息熵 4A 和 4!;,+ (4AC4!)1:0( 拾起 % RR 拾起规则() ,+570 ,+ ( (蚂蚁负载 %)3() (所在之处为空)1:0( 放下 % RR 放下规则() *+() ,+蚂蚁随机移到某地方;() .2() .2一个未负载的蚂蚁移到对象 %之处, 计算周围 $ 的区域中的对象信息熵, 假设未拾起对象 %前的信息熵为 4A, 拾起对象 %后该区域的信息熵变为 4!, 拾起规则 为: ,+ 4AC4!, 则 拾起对象 %。 一个负载对象 %的蚂蚁移到空白 之处, 计算周围 $ 的区域中的对象信息熵, 假设
11、未放下对象 %前的信息熵为 4A, 放下对象 %后该区域的信息熵变为 4!, 放下规则为:, 则放下对象 %。 假设每一对象包括 5 个互为独立的 属 性 7A,7!75, 各属性的可能取值集合为 3A,3!, 35,# 区域中的对象信息熵可按公式 (Q) 计算,0 (2) 按公式 (U) 计算, 其中 589:+#;%);2是 $ 区域中满足 762 的对象个数,589:=$+ 是 $ 区域中的对象总数。 4 ($!)B5 6 A!2! 35! 0 (2)5.90 (2)(Q)0 (2)589:2589:=$+(U)#两种方法的比较分析蚁群聚类方法最大的特点是: 不需设定最终产生的聚的数目
12、, 聚中心是动态变化的, 可以发现任意形状的聚。 以上两种方法均以 390(1 的任意选择的地方作为变化的聚中心, 并考察周围一小块区域中的对象, 通过拾起或放下操作改变此一小块区域的对象相似度。 在 F 算法中, 影响拾起或放下动作的因素有对象间的距离、1A、1!、!、$ 等参数, 还有随机数 , 因此, 每次放下的对象不一定与小块区域中存在的对象相似; 每次拾起的对象不一定与小块区域中存在的对象不相似, 聚类过程很慢。 在 (12.=6GH(1GI57102 的方法中, 影响拾起或放下动作的因素只有 $ 参数, 每次放下对象能减少小块区域的信息熵; 每次拾起能增加小块区域的信息熵。 根据文
13、献JK,QL, 包含聚的子空间的信息熵比不包含聚的信息熵小, 因此同类型的对象能够较快地聚集在一起, 但产生的结果是局部最优。 通过调整观察区域的大小 $, 可减少小块聚的产生。 两种方法的时间复杂度均为 ? (.43T*=5.),*=5.为蚂蚁个数, 但实验结果表明 (12.=6GH(1GI57102 算法经过较少次循环就能达到较好的聚类结果。 实验结果从 VI,J#L公共数据库中 选取一组数据集 (W*8G138G1.0 ()9340), 该数据集包括 UQ 个对象, 可分为两类。 分别用 F 算法和 (12.=6GH(1GI57102 方法对这一数据集进行聚类。 在 F 算法中, 设置 N 个参数: 1A$A,1!$A,!$,$!NXN,.43T%,=,+5.;589:+# (蚂蚁数目 )! 在 (12.=6GH(1GI57102AQA!#$%计算机工程与应用(上接 页)()*+,-./01+2331456/-7839/-78/.:56/-78456/-7839;*8,878;,-./0=;后面输出 所有的拓扑序列, 即存放在二维数组 )* 中的元素, 略去;$
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1