CN103906166A - 一种基于人工势场的无线传感器网络路由方法 - Google Patents

一种基于人工势场的无线传感器网络路由方法 Download PDF

Info

Publication number
CN103906166A
CN103906166A CN201410137166.8A CN201410137166A CN103906166A CN 103906166 A CN103906166 A CN 103906166A CN 201410137166 A CN201410137166 A CN 201410137166A CN 103906166 A CN103906166 A CN 103906166A
Authority
CN
China
Prior art keywords
node
route
packet
sensor
oneself
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410137166.8A
Other languages
English (en)
Other versions
CN103906166B (zh
Inventor
张若南
王世超
蔡琳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Han Primary School
Original Assignee
Northwestern Polytechnical University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Northwestern Polytechnical University filed Critical Northwestern Polytechnical University
Priority to CN201410137166.8A priority Critical patent/CN103906166B/zh
Publication of CN103906166A publication Critical patent/CN103906166A/zh
Application granted granted Critical
Publication of CN103906166B publication Critical patent/CN103906166B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Mobile Radio Communication Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及一种基于人工势场的无线传感器网络路由方法,分为四个步骤:初始化阶段、路由建立阶段、路由上传阶段和数据发送阶段,解决了现有技术中路由开销和能耗大、路由选择不具备均衡负载功能的问题,降低了计算复杂性,避免了大量的路由开销,提高了能效,并且可以起到均衡网络负载功能。

Description

一种基于人工势场的无线传感器网络路由方法
技术领域
本发明涉及通信领域,具体涉及一种基于人工势场的无线传感器网络路由方法。
背景技术
无线传感器网络具有部署灵活、扩展方便、价格低廉等优点。然而传感器节点一般是由电池供电,因此能量是影响无线传感器网络性能的关键问题。路由是选择数据包从信源节点到目标节点的转发路径,并决定数据包在路径上如何转发的方法。无线传感器网络的路由方法需要特别注意节能特性。人工势场概念最早由Khatib在文献“Real-time obstacle avoidance for manipulators and mobile robots[J].The internationaljournal of robotics research,1986,5(1):90-98”中提出,应用于足球机器人避障路径规划。其基本思想是构造目标位姿引力场和障碍物周围斥力场共同作用的人工势场,搜索势函数的下降方向来寻找无碰撞路径。
文献“伪三维的地理位置无线传感器网络路由算法,《计算机工程与应用》,http://www.cnki.net/kcms/detail/11.2127.TP.20121121.1100.012.html”公开了一种基于地理位置信息的无线传感器路由方法。文献中所提出的路由方法在空间三维电子地图上进行离散取点,计算相邻点之间的空间欧氏距离,将相邻关系映射到二维平面上,然后运用最短路径计算方法,计算出地图表面这些离散点之间沿起伏地势的近似最短路径。传感器节点根据自身地理位置,采用一种四点最近定位方法将自身定位到最近的地图离散点,并根据离散点之间的最短距离逼近实际起伏地势上的最短路径,然后寻找邻居节点采样点中距离目标节点采样点路由最短的一个,以该采样点对应的邻居节点作为下一跳,并转发数据,直至将数据传到目标节点。文献所介绍的无线传感器网络路由方法存在如下问题:计算最短路径时使用全局地图信息,需要大量的路由开销,计算方法复杂,能耗较大;所选择的路由只是地理位置上的最短,未考虑均衡网络负载功能。
发明内容
要解决的技术问题
为了避免现有技术中路由开销和能耗大、路由选择不具备均衡负载功能的问题,本发明提供一种新型的基于人工势场的无线传感器网络路由方法,降低了计算复杂性,避免了大量的路由开销,提高了能效,并且可以起到均衡网络负载功能。
技术方案
一种基于人工势场的无线传感器网络路由方法,其特征在于步骤如下:
步骤1:初始化阶段:
a)对网络中的汇聚节点进行编码,设置其ID等于1;对网络中的传感器节点进行编码,使它们的ID互不相同且均不等于1,然后所有传感器节点将自己的空洞标志位初始化为“false”;
b)传感器节点通过定位装置获取自身位置坐标Pi(xi,yi),其中xi、yi分别为其所在位置点的横、纵坐标值;传感器节点通过电源管理模块读取自身剩余电量Vi
c)汇聚节点采用泛洪方式广播自身位置坐标P(x1,y1),传感器节点接收汇聚节点的自身位置坐标并存储,计算自己到汇聚节点的距离di_1
d i _ 1 = ( x i - x 1 ) 2 + ( y i - y 1 ) 2
式中,下标i_1表示从ID为i的传感器节点到ID为1的汇聚节点的距离区间;
d)所有传感器节点向四周广播“hello”数据包,数据包包含自己的ID、位置信息及剩余电量信息;
e)当传感器节点i收到邻居节点j发来的“hello”数据包后,所述的邻居节点为能够直接与本传感器节点互相通信的传感器节点或汇聚节点,传感器节点i取出数据包中的位置信息,记为Pj(xj,yj),计算自己到该邻居节点距离di_j和邻居节点j到汇聚节点的距离dj_1
d i _ j = ( x i - x j ) 2 + ( y i - y j ) 2
d j _ 1 = ( x j - x 1 ) 2 + ( y j - y 1 ) 2
式中,下标i_j表示从传感器节点i到ID为j邻居节点的距离区间,下标j_1表示从邻居节点j到汇聚节点的距离区间;将dj_1和作di_1比较,如果dj_1<di_1,则将邻居节点的ID、位置信息、距离di_j和剩余能量信息放入邻居集合Ω1;如果dj_1≥di_1,则将邻居节点的ID、位置信息、距离di_j和剩余能量信息放入邻居集合Ω2
步骤e一直重复到所有传感器节点都接收了自己所有邻居节点的“hello”数据包并完成子步骤内的计算过程;
f)每个传感器节点开始检查自己的邻居集合Ω1和Ω2,如果Ω1和Ω2都是空集,该传感器节点报废;如果Ω1是空集,Ω2不是空集,该传感器节点将自己的空洞标志位更新为“true”;
步骤2:路由建立阶段:
a)传感器节点检查自身的空洞标志位,根据空洞标志位的“true”或“false”选择不同的路由请求方案:
当空洞标志位为“false”,计算出传感器节点i所受的合力在x和y方向上的分量Fix、Fiy
F ix = V 1 × ( x 1 - x i ) d i _ 1 3 + Σ j ∈ Ω 1 V j × ( x j - x i ) d i _ j 3 F iy = V 1 × ( y 1 - y i ) d i _ 1 3 + Σ j ∈ Ω 1 V j × ( y j - y i ) d i _ j 3
式中,V1的值等于
Figure BDA0000487412140000034
其中K是常数,di_1、di_j、dj_1分别表示从传感器节点i到汇聚节点、从传感器节点i到邻居节点j、从邻居节点j到汇聚节点的距离,Vj表示邻居节点j的剩余电量;利用电场引力分量Fix和Fiy得到电场合力的方向向量
Figure BDA0000487412140000035
e F i → = ( F ix F ix 2 + F iy 2 , F iy F ix 2 + F iy 2 )
计算电场合力的方向向量
Figure BDA0000487412140000042
与传感器节点i到邻居节点j的连线的夹角θij,其中j∈Ω1
θ ij = | cos - 1 ( ( x j - x i ) × F ix + ( y j - y i ) × F iy d i _ j × F ix 2 + F iy 2 ) |
从邻居集合Ω1中选择使θij最小的对应邻居节点作为下一跳,发送路由请求数据包,该路由请求数据包包括下一跳ID、自身的ID以及自己的空洞标志位;
当空洞标志位为“true”,传感器节点从集合Ω2中选择dj_1最小的对应邻居节点作为下一跳,发送路由请求数据包,路由请求数据包中包括下一跳ID、自身的ID和空洞标志位;
b)传感器节点收到来自邻居节点的路由请求数据包,取出其中的ID和空洞标志位信息;如果空洞标志位是“true”,将该ID对应的邻居节点从自身的邻居集合Ω1或Ω2中删除,重新执行步骤1的步骤f)更新自身的路由空洞标志位;如果空洞标志位是“false”,传感器节点检查自身的空洞标志位进行路由答复:如果是“true”则给路由请求数据包的发送者反馈一个路由错误答复数据包,该数据包的路由答复域的值是“0”;如果是“false”则给路由请求数据包的发送者反馈一个路由确认答复数据包,该数据包的路由答复域的值是“1”;
c)传感器节点收到反馈的路由答复数据包后,解析其中的路由答复域,如果路由答复域的值是“1”,则从当前节点到选定下一跳节点的路由建立成功;如果路由答复域的值是“0”,则路由建立失败,将选定下一跳节点从自身的邻居集合Ω1或Ω2中删除,执行步骤1的步骤f)更新自身的路由空洞标志位后,再重新执行步骤2;
步骤3:路由上传阶段:
a)源节点i生成一个路由上传包,路由上传包包括目的节点信息域、源节点信息域和中继节点信息域,将该路由上传包发送给自己的邻居节点j;邻居节点j收到该数据包后,将包中的中继节点域取出,顺序加入自己的ID,并修改下一跳ID,然后重新打包,发给自己的下一跳节点k;节点k将包中的中继节点域取出,顺序加入自己ID,并修改下一跳ID,然后重新打包,发给汇聚节点;
b)汇聚节点收到路由上传包后,把源节点信息域和中继节点信息域的信息取出,得到了从源节点到汇聚节点的完整路由信息,当所有传感器节点的路由上传包都被汇聚节点接收后,汇聚节点就拥有了整个网络的完整路由表;
步骤4:数据发送阶段:
a)汇聚节点查询路由表,找到被查询节点所对应的路由信息,将路由信息和查询信息打包成查询信息包,并通过路由表发送给下一跳;中继节点收到该查询信息包,将包中的路由信息域取出,查询自己所应转发的下一跳节点ID,修改包中的下一跳ID域值为查得的结果,将路由信息域中自己的ID部分删除,重新打包该数据包后向查得的下一跳发送,直至查询数据包到达被查询节点;
b)源节点收到查询信息包后,将数据打包后发送给自己的下一跳节点,下一跳节点收到此数据包后,继续向自己的下一跳节点转发,直至数据包抵达汇聚节点。
所述的K的取值范围为[0.5,5]。
有益效果
本发明提出的一种基于人工势场的无线传感器网络路由方法,具有如下的有益效果:
第一,本发明所涉及的路由方法算法简单,无需大量复杂的计算,适合于在无线传感器网络中部署;
第二,本发明所涉及的路由方法避免了全局网络信息的交换,只需要利用一跳邻居节点信息,路由开销小;
第三,本发明创造性地将人工势场概念应用于无线传感器网络路由问题。根据静电场原理,负电荷所受的电场力指向于高电势方向,在本发明中高电势的方向一般对应于邻居节点密集的方向。而且本发明中下一跳的选择主要依赖于电场引力合力的方向,所以路由选择更倾向于偏向节点密度高的区域。也即,节点密度高的区域将承担更多的网络负载,从而通过路由间接地均衡了网络负载。
第四,本发明所涉及的路由方法可以有效提高网络使用寿命。
第五,本发明所涉及的路由方法鲁棒性好,路由成功率高。
附图说明
图1典型的包含传感器节点和汇聚节点的网络
图2路由空洞情况
图3根据电场力合力方向选择下一跳节点
图4陷入路由空洞时的路由选择
图5路由上传过程
图6汇聚节点发送查询消息
具体实施方式
现结合实施例、附图对本发明作进一步描述:
图1是一种典型的网络拓扑,其中以节点M为中心的虚线圆表示节点M的无线通信半径。穿越节点M的弧线的中心是汇聚节点,半径是M到汇聚节点距离。按照以下步骤进行初始化:
a)对网络中的汇聚节点进行编码,设置其ID等于1;对网络中的传感器节点进行编码,使它们的ID互不相同且均不等于1,然后所有传感器节点将自己的空洞标志位初始化为“false”;
b)传感器节点通过定位装置获取自身位置坐标Pi(xi,yi),其中xi、yi分别为其所在位置点的横、纵坐标值;传感器节点通过电源管理模块读取自身剩余电量Vi
c)汇聚节点采用泛洪方式广播自身位置坐标P(x1,y1),传感器节点接收汇聚节点的自身位置坐标并存储,计算自己到汇聚节点的距离di_1
d i _ 1 = ( x i - x 1 ) 2 + ( y i - y 1 ) 2
式中,下标i_1表示从ID为i的传感器节点到ID为1的汇聚节点的距离区间;
d)所有传感器节点向四周广播“hello”数据包,数据包包含自己的ID、位置信息及剩余电量信息,其格式如下:
报文头 ID 位置信息 剩余电量 其它内容
e)当传感器节点i收到邻居节点j发来的“hello”数据包后,所述的邻居节点为能够直接与本传感器节点互相通信的传感器节点或汇聚节点,传感器节点i取出数据包中的位置信息,记为Pj(xj,yj),计算自己到该邻居节点距离di_j和邻居节点j到汇聚节点的距离dj_1
d i _ j = ( x i - x j ) 2 + ( y i - y j ) 2
d j _ 1 = ( x j - x 1 ) 2 + ( y j - y 1 ) 2
式中,下标i_j表示从传感器节点i到ID为j邻居节点的距离区间,下标j_1表示从邻居节点j到汇聚节点的距离区间;将dj_1和作di_1比较,如果dj_1<di_1,则将邻居节点的ID、位置信息、距离di_j和剩余能量信息放入邻居集合Ω1;如果dj_1≥di_1,则将邻居节点的ID、位置信息、距离di_j和剩余能量信息放入邻居集合Ω2。如图1所示,虚线圆所包括的传感器节点(除去M)是节点M的邻居节点,虚线弧将M的邻居节点分为两个部分:到汇聚节点的距离比M近和到汇聚节点的距离比M远。这两部分邻居分别被M放入集合Ω1和Ω2中。
步骤e一直重复到所有传感器节点都接收了自己所有邻居节点的“hello”数据包并完成子步骤内的计算过程;
f)每个传感器节点开始检查自己的邻居集合Ω1和Ω2,如果Ω1和Ω2都是空集,说明节点不在网络拓扑内,该传感器节点报废;如果Ω1是空集,Ω2不是空集,说明存在邻居节点,但邻居到汇聚节点的距离都比自己的更远,该传感器节点将自己的空洞标志位更新为“true”;这种情况如图2所示,节点N的通信半径内存在邻居节点,但邻居到汇聚节点的距离都比自己的远,本方法中称这种情况为“陷入了路由空洞”,陷入路由空洞的节点需要将空洞标志位置为“true”。
等待初始化工作完成后,如果对于节点j,dj_1小于节点j的通信半径,也即可直达汇聚节点,则设定下一跳节点ID为1,并将空洞标志为更新为“false”,然后直接执行路由上传阶段。否则,网络执行路由建立阶段:
a)路由请求:传感器节点检查自身的空洞标志位,根据空洞标志位的“true”或“false”选择不同的路由请求方案:
当空洞标志位为“false”,计算出传感器节点i所受的合力在x和y方向上的分量Fix、Fiy
F ix = V 1 × ( x 1 - x i ) d i _ 1 3 + Σ j ∈ Ω 1 V j × ( x j - x i ) d i _ j 3 F iy = V 1 × ( y 1 - y i ) d i _ 1 3 + Σ j ∈ Ω 1 V j × ( y j - y i ) d i _ j 3
式中,V1的值等于
Figure BDA0000487412140000082
其中K是常数,其值介于区间[0.5,5]内,并且需要在网络部署之前设定好,K值将直接影响路由的选择结果,K值较小时,路由结果将偏重于均衡负载,K值较大时,路由结果将偏重于减少跳数。di_1、di_j、dj_1分别表示从传感器节点i到汇聚节点、从传感器节点i到邻居节点j、从邻居节点j到汇聚节点的距离,Vj表示邻居节点j的剩余电量;利用电场引力分量Fix和Fiy得到电场合力的方向向量
Figure BDA0000487412140000083
e F i → = ( F ix F ix 2 + F iy 2 , F iy F ix 2 + F iy 2 )
计算电场合力的方向向量
Figure BDA0000487412140000085
与传感器节点i到邻居节点j的连线的夹角θij,其中j∈Ω1
θ ij = | cos - 1 ( ( x j - x i ) × F ix + ( y j - y i ) × F iy d i _ j × F ix 2 + F iy 2 ) |
从邻居集合Ω1中选择使θij最小的对应邻居节点作为下一跳,如图3所示,连线Lij,Lik和Lil中,Lik与合力方向向量夹角值最小,故选择邻居节点k作为节点i的下一跳。确定了下一跳后,发送路由请求数据包,该路由请求数据包包括下一跳ID、自身的ID以及自己的空洞标志位,格式如下:
报文头 下一跳ID 自身ID 空洞标志 请求内容
当空洞标志位为“true”,节点遭遇了路由空洞,也即节点的邻居中,没有比自己更靠近汇聚节点的了,此时需要采用备用路由方案。传感器节点从集合Ω2中选择dj_1最小的对应邻居节点作为下一跳,也即到汇聚节点距离最短的一个作为下一跳。如图4所示,节点i陷入了路由空洞,其邻居集合Ω2中有四个节点:j、k、l、p,节点i从中选择距离汇聚节点最近的一个,也即节点j,作为下一跳。确定下一跳后,向其发送路由请求数据包,路由请求数据包中包括下一跳ID、自身的ID和空洞标志位,格式如下:
报文头 下一跳ID 自身ID 空洞标志 请求内容
b)路由答复:传感器节点收到来自邻居节点的路由请求数据包,取出其中的ID和空洞标志位信息;如果空洞标志位是“true”,说明该邻居陷入了路由空洞。将该ID对应的邻居节点从自身的邻居集合Ω1或Ω2中删除,重新执行步骤1的步骤f)更新自身的路由空洞标志位;如果空洞标志位是“false”,传感器节点检查自身的空洞标志位进行路由答复:如果是“true”则给路由请求数据包的发送者反馈一个路由错误答复数据包,该数据包的路由答复域的值是“0”,格式如下:
报文头 自身ID 空洞标志 路由答复
如果是“false”则给路由请求数据包的发送者反馈一个路由确认答复数据包,该数据包的路由答复域的值是“1”,格式如下:
报文头 自身ID 空洞标志 路由答复
c)路由确认:传感器节点收到反馈的路由答复数据包后,解析其中的路由答复域,如果路由答复域的值是“1”,则从当前节点到选定下一跳节点的路由建立成功;如果路由答复域的值是“0”,则路由建立失败,将选定下一跳节点从自身的邻居集合Ω1或Ω2中删除,执行步骤1的步骤f)更新自身的路由空洞标志位后,再重新执行步骤2。
路由建立阶段完成后,进入路由上传阶段。按照以下步骤完成对汇聚节点的路由上传:
a)如图5所示的路由上传过程:源节点i生成一个路由上传包,路由上传包包括目的节点信息域、源节点信息域和中继节点信息域,其格式如下:
报文头 1 i j i 其他内容
将该路由上传包发送给自己的邻居节点j;邻居节点j收到该数据包后,将包中的中继节点域取出,顺序加入自己的ID,并修改下一跳ID,然后重新打包,发给自己的下一跳节点k,此时的路由上传包格式如下:
报文头 1 i k i,j 其他内容
节点k将包中的中继节点域取出,顺序加入自己ID,并修改下一跳ID,然后重新打包,发给汇聚节点,此时的路由上传包格式如下:
报文头 1 i 1 i,j,k 其他内容
b)解析路由上传包:汇聚节点收到路由上传包后,把源节点信息域和中继节点信息域的信息取出,得到了从源节点到汇聚节点的完整路由,如图5所示,汇聚节点通过节点k收到了源节点i的路由上传包,将源节点域和中继节点域取出,即可得到自身到源节点路由信息:1→k→j→i。当所有传感器节点的路由上传包都被汇聚节点接收后,汇聚节点就拥有了整个网络的完整路由表。
路由上传阶段结束后,网络开始数据发送阶段:
a)下行数据发送:汇聚节点查询路由表,找到被查询节点所对应的路由信息,将路由信息和查询信息打包成查询信息包,格式如下:
报文头 目的节点ID 源节点ID 下一跳ID 路由信息 查询内容
这里源节点是汇聚节点,故源节点ID域的值应该为1,并通过路由表发送给下一跳;中继节点收到该查询信息包,将包中的路由信息域取出,查询自己所应转发的下一跳节点ID,修改包中的下一跳ID域值为查得的结果,将路由信息域中自己的ID部分删除,重新打包该数据包后向查得的下一跳发送,直至查询数据包到达被查询节点。此过程如图6所示,汇聚节点要向节点i发送查询消息,则生成一个查询消息包如下:
报文头 i 1 k k,j,i 查询内容
将该包转发给节点k,节点k收到后将路由信息取出,查到自己所应转发的下一跳为节点j,然后将路由信息中自己的ID删除,更新下一跳节点ID,重新打包,得到如下消息查询包:
报文头 i 1 j j,i 查询内容
节点k将该包转发给下一跳节点j,节点j收到后将路由信息取出,查到自己所应转发的下一跳为节点i,然后将路由信息中自己的ID删除,更新下一跳节点ID,重新打包,得到如下消息查询包:
报文头 i 1 i i 查询内容
节点j把消息查询包发送给下一跳节点i,至此查询消息成功抵达目标节点。
b)上行数据发送:上行数据发送指源节点向汇聚节点发送数据。源节点收到查询信息包后,将数据打包后发送给自己的下一跳节点,数据包格式如下:
报文头 目的节点ID 源节点ID 下一跳ID 数据内容
这里目的节点是汇聚节点,故目的节点ID域的值应该为1。
中继节点收到此数据包后,查询自己在路由建立阶段所确定的下一跳ID,并用该值更新数据包中的下一跳ID域,然后重新打包后将数据包转发给自己的下一跳节点。所有的中继节点均执行此过程,直至数据包抵达目的节点。

