一种水声传感器网络合作探索强化学习路由方法与流程

文档序号:16902371发布日期:2019-02-19 18:08阅读:325来源:国知局
一种水声传感器网络合作探索强化学习路由方法与流程

本发明涉及水声传感器网络、水声路由协议技术领域,特别涉及一种水声传感器网络合作探索强化学习路由方法。



背景技术:

水声传感器网络,underwateracousticsensornetworks,即uasns,由水下部署的传感器节点和用于接收数据的汇聚节点sink组成。这些节点提供了许多应用如环境监测、战术监视、资源勘探、辅助导航和灾难防御等。由于无线电波高传输损耗的限制,水下通信常采用声波。同时,uasns面临着电池容量有限、误码率高、端到端时延高、可用带宽有限等独特的挑战。

由于uasns的高延迟、高能耗以及低带宽等固有特性,其网络拓扑结构通常为分布式网络。其路由协议面临的一个主要问题是寻找高效且节能的路径。与环境试错交互以寻找最大期望奖励的强化学习算法已被应用于uasns,基于强化学习的路由协议,每一个节点在选择路径时不必知道全网拓扑信息就可近似达到全局最优。强化学习算法可以使节点学习和适应其所处的动态环境,并且能够合并多项影响路由性能的因素,使路由决策考虑的更为全面。在本发明中,用源节点v值的收敛速度表征强化学习的收敛速度。

在uasns中,随着网络规模的扩大,强化学习的收敛速度减慢,网络能量消耗大,并在网络拓扑改变时,不能很好的跟踪其变化,影响网络性能。



技术实现要素:

本发明的目的是针对上述现有技术的不足,提出一种水声传感器网络合作探索强化学习路由方法。在算法未收敛时,源节点发送数据包的同时发送数个控制包对路径进行合作探索,以加速其v值的收敛,解决了强化学习收敛速度慢的问题,同时减小了网络能耗,延长了网络寿命。

本发明可以通过如下的技术方案实现:

一种水声传感器网络合作探索强化学习路由方法,该方法包括以下步骤:

(1)初始化各节点q值及v值;

(2)根据各节点的q值及v值,判断是否成立:

(2.1)如果判断成立,源节点只发送数据包;

(2.2)如果判断不成立,源节点在发送数据包的同时发送控制包;

(3)根据源节点发送的数据包或控制包,中继节点接收数据并读取包头;

(4)根据中继节点接收的数据更新路由表,并判断其是否继续发往本节点,若判断数据是发往本节点,则计算q值,更新v值至包头,并继续传输数据包;

(5)判断汇聚节点sink是否收到数据包:

(5.1)若sink收到数据包,则结束本次传输;

(5.2)若sink没有收到数据包,则重复步骤(3)到步骤(5),直至sink收到数据包。

所述步骤(1)包括以下步骤:

(1.1)确定奖励函数;

(1.2)根据奖励函数,确定各节点的q值迭代函数;

步骤(1.1)所述奖励函数rnm为第一节点n向第二节点m传输数据包/控制包完成后所获得的即时奖励,奖励函数按下式结算:

rnm=-g-α1c+α2d

其中,g为节点在传输数据时的固定损耗,c为节点剩余能量消耗函数,d为节点能量分布情况,α1为节点剩余能量消耗函数c的比重参数,α2为节点能量分布情况d的比重参数;

步骤(1.2)所述q值的迭代函数按下式计算:

其中,表示第一节点n在t+1时刻的q值,α表示q值的更新速率,γ是折扣因子,为第二节点m在t时刻的q值。

步骤(2)所述判断条件中,vts表示源节点在t时刻的v值,表示t+1时刻源节点的v值,ε表示一个大于0的极小值;

若步骤(2.1)所述判断成立,源节点终止控制包的传输,结合路由表通过q值迭代公式计算最优路径向上传输数据包,直至sink;

若步骤(2.2)所述判断不成立,即时,源节点v值计算函数为:

其中,α与步骤(1.2)所述q值的迭代函数中的α数值相同,在这里表示学习速率,意为v值的更新速率;ω为控制包探测路径的归一化参数,vtj表示各数据包或控制包探索路径所得到的经验。

若如步骤(4)所述该包发往本节点,根则据q值迭代函数计算q值,选定q值为其最大值qmax时的节点为下一跳节点,并将v值更新为qmax,并改写节点信息至包头继续传输。

本发明与现有技术相比,本发明的有益效果在于:

(1)本发明提供了一种水声传感器网络合作探索强化学习路由算法,在算法未收敛时,源节点同时发送数据包和控制包,加快了源节点v值的收敛速度。

(2)本发明在算法收敛后,通过选择v值最高的下一跳节点实现近似全局最优路径,从而均衡了网络能耗,延长了网络寿命。

附图说明

图1是水声传感器网络结构图。

图2是合作探索强化学习路由方法的示意图。

图3是源节点实现合作探索强化学习算法的流程图。

图4是路由转发流程图。

具体实施方式

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

显然,所描述的实施例仅是本发明一部分实施例,而不是全部实施例。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于发明的实施例,本领域技术人员没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明提供一种水声传感器网络合作探索强化学习路由方法。基于强化学习的路由协议在选择路径时能够近似达到全局最优,并且可以合并多项影响性能的因素。本发明中,在算法未收敛时,源节点发送数据包的同时发送数个只含有包头信息的控制包对路径进行合作探索,以加速源节点v值的收敛,否则,只发送数据包。本发明解决了强化学习收敛速度慢的问题,同时减小了网络能耗,延长了网络寿命。本发明具体包含以下步骤:

(1)初始化各节点q值及v值。

(2)判断是否成立,其中,vts表示源节点在t时刻的v值,ε表示一个大于0的极小值。如果成立,源节点只发送数据包;否则,源节点在发送数据包的同时发送控制包。

(3)中继节点收到数据包/控制包,更新邻居列表,并判断是否继续转发。

(4)sink收到数据包,结束本次传输。

步骤(2)中,在未成立时,源节点的v值迭代函数为:

其中,α表示学习速率,意为v值的更新速率,它控制了先前的v值与新的v值之间的差异有多少被考虑在内。γ是折扣因子,意为经验对当前的v值的影响。ω为控制包探测路径的归一化参数,vtj表示各数据包/控制包探索路径所得到的经验。步骤(3)中,在时,源节点只发送数据包;在时,源节点在发送数据包的同时发送控制包。

附图1为本发明实施例提供的水声传感器网络结构图,附图2为本发明实施例提供的合作探索强化学习路由方法的示意图。结合上述结构图和示意图,本实施例公开了一种水声传感器网络合作探索强化学习路由协议的实现方法,如附图3和附图4所示,具体如下:

(1)初始化各节点q值v值。

(2)确定奖励值函数。

在本实施例中,奖励值函数rnm为节点n向节点m传输数据包/控制包完成后所获得的即时奖励。

rnm=-g-α1c+α2d

g为节点在传输数据时的固定损耗,c为节点剩余能量消耗函数,d为节点能量分布情况,α1和α2分别为c与d的比重参数。

(3)确定各节点的q值迭代函数。

表示节点n在t+1时刻的q值,α表示q值的更新速率,γ是折扣因子,为节点m在t时刻的q值。

(4)确定源节点v值计算函数。

时源节点v值计算函数:

表示下一时刻源节点的v值,ω为控制包探测路径的归一化参数,vtj表示各数据包/控制包探索路径所得到的经验。

(5)源节点进行合作探索。

本发明的水声传感器网络结构图如附图1所示,简单起见,本实施例的网络结构为单源-单sink,源节点负责收集数据,并将收集到的数据通过水声网络沿着中继节点逐步向上传输,直到sink。sink通过水声接收器接收来自海面下中继节点的数据,并用无线电波向基站发送数据,基站收到sink的数据后进行后续分析和处理。

结合附图2具体说明,当时,源节点同时发送数据包和控制包,在本实施例中,为方便说明,将控制包定为两个。

源节点根据q值迭代函数计算q值并更新v值,根据计算结果选择一个节点发送数据包,两个节点发送控制包,在本实施例中,源节点选择它的邻居节点3作为数据包传输的下一跳节点,同时选择节点1和节点5作为控制包传输的下一跳节点。

节点1,3,5监听到数据包/控制包后读取包头,将上一跳节点的信息更新至自己的邻居列表中,如果该包发往本节点,根据q值迭代函数计算q值,选定q值为qmax的节点为下一跳节点,并将v值更新为qmax,并改写节点信息至包头继续传输。

节点1,3,5的邻居节点重复上述动作直到数据包/控制包到达sink。

(6)当时,源节点停止发送控制包。

源节点判断成立,此时,源节点终止控制包的传输,结合路由表通过q值迭代公式计算最优路径向上传输数据包,直至sink。

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