基于多智能体强化学习的分布式WSN能量效率路由优化方法技术

技术编号:39305017 阅读:12 留言:0更新日期:2023-11-12 15:54
本发明专利技术公开了一种基于多智能体强化学习的分布式WSN能量效率路由优化方法,分布式地在每个传感器节点部署具有决策模块的智能体,构建路由协作决策系统,所有智能体采用同步决策的方式,每个智能体的决策模块周期性地根据本地观察值向量和位置向量在本地计算得路由策略向量;决策模块采用多智能体强化学习算法进行训练,然后对无线传感网络进行部署,部署完成后周期性地采用路由协作决策系统更新路由方案。本发明专利技术综合考虑能量消耗和能量均衡性,以完全分布式的方式实现数据包的无环转发路径联合规划,提高网络存活时间。提高网络存活时间。提高网络存活时间。

【技术实现步骤摘要】
基于多智能体强化学习的分布式WSN能量效率路由优化方法


[0001]本专利技术属于通信
,更为具体地讲,涉及一种基于多智能体强化学习的分布式WSN能量效率路由优化方法。

技术介绍

[0002]无线传感网络(Wireless Sensor Network,WSN)是物联网的基础,能够通过传感器间的无线通信实现对环境状态的实时监控,在近年受到广泛关注,并在工业、农业和军事等领域得到广泛应用。
[0003]WSN通常以分布式的方式将由电池供电的传感器节点部署在无人看管的环境中,持续对环境进行监测。每当传感器收集到关键数据,需要将数据打包,发送到作为网关的汇聚节点进行进一步的处理分析。由于传感器节点的资源受限,因此如何提高网络的能量效率,延长网络的存活时间一直是WSN中的一个关键挑战。
[0004]研究表明,WSN的能量消耗主要集中在通信阶段,因此设计一个有效的路由方案,通过为数据包规划高能效的转发路径以延长网络存活时间是一个有效手段。一方面,如果传输路径规划不当,可能导致数据包在网络中转发过多次,造成额外的能量消耗;另一方面,传输路径的规划也需要考虑网络中节点的能量均衡情况,尽量避免低能量节点承担过高的转发负载,导致其能量过早耗尽,但仍保留大量能量富余的节点,造成能量不完全利用。
[0005]考虑到WSN中节点分布式部署的特性,为了避免控制信令带来的大量能量和时间开销,节点需要进行数据转发时,路由算法需要基于本地的有限信息进行决策。全局信息的缺失可能导致路由决策陷入局部最优。此外,这种不完全信息的分布式决策方式很容易导致路由环路的出现,对环路上的节点造成极大的能量损耗。

技术实现思路

[0006]本专利技术的目的在于克服现有技术的不足,提供一种基于多智能体强化学习的分布式WSN能量效率路由优化方法,综合考虑能量消耗和能量均衡性,以完全分布式的方式实现数据包的无环转发路径联合规划,提高网络存活时间。
[0007]为了实现上述专利技术目的,本专利技术于多智能体强化学习的分布式WSN能量效率路由优化方法包括以下步骤:
[0008]S1:对于拟部署的无线传感网络,记连接电源的汇聚节点为n0,由电池供电的传感器节点为n
i
,i=1,2,

,A,A表示由电池供电的传感器节点数量;对于每个传感器节点n
i
,将位于其通信范围内的其它节点集合作为其邻居节点集合
[0009]每个传感器节点持续收集数据,在收集到关键数据时将数据打包发送到汇聚节点;数据包中携带一个历史路径字段,记录已经过的节点;
[0010]在每个传感器节点n
i
上部署一个搭载了决策模块的智能体a
i
,周期性进行路由策略向量决策,并基于路由策略向量分布式地为每个数据包的转发路径进行联合规划;
[0011]S2:构建路由协作决策系统,包括A个决策模块,分别部署在每个传感器节点的智能体a
i
上;决策模块的决策间隔为τ秒,即每间隔τ秒进行一次路由策略的更新,生成一个基于概率的路由策略向量其中表示本次路由策略更新后传感器节点n
i
选择节点n
j
作为下一路转发节点的概率,j=1,

,A,t表示本次路由决策所在时刻;在两次决策间隔间,每当有数据包到达节点时,根据当前的路由策略向量采样选择下一跳转发节点;决策模块包括神经网络和修正模块,其中:
[0012]神经网络的输入为本地观察值向量和位置向量Pos
i
,处理得到初步概率向量并发送给修正模块,其中表示本次初步路由决策中传感器节点n
i
选择节点n
j
作为下一跳转发节点的概率;
[0013]本地观察值向量的确定方法为:获取传感器节点n
i
在过去B1个决策间隔从环境中收集到的数据量其中b1=1,2,

