一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种深度强化学习的机会路由候选集节点排序方法与流程

2021-12-12 23:40:00 来源:中国专利 TAG:


1.本发明属于水下声学传感器网络技术领域,具体涉及一种深度强化学习的机会路由候选集节点排序方法。


背景技术:

2.海洋面积占地球表面积70%以上,其中蕴含着丰富的资源,随着陆上资源的不断减少,各国对海洋权益的重视日益加深,人们迫切需要新的技术去探索广阔的水下未知世界。由于无线电信号在水中衰减迅速,传输距离短,而声信号可以在水下进行远距离传输,所以水下声学传感器网络受到越来越多的关注。在水下使用声信号进行传输会带来高时延、高误码率、低带宽、低传输速率和多径效应等挑战,这些挑战使得现有陆上的路由协议无法适用于水下环境,为水下声学传感器网络路由协议的设计带来了新的机遇和挑战。
3.在水下路由协议中,机会路由协议利用声信号的广播特性,提高了网络的可靠性和吞吐量,所以被广泛应用。在机会路由协议中,每次转发通常有多个节点接收到数据包,机会路由候选集排序算法负责计算这些节点的转发优先级,然后这些节点根据自己的优先级进行机会转发,该算法对网络的延迟,送达率和能耗等有直接的影响,所以研究水下机会路由协议候选集节点排序算法是非常有意义的。
4.目前在水下机会路由领域,有多种候选集节点排序算法,可以将算法归纳为下面两类:(1)基于单一因素的机会路由候选集排序算法,这类算法只使用一种因素衡量节点的转发优选级,例如yan等人提出的dbr路由协议使用的候选集排序算法利用节点深度信息来决定转发优先级。(2)基于多种因素的机会路由候选集排序算法,这类算法综合考虑多个因素评估节点的转发优先级,例如tora和esevbf协议使用的候选集排序算法就同时利用剩余能量和距离等因素来评价节点的转发优先级。
5.现有的机会路由候选集排序算法虽然可以根据环境因素对候选集节点进行排序,但是又分别存在各自的局限性。只考虑单一因素算法实现起来比较简单,但算法的综合性能差。考虑多种因素的排序算法虽然可以弥补考虑单个因素算法的不足,但组合不同因素使用的权重等参数需要通过在特定场景下进行实验,人为总结给出,所以算法的适应性差。


技术实现要素:

6.本发明的目的在于克服现有机会路由候选集节点排序算法存在考虑因素单一和适应性差等问题,提供一种深度强化学习的机会路由候选集节点排序方法。
7.本发明的目的通过如下技术方案来实现:包括以下步骤:
8.步骤1:针对机会路由候选集节点排序问题建立水下机会路由网络模型;
9.建立水下机会路由网络模型包括对深度强化学习智能体的状态、动作及奖励函数的定义,具体如下:
10.深度强化学习智能体的状态定义为发送节点的候选集节点信息;对于发送节点i,状态被定义为c
i
为节点i的候选集;为节点i的候选集节点j的信息,
其中,e
j
代表节点j的剩余能量,d
j
代表节点j的深度,代表邻居节点j与节点i之间的距离,代节点j与sink节点之间的距离,n
j
代表节点j的邻居节点个数;状态s
i
是一个二维数组,每一行对应一个一共有|c
i
|行;
11.深度强化学习智能体的动作定义为发送节点所采用的一种候选集排序结果,发送节点i采取的动作用a
i
表示,发送节点的动作空间是该节点候选集所有可能的排列顺序;对于发送节点i,可以选择的动作有|c
i
|!种;
12.奖励函数的定义根据下一时刻转发节点和状态的不同可以分为三种情况
13.(1)当下一时刻转发节点j是sink节点时,此时获得r
sink
奖励;
14.(2)当下一时刻转发节点j的候选集信息为空,j不能将数据包转发出去,此时获得r
null
奖励;
15.(3)当下一时刻转发节点j可以转发数据包,此时如果j是优先级最高的节点,则获取的这种情况下最大的奖励值r
max
;如果j是优先级最低的节点,则获取的这种情况下最小的奖励值r
min
;否则获取的奖励值根据节点j所在候选集结果中的序号以及候选集节点的个数在r
max
和r
min
之间呈等差数列的形式下降;
16.步骤2:建立候选集排序深度强化学习算法模型,其中包括策略网络和价值网络;
17.所述的策略网络将t时刻的状态s
t
作为输入,计算并输出所有候选集节点优先级的概率分布p
t
,然后根据概率分布生成候选集排序结果即动作a
t

