首页> 中国专利> 一种面向障碍的无线传感器网络连通性恢复方法及装置

一种面向障碍的无线传感器网络连通性恢复方法及装置

摘要

本发明实施例公开了一种面向障碍的无线传感器网络连通性恢复方法及装置,设无线传感器网络存在n个网络分区,每个网络分区用一个分区节点表示,则整个无线传感器网络由n个分区节点表示;所述方法包括:构建障碍情况下的n个分区节点的最小生成树;在所述构建的障碍情况下的n个分区节点的最小生成树上分配中继节点,所述中继节点包括静止中继节点和移动中继节点;利用所分配的中继节点,获得所述中继节点所连接的分区节点内的网络数据,根据所获得的网络数据连通各分区节点,从而恢复所述n个网络分区的无线传感器网络的连通。应用本发明实例,解决了障碍情况下无线传感器网络连通性恢复的问题。

著录项

  • 公开/公告号CN105577452A

    专利类型发明专利

  • 公开/公告日2016-05-11

    原文格式PDF

  • 申请/专利权人 北京邮电大学;

    申请/专利号CN201610079520.5

  • 申请日2016-02-04

  • 分类号H04L12/24(20060101);H04W24/04(20090101);H04W76/02(20090101);H04W84/18(20090101);

  • 代理机构北京柏杉松知识产权代理事务所(普通合伙);

  • 代理人马敬;项京

  • 地址 100876 北京市海淀区西土城路10号

  • 入库时间 2023-12-18 15:20:54

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-09-28

    授权

    授权

  • 2016-06-08

    实质审查的生效 IPC(主分类):H04L12/24 申请日:20160204

    实质审查的生效

  • 2016-05-11

    公开

    公开

说明书

技术领域

本发明涉及通信领域,特别涉及一种面向障碍的无线传感器网络连通性恢 复方法及装置。

背景技术

随着微电子技术和通信技术的不断进步,无线传感器网络广泛应用于军事、 环境监测等多个领域,具有重要的研究价值及应用前景。无线传感器网络 (WSNs,WirelessSensorNetworks)往往布置在无人值守的恶劣环境,节点容易 发生故障,并且,节点可能因电量耗尽而无法工作。网络中关键节点的故障会 将无线传感器网络分割成多个不连通的分区,不同分区之间的节点无法协作完 成任务,对网络性能产生严重影响。尤其在搜救等应用中,无线传感器网络中 的这些故障人工很难干预,网络连通性的自主恢复就非常重要。

现有技术中自主恢复网络连通性的方案如下:

现有技术方案一:提出了一种容错路由恢复方法,其是针对异构无线传感 器网络中由于节点故障而使网络中某条路径断开的情况。该方案中,通过构建 簇内多路径路由生成图,进行路径编码;采用多粒子群免疫协同优化算法来选 择最优替代路径,进行路由恢复,同时也采用了基于该算法的协议来维护网络 系统。但是,该方案是针对由于节点故障造成的多条路径不连通的情况进行路 由恢复,不适用于大规模网络中由于节点故障而造成网络分区的情况。

现有技术方案二:其针对无线网络传感器网络节点故障造成网络孤立区域 的问题,提供了一种无线传感器网络连通性恢复方法,该方法通过转置节点将 失去连通的孤立区域重新连接到最近的连通集,然后再将这些连通集连接起来, 从来恢复网络的连通性。在该方案中,需要确定连通集,适用于大面积节点同 时故障造成的网络分区情况,而对少数节点故障造成的网络的不连通的情况并 不适用。

现有技术方案三:本方案对于无线传感器网络中节点故障造成的网络分区 问题,采用的是一种通过节点移动恢复网络连通性的算法,该算法主要利用了 一个分区中的非关键节点向另一个分区移动,产生级联移动,直到两个分区连 通,同时在节点移动过程中考虑了地形的变化对算法的影响。由于该算法采用 的是级联移动,多个节点参与移动的同时又要保证该分区的连通性,这样就增 加了能量消耗和算法复杂度,同时,只是考虑了节点在移动过程中移动路径上 的地形变化的影响,没有考虑移动过程中遇到障碍的情况,而在现实中障碍总 是不可避免的。

发明内容

本发明实施例的目的在于提供一种面向障碍的无线传感器网络连通性恢复 方法及装置,旨在及时有效地恢复网络的连通性,既适用于节点故障造成的多 条路径不连通的情况,又适用于大面积节点同时故障造成的网络不连通的情况, 考虑了移动中继节点的移动路径中存在障碍的问题。

为达到上述目的,本发明实施例公开了一种面向障碍的无线传感器网络连 通性恢复方法,应用于无线传感器网络,且所述网络中具有中继节点,设无线 传感器网络存在n个网络分区,每个网络分区用一个分区节点表示,则整个无 线传感器网络由n个分区节点表示;所述方法包括:

构建障碍情况下的n个分区节点的最小生成树;

在所述构建的障碍情况下的n个分区节点的最小生成树的边上分配静止中 继节点和/或移动中继节点;

利用所分配的静止中继节点和/或移动中继节点,获得所述中继节点所连接 的分区节点内的网络数据,根据所获得的网络数据连通各分区节点,从而恢复 所述n个网络分区的无线传感器网络的连通。

具体的,所述障碍所构成的障碍区域是凸多边形区域,且所述凸多边形顶 点个数不小于4个,所述构建障碍情况下的n个分区节点的最小生成树的步骤 包括:

利用prim算法构建n个分区节点的最小生成树;

依次判断所述最小生成树的每条边是否穿过障碍区域,对每条穿过所述障 碍区域的边进行如下处理:

如果边eij穿过障碍区域,所述边eij的两个顶点为vi,vj,计算该边与 障碍区域的交点,若只有一个交点,则该边不做处理;若与障碍区域有两个交 点,则做如下处理:

若两交点之间只有一个凸多边形顶点Pn,则用链{vi,Pn,vj}代替最 小生成树中边eij

若两交点之间有多个凸多边形顶点Pm,Pm+1…,Pm+k-1,则从边eij的一 个顶点vi按照顺时针方向连接障碍区域顶点Pm,并依次连接直到连接到该边的 另一个顶点vj,形成链line1:{vi,Pm,Pm+1….Pm+k-1,vj},其中,k为两交点之 间的按顺时针方向凸多边形顶点个数;并且,从边eij的该顶点vi按照逆时针方 向连接障碍区域顶点,形成链line2:{vi,Pm+q-1Pm+q-2,Pm,vj},其中,q为两 交点之间的按逆时针方向凸多边形顶点个数;比较所述链line1和链line2的长 度,取长度小的那条链作为该最小生成树中代替边eij的链lineij,其中length (lineij)=min{length(line1),length(line2)};

