Sub-optimal Heuristic Search and its Application to Planning for Manipulation

Similar documents
Sub-Optimal Heuristic Search ARA* and Experience Graphs

Search-based Planning with Motion Primitives. Maxim Likhachev Carnegie Mellon University

Computer Game Programming Basic Path Finding

Planning, Execution and Learning Heuristics and Multi-Heuristic A*

Planning with Experience Graphs

Planning, Execution and Learning Application: Examples of Planning for Mobile Manipulation and Articulated Robots

Cognitive Robotics Robot Motion Planning Matteo Matteucci

CSE-571. Deterministic Path Planning in Robotics. Maxim Likhachev 1. Motion/Path Planning. Courtesy of Maxim Likhachev University of Pennsylvania

Robot Motion Control Matteo Matteucci

Anytime Incremental Planning with E-Graphs

Search-based Planning Library SBPL. Maxim Likhachev Robotics Institute Carnegie Mellon University

E-Graphs: Bootstrapping Planning with Experience Graphs

Motion Planning for Robotic Manipulators with Independent Wrist Joints

Humanoid Robotics. Path Planning and Walking. Maren Bennewitz

Speeding up heuristic computation in planning with Experience Graphs

Humanoid Robotics. Inverse Kinematics and Whole-Body Motion Planning. Maren Bennewitz

Trajectory Optimization

Anytime Search in Dynamic Graphs

Visual Navigation for Flying Robots. Motion Planning

Humanoid Robotics. Inverse Kinematics and Whole-Body Motion Planning. Maren Bennewitz

Anytime search in dynamic graphs

Configuration Space of a Robot

Search-Based Planning with Provable Suboptimality Bounds for Continuous State Spaces

Geometric Path Planning McGill COMP 765 Oct 12 th, 2017

Discrete Motion Planning

Robot Motion Planning

R* Search. Anthony Stentz The Robotics Institute Carnegie Mellon University Pittsburgh, PA

Planning in Mobile Robotics

Planning & Decision-making in Robotics Case Study: Planning for Autonomous Driving

Jane Li. Assistant Professor Mechanical Engineering Department, Robotic Engineering Program Worcester Polytechnic Institute

Non-holonomic Planning

Learning to Plan for Constrained Manipulation from Demonstrations

ANA*: Anytime Nonparametric A*

Introduction to Information Science and Technology (IST) Part IV: Intelligent Machines and Robotics Planning

15-494/694: Cognitive Robotics

ANA*: Anytime Nonparametric A*

Dynamic Multi-Heuristic A*

Path Planning With Adaptive Dimensionality

Jane Li. Assistant Professor Mechanical Engineering Department, Robotic Engineering Program Worcester Polytechnic Institute

Algorithms for Sensor-Based Robotics: Sampling-Based Motion Planning

Sung-Eui Yoon ( 윤성의 )

Jane Li. Assistant Professor Mechanical Engineering Department, Robotic Engineering Program Worcester Polytechnic Institute

Experience Graphs: Leveraging Experience in Planning

Class Overview. Introduction to Artificial Intelligence COMP 3501 / COMP Lecture 2. Problem Solving Agents. Problem Solving Agents: Assumptions

Planning & Decision-making in Robotics Planning Representations/Search Algorithms: RRT, RRT-Connect, RRT*

Approximate path planning. Computational Geometry csci3250 Laura Toma Bowdoin College

Planning Techniques for Robotics Search Algorithms: Multi-goal A*, IDA*

Algorithms for Sensor-Based Robotics: Sampling-Based Motion Planning

CS283: Robotics Fall 2016: Robot Arms

Spring 2010: Lecture 9. Ashutosh Saxena. Ashutosh Saxena

Sampling-based Planning 2

autorob.github.io Inverse Kinematics UM EECS 398/598 - autorob.github.io

Advanced Robotics Path Planning & Navigation

CS 4649/7649 Robot Intelligence: Planning

Lecture 3: Motion Planning (cont.)

Computational Geometry csci3250. Laura Toma. Bowdoin College

6.141: Robotics systems and science Lecture 9: Configuration Space and Motion Planning

Lecture Note 2: Configuration Space

Lesson 1 Introduction to Path Planning Graph Searches: BFS and DFS

6.141: Robotics systems and science Lecture 10: Motion Planning III