18.所述的价值网络根据输入的t时刻状态s
t
,计算并输出该状态对应的价值估计v
t

19.步骤3:对来自水下机会路由网络模型的数据进行解析,得到当前t时刻的候选集节点信息s
t
、候选集节点序号列表clist
t
、奖励值r
t
以及此时发送数据包节点的序号id
t
;对候选集节点信息s
t
中每个特性进行归一化;
20.步骤4:利用深度强化学习智能体与水下机会路由网络模型进行交互,采取迭代试错的学习方法训练并保存深度强化学习算法模型;
21.步骤4.1:深度强化学习智能体与水下机会路由网络模型交互生成决策序列,深度强化学习智能体根据t时刻候选集节点信息s
t
计算得到候选集节点转发优选级分布p
t
,并且根据p
t
生成候选集排序结果a
t
,发送节点将排序结果添加到包头中并广播数据包,水下机会路由网络模型根据候选集节点转发情况,反馈给智能体id
t 1
、r
t 1
、s
t 1
和clist
t 1
信息;深度强化学习智能体通过上述交互方式得到决策序列o
t
=<s
t
,p
t
,a
t
,id
t 1
,r
t 1
,s
t 1
>;
22.其中,id
t 1
表示候选集中负责实际转发数据包的节点序号;r
t 1
是在状态s
t
时执行动作a
t
转移到状态s
t 1
获取的奖励;s
t 1
表示转发数据包节点id
t 1
的候选集信息;clist
t 1
表示s
t 1
对应候选集节点序号的列表;
23.步骤4.2:深度强化学习智能体根据一个完整的决策序列o
t
,计算t时刻的时序差分误差δ
t
=r
t 1
v
t 1

v
t
,根据价值网络的损失函数l
c
计算的误差值使用梯度下降算法更新价值网络的参数;
24.其中,v
t
和v
t 1
分别是将s
t
和s
t 1
输入到价值网络中得到的价值估计;价值网络的损失函数l
c
为:
25.l
c
=δ
t