获得由边和链构成的障碍情况下的n个分区节点的最小生成树。

具体的,所述依次判断最小生成树的每条边是否穿过障碍区域的方法为:

选定最小生成树的任意一条边eij,顶点分别为vi(xi,yi),vj(xj,yj),选定障碍 区域的任意一条边efg,顶点分别为vf(xf,yf),vg(xg,yg),利用所述边eij和边efg的 顶点坐标分别建立所述边eij、边efg所在直线的直线方程,

求解方程组:eij:y-yix-xi=yj-yixj-xiefg:y-yfx-xf=yg-yfxg-xf,约束条件为:max(xi,xf)xmin(xj,xg)max(yi,yf)ymin(yj,yg),

若方程组有解,识别出最小生成树的该边穿过障碍区域,若方程组无解, 则识别最小生成树的该边未穿过障碍区域。

具体的,所述方法还包括:优化所构建的障碍情况下的n个分区节点的最小 生成树,包括:

查看最小生成树中任意两个分区节点之间的边,如果某条边的边长小于某 条链的链长,且该边不经过障碍区域,且不与其他边形成环,则用所述边代替 所述链;

如果最小生成树中有多条边穿过障碍区域,且如果所生成的最小生成树中 存在由多个边构成的环,则将该环中最长的边去掉。

具体的,所述在所述构建的障碍情况下的n个分区节点的最小生成树的边上 分配静止中继节点/或移动中继节点,包括:设恢复网络连通性需要h个静止中继 节点,当前可用的中继节点为l个,l<h,且l大于最小生成树边和链的个数和;

对于所述最小生成树中的链,若链长小于所述最小生成树中边长的平均值, 则直接在该链上分配一个移动中继节点,否则,在该链整体长度的中点分配一 静止中继节点,在所述中点到所述链的两个端点之间分别分配静止中继节点和/ 或移动中继节点,静止中继节点和/或移动中继节点的个数满足如下:使得每个 移动中继节点在链上移动的距离小于所有边长的平均值,此时,相对于在该链 整体上分配静止中继节点能够节省中继节点x个;

将所述最小生成树的边按照长度从小到大的顺序排序,形成序列H1;

搜寻所述最小生成树中至少与两条边相连的所有的分区节点,将这些分区 节点组成集合Q={Q1,Q2,…Qr},r为集合Q中分区节点的个数;对于集合Q中任 一分区节点Qr,从Qr出发的两条边连接的另外两个分区节点分别为vi、vj,三个 分区节点构成三角形Qrvivj,将集合Q中所有的分区节点都分别按照上述处理, 获得多个三角形,由所有的三角形构成三角形集合,对该三角形集合中的三角 形按照周长从小到大排序形成序列H2;

设置指针h1指向序列H1内的第一个边,指针h2指向序列H2内的第一个 三角形;

a)若指针h1指向的边eij的边长小于指针h2指向的三角形Qrvivj的周 长,则选择边eij,在边eij的两个顶点(vi,vj)之间分配一个移动中继节点,以使 所分配的移动中继节点在边eij的两个顶点(vi,vj)之间移动,此时,相对于在该 边整体上分配静止中继节点能够节省中继节点y个,h1指向下一个边;否则选 择三角形Qrvivj,对三角形Qrvivj分配一个按照预设轨迹移动的移动中继节点,此 时,相对于在该三角形上分配静止中继节点能够节省中继节点z个,h2指向下 一个三角形;

b)依次对序列H1中的边和序列H2中的执行步骤a)中的判断操作, 直到对序列H1中所有的边和序列H2中所有的三角形分配完毕中继节点;或者, 直到所节省的中继节点总数x+y+z等于第一差值,所述第一差值为需要的h个 静止中继节点的个数与当前可用的中继节点个数l的差值,结束分配移动中继节 点,只给剩余的边分配静止中继节点。

具体的,所述方法还包括:在连通性算法计算过程中,移动中继节点按照 预设轨迹移动周期性在分区之间移动并接收目标分区节点的网络数据,当所述 移动节点接收到所述目标分区节点的网络数据时,停止再向所述目标分区节点 移动;

所述移动中继节点按照预设轨迹移动包括两种情况:

当移动中继节点在两个分区节点组成的边上移动时,所述预设轨迹为两分 区节点的连线上且不在两分区节点的通信范围内的部分线段;

当移动中继节点在三个分区节点组成的三角形上移动时,所述预设轨迹为 第一三角形的三条边,所述第一三角形的获得方法为:将所述三个分区节点组 成的三角形的重心分别与所述三个分区节点连线,并得到与相应的分区节点的 通信范围所对应的圆的交点,将所得到的三个交点组成第一三角形。

为达到上述目的,本发明实施例还公开了一种面向障碍的无线传感器网络 连通性恢复装置,应用于无线传感器网络,且所述网络中具有中继节点,设无 线传感器网络存在n个网络分区,每个网络分区用一个分区节点表示,则整个 无线传感器网络由n个分区节点表示;所述装置包括:

最小生成树构建单元,用于构建障碍情况下的n个分区节点的最小生成树;

中继节点分配单元,用于在所述构建的障碍情况下的n个分区节点的最小 生成树的边上分配静止中继节点和/或移动中继节点;

网络连通性恢复单元,用于利用所分配的静止中继节点和/或移动中继节点, 获得所述中继节点所连接的分区节点内的网络数据,根据所获得的网络数据连 通各分区节点,从而恢复所述n个网络分区的无线传感器网络的连通。

具体的,所述障碍所构成的障碍区域是凸多边形区域,且所述凸多边形顶 点个数不小于4个,所述最小生成树构建单元,包括:

原始最小生成树构建子单元,用于利用prim算法构建n个分区节点的最小 生成树;

判断子单元,用于依次判断所述最小生成树的每条边是否穿过障碍区域, 对每条穿过所述障碍区域的边进行如下处理:

如果边eij穿过障碍区域,所述边eij的两个顶点为vi,vj,计算该边与 障碍区域的交点,若只有一个交点,则该边不做处理;若与障碍区域有两个交 点,则做如下处理:

若两交点之间只有一个凸多边形顶点Pn,则用链{vi,Pn,vj}代替最 小生成树中边eij

