Path-Finding with Motion Constraints Amongst Obstacles in Real Time Strategies By Jeremiah J. Shepherd Committee: Jijun Tang Roger Dougal Jason O’Kane.

Slides:



Advertisements
Similar presentations
AI Pathfinding Representing the Search Space
Advertisements

Rapidly Exploring Random Trees Data structure/algorithm to facilitate path planning Developed by Steven M. La Valle (1998) Originally designed to handle.
Sampling Techniques for Probabilistic Roadmap Planners
NUS CS5247 Motion Planning for Camera Movements in Virtual Environments By Dennis Nieuwenhuisen and Mark H. Overmars In Proc. IEEE Int. Conf. on Robotics.
Pathfinding Basic Methods.
CSE 380 – Computer Game Programming Pathfinding AI
Motion Planning CS 6160, Spring 2010 By Gene Peterson 5/4/2010.
Anytime RRTs Dave Fergusson and Antony Stentz. RRT – Rapidly Exploring Random Trees Good at complex configuration spaces Efficient at providing “feasible”
A Comparative Study of Probabilistic Roadmap Planners Roland Geraerts Mark Overmars.
Motion Planning for Tower Crane Operation. Motivation  Tower crane impacts the schedule greatly  Safety of tower crane operation is critical.
Kinodynamic Path Planning Aisha Walcott, Nathan Ickes, Stanislav Funiak October 31, 2001.
DESIGN OF A GENERIC PATH PATH PLANNING SYSTEM AILAB Path Planning Workgroup.
Randomized Motion Planning for Car-like Robots with C-PRM Guang Song and Nancy M. Amato Department of Computer Science Texas A&M University College Station,
David Hsu, Robert Kindel, Jean- Claude Latombe, Stephen Rock Presented by: Haomiao Huang Vijay Pradeep Randomized Kinodynamic Motion Planning with Moving.
Finding Narrow Passages with Probabilistic Roadmaps: The Small-Step Retraction Method Presented by: Deborah Meduna and Michael Vitus by: Saha, Latombe,
Motion Planning for Camera Movements in Virtual Environments Authors: D. Nieuwenhuisen, M. Overmars Presenter: David Camarillo.
On Delaying Collision Checking in PRM Planning G. Sánchez and J. Latombe presented by Niloy J. Mitra.
Sampling Strategies for Narrow Passages Presented by Irena Pashchenko CS326A, Winter 2004.
Motion Planning for Tower Crane Operation CS236A Prof. Latombe Shan Pan | Jessy Kang.
Presented By: Huy Nguyen Kevin Hufford
Introduction General Data Structures - Arrays, Linked Lists - Stacks & Queues - Hash Tables & Binary Search Trees - Graphs Spatial Data Structures -Why.
RRT-Connect path solving J.J. Kuffner and S.M. LaValle.
Randomized Motion Planning for Car-like Robots with C-PRM Guang Song, Nancy M. Amato Department of Computer Science Texas A&M University College Station,
Continuum Crowds Adrien Treuille, Siggraph 王上文.
Robot Motion Planning Bug 2 Probabilistic Roadmaps Bug 2 Probabilistic Roadmaps.
Route Planning Vehicle navigation systems, Dijkstra’s algorithm, bidirectional search, transit-node routing.
CS 326 A: Motion Planning Probabilistic Roadmaps Basic Techniques.
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.
Mobile Robot ApplicationsMobile Robot Applications Textbook: –T. Bräunl Embedded Robotics, Springer 2003 Recommended Reading: 1. J. Jones, A. Flynn: Mobile.
Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces Lydia E. Kavraki Petr Švetka Jean-Claude Latombe Mark H. Overmars Presented.
A Randomized Approach to Robot Path Planning Based on Lazy Evaluation Robert Bohlin, Lydia E. Kavraki (2001) Presented by: Robbie Paolini.
Chapter 5.4 Artificial Intelligence: Pathfinding.
Lab 3 How’d it go?.
IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS 2007 (TPDS 2007)
1 Constant Following Distance Simulations CS547 Final Project December 6, 1999 Jeremy Elson.
Geography and CS Philip Chan. How do I get there? Navigation Which web sites can give you turn-by-turn directions?
The Stochastic Motion Roadmap: A Sampling Framework for Planning with Markov Motion Uncertainty Changsi An You-Wei Cheah.
Mediamatics / Knowledge based systems Dynamic vehicle routing using Ant Based Control Ronald Kroon Leon Rothkrantz Delft University of Technology October.
Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars.
Motion Planning in Games Mark Overmars Utrecht University.
Wandering Standpoint Algorithm. Wandering Standpoint Algorithm for local path planning Description: –Local path planning algorithm. Required: –Local distance.
Adrian Treuille, Seth Cooper, Zoran Popović 2006 Walter Kerrebijn
Artificial Intelligence in Game Design Complex Steering Behaviors and Combining Behaviors.
Toward More Realistic Pathfinding Authored by: Marco Pinter Presentation Date: 11/17/03 Presented by: Ricky Uy.
Introduction to Motion Planning
School of Systems, Engineering, University of Reading rkala.99k.org April, 2013 Motion Planning for Multiple Autonomous Vehicles Rahul Kala Multi-Level.
Laboratory of mechatronics and robotics Institute of solid mechanics, mechatronics and biomechanics, BUT & Institute of Thermomechanics, CAS Mechatronics,
Tree-Growing Sample-Based Motion Planning
School of Systems, Engineering, University of Reading rkala.99k.org April, 2013 Motion Planning for Multiple Autonomous Vehicles Rahul Kala Rapidly-exploring.
1 Energy-Efficient Mobile Robot Exploration Yongguo Mei, Yung-Hsiang Lu Purdue University ICRA06.
Introduction to Robotics Tutorial 10 Technion, cs department, Introduction to Robotics Winter
Randomized Kinodynamics Planning Steven M. LaVelle and James J
Autonomous Robots Robot Path Planning (3) © Manfred Huber 2008.
Artificial Intelligence in Game Design Lecture 8: Complex Steering Behaviors and Combining Behaviors.
CSCE 552 Spring 2010 AI (III) By Jijun Tang. A* Pathfinding Directed search algorithm used for finding an optimal path through the game world Used knowledge.
CSCE 552 Fall 2012 AI By Jijun Tang. Homework 3 List of AI techniques in games you have played; Select one game and discuss how AI enhances its game play.
Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 1 Chapter 12 Path Planning.
Randomized KinoDynamic Planning Steven LaValle James Kuffner.
Autonomous Robots Robot Path Planning (2) © Manfred Huber 2008.
2.1 Introduction to Configuration Space
Rapidly-Exploring Random Trees
Chapter 5.4 Artificial Intelligence: Pathfinding
CS 326A: Motion Planning Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe,
Schedule for next 2 weeks
Boustrophedon Cell Decomposition
Agent-Centered Search
Path Planning in Discrete Sampled Space
CSCE 552 Spring 2009 AI (III) By Jijun Tang.
Presentation transcript:

Path-Finding with Motion Constraints Amongst Obstacles in Real Time Strategies By Jeremiah J. Shepherd Committee: Jijun Tang Roger Dougal Jason O’Kane

Introduction Most video games have some form of path-finding Methods for finding paths are primitive –Motion Constraints not easily implemented –Agent movement is not realistic Some games fabricate path realism

Introduction Real Time Strategies (RTS) are notorious for simple path-finding “In an RTS, as in other wargames, the participants position and maneuver units (agents) and structures under their control to secure areas of the map and/or destroy their opponents' assets.” (Gervk)

Introduction Path-finding in RTS’s generally involves these steps: –A unit and destination for the unit is selected –An obstacle free path is the calculated by using an algorithm like A* –The path is followed by a “move-rotate-move” method

Introduction These paths can be created in this fashion because of the structure of the environment The environment is generally a grid –The size an number of cells are known –Obstacles exist in the environment and are known –Each grid cell has an occupancy flag

Introduction

Old Game Path-finding Example Command and Conquer

New game path-finding example Halo Wars

Introduction A problem emerges when adding motion constraints to these paths –Paths found may not reach the destination –Paths are no longer guaranteed to be obstacle free

Introduction

The method I propose uses an algorithm found in motion planning and path-finding for robotics Combines plans and paths found with the algorithm with carefully crafted data structures Paths with motion constraints could be calculated in real-time