t
26.步骤4.3:根据策略网络的损失函数l
a
计算的误差值使用梯度下降算法更新策略
网络的参数;
27.策略网络的损失函数l
a
为:
[0028][0029]
其中,|a
t
|为t时刻候选集排序结果中节点的个数;y
k
为根据实际候选集节点转发情况生成的节点k的标签值,是1*|a
t
|维独热编码形式的向量,在y
k
中实际转发节点id
t 1
对应的下标为1,其余的下标为零;
[0030]
步骤4.4:重复步骤4.1到步骤4.3,深度强化学习算法每经过固定次数的更新保存一次算法模型,直到满足预设的最大训练次数或收敛条件,最终得到训练完毕的深度强化学习算法模型;
[0031]
步骤5:利用训练完毕的深度强化学习算法模型对机会路由候选集节点排序;
[0032]
深度强化学习智能体从水下机会路由网络模型获取当前发送节点的候选集信息s
t
,然后将s
t
输入到训练完毕的深度强化学习算法模型中的策略网络,策略网络计算得到候选集排序结果a
t
,机会路由网络模型中的发送节点将a
t
添加到数据包包头中并广播数据包,候选集节点根据自己在a
t
的中排序进行机会转发,负责转发数据包的候选集节点同样将自己的候选集信息s
t 1
传输给深度强化学习模型并获取对应的候选集排序结果a
t 1
,如此不断的重复上述过程,最终得到所有水下机会路由网络模型中发送节点的候选集排序结果。
[0033]
本发明的有益效果在于:
[0034]
本发明克服了现有机会路由候选集节点排序算法存在考虑因素单一和适应性差等问题,利用深度强化学习智能体与水下机会路由网络模型进行交互,使用深度神经网络拟合候选集节点信息与节点转发优先级的关系。本发明结合了深度学习和强化学习的优势,智能体通过与水下机会路由网络模型交互来自动学到一个机会路由候选集节点排序算法,此过程极少依赖人工经验和外部数据信息。本发明使得候选集节点排序更加智能,且适应性更好。
附图说明
[0035]
图1为本发明中机会路由候选集节点排序方法的实施流程图。
[0036]
图2为本发明中深度强化学习算法模型的框架图。
[0037]
图3为本发明中深度强化学习算法模型中策略网络的结构图。
[0038]
图4为本发明中深度强化学习算法模型中价值网络的结构图。
[0039]
图5为本发明中深度强化学习算法的执行流程图。
具体实施方式
[0040]
下面结合附图对本发明做进一步描述。
[0041]
本发明涉及一种深度强化学习的机会路由候选集节点排序方法,首先需要针对机会路由候选集节点排序问题建立水下机会路由网络模型;然后搭建与之交互的深度强化学习算法模型,该模型包括两个深度神经网络,分别是策略网络和价值网络;接下来,对收集到的水下机会路由网络数据进行预处理,需要先对接收到的数据进行解析,再对数据解析得到的候选集信息进行归一化;更进一步,利用深度强化学习智能体与水下机会路由网络
模型交互进行训练和学习,得到训练好的用于机会路由候选集排序的深度强化学习算法模型;最后基于训练完毕的深度强化学习算法模型对机会路由候选集节点排序。本发明不仅能够使得机会路由候选集节点排序过程更加智能,而且技术处理过程简单,此外,使用本发明学到的机会路由候选集排序算法对于不同水下机会路由网络的适应能力更强。
[0042]
一种深度强化学习的机会路由候选集节点排序方法,包括以下步骤:
[0043]
s1:针对机会路由候选集节点排序问题建立水下机会路由网络模型;
[0044]
s2:建立候选集排序深度强化学习算法模型,其中包括策略网络和价值网络;
[0045]
s3:对来自水下机会路由网络模型的信息进行预处理;
[0046]
s4:深度强化学习算法模型的训练和保存。深度强化学习智能体与水下机会路由网络模型交互获取数据,采取迭代试错的学习方法训练并保存算法模型;
[0047]
s5:利用训练完毕的深度强化学习算法模型对机会路由候选集节点排序。
[0048]
进一步,所述步骤s1中,建立水下机会路由网络模型包括对深度强化学习智能体的状态、动作及奖励函数的定义,具体如下:
[0049]
s1

1:智能体的状态定义为发送节点的候选集节点信息。例如对于发送节点i,状态被定义为其中c
i
为节点i的候选集,是节点i的候选集节点j的信息,其中e
j
代表节点j的剩余能量,d
j
代表节点j的深度,代表邻居节点j与节点i之间的距离,代节点j与sink节点之间的距离,n
j
代表节点j的邻居节点个数。状态s
i
是一个二维数组,每一行对应一个一共有|c
i
|行。
[0050]
s1

2:智能体的动作定义为发送节点所采用的一种候选集排序结果。发送节点i采取的动作用a
i
表示,在本发明中发送节点的动作空间是该节点候选集所有可能的排列顺序。对于发送节点i,可以选择的动作有|c
i
|!种。
[0051]
s1