若两交点之间有多个凸多边形顶点Pm,Pm+1…,Pm+k-1,则从边eij的一 个顶点vi按照顺时针方向连接障碍区域顶点Pm,并依次连接直到连接到该边的 另一个顶点vj,形成链line1:{vi,Pm,Pm+1….Pm+k-1,vj},其中,k为两交点之 间的按顺时针方向凸多边形顶点个数;并且,从边eij的该顶点vi按照逆时针方 向连接障碍区域顶点,形成链line2:{vi,Pm+q-1Pm+q-2,Pm,vj},其中,q为两 交点之间的按逆时针方向凸多边形顶点个数;比较所述链line1和链line2的长 度,取长度小的那条链作为该最小生成树中代替边eij的链lineij,其中length (lineij)=min{length(line1),length(line2)};

最小生成树构建子单元,用于获得由边和链构成的障碍情况下的n个分区节 点的最小生成树。

其中,所述判断子单元,具体包括:

方程建立子单元,用于选定最小生成树的任意一条边eij,顶点分别为 vi(xi,yi),vj(xj,yj),选定障碍区域的任意一条边efg,顶点分别为vf(xf,yf), vg(xg,yg),利用所述边eij和边efg的顶点坐标分别建立所述边eij、边efg所在直线 的直线方程,

方程求解子单元,用于求解方程组:eij:y-yix-xi=yj-yixj-xiefg:y-yfx-xf=yg-yfxg-xf

约束条件为:max(xi,xf)xmin(xj,xg)max(yi,yf)ymin(yj,yg),

穿越识别子单元,若方程组有解,识别出最小生成树的该边穿过障碍区域, 若方程组无解,则识别最小生成树的该边未穿过障碍区域。

所述中继节点分配单元,包括:设恢复网络连通性需要h个静止中继节点, 当前可用的中继节点为l个,l<h,且l大于最小生成树边和链的个数和;

第一中继节点分配子单元,用于对于所述最小生成树中的链,若链长小于 所述最小生成树中边长的平均值,则直接在该链上分配一个移动中继节点,否 则,在该链整体长度的中点分配一静止中继节点,在所述中点到所述链的两个 端点之间分别分配静止中继节点和/或移动中继节点,静止中继节点和/或移动中 继节点的个数满足如下:使得每个移动中继节点在链上移动的距离小于所有边 长的平均值,此时,相对于在该链整体上分配静止中继节点能够节省中继节点x 个;

序列H1确定子单元,用于将所述最小生成树的边按照长度从小到大的顺序 排序,形成序列H1;

序列H2确定子单元,用于搜寻所述最小生成树中至少与两条边相连的所有 的分区节点,将这些分区节点组成集合Q={Q1,Q2,…Qr},r为集合Q中分区节 点的个数;对于集合Q中任一分区节点Qr,从Qr出发的两条边连接的另外两个 分区节点分别为vi、vj,三个分区节点构成三角形Qrvivj,将集合Q中所有的分 区节点都分别按照上述处理,获得多个三角形,由所有的三角形构成三角形集 合,对该三角形集合中的三角形按照周长从小到大排序形成序列H2;

第二中继节点分配子单元,用于设置指针h1指向序列H1内的第一个边, 指针h2指向序列H2内的第一个三角形;

a)若指针h1指向的边eij的边长小于指针h2指向的三角形Qrvivj的周 长,则选择边eij,在边eij的两个顶点(vi,vj)之间分配一个移动中继节点,以使 所分配的移动中继节点在边eij的两个顶点(vi,vj)之间移动,此时,相对于在该 边整体上分配静止中继节点能够节省中继节点y个,h1指向下一个边;否则选 择三角形Qrvivj,对三角形Qrvivj分配一个按照预设轨迹移动的移动中继节点,此 时,相对于在该三角形上分配静止中继节点能够节省中继节点z个,h2指向下 一个三角形;

b)依次对序列H1中的边和序列H2中的执行步骤a)中的判断操作, 直到对序列H1中所有的边和序列H2中所有的三角形分配完毕中继节点;或者, 直到所节省的中继节点总数x+y+z等于第一差值,所述第一差值为需要的h个 静止中继节点的个数与当前可用的中继节点个数l的差值,结束分配移动中继节 点,只给剩余的边分配静止中继节点。

具体的,所述装置还包括:最小生成树优化单元,具体用于:

查看最小生成树中任意两个分区节点之间的边,如果某条边的边长小于某 条链的链长,且该边不经过障碍区域,且不与其他边形成环,则用所述边代替 所述链;

如果最小生成树中有多条边穿过障碍区域,且如果所生成的最小生成树中 存在由多个边构成的环,则将该环中最长的边去掉。

具体的,所述装置还包括:

移动中继节点移动路径优化单元,用于在连通性算法计算过程中,移动中 继节点按照预设轨迹周期性在分区之间移动并接收目标分区节点的网络数据, 当所述移动节点接收到所述目标分区节点的网络数据时,停止再向所述目标分 区节点移动;

所述移动中继节点按照预设轨迹移动包括两种情况:

当移动中继节点在两个分区节点组成的边上移动时,所述预设轨迹为两分 区节点的连线上且不在两分区节点的通信范围内的部分线段;

当移动中继节点在三个分区节点组成的三角形上移动时,所述预设轨迹为 第一三角形的三条边,所述第一三角形的获得方法为:将所述三个分区节点组 成的三角形的重心分别与所述三个分区节点连线,并得到与相应的分区节点的 通信范围所对应的圆的交点,将所得到的三个交点组成第一三角形。

本发明实施例提供的一种面向障碍的无线传感器网络连通性恢复方法及装 置,通过构建障碍环境下无线传感器网络分区的最小生成树,按照预定规则依 次给最小生成树中的链、边分配静止中继节点和/或移动中继节点,利用所分配 的静止中继节点和/或移动中继节点恢复无线传感器网络的连通性,与现有技术 相比,本发明主要贡献于以下三个方面:(1)考虑了障碍情况下无线传感器网 络连通性恢复,使得即使在存在障碍区域的情况下,也可以根据最小生成树恢 复网络的连通性;(2)优化障碍情况下的最小生成树,避免了冗余计算,提高 了计算速度,进而也就提高了网络恢复的速度;(3)优化连通性恢复算法,减 少移动中继节点的能耗,进而降低了连通性恢复的成本。

当然,实施本发明的任一产品或方法必不一定需要同时达到以上所述的所 有优点。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施 例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述 中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付 出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种面向障碍的无线传感器网络连通性恢复方 法的流程示意图;

图2中的(a)(b)分别为本发明实施例提供的移动中继节点在边上、在三角形 上的移动路径示意图;

图3为本发明实施例提供的只有一条边穿过障碍区域的最小生成树的示例 图;

图4为本发明实施例提供的多条边穿过障碍区域的最小生成树的示例图;

