发明名称 一种基于时变误差界的水下传感网节点定位及更新方法
摘要 本发明公开了一种基于时变误差界的水下传感网节点定位及更新方法,属于水下无线传感器网络定位技术领域,包括以下步骤:步骤一、待定位节点构建定位群;步骤二、定位群在线标定误差界;步骤三、构建待定位节点的集员估计可行集;步骤四、栅格化扫描可行集,求取待定位节点的坐标估计;步骤五、已定位节点在新的定位周期内按需执行基于时变误差界的集员自适应位置更新。本发明通过对定位群内误差界的在线标定,降低了多源未确知噪声对多跳距离估计的不利影响,提高了位置坐标估计的准确性和可靠性,通过按需执行基于时变误差界的集员自适应位置更新,降低了能量消耗,增强了定位的时效性,提高了水下传感网的定位性能。
申请公布号 CN104066180A 申请公布日期 2014.09.24
申请号 CN201410342285.7 申请日期 2014.07.17
申请人 中国人民解放军海军航空工程学院 发明人 任永吉;钟建林;黄隽;刘涛;王伟亚;辛旭光;张丽萍
分类号 H04W64/00(2009.01)I;H04W84/18(2009.01)I 主分类号 H04W64/00(2009.01)I
代理机构 代理人
主权项 一种基于时变误差界的水下传感网节点定位及更新方法,其特征在于:通过以下步骤来实现:步骤一、待定位节点构建定位群;(1)所有锚节点广播一组包含自身ID、坐标、多跳阈值、定位周期等信息的“定位包”;所有节点广播一组“测距包”,通过信息交互,获取自身通讯范围内所有邻居节点的ID、坐标、距离等信息;(2)待定位节点统计自身一跳至多跳阈值范围内的锚节点数量,如能达到坐标估算的最低数量,则将所有锚节点和参与信息转发的普通中间节点纳入定位群,并转步骤二;如锚节点总数低于坐标估算的最低数量,则标记为暂不满足定位条件节点,并等待下一个定位周期;步骤二、定位群在线标定误差界;(1)待定位节点向定位群内所有锚节点发送“在线标定”命令帧,此命令帧含有锚节点重复测距的最大允许次数n;(2)群内任意两个锚节点N<sub>i</sub>与N<sub>j</sub>重复测距n次,建立样本数为n的原始测距样本集<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><msub><mi>D</mi><mi>ij</mi></msub><mo>=</mo><mo>{</mo><msubsup><mi>d</mi><msub><mi>ij</mi><mn>1</mn></msub><mo>&prime;</mo></msubsup><mo>,</mo><msubsup><mi>d</mi><msub><mi>ij</mi><mn>2</mn></msub><mo>&prime;</mo></msubsup><mo>,</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>,</mo><msubsup><mi>d</mi><msub><mi>ij</mi><mi>n</mi></msub><mo>&prime;</mo></msubsup><mo>}</mo><mo>;</mo></mrow>]]></math><img file="FDA0000539292550000011.GIF" wi="470" he="98" /></maths>(3)按非参数放回抽样的方法自原始测距样本集D<sub>ij</sub>抽取容量同样为n的自助样本<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><msup><msub><mi>D</mi><mi>ij</mi></msub><mo>*</mo></msup><mo>=</mo><mo>{</mo><msup><msubsup><mi>d</mi><msub><mi>ij</mi><mn>1</mn></msub><mo>&prime;</mo></msubsup><mo>*</mo></msup><mo>,</mo><msup><msubsup><mi>d</mi><msub><mi>ij</mi><mn>2</mn></msub><mo>&prime;</mo></msubsup><mo>*</mo></msup><mo>,</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>,</mo><msup><msubsup><mi>d</mi><msub><mi>ij</mi><mi>n</mi></msub><mo>&prime;</mo></msubsup><mo>*</mo></msup><mo>}</mo><mo>;</mo></mrow>]]></math><img file="FDA0000539292550000012.GIF" wi="527" he="98" /></maths>(4)相继独立地抽取B个自助样本<maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><msup><msub><mi>D</mi><mi>ij</mi></msub><mrow><mo>*</mo><mi>b</mi></mrow></msup><mo>=</mo><mo>{</mo><msup><msubsup><mi>d</mi><msub><mi>ij</mi><mi>q</mi></msub><mo>&prime;</mo></msubsup><mrow><mo>*</mo><mi>b</mi></mrow></msup><mo>,</mo><msup><msubsup><mi>d</mi><msub><mi>ij</mi><mn>2</mn></msub><mo>&prime;</mo></msubsup><mrow><mo>*</mo><mi>b</mi></mrow></msup><mo>,</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>,</mo><msup><msubsup><mi>d</mi><msub><mi>ij</mi><mi>n</mi></msub><mo>&prime;</mo></msubsup><mrow><mo>*</mo><mi>b</mi></mrow></msup><mo>}</mo><mo>,</mo><mi>b</mi><mo>=</mo><mn>1,2</mn><mo>,</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>,</mo><mi>B</mi><mo>;</mo></mrow>]]></math><img file="FDA0000539292550000013.GIF" wi="868" he="98" /></maths>并对每个自助样本求均值:<maths num="0004" id="cmaths0004"><math><![CDATA[<mrow><msup><msub><mover><mi>D</mi><mo>^</mo></mover><mi>ij</mi></msub><mrow><mo>*</mo><mi>b</mi></mrow></msup><mo>=</mo><mfrac><mn>1</mn><mi>n</mi></mfrac><munderover><mi>&Sigma;</mi><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>n</mi></munderover><msup><msubsup><mi>d</mi><msub><mi>ij</mi><mi>k</mi></msub><mo>&prime;</mo></msubsup><mrow><mo>*</mo><mi>b</mi></mrow></msup><mo>,</mo><mi>b</mi><mo>=</mo><mn>1,2</mn><mo>,</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>,</mo><mi>B</mi><mo>;</mo></mrow>]]></math><img file="FDA0000539292550000014.GIF" wi="652" he="136" /></maths>(5)估计锚节点N<sub>i</sub>与N<sub>j</sub>间的测量距离标准差<img file="FDA0000539292550000015.GIF" wi="93" he="79" /><maths num="0005" id="cmaths0005"><math><![CDATA[<mrow><msub><mover><mi>&sigma;</mi><mo>^</mo></mover><mi>ij</mi></msub><mo>=</mo><msqrt><mfrac><mn>1</mn><mrow><mi>B</mi><mo>-</mo><mn>1</mn></mrow></mfrac><munderover><mi>&Sigma;</mi><mrow><mi>b</mi><mo>=</mo><mn>1</mn></mrow><mi>B</mi></munderover><msup><mrow><mo>(</mo><msup><msub><mover><mi>D</mi><mo>^</mo></mover><mi>ij</mi></msub><mrow><mo>*</mo><mi>b</mi></mrow></msup><mo>-</mo><msub><mrow><mo>|</mo><mo>|</mo><msub><mi>X</mi><mi>i</mi></msub><mo>-</mo><msub><mi>X</mi><mi>j</mi></msub><mo>|</mo><mo>|</mo></mrow><mn>2</mn></msub><mo>)</mo></mrow><mn>2</mn></msup></msqrt><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000539292550000016.GIF" wi="1061" he="138" /></maths>其中,X<sub>i</sub>为锚节点N<sub>i</sub>的坐标,X<sub>j</sub>为锚节点N<sub>j</sub>的坐标;(6)群内所有锚节点两两组合,重复步骤二中的(2)~(5),求得任意两个锚节点间的测量距离标准差,并提取出其中的最大值<img file="FDA0000539292550000017.GIF" wi="127" he="71" />(7)标定<img file="FDA0000539292550000018.GIF" wi="202" he="73" />为该定位群距离测量噪声的误差界;步骤三、构建待定位节点N<sub>a</sub>的集员估计可行集S<sub>a</sub>(x):<maths num="0006" id="cmaths0006"><math><![CDATA[<mrow><msub><mi>S</mi><mi>a</mi></msub><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow><mo>=</mo><munderover><mrow><mi></mi><mo>&cap;</mo></mrow><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>k</mi></munderover><mo>{</mo><mi>min</mi><mo>{</mo><msub><mi>R</mi><mn>0</mn></msub><mo>,</mo><msubsup><mi>d</mi><mi>ia</mi><mo>&prime;</mo></msubsup><mo>-</mo><msubsup><mi>&epsiv;</mi><mi>a</mi><mo>&prime;</mo></msubsup><mo>}</mo><mo>&le;</mo><msub><mrow><mo>|</mo><mo>|</mo><msub><mi>X</mi><mi>i</mi></msub><mo>-</mo><msub><mi>X</mi><mi>a</mi></msub><mo>|</mo><mo>|</mo></mrow><mn>2</mn></msub><mo>&le;</mo><msubsup><mi>d</mi><mi>ia</mi><mo>&prime;</mo></msubsup><mo>+</mo><msubsup><mi>&epsiv;</mi><mi>a</mi><mo>&prime;</mo></msubsup><mo>}</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000539292550000021.GIF" wi="1237" he="144" /></maths>其中,k为定位群内锚节点的个数,R<sub>0</sub>为节点的通讯半径,d′<sub>ia</sub>为锚节点N<sub>i</sub>与待定位节点N<sub>a</sub>间的量测距离,ε′<sub>a</sub>为在线标定的定位群误差界;步骤四、栅格化扫描可行集S<sub>a</sub>(x),求取待定位节点N<sub>a</sub>的坐标估计:<maths num="0007" id="cmaths0007"><math><![CDATA[<mrow><msub><mover><mi>X</mi><mo>^</mo></mover><mi>a</mi></msub><mo>=</mo><munder><mrow><mi>arg</mi><mi>min</mi></mrow><msub><mi>X</mi><mi>a</mi></msub></munder><mfrac><mrow><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>k</mi></munderover><msqrt><msup><mrow><mo>(</mo><msub><mrow><mo>|</mo><mo>|</mo><msubsup><mi>X</mi><mi>m</mi><mo>*</mo></msubsup><mo>-</mo><msub><mi>X</mi><mi>i</mi></msub><mo>|</mo><mo>|</mo></mrow><mn>2</mn></msub><mo>)</mo></mrow><mn>2</mn></msup><mo>-</mo><msup><msubsup><mi>d</mi><mi>ia</mi><mo>&prime;</mo></msubsup><mn>2</mn></msup></msqrt></mrow><mrow><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>k</mi></munderover><msub><mrow><mo>|</mo><mo>|</mo><msubsup><mi>X</mi><mi>m</mi><mo>*</mo></msubsup><mo>-</mo><msub><mi>X</mi><mi>i</mi></msub><mo>|</mo><mo>|</mo></mrow><mn>2</mn></msub></mrow></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>3</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000539292550000022.GIF" wi="1236" he="279" /></maths>subject to X<sub>a</sub>∈S<sub>a</sub>(x)其中,<img file="FDA0000539292550000023.GIF" wi="81" he="79" />为可行集S<sub>a</sub>(x)每个栅格空间的中心位置坐标,<img file="FDA0000539292550000024.GIF" wi="75" he="83" />为待定位节点N<sub>a</sub>坐标的最优点估计;步骤五、已定位节点在新的定位周期内执行基于时变误差界的集员自适应位置更新;(1)节点N<sub>a</sub>在n时刻完成定位后,提取集员自适应位置更新判定模型:Ψ<sup>‑</sup>(n)≤|H<sup>T</sup>(n)W<sub>a</sub>(n)|≤Ψ<sup>+</sup>(n)   (4)其中,Ψ<sup>‑</sup>(n)是一个包含了n时刻所有距离测量估计值下界的列向量,Ψ<sup>+</sup>(n)是对应n时刻所有距离测量估计值上界的列向量;W<sub>a</sub>(n)=[X<sub>1</sub> X<sub>2</sub> … X<sub>m</sub>]<sup>T</sup>表示n时刻定位群中所有m个传感器节点的坐标;H<sup>T</sup>(n)是集员转换矩阵,其列数等于定位群内节点的总数m,其行数等于定位群内锚节点的总个数,每行对应一个锚节点N<sub>i</sub>,且对应该锚节点ID的第i个元素为﹣1,对应节点N<sub>a</sub>的第a个元素为1,其余元素为0;(2)在新的定位周期即n+1时刻,对模型(4)中除节点坐标W<sub>a</sub>(n)外的其余参数进行更新,得到n+1时刻的集员自适应位置更新判定模型:Ψ<sup>‑</sup>(n+1)≤|H<sup>T</sup>(n+1)W<sub>a</sub>(n)|≤Ψ<sup>+</sup>(n+1)   (5)将n时刻的节点坐标W<sub>a</sub>(n)代入模型(5),并检验其是否成立;如果成立,则节点N<sub>a</sub>无需更新,即W<sub>a</sub>(n+1)=W<sub>a</sub>(n);否则,以μ<sub>w</sub>(n+1)为步长寻找能满足模型(6)的节点位置坐标W<sub>a</sub>(n+1):min|W<sub>a</sub>(n+1)‑W<sub>a</sub>(n)|<sup>2</sup>   (6)subject to:Ψ<sup>‑</sup>(n+1)≤|H<sup>T</sup>(n+1)W<sub>a</sub>(n+1)|≤Ψ<sup>+</sup>(n+1)计算W<sub>a</sub>(n+1)的公式为:W<sub>a</sub>(n+1)=W<sub>a</sub>(n)+μ<sub>w</sub>(n+1)e<sup>*</sup><sub>a</sub>(n+1)H(n+1)   (7)所述时变步长μ<sub>w</sub>(n+1)通过下式求取:<maths num="0008" id="cmaths0008"><math><![CDATA[<mrow><msub><mi>&mu;</mi><mi>w</mi></msub><mrow><mo>(</mo><mi>n</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>=</mo><mfenced open='{' close=''><mtable><mtr><mtd><mfrac><mn>1</mn><mrow><msup><mi>H</mi><mi>H</mi></msup><mrow><mo>(</mo><mi>n</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mi>H</mi><mrow><mo>(</mo><mi>n</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow></mrow></mfrac><mrow><mo>(</mo><mn>1</mn><mo>-</mo><mfrac><mrow><msubsup><mi>&epsiv;</mi><mi>a</mi><mo>&prime;</mo></msubsup><mrow><mo>(</mo><mi>n</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow></mrow><mrow><mo>|</mo><msup><msub><mi>e</mi><mi>a</mi></msub><mo>*</mo></msup><mrow><mo>(</mo><mi>n</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>|</mo></mrow></mfrac><mo>)</mo></mrow><mo>,</mo></mtd><mtd><mi>if</mi><mo>|</mo><msup><msub><mi>e</mi><mi>a</mi></msub><mo>*</mo></msup><mrow><mo>(</mo><mi>n</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>|</mo><mo>></mo><msubsup><mi>&epsiv;</mi><mi>a</mi><mo>&prime;</mo></msubsup><mrow><mo>(</mo><mi>n</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>.</mo></mtd></mtr><mtr><mtd><mn>0</mn><mo>,</mo></mtd><mtd><mi>otherwise</mi><mo>.</mo></mtd></mtr></mtable></mfenced></mrow>]]></math><img file="FDA0000539292550000031.GIF" wi="1564" he="269" /></maths>其中,<maths num="0009" id="cmaths0009"><math><![CDATA[<mrow><msub><mi>e</mi><mi>a</mi></msub><mrow><mo>(</mo><mi>n</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>=</mo><mover><mi>&Psi;</mi><mo>^</mo></mover><mrow><mo>(</mo><mi>n</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>-</mo><mo>|</mo><msup><mi>H</mi><mi>T</mi></msup><mrow><mo>(</mo><mi>n</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><msub><mi>W</mi><mi>a</mi></msub><mrow><mo>(</mo><mi>n</mi><mo>)</mo></mrow><mo>|</mo><mo>,</mo></mrow>]]></math><img file="FDA0000539292550000032.GIF" wi="803" he="99" /></maths>ε′<sub>a</sub>(n+1)为n+1时刻的定位群误差界。
地址 264001 山东省烟台市芝罘区二马路188号