3:奖励函数的定义根据下一时刻转发节点和状态的不同可以分为三种情况
[0052]
(1)第一种情况是当下一时刻转发节点j是sink节点时,此时获得r
sink
奖励。
[0053]
(2)第二种情况是下一时刻转发节点j的候选集信息为空,j不能将数据包转发出去,此时获得r
null
奖励。
[0054]
(3)第三种情况对应下一时刻转发节点j可以转发数据包,此时如果j是优先级最高的节点,则获取的这种情况下最大的奖励值r
max
,如果j是优先级最低的节点则获取的这种情况下最大的奖励值r
min
,否则获取的奖励值根据节点j所在候选集结果中的序号以及候选集节点的个数在r
max
和r
min
之间呈等差数列的形式下降。
[0055]
进一步,所述步骤s2中,候选集排序深度强化学习算法模型包括两个深度神经网络,分别是策略网络和价值网络,具体如下:
[0056]
s2

1:策略网络将t时刻的状态s
t
作为输入,计算并输出所有候选集节点优先级的概率分布p
t
,然后根据概率分布生成候选集排序结果即动作a
t
。策略网络的结构由三部分组成,分别是输入层、隐藏层和输出层,其中输入层的神经元的个数为5,输出层神经元的个数为1,代表候选集节点的转发优选级的概率值,输入层和输出层中间有两个隐藏层,每个隐藏层神经元个数都是20个。
[0057]
s2

2:价值网络可以根据输入的t时刻状态s
t
,计算并输出该状态对应的价值估计
v
t
。与策略网络的结构类似,价值网络由输入层、隐藏层和输出层三部分组成,该网络同样接收状态信息作为输入,其中输入层的神经元的个为5,输出层神经元的个数为1,将价值网络的输出结果取均值得到对应状态的价值估计,输入层和输出层中间有三个隐藏层,每个隐藏层有30个神经元。
[0058]
进一步,所述步骤s3中,对来自水下水下机会路由网络模型的信息进行预处理包括数据解析和候选集信息归一化,具体如下:
[0059]
s3

1:因为智能体从水下机会路由网络模型获得的数据中包含多种信息,所以首先要对接收到的数据进行解析,解析后会得到当前t时刻的候选集节点信息s
t
、候选集节点序号列表clist
t
、奖励值r
t
以及此时发送数据包节点的序号id
t

[0060]
s3

2:因为候选集节点信息s
t
包含多种特征,不同特征之间的取值范围相差较大,甚至不在一个数量级,这会影响神经网络反向传播的效果,所以本发明提出的方法要对候选集节点信息每个特性进行归一化,公式如下:
[0061][0062]
上述公式中x
max
和x
min
对应候选集信息中归一化特性的最大值和最小值,x
i
代表节点i对应的特征值。
[0063]
进一步,所述步骤s4中,需要利用深度强化学习智能体与水下机会路由网络模型进行交互来训练算法模型中的神经网络,具体步骤如下:
[0064]
s4

1:深度强化学习智能体与水下机会路由网络模型交互生成决策序列。智能体根据t时刻候选集节点信息s
t
计算得到候选集节点转发优选级分布p
t
,并且根据p
t
生成候选集排序结果a
t
,发送节点将排序结果添加到包头中并广播数据包,水下机会路由网络模型根据候选集节点转发情况,反馈给智能体id
t 1
、r
t 1
、s
t 1
和clist
t 1
信息,其中id
t 1
表示候选集中负责实际转发数据包的节点序号,r
t 1
是在状态s
t
时执行动作a
t
转移到状态s
t 1
获取的奖励,s
t 1
表示转发数据包节点id
t 1
的候选集信息,clist
t 1
表示s
t 1
对应候选集节点序号的列表,智能体通过上述交互方式得到决策序列o
t
=<s
t
,p
t
,a
t
,id
t 1
,r
t 1
,s
t 1
>。
[0065]
s4

2:智能体根据一个完整的决策序列o
t
来更新深度强化学习算法网络参数。首先需要计算t时刻的时序差分误差δ
t
=r
t 1
v
t 1

v
t
,其中v
t
和v
t 1
分别是将s
t
和s
t 1
输入到价值网络中得到的价值估计。
[0066]
s4

3:价值网络的损失函数l
c
中用到了时序差分误差δ
t
,损失函数l
c
表示为:
[0067]
l
c
=δ
t

