网络训练、机器人控制方法及装置、设备及存储介质与流程

文档序号:29814205发布日期:2022-04-27 09:23阅读:77来源:国知局
网络训练、机器人控制方法及装置、设备及存储介质与流程

1.本公开涉及计算机技术领域,具体而言,涉及一种网络训练、机器人控制方法及装置、设备及存储介质。


背景技术:

2.目前,深度强化学习集成了深度学习在视觉等感知问题上强大的理解能力,以及强化学习的决策能力,使现实场景中的一些复杂问题得以解决。
3.以机器人控制为例,利用强化学习的决策能力,能够帮助机器人自适应的根据周围的环境信息来调整所输出的动作,且每进行一次环境交互,可以控制机器人执行一个对应的动作,随着环境交互次数的增加,所执行的动作也更为准确、更为符合场景需要。
4.然而,对于一些诸如控制机器人执行一组连续动作等较为复杂的控制场景中,上述强化学习方法所对应的控制性能不佳。


技术实现要素:

5.本公开实施例至少提供一种网络训练、机器人控制方法及装置、设备及存储介质。
6.第一方面,本公开实施例提供了一种网络训练方法,包括:
7.获取在目标应用场景下的环境状态信息;
8.根据所述环境状态信息和预训练的强化学习网络得到动作序列信息,并确定所述动作序列信息对应的回报奖励总值,所述动作序列信息用于指示未来预设时长内至少两个连续的执行动作;
9.基于所述回报奖励总值对所述强化学习网络的网络参数值进行调整,得到训练好的强化学习网络;其中,所述训练好的强化学习网络用于获取对目标对象进行连续控制的目标动作序列,所述目标动作序列对应的回报奖励总值大于预设阈值。
10.采用上述网络训练方法,可以基于回报奖励总值对所述强化学习网络的网络参数值进行调整。由于生成的回报奖励总值综合评估了至少两个连续的执行动作之间的动作关系,这样经由回报奖励总值所调整后的强化学习网络能够更好的适应于动作序列的生成,这样,随着强化学习网络的调整,所生成的动作序列也越来越好。在将训练好的强化学习网络应用到诸如需要进行连续控制等复杂场景的情况下,也可以具有较好的控制性能。
11.一种可选的实施方式中,所述确定所述动作序列信息对应的回报奖励总值,包括:
12.将所述动作序列信息作用于所述目标应用场景,得到与所述动作序列信息对应的环境状态序列信息以及回报奖励值集合;所述回报奖励值集合包括顺序执行所述至少两个连续的执行动作的情况下、每个执行动作分别对应的回报奖励值;
13.基于所述环境状态序列信息以及所述回报奖励值集合,得到所述回报奖励总值。
14.该实施方式中,在每个执行动作的执行下,可以改变对应的环境状态,而改变的环境状态可以反过来作用于下一个执行动作的生成,依次循环。在环境和动作的交互下,由至少两个动作和与动作对应的环境状态所构成的动作序列信息以及对应的环境状态序列信
息可以使得所生成的回报奖励值总值综合考虑各个动作与各个状态之间的交互关系,这使得后续进行网络调整的准确性较高。
15.一种可选的实施方式中,所述基于所述环境状态序列信息以及所述回报奖励值集合,得到所述回报奖励总值,包括:
16.针对所述至少两个连续的执行动作包括的每个执行动作,从所述环境状态序列信息以及所述回报奖励值集合中,分别确定与所述执行动作对应的环境状态以及在执行所述执行动作的情况下,产生的回报奖励值;并基于所述回报奖励值以及在所述环境状态下的环境影响值,确定针对所述执行动作的回报奖励和值;
17.基于每个执行动作分别确定的回报奖励和值,确定所述回报奖励总值。
18.该实施方式中,针对每个执行动作可以基于对应的回报奖励值以及环境影响值确定对应的回报奖励和值,该回报奖励和值的高低一定程度上可以评估这个执行动作的好坏。除此之外,考虑到当前执行动作的好坏会进一步影响下一个环境状态及其对应的下一个执行动作,也即,整个动作序列所包括的多个连续的执行动作之间相互影响,在相互影响下,由确定的各个回报奖励和值所对应的回报奖励总值可以确定出更为准确的下一个动作序列,从而可以实现越来越好的控制性能。
19.一种可选的实施方式中,所述基于每个执行动作分别确定的回报奖励和值,确定所述回报奖励总值,包括:
20.获取为每个执行动作分别赋予的动作权重值;
21.基于每个执行动作分别确定的回报奖励和值、以及每个动作分别赋予的动作权重值,确定所述回报奖励总值。
22.该实施方式中,利用动作权重值确定回报奖励和值。这样在确定回报奖励总值时,考虑了不同执行动作的影响程度,确定出来的回报奖励总值更为符合实际场景的需求。
23.一种可选的实施方式中,所述动作序列信息用于指示未来预设时长内n个连续的执行动作,n为大于或等于2的整数,所述根据所述环境状态信息和预训练的强化学习网络得到动作序列信息,包括:
24.根据所述预训练的强化学习网络、所述目标应用场景第n-1时刻的环境状态确定第n个执行动作,n为整数,且0<n≤n;
25.其中,在n为1时,所述目标应用场景第n-1时刻的环境状态根据所述环境状态信息确定;在1<n≤n时,所述目标应用场景第n-1时刻的环境状态根据所述目标应用场景第n-2时刻的环境状态和第n-1个执行动作确定。
26.该实施方式中,在确定动作序列信息时,考虑了各环境状态与各执行动作的相互影响,这样确定出来的各执行动作可以更好地与环境相适应。
27.一种可选的实施方式中,所述基于所述回报奖励总值对所述强化学习网络的网络参数值进行调整,得到训练好的强化学习网络,包括:
28.循环执行以下步骤,直至所述训练好的强化学习网络输出的目标动作序列对应的回报奖励总值大于预设阈值;
29.基于所述回报奖励总值对所述强化学习网络的网络参数值进行调整,得到调整后的强化学习网络;以及,将所述动作序列信息作用于所述目标应用场景,得到与所述动作序列信息对应的环境状态序列信息;
30.将所述环境状态序列信息包括的最后一个环境状态信息输入到调整后的强化学习网络,得到所述强化学习网络输出的用于执行未来预设时长内多个连续的执行动作的动作序列信息、以及在执行所述动作序列信息的情况下,产生的回报奖励总值。
31.该实施方式中,通过多轮次的网络训练,可以使得强化学习网络输出的动作序列信息能够越来越贴近实际场景的需要,这样所输出的动作序列为确保精准的连续控制提供了依据。
32.第二方面,本公开实施例提供了一种机器人控制方法,包括:
33.获取目标机器人所处的当前环境状态信息;
34.将所述当前环境状态信息输入到利用第一方面中任一所述的网络训练方法所训练好的强化学习网络,得到用于对所述目标机器人进行连续控制的目标动作序列。
35.采用上述机器人控制方法,能够利用训练好的强化学习网络对机器人进行快速且准确的连续控制,控制性能更佳。
36.一种可选的实施方式中,所述方法还包括:
37.在接收到所述目标机器人发送的针对所述目标动作序列包括的当前执行动作的执行成功指令的情况下,向所述目标机器人下发用于执行所述当前执行动作的下一个执行动作的动作指令。
38.该实施方式中,为了尽可能的降低指令混乱对目标机器人带来的不良影响,这里可以在上一个执行动作执行成功的情况下,再向机器人下发执行下一个执行动作的指令,确保机器人控制的稳定性。
39.第三方面,本公开实施例还提供一种网络训练装置,包括:
40.获取模块,用于获取在目标应用场景下的环境状态信息;
41.训练模块,用于根据所述环境状态信息和预训练的强化学习网络得到动作序列信息,并确定所述动作序列信息对应的回报奖励总值,所述动作序列信息用于指示未来预设时长内至少两个连续的执行动作;
42.调整模块,用于基于所述回报奖励总值对所述强化学习网络的网络参数值进行调整,得到训练好的强化学习网络;其中,所述训练好的强化学习网络用于获取对目标对象进行连续控制的目标动作序列,所述目标动作序列对应的回报奖励总值大于预设阈值。
43.一种可选的实施方式中,所述训练模块,用于按照如下步骤确定所述动作序列信息对应的回报奖励总值:
44.将所述动作序列信息作用于所述目标应用场景,得到与所述动作序列信息对应的环境状态序列信息以及回报奖励值集合;所述回报奖励值集合包括顺序执行所述至少两个连续的执行动作的情况下、每个执行动作分别对应的回报奖励值;
45.基于所述环境状态序列信息以及所述回报奖励值集合,得到所述回报奖励总值。
46.一种可选的实施方式中,所述训练模块,用于按照如下步骤基于所述环境状态序列信息以及所述回报奖励值集合,得到所述回报奖励总值:
47.针对所述至少两个连续的执行动作包括的每个执行动作,从所述环境状态序列信息以及所述回报奖励值集合中,分别确定与所述执行动作对应的环境状态以及在执行所述执行动作的情况下,产生的回报奖励值;并基于所述回报奖励值以及在所述环境状态下的环境影响值,确定针对所述执行动作的回报奖励和值;
48.基于每个执行动作分别确定的回报奖励和值,确定所述回报奖励总值。
49.一种可选的实施方式中,所述训练模块,用于按照如下步骤基于每个执行动作分别确定的回报奖励和值,确定所述回报奖励总值:
50.获取为每个执行动作分别赋予的动作权重值;
51.基于每个执行动作分别确定的回报奖励和值、以及每个执行动作分别赋予的动作权重值,确定所述回报奖励总值。
52.一种可选的实施方式中,所述动作序列信息用于指示未来预设时长内n个连续的执行动作,n为大于或等于2的整数,所述训练模块,用于按照如下步骤根据所述环境状态信息和预训练的强化学习网络得到动作序列信息:
53.根据所述预训练的强化学习网络、所述目标应用场景第n-1时刻的环境状态确定第n个执行动作,n为整数,且0<n≤n;
54.其中,在n为1时,所述目标应用场景第n-1时刻的环境状态根据所述环境状态信息确定;在1<n≤n时,所述目标应用场景第n-1时刻的环境状态根据所述目标应用场景第n-2时刻的环境状态和第n-1个执行动作确定。
55.一种可选的实施方式中,所述调整模块,用于按照如下步骤基于所述回报奖励总值对所述强化学习网络的网络参数值进行调整,得到训练好的强化学习网络:
56.循环执行以下步骤,直至所述训练好的强化学习网络输出的目标动作序列对应的回报奖励总值大于预设阈值;
57.基于所述回报奖励总值对所述强化学习网络的网络参数值进行调整,得到调整后的强化学习网络;以及,将所述动作序列信息作用于所述目标应用场景,得到与所述动作序列信息对应的环境状态序列信息;
58.将所述环境状态序列信息包括的最后一个环境状态信息输入到调整后的强化学习网络,得到所述强化学习网络输出的用于执行未来预设时长内多个连续的执行动作的动作序列信息、以及在执行所述动作序列信息的情况下,产生的回报奖励总值。
59.第四方面,本公开实施例还提供一种机器人控制装置,包括:
60.获取模块,用于获取目标机器人所处的当前环境状态信息;
61.控制模块,用于将所述当前环境状态信息输入到利用第一方面中任一所述的网络训练方法所训练好的强化学习网络,得到用于对所述目标机器人进行连续控制的目标动作序列。
62.一种可选的实施方式中,所述装置还包括:
63.发送模块,用于在接收到所述目标机器人发送的针对所述目标动作序列包括的当前执行动作的执行成功指令的情况下,向所述目标机器人下发用于执行所述当前执行动作的下一个执行动作的动作指令。
64.第五方面,本公开实施例还提供一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤,或者上述第二方面,或第二方面中任一种可能的实施方式中的步骤。
65.第六方面,本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介
质上存储有计算机程序,该计算机程序被处理器运行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤,或者上述第二方面,或第二方面中任一种可能的实施方式中的步骤。
66.关于上述网络训练装置、机器人控制装置、电子设备、及计算机可读存储介质的效果描述参见上述网络训练方法、机器人控制方法的说明,这里不再赘述。
67.为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
68.为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
69.图1示出了本公开实施例所提供的一种网络训练方法的流程图;
70.图2示出了本公开实施例所提供的网络训练方法中,确定回报奖励总值的具体方法的流程图;
71.图3示出了本公开实施例所提供的一种机器人控制方法的流程图;
72.图4示出了本公开实施例所提供的一种网络训练装置的示意图;
73.图5示出了本公开实施例所提供的一种机器人控制装置的架构示意图;
74.图6示出了本公开实施例所提供的一种电子设备的结构示意图。
具体实施方式
75.为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
76.经研究发现,目前,深度强化学习集成了深度学习在视觉等感知问题上强大的理解能力,以及强化学习的决策能力,使现实场景中的一些复杂问题得以解决。以机器人控制为例,利用强化学习的决策能力,能够帮助机器人自适应的根据周围的环境信息来调整所输出的动作,且每进行一次环境交互,可以控制机器人执行一个对应的动作,随着环境交互次数的增加,所执行的动作也更为准确、更为符合场景需要。
77.然而,对于一些诸如控制机器人执行一组连续动作等较为复杂的控制场景中,上述强化学习方法所对应的控制性能不佳。
78.基于上述研究,本公开提供了一种网络训练、机器人控制方法及装置、设备及存储介质,网络训练性能较佳,从而能够很好的应用到到诸如需要对机器人进行连续控制等复
杂场景,具有较佳的控制性能。
79.针对以上方案所存在的缺陷,均是发明人在经过实践并仔细研究后得出的结果,因此,上述问题的发现过程以及下文中本公开针对上述问题所提出的解决方案,都应该是发明人在本公开过程中对本公开做出的贡献。
80.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
81.为便于对本实施例进行理解,首先对本公开实施例所公开的一种网络训练方法进行详细介绍,本公开实施例所提供的网络训练方法的执行主体一般为具有一定计算能力的电子设备,该电子设备例如包括:终端设备或服务器或其它处理设备,终端设备可以为用户设备(user equipment,ue)、移动设备、用户终端,还可以是诸如工业机器人、移动服务机器人等各类机器人。在一些可能的实现方式中,该网络训练方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。
82.下面以执行主体为机器人为例对本公开实施例提供的网络训练方法加以说明。
83.参见图1所示,为本公开实施例提供的网络训练方法的流程图,方法包括步骤s101~s103,其中:
84.s101、获取在目标应用场景下的环境状态信息;
85.s102、根据环境状态信息和预训练的强化学习网络得到动作序列信息,并确定动作序列信息对应的回报奖励总值,动作序列信息用于指示未来预设时长内至少两个连续的执行动作;
86.s103、基于回报奖励总值对强化学习网络的网络参数值进行调整,得到训练好的强化学习网络;其中,训练好的强化学习网络用于获取对目标对象进行连续控制的目标动作序列,目标动作序列对应的回报奖励总值大于预设阈值。
87.为了便于理解本公开实施例提供的网络训练方法,接下来首先对该方法的应用场景进行简单说明。上述网络训练方法主要可以应用于机器人控制领域,尤其适应于诸如机器人连续控制等复杂场景下的控制。这里,利用训练好的强化学习网络可以很好的对机器人进行连续控制,例如,可以控制机器人执行包括移动到位置a,抓取目标物品,将物品运动到位置b这样一系列执行动作,控制性能较佳。
88.需要说明的是,本公开实施例不仅可以应用于上述机器人控制领域,还可以应用于其它需要进行连续控制的决策智能技术领域,在此不做具体的限制。考虑到机器人技术的广泛应用,接下来多以机器人控制应用场景进行示例说明。
89.本公开实施例中的目标应用场景可以是与连续控制相关的各种应用场景。以机器人控制为例,不同机器人所对应的应用场景也不同,例如,可以是有关搬运机器人执行货物搬运的场景,还可以是安抚机器人执行拥抱、轻抚等相关场景,这里不做具体的限制。
90.为了更好的进行强化学习网络的训练,这里预先可以获取在目标应用场景下的环境状态,随着环境状态的更新,强化学习网络所能控制执行的动作也将发生变化,该变化又可以作用于整个环境而使得环境状态发生变化,依次循环,在训练强化学习网络的过程中,环境也随之发生变化。
91.这里,为了实现相关连续控制,基于获取的环境状态信息可以确定强化学习网络输出的是有关动作序列信息,该动作序列信息针对的是未来预设时长内多个连续的执行动
作。随着环境状态的变化,多个连续动作之间相互影响,这样所确定的回报奖励总值即可以评估包括多个连续动作的动作序列的好坏,回报奖励总值越高,一定程度上说明所输出的动作序列比较符合环境需求,后续可以增强此类动作序列的指导作用,反之,回报奖励总值越低,一定程度上说明所输出的动作序列并不太符合环境需求,后续可以减弱此类动作序列的指导作用。
92.这里,基于回报奖励总值可以对强化学习网络执行一次或多次调整,经过多次调整之后,可以使得所输出的目标动作序列能够获得较大的回报奖励总值,这样,在将训练好的强化学习网络组再应用到具体的机器人控制等相关控制领域的情况下,即可以实现较佳的连续控制性能。
93.需要说明的是,本公开实施例在基于回报奖励总值对强化学习网络的网络参数值进行调整的过程中,针对的是整个动作序列中各个动作的优化,各个动作之间又相互影响,最终使得所确定的动作序列更为符合实际的环境需求,适用性更强。
94.这里的回报奖励总值综合考虑了各执行动作对应的回报奖励值以及与执行动作相关的环境状态,具体可以通过如下步骤进一步进行说明:
95.步骤一、将动作序列信息作用于目标应用场景,得到与动作序列信息对应的环境状态序列信息以及回报奖励值集合;回报奖励值集合包括顺序执行至少两个连续的执行动作的情况下、每个执行动作分别对应的回报奖励值;
96.步骤二、基于环境状态序列信息以及回报奖励值集合,得到回报奖励总值。
97.本公开实施例中的动作序列信息可根据预训练的强化学习网络对起始的环境状态信息进行连续的动作预测来确定,用于指示未来预设时长内n个连续的执行动作,n为大于或等于2的整数。
98.在实际应用中,当前时刻的执行动作可以是由预训练的强化学习网络、目标应用场景上一个时刻的环境状态确定,也即,这里可以根据强化学习网络、目标应用场景第n-1时刻的环境状态确定第n个执行动作,其中,n为整数,且0<n≤n。
99.在n为1时,目标应用场景第n-1时刻的环境状态根据环境状态信息确定;在1<n≤n时,目标应用场景第n-1时刻的环境状态根据目标应用场景第n-2时刻的环境状态和第n-1个执行动作确定。
100.在实际应用中,可以将当前环境状态输入强化学习网络,强化学习网络输出一个执行动作;然后在执行当前执行动作的情况下,得到下一个环境状态;而后将该环境状态输入强化学习网络,强化学习网络输出下一个执行动作,循环上述过程,便可得到多个连续的执行动作,这些连续的执行动作构成一个动作序列信息。
101.这里,执行动作可以改变环境状态,改变的环境状态也可以反过来作用于下一个执行动作的生成,也即,基于动作执行可以得到对应的多个环境状态,即可以构成一个环境状态序列信息。
102.针对不同的执行动作可以确定不同的回报奖励值,各个执行动作所对应的回报奖励值可组合得到回报奖励值集合。
103.在实际应用中,本公开实施例可以采用soft actor-critic(sac)这一强化学习算法实现上述有关动作序列的优化。这里的sac主要包括环境模型、用于进行动作预测的动作网络。在实际应用中,可以利用actor和环境的交互得到的真实样本,周期性地训练环境模
型。其中样本的定义为四元组(s_t,a_t,r_t+1,s_t+1),分别对应的是当前环境状态信息、在当前环境状态信息下确定的执行动作、执行动作所带来的回报奖励值以及下一个环境状态,环境模型学习的是(s_t,a_t)到(r_t+1,s_t+1)的映射。
104.除此之外,还可以周期性地利用环境模型预测假想样本。也即,在确定每个输出的执行动作的过程中,将采样到的真实样本中的状态s_t输入当前策略中,根据当前策略采样可以得到动作a_t。在将(s_t,a_t)输入环境模型得到(r_t+1,s_t+1)的情况下,构成四元组假想样本(s_t,a_t,r_t+1,s_t+1)。
105.在本公开实施例中,随着环境模型的训练,动作网络随之可以训练。在训练动作网络的过程中,使用环境模型预测未来h个时刻在当前策略采样的动作序列a_t,
……
,a_t+h-1下的环境状态序列s_t+1,
……
,s_t+h,以及回报奖励集合r_t+1,
……
,r_t+h。而后,可以基于a_t,
……
,a_t+h-1,s_t+h,和r_t+1,
……
,r_t+h得到优化目标(对应回报奖励总值),用来优化动作序列a_t,
……
,a_t+h-1指示的每一个执行动作。
106.这里,在得到环境状态序列信息以及回报奖励值集合之后,可按照如图2所示的步骤得到回报奖励总值:
107.s201、针对至少两个连续的执行动作包括的每个执行动作,从环境状态序列信息以及回报奖励值集合中,分别确定与执行动作对应的环境状态以及在执行执行动作的情况下,产生的回报奖励值;并基于回报奖励值以及在环境状态下的环境影响值,确定针对执行动作的回报奖励和值;
108.s202、基于每个执行动作分别确定的回报奖励和值,确定回报奖励总值。
109.这里,针对每个执行动作,可以基于该执行动作对应的回报奖励值以及在环境状态下的环境影响值共同确定对应的回报奖励和值,以更好的评估执行动作的好坏程度。
110.其中,上述回报奖励和值可由以下计算公式计算得到:
111.r
t+1
=r
t+1
+e
t
112.其中,e
t
=-alpha*log(p(a_t|s_t)),用于表示t时刻的环境影响值,r
t+1
表示t+1时刻的回报奖励和值,r
t+1
表示t+1时刻的回报奖励值。
113.由上述公式可知,当前时刻的回报奖励和值是由当前时刻的回报奖励值与上一时刻的环境影响值相加得到的。在回报奖励值以及环境影响值的共同作用下,使得所确定的执行动作的回报奖励和值更趋近于评价对应的执行动作,进一步使得动作序列得以优化。
114.在实际应用中,考虑到不同的执行动作对于整个动作序列的影响程度并不相同,也即,在一整个动作序列中,有的动作执行不够准确不足以影响整个动作序列的准确度,而有的执行动作不够准确则足以影响整个动作序列的准确度,因而,为了进一步实现动作序列的优化,这里,可以为每个执行动作分别赋予动作权重值,并基于各回报奖励和值以及动作权重值,得到回报奖励总值,这样得到的回报奖励总值能够考虑各执行动作对回报奖励的影响程度,更为符合实际场景的需求。
115.本公开实施例中,具体可按照以下公式计算从当前t时刻到未来h个时刻的多个连续执行动作对应的回报奖励总值:
116.r

