Researcher profile

Petter Ögren

Petter Ögren contributes to research discovery and scholarly infrastructure.

ResearcherAffiliation not importedOpen to collaborate

Trust snapshot

Quick read

Trust 21 - EmergingVerification L1Unclaimed author
8works
0followers
7topics
4close collaborators

Actions

Decide how to stay connected

Follow researcher0

Identity and collaboration

How to connect with this researcher

Claiming links this public author record to a researcher profile and unlocks direct collaboration workflows.

Log in to claim

Direct collaboration

Open a focused conversation when the fit is right

Claim this author entity first to unlock direct invitations.

Research graph

See the researcher in context

Open full explorer

Inspect adjacent work, topics, institutions and collaborators without jumping out to a separate graph page.

Building this graph slice

BZPEER is loading the nearby papers, people, topics and institutions for this page.

Published work

8 published item(s)

preprint2022arXiv

Adding Neural Network Controllers to Behavior Trees without Destroying Performance Guarantees

In this paper, we show how Behavior Trees that have performance guarantees, in terms of safety and goal convergence, can be extended with components that were designed using machine learning, without destroying those performance guarantees. Machine learning approaches such as reinforcement learning or learning from demonstration can be very appealing to AI designers that want efficient and realistic behaviors in their agents. However, those algorithms seldom provide guarantees for solving the given task in all different situations while keeping the agent safe. Instead, such guarantees are often easier to find for manually designed model-based approaches. In this paper we exploit the modularity of behavior trees to extend a given design with an efficient, but possibly unreliable, machine learning component in a way that preserves the guarantees. The approach is illustrated with an inverted pendulum example.

preprint2022arXiv

Behavior Trees in Robot Control Systems

In this paper we will give a control theoretic perspective on the research area of behavior trees in robotics. The key idea underlying behavior trees is to make use of modularity, hierarchies and feedback, in order to handle the complexity of a versatile robot control system. Modularity is a well-known tool to handle software complexity by enabling development, debugging and extension of separate modules without having detailed knowledge of the entire system. A hierarchy of such modules is natural, since robot tasks can often be decomposed into a hierarchy of sub-tasks. Finally, feedback control is a fundamental tool for handling uncertainties and disturbances in any low level control system, but in order to enable feedback control on the higher level, where one module decides what submodule to execute, information regarding progress and applicability of each submodule needs to be shared in the module interfaces. We will describe how these three concepts come to use in theoretical analysis, practical design, as well as extensions and combinations with other ideas from control theory and robotics.

preprint2022arXiv

Improving the Performance of Backward Chained Behavior Trees that use Reinforcement Learning

In this letter we show how to improve the performance of backward chained behavior trees (BTs) that use reinforcement learning (RL). BTs represent a hierarchical and modular way of combining control policies into higher level control policies. Backward chaining is a design principle for the construction of BTs that combine reactivity with goal directed actions in a structured way. The backward chained structure has also enabled convergence proofs for BTs, identifying a set of local conditions that lead to the convergence of all trajectories to a set of desired goal states. The key idea of this letter is to improve performance of backward chained BTs by using the conditions identified in a theoretical convergence proof to setup the RL problems for individual controllers. In particular, previous analysis identified so-called active constraint conditions (ACCs), that should not be broken in order to avoid having to return to work on previously achieved subgoals. We propose a way to setup the RL problems, such that they do not only achieve each immediate subgoal, but also avoid violating the identified ACCs. The resulting performance improvement depends on how often ACC violations occurred before the change, and how much effort was needed to re-achieve them. The proposed approach is illustrated in a dynamic simulation environment.

preprint2020arXiv

A Survey of Behavior Trees in Robotics and AI

