掌桥专利:专业的专利平台
掌桥专利
首页

一种基于元学习参数优化的水声网络Q学习路由方法

文献发布时间:2023-06-19 19:30:30


一种基于元学习参数优化的水声网络Q学习路由方法

技术领域

本发明涉及水下通信,尤其是涉及一种基于元学习参数优化的水声网络Q学习路由方法。

背景技术

近年来,水声传感器网络在与海洋领域相关的生产生活各方面有着广阔的应用前景,引起了各国政府以及业界的高度重视。路由协议是水声传感器网络设计中非常重要的环节,可使数据包快速可靠地传输,是近年来最有价值的研究热点之一。设计高效可靠的路由算法是水声网络中一个基础而又必不可少的研究课题。

由于水声信道的固有属性,水声传感器网络相比于陆地无线传感器网络存在着能量利用率低、端到端时延长、丢包率和系统能量消耗高、网络拓扑结构适应性差等难题。为此,须针对水声传感器网络的固有特性进行路由算法的特殊设计,而非简单地将传统陆基无线传感器网络的路由算法直接应用于水声传感器网络。

随着海洋物联网的发展,水声传感器网络感知的水下数据量越来越庞大,针对有限的水下资源,许多文献提出基于Q学习的路由协议。T.Hu等人(T.Hu and Y.Fei,“QELAR:AMachine-Learning-Based Adaptive Routing Protocol for Energy-Efficient andLifetime-Extended Underwater Sensor Networks”,IEEE Trans.Mobile Comput.,vol.9,no.6,Jun.2010.)提出了一种基于强化学习的自适应、节能、生命周期感知的路由协议。该协议通过设计让节点的剩余能量分布更加均匀,以达到延长网络生命周期的效果。但在该协议中,节点之间的信息相互交换使能量损耗增大。Z.Jin等人(Z.Jin,et al,“A Q-Learning-Based Delay-Aware Routing Algorithm to Extend the LifetimeofUnderwater Sensor Networks”,Sensors 2017,17,1660.)提出了一种基于Q学习的延迟感知路由算法以延长水声网络生命周期。通过Q学习,该协议可以确定全局最优的下一跳,而不是采用贪婪模式进行下一跳。但由于每次数据传输路径设计计算都需要借助水面目的节点Sink,这会增大端到端延迟,导致网络堵塞。

目前,水声传感器网络路由算法研究中少有考虑参数设置优化问题。对此,本发明拟通过元学习设计一种可以实现参数自我更新的模型,以实现路由协议的最大优化适应性。

近年来,元学习领域的研究愈来愈多。与传统人工智能不同,元学习的目标是在考虑多个场景经验的基础上改进学习算法本身。元学习可从多个学习片段中,提炼涵盖相关任务分布的经验,并利用这些经验提高未来的学习效果。这样的学习方式能使得学习算法在运用时能得到最大优化适应性。元学习也通常被理解为学会学习,即在多个学习场景中改进学习算法的过程。L.Franceschi等人(L.Franceschi,et al.,“Bilevel Programmingfor Hyperparameter Optimization and Meta-Learning”,arXiv:1806.04910v2[stat.ML],3Jul.2018.)提出可以将元学习分为内外部双层问题,其中内部问题为基于训练集可得到一系列参数;外部问题为验证集损失函数最小化,基于此可在一系列参数中得到较好的参数。

发明内容

本发明的目的在于针对水声传感器网络能量利用率低、端到端时延长、丢包率和系统能耗高、网络拓扑结构适应性差等难题,提供一种基于元学习参数优化的水声网络Q学习路由方法,利用元学习进行Q学习的参数优化,将其应用于寻找数据传输的最优路径,从而得到一个时延低且延长水声网络寿命的寻找路由方法。本发明通过利用Q学习并结合水声传感器网络簇头的计算功能,降低数据传输的端到端时延,并且基于元学习对Q学习奖励函数进行参数优化,以提高路由协议对海洋环境场景变化的最大优化适应性。

本发明包括以下步骤:

1)对水下传感器节点进行分簇,将分簇后的簇头CH节点作为计算节点,主要负责数据传输最优路径的计算以及与其它簇头间的协调计算;其余节点只负责数据传输任务;

2)在水声传感器网络中,各个簇头CH节点负责根据其余非簇头节点信息计算并更新Q值表,从而设计各个簇头CH节点所属簇内数据传输的最佳路径;各个簇内非簇头节点负责数据传递及与所属簇头进行信息交流;

设有传输数据需求的节点为N

当数据准备传输时,簇内节点执行以下传输步骤:

2.1)节点N

步骤2.1)中的数据包,包含传输数据的数据头和节点N

2.2)簇头CH

2.3)簇头CH

步骤2.3)中,簇头CH

2.4)当数据传输到本簇内数据传输最优路径末端节点N

2.5)近邻节点N

2.6)簇头CH

