CN114536319A - 用于借助于强化学习来训练控制策略的设备和方法 - Google Patents

用于借助于强化学习来训练控制策略的设备和方法 Download PDF

Info

Publication number
CN114536319A
CN114536319A CN202111333359.7A CN202111333359A CN114536319A CN 114536319 A CN114536319 A CN 114536319A CN 202111333359 A CN202111333359 A CN 202111333359A CN 114536319 A CN114536319 A CN 114536319A
Authority
CN
China
Prior art keywords
states
state
action
sequence
answer set
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111333359.7A
Other languages
English (en)
Inventor
D·斯捷潘诺娃
J·厄施
N·穆斯里乌
T·艾特尔
F·M·里希特
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Publication of CN114536319A publication Critical patent/CN114536319A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B15/00Systems controlled by a computer
    • G05B15/02Systems controlled by a computer electric
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/24765Rule-based classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33056Reinforcement learning, agent acts, receives reward, emotion, action selective

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computing Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • Computational Linguistics (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Automation & Control Theory (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Algebra (AREA)
  • Probability & Statistics with Applications (AREA)
  • Feedback Control In General (AREA)
  • Manipulator (AREA)

Abstract

描述了借助于强化学习来训练控制策略的方法,其具有:执行多次强化学习训练遍历,在每次遍历中,针对代理的状态序列的每个状态从控制遍历的初始状态开始选择所要执行的行动,针对至少有些状态,通过指定计划范围来选择行动,该计划范围指定了状态数目;通过将回答集编程求解器应用于回答集编程程序,确定具有指定的状态数目的从相应状态出发可到达的状态的多个序列,该回答集编程程序对行动与通过这些行动所到达的后续状态之间的关系进行建模;选择在这些序列中提供最大回报的序列,其中由所确定的序列提供的回报是在到达该序列的状态时所获得的奖励的总和;并选择可用来从相应状态出发到达所选序列的第一状态的行动,作为针对相应状态的行动。

Description

用于借助于强化学习来训练控制策略的设备和方法
技术领域
总的来说,各种实施例涉及一种用于借助于强化学习来训练控制策略的设备和方法。
背景技术
用于像机器人那样的机器的控制设备可以通过所谓的增强学习、英文Reinforcement Learning(RL)来被训练,用于实施特定任务、例如在生产过程中实施特定任务。对任务的实施通常包括选择针对状态序列的每个状态的行动,也就是说可以被视为顺序决策问题。根据通过所选择的行动来到达的状态、尤其是最终状态,这些行动都得到一定回报(英文return),该回报例如根据该行动是否允许到达对其来说给予奖励(例如对于实现该任务的目标来说)的最终状态而得出。
强化学习使代理(例如机器人)能够从经验中学习,其方式是该代理将它的行为调整为使得它随时间所获得的回报最大化。存在简单的基于试错的RL方法,其中该代理不需要关于控制场景的知识,而且如果给其足够的时间,则确保收敛到最优控制策略(英文policy)。然而,在实践中,收敛到最优控制策略可能非常缓慢。在难以找到奖励的控制场景中情况尤其如此。
值得期望的是高效的方法,这些方法能够通过使用关于控制场景的先验知识、例如通过形成模型、例如关于环境的行为的模型来加快学习过程。
发明内容
按照各种实施方式,提供了一种用于借助于强化学习来训练控制策略的方法,该方法具有:执行多次强化学习训练遍历,其中在每次强化学习训练遍历中,针对代理的状态序列的每个状态从控制遍历的初始状态开始选择所要执行的行动,其中针对这些状态中的至少有些状态,通过指定计划范围(Planungshorizont)来选择相应的行动,该计划范围指定了状态数目;通过将回答集编程求解器应用于回答集编程程序,确定具有指定的状态数目的从相应的状态出发可到达的状态的多个序列,该回答集编程程序对行动与通过这些行动所到达的后续状态之间的关系进行建模;从所确定的序列中,选择在这些所确定的序列中提供最大回报的序列,其中由所确定的序列提供的回报是在到达该序列的状态时所获得的奖励的总和;并且选择可用来从相应的状态出发到达所选择的序列的第一状态的行动,作为针对该相应的状态的行动。
按照另一实施例,提供了一种控制设备,该控制设备被设立为实施上述方法或按照上述方法所训练的控制策略来控制机器人装置。
与没有计划组件的RL方法相比,上述方法和控制设备能够实现:即使计划范围仅相对小(例如仅指定了指定数目少的状态,例如2到10个之间的状态),也显著提高训练的速度。由此,RL方法可以尤其在实践中使用,例如在其中机器人装置在运行时必须学习(例如在与不断变化的条件、诸如地形的实时适配的情况下)的场景中使用。由于计划范围的限制,不需要计划组件(由回答集编程求解器实现)找到最终状态(也就是说训练遍历结束的状态),这对于有些控制场景来说也难以实现或者无法实现。相反,重复(在训练遍历期间多次)使用具有比较小的计划范围(例如至少对于该训练遍历的初始状态来说不足以到达最终状态的计划范围)的计划组件,直至最终到达最终状态为止。
该方法可以与任何离策略(Off-Policy)-RL方法一起使用,其中保留离策略-RL方法的如收敛和最优控制策略那样的特性,但是通过使用先验知识(该先验知识通过回答集编程程序并且借此作为模型被引入)并且进行计划来使学习加快。(基于模型的)计划组件引导探索,但是该代理从真实的(例如通过传感器数据所确定的)经验中学习。由此,保留关于环境的细节的信息,这些信息未被模型(该模型以回答集编程程序的形式存在)反映出来。这允许使用简化或者过度乐观(überoptimistisch)的模型。
在下文说明了各种实施例。
实施例1是上述用于借助于强化学习来训练控制策略的方法。
实施例2是根据实施例1所述的方法,其中针对在强化学习训练遍历中所到达的状态,检查该状态在所述多次强化学习训练遍历中是否是第一次到达的,而且如果该状态在所述多次强化学习训练遍历中是第一次到达的,则通过确定所述多个序列、选择在所确定的序列中提供最大回报的序列并且选择可用来从该状态出发到达所选择的序列的第一状态的行动来确定该行动。
借此确保了:针对每个状态都使用包含在回答集编程程序中的先验知识。
实施例3是根据实施例2所述的方法,其中针对在所述多次强化学习训练遍历中已经到达的状态,按照到目前为止经训练的控制策略或者随机选择该行动。
如果有状态已经到达了,则相对应地已经一次性地将先验知识加入到对该状态的行动的选择中。通过免于将计划组件用于已经访问过的状态,确保了不会由于使用该计划组件而使训练时长不必要地延长。
实施例4是根据实施例1至3中任一项所述的方法,其中针对这些状态中的至少有些状态,通过指定第一计划范围来选择相应的行动,该第一计划范围指定了第一数目的状态;
通过将回答集编程求解器应用于回答集编程程序,确定具有所述第一数目的状态的从该状态出发可到达的状态的多个序列,该回答集编程程序对行动与通过这些行动所到达的后续状态之间的关系进行建模;而且
如果筹措到指定的供支配的计算预算用来确定针对相应的状态的行动,则从具有该第一数目的状态的所确定的序列中选择在这些所确定的序列中提供最大回报的序列,并且选择可用来从该相应的状态出发到达所选择的序列的第一状态的行动,作为针对该相应的状态的行动;而且
如果尚未筹措到指定的供支配的计算预算用来确定针对该相应的状态的行动,则指定第二计划范围,该第二计划范围指定了第二数目的状态,其中状态的第二数目大于状态的第一数目;通过将回答集编程求解器应用于回答集编程程序,确定具有该第二数目的状态的从该状态出发可到达的状态的多个序列,该回答集编程程序对行动与通过这些行动所到达的后续状态之间的关系进行建模;从具有该第二数目的状态的所确定的序列中选择在这些所确定的序列中提供最大回报的序列;并且选择可用来从该相应的状态出发到达所选择的序列的第一状态的行动,作为针对该相应的状态的行动。
以这种方式,可以调节为了进行计划所投入的计算花费。尤其是,该RL方法可以通过适当地指定计算预算来与给定的时间限制(例如在运行期间学习的情况下)适配。该计算预算例如是时间预算或者算术运算的预算。
实施例5是根据实施例1至4中任一项所述的方法,其中回答集编程求解器支持多重求解,而且其中借助于该回答集编程求解器通过多重求解来为在强化学习训练遍历中连续的状态确定所述多个序列。
使用多重求解减少了对于该计划组件来说所需的计算和时间花费。
实施例6是一种控制方法,该控制方法具有:基于根据实施例1至5中任一项所训练的控制策略来控制机器人装置。
实施例7是一种控制设备,该控制设备被设立为实施根据实施例1至6中任一项所述的方法。
实施例8是一种计算机程序,其具有程序指令,当这些程序指令由一个或多个处理器来实施时,这些程序指令使所述一个或多个处理器执行根据实施例1至6中任一项所述的方法。
实施例9是一种计算机可读存储介质,在其上存储有程序指令,当这些程序指令由一个或多个处理器来实施时,这些程序指令使所述一个或多个处理器执行根据实施例1至6中任一项所述的方法。
附图说明
本发明的实施例在附图中被示出并且在下文更详细地予以阐述。在附图中,相同的附图标记在多个视图中各处通常都涉及相同的部分。这些附图不一定比例正确,其中重点反而通常在于呈现本发明的原理。
图1示出了机器人装置。
图2阐明了进行学习的代理与其控制环境之间的交互,其中该代理使用按照本发明的实施方式的计划组件。
图3示出了阐明用于借助于强化学习来训练控制策略的方法的流程图。
具体实施方式
各种实施方式、尤其是下文描述的实施例可以借助于一个或多个电路来被实现。在一个实施方式中,“电路”可以被理解成任何类型的逻辑实现实体,该逻辑实现实体可以是硬件、软件、固件或它们的组合。因而,在一个实施方式中,“电路”可以是硬接线逻辑电路或可编程逻辑电路,诸如可编程处理器、例如微处理器。“电路”也可以是由处理器实现或实施的软件、例如任何类型的计算机程序。根据一个替选的实施方式,相应的功能的任何其它类型的实现方案都可以被理解成“电路”,这些相应的功能在下文更详细地予以描述。
图1示出了机器人装置100。
机器人装置100具有机器人101,例如用于操作或安装工件或者一个或多个其它对象114的工业机器人臂。机器人101具有操纵器102、103、104和基座(例如托座)105,该基座承载这些操纵器102、103、104。术语“操纵器”涉及机器人101的可移动部分,对这些可移动部分的操纵能够实现与环境的物理交互,例如用于执行任务。为了控制该机器人,机器人装置100包含(机器人)控制设备106,该(机器人)控制设备被配置为使得该(机器人)控制设备根据控制程序来实现与环境(英文environment)的交互。操纵器102、103、104的最后一个链节104(离托座105最远)也被称为末端执行器104,并且可包含一个或多个工具,如焊炬、抓具、喷漆装置等等。
其它操纵器102、103(更靠近基座105)可形成定位装置,使得在其端部具有末端执行器104的机器人101与末端执行器104一起被提供。机器人101是机械臂,该机械臂可以完成与人类手臂类似的功能(可能利用在其端部处的工具)。
机器人101可包含链节元件107、108、109,这些链节元件使操纵器102、103、104彼此连接并且与托座105连接。链节元件107、108、109可具有一个或多个链节,所述一个或多个链节中的每个链节都可以实现所属的操纵器相对于彼此的旋转运动(也就是说转动运动)和/或平移运动(也就是说位移)。操纵器102、103、104的运动可以借助于执行器来被引起,这些执行器由控制设备106来控制。
术语“执行器”可以被理解成如下组件,该组件被设立为使得该组件响应于操控来影响机制或过程。该执行器可以将由控制设备106输出的命令(所谓的激活)转化成机械运动。该执行器、例如机电转换器可以被配置为使得该执行器响应于该操控将电能转换成机械能。
机器人101可具有传感器113(例如一个或多个摄像机、位置传感器等等),这些传感器被设立为:确定机器人和一个或多个被操纵的对象114(也就是说环境,英文environment)的状态,如该状态从对执行器的操控和机器人的所产生的运动中得出的那样。
在当前示例中,控制设备106具有存储器111和一个或多个处理器110,该存储器存储程序代码和数据,处理器110基于这些程序代码和数据来控制机器人101。根据各种实施方式,控制设备106根据由控制装置实现的控制策略112来控制机器人101。
生成控制策略的途径是强化学习,英文Reinforcement Learning(RL)。强化学习的特点在于试错搜索和延迟奖励。不同于需要标记(英文labels)来进行训练的神经网络的监督学习,RL使用试错机制,以便学习状态到行动的分配,使得被称为回报(英文return)的强化信号被最大化。通过试错,在RL的情况下试图找到(最终)引起更高奖励的行动,其方式是对这些行动进行试验。然而,找到良好的控制策略可能需要很多时间。
按照各种实施方式,通过提供计划组件来使强化学习加快,该计划组件包含受控系统(例如机器人和该机器人影响的或者影响该机器人的环境)的模型,以便向代理推荐有希望的行动。
在此,能看到主要挑战在于:对于计划所需的附加的计算资源必须与由于将该代理引导到奖励更高的状态所得到的优势仔细权衡。
按照不同实施方式,借助于回答集编程(ASP,英文answer set programming)来实现该计划组件(以及尤其是该模型)。回答集编程是一种声明性问题求解方案,该声明性问题求解方案将用于描述给定问题的候选解的搜索空间的高级建模语言与用于高效计算这种解的高效求解器相结合。
回答集编程拥有简单的、但是有效力的建模语言,用于以紧凑的方式来描述受控系统。该建模语言包含允许对奖励进行优化的优化函数。接着,可以借助于相应的优化语句来表达对在给定的计划范围内赢得最大奖励的计划(也就是说状态的序列或相对应的行动)的搜索。
可以使用回答集编程求解器(英文ASP solver)作为求解器,以便在给定的计划范围内搜索最优计划。当这些问题难以解决并且包含很多限制时,回答集编程求解器特别合适。此外,控制策略还可以被设计为使得可以使用多重求解(英文multi-shot solving),以便只要有可能就重新使用计算并且这样来提高计算速度。
为了描述借助于回答集编程对计划组件的实现,在下文介绍所使用的强化学习(RL,英文reinforcement learning)的术语。
在强化学习中,在代理与环境(例如机器人的与机器人的行动进行交互并且影响机器人在特定行动的情况下来到怎样的状态的环境)之间的交互被形式化成马尔可夫决策过程(MDP,英文Markov decision process)。MDP具有状态的有限集合
Figure 49847DEST_PATH_IMAGE001
。对于每个状态
Figure 560463DEST_PATH_IMAGE002
来说,
Figure 136937DEST_PATH_IMAGE003
是代理在该状态
Figure 266567DEST_PATH_IMAGE004
下可以采取的行动的有限集合。如果代理在时间
Figure 877677DEST_PATH_IMAGE005
处于状态
Figure 434561DEST_PATH_IMAGE006
并且实施行动
Figure 999796DEST_PATH_IMAGE007
,则该代理在下一时间点
Figure 933117DEST_PATH_IMAGE008
来到状态
Figure 398734DEST_PATH_IMAGE009
,并且获得来自数值奖励的有限集合
Figure 126518DEST_PATH_IMAGE010
中的奖励
Figure 677585DEST_PATH_IMAGE011
(例如机器人在它将对象移动到了所希望的位置时获得奖励)。代理-环境交互的在状态
Figure 149018DEST_PATH_IMAGE012
开始的轨迹具有如下形式:
Figure 469141DEST_PATH_IMAGE013
该交互的动态通过函数
Figure 633406DEST_PATH_IMAGE014
来给出,其中
Figure 671769DEST_PATH_IMAGE015
是在状态
Figure 478051DEST_PATH_IMAGE016
执行行动
Figure 121522DEST_PATH_IMAGE017
时来到状态
Figure 191109DEST_PATH_IMAGE018
并且借此得到奖励
Figure 716769DEST_PATH_IMAGE019
的概率。
控制策略(例如控制方针)说明了在特定状态下选择怎样的行动。该代理的目标在于:基于经验来改善该代理的控制策略,使得该代理在任何给定的状态
Figure 530004DEST_PATH_IMAGE020
下都使它的预期的贴现回报(英文discounted return)
Figure 559140DEST_PATH_IMAGE021
最大化,其中
Figure 330787DEST_PATH_IMAGE022
是表示未来奖励的当前价值的贴现率(英文discountrate)。
可以通过学习价值估计函数来改善控制策略。该价值估计函数是状态或状态-行动对到预期回报的映射。该价值估计函数(或者也只称“价值函数”)按照代理与环境的交互来被更新。在强化学习方面的核心问题在于在对(未研究过的)行动的探索与使用(利用)已经被学习到的东西之间的权衡。当代理遵循更具探索性的控制策略
Figure 316978DEST_PATH_IMAGE023
以便改善其当前的目标控制策略
Figure 996221DEST_PATH_IMAGE024
(该目标控制策略最终应该成为最优)时,方法被称为离策略方法。控制策略
Figure 83126DEST_PATH_IMAGE023
也被称为行为控制策略。
离策略方法的示例是Q学习(Q-Learning)。在该Q学习的情况下,该代理学习价值估计函数
Figure 822412DEST_PATH_IMAGE025
,该价值估计函数将状态-行动对映射到预期的贴现回报上。目标控制策略是一种与
Figure 994767DEST_PATH_IMAGE025
相关的贪婪控制策略。如果代理处于状态
Figure 212122DEST_PATH_IMAGE016
,则该代理按照行为控制策略
Figure 419112DEST_PATH_IMAGE026
来选择行动
Figure 329299DEST_PATH_IMAGE027
。在该代理观察到(例如根据传感器数据确定了)为此所获得的奖励
Figure 988951DEST_PATH_IMAGE028
和通过该奖励所到达的状态
Figure 9996DEST_PATH_IMAGE029
之后,该代理按如下地更新它的Q函数:
Figure 805914DEST_PATH_IMAGE030
其中
Figure 621423DEST_PATH_IMAGE031
是相对于旧的估计对新的经验进行加权的步长参数。如果按照行为策略,在界限(Limes)内的所有状态-行动组合都无限频繁地被研究,则目标控制策略向最优控制策略收敛。
Q-learning的缺点在于:Q值总是只针对一个状态-行动对被更新。如果在某个时间点获得高奖励,则也许可能持续多次迭代(也就是说尤其是按照上述公式对Q估计函数的多次更新),直至Q估计函数的相对应的更新在初始状态变得明显为止。为了避免这一点,按照各种实施方式,使更新延迟,直至观察到高奖励为止,并且接着以所观察到的奖励的相反顺序来应用Q函数更新,以便将高估计(也就是说Q估计函数的针对某些状态的高的值)高效地传播回初始状态。
回答集编程是一种扎根于知识表示、非单调推理、逻辑编程和演绎数据库的声明式问题求解方案。回答集编程求解器使用SAT(可满足性(Satisfiability))求解器和SMT(可满足性模块化理论(Satisfiability Modular Theories))求解器的思路,然而实现非单调语义,该非单调语义能够根据新信息来得出结论。按照各种实施方式,为了实现计划组件,首先在使用回答集编程求解器的输入语言的情况下对问题求解的特性(例如行动和由此到达的状态)进行建模。接着,使用回答集编程求解器,以便计算模型的回答集,这些回答集进而对应于初始问题的解。回答集编程的工作能力一方面基于富有表现力的、但是简单的建模语言而另一方面基于性能卓越的回答集编程求解器。
回答集编程本质上是一种命题形式主义,而且对于大多数回答集编程求解器来说,在输入语言中的变量在称为基础(Grounding)的预处理步骤中用常量符号来被替换。除了变量之外,常用的回答集编程求解器的输入语言的特征是完整性约束、用于表达信息缺乏的标准否定、用于表达不确定性的选择规则和选言推理、聚合、算术、被解释和未被解释的函数符号、弱条件和优化说明。
回答集编程程序是一组规则,其中规则具有如下形式:
p,....,q :- r,...,s, not t,..., not u。
规则的头部是在蕴涵符号:-之前的所有原子,而身体是在该符号:-之后的所有原子。
该规则的直观含义是:如果所有原子r,....,s都可以被推导出并且不存在对原子t,...,u中的任何一个原子的证据,则p,...,q中的至少一个必须为真。解释是原子的集合。解释是程序的回答集,如果该回答集满足特定的固定点条件,则该固定点条件确保了该程序的所有规则都以最小且一致的方式被满足。程序可以没有回答集,可以有一个回答集或者可以有超过一个回答集。
身体为空的规则称为事实。在事实的情况下,蕴涵符号通常被省略。事实被用于表达无条件为真的知识。头部为空的规则是条件:
:- r,...., s, not t,..., not u
条件表示:其身体无法被任何回答集满足。条件被用于阻断不想要的解候选。
如下规则是选择规则:
{ p,...,q } :- r,....,s, not t,..., not u
该选择规则表示:如果规则的主要部分被满足,则p,...,q的子集也必须为真。
为了阐明,作为示例而假设机器人可以在任何时间点推门。推门的结果是:门在下一个时间步长打开。相对应的程序例如是:
{ 推(T) } :- 时间步长(T), 关闭(T)。
打开(T+1) :- 时间步长(T), 推(T)。
关闭(T+1) :- 时间步长(T), 关闭(T), 未打开(T+1)。
打开(T+1) :- 时间步长(T), 打开(T), 未关闭(T+1)。
第一条规则表示如下选择:要么只要门关闭就推门,要么什么也不做。第二条规则表示推门的效果,即门随后打开。最后两条规则是框架公理,所述框架公理表示:如果不存在相反的证据,则门的状态保持不变。
作为示例场景,考虑存在唯一的时间步长并且门初始关闭,也就是说
时间步长(1)。
关闭(1)。
程序的回答集是
{ 时间步长(1) 关闭(1) 推(1) 打开(2) }
{ 时间步长(1) 关闭(1) 关闭(2) }
这些回答集中的每个回答集都对应于可能的世界,在该可能的世界中,代理要么推开门要么什么也不做。
在控制场景中,动态函数
Figure 830688DEST_PATH_IMAGE032
通常不是完全已知的。但是,通常存在关于控制场景的知识,该知识可以被利用。按照各种实施例,该先验知识被表示成回答集编程程序,由此实现计划组件。
图2阐明了进行学习的代理201与控制环境202之间的交互,其中该代理使用具有回答集编程求解器203和环境模型204的基于回答集编程的计划组件208来选择行动。
环境模型204是回答集编程程序
Figure 593107DEST_PATH_IMAGE033
,该回答集编程程序对环境(代理与该环境进行交互)进行建模。该环境模型尤其是对该代理在实施某些行动时来到哪些状态进行建模。参数
Figure 72893DEST_PATH_IMAGE034
说明了计划范围、也就是说行动的最大数目。对于给定的状态
Figure 996986DEST_PATH_IMAGE035
来说,程序
Figure 693547DEST_PATH_IMAGE033
的回答集(具有
Figure 994078DEST_PATH_IMAGE035
作为事实)对应于代理的按照模型204从具有最多
Figure 92484DEST_PATH_IMAGE034
个行动和所属的奖励的
Figure 984217DEST_PATH_IMAGE036
出发的轨迹。按照一个实施方式,说明了一种用于使回报最大化的优化标准,而且回答集编程求解器203只输出满足该优化标准的一个或多个回答集,即例如在计划范围内具有最高回报的轨迹。
MDP包含概率分布,而模型204确定性地(但是乐观地)或者非确定性地对奖励和状态转换进行建模。在回答集编程中,借助于正整数或负整数对奖励进行建模。
Figure 105757DEST_PATH_IMAGE037
来表示回答集编程求解器的计算结果,该回答集编程求解器将具有被设置到
Figure 272296DEST_PATH_IMAGE034
的计划范围的模型
Figure 694050DEST_PATH_IMAGE033
与作为事实的状态
Figure 225525DEST_PATH_IMAGE036
的表示一起用作输入。
按照一个实施方式,不考虑贴现,因为有限的计划范围确保了回报无法趋于无穷。然而,应该注意的是:尽管如此,当评估代理的工作能力时,仍可以使用贴现。
在下文,说明了与其中机器人可以打开门的上述示例匹配的环境模型204的示例。
时间步长(1..h)。
{ 推(T) } :- 时间步长(T), 关闭(T)。
打开(T+1) :- 时间步长(T), 推(T)。
关闭(T+1) :- 时间步长(T), 关闭(T), 未打开(T+1)。
打开(T+1) :- 时间步长(T), 打开(T), 未关闭(T+1)。
奖励(T,-1) :- 推 (T-1)。
奖励(T,10) :- 打开(T)。
#最大化 { R,T : 奖励(T,R) }。
第一行限定了计划范围,其中
Figure 631099DEST_PATH_IMAGE038
是常数,该常数例如由代理在回答集编程求解器203启动之前设置。在最后三行中对奖励进行建模:每个推行动都通过为-1的负奖励来被惩罚。然而,代理在门打开的每个状态下都得到为10的奖励。直观上清楚的是:代理会尽快推开门,以使回报最大化。
在调用具有模型
Figure 539012DEST_PATH_IMAGE033
、时间范围3和其中门关闭的
Figure 376125DEST_PATH_IMAGE039
、也就是说
Figure 78501DEST_PATH_IMAGE040
的回答集编程求解器的情况下,回答集编程求解器提供回答集
Figure 971371DEST_PATH_IMAGE041
等于
{ 时间步长(1) 时间步长(2) 时间步长(3) 关闭(1) 打开(2) 打开(3) 打开(4)推 (1) 奖励(2,-1) 奖励(2,10) 奖励(3,10) 奖励(4,10) }。
这对应于其中代理在第一状态下推门并且然后不再实施行动的轨迹。
现在,代理201的行为控制策略例如如下。假设代理观察到状态
Figure 417396DEST_PATH_IMAGE042
(也就是说观察到它处于状态
Figure 79321DEST_PATH_IMAGE043
)。如果该代理第一次(在学习时)看到该状态
Figure 952599DEST_PATH_IMAGE042
,则该代理借助于回答集编程求解器来计算集合
Figure 332765DEST_PATH_IMAGE044
,并且该代理从集合
Figure 316902DEST_PATH_IMAGE044
中选择第一个行动(也就是说时间步长为1的行动),作为针对该状态
Figure 98913DEST_PATH_IMAGE042
的行动。如果该代理已经访问过该状态
Figure 143092DEST_PATH_IMAGE045
一次或者回答集编程求解器没有输出在针对该状态
Figure 10554DEST_PATH_IMAGE042
的可用行动的集合
Figure 595119DEST_PATH_IMAGE046
中的行动,则该代理从
Figure 169320DEST_PATH_IMAGE047
中以概率ε来选择随机行动并且以概率(1 - ε)来遵循该代理的目标控制策略
Figure 446718DEST_PATH_IMAGE024
(如同该目标控制策略在当前训练水平被训练一样)。除了模型
Figure 473579DEST_PATH_IMAGE033
、所使用的回答集编程求解器203和诸如计算时间限制那样的回答集编程求解器参数之外,计划范围
Figure 628880DEST_PATH_IMAGE038
和随机探索率ε都是学习参数。
如果代理201在205实施行动,则该代理在此从环境202获得奖励206并且观察到所到达的后续状态207。从初始状态开始,该代理重复该循环,直至相应的RL训练遍历(英文Rollout)结束为止,例如原因在于到达了最终状态或者原因在于达到了行动的最大数目。RL训练通常包含多个这种遍历,直至达到收敛标准为止(例如当Q估计函数的针对一定次数的更新的变化低于阈值时)。
按照上述策略,在学习过程开始时,通常得到类似的回答集编程求解器调用的长序列。如果代理观察到未知状态的序列
Figure 57587DEST_PATH_IMAGE048
则该代理执行回答集编程求解器调用的如下序列:
Figure 505886DEST_PATH_IMAGE049
这意味着:回答集编程求解器203依次对彼此密切相关的问题进行求解。因此,为了减少计划花费,按照一个实施方式,使用多重求解(英文multi-shot solving),一些回答集编程求解器支持这一点,以便保持回答集编程求解器状态,而回答集编程求解器以不断变化的程序来工作。回答集编程求解器调用的上述序列可以被视为具有滑动的计划范围的增量计划问题,其中轨迹的开始是固定的:
Figure 816781DEST_PATH_IMAGE050
替代借助于单独的回答集编程求解器调用,代理201可以从第一回答集编程求解器调用出发通过增量更新来实现该计算序列。借此,可以减少由于计划组件208而形成的计算花费。
概括来说,按照不同实施方式,提供了一种如图3中所阐明的方法。
图3示出了流程图300,该流程图阐明了用于借助于强化学习来训练控制策略的方法。
执行多次强化学习训练遍历301,其中在304中,在每次强化学习训练遍历301中,针对代理的状态序列的每个状态302、303从控制遍历的初始状态302开始选择所要执行的行动。
针对状态302、303中的至少有些状态,通过如下方式来选择相应的行动:
在305中,指定计划范围,该计划范围指定了状态数目;
在306中,通过将回答集编程求解器应用于回答集编程程序,确定具有指定的状态数目的从相应的状态出发可到达的状态的多个序列,该回答集编程程序对行动与通过这些行动所到达的后续状态之间的关系进行建模;
在307中,从所确定的序列中,选择在这些所确定的序列中提供最大回报的序列,其中由所确定的序列提供的回报是在到达该序列的状态时所获得的奖励的总和;
在308中,选择可用来从相应的状态302、303出发到达所选择的序列的第一状态的行动,作为针对该相应的状态302、303的行动。
控制策略例如对应于在上述示例中称为控制策略的内容。
换言之,按照各种实施方式,规定了特殊的行为控制策略,当应该决定所要实施的行动时,该特殊的行为控制策略提供对回答集编程求解器的使用。该方法可以与任何离策略方法一起使用,以便使代理能够使用先验知识,同时保持(原始)离策略方法的鲁棒性。各种实施例的前提条件仅在于:状态可以被表示成对象之间的关系,使得这些状态可以被用作针对计划组件的输入;而且环境的声明性模型事先以所使用的回答集编程求解器的输入语言来被详细规定。
各种实施例所基于的思路可在于:限定行为控制策略,该行为控制策略使代理能够在高奖励稀少的环境中找到高奖励。按照各种实施例,控制策略是随机探索、使用(利用)已经被学习到的条件与在使用(例如高级)环境模型的情况下进行计划的混合。
所学习的控制策略例如是用于机器人装置的控制策略。“机器人装置”可以被理解成任何(具有其运动被控制的机械部分的)物理系统,如计算机控制的机器、车辆、家用电器、电动工具、制造机器、私人助理或门禁系统。
各种实施方式可以接收和使用各种传感器的传感器信号,如视频、雷达、激光雷达(LiDAR)、超声、运动、声音、热成像等等,以便例如获得关于系统状态(机器人和一个或多个对象)以及控制场景的传感器数据。传感器数据可以被处理。这可以包含对传感器数据的分类或者对传感器数据的语义分割的执行,例如以便识别(在其中获得了这些传感器数据的环境中的)对象的存在。实施例可以被用于训练机器学习系统并且自主控制机器人,以便在不同场景下实现不同的操纵任务。尤其是,实施例能应用于控制和监视操纵任务、例如在流水线中的操纵任务的实施。这些实施例例如可以无缝地集成到用于控制过程的传统的GUI中。
按照一个实施方式,该方法是计算机实现的。
尽管本发明主要是在参考特定实施方式的情况下被展示和描述的,但是本领域技术人员应该理解:可以在不脱离本发明的如通过随后的权利要求书限定的精神和保护范围的情况下关于其设计方案和细节进行大量更改。因而,本发明的保护范围通过随附的权利要求书来被确定,而且意图涵盖落入权利要求书的字面含义或等效范围的全部更改。

Claims (9)

1.一种用于借助于强化学习来训练控制策略的方法,所述方法具有:
执行多次强化学习训练遍历,其中在每次强化学习训练遍历中,针对代理的状态序列的每个状态从控制遍历的初始状态开始选择所要执行的行动,其中针对所述状态中的至少有些状态,通过指定计划范围来选择相应的行动,所述计划范围指定了状态数目;
通过将回答集编程求解器应用于回答集编程程序,确定具有指定的状态数目的从相应的状态出发可到达的状态的多个序列,所述回答集编程程序对行动与通过所述行动所到达的后续状态之间的关系进行建模;
从所确定的序列中,选择在所述所确定的序列中提供最大回报的序列,其中由所确定的序列提供的回报是在到达所述序列的状态时所获得的奖励的总和;而且
选择能用来从相应的状态出发到达所选择的序列的第一状态的行动,作为针对所述相应的状态的行动。
2.根据权利要求1所述的方法,其中针对在强化学习训练遍历中所到达的状态,检查所述状态在所述多次强化学习训练遍历中是否是第一次到达的,而且如果所述状态在所述多次强化学习训练遍历中是第一次到达的,则通过确定所述多个序列、选择在所述所确定的序列中提供最大回报的序列并且选择能用来从所述状态出发到达所选择的序列的第一状态的行动来确定所述行动。
3.根据权利要求2所述的方法,其中针对在所述多次强化学习训练遍历中已经到达的状态,按照到目前为止经训练的控制策略或者随机选择所述行动。
4.根据权利要求1至3中任一项所述的方法,其中针对所述状态中的至少有些状态,通过指定第一计划范围来选择相应的行动,所述第一计划范围指定了第一数目的状态;
通过将回答集编程求解器应用于回答集编程程序,确定具有所述第一数目的状态的从所述状态出发可到达的状态的多个序列,所述回答集编程程序对行动与通过所述行动所到达的后续状态之间的关系进行建模;
而且如果筹措到指定的供支配的计算预算用来确定针对相应的状态的行动,则从具有所述第一数目的状态的所确定的序列中选择在所述所确定的序列中提供最大回报的序列,并且选择能用来从所述相应的状态出发到达所选择的序列的第一状态的行动,作为针对所述相应的状态的行动;
而且如果尚未筹措到指定的供支配的计算预算用来确定针对所述相应的状态的行动,则
指定第二计划范围,所述第二计划范围指定了第二数目的状态,其中状态的第二数目大于状态的第一数目,
通过将所述回答集编程求解器应用于回答集编程程序,确定具有所述第二数目的状态的从所述状态出发可到达的状态的多个序列,所述回答集编程程序对行动与通过所述行动所到达的后续状态之间的关系进行建模,
从具有所述第二数目的状态的所确定的序列中选择在所述所确定的序列中提供最大回报的序列,并且
选择能用来从所述相应的状态出发到达所选择的序列的第一状态的行动,作为针对所述相应的状态的行动。
5.根据权利要求1至4中任一项所述的方法,其中所述回答集编程求解器支持多重求解,而且其中借助于所述回答集编程求解器通过多重求解来为在强化学习训练遍历中连续的状态确定所述多个序列。
6.一种控制方法,所述控制方法具有:基于根据权利要求1至5中任一项所训练的控制策略来控制机器人装置。
7.一种控制设备,所述控制设备被设立为实施根据权利要求1至6中任一项所述的方法。
8.一种计算机程序,其具有程序指令,当所述程序指令由一个或多个处理器来实施时,所述程序指令使所述一个或多个处理器执行根据权利要求1至6中任一项所述的方法。
9.一种计算机可读存储介质,在其上存储有程序指令,当所述程序指令由一个或多个处理器来实施时,所述程序指令使所述一个或多个处理器执行根据权利要求1至6中任一项所述的方法。
CN202111333359.7A 2020-11-11 2021-11-11 用于借助于强化学习来训练控制策略的设备和方法 Pending CN114536319A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102020214177.0 2020-11-11
DE102020214177.0A DE102020214177A1 (de) 2020-11-11 2020-11-11 Vorrichtung und Verfahren zum Trainieren einer Steuerungsstrategie mittels bestärkendem Lernen

Publications (1)

Publication Number Publication Date
CN114536319A true CN114536319A (zh) 2022-05-27

Family

ID=81255983

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111333359.7A Pending CN114536319A (zh) 2020-11-11 2021-11-11 用于借助于强化学习来训练控制策略的设备和方法

Country Status (4)

Country Link
US (1) US20220146997A1 (zh)
JP (1) JP2022077522A (zh)
CN (1) CN114536319A (zh)
DE (1) DE102020214177A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102022208089A1 (de) 2022-08-03 2024-02-08 Robert Bosch Gesellschaft mit beschränkter Haftung Vorrichtung und Verfahren zum Steuern eines Roboters
CN115657477A (zh) * 2022-10-13 2023-01-31 北京理工大学 一种基于离线强化学习的动态环境机器人自适应控制方法

Also Published As

Publication number Publication date
DE102020214177A1 (de) 2022-05-12
US20220146997A1 (en) 2022-05-12
JP2022077522A (ja) 2022-05-23

Similar Documents

Publication Publication Date Title
Pertsch et al. Accelerating reinforcement learning with learned skill priors
Nguyen-Tuong et al. Model learning for robot control: a survey
JP7367233B2 (ja) 軌道中心モデルに基づく強化学習のロバスト最適化を行うためのシステムおよび方法
Wang et al. A survey of learning‐based robot motion planning
Boney et al. Regularizing model-based planning with energy-based models
CN114536319A (zh) 用于借助于强化学习来训练控制策略的设备和方法
US11759947B2 (en) Method for controlling a robot device and robot device controller
Widmann et al. Human motion prediction in human-robot handovers based on dynamic movement primitives
CN110716575A (zh) 基于深度双q网络强化学习的uuv实时避碰规划方法
Sacks et al. Learning sampling distributions for model predictive control
Sacks et al. Learning to optimize in model predictive control
US20220066401A1 (en) Machine control system
Parekh et al. Learning latent representations to co-adapt to humans
Nakawala et al. Approaches for action sequence representation in robotics: a review
Ollington et al. Incorporating expert advice into reinforcement learning using constructive neural networks
Stan et al. Reinforcement learning for assembly robots: A review
Dhonthi et al. Optimizing demonstrated robot manipulation skills for temporal logic constraints
Nawaz et al. Learning Safe and Stable Motion Plans with Neural Ordinary Differential Equations
Sintov et al. Motion planning with competency-aware transition models for underactuated adaptive hands
Çallar et al. Hybrid learning of time-series inverse dynamics models for locally isotropic robot motion
EP3739418A1 (en) Method of controlling a vehicle and apparatus for controlling a vehicle
Le et al. Model-based Q-learning for humanoid robots
Orthey et al. Optimizing motion primitives to make symbolic models more predictive
US20240046126A1 (en) Method for controlling a technical system
Grimes et al. Learning nonparametric policies by imitation

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination