自适应能耗和延迟的水声传感器网络路由决策方法转让专利

申请号 : CN201910325682.6

文献号 : CN110113796A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 苏毅珊范榕张麟

申请人 : 天津大学

摘要 :

本发明涉及一种基于深度Q网络的自适应能耗和延迟的水声传感器网络路由决策方法,包括下列的步骤:(1)以某传感器节点作为源节点,对从邻居节点接收到的剩余能量和深度信息进行数据预处理,作为深度Q网络的输入层信息;(2)构造深度Q网络;(3)构造损失函数;(4)考虑节点的剩余能量和深度,构造深度Q网络的回报函数;(5)初始化深度Q网络参数;(6)在将节点部署到水下之前采用离线训练的方式训练深度Q网络。

权利要求 :

1.一种基于深度Q网络的自适应能耗和延迟的水声传感器网络路由决策方法,包括下列的步骤:(1)以某传感器节点作为源节点,对从邻居节点接收到的剩余能量和深度信息通过公式rre=reini/remax和rde=deini/demax进行数据预处理,作为深度Q网络的输入层信息,其中reini和deini分别表示某邻居节点当前的剩余能量和深度,remax和demax分别表示该源节点的所有邻居节点中具有最大剩余能量和深度的数值;

(2)构造深度Q网络,包括输入层、若干隐藏层和输出层,通过全连接方式连接各层,输出层输出Q值,其中Q值表示在某一节点状态下做出某种行为的奖励值;

(3)构造损失函数:通过公式L(w)=E[(Qreal-Qesti(si,ai,w))2]得到深度Q网络的损失函数,其中 表示将要更新的奖励Q值,R(si,ai)表示在状态si采取行动ai后所获得的回报,γ表示折扣因子,P(si,ai,si+1)表示在状态si采取行动ai后转移到状态si+1的概率,Q*(si+1,ai+1,w)=maxQesti(si+1,ai+1,w)表示在下一个状态si+1采取行动ai+1后所能获得的最大Q值,w是网络参数;Qesti(si,ai,w)表示在当前状态si下采取行动ai能够获得的Q值;

(4)考虑节点的剩余能量和深度,构造深度Q网络的回报函数:若当前源节点的下一跳节点是水面接收节点,则回报函数R(si,ai)=100;否则,回报函数R(si,ai)=c+αrre+βrde,其中α和β分别代表限定数据预处理后的剩余能量和深度权重的参数,c的值是α和β的总和且小于100;

(5)初始化深度Q网络参数;

(6)在将节点部署到水下之前采用离线训练的方式训练深度Q网络,利用公式

对损失函数中的网络参数w进行梯度求导,

利用公式 更新参数w,其中η∈[0,1];传感器网络的状态信息(包括相邻节

点的连接关系,剩余能量和深度)为初始设定值;网络训练结束后,选择具有最大Q值的节点作为转发节点,从而获得源节点到水面接收节点的最优传递路径;

(7)根据传感器节点初始状态信息在水下部署传感器网络,利用离线训练得到的深度Q网络参数和Q值,每获得一个状态和行为数据对所对应的损失函数,累积存储损失梯度直到设置的更新周期到期时通过公式 统一更新参数w;通过水下传感器节点在不同通信阶段得到的更新状态信息,周期性在线训练深度Q网络,修正深度Q网络参数并得到更新后的Q值;选择具有最大Q值的节点作为转发节点,从而获得不同节点状态下的源节点到水面接收节点的最优传递路径;直到网络寿命终结,深度Q网络更新训练结束。

说明书 :

自适应能耗和延迟的水声传感器网络路由决策方法

技术领域

[0001] 本发明属于水声传感器网络通信技术领域,涉及一种路由决策方法。

背景技术

[0002] 水声传感器网络具有长传输延时,高能量消耗以及动态拓扑的特点。由于水声传感器节点体积大,难以更换电池,因而受限的资源限制了网络寿命,即网络的有效作用时间。针对这些问题,目前虽然提出了很多面向水声通信的路由决策方法,但是仍然存在很多缺点与问题,迫切需要更加全面的路由算法。
[0003] 传统的路由协议采用最短路径算法缩短端到端延时,减少网络能耗,但是分布在最短路径上的“热点”节点会被频繁使用,因而缩短了网络寿命。为延长网络有效使用时间,许多智能路由决策算法被提出。这些路由协议选择剩余能量多的节点作为下一跳转发节点,但是未能全面权衡网络寿命与端到端延时和能量消耗之间的综合优化情况。