Introduction to State-of-the-art Motion Planning Algorithms. Presented by Konstantinos Tsianos

CHAPTER SIX. the RRM creates small covering roadmaps for all tested environments.

Inverse Kinematics Analysis for Manipulator Robot With Wrist Offset Based On the Closed-Form Algorithm

Learning to Guide Random Tree Planners in High Dimensional Spaces

Sampling-Based Motion Planning

6.141: Robotics systems and science Lecture 9: Configuration Space and Motion Planning

video 1 video 2 Motion Planning (It s all in the discretization) Digital Actors Basic problem Basic problem Two Possible Discretizations

6.141: Robotics systems and science Lecture 10: Implementing Motion Planning

Lecture 3: Motion Planning 2

Jane Li. Assistant Professor Mechanical Engineering Department, Robotic Engineering Program Worcester Polytechnic Institute

Basic Motion Planning Algorithms

ACE Project Report. December 10, Reid Simmons, Sanjiv Singh Robotics Institute Carnegie Mellon University

Probabilistic Methods for Kinodynamic Path Planning

Optimization of a two-link Robotic Manipulator

CMU-Q Lecture 4: Path Planning. Teacher: Gianni A. Di Caro

Efficient Motion and Grasp Planning for Humanoid Robots

Local Search Methods. CS 188: Artificial Intelligence Fall Announcements. Hill Climbing. Hill Climbing Diagram. Today

ECE276B: Planning & Learning in Robotics Lecture 5: Configuration Space

A* optimality proof, cycle checking

Autonomous and Mobile Robotics. Whole-body motion planning for humanoid robots (Slides prepared by Marco Cognetti) Prof.

1 Trajectories. Class Notes, Trajectory Planning, COMS4733. Figure 1: Robot control system.

CS 354R: Computer Game Technology

Planning in Domains with Cost Function Dependent Actions

for Motion Planning RSS Lecture 10 Prof. Seth Teller

arxiv: v1 [cs.ro] 11 Jul 2016

Motion Planning for Robot Manipulators

Introduction to Mobile Robotics Path Planning and Collision Avoidance

Inverse Kinematics of 6 DOF Serial Manipulator. Robotics. Inverse Kinematics of 6 DOF Serial Manipulator

Introduction to Mobile Robotics Path Planning and Collision Avoidance. Wolfram Burgard, Maren Bennewitz, Diego Tipaldi, Luciano Spinello

Angelic Hierarchical Planning. Bhaskara Marthi Stuart Russell Jason Wolfe Willow Garage UC Berkeley UC Berkeley

Notes. Video Game AI: Lecture 5 Planning for Pathfinding. Lecture Overview. Knowledge vs Search. Jonathan Schaeffer this Friday

SPATIAL GUIDANCE TO RRT PLANNER USING CELL-DECOMPOSITION ALGORITHM

Lecture 18 Kinematic Chains

Acknowledgements. Outline

Motion Planning of Robot Fingertips for Graspless Manipulation

Basilio Bona ROBOTICA 03CFIOR 1

Path Planning. Jacky Baltes Dept. of Computer Science University of Manitoba 11/21/10

Motion Planning. Howie CHoset

Task-Oriented Planning for Manipulating Articulated Mechanisms under Model Uncertainty. Venkatraman Narayanan and Maxim Likhachev

Can work in a group of at most 3 students.! Can work individually! If you work in a group of 2 or 3 students,!

Transcription:

Sub-optimal Heuristic Search and its Application to Planning for Manipulation Mike Phillips Slides adapted from

Planning for Mobile Manipulation What planning tasks are there? robotic bartender demo at Search-based Planning Lab, April 12 2

Planning for Mobile Manipulation What planning tasks are there? task planning (order of getting items) planning for navigation planning motions for an arm planning coordinated base+arms (full body) motions planning how to grasp robotic bartender demo at Search-based Planning Lab, April 12 3

Planning for Mobile Manipulation What planning tasks are there? this class task planning (order of getting items) planning for navigation planning motions for an arm planning coordinated base+arms (full body) motions planning how to grasp robotic bartender demo at Search-based Planning Lab, April 12 4

Planning for Mobile Manipulation Example of planning for 20D arm in 2D: each state is defined by 20 discretized joint angles {q1, q2,, q20} each action is changing one angle (or set of angles) at a time 5