=w0r
t+1
+w1r
t+2
+w2r
t+3
+

+w
h-1rt+h-1
+v
t+h
117.上述公式中,r

表示从当前t时刻到未来h个时刻的多个连续执行动作对应的回报奖励总值,r
t+1
,r
t+2
,r
t+3


,r
t+h-1
分别表示t+1,t+2,t+3,

,t+h-1时刻的回报奖励和值,
w0,w1,w2,w
h-1
分别表示各动作对应的权重值,v
t+h
表示t+h时刻环境状态的价值。
118.上述公式中,在对各回报奖励和值进行加权求和的基础上,添加了t+h时刻环境状态的价值,环境状态的价值越大,说明基于该状态预测出的执行动作更准确。
119.在得到回报奖励总值后,可对强化学习网络的网络参数值进行调整,得到训练好的强化学习网络。在调整强化学习网络的过程中,可以循环执行以下步骤,直至训练好的强化学习网络输出的目标动作序列对应的回报奖励总值大于预设阈值。
120.步骤一、基于回报奖励总值对强化学习网络的网络参数值进行调整,得到调整后的强化学习网络;以及,将动作序列信息作用于目标应用场景,得到与动作序列信息对应的环境状态序列信息;
121.步骤二、将环境状态序列信息包括的最后一个环境状态信息输入到调整后的强化学习网络,得到强化学习网络输出的用于执行未来预设时长内多个连续的执行动作的动作序列信息、以及在执行动作序列信息的情况下,产生的回报奖励总值。
122.这里,在对强化学习网络进行调整时,可以基于回报奖励总值对强化学习网络的网络参数值进行调整,以输出对应回报奖励总值更大的动作序列。其中,将当前的环境状态信息输入到强化学习网络,强化学习网络可以针对输出的动作序列中的每个执行动作进行优化,也即,在当前输出的回报奖励总值比较小的情况下,说明当前执行的动作序列性能不佳,在下一次调整过程中,可以降低这类动作序列的生成概率,反之,在当前输出的回报奖励总值比较大的情况下,说明当前执行的动作序列性能较佳,在下一次调整过程中,可以增强这类动作序列的生成概率,依次训练,可以得到性能足够好的目标动作序列。
123.在实际应用中,除了循环基于环境状态序列信息包括的最后一个环境状态信息进行下一轮网络的调整,还可以直接从上述环境模型中得到的真实样本/假想样本中选取环境状态信息以进行下一轮网络的调整,这里不做具体的限制。
124.在一次调整过程中,动作序列内的每个执行动作均对应一个回报奖励值,同时,随着执行动作的进行,环境状态信息也会进行更新,将更新后的环境状态信息再输入到强化学习网络,强化学习网络输出一个新的执行动作,从而可以得到包括多个连续动作的动作序列信息。
125.这里,以在机器人行走场景进行示例说明。机器人在行走过程中,当前时刻的环境状态为s1(对应第一个环境状态),将s1输入网络,机器人执行抬起左脚的动作a1(对应第一个执行动作),得到该动作对应的回报奖励值r2(对应第一个执行动作的回报奖励)以及环境状态s2(对应第二个环境状态),将s2输入网络,机器人执行放下左脚的动作a2(对应第二个执行动作),得到该动作对应的回报奖励值r3(对应第二个执行动作的回报奖励)以及环境状态s3(对应第三个环境状态),将s3输入网络,机器人执行抬起右脚的动作a3(对应第三个执行动作),得到该动作对应的回报奖励值r4(对应第三个执行动作的回报奖励)以及环境状态s4(对应第四个环境状态),将s4输入网络,机器人执行放下右脚的动作a4(对应第四个执行动作),得到该动作对应的回报奖励值r5(对应第四个执行动作的回报奖励)以及环境状态s5(对应第五个环境状态)。
126.这里的a1,a2,a3,a4可构成一个动作序列信息,s1,s2,s3,s4,s5可构成一个环境状态序列信息,s1,s2,s3,s4,s5对应的环境影响值为e1,e2,e3,e4,e5。这里的s1会影响a1,a1又会影响s2,s2会影响a2,a2又会影响s3,s3会影响a3,a3又会影响s4,s4会影响a4,a4又会影响s5。
127.可知的是,各执行动作之间相互影响,通过各执行动作之间的相互影响,不断更新环境状态信息,这样,各执行动作能够更好地适应环境。将得到的各回报奖励值代入回报奖励总值的计算公式,可计算出回报奖励总值,若计算的回报奖励总值大于预设阈值,则表示动作序列信息可以更好地适应当前环境,可以通过增强该动作序列信息中各连续执行动作的执行概率,来对强化学习网络进行调整。
128.基于上述网络训练方法,本公开实施例还提供了一种机器人控制方法,参照图3所示,具体执行步骤为:
129.s301、获取目标机器人所处的当前环境状态信息;
130.s302、将当前环境状态信息输入到利用网络训练方法所训练好的强化学习网络,得到用于对目标机器人进行连续控制的目标动作序列。
131.这里的机器人控制方法通过利用上述网络训练方法训练好的强化学习网络来进行的,也即,将目标机器人所处的当前环境状态信息输入到训练好的强化学习网络,可以得到一整个目标动作序列。
132.其中,有关强化学习网络的训练过程可以参照前述内容,在此不做赘述。
133.在实际应用中,为了避免连续动作指令的下发对目标机器人所可能带来的不良影响,本公开实施例提供的机器人控制方法可以在每接收到当前执行动作的执行成功指令的情况下,才向目标机器人下发用于执行当前执行动作的下一个执行动作的动作指令,也即,每执行完一个动作,再下发下一个执行动作,从而在确保目标机器人可以按照预测的目标动作序列执行一系列连续动作的情况下,还可以控制各个动作的精准执行。
134.本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
135.基于同一发明构思,本公开实施例中还提供了与网络训练方法对应的网络训练装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述网络训练方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
136.参照图4所示,为本公开实施例提供的一种网络训练装置的架构示意图,该装置包括:获取模块401、训练模块402、调整模块403;其中,
137.获取模块401,用于获取在目标应用场景下的环境状态信息;
138.训练模块402,用于根据环境状态信息和预训练的强化学习网络得到动作序列信息,并确定动作序列信息对应的回报奖励总值,动作序列信息用于指示未来预设时长内至少两个连续的执行动作;
139.调整模块403,用于基于回报奖励总值对强化学习网络的网络参数值进行调整,得到训练好的强化学习网络;其中,训练好的强化学习网络用于获取对目标对象进行连续控制的目标动作序列,目标动作序列对应的回报奖励总值大于预设阈值。
140.本公开实施例可以基于回报奖励总值对强化学习网络的网络参数值进行调整。由于生成的回报奖励总值综合评估了至少两个连续的执行动作之间的动作关系,这样经由回报奖励总值所调整后的强化学习网络能够更好的适应于动作序列的生成,这样,随着强化学习网络的调整,所生成的动作序列也越来越好。在将训练好的强化学习网络应用到诸如需要进行连续控制等复杂场景的情况下,也可以具有较好的控制性能。
141.一种可选的实施方式中,训练模块402,用于按照如下步骤确定动作序列信息对应的回报奖励总值:
142.将动作序列信息作用于目标应用场景,得到与动作序列信息对应的环境状态序列信息以及回报奖励值集合;回报奖励值集合包括顺序执行至少两个连续的执行动作的情况下、每个执行动作分别对应的回报奖励值;
143.基于环境状态序列信息以及回报奖励值集合,得到回报奖励总值。
144.一种可选的实施方式中,训练模块402,用于按照如下步骤基于环境状态序列信息以及回报奖励值集合,得到回报奖励总值:
145.针对至少两个连续的执行动作包括的每个执行动作,从环境状态序列信息以及回报奖励值集合中,分别确定与执行动作对应的环境状态以及在执行执行动作的情况下,产生的回报奖励值;并基于回报奖励值以及在环境状态下的环境影响值,确定针对执行动作的回报奖励和值;
146.基于针每个执行动作分别确定的回报奖励和值,确定回报奖励总值。
147.一种可选的实施方式中,训练模块402,用于按照如下步骤基于每个执行动作分别确定的回报奖励和值,确定回报奖励总值:
148.获取为每个执行动作分别赋予的动作权重值;
149.基于每个执行动作分别确定的回报奖励和值、以及每个执行动作分别赋予的动作权重值,确定回报奖励总值。
150.一种可选的实施方式中,动作序列信息用于指示未来预设时长内n个连续的执行动作,n为大于或等于2的整数,训练模块402,用于按照如下步骤根据环境状态信息和预训练的强化学习网络得到动作序列信息:
151.根据预训练的强化学习网络、目标应用场景第n-1时刻的环境状态确定第n个执行动作,n为整数,且0<n≤n;
152.其中,在n为1时,目标应用场景第n-1时刻的环境状态根据环境状态信息确定;在1<n≤n时,目标应用场景第n-1时刻的环境状态根据目标应用场景第n-2时刻的环境状态和第n-1个执行动作确定。
153.一种可选的实施方式中,调整模块403,用于按照如下步骤基于回报奖励总值对强化学习网络的网络参数值进行调整,得到训练好的强化学习网络:
154.循环执行以下步骤,直至训练好的强化学习网络输出的目标动作序列对应的回报奖励总值大于预设阈值;
155.基于回报奖励总值对强化学习网络的网络参数值进行调整,得到调整后的强化学习网络;以及,将动作序列信息作用于目标应用场景,得到与动作序列信息对应的环境状态序列信息;
156.将环境状态序列信息包括的最后一个环境状态信息输入到调整后的强化学习网络,得到强化学习网络输出的用于执行未来预设时长内多个连续的执行动作的动作序列信息、以及在执行动作序列信息的情况下,产生的回报奖励总值。
157.关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。
158.基于同一发明构思,本公开实施例中还提供了与机器人控制方法对应的机器人控
制装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述机器人控制方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
159.参照图5所示,为本公开实施例提供的一种机器人控制装置的架构示意图,装置包括:获取模块501、控制模块502;其中,
160.获取模块501,用于获取目标机器人所处的当前环境状态信息;
161.控制模块502,用于将当前环境状态信息输入到利用上述网络训练方法所训练好的强化学习网络,得到用于对目标机器人进行连续控制的目标动作序列。
162.本公开实施例中得到的目标动作序列中的执行动作是连续的,从而能够更好地对机器人进行控制。
163.一种可选的实施方式中,该装置还包括:
164.发送模块503,用于在接收到目标机器人发送的针对目标动作序列包括的当前执行动作的执行成功指令的情况下,向目标机器人下发用于执行当前执行动作的下一个执行动作的动作指令。
165.关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。
166.基于同一技术构思,本公开实施例还提供了一种电子设备。参照图6所示,为本公开实施例提供的电子设备600的结构示意图,包括处理器61、存储器62、和总线63。其中,存储器62用于存储执行指令,包括内存621和外部存储器622;这里的内存621也称内存储器,用于暂时存放处理器61中的运算数据,以及与硬盘等外部存储器622交换的数据,处理器61通过内存621与外部存储器622进行数据交换,当电子设备600运行时,处理器61与存储器62之间通过总线63通信,使得处理器61在执行以下指令:
167.获取在目标应用场景下的环境状态信息;
168.根据环境状态信息和预训练的强化学习网络得到动作序列信息,并确定动作序列信息对应的回报奖励总值,动作序列信息用于指示未来预设时长内至少两个连续的执行动作;
169.基于回报奖励总值对强化学习网络的网络参数值进行调整,得到训练好的强化学习网络;其中,训练好的强化学习网络用于获取对目标对象进行连续控制的目标动作序列,目标动作序列对应的回报奖励总值大于预设阈值;
170.或者,执行以下指令:
171.获取目标机器人所处的当前环境状态信息;
172.将当前环境状态信息输入到利用上述网络训练方法所训练好的强化学习网络,得到用于对目标机器人进行连续控制的目标动作序列。
173.本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中所述的网络训练方法的步骤或者所述的机器人控制方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。
174.本公开实施例还提供一种计算机程序产品,该计算机产品承载有程序代码,所述程序代码包括的指令可用于执行上述方法实施例中所述的网络训练方法的步骤,或者所述的机器人控制方法的步骤,具体可参见上述方法实施例,在此不再赘述。
175.其中,上述计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(software development kit,sdk)等等。
176.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
177.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
178.另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
179.所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
180.最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1