掌桥专利:专业的专利平台
掌桥专利
首页

KRFPV算法、执行装置、电子设备、存储介质以及神经网络

文献发布时间:2023-06-19 11:05:16


KRFPV算法、执行装置、电子设备、存储介质以及神经网络

技术领域

本申请涉及算法技术领域,具体而言,涉及一种KRFPV算法、执行装置、电子设备、存储介质以及神经网络。

背景技术

现实世界是一个四维的连续空间,其中大多数场景涉及到高维连续行动规划。例如,人体由上百条肌肉所驱动,为了完成一项基本的任务,大脑需要寻找出最佳的驱动这些肌肉的方式;每个机构由不同的人所构成,机构的领导人需要找出最佳的驱动这些人的方式来完成某个目标。高维连续行动空间中的行动规划任务在生活中如此常见,因此解决高维连续行动空间的行动规划任务具有十分重要的现实意义。高维连续行动空间中的行动规划任务涉及到智能体根据已有环境模型在大脑中进行模拟推演,最终从高维的行动空间中选出一个最佳的行动与环境进行交互这一过程。现有的最优规划技术是蒙特卡洛树搜索,而在连续的行动空间中一个比较好的规划技术是KR-UCT。这两种方式通过在当前状态对未来进行推演从而找出最佳的行动。然而这两种方式存在无记忆性的特点,在与环境交互时需要耗费大量的时间对未来进行推演才能找出当前的最佳行动。针对这个问题,KRPV算法使用神经网络保存了智能体与环境的交互信息,随后使用这些信息剪枝了蒙特卡罗树搜索过程,进而加快了蒙特卡罗树搜索的效率,使得蒙特卡罗树搜索可以在有限的时间内从高维的连续行动空间找出最佳的行动,因而大幅提升了KR-UCT在高维连续行动空间的性能。

然而在KRPV算法的选择过程中,KRPV使用了一个不可变的核函数计算不同行动之间的相似性,即如果两个行动在距离上比较相近,那么做两个行动也比较相似。但到了高维行动空间,由于距离上相近的两个行动不一定相似,而且在不同状态下两个动作之间的相似性也在不断变化,因此不可变核函数对不同行动之间的相似性的估计误差变大。如附图6所示的符号函数y=sgn(x)的图像,我们假设这个图像是在状态s下不同行动的价值,我们同样假设行动a=0.01,行动b=-0.01,因为行动a和行动b之间的距离很近,利用不可变核函数计算出a和b之间的相似性比较高,然而事实是a与b一点也不相似。

针对上述问题,需要进行改进。

发明内容

本申请实施例的目的在于提供一种KRFPV算法、执行装置、电子设备、存储介质以及神经网络,具有对智能体进行动作规划,同时减小对不同行动之间相似性的评估误差的优点。

第一方面,本申请实施例提供了一种KRFPV算法,技术方案如下:

初始化神经网络的参数、数据池以及环境,所述神经网络包括特征网络模块、策略网络模块以及价值网络模块;

获取智能体在与所述环境发生交互后t时刻所处的状态

将所述

若判断为否,则从KR-FPV-UCT算法中得到

执行最优行动

将所述

根据所述s

若判断为是,则根据所述数据池中的数据训练所述神经网络得到新的参数;

将更新后的神经网络替换掉原有的神经网络;

判断所述智能体与环境的交互次数,如果没有达到预设值则初始化环境并继续执行上述步骤,如果达到预设值则结束。

进一步地,在本申请实施例中,所述若判断为否,则从KR-FPV-UCT算法中得到

根据所述状态

根据子节点选择策略从所述根节点R递归地选择叶子节点L;

对所述叶子节点L进行判断,若所述叶子节点

根据所述价值网络模块对新的叶子节点进行评估,得到所述叶子节点L的价值

根据所述叶子节点更新从所述叶子节点L到所述根节点R路径及兄弟节点的信息、每个路径上节点所对应的状态价值、每个路径上的边所对应的动作的访问次数加一;

从所述根节点R中选择最优行动

进一步地,在本申请实施例中,所述根据所述根节点R选择叶子节点L的公式为:

进一步地,在本申请实施例中,所述若所述叶子节点L已经被充分访问,向所述叶子节点L的行动集合中添加新的行动的步骤包括:

若所述行动与所述叶子节点L的行动集合中最好的行动相似,同时所述行动不能很好被所述行动集合代表,即所述行动与原来所述行动集合中的行动之间的相似度低于预设值,则将所述行动作为新行动添加到所述子节点L的行动集合中。

进一步地,在本申请实施例中,若所述行动与所述叶子节点L的行动集合中最好的行动相似,同时所述行动不能很好被所述叶子节点L的行动集合代表,即所述行动与原来所述行动集合中的行动之间的相似度低于预设值,则将所述行动作为新行动添加到所述叶子节点L的行动集合中的筛选公式为:

进一步地,在本申请实施例中,所述从所述根节点R中选择最优行动

进一步地,本申请还提供一种KRFPV算法执行装置,包括:

第一获取模块,用于获取智能体在与所述环境发生交互后t时刻所处的状态

第一判断模块,用于将所述

第二处理模块,若判断为否,用于从KR-FPV-UCT算法中得到

执行最优行动

将所述

根据所述s

第三处理模块,若判断为是,用于根据所述数据池中的数据训练所述神经网络得到新的参数;

将更新后的神经网络替换掉KR-FPV-UCT中的神经网络;

第二判断模块,用于判断所述智能体与环境的交互次数,如果没有达到预设值则初始化环境并继续执行上述步骤,如果达到预设值则结束。

进一步地,本申请实施例还提供一种电子设备,所述包括处理器以及存储器,所述存储器存储有计算机可读取指令,当所述计算机可读取指令由所述处理器执行时,运行如上所述的算法。

进一步地,本申请实施例还提供一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时运行如上所述的算法。

进一步地,本申请实施例中还提供一种神经网络,包括:

策略网络模块,包括第一输入层、用于接收所述第一输入层信息的第一隐藏层、用于接收所述第一隐藏层信息的第二隐藏层、用于接收所述第二隐藏层信息的第一输出层,所述策略网络模块用于输入状态

价值网络模块,包括用于接收所述第二隐藏层信息的第二输出层,所述价值网络模块共享所述策略网络模块的所述第一输入层、第一隐藏层以及第二隐藏层,所述价值网络模块用于输入状态

特征网络模块,包括第二输入层、用于接收所述第二输入层信息的状态部分、用于接收所述状态部分信息的行动部分、用于接收所述行动部分信息的特征层、用于接收所述特征层信息的第三输出层,所述特征网络模块用于输入行动

由上可知,本申请实施例提供的一种KRFPV算法、执行装置、电子设备、存储介质以及神经网络,利用训练策略网络和价值网络的同时,训练一个特征网络,随后利用特征网络的中间层作为行动的特征用于行动之间相似性的计算,具有对智能体进行动作规划,同时降低KRPV算法中对不同行动之间相似性的估计误差的有益效果。

附图说明

图1为本申请实施例提供的一种KRFPV算法流程图。

图2为本申请实施例提供的一种KR-FPV-UCT算法流程图。

图3为本申请实施例提供的一种KRFPV算法执行装置结构示意图。

图4为本申请实施例提供的一种神经网络结构示意图。

图5为本申请实施例提供的一种电子设备示意图。

图6为符号函数y=sgn(x)的图像。

图中:110、第一处理模块;120、第一获取模块;130、第一判断模块;140、第二处理模块;150、第三处理模块;160、第二判断模块;210、第一输入层;220、第一隐藏层;230、第二隐藏层;240、第一输出层;241、第二输出层;250、第二输入层;260、状态部分;270、行动部分;280、特征层;290、第三输出层。

具体实施方式

下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

请参照图1至图5,一种KRFPV算法,其技术方案具体包括:

初始化神经网络的参数、数据池以及环境,神经网络包括特征网络模块、策略网络模块以及价值网络模块;其中,神经网络的参数分别为特征网络模块、策略网络模块以及价值网络模块的参数,初始化神经网络的参数的目的是使神经网络的参数随机化,提高神经网络训练的效率;初始化数据池的目的是使数据池准备好接收数据;环境指的是需要完成的任务,初始化环境的目的是确定智能体待完成的任务,确保智能体可以与之顺利交互。

获取智能体在与环境发生交互后t时刻所处的状态

