基于并行遗传重采样的粒子滤波技术的制作方法

文档序号:7516917阅读:333来源:国知局
专利名称:基于并行遗传重采样的粒子滤波技术的制作方法
技术领域
本发明涉及非线性滤波算法领域,具体涉及一种采用并行遗传算法进行重采样的 粒子滤波方法。
背景技术
粒子滤波算法是基于贝叶斯采样估计的序贯重要采样(SIS Sequential ImportanceSampling)滤波思想,Hammersley等在20世纪50年代末就提出了基本的SIS 方法,并在60年代得到了进一步发展。但由于上述研究始终未能解决粒子匮乏现象以及计 算量约束等问题,因此未引起人们的重视。直到八十年代末,计算机计算能力的进一步提升 以及1993年一种新的基于SIS的自举(Bootstrap)非线性滤波器方法被Gordon等人提出, 才真正为粒子滤波算法的广泛研究与实际应用奠定了基础。粒子滤波具有适用于非线性系统及非高斯噪声环境的优点,因而被逐渐应用于视 觉影像跟踪、信号跟踪、语音音频信号增强、机器人控制、故障诊断和导航定位等诸多领域。不过,由于粒子滤波自身存在退化现象及因简单随机重采样引起的匮乏现象,仍 然制约着其在实际问题中广泛应用。因此,面对这些问题也提出了诸多其它的解决方法。国内外学者一直关注粒子滤波算法的改进,为了解决粒子的退化以及匮乏现象, 一些学者试图利用进化算法来改善粒子滤波算法的性能。Clapp等将模拟退火思想引入粒 子滤波中,提出了模拟退火粒子滤波,该算法引入退火重要性采样和中间分布的概念,改善 了出现先验尾部观测值时的算法性能。Torma将局部搜索的思想引入粒子滤波的采用过程 中,可以解决观测比较准确情况下粒子滤波的耗尽问题。由于遗传算法和序列蒙特卡罗重 要性采样有些类似,Ronghua等提出将遗传算法(GA=Genetic Algorithm)和粒子滤波相结 合的方法,使得采用后的粒子的多样性更好。从近些年的研究状况来看,将包括遗传算法在内的进化算法与粒子滤波相结合是 提高滤波性能的发展趋势,在故障检测、目标跟踪、运动状态估计、机器人控制方面都有很 高的研究价值与应用前景。在遗传算法的应用过程中,一个比较突出的问题是它容易产生早熟现象,这将严 重影响遗传算法的应用效果。另一方面,遗传算法与粒子滤波结合使用时,由于需要对较大 规模的粒子群体进行遗传操作,从而使得算法的进化过程缓慢,为提高遗传算法进行速度 通常引入并行遗传算法,不仅提高了运算速度,也有维持群体多样性的能力,从而可以一定 程度上抑制早熟现象的发生。不过,并行遗传算法需运行于并行机或局域网上,这对于很多 无实时性要求的问题并无必要,因此当遇到这样的问题时,可以利用并行遗传算法的思想, 对简单遗传算法进行改进,设计伪并行遗传算法并与粒子滤波相结合,不但可有效克服早 熟现象,而且进一步扩展了算法的应用范围。

发明内容
本发明的目的在于利用并行遗传算法改进粒子滤波,抑制其退化现象及因简单随机重采样引起的粒子匮乏问题,提高粒子多样性及自适应性,进而改善粒子滤波的性能精 度。同时由于采用了并行遗传算法,也有效的提高了粒子滤波器的计算效率,改善了滤波实 时性。本发明的目的是通过以下技术方案来实现为解决上述技术问题,本发明提出了一种基于并行遗传重采样的粒子滤波方法, 根据本时刻得到的重要性采样粒子,生成新的粒子集,所述方法包括如下步骤
1、设定初始种群并围绕重要性分布函数即系统状态转移概率分布函数进行采样, 从而产生由粒子个体组成的集合作为初始群体;2、按信息交换模型划分初始群体,分组计算个体的适应度并对划分的各子群体进 行独立的遗传选择、交叉、变异操作;3、经过遗传操作后,再计算各群体中个体的适应度并根据信息交换模型产生新一 代的群体,设定一定的进化终止条件,当满足时则输出优化结束,否则进入下一代的遗传操作。本发明的有益效果主要体现在本发明提供了一种改进的粒子滤波器,利用并行 遗传算法对粒子群体进行优化,引导其向状态高似然区移动,同时能够抑制粒子滤波的退 化现象,保证粒子的多样性及适应性,改善粒子匮乏问题,进在一定程度上提高了算法的效 率,从而改善了粒子滤波的综合应用性能。


