欢迎来到知嘟嘟! 联系电话:13095918853 卖家免费入驻,海量在线求购! 卖家免费入驻,海量在线求购!
知嘟嘟
我要发布
联系电话:13095918853
知嘟嘟经纪人
收藏
专利号: 2015103042994
申请人: 曲阜师范大学
专利类型:发明专利
专利状态:已下证
专利领域: 控制;调节
更新日期:2024-02-23
缴费截止日期: 暂无
价格&联系人
年费信息
委托购买

摘要:

权利要求书:

1.一种采用资格迹的神经网络学习控制方法,其特征在于,将BP神经网络应用于强化学习,所述BP神经网络的模型拓扑结构包括输入层、隐层和输出层,运用资格迹,把局部梯度从输出层传递到隐层,实现隐层权值的更新,同时采用改进的残差梯度法,不仅对BP神经网络输出层权值更新,而且对隐层进行了优化权值更新,具体包括如下步骤:S1.启动基于BP神经网络的强化学习过程,学习Agent在于环境的交互中,不断获得评价性的反馈信息作为回报,再将回报值做加权累加,Agent在行为选择过程中,选择能够取得最大积累回报的行为作为其最优行为:π

Agent在状态s∈S下的可执行行为记作a∈A,它从行为集合A中选择使Q (s,a)最π大的行为作为其最优行为,Q (s,a)的定义如下:π 2

Q (s,a)=E{rt+1+γrt+2+γrt+3+…|st=s,at=s,π} (1)其中:0<γ<1,

在问题模型未知的情形下,利用Q-学习算法表示为:Agent在每次迭代中更新Q(s,a)值,在多次迭代后Q(s,a)值收敛,在Q(s,a)值定义的基础上,V值定义如下:*

在状态s下,求得当前最优策略为π:

S2.采用BP神经网络作为强化学习值函数拟合器,所述BP神经网络的输入端接收状态信息,依据BP神经网络的输出层的输出值V和环境反馈的报酬信息r,利用TD算法训练BP神经网络,Agent依据输V值函数选取行为a;

Agent从一个状态Xt进入另一个状态Xt+1,获取报酬值rt,在状态Xt下的函数值为V(Xt),V(Xt)用拟合函数表示,对于输入状态Xt,它的目标输出值为rt+γV(Xt+1),在更新过程中相应拟合函数的权值更新为:其中,向量X=[x1,x2,…,xi,…,xm]T为状态向量;

设定输入层节点个数为m+1,隐层节点个数为n+1,输出层节点个数为1,向量Y=[y1,y2,…,yi,…,xm]T为BP神经网络的输入向量,状态向量X中的分量一侧赋值给BP神经网络输入向量Y中的对应分量,yi←xi,固定输入y0←1,隐层节点到输出层节点的连接权值为:W2=[w0,w1,w2,…,wn] (6)输入层到隐层的连接权值为:

由神经元节点p连接到神经元节点q的突触权值的修正值为:Δwqp=αδqyp (8)

其中,δq为神经元的局部梯度,yp为输入值,在该三层BP神经网络中,输出神经元只有一个,其局部梯度为:其中, 为输出节点的激活函数, 为 在v处的导数,神经元j作为隐层节点,其局部梯度为:

其中, i为输入层节点索引;

S3.引入资格迹的直接梯度法进行计算,为加快训练速度,将一步误差更新向后传播若干步,表现在BP神经网络上,就是累积更新权值,权值更新公式为:令

通过迭代实现每一步的资格迹:

通过式(12)求得的每步资格迹与最后一步状态变换误差值的乘积,得到BP神经网络的连接突触权值更新值,隐层到输出层的任意连接突触更新Δwj为:

为了求得输入层到隐层的连接突触权值,由式(13),在时间步t,获得误差值rt+γV(Xt+1)-V(Xt),传播到时间步k的误差值为:t-k

(rt+γV(Xt+1)-V(Xt))λ (14)在时间步k,输出神经元的局部梯度为:

对于神经元j作为隐层节点,在时间步k,其局部梯度为:到时间步k,由神经元节点i连接到神经元节点j的突触权值的修正值为:在时间步t,引入资格迹后的由神经元节点i连接到神经元节点j的突触权值的修正值为:经过上述计算,BP神经网络的隐层到输出层突触权值的更新依照直接梯度法进行调整,BP神经网络输入层到输出层突触权值的更新依赖于输出层节点局部梯度到隐层节点局部梯度的反传;

S4.利用改进的残差法,将资格迹引入权值更新,同时将权值更新扩展到BP神经网络的隐层,利用所述S3的方法,将具有三层节点的BP神经网络的连接突触权值更新用一个(m+2)n+1维向量ΔWd表示为:ΔWd=[Δw0,Δw1,…,Δwn,Δw10,Δw20,…,Δwn0,Δw11,…,Δwji,…,Δwnm]d (19)式(19)中的前n+1项是隐层到输出层的连接突触权值更新,后(m+1)n项是输入层到隐层的连接突触权值更新;

采用基于资格迹的残差梯度法更新BP神经网络的连接突触权值,将具有三层节点的BP神经网络的连接突触权值更新用一个(m+2)n+1维向量ΔWrg表示为:ΔWrg=[Δw0,Δw1,…,Δwn,Δw10,Δw20,…,Δwn0,Δw11,…,Δwji,…,Δwnm]rg (20)

1)若ΔWd·ΔWrg>0,则二向量之间的夹角为锐角,ΔWd减小带来残差梯度更新量ΔWrg减小,使拟合函数收敛;

2)若ΔWd·ΔWrg<0,则二向量之间的夹角为钝角,ΔWd减小带来残差梯度更新量ΔWrg增加,使拟合函数发散;

为了避免发散,又能够使BP神经网络的训练过程较为快速,引入残差更新向量ΔWr,其值为向量ΔWd和ΔWrg的加权平均值,定义为:ΔWr=(1-φ)ΔWd+φΔWrg (21)其中,φ∈[0,1]

φ的选取,应使ΔWr与ΔWrg的夹角为锐角,同时让ΔWr尽量与ΔWd离得近一些,以下求使向量ΔWr与向量ΔWrg垂直的φ⊥值:ΔWr·ΔWrg=0 (22)

满足式(22)的向量ΔWr与向量ΔWrg垂直,求解式(22),得到φ⊥值为:

φ的选取只需在φ⊥值上增加一个较小的正值μ,使之略偏向向量ΔWrg一点,φ=φ⊥+μ (24)

3)若ΔWd·ΔWrg=0,则二向量之间的夹角为直角,这样有:φ⊥=0

φ的选取为:φ=φ⊥+μ=μ (25)

经过上述运算,保证在迭代过程中权值收敛,通过这种方法训练BP神经网络的各层权值,其更新不会引起函数值发散,同时将BP神经网络的各层权值都加以考虑,使得权值更新向量ΔWr不会引起用残差梯度法得到的权值更新向量ΔWrg向其相反的方向变化,从而保证收敛。

2.如权利要求1所述的一种采用资格迹的神经网络学习控制方法,其特征在于,所述S4中基于资格迹的残差梯度法为:采用BP神经网络拟合值函数,Agent从一个状态Xt转移到下一状态Xt+1,获得报酬值rt,在状态Xt下的函数值为V(Xt),V(Xt)用拟合函数来表示,对于输入状态Xt,它的目标输出值为rt+γV(Xt+1),其误差信息E的计算公式为:为使误差E趋于最小,采用残差梯度法,求得每次迭代BP神经网络权值的变化量Δw,将V(Xt)和V(Xt+1)都视为变化量,由式(26)求得拟合函数的权值按残差梯度法更新为:其中,α为学习速度,采用式(27)对BP神经网络进行权值迭代更新,能保证值函数收敛,由式(27)变形得:

式(28)中, 项的求值跟公式(5)的直接梯度法求法相同,项的求值跟公式(5)中的直接梯度法求法基本相同,输入值为目标状态;

引入资格迹后,求得相应的拟合函数的权值按残差梯度法更新为:由式(29)变形得:

式(30)中,等式右侧第一项的求值跟第3节中引入资格迹的直接梯度法求法相同,等式右侧第二项的求值跟第3节中的公式(13)相同,输入值为目标状态。