若判断为否,则从KR-FPV-UCT算法中得到

执行最优行动

根据s

若判断为是,则根据数据池中的数据训练神经网络得到新的参数;

将更新后的神经网络替换掉原有的神经网络;

判断智能体与环境的交互次数,如果没有达到预设值则初始化环境并继续执行上述步骤,如果达到预设值则结束。

通过上述技术方案,以特征网络模块、策略网络模块以及价值网络模块构建的神经网络为基础,结合KR-FPV-UCT得到了KRFPV算法,通过对当前智能体的状态

在其中一些实施例中,若判断为否,则从KR-FPV-UCT算法结合使用神经网络和KR-UCT算法得到

根据状态

根据子节点选择策略从根节点R递归地选择叶子节点L;

对叶子节点L进行判断,若叶子节点

根据价值网络模块对新的叶子节点进行评估,得到叶子节点L的价值

根据叶子节点L更新从叶子节点L到根节点R路径及兄弟节点的信息、每个路径上节点所对应的状态价值、每个路径上的边所对应的动作的访问次数加一;

从根节点R中选择最优行动

通过上述技术方案,在现有的KR-PV-UCT下,结合特征网络模块得到了KR-FPV-UCT,KR-FPV-UCT的模拟与现有KR-PV-UCT的过程相比存在许多不同,参照图2所示,KR-FPV-UCT的模拟过程分别是选择过程、扩展过程、评估过程、反向传播过程以及最终选择过程,具体的:

选择过程:每次模拟从根节点

其中,其中

扩展过程:当叶子节点

评估过程:当扩展过程完成后,我们使用价值网络模块对新的叶子节点进行评估,评估叶子节点L的价值

反向传播过程:根据对新叶子节点的价值评估和方程

最终选择过程:在经过充分的模拟之后,即模拟次数达到预设值后,KR-FPV-UCT从根节点R中选择最优行动

进一步地,本申请还提供一种KRFPV算法执行装置,包括:

第一处理模块110,用于初始化神经网络的参数、数据池以及环境,神经网络包括特征网络模块、策略网络模块以及价值网络模块;

第一获取模块120,用于获取智能体在与环境发生交互后t时刻所处的状态

第一判断模块130,用于将

第二处理模块140,若判断为否,用于从KR-FPV-UCT算法中得到

执行最优行动

根据s

第三处理模块150,若判断为是,用于根据数据池中的数据训练神经网络得到新的参数;

将更新后的神经网络替换掉KR-FPV-UCT中的神经网络;

第二判断模块160,用于判断智能体与环境的交互次数,如果没有达到预设值则初始化环境并继续执行上述步骤,如果达到预设值则结束。

通过上述技术方案,第一处理模块110对神经网络的参数进行初始化,使运行环境回到初始设定,然后通过第一获取模块120获取状态

当判断为否的时候,第二处理模块140,从KR-FPV-UCT算法结合使用神经网络和KR-UCT算法得到

当判断为是的时候,第三处理模块150根据所述数据池中的数据训练所述神经网络得到新的参数;然后将更新后的神经网络替换掉KR-FPV-UCT中的神经网络;

最后,第二判断模块160,判断所述智能体与环境的交互次数,如果没有达到预设值则初始化环境并继续执行上述步骤,如果达到预设值则结束。

以特征网络模块、策略网络模块以及价值网络模块构件的神经网络为基础,结合KR-FPV-UCT得到了KRFPV算法,通过对当前智能体的状态来进行蒙特卡罗模拟,在这个过程中还会保存智能体与环境的交互信息,使用这些信息剪枝了蒙特卡罗树搜索的过程,从而加快蒙特卡罗树搜索的效率,并且,在这之中还使用了特征网络来用于行动之间的相似性计算,降低了现有KRPV算法中对不同行动之间相似性的估计误差,因此,不仅使得蒙特卡罗树搜索可以在有限的时间内从高维的连续行动空间找出最佳的行动,大幅提升了KR-UCT在高维连续行动空间的性能,还减少相似性的评估误差,提高了智能体行动规划的准确度。

进一步地,本申请实施例还提供一种电子设备,包括处理器以及存储器,存储器存储有计算机可读取指令,当计算机可读取指令由所述处理器执行时,运行上述算法。