步骤2.6)中簇头CH

2.7)重复迭代步骤2.4)~2.6)直至没有深度更浅的簇头CH节点,最终由最后一簇的数据传输最优路径的末端节点N

3)在Q学习的框架中,其核心是状态-动作对,即Q(s,a)的值,设在状态s

通过迭代来近似:

其中,α∈(0,1],表示学习效率;r

步骤3)中,考虑簇头CH节点计算奖励函数r

r

β

其中,g表示持续惩罚;β

4)节点深度

5)考虑到β

针对基于元学习的参数优化模型,该算法模型可以理想地使下一次任务学习效果都能比上一次学得更好;在Q学习算法模型的参数初始化后,用

在高层次上可以表示为:

式中,

其中,

在形式上,可将元训练阶段使用的数据集表示为:

6)针对基于元学习参数优化模型实现参数自我更新优化,使用内外双层优化方式进行处理;

6.1)针对内层优化问题,采用梯度下降的方法处理;

根据以往经验数据,即训练集

β_hat=β(e)=A×e+B (9)

其中,e为簇内平均剩余能量,A和B为常数,参数A和B统称为ω

可通过梯度下降寻求一系列待选择参数(λ

设损失函数J如下,

其中,m为数据个数,β_hat

设置ω

以此类推,由此可得到一系列待选择参数(λ

6.2)针对外层优化问题,采用计算损失函数最小值处理;外层优化问题的训练步骤可以写成:

设定初始验证集

将e

注意,β

再求损失函数L

此值即为参数函数β_hat参数为λ

同理,将簇内平均剩余能量为e

在L

7)当有新的数据传输需求,进行数据传输最优路径计算时,簇头CH节点可将此时簇内平均剩余能量的e

步骤7)中,将簇内剩余能量e

完成一次数据传输任务后,簇头CH节点重复步骤6)优化参数函数β_hat的参数设置;等待有新的数据传输需要,簇头CH节点通过参数函数β_hat对Q学习奖励函数r

8)设置阈值E

(16)

其中,e

若E小于等于所设阈值E

若E大于所设阈值E

其中,i为迭代到此时的次数,T为设置的最大迭代次数;

之后使用更新后的σ值重复步骤6.1)进行梯度下降得到一组新的参数。

本发明可以有效降低水声数据传输系统的能量消耗并提升数据传输的速度。本发明考虑到水声节点的剩余能量及深度信息,利用Q学习的奖励函数及元学习参数优化寻找最优路径。

本发明具有以下突出优点:

1)不同于传统水声传感器网络,其路由算法由每个节点各自计算选出下一跳的最佳选择,本发明提出基于元学习的Q学习参数优化簇头水声网络路由协议,通过簇头CH节点根据剩余能量和深度计算最优数据传输路径,计算全簇内最优传输路径,以达到缓解个别节点因频繁参与传输数据导致能量过早耗尽造成网络能量空洞问题,从而延长整个网络寿命;

2)本发明基于元学习可以自主优化Q学习算法模型奖励函数各参数权重设置,动态地根据簇内平均剩余能量信息的变化进行参数优化,从而达到基于Q学习的路由协议最大优化适应性的目的。

附图说明

图1为本发明实施例的水声网络场景图。

图2为本发明实施例的水声网络数据传输模式流程图。

图3为本发明实施例中基于元学习的参数函数β_hat流程图。

图4为本发明实施例水声网络随机节点的坐标分布图。

图5为本发明实施例中水声网络各簇平均剩余能量随迭代次数变化图。

图6为本发明实施例各簇奖励函数中剩余能量参数β随迭代次数变化图。

具体实施方式

下面结合附图和具体实施例对本发明做详细描述。

如图1所示,本发明实施例包括以下步骤:

1)对水下传感器节点进行分簇。将分簇后的簇头CH节点作为计算节点,主要负责数据传输最优路径的计算以及与其它簇头间的协调计算。其余节点只负责数据传输任务。假设各簇已完成初始化操作,即各簇头CH节点明确簇内其余各非簇头节点的能量、深度信息以及节点序号。

2)在水声传感器网络中,各个簇头CH节点负责根据其余非簇头节点信息计算并更新Q值表,从而设计各个簇头CH节点所属簇内数据传输的最佳路径。各个簇内非簇头节点负责数据传递及与所属簇头进行信息交流。

设有传输数据需求的节点为N

当数据准备传输时,簇内节点执行以下传输步骤,如图2所示:

2.1)节点N

步骤2.1)中的数据包,包含传输数据的数据头和节点N

2.2)簇头CH

2.3)簇头CH

步骤2.3)中,簇头CH

2.4)当数据传输到本簇内数据传输最优路径末端节点N

2.5)近邻节点N

2.6)簇头CH

步骤2.6)中簇头CH

2.7)重复迭代步骤2.4)~2.6)直至没有深度更浅的簇头CH节点,最终由最后一簇的数据传输最优路径的末端节点N

