基于增强学习和功率控制的水下网络数据通信方法及系统

文档序号:39344546发布日期:2024-09-10 12:06阅读:17来源:国知局
基于增强学习和功率控制的水下网络数据通信方法及系统

本发明涉及水下通信,尤其是一种基于增强学习和功率控制的水下网络数据通信方法及系统。


背景技术:

1、随着水下和海洋开发需求的激增,研究人员开始探索水下无线传感器网络(uwsns)在更多领域的应用。事实上,uwsns在可再生能源、水下文化遗产监测等方面都有很大的发挥空间。然而,由于恶劣的环境和有限的频谱源,设计可靠、高效的水下多跳无线网络解决方案是一项相当困难的任务。电磁无线电信号在水下环境中衰减很快,频率越高衰减越大,不能满足水下长距离通信的要求。目前,唯一适合远距离通信的方法是水声通信,但水声信道几乎是最复杂的无线信道之一。声波在水中的传播速度约为1500 m/s,比无线电波(3×108 m/s)慢5个数量级,因此uwsns存在较长的传播延迟。不同频率的声波在浅海声场中的传播损失也不同。此外,由于传感器节点随水流被动移动,uwsns的拓扑结构变化频繁。此外,传感器节点部署在海底,给电池充电困难。正是由于传感器是由电池供电的,所以uwsns的网络寿命受到了很大的限制。

2、为了克服uwsn的问题,人们提出了许多经典和传统的路由协议来解决水下传感器网络中的数据传输问题。一些协议也致力于从提高链路质量的角度保证数据传输的可靠性。然而,传统的优化方法受到先验信道统计知识的限制,难以在实践中获得。


技术实现思路

1、有鉴于此,本发明实施例提供一种基于增强学习和功率控制的水下网络数据通信方法及系统,以提高数据包发送成功率,以及提升水声通信网络稳定性。

2、本发明实施例的一方面提供了一种基于增强学习和功率控制的水下网络数据通信方法,包括以下步骤:

3、配置用于水下通信的数据包的格式,所述数据包包括数据包识别字段、路由信息字段以及前一转发节点做出的路由决策字段;

4、当目标节点接收到上一节点发出的水下通信数据包时,根据从所述水下通信数据包中识别出来的节点信息和路由信息,得到所述目标节点的邻居节点的q值作为传输优先级,以对所述水下通信数据包进行传输;

5、当所述水下通信数据包被传输到下一节点时,采用隐式确认的方式判断所述目标节点所发出的水下通信数据包是否被下一节点成功接收,以确定所述水下通信数据包的重传策略;

6、其中,在对所述水下通信数据包进行传输的过程中,采用凸优化方法,根据实际传输中的约束条件,得到当前节点转发所述水下通信数据包的最优发送功率,然后通过香农定理得到信道容量,根据所述信道容量采用最佳速率传输所述水下通信数据包。

7、可选地,所述数据包识别字段包括数据包类型、数据包id、源节点位置、汇聚节点位置;

8、所述路由信息字段包括v-value、剩余能量、簇平均能量、链路质量、发送方id。

9、可选地,所述当目标节点接收到上一节点发出的水下通信数据包时,根据从所述水下通信数据包中识别出来的节点信息和路由信息,得到所述目标节点的邻居节点的q值作为传输优先级,以对所述水下通信数据包进行传输,包括以下步骤:

10、当所述目标节点接收到上一节点发出的水下通信数据包时,判断所述目标节点的节点类型,若所述目标节点为sink节点,则直接将所述水下通信数据包用无线电磁波传递到卫星,或者直接用无线电磁波传递至附近信号站,并结束传输过程;若所述目标节点不是sink节点,则执行以下步骤:

11、由所述目标节点将接收到的所述水下通信数据包中的信息更新到本地信息表;

12、根据所述水下通信数据包中的数据包识别字段判断所述目标节点是否为上一节点选定的中继节点,若不是,则将所述水下通信数据包丢弃,若是,则执行下一步骤;

13、根据各个邻居节点的预期累积奖励,计算所述目标节点的邻居节点的q值,选择q值最高的邻居节点作为中继节点;

14、将所述目标节点的节点信息封装到所述水下通信数据包的包头中,并将所述水下通信数据包转发至所述中继节点,并更新所述本地信息表。

15、可选地,所述根据各个邻居节点的预期累积奖励,计算所述目标节点的邻居节点的q值,选择q值最高的邻居节点作为中继节点,包括以下步骤:

16、配置初始奖励函数,所述奖励函数用于计算各个邻居节点的预期累积奖励;其中,所述奖励函数包含节点的剩余能量、节点周围的能量分布、节点间距离、节点间链路质量;其中,所述剩余能量和所述能量分布用于均匀延长网络的生存周期,所述节点间距离用于降低传输延迟,所述节点间链路质量用于提高网络传输成功率;

17、获取各个邻居节点发送数据包的次数以及数据包被成功接收的次数,进而计算各个邻居节点转发数据包的丢包率和成功传输率;

18、根据所述初始奖励函数、所述丢包率和所述成功传输率,配置数据包传输的直接奖励函数;

19、根据所述直接奖励函数,计算所述目标节点的邻居节点的q值,选择q值最高的邻居节点作为中继节点。

20、可选地,所述初始奖励函数的表达式为:

21、,

22、其中,e(∙)为与能量相关的奖励;d(∙)为与延迟相关的奖励;lq(∙)为与链路质量相关的奖励;表示各自函数的权值;r是节点尝试转发数据包时的持续惩罚或成本,代表节点采取行动a成功向发送数据包的初始奖励函数计算值;代表向j转发数据包这一动作;