Claims (2)

1.一种基于人工势场的无线传感器网络路由方法,其特征在于步骤如下:
步骤1:初始化阶段:
a)对网络中的汇聚节点进行编码,设置其ID等于1;对网络中的传感器节点进行编码,使它们的ID互不相同且均不等于1,然后所有传感器节点将自己的空洞标志位初始化为“false”;
b)传感器节点通过定位装置获取自身位置坐标Pi(xi,yi),其中xi、yi分别为其所在位置点的横、纵坐标值;传感器节点通过电源管理模块读取自身剩余电量Vi
c)汇聚节点采用泛洪方式广播自身位置坐标P(x1,y1),传感器节点接收汇聚节点的自身位置坐标并存储,计算自己到汇聚节点的距离di_1
d i _ 1 = ( x i - x 1 ) 2 + ( y i - y 1 ) 2
式中,下标i_1表示从ID为i的传感器节点到ID为1的汇聚节点的距离区间;
d)所有传感器节点向四周广播“hello”数据包,数据包包含自己的ID、位置信息及剩余电量信息;
e)当传感器节点i收到邻居节点j发来的“hello”数据包后,所述的邻居节点为能够直接与本传感器节点互相通信的传感器节点或汇聚节点,传感器节点i取出数据包中的位置信息,记为Pj(xj,yj),计算自己到该邻居节点距离di_j和邻居节点j到汇聚节点的距离dj_1
d i _ j = ( x i - x j ) 2 + ( y i - y j ) 2
d j _ 1 = ( x j - x 1 ) 2 + ( y j - y 1 ) 2
式中,下标i_j表示从传感器节点i到ID为j邻居节点的距离区间,下标j_1表示从邻居节点j到汇聚节点的距离区间;将dj_1和作di_1比较,如果dj_1<di_1,则将邻居节点的ID、位置信息、距离di_j和剩余能量信息放入邻居集合Ω1;如果dj_1≥di_1,则将邻居节点的ID、位置信息、距离di_j和剩余能量信息放入邻居集合Ω2
步骤e一直重复到所有传感器节点都接收了自己所有邻居节点的“hello”数据包并完成子步骤内的计算过程;
f)每个传感器节点开始检查自己的邻居集合Ω1和Ω2,如果Ω1和Ω2都是空集,该传感器节点报废;如果Ω1是空集,Ω2不是空集,该传感器节点将自己的空洞标志位更新为“true”;
步骤2:路由建立阶段:
a)传感器节点检查自身的空洞标志位,根据空洞标志位的“true”或“false”选择不同的路由请求方案:
当空洞标志位为“false”,计算出传感器节点i所受的合力在x和y方向上的分量Fix、Fiy
F ix = V 1 × ( x 1 - x i ) d i _ 1 3 + Σ j ∈ Ω 1 V j × ( x j - x i ) d i _ j 3 F iy = V 1 × ( y 1 - y i ) d i _ 1 3 + Σ j ∈ Ω 1 V j × ( y j - y i ) d i _ j 3
式中,V1的值等于
Figure FDA0000487412130000022
其中K是常数,di_1、di_j、dj_1分别表示从传感器节点i到汇聚节点、从传感器节点i到邻居节点j、从邻居节点j到汇聚节点的距离,Vj表示邻居节点j的剩余电量;利用电场引力分量Fix和Fiy得到电场合力的方向向量
Figure FDA0000487412130000023
e F i → = ( F ix F ix 2 + F iy 2 , F iy F ix 2 + F iy 2 )
计算电场合力的方向向量与传感器节点i到邻居节点j的连线的夹角θij,其中j∈Ω1
θ ij = | cos - 1 ( ( x j - x i ) × F ix + ( y j - y i ) × F iy d i _ j × F ix 2 + F iy 2 ) |
从邻居集合Ω1中选择使θij最小的对应邻居节点作为下一跳,发送路由请求数据包,该路由请求数据包包括下一跳ID、自身的ID以及自己的空洞标志位;
当空洞标志位为“true”,传感器节点从集合Ω2中选择dj_1最小的对应邻居节点作为下一跳,发送路由请求数据包,路由请求数据包中包括下一跳ID、自身的ID和空洞标志位;
b)传感器节点收到来自邻居节点的路由请求数据包,取出其中的ID和空洞标志位信息;如果空洞标志位是“true”,将该ID对应的邻居节点从自身的邻居集合Ω1或Ω2中删除,重新执行步骤1的步骤f)更新自身的路由空洞标志位;如果空洞标志位是“false”,传感器节点检查自身的空洞标志位进行路由答复:如果是“true”则给路由请求数据包的发送者反馈一个路由错误答复数据包,该数据包的路由答复域的值是“0”;如果是“false”则给路由请求数据包的发送者反馈一个路由确认答复数据包,该数据包的路由答复域的值是“1”;
c)传感器节点收到反馈的路由答复数据包后,解析其中的路由答复域,如果路由答复域的值是“1”,则从当前节点到选定下一跳节点的路由建立成功;如果路由答复域的值是“0”,则路由建立失败,将选定下一跳节点从自身的邻居集合Ω1或Ω2中删除,执行步骤1的步骤f)更新自身的路由空洞标志位后,再重新执行步骤2;
步骤3:路由上传阶段:
a)源节点i生成一个路由上传包,路由上传包包括目的节点信息域、源节点信息域和中继节点信息域,将该路由上传包发送给自己的邻居节点j;邻居节点j收到该数据包后,将包中的中继节点域取出,顺序加入自己的ID,并修改下一跳ID,然后重新打包,发给自己的下一跳节点k;节点k将包中的中继节点域取出,顺序加入自己ID,并修改下一跳ID,然后重新打包,发给汇聚节点;
b)汇聚节点收到路由上传包后,把源节点信息域和中继节点信息域的信息取出,得到了从源节点到汇聚节点的完整路由信息,当所有传感器节点的路由上传包都被汇聚节点接收后,汇聚节点就拥有了整个网络的完整路由表;
步骤4:数据发送阶段:
a)汇聚节点查询路由表,找到被查询节点所对应的路由信息,将路由信息和查询信息打包成查询信息包,并通过路由表发送给下一跳;中继节点收到该查询信息包,将包中的路由信息域取出,查询自己所应转发的下一跳节点ID,修改包中的下一跳ID域值为查得的结果,将路由信息域中自己的ID部分删除,重新打包该数据包后向查得的下一跳发送,直至查询数据包到达被查询节点;
b)源节点收到查询信息包后,将数据打包后发送给自己的下一跳节点,下一跳节点收到此数据包后,继续向自己的下一跳节点转发,直至数据包抵达汇聚节点。
2.根据权利要求1所述的一种基于人工势场的无线传感器网络路由方法,其特征在于所述的K的取值范围为[0.5,5]。
CN201410137166.8A 2014-04-04 2014-04-04 一种基于人工势场的无线传感器网络路由方法 Active CN103906166B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410137166.8A CN103906166B (zh) 2014-04-04 2014-04-04 一种基于人工势场的无线传感器网络路由方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410137166.8A CN103906166B (zh) 2014-04-04 2014-04-04 一种基于人工势场的无线传感器网络路由方法

