发明名称 基于粒子群算法的无线传感网多目标跟踪节点任务分配方法
摘要 本发明是一种基于粒子群算法的无线传感网多目标跟踪节点任务分配方法,解决传统无线传感网多目标跟踪中的节点能耗过高问题。该方法中使用粒子群算法预测目标在下一个跟踪周期中的位置,根据此信息将目标的跟踪任务分配给距离其预测位置最近的传感器节点,从而实现节点能耗的降低与目标跟踪精确度的提高。解决了无线传感网覆盖规模大、拓扑结构动态变化、节点资源受限等特点给各个传感器节点间进行协同任务分配带来了挑战。尤其是当无线传感网监测区域出现多个目标时,如何优化分配传感器节点任务同时监测多个动态目标并且进行协同跟踪,在保证跟踪准确度的同时降低网络能耗,是当前无线传感网目标跟踪领域的问题之一。
申请公布号 CN103298005A 申请公布日期 2013.09.11
申请号 CN201310168056.3 申请日期 2013.05.06
申请人 南京邮电大学 发明人 陈志;李梦泽;岳文静;黄洵松;毛博;曹壹
分类号 H04W24/02(2009.01)I;H04W84/18(2009.01)I 主分类号 H04W24/02(2009.01)I
代理机构 南京经纬专利商标代理有限公司 32200 代理人 叶连生
主权项 一种基于粒子群算法的无线传感网多目标跟踪节点任务分配方法,其特征在于该方法包括以下步骤:1)汇聚节点收集传感器节点位置信息汇聚节点向整个网络广播启动消息,各个传感器节点在启动后向汇聚节点发送自身的地理位置信息;2)初始化粒子群21)在汇聚节点内存中设置粒子的数量值为Np,Np等于无线传感网覆盖范围内的目标总数;所述的粒子是一种空间坐标向量,代表一种任务分配方案,该方案表示为X=(X1,X2,...,Xj,...,XM),1≤j≤M,Xj=(xj1,xj2,...,xji,...,xjN),1≤i≤N,其中M为目标总数,N为传感器节点总数,j均为目标标号,i是传感器节点标号,xji=1表示分配第i个传感器节点跟踪目标j,xji=0表示第i个传感器节点不跟踪目标j;22)根据各个传感器节点的位置信息,汇聚节点将每个目标的跟踪任务分配给距离其当前位置最近的三个传感器节点,如果有多个传感器节点与目标距离相同,则优先选择编号较小的传感器节点,这样就得到了初始的节点任务分配方案,同时汇聚节点以此初始任务分配方案为各个粒子赋值;3)汇聚节点收集传感器节点能耗信息并计算粒子的适应度31)各个传感器节点探测自身所跟踪的目标,之后节点将自己在这一轮中的能耗信息发送给汇聚节点,汇聚节点记录所有传感器节点的当前能耗数据。32)汇聚节点对距离每个粒子所处的空间位置最近的三个传感器节点的能耗值进行加总,所得的数值即为粒子的当前适应度函数取值;4)汇聚节点记录下所有粒子的适应度函数取值,之后根据粒子适应度函数取值的历史数据计算每个粒子的个体极值以及全局极值,所述的个体极值即是粒子所经历过的具有最好适应度函数取值的位置pb(t),可由下式确定,式中k为粒子的编号: <mrow> <msub> <mi>pb</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>=</mo> <mfenced open='{' close=''> <mtable> <mtr> <mtd> <msub> <mi>pb</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> <mo>)</mo> </mrow> </mtd> <mtd> <mi>f</mi> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mn>1</mn> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>,</mo> <msub> <mi>x</mi> <mn>2</mn> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>,</mo> <mo>.</mo> <mo>.</mo> <mo>.</mo> <mo>,</mo> <msub> <mi>x</mi> <mi>n</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>)</mo> </mrow> <mo>></mo> <msub> <mi>pb</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> <mo>)</mo> </mrow> </mtd> </mtr> <mtr> <mtd> <msub> <mi>x</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mtd> <mtd> <mi>f</mi> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mn>1</mn> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>,</mo> <msub> <mi>x</mi> <mn>2</mn> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>,</mo> <mo></mo> <mo>.</mo> <mo>.</mo> <mo>.</mo> <mo>,</mo> <msub> <mi>x</mi> <mi>n</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>)</mo> </mrow> <mo>&le;</mo> <msub> <mi>pb</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> <mo>)</mo> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow>其中f是适应度函数,距离每个粒子所处的空间位置最近的三个传感器节点的能耗值之和为f当前取值;xk(t)为当前第k个粒子任务分配方案中的空间坐标向量值,所述的全局极值是目标跟踪粒子群中所有粒子经历过的最好位置gb(t),由下式确定: <mrow> <mi>gb</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>=</mo> <mi>min</mi> <mo>{</mo> <mi>f</mi> <mrow> <mo>(</mo> <msub> <mi>pb</mi> <mn>1</mn> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>)</mo> </mrow> <mo>,</mo> <mi>f</mi> <mrow> <mo>(</mo> <msub> <mi>pb</mi> <mn>2</mn> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>)</mo> </mrow> <mo>,</mo> <mo>.</mo> <mo>.</mo> <mo>,</mo> <mi>f</mi> <mrow> <mo>(</mo> <msub> <mi>pb</mi> <mi>N</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>)</mo> </mrow> <mo>}</mo> </mrow>5)汇聚节点根据各个传感器节点的个体极值与全局极值数据按照粒子转移公式计算各个传感器节点新的任务分配方案,将该分配方案通知给各个传感器节点,传感器节点按照该分配方案执行目标跟踪任务;之后,根据设定的周期期限,返回步骤3)进行下一轮的节点任务分配,所述的粒子转移公式为: <mfenced open='{' close=''> <mtable> <mtr> <mtd> <msub> <mi>v</mi> <mi>ij</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>+</mo> <mn>1</mn> <mo>)</mo> </mrow> <mo>=</mo> <msub> <mi>v</mi> <mi>ij</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>+</mo> <mn>2</mn> <mrow> <mo>(</mo> <msub> <mi>pb</mi> <mi>i</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>x</mi> <mi>ij</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>)</mo> </mrow> <mo>+</mo> <mn>2</mn> <mrow> <mo>(</mo> <mi>gb</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>x</mi> <mi>ij</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>)</mo> </mrow> </mtd> </mtr> <mtr> <mtd> <mi>V</mi> <mo>=</mo> <mrow> <mo>(</mo> <msub> <mi>v</mi> <mn>11</mn> </msub> <msub> <mrow> <mo>,</mo> <mo>.</mo> <mo>.</mo> <mo>.</mo> <mo>,</mo> <mi>v</mi> </mrow> <mi>ij</mi> </msub> <mo>,</mo> <mo></mo> <mo>.</mo> <mo>.</mo> <mo>.</mo> <mo>,</mo> <msub> <mi>v</mi> <mi>MN</mi> </msub> <mo>)</mo> </mrow> </mtd> </mtr> <mtr> <mtd> <msub> <mi>x</mi> <mi>ij</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>+</mo> <mn>1</mn> <mo>)</mo> </mrow> <mo>=</mo> <msub> <mi>x</mi> <mi>ij</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>+</mo> <msub> <mi>v</mi> <mi>ij</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>+</mo> <mn>1</mn> <mo>)</mo> </mrow> </mtd> </mtr> <mtr> <mtd> <mi>X</mi> <mo>=</mo> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mn>11</mn> </msub> <mo>,</mo> <mo></mo> <mo>.</mo> <mo>.</mo> <mo>.</mo> <mo>,</mo> <msub> <mi>x</mi> <mi>ij</mi> </msub> <mo>,</mo> <mo>.</mo> <mo>.</mo> <mo>.</mo> <mo>,</mo> <msub> <mi>x</mi> <mi>MN</mi> </msub> <mo></mo> <mo>)</mo> </mrow> </mtd> </mtr> </mtable> </mfenced>其中V是粒子在状态搜索空间中的运动向量,vij代表第i个传感器节点向第j个目标方向运动的速度,X是节点目标跟踪任务分配方案的解向量,xij=1代表第i个节点将负责第j个目标的跟踪任务,xij=0代表第i个节点将不会对第j个目标进行跟踪。
地址 210003 江苏省南京市鼓楼区新模范马路66号