t
[0068]
根据损失函数l
c
计算的误差值使用梯度下降算法更新价值网络的参数。
[0069]
s4

4:策略网络的损失函数l
a
不仅用到了时序差分误差,还用到了交叉熵损失。交叉熵损失用来表示概率分布q与概率分布p之间的误差,两个概率分布越接近,交叉熵损失越小,其计算公式为:
[0070]
h(p,q)=


x
p(x)logq(x)
[0071]
利用时序差分误差和交叉熵损失可得到策略网络的损失函数l
a
,l
a
表示为:
[0072]
[0073]
其中|a
t
|为t时刻候选集排序结果中节点的个数,y为根据实际候选集节点转发情况生成的标签值,是1*|a
t
|维的热编码形式的向量,在y中实际转发节点id
t 1
对应的下标为1,其余的下标为零。策略网络根据损失函数l
a
计算误差值使用梯度下降方式更新网络参数。
[0074]
s4

5:重复步骤s4

1到s4

4,深度强化学习算法每经过固定次数的更新保存一次算法模型,直到满足预设的最大训练次数或收敛条件,最终得到训练完毕的算法模型。
[0075]
进一步,所述步骤s5中,利用训练完毕的深度强化学习模型对机会路由候选集节点排序过程如下:
[0076]
智能体从水下机会路由网络模型获取当前发送节点的候选集信息s
t
,然后将s
t
输入训练完毕的深度强化学习算法模型中的策略网络,策略网络计算得到候选集排序结果a
t
,机会路由网络模型中的发送节点将a
t
添加到数据包包头中并广播数据包,候选集节点根据自己在a
t
的中排序进行机会转发,负责转发数据包的候选集节点同样将自己的候选集信息s
t 1
传输给深度强化学习模型并获取对应的候选集排序结果a
t 1
,如此不断的重复上述过程,最终使所有水下机会路由网络模型中发送节点的候选集排序结果都由深度强化学习算法模型给出。
[0077]
由上述本发明的技术方案可以看出,本发明具有如下技术效果:
[0078]
(1)本发明结合了深度学习和强化学习的优势,智能体通过与水下机会路由网络模型交互来自动学到一个机会路由候选集节点排序算法,此过程极少依赖人工经验和外部数据信息。
[0079]
(2)深度强化学习模型中的策略网络和价值网络是深度神经网络,具有极强的状态抽象和表征能力,能有效的抽象候选集信息,使得学习到的机会路由候选集节点排序算法在不同的水下机会路由网络中适应性更强。
[0080]
(3)将训练好的深度强化学习模型用于对水下机会路由候选集节点进行排序,只需要将当前时刻发送节点的候选集信息输入到训练好的深度强化学习模型中即可得到对应的候选集节点排序结果,使得机会路由候选集节点排序过程更加简单、智能。
[0081]
实施例1:
[0082]
本发明涉及一种深度强化学习的机会路由候选集节点排序方法,属于水下声学传感器网络领域及机器学习领域。本发明的目的是为克服现有机会路由候选集节点排序算法存在考虑因素单一和适应性差等问题而提供一种基于深度强化学习的机会路由候选集节点排序方法,该方法利用深度强化学习智能体与水下机会路由网络模型进行交互,使用深度神经网络拟合候选集节点信息与节点转发优先级的关系,相对于人为设置权重等参数的算法,本发明所提的方法使得候选集节点排序更加智能,且适应性更好。
[0083]
本发明提出一种深度强化学习的机会路由候选集节点排序方法,其实施流程如图1所示,包括如下步骤:
[0084]
s1:针对机会路由候选集节点排序问题建立水下机会路由网络模型,其中包括对深度强化学习智能体的状态、动作及奖励函数的定义,具体如下:
[0085]
s1