图5为本发明实施例提供的中继节点充足时的中继节点分配示意图;

图6为本发明实施例提供的中继节点不充足时的中继节点分配示意图;

图7为本发明实施例提供的一种面向障碍的无线传感器网络连通性恢复装 置的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清 楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是 全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造 性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例提供了一种面向障碍的无线传感器网络连通性恢复方法,构 建障碍情况下的n个分区节点的最小生成树;在所述构建的障碍情况下的n个 分区节点的最小生成树的边上分配静止中继节点和/或移动中继节点;利用所分 配的静止中继节点和/或移动中继节点,获得所述中继节点所连接的分区节点内 的网络数据,根据所获得的网络数据连通各分区节点,从而恢复所述n个网络 分区的无线传感器网络的连通。

现有的无线传感器网络连通性恢复方法可以分为以下几种情况:

1、在最小生成树中的各个边上放置足够的静止中继节点来连接各分区,恢 复网络的连通性;

2、在静止中继节点个数不足以连接各分区,但是中继节点的个数大于分区 构成的最小生成树的边的个数,这时候可以在最小生成树中放置部分移动中继 节点,在没有放置静止中继节点的边上移动,在分区之间传递网络数据;

3、若中继节点的个数小于最小生成树边的个数,这时候必须所有的中继节 点都是可移动的,可能两个分区公用一个中继节点,也可能多个分区公用一个 中继节点。

本发明仅考虑第二种情况:中继节点的个数不足以在静止的情况下连通网 络,但是个数大于最小生成树边的个数,则混合用静止和移动的中继节点。设 恢复网络连通性需要的静止中继节点个数为h,若给定的中继节点个数是l (nume<l<h,nume为最小生成树中边的个数),在连通性恢复算法的设计过程 中,性能指标为:单次恢复网络连通性时单个节点最大移动距离和总的移动距 离。

同时本发明有如下假设:

假设1:每个网络分区用一个分区节点表示,若网络中存在n个分区,则用 n个分区节点表示整个无线传感器网络;

假设2:算法运行过程中,各网络分区内的所有节点不再发生故障,各网络 分区内保持连通。

假设3:中继节点在移动过程中不会产生故障。

假设4:障碍区域是凸多边形区域,多边形顶点个数不小于4个。

假设5:障碍屏蔽移动中继节点信号,移动中继节点只有移动到目标分区辐 射范围内才能接收到目标分区的网络数据。

假设1和假设5对所有的连通性恢复算法都适用,假设2和假设3不成立 的情况只是小概率事件。

下面通过具体实施例,对本发明进行详细说明。

图1示出了本发明实施例提供的一种面向障碍的无线传感器网络连通性恢 复方法的流程图。

如图1所示,本发明的实施例所述的一种面向障碍的无线传感器网络连通 性恢复方法,应用于无线传感器网络,且所述网络中具有中继节点,设无线传 感器网络存在n个网络分区,每个网络分区用一个分区节点表示,则整个无线 传感器网络由n个分区节点表示;包括步骤:

步骤S101,构建障碍情况下的n个分区节点的最小生成树;

步骤S102,在所述构建的故障情况下的n个分区节点的最小生成树上分配 静止中继节点和/或移动中继节点;

步骤S103,利用所分配的静止中继节点和/或移动中继节点,获得所述中继 节点所连接的分区节点内的网络数据,根据所获得的网络数据连通各分区节点, 从而恢复所述n个网络分区的无线传感器网络的连通。

具体的,所述方法还包括:在连通性算法计算过程中,移动中继节点按照 预设轨迹周期性在分区之间移动接收目标分区节点的网络数据,当所述移动节 点接收到所述目标分区节点的网络数据时,停止再向所述目标分区节点移动。 也就是说,移动中继节点在在移动过程中接收到目标分区节点的网络数据即返 回,向下一个分区节点移动;

所述移动中继节点按照预设轨迹移动包括两种情况:

当移动中继节点在两个分区节点组成的边上移动时,所述预设轨迹为两分 区节点的连线上且不在两分区节点的通信范围内的部分线段;

当移动中继节点在三个分区节点组成的三角形上移动时,所述预设轨迹为 第一三角形的三条边,所述第一三角形的获得方法为:将所述三个分区节点组 成的三角形的重心分别与所述三个分区节点连线,并得到与相应的分区节点的 通信范围所对应的圆的交点,将所得到的三个交点组成第一三角形。

需要说明的是,在连通性算法计算过程中为了减少移动中继节点的移动距 离,需要简化移动中继节点的移动算法,通过优化移动中继节点的移动路径, 达到减少移动节点移动距离,减少能耗的目的。

在本发明实施例中所提供的障碍情况下的最小生成树中,移动中继节点可 以在两个分区节点组成的边或三个分区节点组成的三角形上移动。对于移动中 继节点在边上移动时,移动中继节点不需要移动到分区节点的中心位置,只要 移动到分区节点的通信范围内就可以交换数据,即移动中继节点在边上的移动 距离不需要是两分区节点的中心位置之间的距离D,只需要是D-2R(R为节点的 通信半径)即可。如图2(a)所示,两个分区节点S1、S2的通信范围所对应的圆分 别为圆S1、圆S2,两分区节点的连线S1S2与圆S1、圆S2的交点分别为A、B, 此时,移动中继节点移动的预设轨迹为线段AB,移动距离为D-2*R,其中D为 两个分区节点的中心位置的距离,R为两个分区节点的通信半径,这里假设两个 分区节点的通信半径相等。对于移动中继节点在三个分区节点S1、S2、S3组成 的三角形上移动时,如图2(b)所示,三个分区节点S1、S2、S3的通信范围所对 应的圆分别为圆S1、圆S2、圆S3,移动中继节点移动的预设轨迹不是三角形 S1S2S3的三条边,而是图中虚线三角形ABC的三条边,移动距离为虚线三角 形ABC的周长,该虚线三角形ABC的获得方法为:利用三角形S1S2S3的重心 o向各顶点连线,各顶点与重心o的连线与圆S1、圆S2、圆S3的交点分别为A、 B、C,这三个交点组成的三角形即为虚线三角形ABC。

具体的,步骤S101中所述障碍所构成的障碍区域是凸多边形区域,且所述 凸多边形顶点个数不小于4个,所述构建障碍情况下的n个分区节点的最小生 成树的步骤包括:

利用prim算法构建n个分区节点的最小生成树;