通过上述技术方案,处理器和存储器通过通信总线和/或其他形式的连接机构(未标出)互连并相互通讯,存储器存储有处理器可执行的计算机程序,当计算设备运行时,处理器310执行该计算机程序,以执行时执行上述实施例的任一可选的实现方式中的方法,以实现以下功能:初始化神经网络的参数、数据池以及环境,神经网络包括特征网络模块、策略网络模块以及价值网络模块;

获取智能体在与环境发生交互后t时刻所处的状态

若判断为否,则从KR-FPV-UCT算法结合使用神经网络和KR-UCT算法得到

执行最优行动

根据s

若判断为是,则根据数据池中的数据训练神经网络得到新的参数;

将更新后的神经网络替换掉原有的神经网络;

判断智能体与环境的交互次数,如果没有达到预设值则初始化环境并继续执行上述步骤,如果达到预设值则结束。

进一步地,本申请实施例还提供一种存储介质,其上存储有计算机程序,计算机程序被处理器执行时运行上述算法。

通过上述技术方案,计算机程序被处理器执行时,执行上述实施例的任一可选的实现方式中的方法,以实现以下功能:

初始化神经网络的参数、数据池以及环境,神经网络包括特征网络模块、策略网络模块以及价值网络模块;

获取智能体在与环境发生交互后t时刻所处的状态

若判断为否,则从KR-FPV-UCT算法结合使用神经网络和KR-UCT算法得到

执行最优行动

根据s

若判断为是,则根据数据池中的数据训练神经网络得到新的参数;

将更新后的神经网络替换掉原有的神经网络;

判断智能体与环境的交互次数,如果没有达到预设值则初始化环境并继续执行上述步骤,如果达到预设值则结束。

其中,存储介质可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random Access Memory, 简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory, 简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read Only Memory, 简称EPROM),可编程只读存储器(Programmable Red-Only Memory, 简称PROM),只读存储器(Read-OnlyMemory, 简称ROM),磁存储器,快闪存储器,磁盘或光盘。

进一步地,本申请实施例中还提供一种神经网络,包括:

策略网络模块,包括第一输入层210、用于接收第一输入层210信息的第一隐藏层220、用于接收所述第一隐藏层220信息的第二隐藏层230、用于接收第二隐藏层230信息的第一输出层240,策略网络模块用于输入状态

价值网络模块,包括用于接收所述第二隐藏层230信息的第二输出层241,价值网络模块共享策略网络模块的第一输入层210、第一隐藏层220以及第二隐藏层230,价值网络模块用于输入状态

特征网络模块,包括第二输入层250、用于接收第二输入层250信息的状态部分260、用于接收所述状态部分260信息的行动部分270、用于接收行动部分270信息的特征层280、用于接收特征层280信息的第三输出层,特征网络模块用于输入行动

通过上述技术方案,训练一个包括状态部分260和行动部分270的特征网络模块,其中,状态部分260与价值网络模块的相同并互相共享参数,行动部分270与状态部分260的结构相同,在一些具体实施方式中,状态部分260与行动部分270分别具有128个神经元,然后利用一个具有128个神经元的特征层280对状态部分260以及行动部分270进行汇总,输出层具有一个神经元,通过输出层的最后一个神经元输出对状态

在其中一些实施例中,特征网络模块的训练公式为

策略网络模块的训练公式为

价值网络模块的训练公式为

整个神经网络的训练公式为:

通过上述技术方案,对特征网络模块进行训练,通过不断的训练和迭代,使其计算结果越接近真实值。

在其中一些实施例中,特征网络模块的相似性计算公式为

通过上述技术方案,利用特征网络模块作为行动的特征用于相似性计算,由于传统的于KR-UCT算法主要将核函数用于行动价值的估计,因此可以得出了以下的思路,即如果在某一状态下两个行动的价值很相近,那么在这一状态下这两个行动也很相似,因此在本申请所记载的方案中,利用特征网络模块作为行动的特征用于相似性计算,进而减小对不同行动之间相似性的评估误差。

以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

相关技术
  • KRFPV算法、执行装置、电子设备、存储介质以及神经网络
  • 指令执行方法、指令执行装置、电子设备及存储介质
技术分类

06120112792178