基于动态分簇的移动目标追踪方法与流程

文档序号:13764080阅读:390来源:国知局
本发明涉及一种面向无线传感器网络中基于动态分簇的移动目标追踪方法,属于无线传感器网络
技术领域

背景技术
:移动目标追踪技术几乎涉及到无线传感器网络的各个应用领域,影响范围之广,带来的价值之巨,难以估量。由于无线传感器网络克服了传统监测网络诸如不易部署、成本高昂、通信难度大等缺点,使其在环境监测、军事监控,基建保护等领域都应用广泛,体现了巨大的科学意义和应用前景。目前,无线传感器网络中对移动目标的追踪,采用的拓扑结构,在监测较快的移动目标时,存在着定位不够准确问题,容易出现丢失追踪目标,导致再重新定位追踪目标,消耗较大的能量,直接影响追踪目标的及时性,出现较长的网络延迟。当网络节点部署不均匀时,追踪目标时会出现较大的误差,追踪不够精确,而且网络中节点的能量不同对定位目标准有较大的影响。连续不断地定位追踪目标,虽然可以提高较为准确的目标定位,但是付出了较大的能耗代价。因此,在无线传感器网络中移动目标追踪时,必须解决两个问题:(1)基于设定的追踪模型,保证目标定位和移动轨迹描述的准确性;(2)在保证第一个条件的前提下,尽量减少目标追踪模型的能量消耗,延长整个网络的生命周期。目前,无线传感器网络中目标追踪技术主要有:基于二元传感模型的目标追踪技术、基于节点选择协作的目标追踪技术、可容错的目标追踪技术、基于特定网络拓扑结构的目标追踪技术、基于预测模型的目标追踪技术和基于目标生存环境事件监测技术。在不同的传感器场景下,以及用户对目标追踪的不同需求,基于无线传感器网络的目标追踪技术也有各自研究的侧重点。本发明的是针对无线传感器网络中单个目标的移动追踪问题。网络内的硬件成本有限,要考虑在低成本下提高目标追踪的准确性;目标的移动是不确定性的、随机性的,要考虑减少目标追踪丢失的概率;网络能耗及能耗均衡性,要考虑网络内节点的组织方式;传感器节点的自身能力受限,要考虑合适的追踪方法。技术实现要素:发明目的:针对现有技术中存在的问题,本发明提供一种无线传感器网络中基于动态分簇的移动目标追踪方法,可以提高移动目标定位的准确性,减少网络能耗,延长网络生命周期。技术方案:一种基于动态分簇的移动目标追踪方法,在双层环状拓扑结构基础上,采用基于功率级别的定位方法和随机性定位方法相结合的算法对移动目标进行定位追踪。为避免节点之间的信息广播相互干扰,导致信息重传,增加不必要的能耗,提出两阶段初始化方法;为了在定位准确度和网络节能取得平衡,网络拓扑结构采用双层环状结构簇,分别构建内环和外环结构;目标在移动,簇结构也随之变化,动态簇需定期更新。节点加入与退出、簇头节点移交;针对移动目标进行定位,由于内外环中节点的功级别不同,所以对目标定位的准确性也有差异,提出了基于功率级别的定位方法。考虑到网络能耗,节点不断定位需要消耗较大的能量,为了节省节点能量,节点不必连续定位,结合目标移动的相关性,提供一种随机性定位方法,在保证定位准确性的同时,能够降低网络能耗,延长整个网络周期;计算移动目标的路径,sink节点将接收的目标定位数据,转化为时间轴上的位置序列,时间轴上的位置序列就是目标的移动轨迹。两阶段初始化方法包含以下步骤:1.1)将所有节点都设为等待状态,基站节点以最大功率进行广播,给定合适的阈值,若节点收到的信号强度大于阈值,则进入工作状态并置标记位q为1(标记位q为1时,代表节点进入工作状态;否则为其它状态),向基站节点报告其ID和剩余能量,基站节点将这些信息登记到sink候选簇头表中。若小于阈值,则节点进入休眠状态。1.2)工作状态的节点调整通信功率至一跳范围距离,进行消息广播,收到消息的节点进入工作状态,并将其ID和剩余能量回传,同样,调整通信功率至一跳范围距离,进行消息广播,邻居节点互相登记信息到邻居节点信息表。2.1)构建内层环结构。当目标进入追踪区域后,节点监测到目标的出现,所有能监测到目标出现的节点,调整功率至正常工作状态,加入内层环集合,同时根据邻居节点信息表,通知邻居节点,如果邻居节点已经处于内层环集合,则不作回应。2.2)构建外层环结构。收到通知的、非内层环集合的邻居节点,首先调整状态至正常工作状态,然后再将工作功率增大至κ倍(κ≥1,κ=1时为正常工作状态),感知范围增大。此时,如果邻居节点能够监测到移动目标,则加入外层环集合,进入κ级别工作状态;反之,邻居节点降低功率,进入等待状态。2.3)选取簇头。首先,节点查询自己的标记位q是否为1,如果只有一个节点的标记位为1,则此节点为簇头节点;如果不止一个节点,则需考虑剩余能量情况,查询sink节点候选簇头表,选择剩余能量最多的节点为簇头;若不存在这样的节点,则选取簇内剩余能量多的节点为簇头。其余节点成为簇头的成员节点。对于任意簇头节点i,其簇内成员节点可以用集合表示为Ci={j|j∈Cdyn,0<j≤N,j≠i},Cdyn表示动态簇,在t时刻,簇头节点为i,则此时,动态簇可表示为Ci|t=Cdyn。定义1质心O(x,y):规则多边形的几何中心称为质心。假设一个规则多边形的顶点坐标为(x1,y1),(x2,y2),…(xn,yn),则O(x,y)=(Σi=1nxin,Σi=1nyin)---(1)]]>定义2内环集合SIR(InnerRingSet,IRS):对于任意的节点i,i∈Cdyn,若节点i主动监测到移动目标,则i∈SIR,定义3外环集合SOR(OuterRingSet,ORS):对于任意的节点i,i∈Cdyn,若节点i被动进入工作状态,即节点j通知节点i进入工作状态,j∈SIR,则i∈SOR,内环中的节点进入工作状态后,通知外环节点。外环中节点将功率调至κ倍,如果能够监测到移动目标,则进入工作状态,否则继续等待。由此可见,外环节点的功率是内环节点的功率的κ倍。由于功率的不同,相应的感知范围和初始发射能量也不同。结合功率因素,本发明提供一种基于功率级别的质心定位方法。公式如下:O(x,y)=(βΣi=1kxIRi+(1-β)Σi=1qxORiβk+(1-β)q,βΣi=1kyIRi+(1-β)Σi=1qyORiβk+(1-β)q)---(2)]]>其中,x、y分别表示定位目标的横纵坐标,k是内环节点的数目,q是外环节点的数目,β是内外环节点的权值,由于内环节点离移动目标更近,内环节点得出的位置坐标占有较大的权重,所以β取值范围:式2还可以进一步简化,令可以得到:O(x,y)=(αΣi=1kxIRi+Σi=1qxORiαk+q,αΣi=1kyIRi+Σi=1qyORiαk+q)---(3)]]>此时,α是内环节点关于质心方程式的权值,α取值范围:α≥1。定义4路径集合(TraceSet,TS):sink节点得到了簇头发来的位置数据,按时间序列T{t1,t2,...tn}排列,由时间序列上的位置坐标组成的集合,表示在时刻ti获得的目标定位,那么,目标在追踪区域内的移动路径,可以用序列表示为:Trace=(TS(1),TS(2),...,TS(n))(4)其中,TS(i)∈TSet,TS(i)表示在时间ti上的位置坐标,序列Trace是有序的,代表移动路径,起点是TS(1),终点是TS(n)。定义5ε-threshold簇改变:在一个时间序列T{t1,t2,...,tn}中,在Δt时间段内,当目标移动较快时,簇内节点变化较多,在簇头没有移交的情况下,有τ1个节点退出动态簇,有τ2个节点加入动态簇,如果τ1+τ2>ε,则认为动态簇改变,ε为定义的阀值。3.1)新节点加入动态簇。对于任意一个非簇内节点i,即当目标进入感知范围内,则发送加入动态簇的广播请求REQin。等待Δt时间后,如果收到簇头节点j的同意信息ANSin,则节点i加入簇Cj,簇头节点j将新成员节点i信息登记到临时簇成员信息表。如果没有收到任何信息,则进入构建动态簇的步骤。节点i根据邻居节点信息表,通知一跳范围内的邻居节点k。节点k进入κ级别工作状态,如果能监测到移动目标,则申请加入簇Cj,否则进入等待状态。3.2)失效节点退出动态簇。对于任意一个簇内节点i,即i∈Cdyn,当目标移出其感知范围外,向簇头j发送退出动态簇的请求REQout。簇头节点j收到请求后,在临时簇成员信息表中删除相关信息,返回同意信息ANSout。节点i收到同意信息后,进入等待状态,退出簇Cj;如果等待Δt时间后,没有收到信息,则自动退出簇Cj。3.3)簇头节点移交。新加入簇的节点j,簇头节点i查询sink节点的候选簇头信息表。如果节点j属于sink候选簇头集合,则选择节点j为新的簇头。节点i将所有信息移交给簇头节点j,然后作为簇内成员节点继续工作。簇头节点j向簇内成员广播簇头信息。至此,动态簇成为以节点j为簇头的簇Cj;如果节点j不属于sink候选簇头集合,则节点i继续作为簇头。同时,簇头节点i将节点j登记到簇内候选簇头信息表中。当簇头节点i不能监测到目标时,立即查找簇内候选簇头信息表,选择剩余能量Ek(0<k<N)最大的节点,作为新的簇头节点k,并将所有信息发送给簇头节点k,然后进入等待状态,退出动态簇。新的簇头节点k在收到临时簇成员信息表后,向簇内成员广播簇头信息。至此,动态簇成为以节点k为簇头的簇Ck。移动目标定位包含以下步骤:4.1)在簇头节点中定义一个计数值count,用于计数簇内节点的变化次数,置初值为0。4.2)在簇头节点没有移交情况下,有簇内成员节点退出,count++;同样,新节点加入动态簇,count++。4.3)如果count>ε,或簇头进行移交,则动态簇改变,采用基于功率级别的质心定位方法进行定位计算,并将相关信息发送给sink节点。同时,置count为0。4.4)如果count≤ε,或簇头未进行移交,则动态簇未改变,不需要进行定位计算,把上一次定位数据作为此时目标位置的信息。计算追踪路径包含以下步骤:5.1)基站将获得的数据信息装换为时间序列上的位置坐标组成的集合,5.2)计算出目标在追踪区域内的移动路径,Trace=(TS(1),TS(2),...,TS(n))。有益效果:与现有技术相比,本发明提供的基于动态簇的移动目标追踪方法,通过构建双层环状动态簇的模型,采用基于功率级别的质心定位方法和随机性定位方法,在保证追踪监测目标准确性的情况下,减少目标追踪网络的能耗,延长网络生命周期。附图说明图1为本发明实施例的双层环状的网络拓扑结构图;图2为本发明实施例的网络初始化工作流程图;图3为本发明实施例的构建动态簇过程的工作流程图;图4为本发明实施例的更新动态簇过程的工作流程图;图5为本发明实施例的动态簇更新的情况图;图6为本发明实施例的移动目标定位过程的工作流程图。具体实施方式下面结合具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。基于动态簇的移动目标追踪方法,包括如下步骤:步骤一:构建无线传感器网络。节点相互间协作,计算出移动事件的轨迹,回传给基站,基站根据计算出来的轨迹,对移动事件进行追踪。如图1所示,主要包括以下两部分:(1)传感器节点,是无线传感器网络的基础节点,具有独立的计算、数据采集、存储能力,节点通过GPS获得自己的位置坐标信息,节点均匀分布在追踪区域中。节点有四种状态:休眠(sleep),等待(wait),工作(work),κ级别工作(κ_work)。工作状态的节点可正常感知和通信。休眠状态的节点不工作;等待状态的节点感知半径较小;κ级别工作是感知功率级别增大κ(κ≥1,κ=1时为正常工作状态)倍后的状态,具有较大的感知半径。节点信息表如表1所示。(2)网络基站(sink节点),是一个特殊的传感器节点,具有持续的供电能力,计算能力、存储空间都大于一般的传感器节点。sink节点的位置坐标信息是每个感知节点都能获得。步骤二:采用两阶段初始化方法,如图2所示,其具体实施步骤如下:(1)将所有节点都设为等待状态,基站节点以最大功率进行广播,给定合适的阈值,若节点收到的信号强度大于阈值,则进入工作状态并置q为1,向基站节点报告其ID和剩余能量,基站节点将这些信息登记到sink候选簇头表中。若小于阈值,则节点进入休眠状态。(2)工作状态的节点调整通信功率至一跳范围距离,进行消息广播,收到消息的节点进入工作状态,并将其ID和剩余能量回传,同样,调整通信功率至一跳范围距离,进行消息广播,邻居节点互相登记信息到邻居节点信息表。对于任意簇头节点i,其簇内成员节点可以用集合表示为Ci={j|j∈Cdyn,0<j≤N,j≠i},Cdyn表示动态簇,在t时刻,簇头节点为i,则此时,动态簇可表示为Ci|t=Cdyn。定义1质心O(x,y):规则多边形的几何中心称为质心。假设一个规则多边形的顶点坐标为(x1,y1),(x2,y2),…(xn,yn),则O(x,y)=(Σi=1nxin,Σi=1nyin)---(1)]]>定义2内环集合SIR(InnerRingSet,IRS):对于任意的节点i,i∈Cdyn,若节点i主动监测到移动目标,则i∈SIR,定义3外环集合SOR(OuterRingSet,ORS):对于任意的节点i,i∈Cdyn,若节点i被动进入工作状态,即节点j通知节点i进入工作状态,j∈SIR,则i∈SOR,基于功率级别的质心定位方法。公式如下:O(x,y)=(βΣi=1kxIRi+(1-β)Σi=1qxORiβk+(1-β)q,βΣi=1kyIRi+(1-β)Σi=1qyORiβk+(1-β)q)---(2)]]>其中,x、y分别表示定位目标的横纵坐标,k是内环节点的数目,q是外环节点的数目,β是内外环节点的权值,由于内环节点离移动目标更近,内环节点得出的位置坐标占有较大的权重,所以β取值范围:式2还可以进一步简化,令可以得到:O(x,y)=(αΣi=1kxIRi+Σi=1qxORiαk+q,αΣi=1kyIRi+Σi=1qyORiαk+q)---(3)]]>此时,α是内环节点关于质心方程式的权值,α取值范围:α≥1。步骤三:构建双层环状动态簇,如图3所示,其具体实施步骤如下:(1)构建内层环结构。当目标进入追踪区域后,节点监测到目标的出现,所有能监测到目标出现的节点,调整功率至正常工作状态,加入内层环集合,同时根据邻居节点信息表,通知邻居节点,如果邻居节点已经处于内层环集合,则不作回应。否则进入构建外层环步骤。(2)构建外层环结构。收到通知的、非内层环集合的邻居节点,首先调整状态至正常工作状态,然后再将工作功率增大至κ倍,感知范围增大。此时,如果邻居节点能够监测到移动目标,则加入外层环集合,进入κ级别工作状态;反之,邻居节点降低功率,进入等待状态。(3)选取簇头。首先,节点查询自己的标记位q是否为1,如果只有一个节点的标记位为1,则此节点为簇头节点;如果不止一个节点,则需考虑剩余能量情况,查询sink节点候选簇头表,选择剩余能量最多的节点为簇头;若不存在这样的节点,则选取簇内剩余能量多的节点为簇头。其余节点成为簇头的成员节点。如图1所示,构建出的双层环状动态簇,1所在的是外环,2所在的是内环。外环中的节点是内环中的节点的一跳范围内的邻居节点,一跳关系如图中虚线所示。步骤四:动态簇更新,如图4所示,其具体实施步骤如下:(1)新节点加入动态簇。如图4(a)所示:对于任意一个非簇内节点i,即当目标进入感知范围内,则发送加入动态簇的广播请求REQin。等待Δt时间后,如果收到簇头节点j的同意信息ANSin,则节点i加入簇Cj,簇头节点j将新成员节点i信息登记到临时簇成员信息表。如果没有收到任何信息,则进入如图3所示的构建双层环状动态簇步骤。节点i根据邻居节点信息表,通知一跳范围内的邻居节点k。节点k进入κ级别工作状态,如果能监测到移动目标,则申请加入簇Cj,否则进入等待状态。(2)失效节点退出动态簇。如图4(b)所示:对于任意一个簇内节点i,即i∈Cdyn,当目标移出其感知范围外,向簇头j发送退出动态簇的请求REQout。簇头节点j收到请求后,在临时簇成员信息表中删除相关信息,返回同意信息ANSout。节点i收到同意信息后,进入等待状态,退出簇Cj;如果等待Δt时间后,没有收到信息,则自动退出簇Cj。(3)簇头节点移交。如图4(c)所示:新加入簇的节点j,簇头节点i查询sink节点的候选簇头信息表。如果节点j属于sink候选簇头集合,则选择节点j为新的簇头。节点i将所有信息移交给簇头节点j,然后作为簇内成员节点继续工作。簇头节点j向簇内成员广播簇头信息。至此,动态簇成为以节点j为簇头的簇Cj;如果节点j不属于sink候选簇头集合,则节点i继续作为簇头。同时,簇头节点i将节点j登记到簇内候选簇头信息表中。当簇头节点i不能监测到目标时,立即查找簇内候选簇头信息表,选择剩余能量Ek(0<k<N)最大的节点,作为新的簇头节点k,并将所有信息发送给簇头节点k,然后进入等待状态,退出动态簇。新的簇头节点k在收到临时簇成员信息表后,向簇内成员广播簇头信息。至此,动态簇成为以节点k为簇头的簇Ck。分簇动态更新如图5所示,虚线圈是前一个时刻的簇情况,实线圈是当前时刻的簇情况。随着目标的移动,节点1,2,3,4失效,退出了动态簇;节点5加入了动态簇,并通知了一跳范围内的三个邻居节点,使之进入κ级别工作状态。步骤五:采用基于功率级别的质心定位与随机性定位相结合的算法,如图6所示,其具体实施步骤如下:(1)在簇头节点中定义一个计数值count,置初值为0。(2)在簇头节点没有移交情况下,有簇内成员节点退出,count++;同样,新节点加入动态簇,count++。(3)如果count>ε,或簇头进行移交,则动态簇改变,采用基于功率级别的质心定位方法进行定位计算,并将相关信息发送给sink节点。同时,置count为0。(4)如果count≤ε,或簇头未进行移交,则动态簇未改变,不需要进行定位计算,把上一次定位数据作为此时目标位置的信息。步骤六:计算移动目标的路径,其具体实施步骤如下:(1)基站将获得的数据信息装换为时间序列上的位置坐标组成的集合,(2)计算出目标在追踪区域内的移动路径,Trace=(TS(1),TS(2),...,TS(n))。表1节点信息表项目1项目2项目3项目4项目5项目6项目7编号ID能量E位置L状态S功率κ标记位q邻居ID表2sink节点候选簇头表节点IDij........kl剩余能量EiEj........EkEl表3i节点一跳范围内邻居节点信息表邻居节点ab........cd剩余能量EaEb........EcEd表4临时簇成员信息表成员IDab........cd剩余能量EaEb........EcEd表5簇内候选簇头信息表候选簇头IDab........cd剩余能量EaEb........EcEd当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1