Planning for Mobile Manipulation Example of planning for 20D arm in 2D: each state is defined by 20 discretized joint angles {q1, q2,, q20} each action is changing one angle (or set of angles) at a time How to search such a highdimensional state-space? 6

Typical Approaches to Motion Planning sub-optimal heuristic searches can be fast enough for high-d motion planning and return consistent good quality solutions planning with optimal heuristic search-based approaches (e.g., A*, D*) + completeness/optimality guarantees + excellent cost minimization + consistent solutions to similar motion queries - slow and memory intensive - used mostly for 2D (x,y) path planning planning with sampling-based approaches (e.g., RRT, PRM, ) + typically very fast and low memory + used for high-d path/motion planning - completeness in the limit - often poor cost minimization - hard to provide solution consistency 7

Planning for Mobile Manipulation Example of planning for 20D arm in 2D: each state is defined by 20 discretized joint angles {q1, q2,, q20} each action is changing one angle (or set of angles) at a time Heuristic search? Wouldn t you need to store m 20 (m-# of values) states in memory? states are generated on-the fly as search expands states 8

Sub-optimal Heuristic Search for High-D Motion Planning ARA* (Anytime version of A*) graph search effective use of solutions to relaxed (easier) motion planning problems Experience graphs heuristic search that learns from its planning experiences 9

Sub-optimal Heuristic Search for High-D Motion Planning ARA* (Anytime version of A*) graph search effective use of solutions to relaxed (easier) motion planning problems Experience graphs heuristic search that learns from its planning experiences 10

Heuristics in Heuristic Search A* Search: expands states in the order of f(s)=g(s)+h(s) values In A*, when s is expanded g(s) is optimal h(s) is a relaxed (simplified) version of the problem start h(s) goal g(s) s University of Pennsylvania 11

Heuristics in Heuristic Search A* Search: expands states in the order of f(s)=g(s)+h(s) values In A*, when s is expanded g(s) is optimal h(s) is a relaxed (simplified) version of the problem If h(s) was a perfect estimate (let s call it h*), what does f(s) represent upon expansion of s? start g(s) s h(s) goal University of Pennsylvania 12

Heuristics in Heuristic Search A* Search: expands states in the order of f(s)=g(s)+h(s) values In A*, when s is expanded g(s) is optimal h(s) is a relaxed (simplified) version of the problem If h(s) was a perfect estimate (let s call it h*), what does f(s) represent upon expansion of s? Now what if h(s) wasn t perfect? start g(s) s h(s) goal University of Pennsylvania 13

Heuristics in Heuristic Search A* Search: expands states in the order of f = g+h values ComputePath function while(s goal is not expanded) remove s with the smallest [f(s) = g(s)+h(s)] from OPEN; insert s into CLOSED; for every successor s of s such that s not in CLOSED if g(s ) > g(s) + c(s,s ) g(s ) = g(s) + c(s,s ); insert s into OPEN; expansion of s the cost of a shortest path from s start to s found so far S start g(s) S 1 S S 2 University of Pennsylvania an (under) estimate of the cost of a shortest path from s to s goal h(s) S goal 14

Heuristics in Heuristic Search Solutions to a relaxed version of the planning problem 2D (x,y) planning Euclidean distance heuristic: 2D planning without obstacles and no grid 20D arm planning 2D end-effector distance heuristic: 2D planning for end-effector with obstacles 15

Heuristics in Heuristic Search Dijkstra s: expands states in the order of f = g values A* Search: expands states in the order of f = g+h values Weighted A*: expands states in the order of f = g+εh values, ε > 1 = bias towards states that are closer to goal the cost of a shortest path from s start to s found so far S start g(s) S 1 S S 2 University of Pennsylvania an (under) estimate of the cost of a shortest path from s to s goal h(s) S goal 16

Heuristics in Heuristic Search Dijkstra s: expands states in the order of f = g values What are the states expanded? s start s goal University of Pennsylvania 17

Heuristics in Heuristic Search A* Search: expands states in the order of f = g+h values What are the states expanded? s start s goal University of Pennsylvania 18

Heuristics in Heuristic Search A* Search: expands states in the order of f = g+h values for high-d problems, this results in A* being too slow and running out of memory s start s goal University of Pennsylvania 19

Heuristics in Heuristic Search Weighted A* Search: expands states in the order of f = g+εh values, ε > 1 bias towards states that are closer to goal s start s goal University of Pennsylvania 20

Heuristics in Heuristic Search Weighted A* Search: trades off optimality for speed ε-suboptimal: cost(solution) ε cost(optimal solution) in many domains, it has been shown to be orders of magnitude faster than A* A*: ε =1.0 Weighted A*: ε =2.5 20 expansions solution=10 moves 13 expansions solution=11 moves University of Pennsylvania 21

Anytime Search based on weighted A* Constructing anytime search based on weighted A*: - find the best path possible given some amount of time for planning - do it by running a series of weighted A* searches with decreasing ε: ε =2.5 ε =1.5 ε =1.0 13 expansions solution=11 moves 15 expansions solution=11 moves 20 expansions solution=10 moves University of Pennsylvania 22

Anytime Search based on weighted A* Constructing anytime search based on weighted A*: - find the best path possible given some amount of time for planning - do it by running a series of weighted A* searches with decreasing ε: ε =2.5 ε =1.5 ε =1.0 13 expansions solution=11 moves 15 expansions solution=11 moves 20 expansions solution=10 moves Inefficient because many state values remain the same between search iterations we should be able to reuse the results of previous searches University of Pennsylvania 23

Anytime Search based on weighted A* Constructing anytime search based on weighted A*: - find the best path possible given some amount of time for planning - do it by running a series of weighted A* searches with decreasing ε: ε =2.5 ε =1.5 ε =1.0 13 expansions solution=11 moves 15 expansions solution=11 moves 20 expansions solution=10 moves ARA* - an efficient version of the above that reuses state values within any search iteration University of Pennsylvania 24

ARA* Efficient series of weighted A* searches with decreasing ε: ComputePathwithReuse function while(f(s goal ) > minimum f-value in OPEN ) remove s with the smallest [g(s)+ εh(s)] from OPEN; insert s into CLOSED; for every successor s of s if g(s ) > g(s) + c(s,s ) g(s ) = g(s) + c(s,s ); if s not in CLOSED then insert s into OPEN; University of Pennsylvania 25

ARA* Efficient series of weighted A* searches with decreasing ε: ComputePathwithReuse function while(f(s goal ) > minimum f-value in OPEN ) remove s with the smallest [g(s)+ εh(s)] from OPEN; insert s into CLOSED; for every successor s of s if g(s ) > g(s) + c(s,s ) g(s ) = g(s) + c(s,s ); if s not in CLOSED then insert s into OPEN; otherwise insert s into INCONS University of Pennsylvania 26

ARA* Efficient series of weighted A* searches with decreasing ε: ComputePathwithReuse function while(f(s goal ) > minimum f-value in OPEN ) remove s with the smallest [g(s)+ εh(s)] from OPEN; insert s into CLOSED; for every successor s of s if g(s ) > g(s) + c(s,s ) g(s ) = g(s) + c(s,s ); if s not in CLOSED then insert s into OPEN; otherwise insert s into INCONS set ε to large value; g(s start ) = 0; OPEN = {s start }; while ε 1 CLOSED = {}; INCONS = {}; ComputePathwithReuse(); publish current ε suboptimal solution; decrease ε; initialize OPEN = OPEN U INCONS; University of Pennsylvania 27

A series of weighted A* searches ε =2.5 ARA* ε =1.5 ε =1.0 13 expansions solution=11 moves ARA* ε =2.5 15 expansions solution=11 moves ε =1.5 20 expansions solution=10 moves ε =1.0 13 expansions solution=11 moves 1 expansion 9 expansions solution=11 moves solution=10 moves University of Pennsylvania 28

ARA* When using ARA*, the research is in finding a graph representation G and a corresponding heuristic function h that lead to shallow local minima for the search s start s goal key to finding solution fast: shallow minima for h(s)-h*(s) function 29

ARA*-based Planning for Manipulation ARA*-based motion planning for a single 7DOF arm [Cohen et al., ICRA 10, ICRA 11] goal is given as 6D (x,y,z,r,p,y) pose of the end-effector each state is: 4 non-wrist joint angles {q1, q4} when far away from the goal, all 7 joint angles {q1, q7} when close to the goal actions are: {moving one joint at a time by fixed ; IK-based motion to snap to the goal when close to it} 30

ARA*-based Planning for Manipulation ARA*-based motion planning for a single 7DOF arm [Cohen et al., ICRA 10, ICRA 11] goal is given as 6D (x,y,z,r,p,y) pose of the end-effector each state is: 4 non-wrist joint angles {q1, q4} when far away from the goal, all 7 joint angles {q1, q7} when close to the goal actions are: {moving one joint at a time by fixed ; IK-based motion to snap to the goal when close to it} heuristics are: 3D BFS distances for the end-effector expansions (shown as dots corresponding to ef poses) based on 3D BFS heuristics (shown as curve) expansions based on Euclidean distance heuristics (shown as curve) 31

ARA*-based Planning for Manipulation ARA*-based motion planning for a single 7DOF arm [Cohen et al., ICRA 10, ICRA 11] goal is given as 6D (x,y,z,r,p,y) pose of the end-effector each state is: 4 non-wrist joint angles {q1, q4} when far away from the goal, all 7 joint angles {q1, q7} when close to the goal actions are: {moving one joint at a time by fixed ; IK-based motion to snap to the goal when close to it} heuristics are: 3D BFS distances for the end-effector expansions (shown as dots corresponding to ef poses) based on 3D BFS heuristics (shown as curve) expansions based on Euclidean distance heuristics (shown as curve) 32

ARA*-based Planning for Manipulation ARA*-based motion planning for a single 7DOF arm [Cohen et al., ICRA 10, ICRA 11] goal is given as 6D (x,y,z,r,p,y) pose of the end-effector each state is: 4 non-wrist joint angles {q1, q4} when far away from the goal, all 7 joint angles {q1, q7} when close to the goal actions are: {moving one joint at a time by fixed ; IK-based motion to snap to the goal when close to it} heuristics are: 3D BFS distances for the end-effector expansions (shown as dots corresponding to ef poses) based on 3D BFS heuristics (shown as curve) expansions based on Euclidean distance heuristics (shown as curve) 33

ARA*-based Planning for Manipulation ARA*-based motion planning for a single 7DOF arm [Cohen et al., ICRA 10, ICRA 11] Shown on PR2 robot but planner has been run on other arms (kuka) 34

ARA*-based Planning for Manipulation ARA*-based motion planning for dual-arm motion [Cohen et al., ICRA 12] goal is given as 4D (x,y,z,y) pose for the object each state is 6D: 4D (x,y,z,y) pose of the object, {q1,q2} of the elbow angles actions are: {changing the 4D pose of the object or q1, q2} heuristics are: 3D BFS distances for the object 35

ARA*-based Planning for Manipulation ARA*-based motion planning for dual-arm motion [Cohen et al., ICRA 12] motions as generated by the planner - no smoothing 36

ARA*-based Planning for Manipulation ARA*-based motion planning for dual-arm motion [Cohen et al., ICRA 12] motions consistency as generated of motions by across the planner similar - start-goal no smoothing trials 37

Discussion ARA*-based Planning for Manipulation Pros Explicit cost minimization Consistent plans (similar input generates similar output) Can handle arbitrary goal sets (such as set of grasps from a grasp planner) Many path constraints are easy to implement (upright orientation of gripper) Cons Requires good graph and heuristic design to plan fast Number of motions from a state affects speed and path quality 38

Sub-optimal Heuristic Search for High-D Motion Planning ARA* (Anytime version of A*) graph search effective use of solutions to relaxed (easier) motion planning problems Experience graphs heuristic search that learns from its planning experiences 39

Planning with Experience Graphs Many planning tasks are repetitive - loading a dishwasher - opening doors - moving objects around a warehouse - Can we re-use prior experience to accelerate planning, in the context of search-based planning? Would be especially useful for highdimensional problems such as mobile manipulation! 40

Planning with Experience Graphs Given a set of previous paths (experiences) 41

Planning with Experience Graphs Put them together into an E-graph (Experience graph) 42

Planning with Experience Graphs E-Graph [Phillips et al., RSS 12]: Collection of previously computed paths or demonstrations A sub-graph of the original graph 43

Planning with Experience Graphs Given a new planning query 44

Planning with Experience Graphs re-use E-graph. For repetitive tasks, planning becomes much faster start goal 45

Planning with Experience Graphs re-use E-graph. For repetitive tasks, planning becomes much faster Theorem 1: Algorithm is complete with respect to the original graph start Theorem 2: The cost of the solu8on is within a given bound on sub- op8mality goal 46

Planning with Experience Graphs Reuse E-Graph by: Introducing a new heuristic function Heuristic guides the search toward expanding states on the E-Graph within sub-optimality bound ε start goal 47

Planning with Experience Graphs Focusing search towards E-graph within sub-optimality bound ε h G start goal c ε Heuristic computation finds a min cost path using two kinds of edges h E (s 0 )=min π N 1 i=0 Traveling off the E-Graph uses an inflated original heuristic Traveling on E-Graph uses actual costs min{ε E h G (s i,s i+1 ),c E (s i,s i+1 )} 48

Planning with Experience Graphs Focusing search towards E-graph within sub-optimality bound ε h G start goal c ε Heuristic computation finds a min cost path using two kinds of edges h E (s 0 )=min π N 1 i=0 Traveling off the E-Graph uses an inflated original heuristic Traveling on E-Graph uses actual costs min{ε E h G (s i,s i+1 ),c E (s i,s i+1 )} 49

Planning with Experience Graphs Focusing search towards E-graph within sub-optimality bound ε h G start goal c ε Heuristic computation finds a min cost path using two kinds of edges h E (s 0 )=min π N 1 i=0 Traveling off the E-Graph uses an inflated original heuristic Traveling on E-Graph uses actual costs min{ε E h G (s i,s i+1 ),c E (s i,s i+1 )} 50

Planning with Experience Graphs Focusing search towards E-graph within sub-optimality bound ε ε ε = ε ε =1.5 start goal start goal h E (s 0 )=min π N 1 i=0 min{ε E h G (s i,s i+1 ),c E (s i,s i+1 )} 51

Planning with Experience Graphs Theorem 5. Completeness w.r.t. the original graph G: Planning with E-graphs is guaranteed to find a solution, if one exists in G Theorem 6. Bounds on sub-optimality: The cost of the solution found by planning with E-graphs is guaranteed to be at most ε E -suboptimal: cost(solution) ε E cost(optimal solution in G) 52

Planning with Experience Graphs Theorem 5. Completeness w.r.t. the original graph G: Planning with E-graphs is guaranteed to find a solution, if one exists in G These proper8es hold even if quality or Theorem 6. placement Bounds of on the sub-optimality: experiences is arbitrarily The cost bad of the solution found by planning with E-graphs is guaranteed to be at most ε E -suboptimal: cost(solution) ε E cost(optimal solution in G) 53

Planning with E-Graphs for Mobile Manipulation Dual-arm mobile manipulation (10 DoF) 54

Planning with E-Graphs for Mobile Manipulation Dual-arm mobile manipulation (10 DoF) 3 for base navigation 1 for spine 6 for arms (upright object constraint, roll and pitch are 0) Experiments in multiple environments 55

Planning with E-Graphs for Mobile Manipulation Kitchen environment: - moving objects around a kitchen - bootstrap E-Graph with 10 representative goals - tested on 40 goals in natural kitchen locations 56

Planning with E-Graphs for Mobile Manipulation Kitchen environment Planning times Success (of 40) Mean Time (s) Std. Dev. (s) Max (s) E-Graphs 40 0.33 0.25 1.00 Method Success (of 40) Mean Speed-up Std. Dev. Max Weighted A* 37 34.62 87.74 506.78 Max planning *me of 2 minutes Sub- op*mality bound of 20 (for E- Graphs and Weighted A*) 57

Planning with E-Graphs for Mobile Manipulation Kitchen environment Path Quality Method Success (of 40) Object XYZ Path Length Ratio Weighted A* 37 0.91 0.68 Std. Dev. 58

Planning with E-Graphs for Mobile Manipulation Discussion Pros Can lead the search around local minima (such as obstacles) Provided paths can have arbitrary quality Can reuse many parts of multiple experiences User can control bound on solution quality Cons Local minima can be created getting on to the E-Graph The E-Graph can grow arbitrarily large 59

Heuristic Search within sub-optimality bounds - can be much more suitable for high-dimensional planning for manipulation than optimal heuristic search - still provides - good cost minimization - consistent behavior Conclusions - rigorous theoretical guarantees Planning for manipulation solves similar tasks over and over again (unlike planning for navigation, flight, ) - great opportunity for combining planning with learning 60