本发明涉及一种自动化控制的训练过程的加速方法,属于分析方法。
背景技术:
1、目前,在工程领域中,自动化控制的合理使用可以提高效率与安全性,如工程特种车辆的自动化作业,而强化学习是实现自动化控制的重要途经之一。将工程任务建模为强化学习环境,在虚拟环境中利用强化学习知识对智能体进行训练以获得最优控制策略。然而,在一些复杂工程任务和稀疏奖励的强化学习环境中,智能体学得最优策略需要大量的时间,耗费大量的算力。
2、有鉴于此,确有必要提出一种自动化控制的训练过程的加速方法,以解决上述问题。
技术实现思路
1、本发明的目的在于提供一种自动化控制的训练过程的加速方法,该方法能够加快最优控制的训练过程。
2、为实现上述目的,本发明提供一种自动化控制的训练过程的加速方法,用于对工程特种车辆作业的自动化控制的训练过程进行加速,包括以下步骤:
3、s1、针对智能体的作业要求建立强化学习环境,初始化砖瓦编码器;
4、s2、在每一轮训练开始时,初始化时间窗口、时间窗口最大值和回退间隔;
5、s3、判断智能体的当前步数是否与上一次回退时的步数相差了一个回退间隔,若是,则智能体回退到时间窗口中具有最大q值的状态,并选择此具有最大q值的状态下q值最大的动作a,并进入s5;若否,则进入s4;
6、s4、通过方法选择智能体将要执行的动作a;
7、s5、执行动作a,获得奖励与下一状态的信息;
8、s6、智能体进行学习,完成相应瓦片化网格的更新;
9、s7、将当前状态加入到时间窗口中,维护时间窗口大小并将当前状态更新为下一状态;
10、s8、判断当前状态是否是终点,若是,则结束该轮训练;若否,则进入s3进行循环。
11、作为本发明的进一步改进,s1中:根据特种车辆的作业要求进行强化学习环境的建模,将智能体完成任务时的奖励设为0,未完成要求时的每个时间步奖励设为-1。
12、作为本发明的进一步改进,s2中:在每轮训练开始时会初始化一个时间窗口用来保存智能体曾经访问过的状态;初始化时间窗口的最大值用来控制时间窗口中记录的状态数量;初始化回退间隔用来控制智能体每走多少步进行一次回退。
13、作为本发明的进一步改进,s2中:所述回退间隔的增长方式为线性增长,具体为:
14、;
15、其中,表示回退间隔,表示回退间隔增长率,表示当前训练轮数,为一个常数,表示回退间隔的初始值。
16、作为本发明的进一步改进,s3中:若回退时回退到的状态不是当前状态,则会受到惩罚;若是当前状态,则不会受到惩罚。
17、作为本发明的进一步改进,若智能体当前步数与上一次回退时的步数相差了一个回退间隔,则从当前的时间窗口所有状态中选出具有最大q值的状态,让智能体回退到该具有最大q值的状态,并选择最大q值的动作,同时步数+1。
18、作为本发明的进一步改进,智能体回退的同时减少回退前状态的每个动作的q值,减少幅度一致,以减少对回退前的状态的访问。
19、作为本发明的进一步改进,若时间窗口中具有最大q值的状态为当前状态,智能体不会回退到过去的状态。
20、作为本发明的进一步改进,s6中:所述瓦片化网格的更新包括q值的更新,更新公式为:
21、;
22、其中,为状态动作值函数,为当前状态,为选择的动作,为学习率,为折扣因子,为智能体在状态下执行动作所获得的奖励,为下一状态。
23、作为本发明的进一步改进,s7中:智能体在将当前状态更新为下一状态前,将当前状态加入到时间窗口中,若时间窗口大小超过时间窗口最大值,则删除最早进入时间窗口的状态,使得时间窗口大小固定。
24、本发明的有益效果是:本发明的自动化控制的训练过程的加速方法通过在训练过程中进行回退,加速工程特种车辆自动化作业的训练速度,避免在一些重复状态上浪费大量时间,从而缩短训练时间,提高训练效率,节省算力资源。
1.一种自动化控制的训练过程的加速方法,用于对工程特种车辆作业的自动化控制的训练过程进行加速,其特征在于,包括以下步骤:
2.根据权利要求1所述的自动化控制的训练过程的加速方法,其特征在于,s1中:根据特种车辆的作业要求进行强化学习环境的建模,将智能体完成任务时的奖励设为0,未完成要求时的每个时间步奖励设为-1。
3.根据权利要求1所述的自动化控制的训练过程的加速方法,其特征在于,s2中:在每轮训练开始时会初始化一个时间窗口用来保存智能体曾经访问过的状态;初始化时间窗口的最大值用来控制时间窗口中记录的状态数量;初始化回退间隔用来控制智能体每走多少步进行一次回退。
4.根据权利要求1所述的自动化控制的训练过程的加速方法,其特征在于,s2中:所述回退间隔的增长方式为线性增长,具体为:
5.根据权利要求1所述的自动化控制的训练过程的加速方法,其特征在于,s3中:若回退时回退到的状态不是当前状态,则会受到惩罚;若是当前状态,则不会受到惩罚。
6.根据权利要求5所述的自动化控制的训练过程的加速方法,其特征在于:若智能体当前步数与上一次回退时的步数相差了一个回退间隔,则从当前的时间窗口所有状态中选出具有最大q值的状态,让智能体回退到该具有最大q值的状态,并选择最大q值的动作,同时步数+1。
7.根据权利要求6所述的自动化控制的训练过程的加速方法,其特征在于:智能体回退的同时减少回退前状态的每个动作的q值,减少幅度一致,以减少对回退前的状态的访问。
8.根据权利要求5所述的自动化控制的训练过程的加速方法,其特征在于:若时间窗口中具有最大q值的状态为当前状态,智能体不会回退到过去的状态。
9.根据权利要求1所述的自动化控制的训练过程的加速方法,其特征在于,s6中:所述瓦片化网格的更新包括q值的更新,更新公式为:
10.根据权利要求1所述的自动化控制的训练过程的加速方法,其特征在于,s7中:智能体在将当前状态更新为下一状态前,将当前状态加入到时间窗口中,若时间窗口大小超过时间窗口最大值,则删除最早进入时间窗口的状态,使得时间窗口大小固定。