1:智能体的状态定义为发送节点的候选集节点信息,对于发送节点i的状态信息被定义为其中c
i
为节点i的候选集,是节
点i的候选集节点j的信息,其中e
j
代表节点j的剩余能量,d
j
代表节点j的深度,代表邻居节点j与节点i之间的距离,代节点j与sink节点之间的距离,n
j
代表节点j的邻居节点个数。
[0086]
因为在水下机会路由网络模型中,每个发送节点可以有多个候选集节点,所以本发明中的s
i
是一个二维数组,s
i
中的每一行对应一个候选集节点信息一共有|c
i
|行。当发送节点的候选集不为空时,s
i
也不为空,但当发送节点为sink节点或遇到路由空洞时,s
i
为空。
[0087]
s1

2:智能体的动作定义为发送节点所采用的一种候选集排序结果。发送节点i采取的动作用a
i
表示,在本发明中发送节点的动作空间是该节点候选集所有可能的排列顺序。例如发送节点i的候选集c
i
中有3个节点,那么节点i可以采取的所以动作有|c
i
|!=3*2*1=6种。
[0088]
s1

3:奖励函数的定义根据下一时刻转发节点和状态的不同可以分为三种情况
[0089]
(1)第一种情况是当下一时刻转发节点j是sink节点时,此时获得r
sink
奖励。
[0090]
(2)第二种情况是下一时刻转发节点j的候选集信息为空,j不能将数据包转发出去,此时获得r
null
奖励。
[0091]
(3)第三种情况对应下一时刻转发节点j可以转发数据包,此时如果j是优先级最高的节点,则获取的这种情况下最大的奖励值r
max
,如果j是优先级最低的节点则获取的这种情况下最大的奖励值r
mi
,否则获取的奖励值根据节点j所在候选集结果中的序号以及候选集节点的个数在r
max
和r
min
之间呈等差数列的形式下降。
[0092]
s2:深度强化学习算法模型框架如图2所示,其中包括两个深度神经网络,分别是策略网络和价值网络,具体如下:
[0093]
s2

1:策略网络结构如图3所示,它由输入层、隐藏层和输出层组成,其中输入层的神经元的个数是5个,输入层和输出层中间有两个隐藏层,每个隐藏层神经元个数为20个,最后输出层的神经元个数为1。
[0094]
深度神经网络为了实现非线性化,会使用非线性函数作为激活函数对每层网络计算的数据进行处理,将处理结果作为下一层网络的输入。在本发明中,使用leaky relu函数作为策略网络中间层的激活函数,对于网络的输出层,先将输出的结果转置,然后使用softrmax激活函数处理得到最终输出。策略网络输的输入为t时刻的状态s
t
,输出为候选集节点的优先级概率分布p
t
,最后根据p
t
生成候选集排序结果a
t

[0095]
s2

2:价值网络结构如图4所示,价值网络结构由输入层、隐藏层和输出层三部分组成,该网络输入层有5个神经元,有三个隐藏层,每个隐藏层有30个神经元,输出层有1个神经元,激活函数的选择和策略网络一样,使用的是leaky relu函数,最后对价值网络的输出结果取平均得到当前输入状态的价值估计。价值网络的输入为t时刻的状态s
t
,输出为该状态的对应的价值估计。
[0096]
s3:由于训练深度强化学习算法模型的需要,水下机会路由网络模型会返回多种信息,所以首先要对这些信息进行预处理,包括数据解析和候选集信息归一化:
[0097]
s3

1:因为智能体从水下机会路由网络模型获得的数据包含多种信息,所以首先要对接收到的数据进行解析,解析后会得到候选集节点信息s
t
、候选集节点序号的列表
clist
f
、奖励值r
t
以及此时发送数据包节点的序号id
t

[0098]
s3

2:因为候选集节点信息s
t
包含多种特征,不同特征之间的取值范围相差较大,甚至不在一个数量级,这会影响神经网络反向传播的效果,所以本发明提出的方法要对候选集节点信息每个特性进行归一化,公式如下:
[0099][0100]
上述公式中x
max
和x
min
对应候选集信息中归一化特性的最大值和最小值,x
i
代表节点i对应的特征值。
[0101]
s4:深度强化学习智能体与网络模型交互获取数据,采取不断试错迭代的学习方法训练并保存算法模型。深度强化学习算法执行流程如图5所示,具体步骤如下:
[0102]
s4