Publications (2)

Publication Number Publication Date
CN103906166A true CN103906166A (zh) 2014-07-02
CN103906166B CN103906166B (zh) 2017-04-26

Family

ID=50997262

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410137166.8A Active CN103906166B (zh) 2014-04-04 2014-04-04 一种基于人工势场的无线传感器网络路由方法

Country Status (1)

Country Link
CN (1) CN103906166B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104821921A (zh) * 2015-04-23 2015-08-05 苏州中晟宏芯信息科技有限公司 一种基于人工势场法的异构众核任务调度的路由机制
CN105451192A (zh) * 2015-11-30 2016-03-30 广州日滨科技发展有限公司 一种直线式无线系统的路由建立方法和路由建立装置
CN105517093A (zh) * 2015-11-30 2016-04-20 浙江工业大学 一种无线传感器网络中基于网络均衡性的节能路由方法
CN107197495A (zh) * 2017-01-17 2017-09-22 燕山大学 一种基于多属性决策的无线传感器网络安全路由算法
CN107580293A (zh) * 2017-08-04 2018-01-12 昆明理工大学 一种基于虚拟力的汇聚节点重定位方法
CN109121178A (zh) * 2018-07-24 2019-01-01 西北工业大学 一种基于人工势场进行能量异构星联网路由设计方法
CN109508058A (zh) * 2018-12-04 2019-03-22 深圳桓轩科技有限公司 一种实时监测环境的智能家居

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101715243A (zh) * 2009-10-21 2010-05-26 南京邮电大学 一种无线传感器网络层次式分簇路由方法
CN103686916A (zh) * 2012-09-06 2014-03-26 江苏迈利科技发展有限公司 一种基于剩余能量和期望传输次数的工业无线传感网多路径数据传输方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101715243A (zh) * 2009-10-21 2010-05-26 南京邮电大学 一种无线传感器网络层次式分簇路由方法
CN103686916A (zh) * 2012-09-06 2014-03-26 江苏迈利科技发展有限公司 一种基于剩余能量和期望传输次数的工业无线传感网多路径数据传输方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
蒋毅 等: "一种基于地理位置的无线传感器网络安全路由协议", 《西北工业大学学报》 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104821921A (zh) * 2015-04-23 2015-08-05 苏州中晟宏芯信息科技有限公司 一种基于人工势场法的异构众核任务调度的路由机制
CN104821921B (zh) * 2015-04-23 2018-05-11 苏州中晟宏芯信息科技有限公司 一种基于人工势场法的异构众核任务调度的路由方法
CN105451192A (zh) * 2015-11-30 2016-03-30 广州日滨科技发展有限公司 一种直线式无线系统的路由建立方法和路由建立装置
CN105517093A (zh) * 2015-11-30 2016-04-20 浙江工业大学 一种无线传感器网络中基于网络均衡性的节能路由方法
CN105517093B (zh) * 2015-11-30 2019-04-23 浙江工业大学 一种无线传感器网络中基于网络均衡性的节能路由方法
CN107197495A (zh) * 2017-01-17 2017-09-22 燕山大学 一种基于多属性决策的无线传感器网络安全路由算法
CN107197495B (zh) * 2017-01-17 2020-09-11 燕山大学 一种基于多属性决策的无线传感器网络安全路由方法
CN107580293A (zh) * 2017-08-04 2018-01-12 昆明理工大学 一种基于虚拟力的汇聚节点重定位方法
CN107580293B (zh) * 2017-08-04 2020-07-10 昆明理工大学 一种基于虚拟力的汇聚节点重定位方法
CN109121178A (zh) * 2018-07-24 2019-01-01 西北工业大学 一种基于人工势场进行能量异构星联网路由设计方法
CN109508058A (zh) * 2018-12-04 2019-03-22 深圳桓轩科技有限公司 一种实时监测环境的智能家居