3)在Q学习的框架中,其核心是状态-动作对,即Q(s,a)的值,设在状态s

它可以通过迭代来近似:

其中,α∈(0,1],表示学习效率;r

步骤3)中,考虑簇头CH节点计算奖励函数r

r

β

其中,g表示持续惩罚。β

4)节点深度

5)考虑到β

针对基于元学习的参数优化模型,该算法模型可以理想地使下一次任务学习效果都能比上一次学得更好。在Q学习算法模型的参数初始化后,用

在高层次上可以表示为:

式中,

其中,

在形式上,可将元训练阶段使用的数据集表示为:

/>

6)针对基于元学习参数优化模型实现参数自我更新优化,使用内外双层优化方式进行处理,如图3所示。

6.1)针对内层优化问题,采用梯度下降的方法处理。

根据以往经验数据,即训练集

β_hat=β(e)=A×e+B(9)

其中,e为簇内平均剩余能量,A和B为常数,参数A和B统称为ω

可通过梯度下降寻求一系列待选择参数(λ

设损失函数J如下:

其中,m为数据个数,β_hat

设置ω

以此类推,得到一系列待选择参数(λ

6.2)针对外层优化问题,采用计算损失函数最小值处理。外层优化问题的训练步骤可以写成:

设定初始验证集

将e

注意,β

再求损失函数L

此值即为参数函数β_hat参数为λ

同理,将簇内平均剩余能量为e

在L

7)当有新的数据传输需求,进行数据传输最优路径计算时,簇头CH节点可将此时簇内平均剩余能量的e

步骤7)中,将簇内剩余能量e

完成一次数据传输任务后,簇头CH节点重复步骤6)优化参数函数β_hat的参数设置。等待有新的数据传输需要,簇头CH节点通过参数函数β_hat对Q学习奖励函数r

8)设置阈值E

其中,e

若E小于等于所设阈值E

若E大于所设阈值E

其中,i为迭代到此时的次数,T为设置的最大迭代次数。

之后使用更新后的σ值重复步骤6.1)进行梯度下降得到一组新的参数。

下面对本发明所述方法的可行性进行计算机仿真验证。

仿真平台为MATLAB_R2022b。

如图4所示,随机布置2500m×5000m的水下传感器节点网络拓扑模型,其中随机分布共24个节点。其参数设置如下:簇头CH节点数量K=3;非簇头节点数n=21;节点总数为n+K=24;迭代次数T=1000;节点初始能量E

Q学习模型参数设置如下:探索迭代次数ε

基于元学习的参数优化模型β_hat参数设置如下:能量阈值E

通过图4可知,该水声通信网络拓扑模型共有3个簇。

以某一簇为例,介绍仿真过程。

(1)对Q学习算法中奖励函数r

①若簇内平均剩余能量下降率E大于设定阈值E

其中,i为迭代到此时的次数,T为设置的最大迭代次数。

若若簇内平均剩余能量下降率E小于或等于设定阈值E

②根据公式(11)与公式(12),由梯度下降求出一系列待选择参数(λ

③根据公式(15),找出损失值L

④将此时簇内平均剩余能量的e代入参数为ω

(2)设置各非簇头节点的奖励矩阵R

①当节点s

②当节点s

R(s

其中,g表示持续惩罚。β

(3)根据簇内各非簇节点的剩余能量和节点与Sink节点之间的距离,选择本簇内数据传输最优路径的末端节点s

式中,E

(4)更新簇头CH节点的Q矩阵,每次探索迭代后Q矩阵都会更新一次,直至矩阵收敛。具体步骤如下:

①随机选择一个簇内非簇头节点s

其中,Q'(s

②重复步骤①,直至矩阵达到收敛为止。

(5)当某一节点需要传输数据时,簇头CH节点根据Q值表进行最优路径计算。

①选择信源节点s

②数据从节点s

选择下一个节点的要求是:Q(s

③重复步骤②,直至i=N,即为完成最优路径的计算;

(6)当本簇内数据传送至最优路径的末端节点时,深度更浅的簇头CH节点根据簇内各非簇节点的剩余能量和节点与末端节点之间的距离,选择更浅簇内数据传输最优路径的初始节点,即τ值最大的非簇头节点。其公式为:

式中,E

(7)重复步骤(1)~(6),直至数据传输至Sink节点。

图5和图6分别为水声网络各簇平均剩余能量随迭代次数变化图和水声网络各簇奖励函数中剩余能量参数β随迭代次数变化图。可以看出,由于各个簇内的节点参与数据传输任务的情况不同,导致各簇内平均剩余能量随迭代次数变化情况不同,最终使得各簇内奖励函数r

相关技术
  • 基于信息重要度和Q学习算法的水声网络路由选择方法
  • 基于Q学习和数据分级的水声网络动态计算簇头路由方法
技术分类

06120115931185