CN117795439A - 类包容架构中用于智能控制的序列行为 - Google Patents
类包容架构中用于智能控制的序列行为 Download PDFInfo
- Publication number
- CN117795439A CN117795439A CN202280052962.4A CN202280052962A CN117795439A CN 117795439 A CN117795439 A CN 117795439A CN 202280052962 A CN202280052962 A CN 202280052962A CN 117795439 A CN117795439 A CN 117795439A
- Authority
- CN
- China
- Prior art keywords
- plan
- activity
- node
- nodes
- sequence
- 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
Links
- 230000000694 effects Effects 0.000 claims abstract description 130
- 238000000034 method Methods 0.000 claims abstract description 30
- 230000006399 behavior Effects 0.000 claims description 134
- 230000015654 memory Effects 0.000 claims description 27
- 238000012545 processing Methods 0.000 claims description 13
- 238000004891 communication Methods 0.000 claims description 12
- 230000004044 response Effects 0.000 claims description 10
- 238000004519 manufacturing process Methods 0.000 claims description 7
- 230000009471 action Effects 0.000 description 32
- 230000004913 activation Effects 0.000 description 4
- 239000002355 dual-layer Substances 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000013473 artificial intelligence Methods 0.000 description 3
- 230000000903 blocking effect Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 3
- 239000010410 layer Substances 0.000 description 3
- 230000001953 sensory effect Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000032258 transport Effects 0.000 description 2
- 230000001149 cognitive effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010438 heat treatment Methods 0.000 description 1
- 238000010237 hybrid technique Methods 0.000 description 1
- 230000003278 mimic effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/4155—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by programme execution, i.e. part programme or machine function execution, e.g. selection of a programme
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/34—Director, elements to supervisory
- G05B2219/34012—Smart, intelligent I-O coprocessor, programmable sensor interface
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39254—Behaviour controller, robot have feelings, learns behaviour
Landscapes
- Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Manufacturing & Machinery (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Feedback Control In General (AREA)
Abstract
一种用于控制与环境交互的系统的操作的方法,包括:通过多个序列行为节点获得用于控制系统的多个计划,每个计划包括要由系统执行的活动序列;基于序列行为节点的相对优先级来选择相应计划之一以用于执行;以及执行所选择的计划。还公开了相关的基于包容的控制器。
Description
技术领域
本公开涉及智能控制系统,并且具体地,涉及一种用于控制与环境交互的系统的控制方法和控制器。
背景技术
包容架构是用于系统的智能控制(尤其是机器人技术)的一系列计算架构的通用名称,其催生了基于行为的机器人技术领域。包容架构是在移动机器人技术的上下文中开发的,旨在克服使用人工智能(AI)进行机器人控制的传统方法的局限性。尽管是在机器人技术的上下文中开发的,但基于包容的控制的原理可以适用于许多其他类型的系统(例如,通信系统、制造系统等)。
根据遵循AI范式的智能控制系统的传统操作循环,如图1所示,用于控制系统的信息以流水线方式处理,其中传感器数据首先由感知模块处理。然后,由建模模块处理所感知的数据,以生成环境的模型。然后,由生成计划(即,期望动作的序列)的计划模块来使用该模型。由任务执行模块来处理该计划,任务执行模块生成由电机控制模块处理的控制信号。电机控制模块生成发送到系统致动器的电机命令信号。
尽管图1中所示的传统控制范例可以足够适用于简单的应用,但是传统架构缺乏可扩展性。当系统中考虑的行为数量开始增加时,系统复杂性迅速增加,并且控制循环变得不可行。
备选地,代替串行流水线,Rodney Brooks教授提出了一种用于系统控制的并行策略,被称为通常如图2中所示的包容架构,其中定义了多个独立、并行的行为。将来自传感器的信息提供给每个行为,并且系统基于优先级系统来确定执行哪个行为。也就是说,每个行为竞争控制机器人的致动器,其中最高优先级的行为获得控制。如图2所示,行为可以包括任务或目标(例如,“避开对象”、“徘徊”、“探索”、“识别对象”等)。为了清楚起见,行为是动作的序列或组,其考虑到其内部状态和来自传感器的信息,使智能体更接近实现特定的总体目标。激活行为表示将执行动作的特定集合。例如,图2中的“徘徊”行为表示机器人智能体将具有根据来自传感器的信息而执行的轮速动作,以实现这种来回徘徊行为。
在包容架构中,新的行为可以单独开发,并且可以集成到整体架构中。在Brooks最初的提议中,每个行为由可以用实例变量来增强的有限状态机表示。每个行为被分配从最低到最高的优先级级别,其中较高优先级行为的输出包容较低优先级行为的输出。此外,较高优先级行为可以向较低优先级行为发送偏差信号以影响其输入。图3中示出了该架构。如图所示,每个行为接收传感器输入并生成对应输出,并且较高优先级行为可以向较低优先级行为发送偏差信号以影响其输出。
经典的包容架构的一个缺点是节点具有固定的主导和非主导特征。这表示一旦行为被放置在较高级别中,该行为将在设置其行为时相对于较低优先级行为始终具有优先级。尽管这在一些情形中可能是期望的,但是在一些情形中建立的优先级关系可能应当被翻转。这在经典的包容架构中是不可能的。为了解决这个困难,一些研究人员已经提出了其中没有固定的主导输入的动态包容方案。也就是说,行为的优势等级可以根据情形及时动态地改变。存在动态包容模型的各种实现;多用途增强认知架构(MECA)是使用动态包容模型的架构的一个示例。
图4示出了动态包容模型的示例拓扑,其中表示不同行为的多个行为节点402生成提供给选择器节点404的输出(xN,eN),其中“N”是正整数。输出xN表示由行为节点402生成的控制输出,而输出eN表示基于当前条件计算的评估函数的输出。选择器节点404基于相关联的评估函数输出eN来确定所提出的控制输出xN之中的优先级,并且选择最高优先级的控制输出用于执行。
实际上,图4中所示的节点可以被实现为负责架构中的各种操作的微智能体(被称为小码(codelet))。小码是小段的非阻塞代码,其每一个可以执行明确定义且简单的任务。“非阻塞”表示每个小码是自包含的,并且无论该小码的处理状态如何,都不会限制其他小码的运行。小码可以连续地并且循环地执行,并且负责并行运行的系统的独立组件的行为。在MECA架构中,行为借助于小码来实现。
在本公开中,“小码”可以是在计算机内或在网络中的计算设备的任意位置处运行特定非阻塞代码段的进程。为了清楚起见,本文使用术语“节点”来指代执行小码的包容架构的独立组件。
目前存在一些挑战。开发包容架构是为了给控制系统带来灵活性。它为系统行为的生成创建新的范式,其中行为竞争系统的控制。这开辟了新的研究领域,被称为基于行为的机器人技术。尽管包容架构允许提高系统控制的灵活性和可扩展性,但它也给某些类型的系统带来了一些困难。例如,在一些系统中,期望机器人(或受控制的其他设备或系统)遵循基于计划的策略。然而,使用包容架构,所有行为都是突发的(即,它们基于环境中不可预测的改变、以及基于感知的情形而出现),并且因此其本身是不可预测的。
虽然该属性可以对于处理环境中不可预测的改变是有用的,但它可能会在处理需要预期行为或行为序列的情形时造成困难。也就是说,在采用经典的包容架构的系统中,所有行为都是突发的。然而,存在期望系统进行一系列基于序列的行为的情形。
发明内容
一些实施例提供了一种用于控制与环境交互的系统的操作的基于包容的控制器。该基于包容的控制器包括:计划执行子系统,包括多个序列行为节点,每个序列行为节点被配置为生成用于控制系统的相应计划;计划选择器节点,被配置为选择相应计划之一以用于执行;以及活动选择子系统,接收所选择的计划,并且执行所选择的计划。
每个相应计划包括要由系统执行的活动序列。计划选择器节点基于序列行为节点的相对优先级来选择相应计划之一以用于执行。
活动选择子系统包括多个活动节点,活动节点中的至少一个与所选择的计划中包括的活动序列中的活动相关联。响应于该计划,活动节点中的至少一个生成用于控制系统的致动器执行相关联的活动的控制信号。
基于包容的控制器还可以包括活动跟踪节点,该活动跟踪节点接收所选择的计划,识别系统正在执行的当前活动,并且将当前活动的标识发送到活动选择子系统。
活动选择子系统可以包括活动选择器节点,该活动选择器节点从多个活动节点接收控制信号,基于活动节点的相对优先级来选择控制信号之一,并且将所选择的控制信号施加到致动器。
基于包容的控制器还可以包括计划子系统,该计划子系统从序列行为节点接收计划请求,响应于该计划请求来生成计划,并且将所生成的计划发送到序列行为节点。
基于包容的控制器还可以包括计划请求选择器节点。序列行为节点向计划请求选择器节点提交相关计划请求,并且计划请求选择器节点选择计划请求之一,并将所选择的计划请求提交给计划子系统。
在一些实施例中,计划请求选择器节点基于序列行为节点的相对优先级来选择用于提交给计划子系统的计划请求。
在一些实施例中,序列行为节点的相对优先级是在运行时建立的。在一些实施例中,系统包括机器人系统、制造系统和/或通信系统。致动器可以包括电机。在一些实施例中,基于包容的控制器嵌入在系统内。
一些实施例提供了一种用于控制与环境交互的系统的操作的方法。该方法包括:通过多个序列行为节点获得用于控制系统的多个计划,每个计划包括要由系统执行的活动序列;基于序列行为节点的相对优先级来选择相应计划之一以用于执行;以及执行所选择的计划。
执行所选择的计划可以包括:将所选择的计划发送到包括多个活动节点的活动选择子系统,活动节点中的至少一个与所选择的计划中包括的活动序列中的活动相关联;以及通过活动节点中的至少一个生成用于控制系统的致动器执行相关联的活动的控制信号。
该方法还可以包括:识别系统正在执行的当前活动,并且将当前活动的标识发送到活动节点。
活动选择子系统可以包括活动选择器节点,该活动选择器节点从多个活动节点接收控制信号,基于活动节点的相对优先级来选择控制信号之一,并且将所选择的控制信号施加到致动器。
该方法还可以包括:响应于来自序列行为节点的计划请求来生成计划,并且将所生成的计划发送到序列行为节点。
该方法还可以包括:在计划请求选择器节点处接收来自序列行为节点的计划请求,选择计划请求之一,并且将所选择的计划请求提交给计划子系统。
在一些实施例中,选择计划请求包括:基于序列行为节点的相对优先级来选择用于提交给计划系统的计划请求。
在一些实施例中,序列行为节点的相对优先级是在运行时建立的。
附图说明
图1示出了智能控制系统的传统操作循环。
图2示出了用于智能控制系统的包容架构的系统控制的策略。
图3示出了智能控制系统的包容架构。
图4示出了动态包容模型的示例拓扑。
图5示出了根据一些实施例的双层包容控制系统的架构。
图6示出了根据一些实施例的由包容控制系统的各个元件使用的数据结构。
图7示出了根据一些实施例的包容控制系统的序列行为节点、活动节点和活动跟踪节点的预期输入和输出。
图8示出了根据一些实施例的双层包容控制系统的示例应用。
图9是示出了根据一些实施例的双层包容控制系统内的各个节点的操作的序列图。
图10示出了根据一些实施例的包括两个序列行为节点、两个活动节点和一个电机存储器的双层包容控制系统的操作。
图11示出了根据一些实施例的可以用于实现双层包容控制系统的包容控制器的一些方面。
图12示出了根据一些实施例的可以存储在包容控制器的存储器中的各种功能模块。
图13A至图13C示出了可以部署根据一些实施例的双层包容控制器以控制环境内的受控系统的各种方式。
图14是示出了根据一些实施例的控制系统的操作的流程图。
具体实施方式
如上所述,在传统的基于包容的架构中,所有行为都是突发的。虽然该属性可以对于处理环境中不可预测的改变是有用的,但它可能会在处理需要预期行为或行为序列的情形时造成困难。为了克服这个缺点,本文描述的一些实施例提供了一种混合技术,该混合技术可以提供包容架构的灵活性以及在某些情形中执行特定行为序列的能力(如系统控制的常规AI方法所提供的)两者。
本公开的某些方面及其实施例可以提供针对这些或其他挑战的解决方案。具体地,根据一些实施例的双层控制系统/方法提供协作以生成控制信号的两种包容架构。经典包容架构的行为节点分为被称为序列行为节点和活动节点的两个子组。在该模型中,序列行为节点负责被表示为计划的高级别行为,并且活动节点负责执行简单的任务或活动,可以执行该简单的任务或活动来执行所选择的计划。取决于情形,活动节点可以用于经典的类包容行为,其中所有行为是突发的。然而,在需要序列行为的情形中,序列行为节点可以用于提供要由活动节点执行的序列计划。
一些实施例提供了两级包容系统。在第一级中,完整的行为序列(被表示为由序列行为节点生成或针对序列行为节点生成的计划)以类似于经典包容架构的方式来竞争第二级的控制。然后,赢得第一级的行为用于协调较低级别的包容子系统。也就是说,较低级别中的活动现在竞争以执行获胜计划。然而,执行计划所需的活动必须在较低级别处与其他简单活动竞争,如果存在指示遵循计划不再是最佳选择的环境的变化,则可以选择其他简单活动。也就是说,在两级包容系统中,最终结果可能是遵循计划中定义的特定行为序列,或基于环境的意外变化而进行非计划的活动。
一些实施例可以被描述为提供一种系统/方法,该系统/方法允许具有控制的包容架构的智能系统中的序列行为(即,系统遵循已知的较低级别活动序列)以及单个较低级别活动的正常突发行为。一些实施例还可以被描述为提供一种控制系统,该控制系统包括两个级别的包容子系统(即,生成期望的序列行为的较高级别、以及通过竞争对系统致动器的控制的简单活动来实现序列行为的较低级别)。
某些实施例可以提供一个或多个技术优点。具体地,本文描述的一些实施例可以能够利用由标准动态包容架构提供的灵活性和可扩展性,同时还允许和/或使预定义的特定行为序列作为本文描述的两级包容系统/方法的结果而被执行。
现在将参考附图更全面地描述本文中设想的一些实施例。实施例作为示例提供,以将主题的范围传达给本领域技术人员。
图5中示出了双层包容控制系统100的架构。控制系统100包括两个主要子系统,即,计划执行子系统120和活动选择子系统140。计划执行子系统120包括序列行为节点122、想象存储器110和活动跟踪节点150。活动选择子系统140包括多个活动节点142、以及分别控制一个或多个致动器或电机节点160的一个或多个电机存储器130。除计划执行子系统120和活动选择子系统140之外,还可以提供可选的计划子系统200。
在机器人系统的上下文中,致动器160可以包括DC电机、线性致动器、或允许机器人移动并与环境交互的其他换能器。在其他类型的系统中,致动器160可以包括通信设备、加热设备、转向设备、或允许系统作用于环境的任何其他可控设备。
在常规MECA架构中,行为由行为节点生成,这些行为节点根据来自感知(传感器)和驱动(电机)输入的激活而被动态地包容。这些行为可以并行工作,例如,如果这些行为馈送不同的电机存储器,或者如果多于一个行为节点馈送相同的电机存储器,则这些行为可能会基于激活而竞争。在这种情况下,具有最高激活的行为赢得竞争并修改电机存储器,其成为用于致动的电机节点的输入。相应地,在常规MECA架构中,每个行为节点直接生成致动输出。
双层包容控制系统100中使用的序列行为节点122与常规MECA行为节点不同,因为序列行为节点122生成计划和/或计划请求,而不是生成电机节点的致动值,其中“计划”是需要完成预定任务或目标所需的动作步骤序列。每个动作步骤可以接收与动作相关联的参数,并且每个动作步骤可以与活动节点142中的不同活动节点相关联。针对每个动作步骤,参数可以是不同的。每个计划还具有与正在执行的计划的当前动作步骤的编号相对应的当前动作步骤参数。在任何时刻,当前动作步骤驱动活动节点142之中的显式活动。
在一些实施例中,序列行为节点122可以自己生成计划。在其他实施例中,计划可以由单独的计划子系统200生成,该计划子系统200在序列行为节点122的请求下生成计划,并且将所生成的计划传播到序列行为节点122。在一些实施例中,序列行为节点122可以基于感知和/或驱动输入来生成和/或修改由计划子系统200提供的计划。相应地,序列行为节点122可以不时地修改、更新或放弃其已经创建或从计划子系统200获得的现有计划。计划子系统200可以被实现为例如根据常规MECA方法的SOAR节点[6]。
想象存储器110是包括两个选择器节点(即,计划请求选择器节点112和计划选择器节点114)的处理节点。想象存储器110之所以如此命名,是因为其功能是模仿生物想象,即,生成和选择未来实施的计划。尽管被称为“存储器”,但想象存储器110执行处理功能,并且不仅用作数据存储。想象存储器110接收由序列行为节点122输出的计划,并且根据基于包容的选择方法来选择计划以用于执行。也就是说,行为节点122具有相关联的优先级(其可以提前静态地确定、或在运行时动态地确定),并且基于其相应的优先级以基于包容的方式竞争对活动选择子系统140的控制。
同样地,序列行为节点122也可以竞争对计划子系统200的访问。序列行为节点122向想象存储器110提交计划请求。计划请求由计划请求选择器节点112处理,该计划请求选择器节点112根据序列行为节点122的优先级来选择计划请求,并且将所选择的计划请求提交给计划子系统200。计划子系统200响应于所选择的计划请求来生成计划,并且将该计划传播到序列行为节点122。
活动跟踪节点150接收由计划选择器节点114输出的所选择的计划,并且跟踪系统的当前状态。也就是说,活动跟踪节点150保持跟踪所选择的计划的哪个特定活动当前正在执行(或建议执行)。活动跟踪节点150向活动节点142提供与当前所选择的活动有关的信息。活动节点142使用与当前所选择的活动有关的信息来生成电机控制命令,并且再次使用包容方法在活动选择子系统140内竞争经由电机存储器130对电机节点160的访问。
相应地,在活动选择子系统140内,活动节点142从活动跟踪节点150接收与正在执行的所选择的计划的当前动作步骤有关的指示,并且响应地生成用于电机节点160的电机控制命令。将电机控制命令提供给电机存储器130内的相应活动选择器节点132。对于每个电机节点160,相关联的活动选择器节点132基于包容模型(即,根据活动节点142的(静态或动态)优先级)来选择由活动节点142之一生成的电机控制命令,并且将所选择的电机控制命令发送到电机节点160。与想象存储器110一样,电机存储器130具有处理能力,并且不仅仅是简单的数据存储。
图6示出了由包容控制系统100的各个元件使用的数据结构的一些示例。如图6所示,计划由包括ActionStep(动作步骤)对象的列表的ActionSequencePlan(动作序列计划)对象表示。currentActionStep(当前动作步骤)参数标识当前正在执行的动作步骤。ActionStep具有相关联的参数和动作ID。它还具有stopCondition()(停止条件())方法,该方法由活动跟踪节点150使用以连续地评估是否已经满足结束ActionStep所需的条件。
图7示出了序列行为节点122、活动节点142和活动跟踪节点150的预期输入和输出。如图7所示,序列行为节点122接收来自控制系统100的感知和驱动输入、以及来自计划子系统200的计划输入,并且生成计划和计划请求作为输出。活动跟踪节点150接收计划和感知作为输入,并且生成当前动作步骤作为输出。活动节点142接收所选择的计划作为输入、以及来自控制系统100的感知和驱动输入,并且生成电机命令作为输出。
图8示出了根据一些实施例的双层包容控制系统100的示例应用。具体地,图8示出了用于运输机器人的控制系统,该运输机器人在工厂周围运输包裹,拾取包裹,并且将其放置在仓库的指定货架中、或处理单元的指定槽处。尽管图8中所示的示例应用涉及机器人技术,但是将理解,所描述的技术可以适用于与环境交互的任何可控系统。
在图8中所示的示例中,存在四种不同类型的序列行为节点122,即“前往能量点”节点、“避免碰撞”节点、“提供运输”节点和“探索”节点。这些节点中的每一个根据不同的观点或目标来提供计划。例如,“前往能量点”节点提供将使机器人从其当前位置移动、穿过不同的地标、到达最终位置(能量点,其中机器人可以对其电池进行充电)的计划。“避免碰撞”节点将检测到可能有人距离机器人太近,并且将立即停止机器人,直到人再次与机器人保持安全距离。“提供运输”节点生成计划,以将机器人从当前位置移动,穿过中间地标,直到接近要拾取的包裹。机器人将停在包裹位置前面,拾起包裹,然后再次移动,穿过更多中间地标,直到到达包裹目的地位置。然后,机器人将接近最终包裹位置,并且将包裹放置在那里。最后,“探索”节点创建计划,用于机器人在工厂周围移动,通过随机位置,尝试探索工厂。
所有这些计划可以使用与包括“移动到位置”活动节点、“移动到包裹”活动节点、“拾取”活动节点和“放置”活动节点在内的活动节点相关联的四种不同活动之一来创建。
“移动到位置”活动是在给定位置/角度参数(x,y,θ)的情况下将发送致动器命令以将机器人以到达角度θ移动到(x,y)位置的活动。“移动到包裹”活动是在给定表示包裹的姿势的7元组的情况下将计算将机器人刚好停在包裹位置前面的适当的(x,y,θ),并且将机器人移动到那里的活动。“拾取”节点是在给定要拾取的包裹的7元组姿势和内部槽号的情况下将使机器人手臂移动到所标识的位置,拾取包裹,并且将其存放在机器人内部指定的内部槽中的活动。“放置”活动是“拾取”活动的逆过程。在给定包裹放置位置的7元组姿势和内部槽号的情况下,机器人将从该内部槽中拾取包裹,并且将其放置在指定位置。
由每个序列行为节点122定义的计划将使用所描述的动态包容方案来竞争,并且具有较大评估等级(指示较高优先级)的计划将被发送到活动选择子系统140以用于执行。活动跟踪节点150监视每个活动的性能,并且当活动达到其停止条件时,将把所选择的计划的currentActionStep的值改变为下一动作步骤。在活动选择子系统140内,每个活动节点142将检查以查看currentActionStep是否是其的责任,如果是,则将向电机存储器发送适当的命令。
图9是示出了根据一些实施例的在双层包容控制系统100内的各个节点的操作的序列图,包括计划子系统或计划节点200、一个或多个序列行为节点122、活动跟踪节点150、以及一个或多个活动节点142的操作。在图9的序列图中,各个节点的操作相对于彼此是异步的。例如,每个节点的操作可以在与该节点相关联的定时器到期时被触发。
参考图5和图9,计划子系统200周期性地检查由想象存储器110的计划请求选择器节点112(图5)输出的计划请求,并且响应于该计划请求来生成新计划。
序列行为节点122周期性地检查所生成的计划(或生成)计划,并且将计划提交给计划选择器节点114(图5)。
活动跟踪节点150周期性地检查系统的当前状态,以确定当前正在执行哪个动作步骤,并且当确定已经达到停止条件时,将当前动作步骤更新为当前计划中的下一个动作。
活动节点142周期性地检查当前计划和当前动作步骤,并且向活动选择器节点132发送适当的电机控制命令。
图10示出了根据一些实施例的包括两个序列行为节点122A、122B、两个活动节点142A、142B、以及一个电机存储器130在内的双层包容控制系统100的操作。参考图5和图10,序列行为节点122A、122B均向计划子系统200提交计划请求。计划子系统200对请求进行处理,生成计划(计划1和计划2),并且将计划发送到相应的序列行为节点122A、122B。序列行为节点122A、122B将计划提交给动态包容系统(即,想象存储器110的计划选择器节点114),其中计划完成以用于执行。想象存储器110中的计划选择器节点114选择计划以用于执行,并且将所选择的计划发送到活动选择子系统140(图5)。还向活动跟踪节点150通知所选择的计划。在活动选择子系统140内,活动节点142A、142B接收所选择的计划,从活动跟踪节点150获得当前动作步骤,并且响应地生成电机命令。将电机命令提供给电机存储器130中的活动选择器节点132,该活动选择器节点132根据动态包容模型来选择电机命令以用于执行。
图11示出了可以用于实现双层包容控制系统100的包容控制器300的一些方面,该双层包容控制系统100包括计划执行子系统120、活动选择子系统140、和/或计划子系统200。包容控制器300包括用于执行一个或多个模块以执行本文描述的操作的处理电路34。存储器36连接到处理电路34,并且存储用于执行本文描述的操作的一个或多个功能程序模块。包容控制器300还包括通信接口32。在一些实施例中,包容控制器300可以嵌入在诸如机器人之类的自主设备内。在其他实施例中,计划执行子系统120可以远离设备定位,并且可以经由通信接口32与设备通信以接收传感器输入并发送电机命令。
图12示出了可以存储在存储器36中的用于执行本文描述的操作的各种功能模块。具体地,存储器36可以存储用于控制序列行为节点122的操作的一个或多个行为节点模块112、用于控制活动节点142的操作的一个或多个活动节点模块、用于控制计划节点200的操作的计划模块142、用于控制想象存储器110的操作的想象单元144、用于控制电机存储器130的操作的电机单元146、以及用于控制活动跟踪节点150的操作的活动跟踪模块148。图12中所示的模块可以被体现为存储在非暂时性计算机可读介质中的计算机程序指令。
图13A至图13C示出了可以部署根据一些实施例的双层包容控制器300以控制环境500内的受控系统400的各种方式。受控系统400可以是例如机器人或其他自主载具(例如,无人机)、制造系统、通信系统、计算机网络、或与环境500可控地交互的任何其他系统。环境500可以是制造车间、自然环境、通信介质、仓库、或与受控系统交互的任何其他物理环境。
如图13A所示,包容控制器300可以驻留在环境500外部,并且例如经由无线通信链路来远程控制受控系统400。如图13B所示,包容控制器300可以驻留在环境500内,但仍然经由有线或无线通信链路来远程控制受控系统400。如图13C所示,包容控制器300可以嵌入受控系统400内。
图14是示出了根据一些实施例的操作的流程图。参考图14,一种用于控制与环境交互的系统的操作的方法包括:通过多个序列行为节点获得(框1402)用于控制系统的多个计划,每个计划包括要由系统执行的活动序列。该方法基于序列行为节点的相对优先级来选择(框1404)相应计划之一以用于执行,并且执行(1406)所选择的计划。
执行所选择的计划可以包括:将所选择的计划发送到包括多个活动节点的活动选择子系统,活动节点中的至少一个与所选择的计划中包括的活动序列中的活动相关联;以及通过活动节点中的至少一个生成用于控制系统的致动器执行相关联的活动的控制信号。
该方法还可以包括:识别系统正在执行的当前活动,并且将当前活动的标识发送到活动节点。
活动选择子系统可以包括活动选择器节点,该活动选择器节点从多个活动节点接收控制信号,基于活动节点的相对优先级来选择控制信号之一,并且将所选择的控制信号施加到致动器。
该方法可以包括:响应于来自序列行为节点的计划请求来生成计划,并且将所生成的计划发送到序列行为节点。
该方法可以包括:在计划选择器节点处接收来自序列行为节点的计划请求,选择计划请求之一;以及将所选择的计划请求提交给计划子系统。选择计划请求可以包括:基于序列行为节点的相对优先级来选择用于提交给计划系统的计划请求。
一些实施例提供了一种用于控制与环境交互的系统的操作的基于包容的控制器。该控制器包括:计划执行子系统,该计划执行子系统包括多个序列行为节点,每个序列行为节点被配置为生成用于控制系统的相应计划,每个相应计划包括要由系统执行的活动序列;计划选择器节点,被配置为选择相应计划之一以用于执行,其中,计划选择器节点基于序列行为节点的相对优先级来选择相应计划之一以用于执行;以及活动选择子系统,接收所选择的计划,并执行所选择的计划。活动选择子系统包括多个活动节点,活动节点中的至少一个与所选择的计划中包括的活动序列中的活动相关联;并且响应于该计划,活动节点中的至少一个生成用于控制系统的致动器执行相关联的活动的控制信号。
基于包容的控制器还可以包括活动跟踪节点,该活动跟踪节点接收所选择的计划,识别系统正在执行的当前活动,并且将当前活动的标识发送到活动选择子系统。
活动选择子系统可以包括活动选择器节点,该活动选择器节点从多个活动节点接收控制信号,基于活动节点的相对优先级来选择控制信号之一,并且将所选择的控制信号施加到致动器。
基于包容的控制器还可以包括计划子系统,该计划子系统从序列行为节点接收计划请求,响应于该计划请求来生成计划,并且将所生成的计划发送到序列行为节点。
基于包容的控制器还可以包括计划请求选择器节点。序列行为节点向计划请求选择器节点提交相关计划请求,并且计划请求选择器节点选择计划请求之一,并将所选择的计划请求提交给计划子系统。
计划请求选择器节点可以基于序列行为节点的相对优先级来选择用于提交给计划子系统的计划请求。序列行为节点的相对优先级可以提前静态地建立、或在运行时动态地建立。
该系统可以包括机器人系统、制造系统、和/或通信系统。致动器可以包括电机。基于包容的控制器可以嵌入在系统内,或者设置在系统外部以远程地控制系统。
Claims (21)
1.一种用于控制与环境500交互的系统400的操作的基于包容的控制器100,包括:
计划执行子系统120,包括多个序列行为节点122,每个序列行为节点被配置为生成用于控制所述系统的相应计划,每个相应计划包括要由所述系统执行的活动序列;
计划选择器节点114,被配置为选择所述相应计划之一以用于执行,其中,所述计划选择器节点基于所述序列行为节点的相对优先级来选择所述相应计划之一以用于执行;以及
活动选择子系统140,接收所选择的计划,并且执行所选择的计划;
其中,所述活动选择子系统包括多个活动节点142,所述活动节点中的至少一个活动节点与所选择的计划中包括的活动序列中的活动相关联;并且
其中,在执行所述计划的过程中,所述活动节点中的所述至少一个活动节点生成用于控制所述系统的致动器执行相关联的活动的控制信号。
2.根据权利要求1所述的基于包容的控制器,还包括:
活动跟踪节点150,所述活动跟踪节点150接收所选择的计划,识别所述系统正在执行的当前活动,并且将所述当前活动的标识发送到所述活动选择子系统。
3.根据权利要求1所述的基于包容的控制器,其中,所述活动选择子系统包括活动选择器节点132,所述活动选择器节点132从所述多个活动节点接收控制信号,基于所述活动节点的相对优先级来选择所述控制信号之一,并且将所选择的控制信号施加到所述致动器。
4.根据权利要求1所述的基于包容的控制器,还包括:
计划子系统200,所述计划子系统200从所述序列行为节点接收计划请求,响应于所述计划请求而生成计划,并且将所生成的计划发送到所述序列行为节点。
5.根据权利要求4所述的基于包容的控制器,还包括:
计划请求选择器节点112;
其中,所述序列行为节点将相关计划请求提交给所述计划请求选择器节点;以及
所述计划请求选择器节点选择所述计划请求之一,并且将所选择的计划请求提交给所述计划子系统。
6.根据权利要求5所述的基于包容的控制器,其中,所述计划请求选择器节点基于所述序列行为节点的相对优先级来选择用于提交给所述计划子系统的计划请求。
7.根据前述权利要求中任一项所述的基于包容的控制器,其中,所述序列行为节点的相对优先级是在运行时建立的。
8.根据前述权利要求中任一项所述的基于包容的控制器,其中,所述系统包括机器人系统、制造系统和/或通信系统。
9.根据权利要求8所述的基于包容的控制器,其中,所述环境包括制造车间、自然环境和/或通信介质。
10.根据前述权利要求中任一项所述的基于包容的控制器,其中,所述致动器包括电机。
11.根据前述权利要求中任一项所述的基于包容的控制器,其中,所述基于包容的控制器嵌入在所述系统内。
12.一种用于控制与环境500交互的系统400的操作的方法,包括:
通过多个序列行为节点获得1402用于控制所述系统的多个计划,每个计划包括要由所述系统执行的活动序列;
基于所述序列行为节点的相对优先级来选择1404相应计划之一以用于执行;以及
执行1406所选择的计划。
13.根据权利要求12所述的方法,其中,执行所选择的计划包括:
将所选择的计划发送到包括多个活动节点142的活动选择子系统140,所述活动节点中的至少一个活动节点与所选择的计划中包括的活动序列中的活动相关联;以及
通过所述活动节点中的至少一个活动节点生成用于控制所述系统的致动器执行相关联的活动的控制信号。
14.根据权利要求12所述的方法,还包括:
识别所述系统正在执行的当前活动,并且将所述当前活动的标识发送到所述活动节点。
15.根据权利要求12所述的方法,其中,所述活动选择子系统包括活动选择器节点132,所述活动选择器节点132从所述多个活动节点接收控制信号,基于所述活动节点的相对优先级来选择所述控制信号之一,并且将所选择的控制信号施加到所述致动器。
16.根据权利要求12所述的方法,还包括:
响应于来自所述序列行为节点的计划请求来生成计划,并且将所生成的计划发送到所述序列行为节点。
17.根据权利要求16所述的方法,还包括:
在计划请求选择器节点112处接收来自所述序列行为节点的所述计划请求;
选择所述计划请求之一;以及
将所选择的计划请求提交给计划子系统。
18.根据权利要求17所述的方法,其中,选择计划请求包括:基于所述序列行为节点的相对优先级来选择用于提交给计划系统的计划请求。
19.根据权利要求12至18中任一项所述的方法,其中,所述序列行为节点的相对优先级是在运行时建立的。
20.一种被配置用于与环境500交互的系统400的操作的基于包容的控制器100、300,包括:
处理电路34;
存储器36,与所述处理电路耦接,其中,所述存储器包括指令,所述指令在由所述处理电路执行时,使所述基于包容的控制器执行包括以下各项在内的操作:
通过多个序列行为节点获得用于控制所述系统的多个计划,每个计划包括要由所述系统执行的活动序列;
基于所述序列行为节点的相对优先级来选择相应计划之一以用于执行;以及
执行所选择的计划。
21.根据权利要求20所述的基于包容的控制器,其中,所述存储器包括指令,所述指令在由所述处理电路执行时,使所述基于包容的控制器执行包括根据权利要求13至19中任一项所述的任何操作的进一步操作。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IN202141037757 | 2021-08-20 | ||
IN202141037757 | 2021-08-20 | ||
PCT/EP2022/072962 WO2023021091A1 (en) | 2021-08-20 | 2022-08-17 | Sequential behavior for intelligent control in subsumption-like architecture |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117795439A true CN117795439A (zh) | 2024-03-29 |
Family
ID=83232588
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280052962.4A Pending CN117795439A (zh) | 2021-08-20 | 2022-08-17 | 类包容架构中用于智能控制的序列行为 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20240361753A1 (zh) |
EP (1) | EP4388378A1 (zh) |
CN (1) | CN117795439A (zh) |
WO (1) | WO2023021091A1 (zh) |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130054023A1 (en) * | 2011-08-30 | 2013-02-28 | 5D Robotics, Inc. | Asynchronous Data Stream Framework |
-
2022
- 2022-08-17 WO PCT/EP2022/072962 patent/WO2023021091A1/en active Application Filing
- 2022-08-17 EP EP22765836.6A patent/EP4388378A1/en active Pending
- 2022-08-17 CN CN202280052962.4A patent/CN117795439A/zh active Pending
- 2022-08-17 US US18/683,830 patent/US20240361753A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2023021091A1 (en) | 2023-02-23 |
EP4388378A1 (en) | 2024-06-26 |
US20240361753A1 (en) | 2024-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Li et al. | A general framework of motion planning for redundant robot manipulator based on deep reinforcement learning | |
EP2014425B1 (en) | Method and device for controlling a robot | |
Nordin et al. | Real time control of a Khepera robot using genetic programming | |
Kornuta et al. | Robot control system design exemplified by multi-camera visual servoing | |
Xia et al. | A reinforcement learning method of obstacle avoidance for industrial mobile vehicles in unknown environments using neural network | |
Ying et al. | Trajectory generation for multiprocess robotic tasks based on nested dual-memory deep deterministic policy gradient | |
KR100877715B1 (ko) | 지능형 로봇을 위한 센싱, 구동 및 실시간 행동을 포함한리액티브 층 소프트웨어의 구조 | |
Stan et al. | Reinforcement learning for assembly robots: A review | |
Sheikh et al. | A comparison of various robotic control architectures for autonomous navigation of mobile robots | |
Li et al. | A framework for coordinated control of multiagent systems and its applications | |
CN113305845B (zh) | 一种多机械臂的协作方法 | |
CN117795439A (zh) | 类包容架构中用于智能控制的序列行为 | |
De Lima et al. | Deliberative/reactive architecture of a multirobot patrol system based on supervisory control theory | |
Khan et al. | Autonomous and robust multi-robot cooperation using an artificial immune system | |
Watanabe et al. | A survey of robotic control systems constructed by using evolutionary computations | |
Peterson et al. | Dynamic behavior sequencing for hybrid robot architectures | |
Lehmann et al. | Petri nets for task supervision in humanoid robots | |
Tsai et al. | Advances and challenges on intelligent learning in control systems | |
Yang et al. | Null space based efficient reinforcement learning with hierarchical safety constraints | |
CN109834713B (zh) | 仿人脑机器人控制中枢及仿人脑行走机器人控制中枢 | |
Miller et al. | Exploiting known topologies to navigate with low-computation sensing | |
Finkemeyer et al. | The adaptive selection matrix—A key component for sensor-based control of robotic manipulators | |
Rohrer | S-Learning: a biomimetic algorithm for learning, memory, and control in robots | |
Wang | Computational intelligence in autonomous mobile robotics-A review | |
US20210390377A1 (en) | Autonomous self-learning system |
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 |