1:智能体与水下机会路由网络模型交互收集决策序列步骤如下:
[0103]
首先初始化水下机会路由网络模型,设置t=0,智能体获取当前发送节点候选集信息s
t
和对应的节点列表clist
t

[0104]
然后将s
t
进行归一化后输入到策略网络中,得到候选集节点的概率分布p
t
,根据概率分布p
t
和对应的节点列表clist
t
计算得到候选集排序结果a
t

[0105]
最后水下机会路由网络模型中发送节点将a
t
作为候选集节点转发优先级,然后将优先级的信息添加到数据包包头中,然后广播数据包,水下机会路由网络模型根据候选集节点实际转发情况,反馈给智能体id
t 1
、r
t 1
、s
t 1
和clist
t 1
等信息,其中id
t 1
表示候选集中实际转发数据包的节点序号,r
t 1
是在状态s
t
时执行动作a
t
转移到状态s
t 1
获取的奖励,s
t 1
表示转发数据包节点id
t 1
的候选集信息,clist
t 1
表示s
t 1
对应的候选集节点序号的列表,至此智能体得到一个决策序列o
t
=<s
t
,p
t
,a
t
,id
t 1
,r
t 1
,s
t 1
>。
[0106]
s4

2:智能体将决策序列o
t
中的s
t
、s
t 1
输入到价值网络中计算得到对应状态的价值估计v
t
和v
t 1
,然后根据v
t
、v
t 1
和r
t 1
计算t时刻的时序差分误差δ
t
,计算公式如下:
[0107]
δ
t
=r
t 1
v
t 1

v
t
[0108]
s4

3:价值网络的损失函数l
c
中用到了时序差分误差δ
t
,损失函数l
c
表示为:
[0109]
l
c
=δ
t

t
[0110]
根据损失函数l
c
计算误差值使用梯度下降算法更新价值网络的参数。
[0111]
s4

4:策略网络的损失函数l
a
不仅用到了时序差分误差,还用到了交叉熵损失。交叉熵损失用来表示概率分布q与概率分布p之间的误差,两个概率分布越接近,交叉熵损失越小,其计算公式为:
[0112]
h(p,q)=


x
p(x)logq(x)
[0113]
利用时序差分误差和交叉熵损失可得到策略网络的损失函数l
a
,l
a
表示为:
[0114][0115]
其中|a
t
|为t时刻候选集排序结果中节点的个数,y为根据实际候选集节点转发情况生成的标签值,是1*|a
t
|维的热编码形式的向量,在y中实际转发节点id
t 1
对应的下标为1,其余的下标为零。策略网络根据损失函数l
a
计算误差值使用梯度下降方式更新网络参数。
[0116]
s4

5:重复步骤s4

1到s4

4,深度强化学习算法参数每经过特定次数更新就保存
一次算法模型,直到满足收敛条件或到达预设的最大训练次数,最终得到训练完毕的算法模型。
[0117]
s5:利用训练完毕的深度强化学习算法模型对机会路由候选集节点排序,步骤如下:
[0118]
首先获取t时刻水下机会路由网络模型发送节点的候选集信息s
t

[0119]
然后将s
t
输入到策略网络中,将该网络输出的候选集节点优先级概率分布由大到小排列,得到候选集排序结果a
t

[0120]
接下来水下机会路由网络模型中的发送节点将候选集排序结果a
t
添加到数据包包头中并广播数据包,候选集节点根据自己在a
t
的中位置进行机会转发。候选集中负责转发数据包的节点将该节点的候选集信息s
t 1
,传输给深度强化学习算法模型,以同样的方式得到a
t 1

[0121]
如此不断重复上述过程,最终使水下机会路由网络模型中所有发送节点的候选集排序结果都由深度强化学习算法模型给出。
[0122]
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献