本发明涉及电力通信系统和路由优化的,尤其是指一种基于多智能体深度强化学习的电力通信系统鲁棒路由方法。
背景技术:
1、现代电力系统呈现出高新能源接入比例、高电力电子器件比例和高分布式能源比例的“三高”特征,运行方式和动态机理变得更加复杂。现代电力系统的复杂性对信息控制提出了更高的要求,随着高比例的新能源接入,电力系统中能源注入变得分散,发电机功率的波动性增加。这意味着在电力系统运行过程中,需要更快速地进行调度控制,以保持系统的平衡和稳定。
2、对电力系统进行快速准确的信息控制需要安全可靠的电力通信系统作为支撑,而数据包路由是保障通信可靠性的关键环节。路由优化问题是指在通信网络中,寻找每个路由节点的最优路由策略,使所有数据包从源节点传输到目标节点的平均传输延时和丢包率最小的问题。电力通信系统的路由策略需要满足安全性、快速性和鲁棒性的要求。安全性是指要尽可能减少路由节点之间的信息交换次数,缩小网络攻击的暴露面。快速性是指路由策略要具有快速调节的能力。鲁棒性是指路由策略要具有一定的抗干扰能力,当电力通信系统中部分信息源节点遭受ddos攻击或部分通信链路断开时,能够维持正常数据包的传输延时在允许范围内并且不发生丢包。
3、当前普遍采用的路由策略可以分为固定最短路径路由策略和自适应路由策略。固定最短路径路由策略利用图优化算法计算每个信息源节点到目标节点的最短路径,并为每个路由节点建立固定的路由决策表,然而该路由策略无法根据通信系统的状态进行动态调节,不满足智能电网对鲁棒性的要求。链路状态路由策略是在计算机通信网络中广泛采用的一类自适应路由策略,然而该路由策略需要大量转发状态询问信息,会增加网络攻击的暴露面,并且当通信系统状态突然发生变化时,重新调整到最优路由策略需要较长的过渡时间,无法满足电力通信系统对安全性和快速性的要求。
技术实现思路
1、本发明的目的在于克服现有技术的不足,提供了一种基于多智能体深度强化学习的电力通信系统鲁棒路由方法,该方法基于分布式决策的思想,为每个路由节点建立相互独立的路由策略网络,每个路由节点只需要本地观测数据进行路由决策,避免了不同节点间信息频繁交互造成的安全隐患,并且电力通信系统的状态变化仅反映为节点观测量的变化,每个路由节点不需要额外的时间进行路由策略调整,解决了传统路由方法无法同时兼顾安全性、快速性和鲁棒性的问题。
2、为实现上述目的,本发明所提供的技术方案为:基于多智能体深度强化学习的电力通信系统鲁棒路由方法,所述电力通信系统由采集量测数据的信息源节点、接受和转发量测数据包的路由节点以及通信链路构成,包括以下步骤:
3、s1:基于信息源节点的量测数据采集机制以及电力通信系统的数据包传输机制,建立电力通信系统的信息流模型;
4、s2:在信息流模型的基础上,将电力通信系统中的路由节点视为智能体,并根据路由优化的目标设计智能体的观测空间、动作空间和奖励函数,将路由优化问题转化为多智能体深度强化学习问题;
5、s3:针对步骤s2中的多智能体深度强化学习问题,为每个智能体设计路由策略网络和改进评论家网络;所述路由策略网络用于接收智能体在电力通信系统中获取的观测向量并输出对应的路由决策向量,所述改进评论家网络用于对路由策略网络输出的路由决策向量进行打分;所述路由策略网络由依次连接的三层全连接神经网络和一层lstm神经网络组成;所述改进评论家网络在传统评论家网络的基础上增加了注意力机制,由多头注意力神经网络和q值网络组成,所述多头注意力神经网络将电力通信系统中所有智能体的观测向量和路由决策向量作为输入,利用多头注意力机制计算每对智能体之间的注意力权重,通过加权求和得到每个智能体的注意力特征向量,所述q值网络采用双q网络结构,每个q网络由两层全连接神经网络构成,接收智能体的注意力特征向量和观测向量,输出智能体路由决策的分数;
6、s4:采用soft-actor-critic算法交替更新每个智能体的路由策略网络和改进评论家网络的参数,最终得到所有智能体的最优路由策略网络,用于输出最优的路由决策,当电力通信系统遭受网络攻击或发生故障时,不同智能体之间通过最优路由决策的协同,维持正常量测数据包的传输延时在允许范围内。
7、进一步,在步骤s1中,电力通信系统用无向图g=<v,e>表示,其中v代表所有路由节点的集合,e代表所有通信链路的集合;每个路由节点均与固定数量的信息源节点相连,接受信息源节点产生的量测数据包并将其存储到缓冲区中,每个数据包都有一个路由节点作为目标节点,当数据包到达对应目标节点后从系统中移除;通信链路采用全双工通信机制,通信链路两端的数据包能够同时向对侧传输,并且共享传输带宽;电力通信系统的状态方程为:
8、
9、bij(t)=bij(t-1)-bij(t)
10、式中,ni代表路由节点vi的邻居节点集合,bi(t)代表t时刻路由节点vi缓冲区中的数据包数量,sij(t)、bij(t)分别代表t时刻通信链路eij正在传输的数据包数量以及缓冲区中的数据包数量;在t-1→t的单位时间内,ui(t)代表节点vi连接的信息源节点产生的数据包数量,δji(t)代表从节点vj传输到节点vi的数据包数量,ωlj(t)、ωki(t)分别代表从节点vl、vk传入通信链路eij的数据包数量,rij(t)代表经过通信链路eij传入节点vi、vj缓冲区中的数据包总数量,bij(t)代表由通信链路eij的缓冲区转移到传输队列中的数据包数量;通信链路和路由节点缓冲区中的数据包数量超过缓冲区最大容量后,会按照“先入先出”的原则将溢出数据包从系统中移除。
11、进一步,在步骤s2中,将路由优化问题转化为多智能体强化学习问题,其中电力通信系统被视为交互环境,路由节点被视为智能体,智能体的观测空间、动作空间及外部奖励定义如下:
12、a、观测空间:基于安全性的要求,每个智能体只能获取邻居节点以及邻居通信链路的状态信息,所述邻居节点是与智能体通过一条通信链路直接相连的智能体,对应的通信链路为邻居通信链路,定义智能体i的观测空间oi={ui,li,hi},其中ui表示当前时刻智能体i所有邻居节点缓冲区中的数据包数量,li表示当前时刻与智能体i相连的所有通信链路剩余带宽,hi表示智能体i的本地状态信息,包括自身缓冲区中未来n个数据包的目标节点以及前m次路由决策转发到各邻居节点的数据包数量;
13、b、动作空间:智能体i的动作为路由决策,定义其动作空间ai为智能体i的所有邻居节点编号;对智能体的动作ai采用独热编码,其中元素值为1的索引对应下一跳邻居节点编号,若智能体i没有进行路由决策,则ai是全零向量;
14、c、外部奖励:基于路由优化问题的目标,智能体i的奖励机制应使其转发的数据包p到达该数据包目标节点的总延时和丢包率最小,以下分别对路由过程中可能出现的三种情况的外部奖励riext进行建模,具体如下:
15、c1、数据包p在最大允许延时的范围内传输到目标节点:每个转发过数据包p的智能体i获得的奖励riext=ti(p)-td(p),其中ti(p)是智能体i转发数据包p的时刻,td(p)是数据包到达目标节点的时刻;
16、c2、数据包p因为通信延时超过最大允许值而发生丢包:每个转发过数据包p的智能体i获得的奖励riext=βp(ti(p)-td(p)),其中βp>1是惩罚系数;
17、c3、数据包p因为缓冲区满而发生丢包:最后一次转发数据包p的智能体i获得的奖励其中tmax(p)是数据包p的最大允许延时;
18、此外,智能体在没有采取路由决策时刻的奖励被设置为该智能体的历史动作的平均奖励。
19、进一步,在步骤s3中,所述多头注意力神经网络用aω表示,其输入为所有智能体的观测量o=(o1,o2,...,oi,...,on)和路由决策a=(a1,a2,...,ai,...,an),输出为每个智能体i的注意力特征zi,其中oi为第i个智能体的观测量,为第i个智能体的路由决策;每个智能体i的观测-动作向量对首先通过嵌入层神经网络fi(oi,ai)被转化为维度为nh的编码向量ei,每个智能体i第k个注意力头的输出能够表示为其它智能体value向量的加权和,表示为:
20、
21、式中,为第j个智能体第k个注意力头的value向量,ej为第j个智能体的编码向量,为第k个注意力头的value提取矩阵,h是逐元素计算的非线性层;任意两个智能体i、j之间的注意力权重由智能体i的query向量与智能体k的key向量的点积经过softmax运算得到,表示为:
22、
23、式中,为计算注意力权重的中间变量,分别代表query、key提取矩阵,nq为智能体query向量的维度;在得到每个注意力头k的输出后,将其在特征维度上串联并经过投影变换即可得到智能体i的注意力特征zi;
24、所述q值网络用表示,其采用双q网络结构,为每个智能体建立两个结构相同但初始参数不同的评论网络能够避免强化学习中的过高估计问题,q值网络的输入为智能体i的观测量oi、路由决策ai以及注意力特征zi,输出智能体i的未来期望奖励
25、所述路由策略网络用表示,其由神经元数量相等的三层全连接网络和一层长短期记忆网络构成,其输入为智能体的观测量oi,输出为智能体采取各种路由决策的概率ρi,对ρi进行蒙特卡洛抽样并进行独热编码后得到智能体的路由决策向量ai。
26、进一步,在步骤s4中,采用soft-actor-critic算法交替训练改进评论家网络和路由策略网络的参数,路由策略网络的参数θ=(θ1,θ2,...,θi,...,θn)的更新目标为使状态价值最大化,其中θi代表智能体i策略网络的参数,所有智能体的联合损失函数l(θ)用以下公式表示:
27、
28、式中,d为存储所有智能体历史观测向量和历史动作向量的缓冲区,o、a分别代表从缓冲区抽取的所有智能体联合观测量与联合动作样本,为智能体i在观测量oi处对路由策略网络进行采样得到的动作向量,μ代表策略熵权重系数,改进评论家网络的参数ω、的更新目标为使得时序差分误差最小,所有智能体评论家网络的联合损失函数用以下公式表示:
29、
30、式中,qi代表时序差分的更新目标,o'、r分别代表从缓冲区抽取的所有智能体下一时刻的联合观测量样本和联合奖励样本,z'i代表智能体i在下一时刻的注意力特征,ri为智能体i获得的奖励,γ为未来奖励的折算系数,a'i为智能体i在观测量o'i处对路由策略网络进行采样得到的动作向量;采用梯度下降法交替更新网络参数直至收敛,得到所有智能体的最优路由策略网络。
31、本发明与现有技术相比,具有如下优点与有益效果:
32、1、本发明采用集中式训练、分散式执行的强化学习框架训练每个智能体的路由策略网络,训练完成后,每个路由节点只需要本地观测数据进行路由决策,降低了不同路由节点间信息交换的频率,提高了电力通信系统的数据安全性。
33、2、本发明将路由决策的时间控制在微秒级,并且当通信系统的运行工况发生变化后,路由策略的调整不需要额外时间,满足了电力通信系统对路由快速性的要求。
34、3、本发明建立的路由策略对网络安全事故表现出较高的鲁棒性,当部分信息源节点遭受ddos攻击以及部分通信链路断开的情况下,仍能够满足其它数据包的传输延时在允许范围内,其鲁棒性明显优于现有的路由方法。
1.基于多智能体深度强化学习的电力通信系统鲁棒路由方法,所述电力通信系统由采集量测数据的信息源节点、接受和转发量测数据包的路由节点以及通信链路构成,其特征在于,包括以下步骤:
2.根据权利要求1所述的基于多智能体深度强化学习的电力通信系统鲁棒路由方法,其特征在于,在步骤s1中,电力通信系统用无向图g=<v,e>表示,其中v代表所有路由节点的集合,e代表所有通信链路的集合;每个路由节点均与固定数量的信息源节点相连,接受信息源节点产生的量测数据包并将其存储到缓冲区中,每个数据包都有一个路由节点作为目标节点,当数据包到达对应目标节点后从系统中移除;通信链路采用全双工通信机制,通信链路两端的数据包能够同时向对侧传输,并且共享传输带宽;电力通信系统的状态方程为:
3.根据权利要求1所述的基于多智能体深度强化学习的电力通信系统鲁棒路由方法,其特征在于,在步骤s2中,将路由优化问题转化为多智能体强化学习问题,其中电力通信系统被视为交互环境,路由节点被视为智能体,智能体的观测空间、动作空间及外部奖励定义如下:
4.根据权利要求1所述的基于多智能体深度强化学习的电力通信系统鲁棒路由方法,其特征在于,在步骤s3中,所述多头注意力神经网络用aω表示,其输入为所有智能体的观测量o=(o1,o2,...,oi,...,on)和路由决策a=(a1,a2,...,ai,...,an),输出为每个智能体i的注意力特征zi,其中oi为第i个智能体的观测量,为第i个智能体的路由决策;每个智能体i的观测-动作向量对首先通过嵌入层神经网络fi(oi,ai)被转化为维度为nh的编码向量ei,每个智能体i第k个注意力头的输出能够表示为其它智能体value向量的加权和,表示为:
5.根据权利要求1所述的基于多智能体深度强化学习的电力通信系统鲁棒路由方法,其特征在于,在步骤s4中,采用soft-actor-critic算法交替训练改进评论家网络和路由策略网络的参数,路由策略网络的参数θ=(θ1,θ2,...,θi,...,θn)的更新目标为使状态价值最大化,其中θi代表智能体i策略网络的参数,所有智能体的联合损失函数l(θ)用以下公式表示: