一种基于SCE‑PSO算法的无线传感器网络节点三维定位方法技术

技术编号:17351046 阅读:59 留言:0更新日期:2018-02-25 20:37
本发明专利技术设计了一种基于SCE‑PSO算法的无线传感器网络节点三维定位方法。通过综合SCE‑UA和PSO两种优化算法的优点,在SCE‑UA算法中利用PSO算法代替下山单纯形算法去进化每一个复合形,从而提出了一种新的算法SCE‑PSO算法。通过引入收敛速度较快的PSO算法,SCE‑PSO算法改善了SCE‑UA算法受问题维数影响较大,收敛速度较慢的缺点,其适合于无线传感器网络节点三维定位。同时利用SCE‑UA算法中的洗牌策略,增加了粒子的多样性,改善了PSO算法中早熟收敛的缺点。本发明专利技术采用SCE‑PSO算法进行无线传感器网络三维节点的定位,提高了节点定位精度。

A three-dimensional positioning SCE PSO algorithm of wireless sensor network node based method

【技术实现步骤摘要】
一种基于SCE-PSO算法的无线传感器网络节点三维定位方法
本专利技术属于无线传感器网络中的节点定位领域。
技术介绍
无线传感器网络(WirelessSensorNetworks,WSN)节点的三维定位是当前的研究热点之一。根据是否需要测量节点之间的距离,无线传感器网络的节点定位方法可以划分为基于测距和基于非测距的两种方法。其中基于测距的方法,由于定位精度高在无线传感器网络节点定位中被广泛采用。基于测距的定位方法首先要测量节点之间的距离或角度,常用的测量方法有接收信号强度指示(ReceivedSignalStrengthIndicator,RSSI)、到达时间(TimeofArrival,TOA)、到达时间不同(TimeDifferenceofArrival,TDOA)和到达角度(AngleofArrival,AOA)。获取节点之间的距离或角度信息后,基于测距的方法就可以采用一些定位方法对未知节点进行定位,其中一类方法是把获取的距离或角度信息看作约束条件,将其转化为一个目标函数,然后用各种优化算法寻找该目标函数的最小值,从而对未知节点进行定位。优化方法可分为传统的优化方法和生物启发式优化方法。传统的优化方法基于确定的搜索策略,在满足一定的限制条件下,利用优化问题的导数、梯度等数学性质进行求解。该类方法的缺点是运算复杂度较高,并且随着问题的维数的增大其复杂度以指数倍增加,生物启发式优化方法可以有效地避免这个问题,使计算更加有效,对优化问题所对应的函数形式不做任何假设,而且不要求目标函数的连续性或可导性的假设,算法简单,易于实现。常见的生物启发式优化算法包括:模拟退火算法(SimulatedAnnealing,SA)、蚁群算法(AntColonyOptimization,ACO)、遗传算法(GeneticAlgorithm,GA)、人工蜂群算法(ArtificialBeeColony,ABC)、细菌觅食算法(BacterialForagingAlgorithm,BFA)、粒子群算法(ParticleSwarmOptimization,PSO)。与其他生物启发式优化算法相比,粒子群算法具有容易执行,收敛速度比较快的优点。尤其是求解的问题维数越多,其优势越明显。因此,粒子群算法非常适用于无线传感器网络节点的三维定位。但是,在运行过程中,粒子群算法可能会陷入局部最优,出现早熟收敛现象。
技术实现思路
针对无线传感器网络节点三维定位采用粒子群算法时,粒子在搜索过程中会陷入局部最优,出现早熟收敛,从而导致节点定位精度较低的问题,本专利技术提出了一种改进的粒子群算法SCE-PSO,该算法通过与SCE-UA(shufflingcomplexevolution-UniversityofArizona)算法相结合,增加了搜索过程中粒子的多样性,从而减少了粒子陷入局部最优的概率,提高了解的质量。因此,与原始粒子群方法相比,该方法能够提高定位精度,比较适合无线传感器网络节点三维定位。具体实现过程如下:1.粒子群算法粒子群优化算法的基本思想是:将优化问题的每一个解看作一个微粒,每个微粒在多维搜索空间中以一定的速度飞行,通过目标函数的适应度值衡量微粒的优劣,每个微粒能够通过自己的飞行经验以及其他微粒的飞行经验,动态地调整自己的飞行速度,从而向群体中最好的微粒位置飞行,最终搜索到优化问题的最优解。假设求解的问题为n维,粒子群算法的求解步骤如下:(1)初始化各参数,包括加速常数c1和c2,最大迭代次数Tmax,粒子的速度范围[vmin,vmax],粒子的数目s和惯性权重的范围[ωmin,ωmax]。(2)将迭代次数设置为t=1,随机产生初始粒子的位置和粒子的初始速度i=1,2,…,s。其中,d=1,2,…,n。(3)将作为每个粒子的最佳位置pid,并计算每个粒子的最佳适应度值hi,将hi中的最小值作为全局最佳适应度值g,并记录下具有g的粒子的位置gd。(4)评价每一个粒子,计算每个粒子的适应度值对的粒子,令并将具有的粒子位置作为pid的位置。再求出的最小值gt,如果gt<g,令g=gt,并将具有gt的粒子位置作为gd的位置。(5)分别根据公式(1)、公式(2)和公式(3)更新惯性权重、粒子的速度和粒子的位置。公式(2)中,r1和r2为均匀分布在[0,1]区间的随机数。在更新过程中,如果将其置为vmin,如果将其置为vmax。(6)让迭代次数t=t+1,然后检验t是否小于Tmax,若条件满足转入步骤(4),否则,算法停止,此时gd就是问题的解。2.SCE-UA算法SCE-UA算法基本思路是将基于确定性的复合形搜索技术和自然界中生物竞争进化原理相结合,用来求解最小化问题,融合了确定性方法、随机性方法、竞争进化、复合形混合等概念,从而保证了SCE-UA算法搜索的灵活性、全局性、一致性和有效性等。假设求解的问题为n维,SCE-UA算法的主要步骤如下:(1)初始化。选取参与进化的复合形个数p(p≥1)和每个复合形所包含的顶点数目m(m≥n+1),并计算样本点数目s=p×m。(2)产生样本点。在可行域内随机产生s个样本点x1,x2,…,xs,分别计算每一个点xi的函数值fi=f(xi),i=1,2,…,s。(3)样本点排序。把s个样本点(xi,fi)按照函数值的升序排列,排序后仍记为(xi,fi),i=1,2,…,s,也就是f1≤f2≤…≤fs,记D={(xi,fi),i=1,2,…,s}。(4)划分复合形群体。将D划分为p个复合形A1,A2,…,Ap,每个复合形含有m个点,其中j=1,2,…,m},k=1,2,…,p。(5)复合形进化。按照下山单纯形算法分别进化每一个复合形。(6)复合形混合。把进化后的每个复合形的所有顶点组合成新的点集,再次按函数值fi的升序排列,排序后仍记为D,对D按目标函数的升序进行排列。(7)收敛性判断。如果满足收敛条件则停止迭代,此时具有最小函数值的粒子的位置就是问题的解,否则回到第(4)步。3.改进的粒子群算法SCE-PSO根据粒子群算法优化算法中的速度更新公式(2),在运行的过程中,如果某一个粒子发现一个当前最优位置,其它粒子将迅速向其靠近,如果该最优位置只是一个局部最优点,粒子群在搜索的过程中可能无法跳出这个局部最优点,因此会陷入局部最优,出现了早熟收敛现象。避免粒子群算法出现早熟收敛现象的措施之一是增加粒子的多样性。在此我们借鉴SCE-UA算法,提出了一种改进的粒子群算法SCE-PSO。在传统的SCE-UA算法中,采用的是下山单纯形算法进化每一个复合形。但是下山单纯形算法是用多面体来逐步逼近问题的最佳值。如果待优化问题的维数比较大,其进化过程就显得比较复杂,所求出解的质量也不高,而且收敛速度也相对缓慢。由于无线传感器网络节点三维定位的维数较大,因此不适合用该方法进行定位。而粒子群算法没有选择、交叉、变异等操作,其收敛速度较快,而且收敛速度受优化问题维数的影响也比较小,因此比较适用于无线传感器网络节点的三维定位。鉴于上述思想,在我们提出的改进算法中,用粒子群算法代替下山单纯形算法去进化SCE-UA算法中每一个复合形。这样可以克服传统SCE-UA算法的缺点,提高收敛速度,增加求解高维数问题的解的质量本文档来自技高网
...
一种<a href="http://www.xjishu.com/zhuanli/62/201710989499.html" title="一种基于SCE‑PSO算法的无线传感器网络节点三维定位方法原文来自X技术">基于SCE‑PSO算法的无线传感器网络节点三维定位方法</a>

【技术保护点】
一种基于SCE‑PSO算法的无线传感器网络节点三维定位方法,其特征在于:通过在SCE‑UA算法中利用PSO算法代替下山单纯形算法去进化每一个复合形,提出了一种新的算法SCE‑PSO算法;该算法综合SCE‑UA和PSO两种优化算法的优点,同时改善了这两种算法的缺点;通过定义一个无线传感器网络节点三维定位的目标函数,将无线传感器网络节点的三维定位问题转化为无约束优化问题,再利用提出的SCE‑PSO算法求解该无约束优化问题,所求出的解就是无线传感器网络节点三维坐标的估计值;该方法包括以下步骤:步骤1:寻找可定位的未知节点;步骤2:通过无线信道模型估计未知节点与锚节点之间的距离;步骤3:写出无线传感器网络节点三维定位的目标函数,将节点定位估计问题转换为无约束优化问题;步骤4:用SCE‑PSO算法求解该无约束优化问题,求出无线传感器网络节点三维坐标的估计值;SCE‑PSO算法的具体求解步骤为:步骤1选取参与进化的复合形个数p(p≥1)和每个复合形所包含的顶点数目m(m≥n+1),并计算样本点数目s=p×m;步骤2在可行域内随机产生s个样本点x1,x2,…,xs,分别计算每一个点xi的函数值fi=f(xi),i=1,2,…,s;步骤3把s个样本点(xi,fi)按照函数值的升序排列,排序后仍记为(xi,fi),i=1,2,…,s,也就是f1≤f2≤…≤fs,记D={(xi,fi),i=1,2,…,s};步骤4将D划分为p个复合形A...

【技术特征摘要】
1.一种基于SCE-PSO算法的无线传感器网络节点三维定位方法,其特征在于:通过在SCE-UA算法中利用PSO算法代替下山单纯形算法去进化每一个复合形,提出了一种新的算法SCE-PSO算法;该算法综合SCE-UA和PSO两种优化算法的优点,同时改善了这两种算法的缺点;通过定义一个无线传感器网络节点三维定位的目标函数,将无线传感器网络节点的三维定位问题转化为无约束优化问题,再利用提出的SCE-PSO算法求解该无约束优化问题,所求出的解就是无线传感器网络节点三维坐标的估计值;该方法包括以下步骤:步骤1:寻找可定位的未知节点;步骤2:通过无线信道模型估计未知节点与锚节点之间的距离;步骤3:写出无线传感器网络节点三维定位的目标函数,将节点定位估计问题转换为无约束优化问题;步骤4:用SCE-PSO算法求解该无约束优化问题,求出无线传感器网络节点三维坐标的估计值;SCE-PSO算法的具体求解步骤为:步骤1选取参与进化的复合形个数p(p≥1)和每个复合形所包含的顶点数目m(m≥n+1),并计算样本点数目s=p×m;步骤2在可行域内随机产生s个样本点x1,x2,…,xs,分别计算每一个点xi的函数值fi=f(xi),i=1,2,…,s;步骤3把s个样本点(xi,fi)按照函数值的升序排列,排序后仍记为(xi,fi),i=1,2,…,s,也就是f1≤f2≤…≤fs,记D={(xi,fi),i=1,2,…,s};步骤4将D划分为p个复合形A1,A2,…,Ap,每个复合形含有m个点,其中步骤5采用粒子群算法分别进化每一个复合形;步骤6把进化后的每个复合形的所有顶点组合成新的点集,再...

【专利技术属性】
技术研发人员:刘伟李卓杨晓斐刘亚荣杨丽燕
申请(专利权)人:桂林理工大学
类型:发明
国别省市:广西,45

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1