RRT-Blossom RRT with local flood-fill behavior Maciej Kalisiak DGP Laboratory University of Toronto Michiel van de Panne Imager Laboratory.

Slides:



Advertisements
Similar presentations
Jecho and Donatus Depth First and Breadth First Search.
Advertisements

Biologically Inspired Computing: Operators for Evolutionary Algorithms
Efficient access to TIN Regular square grid TIN Efficient access to TIN Let q := (x, y) be a point. We want to estimate an elevation at a point q: 1. should.
Problem Solving by Searching Copyright, 1996 © Dale Carnegie & Associates, Inc. Chapter 3 Spring 2007.
1 Greedy Forwarding in Dynamic Scale-Free Networks Embedded in Hyperbolic Metric Spaces Dmitri Krioukov CAIDA/UCSD Joint work with F. Papadopoulos, M.
Games & Adversarial Search Chapter 5. Games vs. search problems "Unpredictable" opponent  specifying a move for every possible opponent’s reply. Time.
Dynamic Programming.
Games & Adversarial Search
CMSC 471 Spring 2014 Class #4 Thu 2/6/14 Uninformed Search Professor Marie desJardins,
CSE 380 – Computer Game Programming Pathfinding AI
Kinodynamic RRTs with Fixed Time Step and Best-Input Extension Are Not Probabilistically Complete Tobias Kunz, Mike Stilman.
Counting Techniques: Combinations
Kinodynamic Path Planning Aisha Walcott, Nathan Ickes, Stanislav Funiak October 31, 2001.
Trade off between Exploration and Exploitation in Satisficing Planning Fan Xie.
CS 460 Midterm solutions. 1.b 2.PEAS : Performance Measure, Environment, Actuators, Sensors 3.c 4.a. Environment: non-English language Internet sites.
Problem Solving by Searching Copyright, 1996 © Dale Carnegie & Associates, Inc. Chapter 3 Spring 2004.
Branch and Bound Similar to backtracking in generating a search tree and looking for one or more solutions Different in that the “objective” is constrained.
1 Single Robot Motion Planning - II Liang-Jun Zhang COMP Sep 24, 2008.
Rising from Various Lying Postures Wen-Chieh Lin and Yi-Jheng Huang Department of Computer Science National Chiao Tung University, Taiwan.
Kinodynamic Planning Using Probabalistic Road Maps Steven M. LaValle James J. Kuffner, Jr. Presented by Petter Frykman.
Presented By: Huy Nguyen Kevin Hufford
Alyce Brady CS 510: Computer Algorithms Depth-First Graph Traversal Algorithm.
A Grasp-based Motion Planning Algorithm for Character Animation Maciej Kalisiak and Michiel van de Panne Department of Computer Science, University of.
CS 188: Artificial Intelligence Spring 2006 Lecture 2: Queue-Based Search 8/31/2006 Dan Klein – UC Berkeley Many slides over the course adapted from either.
Games & Adversarial Search Chapter 6 Section 1 – 4.
T-Snake Reference: Tim McInerney, Demetri Terzopoulos, T-snakes: Topology adaptive snakes, Medical Image Analysis, No ,pp73-91.
DAST 2005 Tirgul 9 Binary Search Trees sample questions.
MEAM620 Gilad Buchman Sampling-based MP for “Defending the Flag” MEAM620 Project Gilad Buchman.
1 Problem Solving and Searching CS 171/271 (Chapter 3) Some text and images in these slides were drawn from Russel & Norvig’s published material.
Xpath Query Evaluation. Goal Evaluating an Xpath query against a given document – To find all matches We will also consider the use of types Complexity.
Graphs II Robin Burke GAM 376. Admin Skip the Lua topic.
CSCE350 Algorithms and Data Structure Lecture 17 Jianjun Hu Department of Computer Science and Engineering University of South Carolina
Real Time Motion Planning. Introduction  What is Real time Motion Planning?  What is the need for real time motion Planning?  Example scenarios in.
Automated human motion in constrained environments Maciej Kalisiak
Adapting Wavelet Compression to Human Motion Capture Clips Philippe Beaudoin 1 Pierre Poulin 1 Michiel van de Panne 2 1 Université de Montréal, LIGUM 2.
MA/CSSE 473 Day 28 Dynamic Programming Binomial Coefficients Warshall's algorithm Student questions?
Applications of Dynamic Programming and Heuristics to the Traveling Salesman Problem ERIC SALMON & JOSEPH SEWELL.
Introduction to Motion Planning
Reactive Tabu Search Contents A brief review of search techniques
Uninformed Search ECE457 Applied Artificial Intelligence Spring 2007 Lecture #2.
Basic Problem Solving Search strategy  Problem can be solved by searching for a solution. An attempt is to transform initial state of a problem into some.
School of Systems, Engineering, University of Reading rkala.99k.org April, 2013 Motion Planning for Multiple Autonomous Vehicles Rahul Kala Rapidly-exploring.
A Grasp-Based Motion Planning Algorithm for Character Animation M. Kalisiak, M. van de Panne Eurographics Workshop on Computer Animation & Simulation 2000.
Randomized Kinodynamics Planning Steven M. LaVelle and James J
Computer Science 313 – Advanced Programming Topics.
MA/CSSE 473 Day 30 B Trees Dynamic Programming Binomial Coefficients Warshall's algorithm No in-class quiz today Student questions?
Viability Envelopes Maciej Kalisiak Michiel van de Panne.
Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 1 Chapter 12 Path Planning.
Brian Williams, Fall 041 Analysis of Uninformed Search Methods Brian C. Williams Sep 21 st, 2004 Slides adapted from: Tomas Lozano Perez,
Randomized KinoDynamic Planning Steven LaValle James Kuffner.
9/30/20161 Path Planning Cognitive Robotics David S. Touretzky & Ethan Tira-Thompson Carnegie Mellon Spring 2012.
Lecture 3: Uninformed Search
Rapidly-Exploring Random Trees
Depth First Seach: Output Fix
Problem Solving by Searching
Artificial Intelligence (CS 370D)
Games & Adversarial Search
CS 188: Artificial Intelligence Spring 2007
Searching for Solutions
Games & Adversarial Search
Games & Adversarial Search
Tree Searching.
Search Exercise Search Tree? Solution (Breadth First Search)?
Constraints and Search
UNINFORMED SEARCH -BFS -DFS -DFIS - Bidirectional
ECE457 Applied Artificial Intelligence Fall 2007 Lecture #2
CMSC 471 Fall 2011 Class #4 Tue 9/13/11 Uninformed Search
Games & Adversarial Search
Games & Adversarial Search
Basic Search Methods How to solve the control problem in production-rule systems? Basic techniques to find paths through state- nets. For the moment: -
Presentation transcript:

RRT-Blossom RRT with local flood-fill behavior Maciej Kalisiak DGP Laboratory University of Toronto Michiel van de Panne Imager Laboratory University of British Columbia

Highly-constrained terrain

Purpose ► highly-constrained environments  less room to move  → smaller search space  → motion planning should be easier ► Rapidly-Exploring Random Trees (RRT)  popular motion planning algorithm  does poorly in highly-constrained terrain ► RRT-Blossom  variation of RRT well adapted to such terrain

Flood-fill traits to emulate ► generally, a flood-fill:  has a constant rate of fill  does not visit a location more than once ► in RRT context this translates to:  make sure tree gains an edge on each iteration  do not re-explore the same space twice

Key modifications ► receding edges  allow edges that recede from the target point ► re-exploration prevention  do not revisit same space with multiple nodes ► node “blossoming”  avoid duplicate work by immediately and permanently keeping or discarding tested edges

Receding edges ► often provide useful information → worth keeping ► RRT does not allow receding edges ► RRT-CT † allows receding edges, but does not guard against resultant re-exploration † P.Cheng & S.M.LaValle, Reducing Metric Sensitivity in Randomized Trajectory Design, IROS 2001

Re-exploration (“regression”) ► RRT guarantees no edge/node overlap ► receding edges break this guarantee ► now possible: multiple tree nodes exploring same space ► re-exploration = wasted effort (often huge!)

Preventing re-exploration ► generally, re-exploration non-trivial to detect ► approximation that works well: ► prevention: do not instantiate edges which satisfy the above edge regresses if its leaf node is closer to a tree node other than its parent

Blossoming ► instantiate all valid edges out of chosen node ► avoids duplicate edge computation and testing ► RRT: “memoryless”  recomputes good & bad edges ► RRT-CT: remembers only bad edges  recomputes good edges ► RRT-Blossom: “remembers” all edges  by instantiating all valid edges out of node, no need to remember anything

Viability issue ► dead-end branches can “block” needed edges  can prevent discovery of solution! ► fix for re-exploration check:  ignore such nonviable branches ► viability discovered on-the-fly

Experiments: agents pointcarbike kinematickinodynamic

Experiments: terrains T complex rooms tunnel

Results: point (holonomic)

Results: car (nonholonomic)

Results: bike (kinodynamic)

Take-away ► RRT-Blossom: more robust RRT  highly-constrained terrain → big speedup  deep local minima → big speedup  regular terrain → comparable performance ► performs well in both settings  kinematic  kinodynamic ► more at