1.一种基于多智能体增强学习的WSN能量效率优化路由方法,其特征在于,包括以下步骤:0
S1:对于拟部署的无线传感网络,记连接电源的汇聚节点为n ,由电池供电的传感器节i i点为n,i=1,2,…,A,A表示由电池供电的传感器节点数量;对于每个传感器节点n,将位于其通信范围内的其它节点集合作为其邻居节点集合记每个传感器节点的传输周期为U秒,每个传感器节点在每轮传输中,收集T秒数据,并将收集到的数据发送给汇聚节点;
i i
在每个传感器节点n上部署一个智能体a;
S2:构建路由协作决策系统,包括A个决策网络和1个汇聚模块,A个决策网络分别部署i 0在每个传感器节点的智能体a上,汇聚模块部署在汇聚节点n上,其中:i
决策网络用于确定本次路由决策中传感器节点n选择其它节点作为父节点的概率向量i j其中 表示本次路由决策中传感器节点n 选择节点n 作为父节点的概率,j=0,1 ,…,A,t表示本次路由决策所在时刻,并将概率向量根据现有路由上传至汇聚模块;决策网络包括神经网络和修正模i
块,其中神经网络的输入为由本地观察值向量 和位置向量Pos所拼接得到的输入向量,处理得到初步概率向量 并发送给修正模块,其中 表示本次初步i j
路由决策中传感器节点n选择节点n作为父节点的概率;
i
本地观察值向量 的确定方法为:获取传感器节点n 在过去B1个时刻从环境中收集到i的数据量 其中b1=1,2,…,B1;获取传感器节点n在过去B2个时刻作为中继节点为其i它传感器节点转发的数据量 其中b2=1,2,…,B2;获取传感器节点n 在当前时刻的i,t i,t剩余能量W ,根据数据量 数据量 和剩余能量W 的理论最大值对各个数据进行归一化,得到归一化后的数据量 数据量 和剩余能量i,t
其中, 和 分别表示数据量 数据量 和剩余能量W 的理论最大值;
然后将归一化的各个数据拼接得到本地观察值向量i i
位置向量Pos的确定方法为:以汇聚节点为原点建立二维直角坐标系,传感器节点n 获取自身在此坐标系下的坐标位置 分别表示横坐标和纵坐标;然i i i
后获取传感器节点n 和汇聚节点之间的距离dis ,筛选得到A个距离dis 中的最大值max_dis,据此对坐标位置进行归一化得到位置向量i
修正模块用于根据传感器节点n 的邻居节点集合 对初始概率向量进行修正得到修正后的概率向量 具体方法j
为:对于概率向量 中的每个概率分量 如果对应的节点n 不属于i
传感器节点n的邻居节点集合 则将概率分量 置为0,否则不作任何操作。最后对修正后的概率向量进行归一化处理,则归一化后的概率向量 中每个概率分量 为:
汇聚模块用于根据A个决策网络上传的概率向量 进行路由决策,具体方法为:首先根据A个概率向量 生成当前无线传感网络的生成树,然后以汇聚节点为根节点,根据生成树重新计算每个传感器节点的路由方案;
i
S3:采用多智能体增强学习算法对路由协作决策系统中的A个智能体a的决策网络进行训练;
S4:对无线传感器网络进行部署,包括以下步骤:S4.1:根据步骤S1中传感器节点的预定义部署位置和邻居关系,将节点间的距离作为权重,计算得到无线传感器网络的最小生成树;然后在所得到的最小生成树中,将汇聚节点作为根节点,计算每个传感器节点的初始路由;
S4.2:按照预定义的部署位置将邻居节点信息和初始路由信息写入各传感器节点的配置文件中;
S4.3:将各传感器节点的位置信息写入汇聚节点;
S4.4:按照预定义的部署位置在实际环境中部署各传感器节点;
i
S5:无线传感网络启动时,每个传感器节点n设置两个计数器并初始化其值为0,两个计数器分别用于对收集数据量 和转发数据量 进行计数,其中收集数据量 用于统i计每次传输时传感器节点n发送的自己从环境中收集到的数据量,转发数据量 用于统i计每次传输时传感器节点n作为中继节点转发的来自其它传感器节点的数据量;每个传感i器节点n初始化传输次数m=1;
S6:各传感器节点持续对环境进行检测,并接收其它传感器节点发送的数据,每间隔U秒按照当前的路由信息向汇聚节点发送本次传输周期内收集到的数据,并作为中继节点转i发来自其他传感器节点的数据;记传感器节点n 在第m轮传输时向父节点所发送的自身收集的数据量为 作为中继节点转发的来自其它传感器节点的数据量为 令收集数据量 转发数据量S7:获取剩余电量,判断是否有传感器节点剩余电量在阈值以下,如果是,则判定网络瘫痪,路由决策结束,否则进入步骤S8;
S8:判断是否m%M=0,M表示预设的传输周期,如果是,进入步骤S9,否则返回步骤S6。
i
S9:A个智能体a协作决策,为无线传感网络更新路由方案,具体方法包括以下步骤:i i
S9.1:每个智能体a 分别获取对应传感器节点n的收集数据量 和转发数据量令本次更新中收集数据量 和转发数据量 然后将收集数据量 和转发数据量 置零;
i i
S9.2:每个智能体a分别获取其当前的本地观察值向量 和位置向量Pos ,然后拼接得到输入向量输入对应的决策网络,得到概率向量i
S9.3:每个传感器节点n 将概率向量 按照当前的路由发送给汇聚节点;
S9.4:汇聚节点接收到概率向量 后,由汇聚模块重新计算每个传感器节点的路由方案并下发至相应的传感器节点,返回步骤S6。
2.根据权利要求1所述的WSN能量效率优化路由方法,其特征在于,所述步骤S2中决策网络中的神经网络包括第一全连接层、第二全连接层、第三全连接层、拼接层、第四全连接层和softmax层,其中:第一全连接层用于接收本地观察值向量 并进行处理,将得到的特征输入第二全连接层;
第二全连接层用于对接收到的特征进行处理,将得到的特征输入拼接层;
i
第三全连接层用于接收位置向量Pos,将得到的特征输入拼接层;
拼接层用于对接收到的两个特征进行拼接处理,将拼接后的特征输入第四全连接层;
第四全连接层用于对接收到的特征进行处理,将得到的特征输入softmax层;
softmax层用于根据接收的特征生成初步概率向量
3.根据权利要求1所述的WSN能量效率优化路由方法,其特征在于,所述步骤S2中汇聚模块生成生成树的具体方法为:S2.1:汇聚模块设置一个边集Emst并初始化为空,边集Emst用于存储为无线传感网络生成的生成树中的边;
S2.2:汇聚模块随机选择一个未完成采样的传感器节点S2.3:汇聚模块在(0,1]范围内随机生成一个浮点数,判断其落在传感器节点 的概率向量 的概率累计分布函数的区间,将该区间所对应的概率值对应的节点作为传感器节点 的候选父节点
S2.4:检查边 在加入边集Emst后是否会成环,如果成环,则进入步骤S2.5,如果不成环,则进入步骤S2.6;
S2.5:将传感器节点 的概率向量 进行重新归一化,归一化公式为:
然后令 得到更新后的概率向量,然后返回步骤S2.2;
S2.6:将边 加入边集Emst,并标记 已完成采样;
S2.7:判断边集Emst中的边数量小于A,如果是,返回步骤S2.2,否则生成树生成完毕。
4.根据权利要求1所述的WSN能量效率优化路由方法,其特征在于,所述步骤S3中决策网络的训练选择基于演员‑评论家的多智能体增强学习算法中的平均场演员‑评论家框架使用仿真器模拟的方式完成,具体方法为:对于传感器需要收集的不同数据类型,根据已有的先验知识提前设计相应的概率分布在仿真环境中模拟真实环境中每个传感器收集到的数据量;
将步骤S102构建的路由协作决策系统中各个智能体的决策网络作为演员网络,设置评论家网络用于指导演员网络的学习;
将决策网络的决策过程建模为部分可观测马尔可夫决策过程,其中每个决策网络的输入向量作为部分可观测马尔可夫决策过程中的本地观察,汇聚模块所得到的对应传感器的路由方案所选择的父节点作为部分可观测马尔可夫决策过程中的动作,奖励函数根据无线传感器网络的存活时间计算,具体计算公式为:其中,Rt表示t时刻的奖励函数值,T表示网络存活时间;
然后通过仿真器模拟无线传感器网络,采集仿真得到的数据对演员‑评论家网络进行训练,从而实现对决策网络的训练。
5.根据权利要求4所述的WSN能量效率优化路由方法,其特征在于,所述评论家网络包括第一全连接层、第二全连接层、第一拼接层、第三全连接层、第四全连接层、第二拼接层、第三全连接层和线性层,其中:第一全连接层用于接收本地观察值向量 并进行处理,将得到的特征 输入第一拼接层;
i
第二全连接层用于接收当前传感器节点n 所有邻居节点在上一次决策时的平均动作,该平均动作的确定方法为:将所有邻居的动作做one‑hot编码,并对编码后对应的向量做平均,对平均动作进行处理,将得到的特征 输入第一拼接层;
第一拼接层用于将接收到的两个特征 和 进行拼接,将拼接得到的特征输入第三全连接层;
第三全连接层用于对接收到的特征进行处理,得到特征 并输入第二拼接层;
i POS
第四全连接层用于接收位置向量Pos,将得到的特征w 输入第二拼接层;
POS
第二拼接层用于对接收到的两个特征 和w 进行拼接处理,将得到的特征输入第五全连接层;
第五全连接层用于对接收到的特征进行处理,将得到的特征输出至线性层;
第六全连接层用于对接收到的特征进行处理,得到最终的评价值。