Also Published As

Publication number Publication date
CN103906166B (zh) 2017-04-26

Similar Documents

Publication Publication Date Title
CN103906166A (zh) 一种基于人工势场的无线传感器网络路由方法
Goudarzi et al. Data collection using unmanned aerial vehicles for Internet of Things platforms
Bruck et al. MAP: Medial axis based geometric routing in sensor networks
US7752332B2 (en) Geometric routing in wireless networks
Dengiz et al. Connectivity management in mobile ad hoc networks using particle swarm optimization
CN108173664B (zh) 一种多跳无线可充电传感器网络中谐振中继器部署方法
Pei et al. Connectivity and bandwidth‐aware real‐time exploration in mobile robot networks
CN102868972A (zh) 基于改进q学习算法的物联网错误传感器节点定位方法
Wu et al. Energy‐conserving data gathering by mobile mules in a spatially separated wireless sensor network
CN102749084A (zh) 一种面向海量交通信息的路径选择方法
Moazzez-Estanjini et al. On delay-minimized data harvesting with mobile elements in wireless sensor networks
CN114845245B (zh) 一种基于无人机的移动数据采集方法、装置和终端
Sujit et al. Joint route planning for UAV and sensor network for data retrieval
CN107690170A (zh) 基于位置和任务规划的动态路由计算方法
Konak et al. Improving network connectivity in ad hoc networks using particle swarm optimization and agents
Parihar et al. Flying ad hoc network (fanet): Opportunities, trending applications and simulators
Chen et al. Optimal Trajectory Design for Unmanned Aerial Vehicle Cargo Pickup and Delivery System based on Radio Map
Hu et al. A Cyber–Physical Routing Protocol Exploiting Trajectory Dynamics for Mission-Oriented Flying Ad Hoc Networks
CN103228020A (zh) 基于智能水滴的移动自组网路由系统及方法
CN102711207A (zh) 一种用于跨洋航空通信的路由选择方法
CN103874162B (zh) 一种井下无线传感网络按需路由方法
Liu et al. Optimal relay node placement for connectivity recovery in underwater acoustic sensor networks
Revathi et al. VAGR—Void aware in geographic routing for wireless sensor networks
CN102572998A (zh) 船载自组网中利用位置信息启发式的路由方法
Lee et al. Distributed event-triggered path construction in wireless sensor networks

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20171110

Address after: 518000 Guangdong city of Shenzhen province Nanshan District science and Technology Park Keyuan Road Park A2 Building 8 floor 806 branch

Patentee after: Shenzhen Zhongrong fortune Trade Co. Ltd

Address before: 710072 Xi'an friendship West Road, Shaanxi, No. 127

Patentee before: Northwestern Polytechnical University

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20200806

Address after: 256599 Huaxing Nanyuan, Bocheng Sixth Road, Boxing County, Binzhou City, Shandong Province

Patentee after: Han Primary School

Address before: 518000 Guangdong city of Shenzhen province Nanshan District science and Technology Park Keyuan Road Park A2 Building 8 floor 806 branch

Patentee before: Shenzhen Zhongrong fortune Trade Co.,Ltd.

CP02 Change in the address of a patent holder
CP02 Change in the address of a patent holder

Address after: 246001 Lingang Economic Development Zone, Yingjiang District, Anqing City, Anhui Province

Patentee after: Han Primary School

Address before: Huaxing Nanyuan, Bocheng Liulu, Boxing County, Binzhou City, Shandong Province

Patentee before: Han Primary School