Behavior Trees in Robotics and AI
eBook - ePub

Behavior Trees in Robotics and AI

An Introduction

  1. 192 pages
  2. English
  3. ePUB (mobile friendly)
  4. Available on iOS & Android
eBook - ePub

Behavior Trees in Robotics and AI

An Introduction

About this book

Behavior Trees (BTs) provide a way to structure the behavior of an artificial agent such as a robot or a non-player character in a computer game. Traditional design methods, such as finite state machines, are known to produce brittle behaviors when complexity increases, making it very hard to add features without breaking existing functionality. BTs were created to address this very problem, and enables the creation of systems that are both modular and reactive. Behavior Trees in Robotics and AI: An Introduction provides a broad introduction as well as an in-depth exploration of the topic, and is the first comprehensive book on the use of BTs.

This book introduces the subject of BTs from simple topics, such as semantics and design principles, to complex topics, such as learning and task planning. For each topic, the authors provide a set of examples, ranging from simple illustrations to realistic complex behaviors, to enable the reader to successfully combine theory with practice.

Starting with an introduction to BTs, the book then describes how BTs relate to, and in many cases, generalize earlier switching structures, or control architectures. These ideas are then used as a foundation for a set of efficient and easy to use design principles. The book then presents a set of important extensions and provides a set of tools for formally analyzing these extensions using a state space formulation of BTs.

With the new analysis tools, the book then formalizes the descriptions of how BTs generalize earlier approaches and shows how BTs can be automatically generated using planning and learning. The final part of the book provides an extended set of tools to capture the behavior of Stochastic BTs, where the outcomes of actions are described by probabilities. These tools enable the computation of both success probabilities and time to completion.

This book targets a broad audience, including both students and professionals interested in modeling complex behaviors for robots, game characters, or other AI agents. Readers can choose at which depth and pace they want to learn the subject, depending on their needs and background.

Frequently asked questions

Yes, you can cancel anytime from the Subscription tab in your account settings on the Perlego website. Your subscription will stay active until the end of your current billing period. Learn how to cancel your subscription.
At the moment all of our mobile-responsive ePub books are available to download via the app. Most of our PDFs are also available to download and we're working on making the final remaining ones downloadable now. Learn more here.
Perlego offers two plans: Essential and Complete
  • Essential is ideal for learners and professionals who enjoy exploring a wide range of subjects. Access the Essential Library with 800,000+ trusted titles and best-sellers across business, personal growth, and the humanities. Includes unlimited reading time and Standard Read Aloud voice.
  • Complete: Perfect for advanced learners and researchers needing full, unrestricted access. Unlock 1.4M+ books across hundreds of subjects, including academic and specialized titles. The Complete Plan also includes advanced features like Premium Read Aloud and Research Assistant.
Both plans are available with monthly, semester, or annual billing cycles.
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 1000+ topics, we’ve got you covered! Learn more here.
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more here.
Yes! You can use the Perlego app on both iOS or Android devices to read anytime, anywhere — even offline. Perfect for commutes or when you’re on the go.
Please note we cannot support devices running on iOS 13 and Android 7 or earlier. Learn more about using the app.
Yes, you can access Behavior Trees in Robotics and AI by Michele Colledanchise,Petter Ögren in PDF and/or ePUB format, as well as other popular books in Computer Science & Computer Science General. We have over one million books available in our catalogue for you to explore.

Information

Contents

Preface
CHAPTER 1 ■ What Are Behavior Trees?
1.1 A Short History and Motivation of BTs
1.2 What is wrong with FSMs? The Need for Reactiveness and Modularity
1.3 Classical Formulation of BTs
1.3.1 Execution example of a BT
1.3.2 Control flow nodes with memory
1.4 Creating a BT for Pac-Man from Scratch
1.5 Creating a BT for a Mobile Manipulator Robot
1.6 Use of BTs in Robotics and AI
1.6.1 BTs in autonomous vehicles
1.6.2 BTs in industrial robotics
1.6.3 BTs in the Amazon picking challenge
1.6.4 BTs inside the social robot JIBO
CHAPTER 2 ■ How Behavior Trees Generalize and Relate to Earlier Ideas
2.1 Finite State Machines
2.1.1 Advantages and disadvantages
2.2 Hierarchical Finite State Machines
2.2.1 Advantages and disadvantages
2.2.2 Creating a FSM that works like a BT
2.2.3 Creating a BT that works like a FSM
2.3 Subsumption Architecture
2.3.1 Advantages and disadvantages
2.3.2 How BTs generalize the subsumption architecture
2.4 Teleo-Reactive programs
2.4.1 Advantages and disadvantages
2.4.2 How BTs generalize teleo-reactive programs
2.5 Decision Trees
2.5.1 Advantages and disadvantages
2.5.2 How BTs generalize decision trees
2.6 Advantages and Disadvantages of Behavior Trees
2.6.1 Advantages
2.6.2 Disadvantages
CHAPTER 3 ■ Design Principles
3.1 Improving Readability using Explicit Success Conditions
3.2 Improving Reactivity using Implicit Sequences
3.3 Handling Different Cases using a decision tree Structure
3.4 Improving Safety using Sequences
3.5 Creating Deliberative BTs using Backchaining
3.6 Creating Un-Reactive BTs using Memory Nodes
3.7 Choosing the Proper Granularity of a BT
3.8 Putting it all together
CHAPTER 4 ■ Extensions of Behavior Trees
4.1 Utility BTs
4.2 Stochastic BTs
4.3 Temporary Modification of BTs
4.4 Other extensions of BTs
4.4.1 Dynamic expansion of BTs
CHAPTER 5 ■ Analysis of Efficiency, Safety, and Robustness
5.1 State-space Formulation of BTs
5.2 Efficiency and Robustness
5.3 Safety
5.4 Examples
5.4.1 Robustness and efficiency
5.4.2 Safety
5.4.3 A more complex BT
CHAPTER 6 ■ Formal Analysis of How Behavior Trees Generalize Earlier Ideas
6.1 How BTs Generalize Decision Trees
6.2 How BTs Generalize the Subsumption Architecture
6.3 How BTs Generalize Sequential Behavior Compositions
6.4 How BTs Generalize the Teleo-Reactive approach
6.4.1 Universal teleo-reactive programs and FTS BTs
CHAPTER 7 ■ Behavior Trees and Automated Planning
7.1 The Planning and Acting (PA-BT) approach
7.1.1 Algorithm overview
7.1.2 The algorithm steps in detail
7.1.3 Comments on the algorithm
7.1.4 Algorithm execution on graphs
7.1.5 Algorithm execution on an existing example
7.1.6 Reactiveness
7.1.7 Safety
7.1.8 Fault tolerance
7.1.9 Realistic complex execution
7.1.9.1 KUKA Youbot experiments
7.1.9.2 ABB Yumi experiments
7.2 Planning using A Behavior Language
7.2.1 An ABL agent
7.2.2 The ABL planning approach
7.2.3 Brief results of a complex execution in StarCraft
7.3 Comparison between PA-BT and ABL
CHAPTER 8 ■ Behavior Trees and Machine Learning
8.1 Genetic Programming Applied to BTs
8.2 The GP-BT Approach
8.2.1 Algorithm overview
8.2.2 The algorithm steps in detail
8.2.2.1 GetSituation (Line 5)
8.2.2.2 Lea...

Table of contents

  1. Cover
  2. Halftitle page
  3. Title page
  4. Copyright
  5. Table of Contents