一种基于机器学习的潮间带传感器网络的低延时路由方法与流程

文档序号:16276286发布日期:2018-12-14 22:36阅读:223来源:国知局
一种基于机器学习的潮间带传感器网络的低延时路由方法与流程

本发明属于无线传感器网络领域,具体涉及一种基于机器学习的潮间带传感器网络的低延时路由方法。

背景技术

潮间带是指沿海岸线一带,高潮线和低潮线之间的一片区域。潮间带是许多海洋生物赖以生存的栖息地,然而这一片区域有着复杂的物理环境变化,如水位、温度、含氧度等。因此,在潮间带部署无线传感器网络对于环境监测、生态保护有着重要的意义。

在潮间带部署无线传感器网络面临诸多挑战。首先是通信介质的选择问题。通常对于基于陆地的传感器网络,通常是使用射频信号作为数据传输的载体。但是射频信号对水,尤其是海水的穿透能力较差,仅12个厘米左右,因此在传感器节点被海水淹没期间,数据无法实时上传到基站。另一方面,即使在低潮时期,由于潮间带恶劣的物理环境,使得正常的通信也会严重受到潮水的影响,数据传输的效率十分低下。以上这些问题的直观表现就是数据的传输延迟远远高于其他同等规模下的陆地传感器网络。

据实验统计,潮间带无线传感器网络的延时远远高于同等规模下室内无线传感器网络。以链路质量导致的延迟为例,室内无线传感器网络的链路延迟通常在一个系统周期以内,而在潮间带无线传感网络中,这一数值为15个系统周期。另外,由于链路拥塞导致的数据包累积也成为了数据发送延迟的一个主要原因。

为解决上述问题,本发明提出一种基于机器学习的潮间带传感器网络的低延时路由方法。该方法首先对潮间带无线传感器网络的延迟建模,并利用机器学习方法对其进行量化,最终设计以低延时为导向的路由方法。



技术实现要素:

本发明提出一种基于机器学习的潮间带传感器网络的低延时路由方法,该方法首先对潮间带无线传感器网络的延迟建模,并利用机器学习方法对其进行量化,最终设计以低延时为导向的路由方法。

本发明的技术方案具体如下:

一种基于机器学习的潮间带传感器网络的低延时路由方法,包括如下步骤:

1)对潮间带无线传感器网络延迟进行建模;

2)各节点计算由数据包阻塞造成的延时;

3)各节点计算到邻居节点的链路延时;

4)以延时优化为目的,利用最短路径算法计算延时最优路径。

上述技术方案中,所述的步骤1)具体如下:

潮间带无线传感器网络的延时被分为链路延时和拥塞延时,一条被选择的路由的总延时为:

其中,n是一条路由中经过的节点的个数,ldi,i+1为节点i到i+1的链路延时,ndj+1为节点j+1的拥塞延时。

所述的步骤2)具体为:节点由数据包阻塞造成的拥塞延时按下式获得:

其中,bi(t)为节点i在第t周期时缓存的数据包个数,通过读缓存区的寄存器直接得到,ci(t)为节点i在一个周期内能够处理的数据包的个数,由前10个周期的节点i处理的数据包的平均个数得到,计算如下:

ci(t)=avg.{ci(t-λ)},λ=1,2,…,10

si′(t+τ)为节点i的未来状态,即节点在第t+τ周期时位于水上还是被海水淹没的状态,使用机器学习算法估计。

所述的节点i的未来状态si′(t+τ)采用如下方法获得:以:1)节点已经在水上的时间daw,2)节点当前邻居节点个数nnb以及3)节点当前可用链路个数nlink为特征,选择逻辑回归模型作为机器学习的分类算法估计节点未来τ周期的状态。

所述的步骤3)具体为:

首先判断对于任意两个节点是否能建立通信

在两个节点间存在可用通信链路时,即lij(t)=1时,节点i将利用ctp路由算法广播信标估计与节点j之间的链路质量etxij(t);

节点i和节点j之间的链路延时ldij(t)通过下式计算:

所述的步骤4)具体为:节点计算出了其相应的拥塞延时以及与其他邻居节点间的链路延时后,将该节点的当前最短路径以及自己的拥塞延时以信标的形式广播给所有邻居节点,最终网络中所有节点使用最短路径算法计算迭代得到各个节点到基站的延时最短路由,所述的最短路径算法采用dijkstra方法。