发明内容

[0004] 针对上述问题,本发明提出一种自适应能耗和延迟的水声传感器网络路由决策方法,更加全面地考虑了水声通信的重要指标,从而可以延长网络寿命,提升通信网性能。技术方案如下:
[0005] 一种基于深度Q网络的自适应能耗和延迟的水声传感器网络路由决策方法,包括下列的步骤:
[0006] (1)以某传感器节点作为源节点,对从邻居节点接收到的剩余能量和深度信息通过公式rre=reini/remax和rde=deini/demax进行数据预处理,作为深度Q网络的输入层信息,其中reini和deini分别表示某邻居节点当前的剩余能量和深度,remax和demax分别表示该源节点的所有邻居节点中具有最大剩余能量和深度的数值;
[0007] (2)构造深度Q网络,包括输入层、若干隐藏层和输出层,通过全连接方式连接各层,输出层输出Q值,其中Q值表示在某一节点状态下做出某种行为的奖励值;
[0008] (3)构造损失函数:通过公式L(w)=E[(Qreal-Qesti(si,ai,w))2]得到深度Q网络的损失函数,其中 表示将要更新的奖励Q值,R(si,ai)表示在状态si采取行动ai后所获得的回报,γ表示折扣因子,P(si,ai,si+1)表示在状态si采取行动ai后转移到状态si+1的概率,Q*(si+1,ai+1,w)=maxQesti(si+1,ai+1,w)表示在下一个状态si+1采取行动ai+1后所能获得的最大Q值,w是网络参数;Qesti(si,ai,w)表示在当前状态si下采取行动ai能够获得的Q值;
[0009] (4)考虑节点的剩余能量和深度,构造深度Q网络的回报函数:若当前源节点的下一跳节点是水面接收节点,则回报函数R(si,ai)=100;否则,回报函数R(si,ai)=c+αrre+βrde,其中α和β分别代表限定数据预处理后的剩余能量和深度权重的参数,c的值是α和β的总和且小于100;
[0010] (5)初始化深度Q网络参数;
[0011] (6)在将节点部署到水下之前采用离线训练的方式训练深度Q网络,利用公式对损失函数中的网络参数w进行梯度求导,利用公式 更新参数w,其中η∈[0,1];传感器网络的状态信息(包括相邻节
点的连接关系,剩余能量和深度)为初始设定值;网络训练结束后,选择具有最大Q值的节点作为转发节点,从而获得源节点到水面接收节点的最优传递路径;
[0012] (7)根据传感器节点初始状态信息在水下部署传感器网络,利用离线训练得到的深度Q网络参数和Q值,每获得一个状态和行为数据对所对应的损失函数,累积存储损失梯度 直到设置的更新周期到期时通过公式 统一更新参数w;通过水下传感器节点在不同通信阶段得到的更新状态信息,周期性在线训练深度Q网络,修正深度Q网络参数并得到更新后的Q值;选择具有最大Q值的节点作为转发节点,从而获得不同节点状态下的源节点到水面接收节点的最优传递路径;直到网络寿命终结,深度Q网络更新训练结束。
[0013] 本发明提出的一种自适应能耗和延迟的水声传感器网络路由决策方法,通过采用综合考虑节点剩余能量和深度信息的深度Q网络算法,在严格限制能耗和延时的前提下,延长了网络寿命,提升了系统的通信性能。

附图说明

[0014] 图1是深度Q网络模型示意图。

具体实施方式

