一种恒等递归计算约束下的路由算法的制作方法

文档序号:14613306发布日期:2018-06-05 21:22阅读:235来源:国知局
一种恒等递归计算约束下的路由算法的制作方法

本发明属于计算机网络技术领域,更具体地,涉及一种恒等递归计算约束下的路由算法。



背景技术:

在基于无线传感器网络的数据汇聚和融合应用中,采用网内处理技术是有效降低无线传感器网络的通信开销的方式。运用网内处理技术,各个传感器节点不再是中继原始数据给汇聚节点,而是对收到的数据进行一定的计算,将计算的结果中继给路由上的下一跳节点,由此显著降低传输开销。

通常我们期望:采用网内处理的无线传感器网络中的汇聚节点最终所获得的数据结果,与未采用网内处理的无线传感器网络中的汇聚节点对所有原始数据的处理结果一致或接近。这样,采用网内处理才具有替代直接传输原始数据方式的意义。采用网内处理需要将汇聚节点本应执行的计算任务无失真地被拆分、并分配到网络中的各个节点上执行,而路由规划则是降低传输开销的关键。



技术实现要素:

针对现有技术的以上缺陷或改进需求,本发明提供了一种恒等递归计算约束下的路由算法,其目的在于为网络中的节点规划一条路由,使得路由上的节点根据分配的计算子任务,将收到的数据与本地数据进行处理,并按照规划的路由将处理的结果传给下一个节点,以降低网络通信总开销。

为实现上述目的,按照本发明的一个方面,提供了一种恒等递归计算约束下的路由算法,包括如下步骤:

(1)根据网络各节点的连接关系建立拓扑图G=(V,E),其中V为节点的集合,E为节点之间的直接连接关系(又称为边)的集合;

(2)根据所述拓扑图G,通过在任意两个不相邻的节点之间添加一条边、并定义该边的长度为该两节点在G中的最短路径长度,由此建立一个完全拓扑图G’=(V,E’);其中,E’为G’中的边的集合;

可见,集合V中任两个节点在完全拓扑图G’中存在边,且该边的长度与拓扑图G中这两个节点之间的最短路径相等。

(3)在完全拓扑图G’中采用现有的Hamilton路径搜索算法进行路径搜索获得一条回路P;

作为举例,现有一种最简单的Hamilton路径搜索算法如下:选取一个离汇聚节点最远的节点作为Hamilton路径上的起始节点,然后寻找最近的邻居节点添加到Hamilton路径上,接着寻找新添加的节点的最近邻居节点,继续添加至Hamilton路径上;每次寻找最近邻居节点时,需在未被添加至Hamilton路径上的节点集合中搜索;当该集合为空时,则选择汇聚节点作为Hamilton路径的结束节点;

(4)根据回路P在完全拓扑图G’中依次经过的节点与边,在拓扑图G中找到对应的节点与最短路径;并将拓扑图G中的这些节点与最短路径依次连接起来,形成初始链式路由R;

(5)对初始链式路由R中的每个环路上的每个节点,作如下判决:若该节点在环路上只有一个邻居节点,则从初始链式路由R中删掉该节点以及相应的边;若该节点有两个邻居节点且这两个邻居节点互为邻居关系,则从初始链式路由R中删掉该节点以及相应的边,并将这两个邻居节点之间的边添加到初始链式路由R中,形成改进路由;

(6)将被删除节点到改进路由的最短路径作为该节点传送源数据至改进路由的路由;对于处在改进路由上的节点,以改进路由作为传送其计算结果的路由。

总体而言,通过本发明所构思的以上技术方案与现有技术相比能够取得下列有益效果:

本发明提供的恒等递归计算约束下的路由算法,针对那些只能被拆分成递归计算模式的计算任务,建立一条链式路由给网络中的节点;将拆分后的、先后次第衔接的各计算子任务,根据路由规则依次合理分配给网络各节点,使得路由上的节点根据分配的计算子任务,将收到的数据与本地数据进行处理,然后按照路由规则将处理的结果传给下一个节点;本发明提供的这种路由算法,适用于递归计算的结果为恒定数据长度的情况;基于该路由的递归计算可显著降低网络通信总开销。

附图说明

图1是本发明采用实施例提供的路由进行网内处理的流程示意图;

图2是采用本发明的路由算法对随机分布100个节点进行路由计算的结果示意图;其中,(a)为节点分布图,(b)为初始链路路由R,(c)为删减节点后的改进路由R’;

图3是实施例中在具有3个传感器节点的网络结构中采用本发明提供的路由算法进行路由规划的示意图;其中,(a)为一个汇聚节点与三个传感器节点组成的简单拓扑图G,(b)为基于图3(a)的简单拓扑图建立的新拓扑图G’,(c)为在完全拓扑图G’中进行路径搜索获得的回路P,(d)为该实施例中的链式路由R,(e)为链式路由进行删减和添加后获得的改进路由,(f)为被删除的节点传送其源数据至改进路由R的路由。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。

采用本发明所提供的恒等递归计算约束下的路由进行网络数据处理的流程如图1所示,各个节点对所分配的子任务所包括的源数据进行处理,将处理的结果中继给下一跳节点;下一跳节点将上一跳的计算结果与分配给本节点的子任务所包括的源数据进行处理,将处理结果中继给再一跳的节点;如此根据所规划的路由逐跳处理直到路由最后一跳。

本发明实施例所提供的恒等递归计算约束下的路由算法,包括如下步骤:

