1. 引言
无线传感器网络(WSN)在智能交通、环境监测、军事等领域有着广泛的应用。WSNs的主要功能之一是,事件发生后,网络中的传感器需要将感知到的实时数据传输到指定的收集器,即汇聚节点。
由于传感器采用的是电池供电,因此能效一直是研究的热点之一。因此,近十年来,低占空比网络 [1] [2] [3] [4] [5] 被认为是最关键的节能技术。在这种网络中,每个传感器节点按照一个无限二进制串的工作计划,周期性地在唤醒和休眠状态之间切换,其中1和0分别表示激活状态和休眠状态。一个节点只有在被唤醒时才能接收到数据包,并且可以在任何时间传输数据包。延迟主要是端到端延迟 [6],即从事件发生的时间到接收器接收到关于该事件的数据包的时间的延迟。例如,给定从源节点到汇聚节点的路径P,由于活动/休眠调度,每个转发节点必须等待它的下一跳邻居节点苏醒来接收数据。对于一些对延迟敏感的应用,特别是军事监测和火灾报警,这种延迟应该受到限制。P的通信成本 [3] [7] [8] 包含距离、能量消耗、传输次数(或跳数)等。对于路径P的每一跳,如果希望到达终点的进度(距离)尽可能大,则可以减少跳数和P的长度。但是,由于各节点的唤醒调度,最大进程可能会导致某些跳长时间等待。然后,需要对延迟、成本等进行约束。
我们的贡献:
1) 研究了具有一般拓扑结构的DC-WSNs中的多约束路径 [9] [10] 问题。此外,在本文同时考虑的各种约束中,任意一对节点之间的传输延迟可以与DC-WSNs的时间扩展图 [11] 的构造相结合。
2) 重点讨论了在时间展开图中选择的路径与原始网络中所需要的非循环路径之间的关系。
然后,结合多约束路径问题,在第三节提出了一种多项式时间算法。
2. 术语与网络模型
假设无线传感器网络具有
个点
,随机分布在
维欧几里得立方体中。对于任意节点
,定义
的通信范围,记为
,是一个以
为中心,半径为
的
维球。如果
在通信范围
内,则
是
的邻居,
可以选择
作为它的下一跳节点。同时,
也在通信范围
中。
网络可以用无向图
表示。
是节点集,
是称为边的不同节点的无序对的集合。对于任意两个节点
,边
,当且仅当这两个节点之间的距离不大于
。对于任意点
,设
。如果网络为DC-WSN,则每个节点
都有自己的工作调度
,其中,
为
在时间
期间的状态,T为工作周期。
定义2.1. ( [11] )图
中的路径是一个序列
,使得
是相邻节点并且
对于任意不相同的
。
定义2.2. 在占空比图中,给定序列
,设
为转发节点
的数据接收时间,
。那么
是可行漫步当且仅当以下两个条件成立时。
1)
和
是相邻节点;
2) 对于
中的每个边
,数据包可以在
时间之前成功地从
传送到
,在
时间被
接收。
而且,如果
对于任意不同的
,则
称为可行路径。
为了便于描述,我们考虑了
的3个边权函数,
,其中
是数据包在
中通过边
时所经历的延迟。如果
是可行路径,
和
接收数据的次数分别为
和
,则
。给定一个数据传输可行路径
,设每个节点
的接收时间为
。设
,
,并且
。
DC-WSN中的多约束路径问题(WSN)表示为DC-MCP
(MCP
),为求出一条从
到
的可行路径
,使得
(即
),
,
。如果存在这样的路径,则该路径是DC-MCP
(MCP
)。然后,本文的主要问题是找到DC-MCP
的解。接下来,我们将分两步提出一个针对这个问题的多项式时间算法。
2.1. 具有三个权值函数的时间扩展图
设两个节点
和
分别为源点和汇点。在 [11] 中,Gu等人将图
建模为时间扩展图。结合上面的三个权值函数
,
和
,按以下步骤得到一个时间扩展有向图
:
1) 设
。
的点集为
。
2)
的有向边集为
3) 定义两个权值函数:
,
,如下所示:
。对于任何的
,
对于
。
设
,
,其中
。那么以下两个观察结果是显而易见的。
观察2.3. 对于任意点
。
观察2.4. 对于图中任意的
-路
,
。
给定图
中的路
,
表示
的子路。如果
,则
,
。设
,
中
的数据接收时间是
。
观察2.5.
是图
中的一条可行路。
证明:通过图
的构造,对每一个
,我们有
,
并且
在
时刻唤醒。所以对任意
,转发点
能够在
时刻之前把数据包传递到点
,并且
能够在
时刻成功接收该数据包。
观察2.5表明
是可行的漫步,因此
。另外,如果我们假设存在两个整数
满足
,那么定义2.2表明了
不是G的可行路径。将
的定义与观察2.4和2.5结合起来,可以立即得到以下结果。
引理2.6. 给定MCP
的一个解
,如果
是图G中的一条可行路,则
是DC-MCP
的一个解。
2.2. 创建一个新的权值函数
根据引理2.6,它足以找到MCP
的一个解
使得
是图
中的一条可行路,则
是原问题所需路径。现在,我们需要使用Chen [9] 等人提出的一个新的边权函数,用
表示这个函数,定义为
,其中
是正整数集。给定一个正整数
,对每一个
,
。
在下文中,根据如下定理我们将考虑MCP
。
定理2.7. [9] MCP
的解也一定是MCP
的解。
根据定理2.7,只要求解MCP
,就可以得到一个解
,使
是可行路径。进一步地,我们也希望
在
和
的约束下尽可能小。这个问题的算法将在第三节讨论。
3. 多项式时间路由算法
在本节中,基于用于MCP多约束路径问题的扩展Dijkstra最短路径算法 [9],提出了一种用于DC-MCP的多项式时间算法。首先,我们考虑初始化阶段。
每个节点
的
在
-权值为
的约束下,对
-权值的最小化起着重要作用。
集合
包含节点之间所有可能的对和
-权值。在下面,我们会找到一个图
中的
-路
满足
是在
和
约束下的最小值。
此外,最小化
和
也是必要的。例如图1,考虑展开图
对应到图
。设
,
。注意,图
中存在一条路
,
,
和
。显然,由于工作进度的安排t为
,故从s到t,
有最小的延时。然而,因为
,
,所以
不是图G中的一条st-可行路,此外,对于路
,
,
和
,
是一条可行路。
Figure 1. An undirected graph
with three weight functions w1, w2 and w3, where
and
图1. 具有三个权值函数w1, w2和w3的无向图
,其中
,
初始化算法之后,对于
中以
和
开头的所有边,我们使用Relax算法 [9],如下所示。并且我们可以观察到,对于
中的任何
,都存在一个近似于
的
,其中
是从
到
所有路径中
-权值小于
的
-权值。
然后我们开发了一个构造时间展开图
中
-路
的有效算法(见下面的DC-MCP算法),并证明了路径
是定理3.1中
的可行路径。
通过DC-MCP算法,可以得到一个根为
的有向树
。在步骤2~13中的if循环的每次迭代中,在if循环的
中添加一条有向边(参见步骤7~9)。对任意
,
中唯一的
-路
有
和
之间所有路径的最小
-权值。此外,该路径的
-权值不大于
,并且在其
-权值最小时尽可能小。根据
的定义,很容易得到
。结合步骤15~16,我们得到了步骤17返回的路径
,当
是从
到
的最小
-权重路时,
也是最小的。
设
,
。
且
。因为
,步骤2和步骤5需要
时间复杂度。步骤3~4的时间复杂度是
。松弛算法需要
时间。根据观察2.3,for循环(11~12行)最多有
次迭代,所以步骤11~12的时间复杂度是
。在2~13行中,每次执行if循环,
中的一条边将被加到集合
中。最多有
次迭代。所以,步骤2~13需要
时间。步骤15的时间复杂度为
。因为
是图
中的路(见定理3.1),所以步骤16需要
次。因此,总时间复杂度为
。
定理3.1. 假设
为DC-MCP算法得到的路径。则没有点
使得
,其中
。
证明:反证法。假设
是路
的最后一个点使得存在
,
。设
是
在路
中的前一个点,其中
。要注意的是
。故
,其中
。设
和
。
根据
的存在性,如果
尽可能的大,沿着路径
,对于任意
存在
使得
是图
上的路,
,
。假设当
时
。则
是一条
-路,
. (3.1)
同样地,
. (3.2)
根据第15步,对任意
和
,有
或者
。因此,
。目前,
是一条
-路,
是一条
-路。
情况1.
。
在这种情况下,
是
中一条
-路。根据公式(3.1)、(3.2)和DC-MCP算法的3~8步可知,与P相比,
是一个更好的选择,所以P不在集合T中。矛盾。
情况2.
。
注意
,
和
,可以看出路径
和
之间至少有一个交集。
情况2.1.
和
至少有一个公共节点。
因为
,我们能够选择
使得
和
,其中
。则
。将此与
的定义结合起来,我们有
。
因为
,
,故产生矛盾。
情况2.2.
和
没有公共节点。
现在存在
满足
和
,其中
。根据
的定义,
。在此基础上,因为
,我们有
。
Since
,故产生矛盾。
定理3.2. 如果P是通过DC-MCP算法获得的路,则
是LDC-MCP
的一个解。
证明:因为P是通过DC-MCP算法获得的路,很容易看出
。从第15步开始,
是在
限制下的所有
-路中权值最小的。所以
是MCP
的一个解。根据定理2.7,P也是MCP
的一个解。另外,观察2.5和定理3.1表明了
是图G中的一条可行路。因此,根据引理2.6,
是DC-MCP
的一个解。
4. 结论
摘要研究了占空比无线传感器网络(DC-WSN)环境中的多约束路径问题。该问题形式化为DC-MCP
,当
时,只需多项式时间即可求解。根据DC-WSN定义图G。将G与所有节点的工作进度相结合,构造了一个具有两个权函数的时间展开图
。然后将问题DC-MCP
替换为另一个MCP
,可以化简为问题MCP
。在 [9] 中扩展的Dijkstra算法的基础上,利用DC-MCP算法在多项式时间上求出MCP
的一个解P。另外,由P得到的路径
没有循环,是原问题的一个解。
为了进一步讨论,我们将尝试将我们的工作与k-不相交路径问题、数据收集问题和其他复杂的变体结合起来。
基金项目
山西省自然科学基金201801D221193。
NOTES
*通讯作者。