Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 1 Chapter 12 Path Planning.

Slides:



Advertisements
Similar presentations
Solving problems by searching
Advertisements

Heuristic Search techniques
Problem solving with graph search
Announcements Course TA: Danny Kumar
AI Pathfinding Representing the Search Space
Traveling Salesperson Problem
NUS CS5247 Motion Planning for Camera Movements in Virtual Environments By Dennis Nieuwenhuisen and Mark H. Overmars In Proc. IEEE Int. Conf. on Robotics.
CSE 380 – Computer Game Programming Pathfinding AI
Kinodynamic Path Planning Aisha Walcott, Nathan Ickes, Stanislav Funiak October 31, 2001.
CPSC 322, Lecture 9Slide 1 Search: Advanced Topics Computer Science cpsc322, Lecture 9 (Textbook Chpt 3.6) January, 23, 2009.
C++ Programming: Program Design Including Data Structures, Third Edition Chapter 21: Graphs.
ITEC200 – Week 12 Graphs. 2 Chapter Objectives To become familiar with graph terminology and the different types of graphs To study.
1 Last lecture  Configuration Space Free-Space and C-Space Obstacles Minkowski Sums.
Nonholonomic Multibody Mobile Robots: Controllability and Motion Planning in the Presence of Obstacles (1991) Jerome Barraquand Jean-Claude Latombe.
Path-Finding with Motion Constraints Amongst Obstacles in Real Time Strategies By Jeremiah J. Shepherd Committee: Jijun Tang Roger Dougal Jason O’Kane.
UnInformed Search What to do when you don’t know anything.
Greedy Algorithms Reading Material: Chapter 8 (Except Section 8.5)
Spring 2010CS 2251 Graphs Chapter 10. Spring 2010CS 2252 Chapter Objectives To become familiar with graph terminology and the different types of graphs.
Uninformed Search Reading: Chapter 3 by today, Chapter by Wednesday, 9/12 Homework #2 will be given out on Wednesday DID YOU TURN IN YOUR SURVEY?
Blind Search-Part 2 Ref: Chapter 2. Search Trees The search for a solution can be described by a tree - each node represents one state. The path from.
Solving problems by searching
Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces Kavraki, Svestka, Latombe, Overmars 1996 Presented by Chris Allocco.
Chapter 5.4 Artificial Intelligence: Pathfinding.
C++ Programming: Program Design Including Data Structures, Third Edition Chapter 20: Binary Trees.
A Randomized Approach to Robot Path Planning Based on Lazy Evaluation Robert Bohlin, Lydia E. Kavraki (2001) Presented by: Robbie Paolini.
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.
Chapter 5.4 Artificial Intelligence: Pathfinding.
Lab 3 How’d it go?.
Chapter 9 – Graphs A graph G=(V,E) – vertices and edges
Localisation & Navigation
Introduction Of Tree. Introduction A tree is a non-linear data structure in which items are arranged in sequence. It is used to represent hierarchical.
Representing and Using Graphs
Path Planning for a Point Robot
How are things going? Core AI Problem Mobile robot path planning: identifying a trajectory that, when executed, will enable the robot to reach the goal.
Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars.
On Delaying Collision Checking in PRM Planning – Application to Multi-Robot Coordination By: Gildardo Sanchez and Jean-Claude Latombe Presented by: Michael.
COMP261 Lecture 6 Dijkstra’s Algorithm. Connectedness Is this graph connected or not? A Z FF C M N B Y BB S P DDGG AA R F G J L EE CC Q O V D T H W E.
1 Solving problems by searching 171, Class 2 Chapter 3.
Efficient Computing k-Coverage Paths in Multihop Wireless Sensor Networks XuFei Mao, ShaoJie Tang, and Xiang-Yang Li Dept. of Computer Science, Illinois.
CSCI 4310 Lecture 8: Path Planning. Book Buckland Ch. 8.
Laboratory of mechatronics and robotics Institute of solid mechanics, mechatronics and biomechanics, BUT & Institute of Thermomechanics, CAS Mechatronics,
1 Directed Graphs Chapter 8. 2 Objectives You will be able to: Say what a directed graph is. Describe two ways to represent a directed graph: Adjacency.
Computer Science 1 Using Clustering Information for Sensor Network Localization Haowen Chan, Mark Luk, and Adrian Perrig Carnegie Mellon University
1 Random Disambiguation Paths Al Aksakalli In Collaboration with Carey Priebe & Donniell Fishkind Department of Applied Mathematics and Statistics Johns.
Randomized Kinodynamics Planning Steven M. LaVelle and James J
Path Planning Based on Ant Colony Algorithm and Distributed Local Navigation for Multi-Robot Systems International Conference on Mechatronics and Automation.
Chapter 20: Graphs. Objectives In this chapter, you will: – Learn about graphs – Become familiar with the basic terminology of graph theory – Discover.
Spanning Trees Dijkstra (Unit 10) SOL: DM.2 Classwork worksheet Homework (day 70) Worksheet Quiz next block.
Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 2: Slide 1 Chapter 2 Coordinate Frames.
Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 8, Slide 1 Chapter 8 State Estimation.
Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 11, Slide 1 Chapter 11 Path Manager.
Solving problems by searching Chapter 3. Types of agents Reflex agent Consider how the world IS Choose action based on current percept Do not consider.
Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 13: Slide 1 Chapter 13 Vision Based Guidance.
Lecture 3: Uninformed Search
Chapter 5.4 Artificial Intelligence: Pathfinding
Shortest Path from G to C Using Dijkstra’s Algorithm
Schedule for next 2 weeks
Mathematics & Path Planning for Autonomous Mobile Robots
Optimal UAV Flight Path Selection
Motion Planning for a Point Robot (2/2)
Motion Planning for Multiple Autonomous Vehicles
Boustrophedon Cell Decomposition
Graphs Chapter 11 Objectives Upon completion you will be able to:
Problem Solving and Searching
What to do when you don’t know anything know nothing
Problem Solving and Searching
Yan Shi CS/SE 2630 Lecture Notes
Path Planning using Ant Colony Optimisation
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:

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 1 Chapter 12 Path Planning

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 2 path planner path manager path following autopilot unmanned aircraft waypoints on-board sensors position error tracking error status destination, obstacles servo commands state estimator wind path definition airspeed, altitude, heading, commands map Control Architecture

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 3 Path Planning Approaches Deliberative –Based on global world knowledge –Requires a good map of terrain, obstacles, etc. –Can be too computationally intense for dynamic environments –Usually executed before the mission Reactive –Based on what sensors detect on immediate horizon –Can respond to dynamic environments –Not usually used for entire mission

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 4 Voronoi Graphs

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 5 Voronoi Graph Example Graph generated using voronoi command in Matlab 20 point obstacles Start and end points of path not shown

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 6 Voronoi Graph Example Add start and end points to graph Find 3 closest graph nodes to start and end points Add graph edges to start and end points Search graph to find “best” path Must define “best” Shortest? Furthest from obstacles?

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 7 Path Cost Calculation

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 8 Path Cost Calculation

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 9 Path Cost Calculation

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 10 Voronoi Path Planning Algorithm Dijkstra’s algorithm is used to search the graph Voronoi graph and Dijkstra’s algorithm code are commonly available Matlab: Voronoi -> voronoi Dijkstra -> shortestpath

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 11 Voronoi Path Planning Result

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 12 Voronoi Path Planning – Non-point Obstacles How do we handle solid obstacles? Point obstacles at center of spatial obstacles won’t provide safe path options around obstacles

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 13 Non-point Obstacles – Step 1 Insert points around perimeter of obstacles

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 14 Non-point Obstacles – Step 2 Construct Voronoi graph Note infeasible path edges inside obstacles

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 15 Non-point Obstacles – Step 3 Remove infeasible path edges from graph Search graph for best path

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 16 Rapidly Exploring Random Trees (RRT) Exploration algorithm that randomly, but uniformly explores search space Can accommodate vehicles with complicated, nonlinear dynamics Obstacles represented in a terrain map Map can be queried to detect possible collisions RRTs can be used to generate a single feasible path or a tree with many feasible paths that can be searched to determine the best one If algorithm runs long enough, the optimal path through the terrain will be found

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 17 RRT Tree Structure RRT algorithm is implemented using tree data structure Tree is special case of directed graph Edges are directed from child node to parent Every node has one parent, except root Nodes represent physical states or configurations Edges represent feasible paths between states Each edge has cost associated traversing feasible path between states

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 18 RRT Algorithm Algorithm initialized –start node –end node –terrain/obstacle map

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 19 RRT Algorithm

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 20 RRT Algorithm

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 21 RRT Algorithm

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 22 RRT Algorithm Continue adding nodes and checking for collisions

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 23 RRT Algorithm Continue until node is generated that is within distance D of end node At this point, terminate algorithm or search for additional feasible paths

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 24 RRT Algorithm

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 25 Path Smoothing Start with initial point (1) Make connections to subsequent points in path (2), (3), (4) … When connection collides with obstacle, add previous waypoint to smoothed path Continue smoothing from this point to end of path

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 26 Path Smoothing Algorithm

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 27 RRT Results

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 28 RRT Results

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 29 RRT Results

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 30 RRT Results

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 31 RRT Path Planning Over 3D Terrain Assume terrain map can be queried to determine altitude of terrain at any north-east location Must be able to determine altitude for random configuration p in RRT algorithm Must be able to detect collisions with terrain – reject random candidate paths leading to collision Options: –random altitude within predetermined range –random selection of discrete altitudes in desired range –set altitude above ground level Test candidate paths to ensure flight path angles are feasible – reject if infeasible

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 32 RRT Algorithm – 3D Terrain modify to test for collisions with terrain and flight path angle feasibility

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 33 RRT 3D Terrain Results

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 34 RRT 3D Terrain Results

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 35 RRT 3D Terrain Results

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 36 RRT 3D Terrain Results

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 37 RRT Dubins Approach To generate a new random configuration for tree: –Generate random N-E position in environment –Find closest node in RRT graph to new random point –Select a position of distance L from the closest RRT node in direction of new point – use this position as N-E coordinates of new configuration –Define course angle for new configuration as the angle of the line connecting the RRT graph to the new configuration

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 38 RRT Dubins Results

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 39 RRT Dubins Results

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 40 RRT Dubins Results

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 41 Coverage Algorithms Goal: Survey an area –Pass sensor footprint over entire area Algorithms often cell based –Goal: visit every cell

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 42 Coverage Algorithm Two maps in memory –terrain map used to detect collisions with environment –coverage or return map used to track coverage of terrain Return map stores value of returning to particular location –Return map initialized so that all locations have same return value –As locations are visited, return value of that location is decremented by fixed amount:

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 43 Coverage Algorithm Finite look ahead tree search used to determine where to go Tree generated from current MAV configuration Tree searched to determine path that maximizes return value Two methods for look ahead tree –Uniform branching Predetermined depth Uniform branch length Uniform branch separation –RRT

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 44 Coverage Algorithm

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 45 Coverage Planning Results – Uniform Tree Look ahead length = 5 Heading change = 30 deg Tree depth = 3 Iterations = 200

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 46 Coverage Planning Results – Uniform Tree Look ahead length = 5 Heading change = 60 deg Tree depth = 3 Iterations = 200

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 47 Coverage Planning Results – RRT Dubins

Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 48 Coverage Planning Results – RRT Dubins