本文简要介绍了无线传感器网络的特点,引出并归纳了粒子群算法的原理及特点,详细阐述了基本粒子群算法及其流程。然后,重点介绍了目前部分研究学者如何改进粒子群算法并应用于无线传感器网络,指出学术界在基于改进粒子群算法的WSNs路由协议方面的异同点。 This paper briefly introduces the characteristics of the wireless sensor network, introduces the principle and characteristics of the particle swarm algorithm, and expounds the basic particle swarm optimization algorithm and its process. Then, it focuses on how to improve the particle swarm optimization algorithm and apply it to wireless sensor networks, and points out the dif-ferences in the WSNs routing protocol based on the improved particle swarm optimization algo-rithm.
刘琮1,陈战胜1,2*
1北京联合大学应用科技学院,北京
2北京交通大学计算机与信息技术学院,北京
收稿日期:2015年11月2日;录用日期:2015年11月19日;发布日期:2015年11月24日
本文简要介绍了无线传感器网络的特点,引出并归纳了粒子群算法的原理及特点,详细阐述了基本粒子群算法及其流程。然后,重点介绍了目前部分研究学者如何改进粒子群算法并应用于无线传感器网络,指出学术界在基于改进粒子群算法的WSNs路由协议方面的异同点。
关键词 :无线传感器网络,粒子群算法,路由协议
无线传感网络(Wireless Sensor Networks, WSNs)集成了通信、传感器和分布式信息处理技术,通过大量微型传感器节点以多跳或单跳通信方式组成的网络。WSNs通常部署在危险环境中,传感器节点所携带的能量有限且难以补充,因此能量消耗成为影响WSNs生命期的重要因素,如何均衡高效的利用传感器节点有限能量成为研究热点之一。其中,网络层路由协议是WSNs中采集数据在网络中可靠、有效传输的关键。
近年来,研究学者们利用蚁群算法、遗传算法、粒子群优化算法的无线传感器网络路由优化方法,通过群体中个体协作、分布式计算,在加快寻优速度的同时提高路由效率。其中,粒子群优化算法(Particle Swarm Optimization, PSO)由于参数少,易实现而得到了广泛应用,然而基本粒子群算法在WSNs路由优化过程中存在易于停滞和陷入局部最优的不足,难以获得全局最优。针对基本粒子群算法的不足,众多研究学者不断改进粒子群算法在WSNs路由优化中的应用,在有效均衡网络节点能耗的同时,大幅提升了WSNs的生命期。
自然界中许多生物群体在缺乏“领袖”集中指挥控制的情况下,通过生物个体本能自然简单的行为规则,经过一段相互作用的过程,整个群体会表现出异常复杂而有序的行为。诸如蚁群寻找食物,人字形飞行的雁群,池中聚集于食物浓度高的鱼群等。在分析借鉴自然界生物群体行为特点基础上,研究学者提出了一系列具有较强适应性、较好并行性和收敛性的群体智能优化算法。与传统的优化算法相比,群体智能优化算法不需要严格的数学模型,其评估函数和约束条件也不需要精确的数学描述,具有自适应、鲁棒性、并行性和全局搜索的优点。
其中,PSO算法是一种新兴的群体智能优化算法。PSO通过随机初始化一群粒子,利用粒子自身学习经验的不断累积和粒子之间形成的社会协作,在搜索空间中并行的不断调整速度进行搜索全局最优解。
在任意的空间区域内存在一块食物,鸟群中每只鸟都知道自身当前所处的位置,能够预测自身与食物之间的距离,但是在鸟群随机搜索开始,所有鸟都不确定食物的准确位置。那么,鸟群是如何实现食物位置的快速定位呢?研究人员经过长期深入研究,发现鸟群的生物行为有如下特点,介绍如下。
(1) 时聚时分。自然界中鸟群在搜索过程中会不时的改变飞行方向,呈现有时分散有时聚拢的现象。
(2) 邻域自适应。自然界中鸟群在搜索食物过程中,每只鸟的飞行动态受周围有限数量邻居的影响,它会结合自身经验追随邻居进行自适应调整。
(3) 群体一致性。在搜索食物过程中,每一只鸟的飞行动态是无法预测的,但是鸟群的整体行为保持大体一致,呈现出鸟群整体搜索在似乎某个控制中心下以个体简单飞行规则实现了复杂的全局搜索。
受自然界中鸟群捕食行为的启发,Eberhart和Kennedy两名博士于1995年提出了一种粒子群优化算法-PSO,该算法是一种新兴的群体智能优化算法。PSO在求解优化问题时,每一只鸟比作粒子,问题的解比作粒子的位置,初始化时粒子具有自身的速度和位置,并用适应度函数来衡量每个粒子的优劣。
粒子群算法中的粒子,与自然界中的鸟存在如下共同特点。
(1) 位置映射相同。自然界中鸟的位置代表当前鸟搜索食物的定位,粒子则是抽象为没有体积和质量的“鸟”,其位置对应着搜索空间中问题的解。
(2) 更新规则相似。自然界中鸟根据一定的飞行规则,可以估算自己位置的适应值,在受到周围邻居的影响下不断调整飞行方向和速度,从而实现位置的更新。粒子则通过计算自身的适应度值,跟踪粒子个体最优解和全部粒子中的全局最优解这两个极值,改变粒子飞行的方向和速度,从而实现自身位置的更新。
(3) 随机性与收敛性。粒子和自然鸟在搜索初期都呈现出一定的随机盲目性,依靠自身的不断学习积累经验,经过一段时间经过相互之间的社会协作,大大缩短搜索进程,加速搜索的收敛定位。
综上可知,起初粒子被赋予一个随机速度在整个问题空间运动,通过计算适应度值来估算自己所处位置的优劣,粒子通过记忆和群里感知能力,借助粒子间的竞争与合作不断进化,最终粒子群达到全局最优。
粒子群算法在连续空间和离散空间优化问题中得到了广泛应用,其算法的简单易操作性得到了验证。PSO是模拟鸟群觅食的过程,采用速度–位置模型进行食物搜索。与鸟群飞行的简单行为相似,粒子也有一定的运算法则。粒子通过记忆自身当前所找到的局部最优位置,与粒子群中传播的全局最优位置,然后不断调整飞行方向和速度,朝着这两个最优位置不断靠拢。
在粒子群算法具体应用中,每一个鸟类个体被抽象为没有体积和质量的一个粒子,每个粒子都有一个被适应度函数决定的适应值,每个粒子都有一个决定搜索方向和距离的速度,都是通过追随局部最优位置和全局最优位置两个极值在搜索空间进行搜索。
在N维搜索空间里,存在m个粒子,粒子群算法中涉及相关概念描述如下。其中,X表示粒子群整体,Xi表示第i个粒子的位置方向矢量,Vi表示第i个粒子的飞行速度矢量,Pi表示第i个粒子目前搜索到的局部最优位置,Pg表示粒子群目前搜索到的全局最优位置,数学形式如式(1)所示。
其中,速度Vi决定了粒子在搜索空间中每一次迭代的位移。根据更新规则,所有粒子的速度和位置更新如式(2)和(3)所示。
其中,
(1) 惯性权重系数
(2) 学习因子
(3) 粒子速度
Vi表示粒子的速度,为了粒子速度合理不至于无限扩大,也不至于速度太小导致搜索空间不彻底,通常会对速度进行区间限制,如给定区间范围
(4) 粒子位置
Xi表示粒子的位置,对于粒子的位置也可以给出合理的区间范围
(5) 种群规模
种群规模m退化为1时,PSO算法变为基于个体搜索的技术,一旦陷入局部最优则无法跳出继续优化。当m值较小时,算法收敛速度快,容易陷入局部最优。当m值较大时,算法寻优能力较强,但是收敛速度慢。通常,粒子群规模在10~20之间就可以取得较好的效果,对于复杂类型的搜索空间,种群规模可以适时增大。
(6) 随机参数
基本粒子群算法流程步骤如下。
(1) 参数初始化。包含迭代次数、学习参数、种群数量、惯性权重等。
(2) 粒子信息初始化。包含粒子的位置初始化和粒子速度的初始化。
(3) 粒子性能评价。根据适应度函数计算每个粒子的适应值。
(4) 局部最优解更新。根据粒子的当前适应值和历史最佳适应值进行比较,更新粒子的局部最优解。
(5) 全局最优解更新。将粒子的当前适应值与群体全局最优解进行比较,更新粒子群全局最优解。
(6) 若全局最优解保持定值达到限定次数或达到最大限定次数,算法终止。否则,按照式(2)和式(3)更新粒子的速度和位置,转至(2)。
其中,适应度函数是学者研究的重点。
WSNs路由模型建立之前,假定WSNs监测区域为一个
粒子群算法作为当前WSNs路由协议选择的热点算法之一,受到了业界学者的广泛深入的研究。其中,文献[
近年来,大量学者利用混沌搜索的随机性、便利性等特点对标准PSO进行改进,提出混沌粒子群优化算法(Chaotic Patrticle Swarm Optimization, CPSO) WSNs路由算法。其中,任红霞[
改进CPSO提出系统一直处于稳定或混沌状态都是不利的,只有混沌与稳定相互交替方可找到最优值。因此建议在稳定时引入混沌,帮助粒子跳出局部最优,在不稳定时加速向最优值靠拢,加快收敛速度。并且改进CPSO给出了判断粒子所处状态的判定公式。在适应度函数方面,改进CPSO以剩余能量,簇首与簇内节点距离为依据,在簇首与Sink之间多条路径计算借鉴最小生成树来减少簇首与Sink直接通信消耗的能量。在仿真试验中,改进CPSO以网络生命期和能耗两个技术指标与LEACH、CPSO进行比较,结果表明基于改进CPSO的协议性能更甚一筹,能耗均匀的同时有效延长了WSNs的生命期。刘志坤[
根据上述分析,研究学者在仿真验证时参照的性能指标主要有网络生命期、网络节点能耗均衡性方面,但是进行算法分析比较对象存在差异性,进行性能统一比较存在一定困难。总结可知,研究学者将改进粒子群算法和混沌思路引入粒子群算法,用在WSNs中簇首的选择,区别主要表现在适应度函数的构造上。今后,研究重点将放在研究适用于实时、动态的基于改进PSO的WSNs路由协议,在提升网络节点能耗均衡的同时,延长WSNs的生命期。
本文简单介绍了无线传感器网络的应用和特点,引出了标准粒子群算法特点及其流程。然后,重点汇总分析了当前学术界将改进粒子群算法应用于无线传感器网络路由协议的研究现状并指出研究的不足。最后指出了改进粒子群算法在无线传感器网络中应用的研究方向。
在改进粒子群算法方面,本文作者将会从线性规划最优化角度,借用混沌粒子群算法的优点,从粒子的编码、运算和“飞行”规则入手,进一步提升改进粒子群算法在无线传感器网络路由协议中应用的性能,在均衡网络能量的同时有效延长WSNs的生命期。
北京联合大学“启明星”大学生科技创新项目(201511417SJ029和201511417SJ045),北京联合大学新起点计划项目资助(zk10201303),北京市职业院校教师素质提高工程资助项目。
刘琮,陈战胜. 粒子群算法在无线传感器网络路由协议中的研究综述 Overview of Wireless Sensor Network Routing Protocol Based on Particle Swarm Algorithm[J]. 计算机科学与应用, 2015, 05(11): 387-393. http://dx.doi.org/10.12677/CSA.2015.511049