您当前的位置:首页 > 计算机论文>计算机应用论文

求解非线性方程组的量子行为粒子群算法

2015-07-07 09:28 来源:学术参考网 作者:未知

  摘要:介绍了利用量子行为粒子群算法解决非线性方程组的问题。求方程组的解归结为一个最优化问题,当方程组有多个解时,它的适应值函数就是具有多个最优解的多峰函数。为此,引进一种物种形成原理算法,该算法根据群体微粒的相似度并行地分成子群体。每个子群体是围绕一个群体种子而建立的。对每个子群体进行qpso最优搜索,从而保证方程组中每个可能的解都能被搜索到,具有良好的局部寻优特性。对几个重要的测试函数进行仿真实验,结果证明了所用算法可以保证找到方程组所有的解,并且具有很好的精确度。
  关键词:粒子群算法; 量子行为粒子群算法; 非线性方程组; 物种形成原理

  0引言
  
  方程组的求解是数值代数的基本问题之一,许多自然生活和工程科学的计算问题最后都可归结为求解方程组;因此,对方程组的解法的研究具有重要的意义。方程组可以分为线性方程组和非线性方程组。传统求解方程组的数值解法分为直接法和迭代法。如果考虑时间约束条件,在实时系统中现存的数值解法都可能无法对方程组进行精确求解。为此利用进化算法使用计算机模拟大自然的进化过程,可以求解许多传统数值计算方法难以解决的复杂问题。由于求方程组的解归结为一个最优化问题,当方程组有多个解时,它的适应值函数就是具有多个最优解的多峰函数。求具有多个解的方程组问题就可以转换为对多峰函数寻优的问题。
  粒子群(particle swarm optimization,pso)算法和量子行为粒子群(quantum-behaved particle swarm optimization, qpso)算法都属于进化算法,它们都具有群体智能、迭代过程相对简单和收敛速度较快等优点。WWw.133229.CoM其中qpso是全局收敛的而pso却不能保证收敛到全局最优解[1]。本文在qpso算法的基础上引进物种形成原理算法(speciation algorithm),提出了改进的基于物种形成的qpso算法,即sqpso(species-based qpso)算法。在算法中将粒子群动态并行划分为不同的子群。这种物种形成原理算法与li j.等人研究的利用遗传算法实现多峰优化问题[2]相似。它将粒子群系统中的粒子根据相似度进行划分,并将每个子群中拥有局部最优值的粒子作为该子群的种子,而种子的局部最优值被设为该子群的全局最优值。这样就使得每个子群中的粒子都收敛于该子群的局部最优值,而不是全部收敛于粒子系统中的一个全局最优值。因此这样就可以并行地产生子群,从而有效地进行多峰寻优。
  
  1pso算法及带惯性权重的pso算法
  
  pso算法最早是在1995年由美国社会心理学家james kennedy和电气工程师russell eberhart共同提出的[3],源于对鸟群捕食的行为研究。pso中,每个优化问题的解都是搜索空间中的一只鸟,称之为粒子。所有的粒子都有一个由被优化的函数决定的适应值(fitness value),每个粒子还有一个速度决定它们飞翔的方向和距离。粒子们就追随当前的最优粒子在解空间中搜索。pso初始化为一群随机粒子(随机解),然后通过迭代找到最优解。在每一次迭代中,粒子通过跟踪两个极值来更新自己。第一个就是粒子本身所找到的最优解。这个解叫做个体极值pbest;另一个极值是整个种群目前找到的最优解,这个极值是全局极值gbest。另外也可以不用整个种群而只是用其中一部分最好粒子的邻居,那么在所有邻居中的极值就是局部极值lbest[4,5]。在找到这两个最优值时, 粒子根据如下的公式来更新自己的速度和新的位置。
  
  2qpso算法
  
  pso是基于种群的进化搜索技术,但是所有基本的和改进的pso算法不能保证算法的全局收敛[1],因为pso的进化方程式使所有粒子在一个有限的样本空间中搜索。根据粒子群的基本收敛性质,受量子物理基本理论的启发,本文提出了一种新的能保证全局收敛的粒子群算法——qpso算法[7,8]是对整个pso算法进化搜索策略的改变,并且进化方程中不需要速度向量,进化方程的形式更简单、参数更少且更容易控制。qpso算法在搜索能力上优于所有已开发的pso算法。
  
  在qpso算法中,粒子的状态只需用位置向量来描述,并且算法中只有一个收缩扩张系数β,对这个参数的选择和控制是非常重要的,它关系到整个算法的收敛性能。 
  
  3方程组的适应值函数
  
  为了求方程组,通常可以将求解的适应值函数定义为
  
  4物种形成原理算法
  
  方程组具有多个解时,适应值函数就是具有多个最优值的多峰函数。为了实现对多峰函数寻优,引进一种物种形成原理算法。这个算法将粒子群系统中相似的微粒并行地划分成子群体,一个子群就是一类具有相似特点的粒子集合。每个子群体中的粒子都围绕在本群体中具有最优适应值的粒子周围,该粒子称为种子(seed)。利用两个微粒间的欧氏距离来判断它们之间的相似程度,距离越远,则两个微粒间的相似度越低。
  
  采用li j.等人介绍的方法[2]确定一个子群种子的算法。每次迭代都使用这种算法后,就可以为不同的子群确立各自的种子,然后分别将种子的局部最优值设为该子群的全局最优值。确定种子的算法流程如下:
  
  5sqpso和species-based pso(spso)算法
  
  一旦确定好每个子群的种子后,在每个子群中,种子的最优值就是同一子群中其他粒子的全局最优值,这样sqpso算法可以表示为:

  (1)初始化种群的每个粒子的位置向量;
  (2)计算所有粒子的适应值;
  (3)根据粒子适应值由高到低的顺序排列粒子;
  (4)对当前所有粒子确定子群种子;
  (5)将种子的最优值确定为其所在子群中所有粒子的全局最优值;
  (6)根据式(7)、(8)改变粒子的位置;
  (7)转(2),直至条件满足。
  spso算法可以表示为:
  (1)初始化种群的每个粒子的位置向量;
  (2)计算所有粒子的适应值;
  (3)根据粒子适应值由高到低的顺序排列粒子;
  (4)对当前所有粒子确定子群种子;
  (5)将种子的最优值确定为其所在子群中所有粒子的全局最优值;
  (6)根据式(3)、(4)或(5)改变粒子的位置;
  (7)转(2),直至条件满足。
  对这两个算法说明如下:
  (1)在算法中每一次迭代确定的种子总是那个子群中适应值最好的粒子。
  (2)运行结束后得到的种子数组就是要求解的峰值点值。如果全局最优值只有一个,那么第一个种子就是全局最优点值。
  
  6实验结果
  
  表2给出了对每个系统分别使用gbest、lbest、spso和sqpso进行求解的结果。从表2可以看出,当方程组有多个解时,gbest模式pso算法或lbest模式pso算法都无法找到所有解,本文提出的算法spso和sqpso对于所有的测试方程组都能找到所有解。用这两种算法求得的解所得到的适应值都十分接近零,所有的实验结果都收敛于一个很接近零的解。表3给出了使用各种方法所得解的平均误差。可以看出spso和sqpso比使用gbest和pbest的pso算法具有更好的精度值。由表4可知,sqpso算法优化在训练集上的平均误差小于spso算法优化的状态估计。
  
  
  7结束语
  
  本文在qpso算法的基础上使用物种形成的概念,提出了一种sqpso算法用来实现求解具有多个解的方程组。并将sqpso算法和基于pso算法的spso算法以及gbest模式和lbest模式的pso算法进行了性能比较。通过对一系列广泛使用的方程组(一个解或多个解)进行仿真实验,可以证明当方程组具有多个解时,gbest_pso和lbest_pso算法不能求得所有解,而spso算法和sqpso算法是有效的,并且具有更高精度值的解。同时从实验中也证明sqpso算法的收敛能力优于spso算法,其精确度更高。
  
  参考文献:
  [1]bergh f v.an analysis of particle swarm optimizers[d].[s.l.]:university of pretoria,2001.
  [2]li j, balazs m e, parks g t,et al. a species conserving genetic algorithm for multimodal function optimization[j].evolutionary computation,2003,10(3):207-234.
  [3]kennedy j,eberhart r c.particle swarm optimization:procee-dings of the ieee international joint conference on neural networks[c].[s.l.]:[s.n.],1995:1942-1948.
  [4]kennedyj,worlds s,minds m j.effects of neighborhood topo-logy on particle swarm performance:proceedings of the congress on evolutionary computation[c].[s.l.]:[s.n.],1999:1931-1938.
  [5]suganthan p n.particle swarm optimizer with neighborhood optimizer:proceedings of the congress on evolutionary computation[c].[s.l.]:[s.n.],1999:1958-1961.
  [6]shi y,eberhart r c.a modified particle swarm:proc.of the ieee international conference on evolutionary computation[c].[s.l.]:[s.n.],1998:1945-1950.
  [7]sun jun, xu wenbo. a global search strategy of quantum-behaved particle swarm optimization:proceedings of ieee conference on cybernetics and intelligent systems[c].[s.l.]:[s.n.],2004:111-116
  [8]sun jun, feng bin, xu wenbo. particle swarm optimization with particles having quantum behavior:proceedings of the congress on evolutionary computation[c].[s.l]:[s.n.],2004:325-331.
相关文章
学术参考网 · 手机版
https://m.lw881.com/
首页