需要说明的是,在构建障碍情况下的n个分区节点的最小生成树之前,需要 构建不考虑障碍情况下的n个分区节点的最小生成树。举例而言,如图3所示的 最小生成树中,所述最小生成树包括10个分区节点,分别为A、B、C、D、E、 F、G、H、I、J,在不考虑障碍情况下,所述最小生成树由边eAB、eBC、eCD、eDE、 eBG、eFG、eGH、eHI、eIJ连接相应的分区节点。这里,假设eij为最小生成树的任 一边,该边eij的两个顶点为vi,vj,也就是说,eij可能为eAB、eBC、eCD、eDE、eBG、 eFG、eGH、eHI、eIJ中的任一边,vi,vj为相应的网络节点A、B、C、D、E、F、G、 H、I、J。

依次判断所述最小生成树的每条边是否穿过障碍区域,对每条穿过所述障 碍区域的边进行如下处理:

如果边eij穿过障碍区域,所述边eij的两个顶点为vi,vj,计算该边与 障碍区域的交点,若只有一个交点,则该边不做处理;若与障碍区域有两个交 点,则做如下处理:

若两交点之间只有一个凸多边形顶点Pn,则用链{vi,Pn,vj}代替最 小生成树中边eij

若两交点p1,p2之间有多个凸多边形顶点Pm,Pm+1…,Pm+k-1,则从边 eij的一个顶点vi按照顺时针方向连接障碍区域顶点Pm,并依次连接直到连接到 该边的另一个顶点vj,形成链line1:{vi,Pm,Pm+1….Pm+k-1,vj},其中,k为两 交点之间的按顺时针方向凸多边形顶点个数;并且,从边eij的该顶点vi按照逆 时针方向连接障碍区域顶点,形成链line2:{vj,Pm+q-1Pm+q-2,Pm,vi},其中, q为两交点之间的按逆时针方向凸多边形顶点个数;比较所述链line1和链line2 的长度,取长度小的那条链作为该最小生成树中代替边eij的链lineij,其中length (lineij)=min{length(line1),length(line2)};

在构建出不考虑障碍情况下的n个分区节点的最小生成树后,需要依次判断 所构建的不考虑障碍情况下的n个分区节点的最小生成树中的每条边是否穿过 障碍区域,所述依次判断最小生成树的每条边是否穿过障碍区域的方法为:

选定最小生成树的任意一条边eij,顶点分别为vi(xi,yi),vj(xj,yj),选定障碍 区域的任意一条边efg,顶点分别为vf(xf,yf),vg(xg,yg),利用所述边eij和边efg的 顶点坐标分别建立所述边eij、边efg所在直线的直线方程,

求解方程组:eij:y-yix-xi=yj-yixj-xiefg:y-yfx-xf=yg-yfxg-xf,约束条件为:max(xi,xf)xmin(xj,xg)max(yi,yf)ymin(yj,yg),

若方程组有解,识别出最小生成树的该边穿过障碍区域,所述解为最小生 成树的该边和障碍区域的交点,若方程组无解,则识别最小生成树的该边未穿 过障碍区域。

举例而言,如图3所示的最小生成树中,障碍区域为以P1、P2、P3、P4为 顶点的凸多边形区域,已知10个分区节点的位置和障碍区域4个顶点的位置, 可以建立坐标系,获得10个分区节点的坐标和障碍区域4个顶点的坐标。对所 构建的不考虑障碍情况下的10个分区节点的最小生成树中的任意一条边,可根 据该任意一条边的两个顶点所对应的分区节点的坐标,建立该任意一条边所在 直线的直线方程。对障碍区域所对应的凸四边形的任意一条边,可根据该任意 一条边的两个顶点的坐标,建立该任意一条边所在直线的直线方程。利用所构 建的不考虑障碍情况下的10个分区节点的最小生成树中的每条边所对应的直线 方程,和障碍区域所对应的凸四边形的每条边所对应的直线方程,建立两条直 线方程的方程组。如果所述两条直线方程的方程组有解,即两条直线有交点, 还需根据约束条件判断交点是否同时在所述凸四边形和最小生成树的边上。当 判断出交点同时在所述凸四边形和最小生成树的边上,则最小生成树的该边穿 过障碍区域,否则该边不穿过障碍区域。例如,最小生成树中的边eFG所在的 直线,与障碍区域的边eP3P4所在的直线有交点,但是该交点不在所述凸四边形 和最小生成树的边,所以边eFG不穿过障碍区域;最小生成树中的边eBG所在的 直线,与障碍区域的边eP3P4所在的直线和边eP1P2所在的直线都有交点,且该交 点同时在所述凸四边形和最小生成树的边上,所以边eBG穿过障碍区域。

在判断出最小生成树的某条边穿过障碍区域后,还需根据该某条边与障碍 区域的交点个数,对该某条边处理。例如图3所示的最小生成树的边eBG,边eBG穿过障碍区域,且与障碍区域有两个交点,这两个交点之间有2个凸四边形顶点, 则从边eBG的一个顶点B按照顺时针方向连接障碍区域顶点P2,并依次连接直到 边eBG的另一个顶点G,形成链line1:{B,P2,P3,G};并且,从边eBG的该顶 点B按照逆时针方向连接障碍区域顶点,形成链line2:{B,P1,P4,G};比 较所述链line1和链line2的长度,取长度小的那条链作为障碍情况下的最小生成 树中代替边eBG的链lineBG,其中length(lineBG)=min{length(line1),length(line2)}。

如果不考虑障碍情况下的最小生成树中有多条边穿过同一障碍区域,则分 别处理各条边。如图4所示的最小生成树中,有两条边BG、BH同时穿过障碍区 域,则同时处理这两条边,根据上述处理方法,将lineBG:{B,P1,P4,G} 作为障碍情况下的最小生成树中代替边eBG的链,将lineBH:{B,P2,H}作为 障碍情况下的最小生成树中代替边eBH的链。

经过上述处理后,就获得由边和链构成的障碍情况下的n个分区节点的最 小生成树。

需要说明的是,所述最小生成树中的链为最小生成树中的边穿过障碍区域 时,为避开障碍区域所形成的包括障碍区域顶点及最小生成树中分区节点所构 成的多个边的组合;所述最小生成树中的边为最小生成树中分区节点之间的连 线,该边可能穿过障碍区域,也可能不穿过障碍区域。

在获得由边和链构成的障碍情况下的n个分区节点的最小生成树后,还可以 优化所构建的障碍情况下的n个分区节点的最小生成树,包括:

查看最小生成树中任意两个分区节点之间的边,如果某条边的边长小于某 条链的链长,且该边不经过障碍区域,且不与其他边形成环,则用所述边代替 所述链;

如果最小生成树中有多条边穿过障碍区域,且如果所生成的最小生成树中 存在由多个边构成的环,则将该环中最长的边去掉。