Behavior Trees (BTs) were invented as a tool to enable modular AI in computer games, but have received an increasing amount of attention in the robotics community in the last decade. With rising demands on agent AI complexity, game programmers found that the Finite State Machines (FSM) that they used scaled poorly and were difficult to extend, adapt and reuse. In BTs, the state transition logic is not dispersed across the individual states, but organized in a hierarchical tree structure, with the states as leaves. This has a significant effect on modularity, which in turn simplifies both synthesis and analysis by humans and algorithms alike. These advantages are needed not only in game AI design, but also in robotics, as is evident from the research being done. In this paper we present a comprehensive survey of the topic of BTs in Artificial Intelligence and Robotic applications. The existing literature is described and categorized based on methods, application areas and contributions, and the paper is concluded with a list of open research challenges.

preprint2020arXiv

Combining Control Barrier Functions and Behavior Trees for Multi-Agent Underwater Coverage Missions

Robot missions typically involve a number of desired objectives, such as avoiding collisions, staying connected to other robots, gathering information using sensors and returning to the charging station before the battery runs out. Some of these objectives need to be taken into account at the same time, such as avoiding collisions and staying connected, while others are focused upon during different parts of the executions, such as returning to the charging station and connectivity maintenance. In this paper, we show how Control Barrier Functions(CBFs) and Behavior Trees(BTs) can be combined in a principled manner to achieve both types of task compositions, with performance guarantees in terms of mission completion. We illustrate our method with a simulated underwater coverage mission.

preprint2020arXiv

Underwater Caging and Capture for Autonomous Underwater Vehicles

In this paper, we consider the problem of caging and eventual capture of an underwater entity using multiple Autonomous Underwater Vehicles (AUVs) in a 3D water volume We solve this problem both with and without taking bathymetry into account. Our proposed algorithm for range-limited sensing in 3D environments captures a finite-speed entity based on sparse and irregular observations. After an isolated initial sighting of the entity, the uncertainty of its whereabouts grows while deployment of the AUV system is underway. To contain the entity, an initial cage, or barrier of sensing footprints, is created around the initial sighting, using islands and other terrain as part of the cage if available. After the initial cage is established, the system waits for a second sighting, and the possible opportunity to create a smaller, shrinkable cage. This process continues until at some point it is possible to create this smaller cage, resulting in capture, meaning the entity is sensed directly and continuously. We present a set of algorithms for addressing the scenario above, and illustrate their performance on a set of examples. The proposed algorithm is a combination of solutions to the min-cut problem, the set cover problem, the linear bottleneck assignment problem and the Thomson problem.

preprint2018arXiv

Towards Blended Reactive Planning and Acting using Behavior Trees

In this paper, we show how a planning algorithm can be used to automatically create and update a Behavior Tree (BT), controlling a robot in a dynamic environment. The planning part of the algorithm is based on the idea of back chaining. Starting from a goal condition we iteratively select actions to achieve that goal, and if those actions have unmet preconditions, they are extended with actions to achieve them in the same way. The fact that BTs are inherently modular and reactive makes the proposed solution blend acting and planning in a way that enables the robot to efficiently react to external disturbances. If an external agent undoes an action the robot reexecutes it without re-planning, and if an external agent helps the robot, it skips the corresponding actions, again without replanning. We illustrate our approach in two different robotics scenarios.

preprint2015arXiv

Learning of Behavior Trees for Autonomous Agents

Definition of an accurate system model for Automated Planner (AP) is often impractical, especially for real-world problems. Conversely, off-the-shelf planners fail to scale up and are domain dependent. These drawbacks are inherited from conventional transition systems such as Finite State Machines (FSMs) that describes the action-plan execution generated by the AP. On the other hand, Behavior Trees (BTs) represent a valid alternative to FSMs presenting many advantages in terms of modularity, reactiveness, scalability and domain-independence. In this paper, we propose a model-free AP framework using Genetic Programming (GP) to derive an optimal BT for an autonomous agent to achieve a given goal in unknown (but fully observable) environments. We illustrate the proposed framework using experiments conducted with an open source benchmark Mario AI for automated generation of BTs that can play the game character Mario to complete a certain level at various levels of difficulty to include enemies and obstacles.