图1是根据本发明的实施例所述的基于并行遗传重采样的粒子滤波器的流程示 意图;图2是根据本发明的实施例所述的基于并行遗传重采样的粒子群体优化实现方 法流程图。
具体实施例方式粒子滤波是通过寻找一组在状态空间传播的随机样本对概率密度函数近似,以样 本均值代替积分运算,从而获得状态最小方差估计的过程。通常最优重要性分布可能无法 解析或采样,因此便需要构建重要性分布,一般自举粒子滤波器采用状态转移分布作为重 要性函数,但由于未利用最近的观测信息,使得其主要依赖于系统模型,与实际后验分布并 不完全符合,尤其当观测数据出现在转移概率的尾部或似然函数与转移概率相比过于集中 时,滤波器有可能失效,这也是引起粒子滤波退化现象的重要原因。遗传算法是模仿自然界生物遗传与进化原理而开发出的一种多参数、多个体同时 优化方法。利用遗传进化原理对重要性采样得到的粒子群体进行优化,通过遗传选择、交 叉、变异操作,淘汰不良个体,产生优良个体,辅助粒子群体向高似然区移动,从而可以有效 的抑制退化现象。另外,由于简单遗传算法是一种随机的方法,旨在对多个不同的个体来进行隐含 并行寻优的过程,有可能使各个个体在未达到最优点之前就停留在某一个局部最优点,而 导致其染色体趋于一致。这时产生新个体能力最强的交叉算子不再起作用,从而产生早熟 现象。为克服早熟现象,在简单遗传算法中利用并行遗传算法的思想,将群体划分为一些子群体,各子群体按一定的模式分别进行独立进化,在适当的时候,某些子群体之间交换一些 信息。这样可以维持群体的多样性,从而达到抑制早熟现象的效果。这便是并行遗传算法 的基本思想,通常划分的这些子群体在不同的处理机上独立进化。若只具备单个处理机,则 可应用伪并行遗传算法分段串行执行子群体的进化,可达到相同效果。因此,本发明针对粒子滤波存在的退化现象及粒子匮乏问题,利用进化思想采用 遗传算法,引导重要性采样粒子向高似然区域移动,来达到抑制退化的目的,应用并行遗传 算法与粒子滤波相结合,进一步解决遗传算法的早熟现象,设计基于并行遗传重采样的粒 子滤波器,图1即为基于并行遗传重采样的粒子滤波器的实现方法流程示意图。以下结合附图详细说明本发明的具体实施方式
。这里设定非线性离散系统运动及观测模型如下状态模型Xk = f (Xh,WH),观测模型、=11( ,。。其中f、h分别为系统的运动与观测模型方程,xk,Zk分别表示k时刻的状态与观测 向量,而Wk、vk分别表示k时刻的系统与观测噪声。以下将针对该模型对滤波算法过程进行 说明。基于并行遗传重采样的粒子滤波过程如下1、初始化时刻k = 0a)初始粒子<formula>formula see original document page 5</formula>
其中Xt/表示初始时刻第i个采样粒子,ρ (X0)表示初始化粒子分布,Ns为采样粒 子数;b)计算粒子权重<formula>formula see original document page 5</formula>其中ω A ^c/表示初始时刻第i个采样粒子的权重及归一化权重,P(ZtlIxtl)表示 初始粒子概率分布函数;2、外推更新时刻k> 0 ;a)围绕状态转移概率密度P (Xk+/I Xki)进行粒子采样,从中产生新的粒子Xk+/
q (Xk+, I Xk1);b)计算新采样粒子的权重(1)c)对权值ω:进行归一化为^<formula>formula see original document page 5</formula>
3、利用并行遗传重采样算法对粒子群进行优化,将粒子群体搬移到高似然区,更 新粒子为{x;,^} —4、最后得到结果 <formula>formula see original document page 5</formula>
<formula>formula see original document page 5</formula>
本发明在粒子滤波器完成外推更新后,利用并行遗传算法对粒子群体进行优化, 引导粒子群体向高似然区移动从而抑制了退化现象的发生,另外并行算法的应用也可以在 一定程度上克服简单遗传算法的早熟问题。在效果上并行遗传算法的应用实际上起到了与 优选重要性分布及重采样相同的效果,这也避免了粒子匮乏问题的出现。图2所示即为基 于并行遗传算法的粒子群体优化算法流程。并行遗传算法粒子群体优化的算法过程如下1、遗传代数计数器初始化t = 0 ;2、由重要性采样得到的Ns个粒子作为初始群体G(t),按信息交换模型划分G(t) 为子群体G(t) = (G1 (t),G2 (t),…,Gi (t), . . .,Gn(t)}其中,η为分组个数,分组数由并行运算单元的个数而定,每组的粒子个数为Ns/ η ;3、分组计算各Gi (t) (i = 1,2,... ,η)中个体的适应度;4、对各Gi (t) (i = 1,2,· · ·,η)进行分组独立进化;a)由选择算子对Gi(t)(i = 1,2, . . . , η)进行选择操作得到新的粒子群体 Gi' (t) =Gi'⑴ 一 selection [Gi ⑴];b)由交叉算子对Gi' (t)(i = 1,2, ...,η)进行交叉操作得到新的粒子群体 Gi" (t) =Gi" (t) 一 crossover [Gi' (t)];c)由变异算子对Gi" (t)(i = 1,2, ...,η)进行变异操作得到新的粒子群体 Gi" ‘ (t) =Gi “ ‘ (t) — mutation [Gi" (t)];5、分组计算各Gi" ‘ (t) (i = 1,2,···,n)中个体的适应度;6、由信息交换模型进行各Gi (t) (i = 1,2,.. . ,η)之间的信息交换,得到下一代群 体Gi (t+Ι) — exchange [G(t),Gi" ‘ (t)]子群体之间信息交换采用岛屿模型;7、终止条件判断。可设定中止条件为种群适应度达到设定门限或进化到达一定代 数,若不满足终止条件,则t = t+1转向第4步;若满足终止条件,则输出优化结果,算法结束。上述方法中初始群体的划分及子群体信息交换模型方法,以及每个子群体进行遗 传选择、交叉、变异进化操作所采取的具体步骤如下1、初始群体的划分及子群体的信息交换对于并行遗传算法,对群体的划分及子群体的信息交换对于进化结果会产生一定 影响,在此使用的信息交换模型为岛屿模型。a)岛屿模型要求每个子群体所含个体数量多于1,各个子群体并行独立进化,因 此随机的将初始群体分为等量的多个子群体分别独立进行遗传进化操作;b)在遗传进化操作过程中,每个子群体分别在不同的处理机上进行独立的遗传进 化操作,以随机间隔随机在不同处理机上的子群体之间交换个体信息,即随机的将某一子 群体中的最佳个体复制到其他的子种群中去;c)对就单处理机进行伪并行遗传操作时,可为每个子群体随机划分大小不等的进化时间片后串行操作,所有子群体完成本时间片的进化后,再进行信息交换。2、选择算子通过选择算子从当前粒子群体中选择出比较优良的粒子个体,并将其复制到下一代中,这里应用比例选择算子,亦即轮盘赌法,同时结合最优保存策略。a)计算出群体中所有个体的适应度总和;b)计算出每个个体相对适应度大小,即各个个体被遗传到下一代群体中的概率;c)模拟赌盘操作来确定各个个体是否被选中。根据选择率来模拟构造出每个个体 的所占区域,相当于轮盘中的扇面。每个个体包含选择范围上下限AiDnin, max],随机生成 在W,l]空间均勻分布的随机小数Y e
ο判断Y落在哪个个体选择范围A内,则该 个体被选中。d)找出当前群体中适应度最高的个体和适应度最低的个体。e)若当前群体中最佳个体的适应度比总的迄今为止的最好个体的适应度还要高, 则以当前群体中的最佳个体作为新的迄今为止的最好个体。f)用迄今为止的最好个体替换掉当前群体中的最差个体。3、交叉算子设定交叉概率p。,对群体中的个体进化随机配对,每对配对的个体Xi和\之间按 概率进行算术交叉
fx' = ax, +(I-Qf)Xi1 \ [(5) Xj = Ocxi + (1 — a)Xj式中α是线性组合系数,为W,l]区间内产生的随机小数,Xi、Xi'分别表示交叉 前后第i个个体的状态。4、变异算子设定变异概率pm,产生W,l]区间随机数δ,判断若δ小于pm,则发生变异。这 时在[xmin,x_]内产生一个随机粒子来替换原来的粒子。即Xi' = Xmin+β (Xmax-Xmin)(6)式中β为
区间内产生的随机小数。变异概率Pm的设定将对子代的种群产 生影响,变异概率越大则子代相对于父代种群粒子的随机变化越大;Xmin、Xfflax分别表示种群 中存在的状态最小个体及最大个体,Xi"分别表示变异后第i个个体的状态。综上所述,本发明通过在粒子滤波重采样过程中利用并行遗传算法对重要性采样 粒子进行优化来抑制粒子滤波的退化现象与粒子匮乏问题,同时并行遗传算法的应用可在 一定程度上解决遗传算法的“早熟”问题,从而进一步提升了粒子滤波的估计精度及对于系 统的适应性,同时也提高了算法的执行效率,是对粒子滤波器的有益改进。以上仅是本发明的具体应用范例,对本发明的保护范围不构成任何限制。其可扩 展应用于所有粒子滤波算法的应用领域,凡采用等同变换或者等效替换而形成的技术方 案,均落在本发明权利保护范围之内。
权利要求
基于并行遗传重采样算法的改进粒子滤波方法,其特征在于实现步骤如下(1)围绕初始概率分布采样得到Ns个初始粒子,并为Ns个初始粒子分别设定初始权重;(2)通过k-1时刻的Ns个粒子滤波估计,围绕状态转移概率密度进行粒子采样,从中产生新的Ns个粒子;Ns为自然数;(3)对所述Ns个粒子的初始权重分别进行权重更新,得到每个粒子的权重;(4)利用并行遗传重采样方法对粒子群进行优化,所述并行遗传重采样方法实现步骤为(4.1)由步骤(2)、(3)产生Ns个个体组成的种群为初始种群G(t),计算得到的粒子权重为初始适应度;(4.2)按信息交换模型划分G(t)为n组群体G(t)={G1(t),G2(t),…,Gi(t),…,Gn(t)},其中,n为分组个数,分组数由并行运算单元的个数而定,每组的粒子个数为Ns/n;(4.3)分组计算各Gi(t)中个体的适应度,并对各分组群体Gi(t)进行独立的遗传选择、交叉、变异操作得到各组的子代种群Gi″′(t),其中i=1,2,…,n;(4.4)分组计算各Gi″′(t)中个体的适应度,由信息交换模型进行各Gi″′(t)之间的信息交换,得到下一代群体Gi(t+1),若种群适应度或遗传代数达到设定门限,则输出计算结果,否则转到步骤(4.2),其中i=1,2,…,n;(5)对并行遗传重采样优化后的带权粒子群加权后就得到了k时刻的滤波结果。
2.根据权利要求1所述的基于并行遗传重采样算法的改进粒子滤波方法,其特征在于所述步骤(4.4)中的信息交换模型为岛屿模型,对子群体的信息交换包括如下步骤 (4. 4. 1)在遗传进化操作过程中,每个子群体分别在不同的处理机上进行独立的遗传 进化操作;(4. 4. 2)经过一定时间间隔后,随机在不同处理机上的子群体之间交换个体信息,即随 机的将某一子群体中的最佳个体复制到其他的子种群中去;(4. 4. 3)若是单处理机进行伪并行遗传操作时,可为每个子群体随机划分大小不等的 遗传操作时间片后串行操作,所有子群体完成本时间片的遗传操作后,再进行信息交换。
全文摘要
基于并行遗传重采样的粒子滤波方法,(1)围绕初始概率分布采样得到初始粒子,并设定初始权重;(2)通过k-1时刻的M个粒子滤波估计,围绕状态转移概率密度进行粒子采样,从中产生新的M个粒子;M为自然数;(3)对这M个粒子分别进行权重更新,得到每个粒子的权重;(4)利用并行遗传重采样算法对粒子群进行优化。本发明改进粒子滤波,抑制其退化现象及因简单随机重采样引起的粒子匮乏问题,提高粒子多样性及自适应性,进而改善粒子滤波的性能精度。
文档编号H03H17/00GK101807900SQ20101012162
公开日2010年8月18日 申请日期2010年3月10日 优先权日2010年3月10日
发明者丛丽, 李子昱, 秦红磊 申请人:北京航空航天大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1