行为树(BT)在机器人界变得越来越流行。BT工具非常适合决策应用程序,允许机器人执行复杂的行为,同时也可以向人类解释。验证使用的BT在安全性和可靠性要求方面已经很好地构建是必不可少的,尤其是对于在关键环境中运行的机器人。在这项工作中,我们建议对行为树的形式规范和一种证明已经使用过的树的不变性的方法,同时使最终用户的树木形式化的复杂性保持简单。允许在行为树的特定实例中测试行为树的特定实例,而无需了解更抽象的形式化级别。
translated by 谷歌翻译
行为树起源于视频游戏,是一种控制NPC的方法,但此后在机器人学界获得了吸引力,它是描述执行任务的框架。Behaverify是一种从PY_TREE创建NUXMV模型的工具。对于标准化的复合节点,此过程是自动的,不需要其他用户输入。自动支持各种叶子节点,不需要其他用户输入,但是自定义的叶节点将需要其他用户输入才能正确建模。Behaverify可以提供一个模板以使其更轻松。Behaverify能够创建具有100多个节点的NUXMV模型,NUXMV能够直接和通过反例验证该模型上的各种非平凡LTL属性。该模型具有并行节点,选择器和序列节点。与基于BTCompiler的模型的比较表明,由Behaverify创建的模型表现更好。
translated by 谷歌翻译
行为树(BT)是一种在自主代理中(例如机器人或计算机游戏中的虚拟实体)之间在不同任务之间进行切换的方法。 BT是创建模块化和反应性的复杂系统的一种非常有效的方法。这些属性在许多应用中至关重要,这导致BT从计算机游戏编程到AI和机器人技术的许多分支。在本书中,我们将首先对BTS进行介绍,然后我们描述BTS与早期切换结构的关系,并且在许多情况下如何概括。然后,这些想法被用作一套高效且易于使用的设计原理的基础。安全性,鲁棒性和效率等属性对于自主系统很重要,我们描述了一套使用BTS的状态空间描述正式分析这些系统的工具。借助新的分析工具,我们可以对BTS如何推广早期方法的形式形式化。我们还显示了BTS在自动化计划和机器学习中的使用。最后,我们描述了一组扩展的工具,以捕获随机BT的行为,其中动作的结果由概率描述。这些工具可以计算成功概率和完成时间。
translated by 谷歌翻译
自主机器人结合了各种技能,形成越来越复杂的行为,称为任务。尽管这些技能通常以相对较低的抽象级别进行编程,但它们的协调是建筑分离的,并且经常以高级语言或框架表达。几十年来,州机器一直是首选的语言,但是最近,行为树的语言在机器人主义者中引起了人们的关注。行为树最初是为计算机游戏设计的,用于建模自主参与者,提供了基于树木的可扩展的使命表示,并受到支持支持模块化设计和代码的重复使用。但是,尽管使用了该语言的几种实现,但对现实世界中的用法和范围知之甚少。行为树提供的概念与传统语言(例如州机器)有何关系?应用程序中如何使用行为树和状态机概念?我们介绍了对行为树中关键语言概念的研究及其在现实世界机器人应用中的使用。我们识别行为树语言,并将其语义与机器人技术中最著名的行为建模语言进行比较。我们为使用这些语言的机器人应用程序挖掘开源存储库并分析此用法。我们发现两种行为建模语言在语言设计及其在开源项目中的用法之间的相似性方面,以满足机器人域的需求。我们为现实世界行为模型的数据集提供了贡献,希望激发社区使用和进一步开发这种语言,相关的工具和分析技术。
translated by 谷歌翻译
任务(SOT)控件允许机器人同时实现根据错误空间中(在)平等约束方面提出的许多优先目标。由于这种方法在每个时间步长求解了一系列二次程序(QP),而无需考虑任何时间状态的演变,因此适用于处理局部干扰。但是,其限制在于处理需要非二次目标才能实现特定目标的情况,以及应对控制干扰的情况,需要在本地进行次优的行动。最近的作品通过利用有限状态机器(FSM)来解决这一缺点,以使机器人不会陷入本地最小值的方式组成任务。然而,反应性和模块化之间的内在折衷是FSM的表征使它们在动态环境中定义反应性行为不切实际。在这封信中,我们将SOT控制策略与行为树(BTS)相结合,该任务切换结构在反应性,模块化和可重复使用方面解决了FSM的某些局限性。 Franka Emika Panda 7-DOF操纵器的实验结果显示了我们框架的稳健性,该框架使机器人可以从SOT和BTS的反应性中受益。
translated by 谷歌翻译
多机器人和多代理系统通过系统的局部行为集成在组中表现出集体(Swarm)智能。分享有关任务和环境知识的代理商可以提高个人和任务水平的绩效。但是,这很难实现,部分原因是缺乏用于在代理之间转移一部分知识(行为)的通用框架。本文提出了一个新的知识表示框架和一种称为KT-BT:通过行为树的知识转移的转移策略。 KT-BT框架遵循通过在线行为树框架进行查询反应加速机制,在该框架中,代理对未知条件进行广播查询,并使用条件性能控制子流量以适当的知识做出响应。我们嵌入了一种称为StringBT的新型语法结构,该结构编码知识,从而实现行为共享。从理论上讲,我们研究了KT-BT框架的特性,与异质系统相比,整个小组的高知识同质性具有高度知识的性质,而没有能力共享知识。我们在模拟的多机器人搜索和救援问题中广泛验证了我们的框架。结果表明,在各种情况下,成功传递知识转移并提高了群体绩效。我们进一步研究了机会和沟通范围对一组代理商中群体绩效,知识传播和功能异质性的影响,并提供有趣的见解。
translated by 谷歌翻译
行为树代表了将几个低级控制策略结合到高级任务切换策略中的分层和模块化方式。在不同策略之间的任务切换方面也可以看到混合动态系统,因此已经进行了行为树和混合动态系统之间的几个比较,而是仅在离散时间内进行间隔。缺乏正式的行为树连续时间制定。此外,已经进行了特定类行为树设计的收敛分析,但不是一般设计。在这封信中,我们提供了行为树的第一次连续时间制定,表明它们可以被视为不连续的动态系统(混合动态系统的子类),这使得存在于行为树的存在和唯一性结果,最后,提供足够的条件,在该系统下,这些系统将收敛到通用设计的状态空间的所需区域。通过这些结果,可以在设计行为树控制器时使用持续时间动态系统的大量结果。
translated by 谷歌翻译
在本文中,我们提供了一个实用的证明,即与有限状态机(FSM)相比,行为树(BT)中的模块化如何减少编程机器人任务的努力。近年来,代表控制自治药物的任务计划的方法已从标准FSM转移到BTS。与标准方法相比,文献中的许多作品都强调并证明了这种设计的好处,尤其是在模块化,反应性和人类可读性方面。但是,这些作品通常无法在实施这些政策以及修改它们所需的编程工作中提供切实的比较。这是许多机器人应用中的一个相关方面,在该方面,设计选择是由政策的鲁棒性和对其进行编程所需的时间来决定的。在这项工作中,我们通过评估修改它们的成本来比较向后链的BT和FSM的耐故障设计。我们通过在模拟环境中通过一组实验来验证分析,其中移动操纵器可以解决项目提取任务。
translated by 谷歌翻译
在AI研究中,合成动作计划通常使用了抽象地指定由于动作而导致的动作的描述性模型,并针对有效计算状态转换来定制。然而,执行计划的动作已经需要运行模型,其中使用丰富的计算控制结构和闭环在线决策来指定如何在非预定的执行上下文中执行动作,对事件作出反应并适应展开情况。整合行动和规划的审议演员通常需要将这两种模型一起使用 - 在尝试开发不同的型号时会导致问题,验证它们的一致性,并顺利交错和规划。作为替代方案,我们定义和实施综合作用和规划系统,其中规划和行为使用相同的操作模型。这些依赖于提供丰富的控制结构的分层任务导向的细化方法。称为反应作用发动机(RAE)的作用组件由众所周知的PRS系统启发。在每个决定步骤中,RAE可以从计划者获取建议,以获得关于效用功能的近乎最佳选择。随时计划使用像UPOM的UCT类似的蒙特卡罗树搜索程序,其推出是演员操作模型的模拟。我们还提供与RAE和UPOM一起使用的学习策略,从在线代理体验和/或模拟计划结果,从决策背景下映射到方法实例以及引导UPOM的启发式函数。我们展示了富豪朝向静态域的最佳方法的渐近融合,并在实验上展示了UPOM和学习策略显着提高了作用效率和鲁棒性。
translated by 谷歌翻译
在动态和远程环境中,对自主系统的高级自治和鲁棒性的需求促使开发人员提出了新的软件体系结构。一种常见的架构样式是将机器人系统的功能总结为基本动作(称为技能)的功能,在该动作上,在该动作中实施了技能管理层以结构,测试和控制功能层。但是,当前可用的验证工具仅在不复制系统实际执行的模型上提供特定于任务的验证或验证,这使得难以确保其对意外事件的鲁棒性。为此,已经开发出一种工具,即Skinet,以将系统的基于技能的架构转换为Petri网络,以建模技能和资源的状态机器行为。 Petri NET允许使用模型检查,例如线性时间逻辑(LTL)或计算树逻辑(CTL),以供用户分析和验证系统的模型。
translated by 谷歌翻译
作为工业机器人的一般趋势,正在开发或重新设计的安全功能越来越多的安全功能,而不是通过安全继电器或互锁电路等物理硬件处理。这一趋势强化了补充基于传统,基于输入的测试和质量手术的重要性,这些测试和质量程序在今天广泛应用于行业,具有正式的验证和模型检查方法。为此,本文侧重于ABB工业涂料机器人中的代表性安全关键系统,即高压静电控制系统(HVC)。 HVC产生的高压的实际收敛性,对于安全操作必不可少,使用新颖的和一般共同验证框架正式验证,其中硬件和软件模型通过平台映射相关。这种方法使得具有高度多样化和专业的工具的务实组合。本文的主要贡献包括有关如何在工具之间传输硬件抽象和验证结果的详细信息,以便验证系统级安全性。值得注意的是,本文中考虑的HVC应用程序具有相当通用的反馈控制器形式。因此,这里报告的共同验证框架和经验对跟踪设定值引用的任何网络物理系统也非常相关。
translated by 谷歌翻译
Explainable AI (XAI) has the potential to make a significant impact on building trust and improving the satisfaction of users who interact with an AI system for decision-making. There is an abundance of explanation techniques in literature to address this need. Recently, it has been shown that a user is likely to have multiple explanation needs that should be addressed by a constellation of explanation techniques which we refer to as an explanation strategy. This paper focuses on how users interact with an XAI system to fulfil these multiple explanation needs satisfied by an explanation strategy. For this purpose, the paper introduces the concept of an "explanation experience" - as episodes of user interactions captured by the XAI system when explaining the decisions made by its AI system. In this paper, we explore how to enable and capture explanation experiences through conversational interactions. We model the interactive explanation experience as a dialogue model. Specifically, Behaviour Trees (BT) are used to model conversational pathways and chatbot behaviours. A BT dialogue model is easily personalised by dynamically extending or modifying it to attend to different user needs and explanation strategies. An evaluation with a real-world use case shows that BTs have a number of properties that lend naturally to modelling and capturing explanation experiences; as compared to traditionally used state transition models.
translated by 谷歌翻译
在本文中,我们展示了具有性能保证的行为树如何在安全性和目标融合方面如何扩展使用使用机器学习设计的组件,而不会破坏这些性能保证。诸如强化学习或从演示中学习之类的机器学习方法对想要在代理商中有效和现实的行为的AI设计师非常有吸引力。但是,这些算法很少提供保证,可以在所有不同情况下解决给定的任务,同时确保代理商的安全。取而代之的是,对于手动设计的基于模型的方法,通常更容易找到此类保证。在本文中,我们利用行为树的模块化来扩展给定的设计,以保存保证的方式有效但可能不可靠的机器学习组件。用倒置的示例说明了该方法。
translated by 谷歌翻译
软件验证是建立关键系统可靠性的重要工具。机器人领域的一个潜在应用领域是机器人在日常区域和高度专业的域中执行更多任务。通常,机器人可以遵循计划,如果此计划中存在错误,机器人将无法可靠地执行。提前检查错误计划的能力可能会阻止这一点。 Python是通过使用机器人操作系统(ROS)和其他各种库中机器人域中流行的编程语言。 Python的Turtle软件包提供了一种移动代理,我们使用通信顺序流程(CSP)正式对其进行模拟。我们具有CSP模型和Python组件的交互式工具链CSP2TURTLE,可以在Python执行之前在CSP中验证Turtle计划。这意味着可以避免某些类别的错误,并为乌龟程序和更复杂的机器人系统进行更详细的验证提供了一个起点。我们用2D网格世界中的机器人导航和避免障碍物的示例来说明我们的方法。
translated by 谷歌翻译
行为树(BTS)的发现影响了游戏中的人工智能(AI)领域,通过提供游戏设计人员可管理的非玩家字符(NPCS)逻辑的灵活性和自然表示。尽管如此,更好的压力更好的NPCS AI-Agents强迫手工BTS的复杂性变得勉强易于易于出错。另一方面,虽然许多刚刚推出的在线游戏遭受了玩家短缺,但具有广泛功能的AI的存在可能会增加球员保留。因此,为了处理上述挑战,最近的领域的趋势专注于​​自动创建AI-Agents:从深层和加固技术到组合(约束)优化和BTS演化的技术。在本文中,我们提出了一种新的半自动构建AI-AGENT的方法,通过在源和BT游戏玩法之间的发达的相似度量下调整和调整专家创建的BT来模仿和概括的人类游戏。为此,我们配制了混合离散 - 连续优化问题,其中BT的拓扑和功能变化在数值变量中反映,并构建了专用的杂化 - 成胸型。呈现方法的表现在实验上验证了原型实时策略游戏。进行实验确认了提出的方法的效率和观点,该方法将适用于商业比赛。
translated by 谷歌翻译
本文迈出了一个全局线性时间逻辑规范的反应性,分层多机器人任务分配和计划框架的第一步。四倍体机器人和轮式机器人的功能都可以通过一个异质团队来完成各种导航和交付任务。但是,当部署在现实世界中时,所有机器人都可能容易受到不同类型的干扰,包括但不限于运动失败,人类干预和环境的障碍。为了解决这些干扰,我们建议任务级的本地和全局重新分配策略,以有效地在线生成更新的动作状态序列,同时保证完成原始任务的完成。这些任务重新分配方法消除了重建整个计划或重新合成新任务的方法。为了将任务计划者与低级输入集成,行为树执行层监视不同类型的干扰,并采用重新分配方法来制定相应的恢复策略。为了评估该计划框架,在现实的医院环境中进行了动态模拟,其异质机器人团队由四足动物和轮式机器人组成,用于交付任务。
translated by 谷歌翻译
已知尝试构建自主机器人依赖复杂的控制架构,通常使用机器人操作系统平台(ROS)实现。在这些系统中需要运行时适应,以应对组件故障,并使用动态环境引起的突发事件 - 否则,这些系统会影响任务执行的可靠性和质量。关于如何在机器人中构建自适应系统的现有提案通常需要重大重新设计控制架构,并依赖于对机器人社区不熟悉的复杂工具。此外,它们很难重复使用应用程序。本文介绍了MRO:基于ROS的机器人控制架构的运行时调整的基于模型的框架。 MRO使用域特定语言的组合来模拟架构变体,并捕获任务质量问题,以及基于本体的Mape-K和Meta-Contoil Visions的运行时适应的愿望。在两个现实ROS的机器人示范器中施加MRO的实验结果在特派团执行的质量方面,展示了我们的方法的好处,以及机器人应用程序的MROS的可扩展性和可重复性。
translated by 谷歌翻译
在现实世界应用中,推理不完整的知识,传感,时间概念和数字约束的能力至关重要。尽管几个AI计划者能够处理其中一些要求,但它们主要限于特定类型的约束问题。本文提出了一种新的计划方法,该方法将临时计划构建结合在时间计划框架中,提供考虑数字约束和不完整知识的解决方案。我们建议对计划域定义语言(PDDL)进行较小的扩展,以模型(i)不完整,(ii)通过未知命题进行操作的知识传感动作,以及(iii)非确定性感应效应的可能结果。我们还引入了一组新的计划域来评估我们的求解器,该求解器在各种问题上表现出良好的性能。
translated by 谷歌翻译
我们通过策略提取(MSVIPER)提出了多种可验证的增强学习,这是一种策略蒸馏到决策树以改进机器人导航的新方法。 MSVIPER使用任何强化学习(RL)技术来学习一项“专家”政策,涉及学习国家行动映射,然后使用模仿学习来从中学习决策树策略。我们证明,MSVIPER会导致有效的决策树,并可以准确模仿专家政策的行为。此外,我们提出了有效的政策蒸馏和树修改技术,这些技术利用决策树结构,可以改进政策而无需再培训。我们使用我们的方法来改善用于室内和室外场景的基于RL的机器人导航算法的性能。我们证明了在减少冻结和振荡行为(减少95 \%降低)方面的好处。
translated by 谷歌翻译
Amoebot模型将主动的可编程物质抽象为简单的计算元素的集合,称为Amoebot,它们在本地交互以集体完成协调和运动任务。自2014年SPAA推出以来,越来越多的文献已经改编了其对各种问题的假设。但是,如果没有标准化的假设层次结构,则很难对Amoebot模型下的结果进行精确的系统比较。我们提出了规范的Amoebot模型,该模型是一个更新的形式化,可区分核心模型特征和假设变体系列。规范Amoebot模型解决的关键改进是并发。现有的许多文献隐含地假设Amoebot动作是孤立且可靠的,将分析降低到一个顺序设置,其中最多一次是Amoebot活跃的。但是,实际可编程系统是并发的。 Canonical Amoebot模型将所有Amoebot通信形式化为消息传递,利用并发执行的对抗激活模型。在这种颗粒状的时间处理下,我们采用两种互补方法来并发算法设计。我们首先在任何并发执行下建立一组足够的条件,以实现算法正确性,将并发控制直接嵌入算法设计中。然后,我们提出了一个并发控制框架,该框架使用锁来转换在顺序设置中终止的Amoebot算法,并满足某些约定在并发设置中表现出等效行为的算法中的某些约定。作为案例研究,我们使用简单的六边形形成算法证明了这两种方法。共同的Amoebot模型以及这些并发算法设计的互补方法设计开放的新方向,用于分布式计算可编程问题。
translated by 谷歌翻译