Path-Finding with Motion Constraints Amongst Obstacles in Real Time Strategies

About This Presentation
Title:

Path-Finding with Motion Constraints Amongst Obstacles in Real Time Strategies

Description:

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 ... –

Number of Views:141
Avg rating:3.0/5.0
Slides: 51
Provided by: w00t
Learn more at: https://www.cse.sc.edu
Category:

less

Transcript and Presenter's Notes

Title: Path-Finding with Motion Constraints Amongst Obstacles in Real Time Strategies


1
Path-Finding with Motion Constraints Amongst
Obstacles in Real Time Strategies
  • By Jeremiah J. Shepherd
  • Committee
  • Jijun Tang
  • Roger Dougal
  • Jason OKane

2
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

3
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)

4
Introduction
  • Path-finding in RTSs 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

5
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

6
Introduction
7
Old Game Path-finding Example
  • Command and Conquer

8
New game path-finding example
  • Halo Wars

9
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

10
Introduction
11
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

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

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

14
Related Work
SUCCESS
15
Related Work
  • Why not use RRTs?
  • 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

16
Related Work
  • Previous Attempts (Trail of Tears)
  • Tube Guided RRT
  • Preprocessing with Motion Planning Matrix and
    Environment Matrix (MPMEM)

17
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

18
Related Work
SUCCESS
19
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

20
Related Work
  • MPMEM
  • 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

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

22
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

23
Related Work
24
Related Work
25
Related Work
  • Create an initial motion plan matrix (MPM)
  • 3D data structure based on the x, y and q 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

26
Related Work
27
Related Work
28
The Algorithm Offline Stage
29
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

30
Related Work
31
Related Work
32
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

33
Related Work
34
Related Work
35
Related Work
  • Problems with MPMEM
  • Uses too much memory
  • Paths can look very unnatural

36
New Algorithm
  • Principles
  • Similar idea of piecing together smaller paths
  • FORGET RRTs!
  • Use Dubins curves to find paths

37
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

38
New Algorithm
  • Dubins Cars 6 motion primitives

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

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

41
Related Work
42
Related Work
43
New Algorithm
  • CS Construction
  • For every cell in the environment check to see if
    an edge collides
  • If so add it to the CS

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

45
New Algorithm
46
New Algorithm
47
Results
48
Results
49
Conclusion
  • It is consistently gooder

50
Questions?
Write a Comment
User Comments (0)
About PowerShow.com