Related Work Rapidly Exploring Random Trees (RRT) is an algorithm that can find a path and a motion plan that adheres to motion constraints

Related Work Goal biased RRT’s work by: 1.Choose the point nearest to the goal state in the tree and attempt to connect the two 2.If it succeeds in connecting then a path and a plan is found 3.Else choose a random point in the configuration space 1.Find the point in the tree nearest to the random point 2.Choose actions that will incrementally move toward the new point, creating new points in the tree 4.Repeat until goal is reached or it is determined that the goal is unreachable

Related Work

Why not use RRT’s? –They are inconsistent in regards to speed –In previous tests, the range of time it took to find a path and motion plan was from six seconds to two minutes

Related Work Previous Attempts (Trail of Tears) –Tube Guided RRT –Preprocessing with Motion Planning Matrix and Environment Matrix (MPM&EM)

Related Work Tube Guided RRT –Use a tube to constrict sampling –The less samples the faster it will find a path Algorithm –Draw a Probablistic Road Map (PRM) –Find the shortest path on the PRM –Construct a tube with the width the size of the turning radius around the path –Run the RRT, only sampling points in the tube

Related Work

Tube Guided RRT Problems –It ran on par with a regular RRT –Some cases it took much longer than a regular RRT –More inconsistent than a regular RRT

Related Work MPM&EM –The broad idea is to piece together small paths and motion plans to create a large motion plan and path –There are two stages to this algorithm Offline Stage Online Stage

Related Work The Smallest Turning Radius Square (STRS) is important to both stages Contains a full turn to the left and right

Related Work Offline Stage –Create the environment matrix (EM) –Create an initial motion plan matrix (MPM) –Add references in the environment matrix (EM) and the calculate the final (MPM) Online Stage –Traverse the EM from the starting state to the goal state –Follow the motion plans stored in the MPM as referenced by the information in the EM cells

Related Work

Create an initial motion plan matrix (MPM) –3D data structure based on the x, y and  in the configuration space –Contains potential motion plans that can be used when the STRS is obstacle free –A special environment is used for this step All paths are contained inside of the STRS

Related Work

The Algorithm – Offline Stage

Related Work Create the EM continued –For all the points in the EM and for all the points in the STRS at that EM find and store a motion plan and path –If a motion plan is collision free in the MPM then a reference to that plan is stored in the EM –Else calculate a new motion plan store that in the MPM and store a reference to that in the EM

Related Work

From the starting point calculate a path using A* –The points that lay on the outer edge of the STRS are given higher priority Traverse the EM using the path Create a full motion plan with the references in the EM to the MPM

Related Work

Problems with MPM&EM –Uses too much memory –Paths can look very unnatural

New Algorithm Principles –Similar idea of piecing together smaller paths –FORGET RRT’s! –Use Dubin’s curves to find paths

New Algorithm Dubins Car –It finds the shortest path for a nonholonomic model in an obstacle free environment –The car that only moves forward –The car can only steer all the way right, all the way left, or not at all –Paths and plans are very small

New Algorithm Dubins Car’s 6 motion primitives

New Algorithm Algorithm Overview –Create an album of motion-plans and paths (AMAP) –Create a collision set (CS) containing colliding edges

New Algorithm AMAP Construction –Create paths for all cells to the right of the center STRS using Dubin’s Curves –We can do this because the left side will mirror the right –Cuts the memory consumption in half

Related Work

New Algorithm CS Construction –For every cell in the environment check to see if an edge collides –If so add it to the CS

New Algorithm Online Portion –Use a slightly modified version of A* to traverse AMAP –Includes a short circuit

New Algorithm

Results

Conclusion It is consistently gooder

Questions?