没有合适的资源?快使用搜索试试~ 我知道了~
Behavior Trees in Robotics&AI;
5星 · 超过95%的资源 需积分: 10 22 下载量 42 浏览量
2018-09-03
04:04:07
上传
评论
收藏 13.69MB PDF 举报
温馨提示
试读
198页
Behavior Trees in Robotics&AI; A Behavior Tree (BT) is a way to structure the switching between different tasks1 in an autonomous agent, such as a robot or a virtual entity in a computer game. An example of a BT performing a pick and place task can be seen in Fig.
资源推荐
资源详情
资源评论
Michele Colledanchise and Petter
¨
Ogren
Behavior Trees in
Robotics and AI
An Introduction
arXiv:1709.00084v3 [cs.RO] 15 Jan 2018
Contents
1 What are Behavior Trees? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1 A Short History and Motivation of BTs . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2 What is wrong with FSMs? The Need for Reactiveness and
Modularity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3 Classical Formulation of BTs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3.1 Execution Example of a BT . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.3.2 Control Flow Nodes with Memory . . . . . . . . . . . . . . . . . . . . . . 11
1.4 Creating a BT for Pac-Man from Scratch . . . . . . . . . . . . . . . . . . . . . . . 12
1.5 Creating a BT for a Mobile Manipulator Robot . . . . . . . . . . . . . . . . . . 14
1.6 Use of BTs in Robotics and AI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.6.1 BTs in autonomous vehicles . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.6.2 BTs in industrial robotics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.6.3 BTs in the Amazon Picking Challenge . . . . . . . . . . . . . . . . . . 20
1.6.4 BTs inside the social robot JIBO . . . . . . . . . . . . . . . . . . . . . . . 21
2 How Behavior Trees Generalize and Relate to Earlier Ideas . . . . . . . . . 23
2.1 Finite State Machines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.1.1 Advantages and disadvantages . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.2 Hierarchical Finite State Machines . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.2.1 Advantages and disadvantages . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.2.2 Creating a FSM that works like a BTs . . . . . . . . . . . . . . . . . . 29
2.2.3 Creating a BT that works like a FSM . . . . . . . . . . . . . . . . . . . 32
2.3 Subsumption Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.3.1 Advantages and disadvantages . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.3.2 How BTs Generalize the Subsumption Architecture . . . . . . . 33
2.4 Teleo-Reactive programs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.4.1 Advantages and disadvantages . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.4.2 How BTs Generalize Teleo-Reactive Programs . . . . . . . . . . . 35
2.5 Decision Trees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.5.1 Advantages and disadvantages . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.5.2 How BTs Generalize Decision Trees . . . . . . . . . . . . . . . . . . . . 36
I
II Contents
2.6 Advantages and Disadvantages of Behavior Trees . . . . . . . . . . . . . . . 37
2.6.1 Advantages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.6.2 Disadvantages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3 Design principles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3.1 Improving Readability using Explicit Success Conditions . . . . . . . . . 45
3.2 Improving Reactivity using Implicit Sequences . . . . . . . . . . . . . . . . . . 46
3.3 Handling Different Cases using a Decision Tree Structure . . . . . . . . . 47
3.4 Improving Safety using Sequences . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.5 Creating Deliberative BTs using Backchaining . . . . . . . . . . . . . . . . . . 49
3.6 Creating Un-Reactive BTs using Memory Nodes . . . . . . . . . . . . . . . . 51
3.7 Choosing the Proper Granularity of a BT . . . . . . . . . . . . . . . . . . . . . . . 52
3.8 Putting it all together . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
4 Extensions of Behavior Trees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4.1 Utility BTs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4.2 Stochastic BTs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4.3 Temporary Modification of BTs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
4.4 Other extensions of BTs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
4.4.1 Dynamic Expansion of BTs . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
5 Analysis of Efficiency, Safety, and Robustness . . . . . . . . . . . . . . . . . . . . . 63
5.1 Statespace Formulation of BTs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
5.2 Efficiency and Robustness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
5.3 Safety . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
5.4 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
5.4.1 Robustness and Efficiency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
5.4.2 Safety . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
5.4.3 A More Complex BT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
6 Formal Analysis of How Behavior Trees Generalize Earlier Ideas . . . . 83
6.1 How BTs Generalize Decision Trees . . . . . . . . . . . . . . . . . . . . . . . . . . 83
6.2 How BTs Generalize the Subsumption Architecture . . . . . . . . . . . . . . 86
6.3 How BTs Generalize Sequential Behavior Compositions . . . . . . . . . . 88
6.4 How BTs Generalize the Teleo-Reactive approach . . . . . . . . . . . . . . . 89
6.4.1 Universal Teleo-Reactive programs and FTS BTs . . . . . . . . . 91
7 Behavior Trees and Automated Planning . . . . . . . . . . . . . . . . . . . . . . . . . . 93
7.1 The Planning and Acting (PA-BT) approach . . . . . . . . . . . . . . . . . . . . 94
7.1.1 Algorithm Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
7.1.2 The Algorithm Steps in Detail . . . . . . . . . . . . . . . . . . . . . . . . . 98
7.1.3 Comments on the Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
7.1.4 Algorithm Execution on Graphs . . . . . . . . . . . . . . . . . . . . . . . . 103
7.1.5 Algorithm Execution on an existing Example . . . . . . . . . . . . . 104
7.1.6 Reactiveness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
7.1.7 Safety . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Contents III
7.1.8 Fault Tolerance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
7.1.9 Complex Execution on Realistic Robots . . . . . . . . . . . . . . . . . 114
7.2 Planning using A Behavior Language (ABL) . . . . . . . . . . . . . . . . . . . 127
7.2.1 An ABL Agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
7.2.2 The ABL Planning Approach . . . . . . . . . . . . . . . . . . . . . . . . . . 130
7.2.3 Brief Results of a Complex Execution in StarCraft . . . . . . . . 134
7.3 Comparison between PA-BT and ABL . . . . . . . . . . . . . . . . . . . . . . . . . 135
8 Behavior Trees and Machine Learning . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
8.1 Genetic Programming Applied to BTs . . . . . . . . . . . . . . . . . . . . . . . . . 137
8.2 The GP-BT Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
8.2.1 Algorithm Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
8.2.2 The Algorithm Steps in Detail . . . . . . . . . . . . . . . . . . . . . . . . . 143
8.2.3 Pruning of Ineffective Subtrees . . . . . . . . . . . . . . . . . . . . . . . . . 144
8.2.4 Experimental Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
8.2.5 Other Approaches using GP applied to BTs . . . . . . . . . . . . . . 149
8.3 Reinforcement Learning applied to BTs . . . . . . . . . . . . . . . . . . . . . . . . 149
8.3.1 Summary of Q-Learning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
8.3.2 The RL-BT Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
8.3.3 Experimental Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
8.4 Comparison between GP-BT and RL-BT . . . . . . . . . . . . . . . . . . . . . . . 153
8.5 Learning from Demonstration applied to BTs . . . . . . . . . . . . . . . . . . . 153
9 Stochastic Behavior Trees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
9.1 Stochastic BTs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
9.1.1 Markov Chains and Markov Processes . . . . . . . . . . . . . . . . . . 156
9.1.2 Formulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
9.2 Transforming a SBT into a DTMC . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
9.2.1 Computing Transition Properties of the DTMC . . . . . . . . . . . 166
9.3 Reliability of a SBT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
9.3.1 Average sojourn time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
9.3.2 Mean Time To Fail and Mean Time To Succeed . . . . . . . . . . . 170
9.3.3 Probabilities Over Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
9.3.4 Stochastic Execution Times. . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
9.3.5 Deterministic Execution Times . . . . . . . . . . . . . . . . . . . . . . . . . 173
9.4 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
10 Concluding Remarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
剩余197页未读,继续阅读
资源评论
- wersdfadaf2018-12-28很需要这本书,多谢
rqu1993
- 粉丝: 1
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功