收稿日期:20050518;修回日期:20050816。
基金项目:武汉理工大学校基金(X JJ2004113);U IRT 计划(A156,A157)资助课题作者简介:高飞(1976),男,博士研究生,主要研究方向为最优化理论与方法,计算流体力学。
E 2mail :gaofei @基于改进粒子群优化的非线性最小二乘估计高 飞,童恒庆(武汉理工大学数学系,湖北武汉430070) 摘 要:针对测量数据处理中非线性模型参数估计理论广泛使用的传统牛顿类算法对初值的敏感性问题,提出了一种求解非线性最小二乘估计的改进粒子群优化算法。
该算法利用均匀设计方法在可行域内产生初始群体,无需未知参数θ的较好的近似作为迭代初值,而具有大范围收敛的性质;通过偏转、拉伸目标函数有效地抑制了粒子群优化算法易收敛到局部最优的缺陷。
给出应用该方法到NL SE 的具体步骤,通过仿真实验证明该算法的有效性。
关键词:统计学;参数估计;粒子群优化算法;非线性最小二乘估计中图分类号:TP301 文献标识码:ANonlinear least squares estimation based on improvedparticle sw arm optimizationG AO Fei ,TON G Heng 2qing(Dept.of Mathematics ,W uhan U niv.of Technology ,W uhan 430070,China ) Abstract :To investigate the sensitivity of the traditional Newton methods widely used in the theory of nonlinear least squares estimation (NLSE )in geodesic data processing to the initial point ,an improved particle swarm optimiza 2tion (PSO )algorithm is proposed.It generates the initial population in feasible field by uniform design method ,so it has the property of convergence in large scale without better approximation of the unknown parameter θas iterative ini 2tial point.It restrains PSO ’s local convergence limitation efficiently by deflection and stretching of objective function.Finally the detailled steps of the proposed method for NLSE are given ,and experiments done show the improved tech 2nique ’s effectiveness.K ey w ords :statistics ;parameter estimation ;particle swarm optimization ;nonlinear least squares estimation0 引 言 始于20世纪60年代的关于非线性模型参数估计理论的研究,直到1980年以后,Bates 和Watts 引入曲率度量以后,才得到较快的发展。
对于一些复杂的非线性模型,传统的方法如:直接搜索法、复合形法、梯度法、变尺度法等往往只对某一类特定问题有效,且对模型的限制比较多,如可导、单峰等特性。
要在测量数据处理中广泛使用非线性模型参数估计理论,必须进行大量深入细致的工作,寻找通用有效的算法[1-2]。
随研究的深入,我们发现群集智能研究的新进展粒子群优化(particle swarm optimization ,PSO )算法有其独特的优势[3-6],采用该算法的非线性最小二乘估计(nonlinear least squares es 2timation ,NLSE )问题能得到非常好的计算结果。
PSO 由Eberhart 和K ennedy 于1995年提出,起源于对一个简化社会模型的仿真,和人工生命理论以及鸟类或鱼类的群集现象有十分明显的联系;作为一种高效并行优化方法,已经得到了众多学者的重视和研究,可用于求解大量非线性、不可微和多峰值的复杂优化问题;而且其程序实现简洁,需要调整的参数少,发展很快,已应用于多个科学和工程领域[3-4]。
同时,鉴于PSO 收敛性能的局限,很多学者都致力于提高PSO 算法的性能[5-6]。
本文尝试探讨非线性最小二乘估计的相关理论,采用均匀设计方法设计群体[7]、偏转目标函数[8]以改善PSO 的收敛性能,在此基础上采用PSO 的求解非线性最小二乘估计问题,数值算例进一步说明了本文的主要结果。
1 非线性最小二乘估计已知{(X i ,Y i ),i =1,…,n}是模型的一组观测值,假第28卷 第5期系统工程与电子技术Vol.28 No.52006年5月Systems Engineering and Electronics May 2006 文章编号:10012506X (2006)0520775204定主要误差出现在变量Y的观测上,曲线拟合就是用数学分析的方法从观测数据中求得模型的最佳表达式。
设观测值Yi 的偏差δYi=Y i-f(X i,θ),i=1,…,n,偏差向量V=(δY1,…,δY n)T,记f i(θ)=f(X i,θ),f(θ)= (f1(θ),…,f n(θ))T,Y=(Y1,…,Y n)T,最小二乘法假定偏差独立服从同一正态分布,用最小二乘估计^θ=arg min V T V估计未知参数θ。
设观测值的权矩阵为n×n的对称正定矩阵P,则未知参数θ的非线性最小二乘估计为^θ=arg min V T PV又因为V T PV=(δY1,…,δY n)P(δY1,…,δY n)T=(f(θ)-Y)T P(f(θ)-Y)=(f(θ))T P(f(θ)-2Y)+Y T P Y且Y T P Y是常数,从而min(f(θ))T P(f(θ)-2Y)等价于min V T PV,所以θ的非线性最小二乘估计为^θ=arg min (f(θ))T P(f(θ)-2Y)。
用此方法确定的模型的可靠程度与观测值Yi 的偏差δi的大小有密切联系。
而且最小二乘法中常用的方法如:直接搜索法、梯度法、变尺度法、G auss2Newton法等虽具有收敛速度快的优点,但往往只对某些特定问题有效,存在计算复杂、预处理量大、不易收敛、对迭代初值敏感性大的缺点[1-2,8]。
2 粒子群优化算法及改进在分析PSO理论基础、实现方式的基础上,结合在计算数学中的一些常用手段,从初始点集的选取和目标函数的处理两个方面对PSO进行改进。
2.1 粒子群优化算法PSO是一种相对较新的基于群体的演化计算方法(EA),根据对环境的适应度将群体中的个体移动到好的区域;将每个个体看作D维搜索空间中的一个没有体积的微粒(点),所有的粒子都有一个由被优化的函数决定的适应值,主要特点为:(1)每一粒子都被赋予了初始随机速度并在解空间中流动;(2)个体具有记忆功能;(3)个体的进化主要是它本身的飞行经验以及同伴的飞行经验进行动态调整,通过迭代找到最优解[5-6]。
设k时刻,第i个微粒(i=1,…,M)表示为Xi(k)= (x i,1(k),…,x i,D(k)),它经历过的最好位置记为p best=P i (k)=(p i,1(k),…,p i,D(k));在群体所有微粒经历过的当前最好位置的索引号表示为g best=Q g(k)=((q g,1(k),…, q g,D(k));微粒i的速度用V i(k)=(v i,1(k),…,v i,D(k))表示。
设w为惯性权重,c1认知加速常数,c2为社会加速常数,rand(a,b)产生在[a,b]范围内变化的随机数,χ∈(0,1]为收缩因子,速度V i(t)被一个最大速度V M限制:如果当前对微粒的加速导致它在某维的速度vi,d ≤V Md,则vi,d:=V M d[3-4];X i(t)的第d维(1≤d≤D)根据如下方程[3]变化Tp i,d(k)=rand(0,c1)×[p i,d(k)-x i,d(k)]Tq i,d(k)=rand(0,c2)×[q g,d(k)-x i,d(k)]v i,d(k+1)=χ[w×v i,d(k)+Tp i,d(k)+Tq i,d(k)] x i,d(k+1)=x i,d(k)+v i,d(k+1) 按上述思想的PSO是全局版的,虽然收敛快,但有时会陷入局部最优。
而局部版PSO通过保持多个吸引子来避免早熟,对每一个粒子Xi:把所有粒子按序号排成一圈, X i两侧的各l个粒子和X i组成的共2×l+1个粒子的集合称为Xi的环状邻域Ni,从N i中选出最好的,标记为l best=L i(t)=(l i,1(t),…,l i,D(t)),设c3为邻域加速常数,其他参数与全局版PSO相同;Xi(t)的第d维(1≤d≤D)根据如下方程[5]变化Tl i,d(k)=rand(0,c3)×[l i,d(k)-x i,d(k)]tem p=w・v i,d(k)+Tp i,d(k)+Tq i,d(k)+Tl i,d(k) v i,d(k+1)=χ・tem px i,d(k+1)=x i,d(k)+v i,d(k+1) 实验表明,局部版比全局版收敛慢,但不容易陷入局部最优[5-6]。
PSO的优势在于算法的简洁性,易于实现,参数调整少,无需梯度信息;是非线性连续优化问题、组合优化问题的有效优化工具,已经广泛应用于函数优化、神经网络训练、车间作业调度、等[3,6]。
2.2 改进策略PSO与遗传算法(genetic algorithms,G A)的信息共享机制并不同的:G A的整个种群比较均匀的向最优区域移动;而在PSO中,只有g best(或l best)传递信息给其他粒子,更新过程是跟随当前最优解的单向过程。
而且,PSO算法对种群大小不十分敏感。
虽然在算法的早期,PSO收敛快,但若c2、V M等参数太大,粒子群可能错过最优解,造成不收敛;即使在收敛的情况下,由于粒子群趋于同一化,算法后期收敛速度明显变慢,同时算法收敛到一定精度时,无法继续优化;因此很多学者都致力于改进PSO算法,如:惯性权重法、压缩因子法、空间邻域法、社会趋同法、动态目标函数法、协同法、结合复杂系统的自组织临界性等[5-6]。