发明名称 面向三维无线传感网的采用移动锚节点的定位方法
摘要 本发明的面向三维无线传感网的采用移动锚节点的定位方法,包括:a).部署移动锚节点;b).在希尔伯特曲线的拐点处广播信标信息;c).信标信息的接收;d).信标信息的选取;e).建立目标函数                                               <img file="dest_path_image002.GIF" wi="70" he="22" />;f).建立搜索空间<img file="dest_path_image004.GIF" wi="42" he="18" />;g).产生位置与飞行速度分别为<img file="dest_path_image006.GIF" wi="24" he="26" />、<img file="dest_path_image008.GIF" wi="18" he="26" />的<img file="dest_path_image010.GIF" wi="20" he="20" />个粒子;h).求取个体最佳位置<img file="dest_path_image012.GIF" wi="20" he="26" />;i).求取全局最佳位置;j).全局最佳位置的判断;k).求取新的 <img file="934261dest_path_image012.GIF" wi="20" he="26" />、<img file="dest_path_image014.GIF" wi="21" he="26" />;l).获取估算位置。本发明的定位方法,不仅实现了对无线传感器网络中各节点的准确定位,而且整个计算方法简单,耗能低,适于传感器节点采用;同时还有效实现了网络节点定位精度与能耗的均衡。
申请公布号 CN103517338B 申请公布日期 2016.05.25
申请号 CN201310486694.X 申请日期 2013.10.17
申请人 山东省计算中心 发明人 崔焕庆;王英龙;舒明雷;刘瑞霞;魏诺;杨明
分类号 H04W28/08(2009.01)I;H04W64/00(2009.01)I;H04W84/18(2009.01)I 主分类号 H04W28/08(2009.01)I
代理机构 济南泉城专利商标事务所 37218 代理人 褚庆森
主权项 一种面向三维无线传感网的采用移动锚节点的定位方法,其特征在于,包括以下步骤:a).部署移动锚节点,在待定位的无线传感器网络中部署可进行移动的锚节点;b).广播信标信息,移动锚节点以速度v沿希尔伯特曲线对整个网络进行遍历,并且在希尔伯特曲线的拐点处广播信标信息;按顺序对希尔伯特曲线的拐点按照1,2,3,…进行编号,广播的信标信息包括广播信标信息时移动锚节点的坐标、信标信息编号、测距信息;希尔伯特曲线上相邻两拐点之间的距离s满足不等式(1):<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><mi>s</mi><mo>&le;</mo><msqrt><mfrac><mn>4</mn><mn>11</mn></mfrac></msqrt><mi>R</mi><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000957944980000011.GIF" wi="405" he="142" /></maths>其中,R为设移动锚节点的通信半径;c).信标信息的接收,传感器节点接收移动锚节点发送的信标信息;d).信标信息的选取,传感器节点从接收的信标信息中,选择出4个不共面的信标信息;e).建立目标函数,建立如公式(2)所示的粒子群优化算法的目标函数:<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><mi>f</mi><mrow><mo>(</mo><mover><mi>x</mi><mo>~</mo></mover><mo>,</mo><mover><mi>y</mi><mo>~</mo></mover><mo>,</mo><mover><mi>z</mi><mo>~</mo></mover><mo>)</mo></mrow><mo>=</mo><mfrac><mn>1</mn><mn>4</mn></mfrac><munderover><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mn>4</mn></munderover><msup><mrow><mo>(</mo><mrow><msqrt><mrow><msup><mrow><mo>(</mo><mover><mi>x</mi><mo>~</mo></mover><mo>-</mo><msub><mi>x</mi><mi>i</mi></msub><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><msup><mrow><mo>(</mo><mover><mi>y</mi><mo>~</mo></mover><mo>-</mo><msub><mi>y</mi><mi>i</mi></msub><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><msup><mrow><mo>(</mo><mover><mi>z</mi><mo>~</mo></mover><mo>-</mo><msub><mi>z</mi><mi>i</mi></msub><mo>)</mo></mrow><mn>2</mn></msup></mrow></msqrt><mo>-</mo><msub><mi>d</mi><mi>i</mi></msub><mo>)</mo></mrow><mo>)</mo></mrow><mn>2</mn></msup><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000957944980000012.GIF" wi="1419" he="150" /></maths>其中,<img file="FDA0000957944980000013.GIF" wi="169" he="71" />为待定位的传感器节点的估算坐标,(x<sub>i</sub>,y<sub>i</sub>,z<sub>i</sub>)为步骤d)中所选择的4个信标信息中第i个的坐标,d<sub>i</sub>是传感器节点测得的与第i个信标信息的距离;i∈(1,2,3,4);f).建立搜索空间,设定如公式(3)所示的粒子群优化算法中的粒子搜索空间space:space=[x<sub>min</sub>,x<sub>max</sub>]×[y<sub>min</sub>,y<sub>max</sub>]×[z<sub>min</sub>×z<sub>max</sub>]    (3)其中,x<sub>min</sub>=max(x<sub>i</sub>‑R),x<sub>max</sub>=min(x<sub>i</sub>+R);y<sub>min</sub>=max(y<sub>i</sub>‑R),y<sub>max</sub>=min(y<sub>i</sub>+R);z<sub>min</sub>=max(z<sub>i</sub>‑R),z<sub>max</sub>=min(z<sub>i</sub>+R);(x<sub>i</sub>,y<sub>i</sub>,z<sub>i</sub>)为步骤d)中所选择的4个信标信息中第i个的坐标,i∈(1,2,3,4);g).产生粒子群,随机产生N个粒子,设X<sub>j</sub>=(x<sub>j1</sub>,x<sub>j2</sub>,x<sub>j3</sub>)、V<sub>j</sub>=(v<sub>j1</sub>,v<sub>j2</sub>,v<sub>j3</sub>)分别是第j个粒子的当前位置与飞行速度;h).求取个体最佳位置,设P<sub>j</sub>=(v<sub>j1</sub>,v<sub>j2</sub>,v<sub>j3</sub>)是第j个粒子所经历的最佳位置,即使目标函数取最小值时的坐标值;P<sub>j</sub>通过公式(4)进行求取:<maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><msub><mi>P</mi><mi>j</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>=</mo><mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><msub><mi>P</mi><mi>j</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow></mrow></mtd><mtd><mtable><mtr><mtd><mrow><mi>i</mi><mi>f</mi></mrow></mtd><mtd><mrow><mi>f</mi><mrow><mo>(</mo><msub><mi>X</mi><mi>j</mi></msub><mo>(</mo><mrow><mi>t</mi><mo>+</mo><mn>1</mn></mrow><mo>)</mo><mo>)</mo></mrow><mo>&GreaterEqual;</mo><mi>f</mi><mrow><mo>(</mo><msub><mi>P</mi><mi>j</mi></msub><mo>(</mo><mi>t</mi><mo>)</mo><mo>)</mo></mrow></mrow></mtd></mtr></mtable></mtd></mtr><mtr><mtd><mrow><msub><mi>X</mi><mi>j</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow></mrow></mtd><mtd><mrow><mi>o</mi><mi>t</mi><mi>h</mi><mi>e</mi><mi>r</mi><mi>w</mi><mi>i</mi><mi>s</mi><mi>e</mi></mrow></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>4</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000957944980000021.GIF" wi="1222" he="175" /></maths>其中,t为迭代次数,为正整数;随机粒子群优化的进化方程X<sub>j</sub>(t+1)为:<maths num="0004" id="cmaths0004"><math><![CDATA[<mrow><mtable><mtr><mtd><mrow><msub><mi>V</mi><mi>i</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>=</mo><msub><mi>c</mi><mn>1</mn></msub><msub><mi>r</mi><mn>1</mn></msub><mrow><mo>(</mo><msub><mi>P</mi><mi>i</mi></msub><mo>-</mo><msub><mi>X</mi><mi>i</mi></msub><mo>(</mo><mi>t</mi><mo>)</mo><mo>)</mo></mrow><mo>+</mo><msub><mi>c</mi><mn>2</mn></msub><msub><mi>r</mi><mn>2</mn></msub><mrow><mo>(</mo><msub><mi>P</mi><mi>g</mi></msub><mo>-</mo><msub><mi>X</mi><mi>i</mi></msub><mo>(</mo><mi>t</mi><mo>)</mo><mo>)</mo></mrow></mrow></mtd></mtr><mtr><mtd><mrow><msub><mi>X</mi><mi>i</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>=</mo><msub><mi>X</mi><mi>i</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>+</mo><msub><mi>V</mi><mi>i</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow></mrow></mtd></mtr></mtable><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>5</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000957944980000022.GIF" wi="1166" he="159" /></maths>其中c<sub>1</sub>、c<sub>2</sub>是加速常数,r<sub>1</sub>、r<sub>2</sub>是在(0,1)内均匀分布且相互独立的随机变量;i).求取全局最佳位置,根据步骤h)中获取的单个粒子的最佳位置,求取所有粒子所经历过的最好位置,即全局最佳位置P<sub>g</sub>(t);P<sub>g</sub>(t)=arg min{f(P<sub>j</sub>(t))|j=1,2,3,...,N}    (6)其中,函数表达式argmin{}为使目标函数取最小值的P<sub>j</sub>(t)的坐标值;j).全局最佳位置的判断,判断步骤i)中获取的全局最佳位置所对应的目标函数值,是否小于或等于给定的阈值δ,如果小于或等于δ,则执行步骤l);如果大于δ,则执行步骤k);k).求取新的P<sub>j</sub>、P<sub>g</sub>,通过产生新的粒子或采用对公式(5)对粒子进行进化,求取新的P<sub>j</sub>、P<sub>g</sub>,重新执行步骤j),以避免目标函数陷入局部最优;l).获取估算位置,全局最佳位置即为该传感器节点的估算位置。
地址 250101 山东省济南市高新区新泺大街2008号银荷大厦B座四层山东省计算中心