基于维度近邻关系扩散的改进粒子群优化算法
2018-07-03易云飞林郭隆董文永
易云飞,林郭隆,董文永
(1.河池学院 计算机与信息工程学院,广西 宜州 546300;2.武汉大学 计算机学院,武汉 430072)
0 引 言
粒子群算法[1-5](particle swarm optimization,PSO)是一种基于种群研究的智能优化算法。由于该算法具有全局寻优能力强、收敛速度快、参数设置少等特点而被广大学者所重视。其中, 在粒子群算法发展进程中具有较大的改变有:Shi等[6]在速度项中引入惯性权,并动态调整惯性权重来平衡全局性和收敛性。之后,Shi等[7]又将模糊系统的惯性权重做了动态调整以便对惯性权重实现非线性控制。Peram等[8]则从粒子网络优势方面更新粒子的学习方式,粒子不只向全局最优粒子学习,而是根据一定的适应值-距离-比例原则,向周围粒子以不同程度靠近。Bergh等[9]以群体智能为基础,利用多个协同工作的子群对解向量不同部分进行分部优化。Tizhoosn[10]将反向学习策略引入群智能算法,在差分演化算法中取得了较好的效果。喻飞等[11]在反向学习基础上加上透镜成像原理,使得算法在一定程度上有所加强。Jing Liang等[12]提出了每个粒子的速度更新基于所有其他粒子的历史最优位置的综合学习粒子群优化算法,使粒子速度更新有了新的方式,达到了粒子与粒子间综合学习的目的。纪震等[13]采用反向思维,舍弃了粒子群体优势,以单粒子更新提出智能单粒子思想,采用降维更新策略,在一定程度上避免了粒子因全局最优和当前最优粒子的影响而陷入局部最优,达到了预期的效果。
此外,粒子群算法[14]还被用于与其他思想融合而产生的混合算法,有些算法会产生比较好的性能。比较代表性的思想融合包括:差分演化[15]、混合蛙跳[16]、人工蜂群算法[17]和引力搜索算法[18]等一种或几种算法思想进行融合。
1 标准粒子群算法
在标准PSO算法中,m个粒子在一个n维空间中搜索,粒子初始化时随机产生其初始位置,然后按照(1)式和(2)式进行更新,直到满足终止条件。
(1)
(2)
粒子群算法是根据粒子速度和位置公式来迭代粒子,从速度和位置公式可以看出,除了随机数和学习因子以外,粒子的进化方式完全由当前粒子的局部最好值和全局最好值来决定,这导致了粒子进化的局部性,指导粒子进行更新的信息有限,使得粒子容易陷入局部最优,并且很难只借助全局最优和当前粒子的历史最优值来跳出局部最优。
在标准粒子群算法中有一定数量的粒子种群,其算法的更新方式单一,只根据2个极值来决定,当2个极值不再更新时,则当前粒子的飞行就受到了严重阻碍,因此,应该从根本上通过改变粒子群算法的单一更新方式来解决易陷入局部最优的问题,由于当前粒子周围的粒子也可能提供一定量的信息,通过获取这些信息可以更好地权衡粒子的进化方向,促使粒子拥有更强的逃离局部最优的性能。因此,粒子搜索过程中应当充分地利用好这些粒子资源从而构建一个粒子网络来协同更新,或者可以采取在线社会网络中的信息扩散模型来达到粒子间的信息交流、信息扩散和信息影响。
PSO算法在搜索过程中保持权值w、学习因子c1,c2不变,使得粒子速度并不具有明显的自适应调整速度的功能,从而无法适应动态变化的环境,不能真正达到智能搜索的目的。
通过分析粒子的适应值,利用其在整个粒子网络中的地位来自适应地调整搜索速度以达到快速收敛的目标。
由于标准的粒子群算法并没有配备相应的扰动操作,这也是经典粒子群算法轻松掉入局部极值的另一个根本缘由,在整个粒子搜索过程中并不是每一次都要求搜索到更好的解,而是在陷入局部最优时算法应该能自动甄别出,并采取相应的措施跳出局部最优进入新的领域继续进行搜索。
2 粒子群算法改进策略
在算法初始化阶段引入k-means聚类思想和贪心[19]思想用于初始化粒子,在算法更新方式中引入智能单粒子优化算法思想,为了更加明智地指导家庭之间的更新,算法中引入在线社会网络信息扩散模型,最后为了提高改进算法的收敛速度,还引入反向策略和禁忌搜索策略的思想。
2.1 智能单粒子优化策略
智能单粒子优化算法[13]将更新的基本单位从整个粒子位置矢量转变为以维度为基本单位组成的子矢量进行更新,并在更新子矢量的同时,算法会采取一种自适应的学习策略,更新速度子矢量受到当前粒子位置子矢量历史搜索结果的影响,当获得更好的结果时,会给予一定的加速策略,当获得更差的结果时,会给予一定的降速策略,使得算法可以更快速寻到最佳解。
在经典粒子群算法中,粒子都被当作一个基本单位进行更新,从而忽略了粒子维度的价值和关系,本文算法通过将智能单粒子优化算法的降维更新思想结合家庭概念对粒子进行局部更新,这样粒子搜索就更具完整性。
2.2 禁忌优化策略
禁忌搜索算法是基于区域搜索的算法,将区域中搜索出的一部分极值的较好解状态作为候选解加入禁忌表,当达到禁忌迭代次数设定时,还没有搜索到更好的解,则会将部分禁忌对象释放。禁忌搜索算法中对周围区域构造的确定至关重要,因为禁忌搜索本身也是对周围区域搜寻的有效提升,周围区域构造的设定不仅影响解的数量和形式,还有各个解之间的联系。对于高维组合优化问题,由于邻域的规模过于庞大,因此,在禁忌搜索中只会选取一定邻域状态进行求解,并选取少量优秀状态作为候选解。在实际求解组合优化问题时,对禁忌长度的设定也是至关重要的,设置得过大或者过小都会严重影响到算法的进程,特赦准则的存在是为了搜索到最优解,禁忌表则是为了增强全局搜索能力。
引入禁忌搜索优化算法的思想让粒子在更新进程中更容易跳过局部极值范围,对局部极值范围保留记录,并设定禁忌准则,使得粒子不会重复多次搜索同一区域,增强了粒子的搜索能力和增大搜索到问题最优解的概率。
2.3 聚类初始化策略
本文引入k-means聚类算法用于初始化粒子维度,从而将粒子的所有维度划分到不同的家庭,以家庭为基本单位对粒子进行更新。k-means算法先从集合中无规律地找出k个点看成中心点,其中,各个中心点都可以表示为各个的簇,就像家族中的祖先一样。然后对剩余的每个粒子计算他们到每个中心点的距离,再根据每个粒子和簇的相似度,即每个粒子到每个簇的距离,将粒子赋给当前相识程度最高的簇,这有点类似于当今社会一些家族寻源,总是会首先寻找与自己关系最近的家族。将调整以后的家族,重新计算出一个家族中心,再计算剩余粒子到这些新家族中心的距离。再次重新赋给当前相识度最高的簇,当达到调整阈值或者家族中心不再变化时终止。
k-means算法可以得到比较有效的分类,在本文算法中我们以2个城市之间的欧氏距离作为相似性的判断准则,通过(3)式可以得到J(ck),即第k个类中所有点到类中心的平方和,再通过(4)式可以得到所有城市到他们类中心的距离之和J(C),聚类目标可以使得J(C)最小。
(3)
(4)
(3)—(4)式中:xi为聚簇中的点;uk为第k个聚簇;ck为族的质心;K表示聚簇的数量。
2.4 基于在线社会网络的优化策略
经典的粒子群算法的粒子更新手段过于单一,使得粒子更新的性能受限,只取决于2个极值,而没有考虑周围粒子的作用。为了更好地利用周围粒子所提供的信息,引入在线社会网络的信息传播模型,可以更好地指导粒子利用粒子网络信息进行粒子自身的信息采纳方式的决策,指导粒子如何更好利用社会因素和信息因素使得粒子自身利益最大化,从而提高整个粒子网络的信息质量,促使整个网络向最优目标转移。
用户信息可以利用在线社会网络进行扩散,也可以通过在线社会网络获取信息,在粒子群算法中每个粒子都相当在线社会网络中的一个用户,不但需要将自己的家庭信息表扩散给周围用户,也需要获取周围用户的家庭交换记录信息,并将在线社会网络信息扩散模型应用于指导粒子学习由其他粒子扩散而来的家庭关系表,本文选取博弈论模型来指导粒子学习周围粒子家庭交换记录信息。
2.5 反向学习策略
在2005年,Tizhoosn首次提出反向学习策略的概念,通过对反向学习策略的研究开发,成功将其与差分进化算法相融合,也是首次将反向学习策略引入群体智能优化算法中,并获得了明显的改进效果[10]。Tizhoosn认为智能算法寻找最优解本身就具有很高的随机性,从算法的初始种群通过随机产生,然后根据一定的人工策略进行不断的迭代,使得种群向最佳解靠近,最后达到结束条件时获取最佳解或类似最佳解。目前智能算法的起始值都是随机产生的,而起始值对整个算法的搜索具有非常重要的作用,产生好的随机初始种群,能够促使算法快速搜索到最优解或者达到结束条件,如果产生的解质量太差或者完全与最优解相反,则会导致算法性能下降甚至找不到好解。为了解决这种情况,Tizhoosn提出了反向学习策略的概念,当算法在解空间进行搜索时, 不仅获取当前解,并将优秀的反向解加入搜索种群中,并舍弃当前解,智能算法的寻优过程是一种随机性的经验过程,种群中的解质量越高越有利于搜索到更好的解,从而大大提高算法效率。当前解和反向解都有可能作为下一代解,在粒子更新时,将当前解和反向解同等作为候选解,并选出其中具有更好适应值的解作为下一代粒子。随着反向学习策略的提出并成功应用于差分进化算法,其他研究者也将反向学习策略与粒子群优化算法、蚁群优化算法相结合都产生了很好的效果。
下面将介绍反向学习[11]的一些重要概念,如反向数、反向点、反向优化、一般反向学习和动态一般反向学习。
反向数的概念:假设x为实数,并且n的取值为[a,b],则x反向数值为x′可通过(5)式获得。
x′=a+b-x
(5)
反向点的概念:对应每个点的每个维度引入反向数,再将所有维度结合起来从而组成反向点。
反向优化的概念:假设适应值函数为f,得到当前解的适应值为v1,反向点的适应值为v2,如果v2优于v1,则将反向点加入种群,并删除当前点。
一般反向学习的概念:实数x∈[a,b],令F=D-x,则有x′=D-x,在此,D是可估量值,则可以得到逆向解x′∈[D-b,D-a]。
D=k(A(t)+B(t))
(6)
3 PSODN算法设计
本文提出了一种基于维度近邻关系扩散的改进粒子群优化算法(improved particle swarm optimization algorithm based on dimension neighbors diffusion, PSODN)。
3.1 初始化
粒子编码方式:在解决不同类型的问题时,粒子的编码方式也不相同,本文算法在求解TSP(traveling salesman problem)问题时,对二维空间中的城市进行编号,每个编号唯一映射一个城市,如数据集att48,数据集中共有48个城市,则算法中对48个城市分别编码为1-48。其中,一个可行解可表示为(1,2,…,48),即从1开始访问到第48个城市,并回到编号为1的城市形成一条回路。
粒子的速度:不同于函数优化问题,定义域是一个连续区间,组合优化问题是一类非连续问题,因此对于算法的更新速度需要重新定义,算法中选取遗传算法的一次交换表示速度为1的移动,如拥有5个城市的一个数据集当前得到一个可行解为(3,5,2,1,4),并且粒子当前的更新速度为1,则粒子可以通过更新得到10种不同的状态,包括(5,3,2,1,4),(3,5,1,2,4),(3,5,4,1,2)等状态。
粒子的邻域:邻域的实际表现形式也与问题类型相关,在组合优化问题中,我们定义邻域即为当前解通过交换操作后产生的所有状态,即组成当前粒子的邻域。
在解决TSP问题时,假设拥有n个城市坐标数据,C={x1,x2,…,xn},其中,xi为平面坐标数据(x,y)。首先,通过 (7) 式得到城市划分类的个数K,为了使得划分出的类的个数不会过多或者过少影响算法寻优效果,因此,需要保证类的个数。
(7)
通过随机得到K个城市作为初始类中心U,然后将未被选做类中心的粒子根据 (8)式得到当前测试的粒子应该被归入哪个类k中,并根据(9)式对修改过的类进行类中心的调整(即计算出新的质心)。
k=min(dis(z,ui))
(8)
(9)
(8) 式中:z为当前ui类的质心;dis为距离函数。(9)式中:ui为计算得到的新质心;numk为第k个类的成员个数;(xi,yi)为对应类成员的坐标。
通过遍历所有城市,将城市划分入不同的类中,从而得到算法的初始聚类,最后通过从不同的城市出发并应用贪心思想(选取离当前城市最近的城市作为下一城市),先在聚类得到的类内部构造路线,然后在类间构造路线,从而得到最终的初始化粒子。
3.2 更新方式
本文算法粒子的更新方式分为2种形式,分为聚类内部的更新和聚类间的更新。
1)聚类内部的更新。通过借鉴智能单粒子优化算法的思想进行更新,通过初始化产生的类,类总数为k个,首先通过(10)式产生每个类的更新速度。
(10)
(10)式中:k为第几个类;d为迭代次数;r为[-0.5,0.5]的随机数;p为下降因子;a为多样性因子;b为加速因子;L由(11)式可以得到,L的取值与更新类后取得的适应值好坏相关,如果当前得到的适应值较上代要差,则会缩小L,如果当前得到的适应值更好,则L的取值会增大。根据(10)式可以看出v的取值在增大。
(11)
(11)式中:s为收缩因子;x为粒子的位置;xk为粒子的每k个类。
最后通过(12)式得到粒子的新位置。
(12)
2)聚类外部更新。当分析类的外部更新时,将每个类作为一个整体,在初始时每个粒子通过随机选择2个类交换位置,如果产生更好的适应值则将此次交换的类和优化的适应值差进行记录。由于粒子存在于整个粒子网络中,每个粒子自身都携带着自身类的交换记录,通过借鉴在线社会网络信息扩散模型的思想,每个粒子都会对周围粒子携带的交换记录进行评估。选择的标准为首先选择出自身适应值最高的粒子和交换记录后适应值差最大的粒子,然后进行概率选择,两者都以40%的概率被选中,剩余的20%概率选择其他交换记录。如果自身适应值最高的粒子没有携带的交换记录信息,则将其40%的概率赋予给后者,如果没有满足条件的记录,则粒子进行随机交换类。
在更新方式上,不仅考虑了局部更新,也兼顾了全局更新,使得粒子的搜索结果更加优秀。
3.3 禁忌策略应用
运用禁忌搜索的思想对已经搜索过的局部最优值加入禁忌表,不但可以节省大量的搜索资源,也可以降低群落中的粒子陷入局部最优区域的概率。为了降低种群中的粒子陷入局部最优的概率,本文引入禁忌搜索优化算法的思想。
在应用禁忌策略时,主要涉及关键参数和操作的定义,以下为本文算法的定义。
3.3.1 初始解和适应值函数
在禁忌搜索算法中,该算法对于初始解的敏感度很高。因此,本文通过上述聚类和贪心思想产生的初始解比较优秀,可以加快收敛速度。对适应值函数的确定,即可以得到当前解所对应的路径值,由 (13) 式和(14) 式得到。
(13)
(14)
(13)式中:N为城市的个数;xi为城市向量。
3.3.2 邻域结构和禁忌对象的确定
本文中,将每个粒子通过 (11)—(13)式以及粒子的更新操作(每次交换都可以得到一个邻域解,故根据速度大小就可以得到不同数量的邻域解)得到一定数量的可行解,将所有粒子得到的可行解组成禁忌策略中的邻域结构。
禁忌对象的记录通常可以使用明晰记忆和属性记忆,明晰记忆是记录完整的当前解,而属性记忆则是记录当前的状态变化,虽记录完整的当前解消耗的内存资源相对较多,但是相比属性记忆可以降低解析状态变化的时间花费,因此,算法中选择明晰记忆方式作为禁忌对象。
3.3.3 禁忌表和禁忌长度的确定
选择队列作为存储禁忌对象的数据结构。为了使得禁忌表的长度不会过大,需要设置禁忌长度来动态释放禁忌对象,在算法中禁忌长度的选择对算法的收敛和避免进入局部最优的循环起到关键作用。禁忌长度通常可以使用静态设置和动态设置2种方案,大量研究表明动态设置禁忌长度能提高算法性能,本文根据 (15)—(17) 式来动态确定当前禁忌长度L。
(15)
L=baseL+f(a)
(16)
(17)
(15)—(17)式中:N为城市规模,基本的禁忌长度baseL与城市规模有关,随着城市规模的增长禁忌长度也随着增长,而当前实际禁忌长度L还与函数f(a)相关。(17)式中:xd为当前解;xd-1为上代解即为禁忌队列中最后一个入队的禁忌对象;m为算法得到的解持续变好或变差的次数,当解状态进行跳跃(即解在变好与变差之间切换时)则会被重置为0。当前解优化上代解时,说明算法搜索能力强或者可能陷入局部最优区域,因此需要动态增大禁忌长度,从而达到避免循环搜索局部区域的能力,当前解劣于上一代时,通过适当降低禁忌长度,随着解的效果越来越差时,禁忌长度下降幅度也会不断变大,从而释放禁忌对象,重新纳入搜索范围。
3.3.4 特赦准则和终止准则
首先是对特赦准则的选取,特赦准则最常用的确定方式是基于适应值的原则,当从邻域结构中产生的禁忌候选解优于“best so far”状态时,则满足特赦准则,将禁忌表中的对象释放,并将当前禁忌候选解加入禁忌表,并标记为新的“best so far”。终止准则主要涉及2个条件:①通过设定最大迭代次数;②设定禁忌对象被禁忌频率阈值。当迭代达到设定的最大迭代次数时算法近似收敛结束,或者当某个禁忌对象被禁忌的频率达到设定的最大值时,算法也会结束,说明算法已经收敛到最优区域。
3.4 反向策略应用
根据 (18)—(20) 式可以计算出反向点x*为
(18)
(19)
(20)
通过反向策略得到的反向粒子与当前粒子进行比较,如果反向粒子优于当前粒子则用反向粒子替换当前粒子。
3.5 算法流程
先对粒子进行初始化,由于禁忌搜索算法对初始解的敏感度很高,因此,算法初始化阶段,通过聚类思想和贪心思想产生了比较优秀的初始粒子。
算法更新阶段。主要分为2个方向进行:粒子内部更新和粒子类外部更新。在粒子内部更新时,通过 (10) 式可以得到对应的速度子矢量,将速度子矢量用于类的更新,更新过程中应用反向策略得到反向粒子,并比较当前粒子与反向粒子的优劣,进行相应替换;在粒子类外部更新时,粒子会通过周围粒子应用类外部更新策略对粒子进行更新,并应用反向策略得到反向粒子,并比较当前粒子与反向粒子的优劣,进行相应的替换。
当算法完成更新后,通过在更新阶段得到的所有邻域解中选出一个不在禁忌表中并且适应值最优秀的粒子作为禁忌候选对象,当禁忌候选对象满足特赦准则,即当前得到的禁忌候选对象优于“best so far”状态,则将禁忌表清空,将禁忌候选对象加入禁忌表,并设置其为新的“best so far”状态。如果禁忌候选对象不满足禁忌准则,则根据更改禁忌表中对象的禁忌长度属性,并通过分析当代解与其历史解的更新情况,通过 (15)—(17) 式更新禁忌长度。
最后判断当前状态是否满足终止准则,即是否达到最大迭代次数,或者某个禁忌对象被禁忌的频率达到阈值。
具体流程如下。
Step1通过(7)式确定聚类的参数K,通过聚类思想和贪心思想初始化粒子,并记录分类情况;
Step2计算粒子适应值,作为初始解,并初始化禁忌表;
Step3通过 (11)—(13) 式对类内部进行更新,并应用 (18)—(20) 式产生反向粒子,并确定当前粒子是否被替换;
Step4通过类外部更新策略对类外部进行更新,并应用 (18)—(20) 式产生反向粒子,并确定当前粒子是否被替换;
Step5从产生的邻域解中,找出不在禁忌表中最优秀的禁忌候选解,判定是否满足特赦准则,如果满足特赦准则,清空禁忌表,设置新的“best so far”状态,并将对象加入禁忌表,否则,先修改禁忌对象的禁忌长度属性,然后通过 (13)— (15) 式更新禁忌表长度;
Step6满足终止准则,算法结束;否则返回Step 3。
4 实验结果及分析
为验证所提出的改进算法性能,本文选取了旅行商问题和带容量约束的车辆路径问题作为实验数据。实验仿真环境:1.66 GHz主频的Intel处理器,1.49 GB内存,Microsoft Windows XP,仿真软件 Eclipse 3.6.2SDK。
实验中对att48,eil51,eil76设置种群粒子数为30,最大迭代次数为100;对rat99,korA100,eil101,pr107设置种群粒子数为50,最大迭代次数为200;对bier127,ch130,ch150设置种群粒子数70,最大迭代次数为500;对kroA200设置种群粒子数为100,最大迭代次数为1 000。
由于在标准TSPLIB(TSP library)数据集中,以平面坐标来标示一个城市,在实验结果图中的横纵坐标即为坐标轴的XY,而2个城市之间的花费即为2个城市之间的欧氏距离。
表1是将本文算法用于求解标准TSPLIB数据集中部分问题的求解结果,并将得到的结果与贪心算法(greedy algorithm,GRA)、改进贪心算法(improved greedy algorithm,IMGRA)和蚁群算法(ant colony system,ACS)进行比较。表1中给出了该问题的实际最优解(optimum solution,opt)进行对比,从表1中可以看出,本文算法得到的最优解与实际最优解的误差都比较小,其他3种算法求解结果的精确度都低。从表1中还可以看出,GRA求解TSP问题时所得到的结果相比其他几种算法的误差是最大的,主要是因为GRA在求解TSP问题时易陷入局部最优,从而搜索不到最优解,IMGRA相对GRA的求解结果有一定的改进,而ACS的求解结果对比IMGRA有比较大的优势,ACS用于求解最短路径问题有一定的优势。
表1 不同算法求解部分TSPLIB结果比较Tab.1 Comparison of partial TSPLIB results by different algorithms
表2和表3是将本文算法求解结果与GRA,IMGRA,ACS以及文献[20]提出的DPSO(discrete particle swarm optimization)和HDPSO(hybrid discrete particle swarm optimization)算法进行比较,本文所提策略效果较好。
表2 eil51数据多种算法求解结果比较Tab.2 Comparison of eil51 results by different algorithms
表3 korA100数据多种算法求解结果比较Tab.3 Comparison of korA100 results by different algorithms
图1是标准PSO算法与本文算法求解数据集收敛时间的对比。从图1中可以明显地看出,本文算法的求解速度优于标准PSO算法,可见,本文算法引入的禁忌搜索机制和反向策略能够帮助算法跳出局部最优区域,使得粒子更少地在已经搜索过的区域进行重复搜索,从而提高搜索资源的利用率和加快算法收敛。
图1 收敛速度比较图Fig.1 Convergence speed of comparison diagram
此外,我们还将本文提出的算法用于求解标准测试集Augerat et al.Set A中的A-n32-k5等9个测试数据,并将实验结果与其他经典算法进行比较分析。图2为本文算法与标准PSO算法、蚁群算法的求解CVRP(capacitated vehicle routing problem)问题数据集结果的折线图。从图2中可以看出,本文算法有明显的改进效果。
图2 求解CVRP结果对比图Fig.2 Results comparison of solving CVRP diagram
5 结 论
大多智能优化算法的改进算法在更新粒子位置时,都是将粒子的所有维度作为一个整体进行更新,从而得到一个更好的适应值。但是,这种传统的更新方式无法考虑到粒子每个维度所具有的价值,粒子不仅应该具有对外的适应价值,也应该具有自身的内在价值。本文引入智能单粒子优化算法降维更新的思想对粒子分析的基本单位从粒子到粒子维度的转变。智能单粒子优化算法采用与传统粒子群优化算法不同的勘探思路,放弃对种群的依赖,而使用一个个体在空间中勘探,传统粒子群优化算法的更新思路是将粒子的所有维数作为一个整体进行更新,这样会导致当前解中的一部分维度与最优解已经相当接近或者已经是最优,但是更新策略将整体进行更新,导致本来已经接近最优解的维度又远离了。本文将粒子的所有维度进行划分形成子矢量(即本文中的家庭)。通过算法初始化时运用k-means算法对粒子分量应用聚类,对于TSP问题经观察发现家庭初始大小取为3的效果比较好,由于2点之间的调整至少需要另外一个点。当家庭之间的好感度达到一定程度时,将会被重组成大家庭。当算法对粒子进行更新时,除了会按照访问概率对家庭间进行交流还会对家庭内部进行调整,家庭内部进行调整是对局部进行改变,家庭之间进行交流是对粒子所有维度之间的调整,不仅利用了家庭内维度关系更加密切进行更新,同时也兼顾了家庭之间的交流从而组成更大的家庭。按照算法的迭代是趋于将粒子的所有维度合并为一个大家庭,算法迭代前期粒子维度的家庭数量会相对可以提供更多的信息,后期家庭数量的减少增强了粒子家庭内部调整的力度,提供了更准确的搜索。
参考文献:
[1] KENNEDY J, EBERHART R C. Particle Swarm Optimization [C]//Proc IEEE International Conference on Neural Networks. Piscataway, NJ: IEEE Service Center, 1995: 1942-1948.
[2] 何莉,王淼,李博.面向单目标优化的集成粒子群算法 [J].重庆邮电大学学报:自然科学版, 2017, 29(4):527-534.
HE Li,WANG Miao,LI Bo. Ensemble particle swarm optimizer for single objective optimization [J].Journal of Chongqing University of Posts and Telecommunications: Natural Science Edition, 2017, 29(4):527-534.
[3] 易云飞,林郭隆,董文永,等.一种基于粒子优势分析的异步混合粒子群算法[J].小型微型计算机系统, 2015,36(6):1379-1383.
YI Yunfei, LIN Guolong, DONG Wenyong, et al. A Hybrid Particle Swarm Optimization Algorithm Based on Asynchronous Advantage Analysis of Particle [J]. Journal of Chinese Computer Systems, 2015, 36(6): 1379-1383.
[4] GONG Maoguo, WU Yue. Discrete particle swarm optimization for high-order graph matching[J].Information Sciences, 328, 2016:158-171.
[5] DONG Wenyong, ZHOU Mengchu. A Supervised Learning and Control Method to Improve Particle Swarm Optimization Algorithms[J]. IEEE Transactions on systems and cybernets, 2016, PP(99):1-14.
[6] SHI Yuhui, EBERHART R C. A modified particle swarm optimizer[C]// Proceedings of the IEEE World Congress on Computational Intelligence. Berlin Heidelberg: Springer, 1998: 69-73.
[7] SHI Yuhui, EBERHART R C. Fuzzy adaptive particle swarm optimization [C]// Proceedings of the IEEE Congress on Evolutionary Computation. Seoul, Korea: IEEE, 2001:101-106.
[8] PERAM T, VEERAMACHANENI K, MOHAN C K. Fitness-distance-ratio based particle swarm optimization [C]//Proceedings of the Swarm Intelligence Symposium. Indianapolis, Indiana, USA:[s.n.], 2003:174-181.
[9] van den BERGH F, ANDRIES P. A cooperative approach to particle swarm optimization[J].IEEE Trasactions on Evolutionary Computation, 2004, 8(3):225-239.
[10] TIZHOOSH H R. Opposition based learning: A new scheme for machine intelligence[C]//Proceedings of the International Conference on Computational Intelligence for Modelling, Control and Automation-CIMCA. Vienna, Austria: IEEE, 2005:695- 701.
[11] 喻飞,李元香,魏波,等.透镜成像反向学习策略在粒子群算法中的应用[J].电子学报,2014,2(42):230- 235.
YUFei, LI Yuanxiang, WEI Bo, et al. The Application of a Novel OBL Based on Lens Imaging Principle in PSO[J].Chinese Journal of Electronics, 2014, 42(2): 230-235.
[12] LIANG Jing, SUGANTHAN P N, DEB K. Novel composition test functions for numerical global opti mization[C]//Proceedings of the IEEE International Swarm Intelligence Symposium. Messina, Italy: IEEE, 2005:68-75.
[13] 纪震,周家锐,廖惠连,等.智能单粒子优化算法[J].计算机学报,2010,33(3): 556- 561.
JI Zhen, ZHOUJiarui, LIAO Huilian. A Novel Intelligent Single Particle Optimizer[J].Chinese Journal of Computers, 2010,33(3):556- 561.
[14] 易云飞,苗剑,林郭隆,等.基于牛顿力学和博弈论模型的粒子网络优化算法[J].山东大学学报:工学版, 2017, 47(1): 27-36.
YI Yunfei, MIAO Jian, LIN Guolong, et al. Particle network optimization algorithm based on Newtonian mechanics and game theory model[J]. Journal of Shandong University: Engineering Science, 2017, 47(1): 27-36.
[15] DAS S, SUGANTHAN P N. Differential evolution: A survey of the state-of-the-art[J]. IEEE Transactions on Evolutionary Computation, 2011, 15(1):4-31.
[16] EUSUFF M M, LANSEY K E. Optimization of water distribution network design using the shuffled frog leaping algorithm[J]. J of water Resources Planning and Management, 2003,129(3): 210-225.
[17] KARABOGA D, BASTURK B. A powerful and efficient algorithm for numerical function optimization: artificial bee colony (ABC) algorithm [J]. Journal of Global Optimization, 2007, 39(3):459-471.
[18] RASHEDI E, NEZAMABADI-POUR H. A Gravitational Search Algorithm[J]. Information Science, 2009,179 (13):2232-2248.
[19] 饶卫振,金淳,陆林涛.考虑边位置信息的求解ETSP问题改进贪婪算法[J].计算机学报, 2013, 36(4):836-850.
RAO Weizhen, JIN Chun, LU Lintao. An Improved Greedy Algorithm with information of Edges’ Location for Solving the Euclidean Traveling Salesman Problem[J]. Chinese Journal of Computers, 2013, 36(4): 836-850.
[20] 郑伟,王磊,曹建蜀.改进DPSO算法求解仿真任务调度问题[J].信号处理, 2015,31(4):474-482.
ZHENG Wei, WANG Lei, CAO Jianshu. Apply Modified Discrete Particle Swarm Optimization Algorithm to Solve Simulation Task Scheduling[J]. Journal of signal processing, 2015, 31(4):474-482.