基于人工免疫粒子群优化算法的动态聚类分析
2022-04-18
来源:好走旅游网
390 西安理工大学学报Journal of Xi’an University of Technology(2008)Vo1.24 No.4 文章编号:1006-4710【2008)04-0390-05 基于人工免疫粒子群优化算法的动态聚类分析 王磊,吉欢,徐庆征 (西安理工大学计算机科学与工程学院,陕西西安710048) 摘要:模糊c 均值聚类算法受初始化影响较大,在迭代时容易陷入局部极小值。将粒子群优化算 法与模糊G.均值聚类算法相结合,提出一种新颖的动态聚类算法。该算法利用人工免疫思想改进 粒子群优化过程,在很大程度上避免了粒子群算法和聚类算法早熟现象的发生,全局搜索能力和局 部搜索能力优于同类算法。利用聚类理论中的经验规则k ≤√n来确定聚类数k的搜索范围,在 最优粒子基础上进化新一级种群,该方案可有效提高算法的收敛速度。两组数据的仿真实验表明, 新算法优于传统模糊c.均值聚类算法,具有收敛速度快和解的精度高的特点。 关键词:人工免疫系统;粒子群优化算法;动态聚类;收敛性 中图分类号:TP301 文献标识码:A A Dynamic Clustering Analysis Based on Artificial Immune Particle Swarm Optiimzation Algorithm WANG Lei,JI Huan,XU Qing—zheng (Faculty of Computer Science and Engineering,Xi’an University of Technology,xii’an 710048,China) Abstract:The fuzzy C—means(FCM)clustering algorithm is sensitive to the situation of the initialization and easy to fall into the local minimum when iterating.A novel dynamic clustering algorithm based on the combination of FCM algorithm with particle swarm optimization(PSO)algorithm is proposed in this pa- per.The artificial immune mechanism is introduced in improving the process of particle swarm optimiza— tion,SO that the premature convergence of PSO and FCM algorithm is avoided,which makes the algo・ rithm’S global search and local search capability appear better than normal ones.The search range is de— termined according to the experiential rule后 ≤√ and the new population is evolved based on the opti— mal particles,which makes the convergence speed increased.The experiments on two data sets show that when compared with the classical clustering method,the new algorithm is capable of improving the cluste- irng performance significantly in convergence ability and solution precision. Key words:artiifcial immune system;particle swarm optimization algorithm;dynamic clustering;con- vergence 聚类分析是数据挖掘的重要内容,是非监督机 类中心会产生不同的聚类结果,甚至出现无解现象。 器学习的重要方法,已经被广泛应用于数据分析、模 受鸟群捕食行为规律的启发,Kennedy和Eberhart 式识别、图象处理等方面…。目前模糊C一均值 提出粒子群优化算法(Particle Swarm Optimization, (FCM)聚类算法是最成熟的聚类算法之一,它用模 简称PSO) J。每个粒子都遵循简单的行为规则, 糊聚类的概念真实客观地反映现实,有效解决大多 通过粒子之间的协同作业来寻找最优解,具有较强 数事物没有严格属性、事物之间没有明确界限的问 的全局并行搜索能力,在函数优化、神经网络训练、 题。由于FCM是基于梯度下降的寻优算法,算法往 模糊系统控制等领域得到普遍应用。但是,局部搜 往会陷入局部最优解,同时它受初始聚类中心影响 索能力较弱和易产生“早熟”现象是PSO算法的两 较大,特别是在聚类数较大的情况下,不同的初始聚 个明显缺点。 收稿日期:2008-06—16 基金项目:国家自然科学基金资助项目(60603026)。 作者简介:王磊(1972.),男,陕西渭南人,教授,博导,博士,研究方向为人工免疫理论、智能计算、普适计算等。 E-mail:leiwang@xaut.edu.an。 王磊等:基于人工免疫粒子群优化算法的动态聚类分析 391 近年来,人们受生物免疫系统及其功能的启发, 初始化为一群随机粒子(随机解),然后通过迭代找 开展人工免疫系统和算法的研究,并成功应用于聚 类、异常检测、计算机安全、函数优化和组合优化等 工程问题中 ’4 J。聚类分析需要实现特征提取、识 别和学习等过程,而这些正是人工免疫算法所具有 的特征,目前已取得丰富的研究成果 。鉴于 到最优解;在每次迭代中,粒子通过跟踪两个极值来 更新自己,一个是粒子本身所找到的最优解:个体极 值P ,另一个是整个种群目前找到的最优解:全局 极值Ghes 。 FCM和PSO算法存在的不足,以及人们往往不能事 先确定聚类数目的事实,本文通过引入免疫机制,提 假设在一个D维的搜索空间中,总粒子数为 m,第 个粒子的位置表示为向量Xi=( ¨ , …, ),第i个粒子的“飞翔”速度表示为向量 出一种基于人工免疫粒子群优化算法的混合动态聚 类算法(Artiifcial Immune Particle Swarm Optimization FCM,即AIPSO.FCM)。该算法将FCM和免疫粒子 群优化算法有机结合,初始聚类数遵循经验规则 k ≤ (n为空间粒子数),在此基础上逐级递减寻 找最优划分,在每一级划分中都采用免疫思想调整 粒子群优化过程。 l C-均值聚类算法 给定空间 ,考虑n个样本的数据集X= , ,…, },按照它们之间的相似/相异性将 其划分为K类,通过迭代的方法寻找最优分类,直 到准则函数收敛。准则函数如式(1)所示。 E=∑∑… —m J (1) 其中,E是数据集中所有对象的平方误差总和, 是 空间中的点,m 是簇C 的平均值。 一般情况下,c.均值聚类算法的基本流程如 下 : 步骤1从数据集{ 。, ,…, }中任意选择 k个对象c ,c ,…, 作为初始簇中心; 步骤2根据簇中对象的平均值,将每个对象 赋给最类似的簇:如果d( ,c )<d( ,c ), , , m:1,2,…,k,且 ≠m,则将 划分到C 中; 步骤3更新簇的平均值,即计算每个簇中对 , 象的平均值c ,c: ,…,c ,其中c =∑^0∈bi ,//I G I, i=1,2,…,k,其中『G f为G 中点的个数; 步骤4计算平方误差函数E; 步骤5重复步骤2~4,直到结果不再发生明 显变化。 2基于人工免疫粒子群的动态聚类算法 2.1粒子群优化算法 粒子群优化算法采用速度一位置搜索模型 , 每个粒子都代表搜索空间中的潜在解,解的优劣程 度由适应度函数-厂决定。具体寻优过程如下:PSO Vi=( ,…,/3 ),P 为第 个粒子的历史最 优解,G 为所有粒子P ( =1,2,…,m)的最优 解,每个粒子根据以下公式更新其速度和位置 ]: (t+1)=toU +c1 rl(t)(P (t)一 (t))+ c2r2(t)( (t)一Kid(t)) (2) (t+1)= (t)+ (f+1) 1≤i≤n,1≤d≤D (3) 个体极值和全局极值的更新依据为: (t+1)=p (t) l如果 (£+1))<tip (t)), lPia(t+1)= (t+1) (4) 【女日果 (t+1))≥ ^(p (t)) g(t+1)=p (t+1) 如果tip (t+1))> ̄f(Pjd(t+1)),i≤m√≤m (5) 其中∞>10,称为惯性因子,较大的 适于大范围探 查,较小的∞适于小范围开挖;c 和c 是正常数,称 为加速因子,一般取c。=c ;r (t)和r2(t)是[0,1] 之间的随机数。为防止粒子飞行速度过大而导致算 法过早收敛到局部最优解,一般根据实际问题人为 设定常数 >0,限定 ∈[一 , ],较大的 保证粒子群的全局搜索能力,较小的 ma 可以使 粒子在小区域精细搜索,它与to的作用都是用来维 护全局和局部搜索能力的平衡。粒子群初始位置和 速度随机产生,然后根据式(2)和(3)进行迭代,在 解空间中不断跟踪个体极值和全局极值进行搜索, 直至达到规定的迭代次数或满足规定的标准误差为 止。 2.2编码策略和适应度函数 假设D维空间的样本集N={Ⅳ , =1,2, …,n}包含n个数据对象,在基于粒子群算法的聚 类分析中,粒子均由k个聚类中心组成,每个粒子对 应一种聚类方式,即粒子 ={口 口 ,…,口 },其 中口 代表第 个粒子的第 项,也就是第 种聚类方 式的第 个聚类中心。粒子群由多种侯选方案构 成,我们根据适应度的大小来评判方案的优劣。本 392 西安理工大学学报(2008)第24卷第4期 文适应度函数定义如下: /1 k )=1/÷∑R I=l (6) (7) 步骤5若新的粒子群产生性能代价函数值更 低的粒子,则停止迭代,转至步骤2;否则继续迭代 直至产生更优粒子或达到预定迭代次数。 这种在最优粒子基础上产生新种群的方法,可 I R :‘ 1,…, √≠ max d 以使每一级的粒子优化都获得更优的初始侯选解, 提高算法的整体效率。 2.4免疫信息进化处理机制 其中,d =1 —at Il表示两个聚类中心之间的距离, A 表示第i类,I A l表示第i类中包含的数据个 数,o 表示第i类所对应的聚类中心,S =(∑ffN VE^ / 一口 II)/I l表示口 对应分类的类内平均距 , 离_9]。这样,可以使分类方案同时满足类内距离极 小和类间距离极大的要求,粒子的f( )值越大,代 表它所对应的分类方案越优,此粒子的生命周期也 越长。 2.3动态聚类的实现 常见聚类算法在聚类之前需要事先给定聚类数 目k,但多数情况下聚类数目k无法确定,因此需要 对最佳聚类数k进行优化处理。为了达到动态聚类 的目的,本文首先利用经验规则 ≤ 确定k的 搜索范围¨ ,随后逐级递减k值,在比较前后k值 对应的不同粒子群中粒子性能优与差的基础上,动 态调整k值,最终找到最佳k值。这里我们定义一 个性能代价函数: k k g( )=∑I‘=1 s —s l+∑∑1I=1 EAi Ⅳ一si 1(8) 其中s为全样本的均值,s 为簇 所含样本的均值, 』、r为任意样本数据。 )用于比较同一k值下不同 分类方案的优劣,而g( )用于比较不同k值下分类 方案的优劣。g( )以高内聚、低耦合为宗旨,综合 考虑到类内距离和类间距离对整体分类性能的影 响,g( )值越小,代表它所对应的分类方案性能越 好,分类代价越低。实验证明:性能代价函数能有效 指导算法寻找最优k值,加快算法收敛速度。 每确定一次k值,就需要重新初始化粒子种群, 具体实现步骤如下: 步骤1设定初始聚类数k= ,随机产生初 始粒子种群Mo; 步骤2 找出七对应的粒子群中性能代价函数 值最低的粒子,合并最相近的两个因子(即距离最 相近的聚类中心); 步骤3 k=k一1; 步骤4以缩减后的k个聚类中心为中心点, 在空间中随机生成以它们为中心的若干点,再依照 排列组合原理随机组合生成若干粒子,组成新的粒 子种群; PSO算法初始为均匀分布在解空间中的若干可 能解,但由于其自身固有的缺点,在进化过程中不可 避免地产生种群退化现象。本文将人工免疫系统的 免疫信息进化处理机制引入到PSO算法中,形成人 工免疫粒子群优化算法。免疫信息进化处理机制的 目的就是在复杂的问题中通过局部的特征信息找到 最佳的解决方案,即用局部的信息在一定程度上去 干扰全局的搜索过程,从而避免进化过程中的退化 现象,提高群体的适应度 。算法充分利用免疫系 统记忆、学习等特性,指导粒子群更快、更准地收敛 到最优解,在随后用于数据聚类的仿真实验中,得到 良好的聚类结果,体现出极大的优越性。算法涉及 的免疫模型如图1所示。 图1 免疫信息进化处理模型 Fig.1 Immune evolution model 2.4.1选择操作 在生物自然进化过程中,对生存环境适应度较 高的物种将有更多的机会遗传到下一代。模仿这个 过程,AIPSO.FCM算法采用精英选择和轮赌盘选择 相结合的选择策略对粒子群中的粒子进行优胜劣汰 操作。首先,我们选择其中50%的优秀个体直接进 王磊等:基于人工免疫粒子群优化算法的动态聚类分析 393 人下一代群体;然后对所有粒子按适应度值由高到 低进行排列,计算剩余粒子的选择概率,按照轮盘赌 选择方法继续进行筛选。 假设D维搜索空间中的总粒子数为m,粒子适 应度为.厂( ),则选择概率表示为: , m 并其中最相近的两个因子(即距离最相近的聚类中 心); 步骤4 k=k—l,初始化粒子种群 ,粒子个 数取m,根据式(6)计算所有粒子的适应度.厂( ); 步骤5计算粒子的个体最优与全局最优,把 适应度较高的粒子作为免疫记忆细胞保存到记忆 库,若算法满足终止条件,停止迭代,所有粒子的性 能代价函数g( ),若出现低于k+1级所有粒子性 p(xi)=厂( i)/∑ ) (9) 从中我们可以清晰看出,对粒子群进行以上两 步选择,就能保证下一代群体中的最佳个体绝对优 于上一代群体的最佳个体。 2.4.2变异操作 传统免疫理论中免疫系统主要通过变异来保证 细胞的多样性 。在此理论基础上,我们把筛选出 粒子的每一项作为免疫细胞,引入一种自适应变异 算子: = +Nm ×N(0,1) (10) 其中,N(O,1)是一个服从标准高斯分布的随机数, Nm 是免疫细胞的变异率,遵循如下公式: ,, 、 Nm P× J而\ ̄i/ ( ) 其中,P为变异因子,用来调整变异强度,与搜索的空 间大小和样本规模有关 ( )是筛选出的免疫细胞 的适应度值。显然,细胞的变异率与其适应度成反 比,适应度越高变异率越小,细胞在每次迭代过程中 根据适应度自适应的调整变异步长,在保留最佳个体 的同时改进较差个体,有效提高算法的收敛速度。 2.4.3免疫记忆 免疫记忆是指免疫系统将与入侵抗原反应的抗 体作为记忆细胞保存下来,当同类抗原再次人侵时, 记忆细胞被激活并迅速扩增分化大量抗体,杀死抗 原,执行高效而持久的免疫功能。在AIPSO—FCM算 法中,这种思想被用来保存优秀粒子,即将每次迭代 过程中产生的优秀粒子看作记忆细胞,用来替代后 代中适应度相对较低的粒子,从而保证下一代群体 的整体适应度明显高于上一代群体,加快算法优化 速度。 2.5 AIPSO—FCM算法基本流程 将免疫的思想融人粒子群优化算法实现动态聚 类,算法的基本流程如下: 步骤1设定初始聚类数k= ; 步骤2确定相关参数:聚类样本数/t',群体规 模Ⅳ,惯性因子∞,加速因子c。,C ,最大进化数 D…; 步骤3利用式(8)计算性能代价函数值,找出 k对应的粒子群中性能代价函数值最低的粒子,合 能代价函数值的粒子,最佳聚类数为k,否则为k+ 1;否则,进入步骤6; 步骤6通过式(2)和(3)对粒子状态进行更 新,包括速度和位置向量; 步骤7利用式(9)和(10)对这m个粒子进行 选择、变异操作,形成新的粒子群 ,并将其中适应 度较差的若干粒子用记忆库中的免疫记忆粒子替换; 步骤8 计算当前群体中所有粒子的适应度 )和性能代价函数g( ),若出现低于k+1级所有 粒子性能代价函数值的粒子,则停止迭代,转至步骤 3;否则,舍弃适应度低的粒子,复制部分适应度较高 的粒子,保证群体中粒子总数为m,转至步骤5。 3仿真实验 为了验证AIPSO—FCM算法的可行性与高效性, 本文通过两组数据来比较基于免疫粒子群优化算法 的聚类和传统c-均值聚类的性能。实验开发环境 为:P4 2.0 GB CPU,DDR512 MB内存,Windows XP 操作系统,MATLAB 6.0开发语言。 第一组实验数据集包括100名学生的学习成绩 数据,每个数据包含3个属性,分别代表学生的语文、 数学、英语成绩。由经验规则可以得到k的初始值为 k= 10o=10,实验中有关参数设定如下:粒子个数 m=100,惯性因子 =0.6,加速因子c。=c2=2,速 度阈值 =2.3,最大迭代次数D =200。采用 多次实验取最优结果的方法,最终由AIPSO—FCM算 法得到数据集划分的最优聚类数目 =3,即依据三 科成绩把学生分为优、中、差三组。为了比较方便,表 1列出了k=3时AIPSO—FCM算法和经典FCM算法 的适应度值,图2显示了数据集的最终聚类效果,其 中“▲”代表各组的聚类中心。 Tab.1表1 The compari AIPSO-FCM算法与FCM算法适应度值比较 son of iftness between AIPSO—FCM and FCM 394 唿 图2 AIPSO—FCM算法聚类结果 Fig.2 The clustering result of the AIPSO—FCM algorithm 第二组数据为Iris蔫尾花实际数据集¨ ,包含 150种蔫尾花的信息,分为3类,每个样本数据包含 4种属性,分别是尊片长度、曹片宽度、花瓣长度和 花瓣宽度,参数设置与第一组数据相同。表2为两 种算法的实验结果。 表2 AIPSO—FCM算法与FCM算法比较结果 Tab.2 The comparison between AIPSO-FCM and FCM 从实验结果可以看出,基于人工免疫粒子群优 化算法的聚类收敛精度明显高于传统模糊c一均值 聚类算法,大大提高了获得全局最优解的概率。 4结论 在分析传统聚类算法和粒子群算法的不足之处 的基础上,我们提出AIPSO-FCM算法。选择和变异 算子保证算法始终以优秀粒子为主要的优化对象, 免疫记忆机制能够及时为粒子群补充优秀粒子,确 保粒子种群的多样性,算法还利用聚类经验规则 。 ≤ 来控制k的搜索范围,在比较前后k值对应 的粒子群中粒子性能代价函数值大小的基础上,动 态调整k值,解除传统聚类算法必须事先明确聚类 数目的约束,提高算法的适应性。实验表明,该算法 大大提高获得全局最优解的概率,正确率明显高于 经典聚类算法FCM,在收敛精度方面体现出极大的 优越性。 通常,基于免疫机制聚类算法的收敛精度较一 般算法要高,但是其收敛速度却稍慢,因此下一步将 重点研究提高收敛速度的措施和方法。另外,算法 有待接受更多实际问题的检验,特别是存在噪声数 据情况下的检验。 西安理工大学学报(2008)第24卷第4期 参考文献: [1]Han J W,Kamber M.Data Mining:Concepts and Tech- niques[M].San Fransisco:Morgan Kaufmann Publishers, 2001. [2]Kennedy J,Eberhart R C,Shi Y.Swarm Intelligence [M].San Francisco:Morgan Kaufman Publisher,2001. [3]Klarreich E.Inspired by immunity[J].Nature,2002, 415(31):468-470. [4]Hart E,Timmis J.Application areas of AIS:The past,the present and the future[J].Applied Soft Computing,2008, 8(1):191—201. [5]De Castro L N,Von Zuben F J.An evolutionary immune network for data clustering[C]∥Proceeding of the IEEE Brazilian Symposium on Artiifcial Neural Networks,Rio de Janeiro,Brazil,2000:84—89. 『6]Neal M.Meta.stable memory in an artiifcial immune net. work[C]//Proceeding of Second International Conference Artificial Immune Systems,Edinburgh,UK,2003:168一 l81. [7]Jain A K,Murty M N,Flynn P J.Data clustering:A re— view[J].ACM Computer Survey,1999,31(3):264— 323. [8]Eberhart R C,Shi Y.Comparing inetria weights and con— striction factors in particle swarm optimization[C]∥Pro— ceeding of the 2000 Congress on Evolutionary Computation, California,USA,2000:84-88. [9]Zhang D X,Liu X z,Guan z H.A dynamic clustering al— gorithm based on pso and application in fuzzy identiifcation [C]//Proceedings of the IEEE International Conference on Intelligent Information Hiding and Multimedia Signal Pro— cessing,California,USA,2006:232—235. [1O]杨善林,李永森,胡笑旋,等(Yang Shan-lin,Li Yong— sun,Hu Xiao-xuan,et a1).K-means算法中的 值优化 问题研究(Optimization study on k value of K-means algo・ rithm)[J].系统工程理论与实践(Systems Engineering Theory and Practice),2006,26(2):97一101. [1 1]Wang L,Courant M.Muhiuser detection based on the im— mune strategy RBF network[C]∥Proceeding of the 9th In— ternational Conference on Neurla Information Processing, Havana,Cuba,2002:1485—1489. [12]焦李成,杜海峰(Jiao Li—cheng,Du Hai—feng).人工免 疫系统进展与展望(Development and prospect of the arti— ifeial immune system)[J].电子学报(Acta Electronica Sinica),2003,31(10):1540—1548. [13]UCI Machine Learning[EB/OL].[2008—12-01].http: 7f n .ics uci edu/~mleam/. (责任编辑杨小丽)