举例而言,如图3所示的障碍情况下的最小生成树,对于链lineBG:{B, P1,P4,G},通过查看所述最小生成树中任意两个分区节点之间的边,如果 存在某条边的边长小于该链lineBG的链长,且该边不经过障碍区域,且不与其他 边形成环,则用所述边代替链lineBG。例如边eDJ,如果边eDJ的长度小于链lineBG的链长,则去掉链lineBG,使边eDJ代替链lineBG作为障碍情况下的最小生成树 的一条边。

如图3所示的障碍情况下的最小生成树,假设不考虑障碍情况下的最小生 成树中还有边eCG穿过障碍区域,且代替边eCG的是链lineCG:{C,P1,P4, G},则这时会出现环{C,B,P1},出现这种情况时,将环中最长的边即 CP1去掉即可。

具体的,步骤S102中,所述在所述构建的障碍情况下的n个分区节点的最小 生成树的边上分配静止中继节点/或移动中继节点,包括:设恢复网络连通性需 要h个静止中继节点,当前可用的中继节点为l个,l<h,且l大于最小生成树边和 链的个数和;

对于所述最小生成树中的链,若链长小于所述最小生成树中边长的平均值, 则直接在该链上分配一个移动中继节点,否则,在该链整体长度的中点分配一 静止中继节点,在所述中点到所述链的两个端点之间分别分配静止中继节点和/ 或移动中继节点,静止中继节点和/或移动中继节点的个数满足如下:使得每个 移动中继节点在链上移动的距离小于所有边长的平均值,此时,相对于在该链 整体上分配静止中继节点能够节省中继节点x个;

需要说明的是,若该链的链长大于所述最小生成树中边长的平均值,在该 链整体长度的第一中点分配一静止中继节点之后,判断所述第一中点到所述链 的两个端点之间的距离是否小于所述最小生成树中边长的平均值,如果是,则 直接在所述第一中点到所述链的两个端点之间分别分配一个移动中继节点,否 则,在所述中点到所述链的两个端点之间的长度的第二中点处各分配一静止中 继节点,在所述第一中点到所述第二中点、第二中点到所述链的两个端点之间 分别分配一个移动中继节点。以此类推,在该链上分配静止中继节点和/或移动 中继节点的个数要满足以下条件:使得每个移动中继节点在链上移动的距离小 于所有边长的平均值。

在该链整体上分配静止中继节点的方法与现有技术完全相同,此处不再赘 述。因此,按照现有方法完全可以计算出在该链整体上分配静止中继节点的个 数,因而也就可以计算出相对于在该链整体上完全分配静止中继节点,在应用 本申请的方法分配移动中继节点能够节省的中继节点的个数x。

举例而言,如图5所示的障碍情况下的最小生成树的中继节点分配图,其 中黑点代表中继节点,假设有充足的中继节点,则恢复网络连通性需要23个静 止中继节点。而本发明实施例针对的是在中继节点不充足的情况下恢复网络连 通性,假设当前可用的中继节点为15个,则需要在所述最小生成树的边或链上 放置部分移动中继节点,使移动中继节点代替部分静止中继节点,如图6所示, 其中点划线代表对应的移动中继节点的移动轨迹。

对于图5所示的最小生成树中的链lineBG:{B,P1,P4,G},由于链lineBG的链长大于所述最小生成树中边的平均值,则在链lineBG整体长度的中点分配1 个静止节点,根据上述分配原则,在所述中点到链lineBG的两个端点之间分别分 配一个移动中继节点,使得每个移动中继节点在链上移动的距离小于所有边长 的平均值。如图6所示,在链lineBG上共分配3个中继节点,此时,相对于在链 lineBG整体上分配静止中继节点能够节省中继节点2个。

将所述最小生成树的边按照长度从小到大的顺序排序,形成序列H1;

本发明实施例旨在减少移动中继节点的移动距离,所以首先在最短边或三 角形(最小生成树的相邻边)放置移动中继节点。举例而言,如图5所示的最 小生成树的边按照长度从小到大的顺序排序,形成序列H1,序列H1中边的排 列顺序为{eDE、eCD、eGH、eBC、eIJ、eHI、eAB、eFG}。

搜寻所述最小生成树中至少与两条边相连的所有的分区节点,将这些分区 节点组成集合Q={Q1,Q2,…Qr},r为集合Q中分区节点的个数;对于集合Q中任 一分区节点Qr,从Qr出发的两条边连接的另外两个分区节点分别为vi、vj,三个 分区节点构成三角形Qrvivj,将集合Q中所有的分区节点都分别按照上述处理, 获得多个三角形,由所有的三角形构成三角形集合,对该三角形集合中的三角 形按照周长从小到大排序形成序列H2;

举例而言,如图5所示的最小生成树中,至少与两条边相连的分区节点有6 个,所以集合Q=(B、C、D、G、H、I),对于集合Q中的分区节点B,从B 出发的两条边eBA和eBC连接的另外两个分区节点分别为A、C,这三个分区节 点构成三角形BAC,将集合Q中所有的分区节点都分别按照上述方法处理,获 得多个三角形,由所有的三角形构成三角形集合,对该三角形集合中的三角形 按照周长从小到大排序形成序列H2,序列H2中三角形的排列顺序为{DCE、 CBD、HGI、IHJ、BAC、GHF}。

设置指针h1指向序列H1内的第一个边,指针h2指向序列H2内的第一个 三角形;

a)若指针h1指向的边eij的边长小于指针h2指向的三角形Qrvivj的周 长,则选择边eij,在边eij的两个顶点(vi,vj)之间分配一个移动中继节点,以使 所分配的移动中继节点在边eij的两个顶点(vi,vj)之间移动,此时,相对于在该 边整体上分配静止中继节点能够节省中继节点y个,h1指向下一个边;否则选 择三角形Qrvivj,对三角形Qrvivj分配一个按照预设轨迹移动的移动中继节点,此 时,相对于在该三角形上分配静止中继节点能够节省中继节点z个,h2指向下 一个三角形;

b)依次对序列H1中的边和序列H2中的执行步骤a)中的判断操作, 直到对序列H1中所有的边和序列H2中所有的三角形分配完毕中继节点;或者, 直到所节省的中继节点总数x+y+z等于第一差值,所述第一差值为需要的h个 静止中继节点的个数与当前可用的中继节点个数l的差值,结束分配移动中继节 点,只给剩余的边分配静止中继节点。