(1)根据网络各节点的连接关系建立拓扑图G=(V,E),其中V为节点的集合,E为节点之间的边的集合;

(2)根据所述拓扑图G,通过在任意两个不相邻的节点之间添加一条边、并定义该边的长度为该两节点在G中的最短路径长度,由此建立一个完全拓扑图G’=(V,E’)其中,E’为G’中的边的集合;

(3)在完全拓扑图G’中采用现有的Hamilton路径搜索算法进行路径搜索获得一条回路P;

(4)根据回路P在完全拓扑图G’中依次经过的节点与边,在拓扑图G中依次找到对应的节点与最短路径;并将拓扑图G中的这些节点与最短路径依次连接起来,形成初始链式路由R;

(5)对初始链式路由R中的每个环路上的每个节点,作如下判决:若该节点在环路上只有一个邻居节点,则从初始链式路由R中删掉该节点以及相应的边;若该节点有两个邻居节点且这两个邻居节点互为邻居关系,则从初始链式路由R中删掉该节点以及相应的边,并将这两个邻居节点之间的边添加到链式路由R中,形成改进路由;

(6)将被删除节点到改进路由的最短路径作为该节点传送源数据至改进路由的路由;对于处在改进路由上的节点,以改进路由作为传送其计算结果的路由。

以下结合具体实施例进一步阐释本发明所提供的恒等递归计算约束下的路由算法。

图2所示,是实施例中随机分布100个节点下的路由计算中相关步骤的结果示意图;其中,图2(a)所示意的是100个传感器节点的随机分布图,该图中心部位的黑色实心方块是指汇聚节点;图2(b)所示意的是步骤(4)所获得的链式路由R的示意图;图2(c)所示意的是步骤(6)所获得的路由示意图,其中,虚线是指未被分配计算子任务的节点(图中空心节点,在步骤(5)中被删除的节点)传送其源数据的路由;实线是指被分配计算子任务的节点(图中黑色实心节点,在步骤(5)中保留在链式路由R上的节点)传送计算结果的路由。

为进一步详细阐述本发明所提供的恒等递归计算约束下的路由算法的处理过程,结合图3所示意的实例进行详细描述如下:

图3所示意的网络中包括一个汇聚节点和5个传感器节点A、B、C、D、E;图中的黑色方块代表汇聚节点,圆圈代表传感器节点;在该网络中采用本发明所提供的路由算法进行路由规划的过程具体如下:

(1)根据网络中各节点的连接关系建立拓扑图G如图3(a)所示,拓扑图G为一个汇聚节点和5个传感器节点组成的简单拓扑图,各边上的数字代表该边的长度(或边权);

(2)基于图3(a)所示的拓扑图G建立完全拓扑图G’如图3(b)所示;G’中节点B与汇聚节点之间的边的长度,等于G中节点B与汇聚节点之间的最短路径长度,即为2;同理,G’中汇聚节点与节点A、D、E之间的边的长度分别为3、2、3;C与A、C与E、B与D、以及B与E之间的边的长度均为2;

(3)在完全拓扑图G’中采用经典Hamilton路径搜索算法进行路径搜索找到一条Hamilton路径P:“节点A—>节点E—>节点D—>节点B—>节点C—>汇聚节点”,如图3(c)所示;

(4)由于完全拓扑图G’中Hamilton路径上的节点D与节点B之间的边,对应于拓扑图G上的路径“节点D—>节点C—>节点B”;因此根据回路P在完全拓扑图G’中依次经过的节点与边,在拓扑图G中依次找到对应的节点与最短路径;

本实施例中,完全拓扑图G’中Hamilton路径在拓扑图G中对应的路由为:“节点A—>节点E—>节点D—>节点C—>节点B—>节点C—>汇聚节点”,即如图3(d)所示的初始链路路由R,从该图上可见初始链路路由R上包含一个环路“节点C—>节点B—>节点C”;

(5)对初始链路路由R中的各环路上的每个节点进行判决,获得改进路由;在本实施例中,在环路“节点C—>节点B—>节点C”上,节点B只有一个邻居节点C,所以将节点B及其在环路上的两条边(节点C—>节点B和节点B—>节点C)从初始链式路由R上删除;获得改进路由R’为:“节点A—>节点E—>节点D—>节点C—>汇聚节点”,如图3(e)所示;

(6)对于被删除的节点B,以该节点到选择到改进路由R’的最短路径,即路径节点B—>节点C,作为传送该节点的源数据至改进路由R’的路由,如图3(e)中的虚线箭头所示;而对于处在改进路由R’上的节点,如节点A、E、D、C,则以改进路由R’作为传送其计算结果的路由。可见,当各节点产生单位数据量1时,各边上的总通信开销为。

作为比较,在图3(f)给出一种常规路由算法,例如各节点选择到汇聚节点的最短路径作为自己的路由;指定其中一条路径为传送计算结果的路由,如“节点A—>节点B—>节点C—>汇聚节点”。当各节点产生单位数据量1时,各边上的通信开销如图3(f)上标注。其中,节点D由于不在传送计算结果的路由上,因此不能执行计算,所以节点D除了传递自己的数据给节点C进行计算外,还需要中继节点E的数据给节点C计算,故而节点D到节点C之间的边的通信开销为1+1=2,总通信开销为6,大于图3(e)中所示意的,采用本发明提供的恒等递归计算约束下的路由算法的总通信开销5。

本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1