[0015] 下面结合附图对本发明进行说明。
[0016] 本发明提出的水声传感器网络路由决策方法,通过采用深度Q网络算法,综合考虑节点的剩余能量和深度信息,选择计算得到的具有最大Q值的节点作为下一跳转发节点,从而得到传输数据的最优路径。该路由决策方法在严格控制能耗与延时的前提下,有效延长了网络寿命,提升了系统的通信性能。
[0017] 在一个5000×4000×4500m3的水下传感器网络通信场景中,均匀部署着80个传感器节点,水面中心部署着一个接收器,水下的节点都可以作为产生数据的源节点向水面接收器发送信息。传感器节点的传输范围为2000m,初始能量为10000J,发送和接收功率分别为10w和1w。假设节点可以知道自己的邻居节点,并且可以获得自己和邻居节点的剩余能量、深度和Q值的信息。
[0018] 本发明的具体操作流程如下:
[0019] 1.数据预处理:传感器节点根据公式rre=reini/remax和rde=deini/demax对从当前源节点的邻居节点获得到的剩余能量和深度信息进行预处理,其中reini和deini分别表示某邻居节点当前的剩余能量和深度,remax和demax分别表示该源节点的所有邻居节点中具有最大剩余能量和深度的数值;处理后的数据将作为深度Q网络的输入;
[0020] 2.构造深度Q网络:深度Q网络模型如图1所示,输入端包括4个节点,分别是当前源节点和下一跳转发节点的序号,以及下一跳节点经过数据预处理的剩余能量和深度信息,这些数据构成一个状态和行为数据对;隐藏层1包括300个节点和偏置b1,隐藏层2包括150个节点和偏置b2,隐藏层3包括15个节点;输出层输出从源节点到下一跳转发节点的Q值,每两层之间采用全连接方式连接且均设置一个权重参数w;前两层采用tanh激活函数;
[0021] 3.构造损失函数:利用公式L(w)=E「(Qreal-Qesti(si,ai,w))2]得到深度Q网络的损失函数,其中Qreal=R(si,ai)+γ∑P(si,ai,si+1)Q*(si+1,ai+1,w)表示将要更新的奖励Q值,R(si,ai)表示在状态si采取行动ai后所获得的回报,γ表示折扣因子,P(si,ai,si+1)表示在状态si采取行动ai后转移到状态si+1的概率,Q*(si+1,ai+1,w)=maxQesti(si+1,ai+1,w)表示在下一个状态si+1采取行动ai+1后所能获得的最大Q值,w是网络参数;Qesti(si,ai,w)表示在当前状态si下采取行动ai能够获得的Q值,对Qreal和Qesti(si,ai,w)求均方差得到损失函数;
[0022] 4.构造回报函数:若当前源节点的下一跳节点是水面接收节点,则在损失函数中定义的回报函数R(si,ai)=100;否则,利用公式R(si,ai)=c+αrre+βrde求得回报函数,其中α和β分别代表限定数据预处理后的剩余能量和深度权重的参数,c的值是α和β的总和且远小于100;
[0023] 5.网络参数初始化:折扣因子γ设置为1,w1,w2,w3,w4通过正态分布随机初始化,偏置b1,b2均设置为1,根据80个源节点和1个水面接收器之间约1300个状态和行为数据对初始化对应的约1300个回报函数值和Q值,其中回报函数值按照步骤4进行初始化,Q值按照相邻节点间设置为0,不相邻节点间设置为-1000的方式进行初始化,其中到达终点的Q值初始化后固定不变,不参与训练过程中的Q值更新;
[0024] 6.离线训练:在将节点部署到水下之前采用离线训练的方式训练深度Q网络;采用梯度下降法拟合损失函数,利用公式 对损失函数中的网络参数w进行梯度求导,利用公式 更新参数w,其中η∈[0,1];在初始的传感器网络节点状态下(包括相邻节点的连接关系,剩余能量和深度),每次从约
1300组Q值中随机选取一个Q值进行训练,直到参数w更新到收敛为止,此时深度Q网络在水声传感器网络的初始状态下完成训练;在源节点的邻居节点中,选择具有最大Q值的节点作为转发节点向水面传递数据包,此时得到每一个源节点到达水面接收器的最优路径;将网络参数w和更新后的Q值存储在一个经验池中供后续更新使用;
[0025] 7.在线训练:根据离线训练时的传感器节点初始状态信息在水下部署传感器网络,在经验池中存储的数据的基础上,采用异步在线训练的方式周期性训练深度Q网络:传感器网络中的节点周期性地交互状态信息,根据实时通信情况,每获得一个状态和行为数据对所对应的损失函数,累积存储损失梯度 直到设置的更新周期到期时通过公式统一更新参数w;根据传感器节点在不同通信阶段的状态信息,通过此时训练得到的深度Q网络计算更新每个节点的Q值,选择具有最大Q值的节点作为转发节点,从而获得源节点到水面接收节点的最优路径;直到传感器网络中出现通信空区,即某一源节点发送的数据不能传递到水面接收器,深度Q网络更新训练结束,网络寿命终结。
[0026] 本发明提供的基于深度Q网络的自适应能耗和延迟的水声传感器网络路由决策方法,通过综合考虑节点在不同阶段的剩余能量和深度信息,采用深度Q网络算法得到全局的最优路由决策,从而将数据包从源节点发送到水面的接收节点,在严格限制能耗和延时的前提下,延长网络寿命。