本发明的有益效果如下:本发明方法首先对潮间带无线传感器网络的延时建模,将无线传感器网络中的延时分为节点拥塞延迟以及链路延时,并分别对其进行量化。在链路延时的量化过程中,本方法使用了机器学习算法。该方法最终以延时为导向,设计数据转发路由,并最终有效缩短潮间带传感器的延时。

附图说明

图1为本发明实施路由的选路示意图。

图2为本发明实施具体流程图。

具体实施方式

下面结合附图对本发明做进一步说明。

图1展示了本发明路由选路方法。本发明是基于最短路径算法来选择路径的,主要贡献在于提出针对潮间带传感器网络的以延时为导向的选路矩阵,此过程中需要对潮间带传感器网络中的各延时成分建模量化。如图1所示,本发明将潮间带传感器网络中的延时成分主要分为链路延时(实线上的数字)以及节点的拥塞延时(圆圈中的数字),数字越大则代表选择该条链路或该节点作为路由的延时越大。图1中的圆圈代表一个节点,虚线代表可用链路,实线代表最终所选择的路径。

基于机器学习的潮间带传感器网络的低延时路由方法包括以下步骤:

步骤一:对潮间带无线传感器网络延迟建模。通过对部署在潮间带的无线传感器网络的数据分析,我们发现导致潮间带无线传感器网络大延迟的主要原因主要是:1)由环境造成的较差的链路质量以及潮水涨潮导致的链路延时;以及2)由于网路拥塞导致数据包不断累积的缓存区的拥塞延时。为方便说明,将后续说明中使用到的符号在表1中予以声明。

表格1本发明汇总使用到的符号含义说明

潮间带无线传感器网络的延时被分为链路延时和拥塞延时,一条被选择的路由的总延时由下式定义:

其中n是一条路由中经过的节点的个数,i∈{1,2,…,n},j∈{1,2,…,n-1。

步骤二:各节点计算各节点拥塞延时。由于数据包不断在节点的缓存区中堆积,根据缓存区fifo(先进先出)原则,新生成的数据包需要等待缓存区中已有的数据被发送后才能发送。从数据包被推入缓存区到数据包被发送的这段时间被称作拥塞延时。对于一般传感器网络,网络连通性和链路质量较好,因此拥塞延时通常较短。但是对于潮间带的无线传感器网络,拥塞延时十分严重。根据实验数据看,潮间带无线传感器网络节点的缓存区中的数据包常常达到数百个。节点的拥塞延时可通过下式计算:

其中bi(t)可以通过读缓存区的寄存器直接得到,ci(t)由前10个周期的节点i处理的数据包的平均个数得到,如下所示:

ci(t)=avg.{ci(t-λ)},λ=1,2,…,10

在拥塞延时的计算过程中,我们使用到了节点未来状态,即si′(t+τ)。我们发现,在估计拥塞延时时,需要考虑到节点的未来状态。如果节点在未来τ个周期后就将被海水淹没,则应该把该节点的拥塞延时设为一个较高值,避免该节点被其他节点选择为父节点。为准确估计节点的未来状态,我们以:1)节点已经在水上的时间daw,2)节点当前邻居节点个数nnb以及3)节点当前可用链路个数nlink为特征,使用机器学习算法来估计节点未来τ周期的状态。之所以能够预计节点未来状态,是由于节点状态与潮水周期直接相关,而潮水具有明显的周期性,因此我们可以用机器学习算法来预测节点未来的可能状态。通过在实际实验数据上比较三种常用机器学习算法的性能,包括逻辑回归(logisticregression),adaboost分类器,高斯朴素贝叶斯算法等,综合考虑各算法开销,我们最终选择逻辑回归模型作为机器学习的分类算法。

步骤三:各节点估算其可用链路的链路延时。首先根据下式判断对于任意两个节点是否能建立通信。

在两个节点间存在可用通信链路时,即lij(t)=1时,节点i将利用ctp路由算法广播信标估计与节点j之间的链路质量etxij(t)。此时,我们定义节点i和节点j之间的链路延时通过下式计算:

步骤四:以延时优化为目的,利用最短路径算法计算延时最优路径。节点计算出了自己的拥塞延时以及与其他邻居节点间的链路延时后,要将自己的当前最短路径以及自己的拥塞延时以信标的形式广播给所有邻居节点。最终网络中所有节点使用最短路径算法计算迭代得到各个节点到基站的延时最短路由,其过程如附图2所示,所述的最短路径算法可以直接采用dijkstra算法。

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