,B1;获取传感器节点n
i
在过去B2个决策间隔作为中继节点为其它传感器节点转发的数据量其中b2=1,2,

,B2;获取传感器节点n
i
在当前时刻的剩余能量W
i,t
;根据数据量数据量和剩余能量W
i,t
的理论最大值对各个数据进行归一化,得到归一化后的数据量数据量和剩余能量
[0014][0015][0016][0017]其中,和分别表示数据量数据量和剩余能量W
i,t
的理论最大值;
[0018]然后将归一化的各个数据拼接得到时刻t的本地观察值向量
[0019]位置向量Pos
i
的确定方法为:以汇聚节点为原点建立二维直角坐标系,传感器节点n
i
获取自身在此坐标系下的坐标位置分别表示横坐标和纵坐标;然后获取传感器节点n
i
和汇聚节点之间的距离dis
i
,筛选得到A个距离dis
i
中的最大值max_dis,据此对坐标位置进行归一化得到位置向量
[0020]修正模块用于根据传感器节点n
i
的邻居节点集合对初步概率向量进行修正,并将修正后的概率向量作为路由策略向量,具体方法为:
[0021]根据邻居集合生成邻居掩码向量其中分量表示节点n
j
为节点n
i
的邻居,二者可以相互通信;如果节点n
j
不在节点n
i
的邻居范围内,此外,设置
[0022]然后计算初步概率向量与邻居掩码向量的哈达玛积,得到路由策略向量最后,对路由策略向量进行归一化处理,每个概率分量归一化的具体计算公式为:
[0023][0024]S3:采用多智能体强化学习算法在仿真环境中对路由协作决策系统中的A个智能体a
i
的决策模块进行训练;
[0025]S4:训练完成后对无线传感器网络进行部署,具体方法为:
[0026]S4.1:按照预定义的部署位置将邻居节点信息写入各传感器节点的配置文件中;
[0027]S4.2:按照预定义的部署位置在实际环境中部署各传感器节点;
[0028]S4.3:每个传感器节点n
i
设置收集数据量计数器和转发数据量计数器并初始化其值为0,其中收集数据量计数器用于统计单个决策间隔内传感器节点n
i
发送的自己从环境中收集到的数据量,转发数据量计数器用于统计单个决策间隔内传感器节点n
i
作为中继节点转发的来自其它传感器节点的数据量;
[0029]S4.4:部署在各传感器节点的智能体通过决策模块为每个传感器节点生成初始路由策略向量;
[0030]S5:各传感器节点持续对环境进行监测,并接收其它传感器节点发送的数据,每当有数据包产生或到达时,根据数据包的历史路径字段和节点当前的路由策略向量进行下一跳转发节点的采样,并将数据本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于多智能体强化学习的分布式WSN能量效率路由优化方法,其特征在于,包括以下步骤:S1:对于拟部署的无线传感网络,记连接电源的汇聚节点为n0,由电池供电的传感器节点为n
i
,i=1,2,

,A,A表示由电池供电的传感器节点数量;对于每个传感器节点n
i
,将位于其通信范围内的其它节点集合作为其邻居节点集合每个传感器节点持续收集数据,在收集到关键数据时将数据打包发送到汇聚节点;数据包中携带一个历史路径字段,记录已经过的节点;在每个传感器节点n
i
上部署一个搭载了决策模块的智能体a
i
,周期性进行路由策略向量决策,并基于路由策略向量分布式地为每个数据包的转发路径进行联合规划;S2:构建路由协作决策系统,包括A个决策模块,分别部署在每个传感器节点的智能体a
i
上;决策模块的决策间隔为τ秒,即每间隔τ秒进行一次路由策略的更新,生成一个基于概率的路由策略向量其中表示本次路由策略更新后传感器节点n
i
选择节点n
j
作为下一路转发节点的概率,j=1,

,A,t表示本次路由决策所在时刻;在两次决策间隔间,每当有数据包到达节点时,根据当前的路由策略向量采样选择下一跳转发节点;决策模块包括神经网络和修正模块,其中:神经网络的输入为本地观察值向量和位置向量Pos
i
,处理得到初步概率向量并发送给修正模块,其中表示本次初步路由决策中传感器节点n
i
选择节点n
j
作为下一跳转发节点的概率;本地观察值向量的确定方法为:获取传感器节点n
i
在过去B1个决策间隔从环境中收集到的数据量其中b1=1,2,