需要说明的是,在边和三角形上分配静止中继节点的方法与现有技术完全 相同,此处不再赘述。因此,按照现有方法完全可以计算出在该边和该三角形 上分配静止中继节点的个数,因而也就可以计算出相对于在该边和该三角形上 完全分配静止中继节点,在应用本申请的方法分配移动中继节点能够节省的中 继节点的个数y和z。举例而言,如图5所示的最小生成树所对应的序列H1和 序列H2,指针h1指向序列H1内的第一个边eDE,指针h2指向序列H2内的第 一个三角形DCE,通过比较指针h1指向的边eDE的边长和指针h2指向的三角 形DCE的周长,边eDE的边长小于三角形DCE的周长,则选择边eDE,在边 eDE的两个顶点(vD,vE)之间分配一个移动中继节点,以使所分配的移动中继节 点在边eDE的两个顶点(vD,vE)之间移动,则相对于在该边eDE整体上分配静止 中继节点没有节省中继节点。

指针h1下移指向下一个边eCD,指针h2不动,同样按照上述方法,判断出 边eCD的边长小于三角形DCE的周长,则选择边eCD,在边eCD的两个顶点(vC, vD)之间分配一个移动中继节点,以使所分配的移动中继节点在边eCD的两个顶 点(vC,vD)之间移动,此时,相对于在该边eCD整体上分配静止中继节点没有节 省中继节点。

同样按照上述方法选择边eGH,给边eGH分配一个移动中继节点,以使所分 配的移动中继节点在边eCD的两个顶点(vC,vD)之间移动,此时,相对于在该边 eGH整体上分配静止中继节点没有节省中继节点。需要说明的是,因为这三条边 eDE、eCD、eGH本来只要一个静止中继节点即可连通顶点所对应的网络分区,所 以这三个中继节点也可以保持静止状态,也就是说给这三个边分配中继节点不 会节省中继节点。

指针h1继续下移依次指向边eBC、eIJ、eHI时,指针h2保持不动指向三角形 DCE,按照上述方法,边eBC、eIJ、eHI相继分别分配1个移动中继节点,因此, 相对于在节点充足的情况下需要2个或3个静止节点才能连通对应的网络分区, 此时分别只需要一个移动中继节点即可恢复对应的网络分区,则共节省4个节 点。

指针h1继续下移依次指向边eAB,指针h2指向三角形DCE,三角形CDE 周长小于边eAB的边长,因此选择三角形CDE,给三角形CDE分配一个按照预 设轨迹移动的移动中继节点,则相对于在该三角形上分配静止中继节点而节省 中继节点1个。指针h2下移指向三角形CBD,指针h1指向边eAB,边eAB的边 长小于三角形CBD的周长,则选择边eAB,给边eAB分配中继节点,由于边eAB需要4个中继节点,而目前还有7个中继节点没有分配,因此可以给边eAB分配 2个静止中继节点和1个移动中继节点,这1个移动中继节点在静止中继节点和 顶点B之间移动。给剩下的边(比如边GF)分配足够的静止中继节点,分配中 继节点的算法完成。

需要说明的是,上述移动中继节点在边eij的两个顶点(vi,vj)之间移动,是 指移动中继节点在边上的移动距离不需要是两分区节点的中心位置之间的距离 D,只需要是D-2R(R为节点的通信半径)即可,如图2(a)中虚线所示轨迹。 上述预设轨迹是指移动中继节点在三角形上的移动距离不需要是三个分区节点 组成的三角形的周长,只需要是如图2(b)所示的虚线三角形即可。

可以理解的是,在另一种可能的实施例中,对于最小生成树所对应的序列 H1和序列H2,指针h1指向序列H1内的第一个边eDE,指针h2指向序列H2 内的第一个三角形DCE,通过比较指针h1指向的边eDE的边长和指针h2指向 的三角形DCE的周长,来选择在相应的边或三角形上分配中继节点,直到所有 的中继节点分配完毕,而不再考虑所节省的中继节点的个数。

应用本发明实施例,通过构建障碍环境下无线传感器网络分区的最小生成 树,按照预定规则依次给最小生成树中的链、边分配静止中继节点和/或移动中 继节点,利用所分配的静止中继节点和/或移动中继节点恢复无线传感器网络的 连通性,与现有技术相比,本发明主要贡献于以下三个方面:(1)考虑了障碍 情况下无线传感器网络连通性恢复,使得即使在存在障碍区域的情况下,也可 以根据最小生成树恢复网络的连通性;(2)优化障碍情况下的最小生成树,避 免了冗余计算,提高了计算速度,进而也就提高了网络恢复的速度;(3)优化 连通性恢复算法,减少移动中继节点的能耗,进而降低了连通性恢复的成本。

相应于上述方法实施例,本发明实施例还提供了一种面向障碍的无线传感 器网络连通性恢复装置,应用于采用无线传感器网络,且所述网络中具有中继 节点,设无线传感器网络存在n个网络分区,每个网络分区用一个分区节点表 示,则整个无线传感器网络由n个分区节点表示。

图7为本发明实施例提供的一种程序检测装置的结构示意图,所述装置可 以包括:

最小生成树构建单元401,用于构建障碍情况下的n个分区节点的最小生成 树;

中继节点分配单元402,用于在所述构建的障碍情况下的n个分区节点的最 小生成树的边上分配静止中继节点和/或移动中继节点;

网络连通性恢复单元403,用于利用所分配的静止中继节点和/或移动中继 节点,获得所述中继节点所连接的分区节点内的网络数据,根据所获得的网络 数据连通各分区节点,从而恢复所述n个网络分区的无线传感器网络的连通。

具体的,所述障碍所构成的障碍区域是凸多边形区域,且所述凸多边形顶 点个数不小于4个,所述最小生成树构建单元401,包括:

原始最小生成树构建子单元(图中未示出),用于利用prim算法构建n个 分区节点的最小生成树;

判断子单元(图中未示出),用于依次判断所述最小生成树的每条边是否 穿过障碍区域,对每条穿过所述障碍区域的边进行如下处理:

如果边eij穿过障碍区域,所述边eij的两个顶点为vi,vj,计算该边与 障碍区域的交点,若只有一个交点,则该边不做处理;若与障碍区域有两个交 点,则做如下处理:

若两交点之间只有一个凸多边形顶点Pn,则用链{vi,Pn,vj}代替最 小生成树中边eij

