主权项 |
一种基于监督式强化学习的最优控制方法,其特征在于,该方法包括以下步骤:步骤1,首先初始化控制器和评价器的人工神经网络的权值参数,和一组训练数据集;步骤2,选取一组训练数据即系统状态开始进行迭代学习;步骤3,根据当前时刻的系统状态,采用监督式控制器监督控制器的人工神经网络学习一个容许可控的控制策略;其中,所述控制器的在线学习采用标准三层前向人工神经网络模型,首先计算监督式控制器的输出以及控制器人工神经网络的输出,将两者差值的平方项的一半定义为监督误差,具体公式表示为:<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><msub><mi>E</mi><mi>s</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><mfrac><mn>1</mn><mn>2</mn></mfrac><msup><mrow><mo>[</mo><msup><mi>u</mi><mi>A</mi></msup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>-</mo><msup><mi>u</mi><mi>S</mi></msup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>]</mo></mrow><mn>2</mn></msup><mo>,</mo></mrow>]]></math><img file="FDA0000867866170000011.GIF" wi="521" he="126" /></maths>其中u<sup>S</sup>(t)为监督式控制器的输出,u<sup>A</sup>(t)为控制器的人工神经网络的输出;然后利用所述监督误差对控制器进行学习,使所述监督误差减小到预定值或者使学习次数达到预定值以获得与所述监督式控制器近似的控制策略;其中,所述控制器的人工神经网络的权值调节方法为:<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><msubsup><mi>Δω</mi><mi>a</mi><mi>s</mi></msubsup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><mo>-</mo><mi>α</mi><mfrac><mrow><mo>∂</mo><msub><mi>E</mi><mi>s</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow></mrow><mrow><mo>∂</mo><msub><mi>ω</mi><mi>a</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow></mrow></mfrac><mo>=</mo><mo>-</mo><msub><mi>ασ</mi><mi>a</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><msup><mrow><mo>[</mo><msubsup><mi>ω</mi><mi>a</mi><mi>T</mi></msubsup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><msub><mi>σ</mi><mi>a</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>-</mo><msup><mi>u</mi><mi>s</mi></msup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>]</mo></mrow><mi>T</mi></msup><mo>;</mo></mrow>]]></math><img file="FDA0000867866170000012.GIF" wi="1068" he="157" /></maths><maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><msub><mi>ω</mi><mi>a</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>=</mo><msub><mi>ω</mi><mi>a</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>+</mo><msubsup><mi>Δω</mi><mi>a</mi><mi>S</mi></msubsup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>;</mo></mrow>]]></math><img file="FDA0000867866170000013.GIF" wi="540" he="91" /></maths>其中,<img file="FDA0000867866170000014.GIF" wi="161" he="77" />为控制器的人工神经网络权值的梯度,ω<sub>a</sub>(t)为控制器的人工神经网络权值,ω<sub>a</sub>(t+1)为控制器的人工神经网络更新后的权值,σ<sub>a</sub>(t)为控制器的人工神经网络隐含层激活函数,α为学习速率;步骤4,控制器的人工神经网络输出学习到的控制策略,并在此基础上附加一定的随机噪声作为探索,以期获得更好的控制策略;步骤5,根据当前控制策略和当前时刻被控系统的状态,生成控制动作并施加到被控系统上,获得下一时刻的系统状态和系统给出的回报;步骤6,根据前一时刻系统状态、相应控制动作和下一时刻的系统状态,调整控制器、评价器的人工神经网络的权重,获得调整后的控制器和评价器的人工神经网络权重;步骤7,判断当前状态是否满足定义的终止条件,是则进入步骤8,否则返回步骤3继续执行;步骤8,判断是否将选取的训练数据集中的数据全部用于训练,是则输出当前控制器的人工神经网络对应的控制策略作为最优的控制策略,否则返回步骤2继续训练。 |