23、其中,所述与能量相关的奖励的表达式为:

24、,

25、其中,和分别表示节点和的剩余能量的代价函数;为对应的权重参数;和分别表示节点i和j的剩余能量与相邻节点的平均能量比例函数;

26、其中,所述与延迟相关的奖励的表达式为:

27、,

28、其中,表示节点j与sink之间的欧氏距离;

29、其中,所述与链路质量相关的奖励的表达式为: ,

30、其中,是节点之间的数据包传输成功率;代表的节点j与n个相邻节点之间的平均链路质量;和代表对应的权重参数。

31、可选地,所述当所述水下通信数据包被传输到下一节点时,采用隐式确认的方式判断所述目标节点所发出的水下通信数据包是否被下一节点成功接收,以确定所述水下通信数据包的重传策略,包括以下步骤:

32、当所述水下通信数据包被传输到下一节点时,由下一节点进行路由决策,在下一节点确定好下一跳后,根据所述水下通信数据包的包头信息,将发送节点id设置为下一节点的id,然后转发数据包;当目标节点侦听到下一节点转发的水下通信数据包后,判断该水下通信数据包的数据包包头结构是否与缓存中的一致,如果一致,再判断该数据包的发送方id是否等于缓存的数据包的下一跳id,如果是则表示下一节点已经成功转发了所述水下通信数据包;

33、若等待一段时间后,目标节点未侦听到下一节点转发的数据包,则由所述目标节点更新链路信息,重传所述水下通信数据包;

34、当重传次数达到三次时,则所述目标节点重新做路由决策,选择其他节点作为转发节点;

35、当节点的能量将要耗尽时,广播包类型为‘exhaust’的控制包,当该节点的邻居节点收到此类型包以后,则确认该节点为死亡节点,并删除该节点在本地表格的信息。

36、可选地,所述在对所述水下通信数据包进行传输的过程中,采用凸优化方法,根据实际传输中的约束条件,得到当前节点转发所述水下通信数据包的最优发送功率,然后通过香农定理得到信道容量,根据所述信道容量采用最佳速率传输所述水下通信数据包,包括以下步骤:

37、在实际传输过程中,选定系统工作带宽,并根据海洋噪声条件和环境噪声条件,构建海洋环境噪声的表达式;

38、构建海水中的传播损失函数表达式;

39、根据水下节点的电子元器件发送数据包时消耗的能量,以及数据包在两个节点之间传输所需能量,构建水下节点发送数据包消耗能量的表达式;

40、根据各个节点之间的距离与声速的比值,计算数据包在两个节点之间的传输时间;

41、根据所述海洋环境噪声的表达式、所述传播损失函数表达式、所述水下节点发送数据包消耗能量的表达式以及数据包在两个节点之间的传输时间,构建最优发送功率的数学模型;

42、将所述数学模型进行泰勒级数展开,得到凸函数形式的目标函数和约束条件;

43、当确定水下通信数据包到达下一节点时,计算得到最优发送功率;

44、根据所述最优发送功率,计算得到信道容量;

45、其中,所述信道容量用于指导物理层采用在当前约束条件下的最佳速率传输所述水下通信数据包。

46、本发明实施例的另一方面还提供了一种基于增强学习和功率控制的水下网络数据通信系统,包括:

47、第一模块,用于配置用于水下通信的数据包的格式,所述数据包包括数据包识别字段、路由信息字段以及前一转发节点做出的路由决策字段;

48、第二模块,用于当目标节点接收到上一节点发出的水下通信数据包时,根据从所述水下通信数据包中识别出来的节点信息和路由信息,得到所述目标节点的邻居节点的q值作为传输优先级,以对所述水下通信数据包进行传输;

49、第三模块,用于当所述水下通信数据包被传输到下一节点时,采用隐式确认的方式判断所述目标节点所发出的水下通信数据包是否被下一节点成功接收,以确定所述水下通信数据包的重传策略;

50、其中,在对所述水下通信数据包进行传输的过程中,采用凸优化方法,根据实际传输中的约束条件,得到当前节点转发所述水下通信数据包的最优发送功率,然后通过香农定理得到信道容量,根据所述信道容量采用最佳速率传输所述水下通信数据包。

51、本发明实施例的另一方面还提供了一种电子设备,包括处理器以及存储器;

52、所述存储器用于存储程序;

53、所述处理器执行所述程序实现如前面所述的方法。

54、本发明实施例的另一方面还提供了一种计算机可读存储介质,所述存储介质存储有程序,所述程序被处理器执行实现如前面所述的方法。

55、本发明实施例还公开了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器可以从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行前面的方法。

56、本发明的实施例首先配置用于水下通信的数据包的格式,所述数据包包括数据包识别字段、路由信息字段以及前一转发节点做出的路由决策字段;接着当目标节点接收到上一节点发出的水下通信数据包时,根据从所述水下通信数据包中识别出来的节点信息和路由信息,得到所述目标节点的邻居节点的q值作为传输优先级,以对所述水下通信数据包进行传输;最后,当所述水下通信数据包被传输到下一节点时,采用隐式确认的方式判断所述目标节点所发出的水下通信数据包是否被下一节点成功接收,以确定所述水下通信数据包的重传策略;其中,在对所述水下通信数据包进行传输的过程中,采用凸优化方法,根据实际传输中的约束条件,得到当前节点转发所述水下通信数据包的最优发送功率,然后通过香农定理得到信道容量,根据所述信道容量采用最佳速率传输所述水下通信数据包。本发明提高了数据包发送成功率,以及提升了水声通信网络稳定性。

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