若两交点之间有多个凸多边形顶点Pm,Pm+1…,Pm+k-1,则从边eij的一 个顶点vi按照顺时针方向连接障碍区域顶点Pm,并依次连接直到连接到边的另 一个顶点vj,形成链line1:{vi,Pm,Pm+1....Pm+k-1,vj},其中,k为两交点之间 的按顺时针方向凸多边形顶点个数;并且,从边eij的该顶点vi按照逆时针方向 连接障碍区域顶点,形成链line2:{vi,Pm+q-1Pm+q-2,Pm,vj},其中,q为两交 点之间的按逆时针方向凸多边形顶点个数;比较所述链line1和链line2的长度, 取长度小的那条链作为该最小生成树中代替边eij的链lineij,其中length(lineij) =min{length(line1),length(line2)};

最小生成树构建子单元(图中未示出),用于获得由边和链构成的障碍情 况下的n个分区节点的最小生成树。

具体的,所述判断子单元(图中未示出),包括:

方程建立子单元,用于选定最小生成树的任意一条边eij,顶点分别为 vi(xi,yi),vj(xj,yj),选定障碍区域的任意一条边efg,顶点分别为vf(xf,yf), vg(xg,yg),利用所述边eij和边efg的顶点坐标分别建立所述边eij、边efg所在直线 的直线方程,

方程求解子单元,用于求解方程组:eij:y-yix-xi=yj-yixj-xiefg:y-yfx-xf=yg-yfxg-xf

约束条件为:max(xi,xf)xmin(xj,xg)max(yi,yf)ymin(yj,yg),

穿越识别子单元,若方程组有解,识别出最小生成树的该边穿过障碍区域, 所述解为最小生成树的边和障碍区域的交点,若方程组无解,则识别最小生成 树的该边未穿过障碍区域。

具体的,所述中继节点分配单元402,包括:设恢复网络连通性需要h个静 止中继节点,当前可用的中继节点为l个,且l<h,l大于最小生成树边和链的个数 和;

第一中继节点分配子单元(图中未示出),用于对于所述最小生成树中的 链,若链长小于所述最小生成树中边长的平均值,则直接在该链分配一个移动 中继节点,否则,在该链整体长度的中点分配一静止中继节点,在所述中点到 所述链的两个端点之间分别分配静止中继节点和/或移动中继节点,静止中继节 点和/或移动中继节点的个数满足如下:使得每个移动中继节点在链上移动的距 离小于所有边长的平均值,此时,相对于在该链整体上分配静止中继节点能够 节省中继节点x个;

序列H1确定子单元(图中未示出),用于将所述最小生成树的边按照长度 从小到大的顺序排序,形成序列H1;

序列H2确定子单元(图中未示出),用于搜寻所述最小生成树中至少与两 条边相连的所有的分区节点,将这些分区节点组成集合Q={Q1,Q2...Qk},k为集合 Q中分区节点的个数;对于集合Q中任一分区节点Qi,从Qi出发的两条边链接的 另外两个分区节点分别为vi、vj,三个分区节点构成三角形Qivivj,将集合Q中所 有的分区节点都分别按照上述处理,获得多个三角形,由所有的三角形构成三 角形集合,对该三角形集合中的三角形按照周长从小到大排序形成序列H2;

第二中继节点分配子单元(图中未示出),用于设置指针h1指向序列H1 内的第一个边,指针h2指向序列H2内的第一个三角形;

a)若指针h1指向的边eij的边长小于指针h2指向的三角形Qivivj的周 长,则选择边eij,在边eij的两个顶点(vi,vj)之间分配一个移动中继节点,以使 所分配的移动中继节点在边eij的两个顶点(vi,vj)之间移动,此时,相对于在该 边整体上分配静止中继节点能够节省中继节点y个,h1指向下一个边;否则选 择三角形Qivivj,对三角形Qivivj分配一个按照预设轨迹移动的移动中继节点,此 时,相对于在该三角形上分配静止中继节点能够节省中继节点z个,h2指向下 一个三角形;

b)依次对序列H1中的边和序列H2中的执行步骤a)中的判断操作, 直到对序列H1中所有的边和序列H2中所有的三角形分配完毕中继节点;或者, 直到所节省的中继节点总数x+y+z等于第一差值,所述第一差值为需要的h个 静止中继节点的个数与当前可用的中继节点个数l的差值,结束分配移动中继节 点,只给剩余的边分配静止中继节点。

具体的,所述装置还包括:最小生成树优化单元(图中未示出),具体用 于:

查看最小生成树中任意两个分区节点之间的边,如果某条边的边长小于某 条链的链长,且该边不经过障碍区域,且不与其他边形成环,则用所述边代替 所述链;

如果最小生成树中有多条边穿过障碍区域,且如果所生成的最小生成树中 存在由多个边构成的环,则将该环中最长的边去掉。

具体的,所述装置还包括:

移动中继节点移动路径优化单元(图中未示出),用于在连通性算法计算 过程中,移动中继节点按照预设轨迹周期性在分区之间移动并接收目标分区节 点的网络数据,当所述移动节点接收到所述目标分区节点的网络数据时,停止 再向所述目标分区节点移动;

所述移动中继节点按照预设轨迹移动包括两种情况:

当移动中继节点在两个分区节点组成的边上移动时,所述预设轨迹为两分 区节点的连线上且不在两分区节点的通信范围内的部分线段;

当移动中继节点在三个分区节点组成的三角形上移动时,所述预设轨迹为 第一三角形的三条边,所述第一三角形的获得方法为:将所述三个分区节点组 成的三角形的重心分别与所述三个分区节点连线,并得到与相应的分区节点的 通信范围所对应的圆的交点,将所得到的三个交点组成第一三角形。

对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简 单,相关之处参见方法实施例的部分说明即可。

应用本发明实施例,通过构建障碍环境下无线传感器网络分区的最小生成 树,按照预定规则依次给最小生成树中的链、边分配静止中继节点和/或移动中 继节点,利用所分配的静止中继节点和/或移动中继节点恢复无线传感器网络的 连通性,与现有技术相比,本发明主要贡献于以下三个方面:(1)考虑了障碍 情况下无线传感器网络连通性恢复,使得即使在存在障碍区域的情况下,也可 以根据最小生成树恢复网络的连通性;(2)优化障碍情况下的最小生成树,避 免了冗余计算,提高了计算速度,进而也就提高了网络恢复的速度;(3)优化 连通性恢复算法,减少移动中继节点的能耗,进而降低了连通性恢复的成本。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将 一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些 实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含” 或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过 程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他 要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有 更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要 素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相 似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。 尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较 简单,相关之处参见方法实施例的部分说明即可。

本领域普通技术人员可以理解实现上述方法实施方式中的全部或部分步骤 是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机可读 取存储介质中,这里所称得的存储介质,如:ROM/RAM、磁碟、光盘等。

以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。 凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在 本发明的保护范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号