,B1;获取传感器节点n
i
在过去B2个决策间隔作为中继节点为其它传感器节点转发的数据量其中b2=1,2,

,B2;获取传感器节点n
i
在当前时刻的剩余能量W
i,t
;根据数据量数据量和剩余能量W
i,t
的理论最大值对各个数据进行归一化,得到归一化后的数据量数据量和剩余能量和剩余能量和剩余能量和剩余能量其中,和分别表示数据量数据量和剩余能量W
i,t
的理论最大值;然后将归一化的各个数据拼接得到时刻t的本地观察值向量
位置向量Pos
i
的确定方法为:以汇聚节点为原点建立二维直角坐标系,传感器节点n
i
获取自身在此坐标系下的坐标位置取自身在此坐标系下的坐标位置分别表示横坐标和纵坐标;然后获取传感器节点n
i
和汇聚节点之间的距离dis
i
,筛选得到A个距离dis
i
中的最大值max_dis,据此对坐标位置进行归一化得到位置向量修正模块用于根据传感器节点n
i
的邻居节点集合对初步概率向量进行修正,并将修正后的概率向量作为路由策略向量,具体方法为:根据邻居集合生成邻居掩码向量其中分量表示节点n
j
为节点n
i
的邻居,二者可以相互通信;如果节点n
j
不在节点n
i
的邻居范围内,此外,设置然后计算初步概率向量与邻居掩码向量的哈达玛积,得到路由策略向量最后,对路由策略向量进行归一化处理,每个概率分量归一化的具体计算公式为:S3:采用多智能体强化学习算法在仿真环境中对路由协作决策系统中的A个智能体a
i
的决策模块进行训练;S4:训练完成后对无线传感器网络进行部署,具体方法为:S4.1:按照预定义的部署位置将邻居节点信息写入各传感器节点的配置文件中;S4.2:按照预定义的部署位置在实际环境中部署各传感器节点;S4.3:每个传感器节点n
i
设置收集数据量计数器和转发数据量计数器并初始化其值为0,其中收集数据量计数器用于统计单个决策间隔内传感器节点n
i
发送的自己从环境中收集到的数据量,转发数据量计数器用于统计单个决策间隔内传感器节点n
i
作为中继节点转发的来自其它传感器节点的数据量;S4.4:部署在各传感器节点的智能体通过决策模块为每个传感器节点生成初始路由策略向量;S5:各传感器节点持续对环境进行监测,并接收其它传感器节点发送的数据,每当有数据包产生或到达时,根据数据包的历史路径字段和节点当前的路由策略向量进行下一跳转发节点的采样,并将数据包发送至下一跳转发节点;下一跳转发节点采样的具体方法为:S5.1:记当前数据包在系统中产生的序号为k,大小为l
k
,当前所到达节点为n
i
,根据历史路径字段生成转发掩码向量其中表示第k个数据包在到达节点n
i
时,尚未经过节点n
j
;表示第k个数据包在到达节点n
i
时,已经过节点n
j

S5.2:计算节点n
i
当前的路由策略向量P
ti
与当前数据包的转发掩码向量的哈达玛积,得到路由采样向量路由采样向量屏蔽了路由策略向量中该数据包已经过的节点,避免采样的转发路径中出现路由环路;S5.3:将路由采样向量按照以下公式进行归一化:S5.4:智能体a
i
在(0,1]范围内随机生成一个浮点数,判断其落在归一化后路由采样向量的概率累计分布函数的区间,将该区间所对应的概率值对应的节点作为该数据包的下一跳转发节点;S5.5:如果当前历史路径字段为空,则说明数据包由节点n
i
生成,则令收集数据量否则说明该数据包由其他节点生成,则转发数据量S5.6:将节点n
i
的id写入该数据包的历史路径字段中,表示已经经过节点n
i
;S5.7:节点n
i
将该数据包发送到所选择的下一跳转发节点S6:检查每个节点的剩余能量,判断是否有传感器节点能量耗尽,如果是,则判定网络瘫痪,路由决策结束,否则进入步骤S7;S7:判断距离上次决策是否已经经过τ秒,如果是,进入步骤S8,否则返回步骤S5;S8:每个智能体同步决策,更新其路由策略向量,具体方法为:S8.1...

【专利技术属性】
技术研发人员:任婧郑建功宋彤雨郭孝通王晟王雄徐世中
申请(专利权)人:电子科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1