890 likes | 1.12k Views
Real Time Motion Planning and Safe Navigation in Dynamic Environments*. Kadir F. Uyanik CENG585 Fundamentals of Autonomous Robotics 14.01.2011. * Based on: Bruce J. R., Real-Time Motion Planning and Safe Navigation in Dynamic Multi-Robot Environments , PhD. Thesis, 2006.
E N D
Real Time Motion Planning and Safe Navigation in Dynamic Environments* Kadir F. Uyanik CENG585 Fundamentals of Autonomous Robotics 14.01.2011 * Based on: Bruce J. R., Real-Time Motion Planning and Safe Navigation in Dynamic Multi-Robot Environments, PhD. Thesis, 2006 * Some of the slides are adapted from James Bruce’s PhD. Defense presentation.
Thesis Goal • Enabling a multi agent system carry out navigation calculations within tight time constraints • Making robots navigate robustly and operate safely without collisions
Outline • Randomized Approaches • RRT, RRT-Connect • ERRT, ERRT-MultiConnect • ERRT vs Visibility Graphs • Novelty up-to now • From Kinematic Planning to Dynamic Planning • Dynamic Window Method • Dynamic Safety Search • Conclusion • Introduction • A classification in robotic systems • Robot soccer • Small Size League (SSL) system • Navigation System for SSL Robots • Planning motions • Planning in a changing world • Problem Definition • Common Approaches • Grid Based • Visibility Graph • Randomized Sampling Based • Planning Challenges
IntroductionSoccer Playing Robots Two main worldwide competitions/organizations:
IntroductionSoccer Playing Robots Two main worldwide competitions/organizations: • FIRA Mirosot: Micro-Robot World Cup Soccer Tournament. Organized by Federation of International Robot-Soccer Association since 1996.
IntroductionSoccer Playing Robots Two main worldwide competitions/organizations: • FIRA Mirosot: Micro-Robot World Cup Soccer Tournament. Organized by Federation of International Robot-Soccer Association since 1996. • Robocup: Robot World Cup, largest international robotics competition. Organized (officially) since 1997. This year in Istanbul/Turkey (June 4-10, 2011) Several categories: Soccer, rescue, @home, junior Soccer includes various leagues: humanoid, middle size, small size, standard platform, simulation
Navigation System for SSL • Plan quickly before planned decisions become obsolete • Agents act parallel in multi-robot domains; unpredictable dynamics can arise, • Other team’s robots move very fast and world changes quickly.
Navigation System for SSL • Plan quickly before planned decisions become obsolete • Agents act parallel in multi-robot domains; unpredictable dynamics can arise, • Other team’s robots move very fast and world changes quickly. • Navigate robustly, don’t crash other robots , stay in the field
Navigation System for SSLPlanning motions • Motion Planning is about finding trajectories to satisfy a goal criteria starting from an initial-configuration to an end-configuration.
Navigation System for SSLPlanning motions • Motion Planning is about finding trajectories to satisfy a goal criteria starting from an initial-configuration to an end-configuration. • Two main requirements are • Model of the environment or the world state is known to some degree • Model of the results of actions that create certain effect in the world
Navigation System for SSLPlanning motions • Motion Planning is about finding trajectories to satisfy a goal criteria starting from an initial-configuration to an end-configuration. • Two main requirements are • Model of the environment or the world state is known to some degree • Model of the results of actions that create certain effect in the world • This knowledge enables robot, in a way, to simulate it’s actions in mind and predict the output w/o actually executing them.
Navigation System for SSLPlanning in a changing world • It is a key issue in a multi-agent systems
Navigation System for SSLPlanning in a changing world • It is a key issue in a multi-agent systems • Agent dynamics are the limitations due to the kinodynamicconstraints of the robots
Navigation System for SSLPlanning in a changing world • It is a key issue in a multi-agent systems • Agent dynamics are the limitations due to the kinodynamic constraints of the robots • Domain dynamics includes environmental changes (due to other robots or physical laws) and changes in goal specification (due to higher level task oriented behaviors)
Problem Definition A : agent q : robot configuration Cfree : obstacle free configuration space T(s) : continuous function, mapping s ͼ [0,1] to a configuration in C. Rj(t) : area covered by all robots except j S’(t) : boolean safety function (true if no two robots overlap) Given : A, Cfree , qinit , qgoal ; Find : a path T(s) which is valid, feasible, and a solution. For a safe navigation:
Common Approaches • A generic motion (re)planning algorithm: • Map initial and goal locations to C-space representation • Update environment model with new information • Update C-space representation graph, or roadmap • Search roadmap for a path between initial and goal locations • Extract path vertices and edges as plan
Common Approaches • A generic motion (re)planning algorithm: • Map initial and goal locations to C-space representation • Update environment model with new information • Update C-space representation graph, or roadmap • Search roadmap for a path between initial and goal locations • Extract path vertices and edges as plan
Common Approaches • A generic motion (re)planning algorithm: • Map initial and goal locations to C-space representation • Update environment model with new information • Update C-space representation graph, or roadmap • Search roadmap for a path between initial and goal locations • Extract path vertices and edges as plan
Common Approaches • A generic motion (re)planning algorithm: • Map initial and goal locations to C-space representation • Update environment model with new information • Update C-space representation graph, or roadmap • Search roadmap for a path between initial and goal locations • Extract path vertices and edges as plan
Common Approaches • A generic motion (re)planning algorithm: • Map initial and goal locations to C-space representation • Update environment model with new information • Update C-space representation graph, or roadmap • Search roadmap for a path between initial and goal locations • Extract path vertices and edges as plan
Common Approaches • A generic motion (re)planning algorithm: • Map initial and goal locations to C-space representation • Update environment model with new information • Update C-space representation graph, or roadmap • Search roadmap for a path between initial and goal locations • Extract path vertices and edges as plan
Common Approaches • A generic motion (re)planning algorithm: • Map initial and goal locations to C-space representation • Update environment model with new information • Update C-space representation graph, or roadmap • Search roadmap for a path between initial and goal locations • Extract path vertices and edges as plan • Replanning can be done in two ways • Unconditional replanning: replan each time before deciding on an action • Conditional replanning: Plan once, monitor the environment and execution of plan to determine if it succeeds or fails. If fails, replan and continue execution.
Common Approaches • The planners used in SSL-like domains are based on: • Grids • Create a grid overlay of vertices covering the environment • Connect grid neighbors with edges if free • Search for shortest (least cost) path • Non-optimal and complete • Visibility Graph • Place vertices at critical points around each obstacle • Add edges between every pair of critical points if free • Optimal and complete • Randomized • No need for grids or list of obstacle points; discover Cfree through collision checks • Sample environment randomly to model C-space • Search until tree reaches a goal • Non-optimal and probabilistically complete
Planning Challenges It is all about Time vs. Problem complexity Dashed and straight curved lines indicates the corresponding hypothetical algorithm performance
Outline • Randomized Approaches • RRT, RRT-Connect • ERRT, ERRT-MultiConnect • ERRT vs Visibility Graphs • Novelty up-to now • From Kinematic Planning to Dynamic Planning • Dynamic Window Method • Dynamic Safety Search • Conclusion • Introduction • A classification in robotic systems • Robot soccer • Small Size League (SSL) system • Navigation System for SSL Robots • Planning motions • Planning in a changing world • Problem Definition • Common Approaches • Grid Based • Visibility Graph • Randomized Sampling Based • Planning Challenges
Outline • Randomized Approaches • RRT, RRT-Connect • ERRT, ERRT-MultiConnect • ERRT vs Visibility Graphs • Novelty up-to now • From Kinematic Planning to Dynamic Planning • Dynamic Window Method • Dynamic Safety Search • Conclusion • Introduction • A classification in robotic systems • Robot soccer • Small Size League (SSL) system • Navigation System for SSL Robots • Planning motions • Planning in a changing world • Problem Definition • Common Approaches • Grid Based • Visibility Graph • Randomized Sampling Based • Planning Challenges
Randomized ApproachesRapidly exploring random trees(RRT) • Start with the initial state as the root of a tree • Pick a random state in anywhere or in the direction of the target • Find the closest node in the current tree • Extend that node toward the target if possible
Randomized ApproachesRapidly exploring random trees(RRT) • Start with the initial state as the root of a tree • Pick a random state in anywhere or in the direction of the target • Find the closest node in the current tree • Extend that node toward the target if possible
Randomized ApproachesRapidly exploring random trees(RRT) • Start with the initial state as the root of a tree • Pick a random state in anywhere or in the direction of the target • Find the closest node in the current tree • Extend that node toward the target if possible
Randomized ApproachesRapidly exploring random trees(RRT) • Start with the initial state as the root of a tree • Pick a random state in anywhere or in the direction of the target • Find the closest node in the current tree • Extend that node toward the target if possible
Randomized ApproachesRapidly exploring random trees(RRT) • Don't add extensions which would hit obstacles • Resulting tree contains only valid paths
Randomized ApproachesRapidly exploring random trees(RRT) • Search until goal is reached • Backtrack the tree
Randomized ApproachesExecution Extended RRT (ERRT) • Waypoints • Idea: Previously successful plans can guide new search • Biases can be encoded in the target distribution • The waypoint cache • Whenever a plan is found, store nodes in a fixed-size bin with random replacement • During random target point selection, sometimes choose a waypoint from the cache