970 likes | 1.89k Views
Path Planning Algorithms. Eric Kulczycki 12 - 16 - 04. Overview. What is Path Planning Types of Path Planning Environments Existing Path Planning Algorithms Detailed Descriptions of existing Path Planning Algorithms Related topics to Path Planning Algorithms Dynamic Programming
E N D
Path Planning Algorithms Eric Kulczycki 12 - 16 - 04
Overview • What is Path Planning • Types of Path Planning • Environments • Existing Path Planning Algorithms • Detailed Descriptions of existing Path Planning Algorithms • Related topics to Path Planning Algorithms • Dynamic Programming • Airship Characteristics (JPL Aerobot Platform) • Airship Navigation • Wind Assisted Flight Planning • Factors and Trade-offs that Affect Airship Path Planning • Current Milestones in Airship Path Planning • Potential Novel Approaches for Airship Path Planning • Summary • Conclusions
What is Path Planning? • Path planning is the art of deciding which route to take, based on and expressed in terms of the current internal representation of the terrain. • A Path Planning Algorithm is a computational process in which a navigational route is determined for a specific platform, system, or test-bed
Types of Path Planning • Complete path generation - The complete route to be taken is created as a sequence of moves from the initial position. • Next move selection - At each step, the algorithm must decide which way to move next. An efficient dynamic implementation is obviously required here, if the overhead is to be minimized. • Forward planning - The properties of the path can be taken into account by a deliberative thinking module, responsible for making founded decisions. For example, path lengths can be used to estimate travel-time, which influences the agent's decision to move to a particular location. • Anticipation - As an extension to the previous bullet-point, the path-planning algorithm can be used to take into account other agents' behaviors.
Environments • Known Environments • Path can be generated offline • Dynamic constraints can be taken into account • Path can be optimized for Time, Energy, or Distance • Unknown/ Partially Known Environments • Path must be generated in real-time (online) • Sensor information is heavily relied upon to plot the vehicle trajectory • Path must be regenerated to account for obstacles and other pertinent sensor information • Path may not be optimized
Existing Path Planning Algorithms • A* Algorithm • D*Algorithm • Genetic (Evolutionary) Algorithms • Neural Network Algorithms • Rapidly-Exploring Random Trees • NTG ( Nonlinear Trajectory Generation) Software Package
The A* Algorithm • Description • The A* algorithm heuristically calculates the cost of moving from the starting point to anywhere on a grid and it calculates the cost of moving to the goal from any given point on the grid. The path is repeatedly generated until the lowest cost path can be found that does not intersect obstacles. Total Cost Cost to reach the Goal Position (Red) Cost to reach from the Start Position (Green)
The A* Algorithm (Cont…) • Advantages • Can handle Variable Terrain Cost • Will provide the shortest and lowest cost path • Limitations • Does not efficiently handle path planning in unexplored or unknown areas • Will not provide smooth paths • Does not take dynamic constraints into account • Application • JPL Pioneer 2AT Testing in Mars Yard (Seraji, Howard, Werger)
A* Algorithm Example(Hungry Cat) 12 50 62 20 34 54 Start (Hungry Cat) Goal (Food Dish) Energy To Goal Energy from Start To Current location Total Energy 18 27 45
The D* Algorithm • Description • The D* Algorithm is a modified version of the A* algorithm that takes into account dynamic constraints. It can plan optimal trajectories in real-time by incrementally repairing the path as new information is discovered. There are several versions of D* including Basic, Focussed, and Minimal Initialization
The D* Algorithm (Cont…) • Advantages • Efficient for real-time systems in unknown or partially know environments • Takes into account dynamics • A B-Spline algorithm can be used to smooth the trajectory path for dynamic systems • Limitations • Requires sensors on robotic platform to retrieve information for path re-planning • Application • Manta Test Vehicle (AUV)
Genetic (Evolutionary)Algorithms • Description • A set of random “Chromosomes” (or path segments) are created which correspond to random solutions of a problem within a search space. The chromosomes are evaluated and picked randomly. The Algorithm operates upon the chromosomes by crossing them over or mutating them with each other to create an optimal continuous path between the start and goal positions.
Genetic Algorithms (Cont…) • Advantages • Very powerful offline method for path planning in known 3-D environments • Good for small systems will minimal initialization parameters and genetic operators • Limitations • Very time consuming even on advanced computer hardware • Not optimal for online or real-time path planning • Application • UAV and AUV Navigation Simulations
Neural Network Algorithms • Description – The neural network defines restrictions of the environment and calculates the collision energy function (CEF). The CEF and distance are calculated iteratively and are the basis for the cost function. • The CEF creates penalties in efficiency for traversing through obstacles thus influencing the results and efficiency of the path planning
Neural Network Algorithms (Cont..) • Advantages • High speed and High efficiency • Very efficient in real-time operations • Approach has been used to develop complete coverage path planning • Limitations • The optimal path generation is local • May not be ideal for global path planning • Application • JPL Pioneer 2AT Testing in Mars Yard (Seraji, Howard, Werger)
Function Approximation Iterative methods Calculations performed on the hidden layer(s) of the neural network Reinforcement learning and Navigation Neural Network based For unknown environments Can be used in a grid-based approach Neural Networks (Cont…)
Rapidly-Exploring Random Trees (RRTs) • Description • A randomized algorithm that quickly explores state space for dynamic and high DOF problems. RRTs are designed to drive forward like potential field methods and also explore the state space quickly and uniformly like randomized roadmap methods. RRTs Branching out randomly to generate path solutions Final Path Generated
Rapidly-Exploring Random Trees (Cont…) • Advantages • Specifically designed for nonholonomic constraints including dynamics and high degrees of freedom • Minimal heuristics • Limitations • Current Nearest-Neighbor techniques are inefficient • Paths generated may not be optimal • Application • Airship Simulation (Ostrowski , Kim)
NTG Package (Nonlinear Trajectory Software) • Description – Developed by Caltech, this package utilizes elements of geometric control and B-splines • Advantages • Generates path in real-time • Limitations • All existing documentation suggests that NTG is not suitable for complex systems • Application • Caltech Multi-Vehicle Wireless Testbed (MVWT)
Related topics to Path Planning Algorithms • B-Spline • A technique to generate a path with smooth curves between waypoints that a dynamic vehicle can realistically follow • Nonholonomic – A system that does not necessarily return to its original position when it returns to its original configuration
Related topics to Path Planning Algorithms (Cont…) • Randomized Roadmap Methods • Using the A* algorithm to develop a path from a start position to a goal position. (Latombe) • Potential Field Methods • Obstacles apply a repelling field to the robot, while the goal applies an attractive field. Application of a gradient descent to the resultant potential field landscape will generate a safe path while keeping obstacles at a maximum distance during the approach to the goal
Line of Sight Guidance • Analytical expressions derived for trajectories requiring a line of sight orientation for the vehicle • Attitude/Orientation control • Application • Missiles • Aircraft • Ships
Dynamic Programming • Begin from Goal position and work backwards to start position • Iterative • Can be used with B-Splines for smooth curves • Uses in Path Planning • Known Environments • Applied to systems with Nonholonomic constraints • Grid based approach can be used for obstacle avoidance
Airship Characteristics(JPL Aerobot Platform) • Control surfaces – X-tail configuration • 2 engines with uniform thrust vectoring (no differential thrust) • Large inertia • Ballast/Payload • Ballonet system (currently not used) • Semi-rigid envelope • Envelope acts as a lifting body when airship is flying into a head wind • No roll control surfaces or systems • Pendulum stabilized with gondola and payload • Altitude range limited based on geometry of envelope
Airship Navigation • Constraints and Concerns • Airship Platform Dynamic Constraints • How close to a Waypoint is acceptable? • Velocity Range of Airship • Optimization of Path • Minimize travel time • Minimize energy consumption via Wind Fields • Minimize distance traveled
Airship Navigation (Waypoints in 2D plane) • All waypoints can be reached • Dynamic constraints affect order of path through waypoints • Increasing the system constraints minimizes the number of path permutations • Path can be optimized for minimum time, energy, or distance • Potential Applications • Mapping/Surveying
Airship Navigation (Waypoints in 3D) • Path Complexity increases in 3D • Path Options • Plane by Plane • Nearest points • Number of path permutations increases
Wind Assisted Flight Planning 2-D Path Planning Scenario with Horizontal Wind Fields • Optimized for minimum time or energy • Assumptions • Airship moves along at same speed as wind currents • Airship is capable of vertical flight control • Atmosphere is characterized as a stack of homogeneous horizontal wind fields
Wind Assisted Flight Planning (Cont…) • Advantages • Energy or Time minimized based upon approach used • Wind is used to help ferry the airship from start to goal positions • Limitations • Requires known wind fields within the environment • Does not take into account gusts, updrafts, downdrafts, and unsteady disturbances • The current Linear Algorithms are incapable of handling complex 3-D wind fields
Factors and Trade-offs that Affect Airship Path Planning • Known vs. partially-known vs. unknown environment • Sensor vs. IBME vs. GPS assisted navigation • Localized vs. global path planning • Wind field and disturbance quantification • Obstacle avoidance • High vs. low altitude navigation – working range • Waypoint following – specific order vs. randomized • Radius of curvatures and velocities
Factors and Trade-offs that Affect Airship Path Planning (Cont…) • Station keeping • Optimization – time vs. distance vs. energy • Provide vs. randomly generate waypoints • Path planning method • Waypoint definition • Buoyancy due to temperature differences • Extended time duration over a waypoint vs. flyby over waypoint
Current Milestones in Airship Path Planning • RRT Motion Planning - GRASP Lab (Upenn) , Kim, Ostrowski • Time Optimal Paths for Lateral Navigation – Hima, Bestaoui • Motion generation for trim trajectories (helices with constant curvature and torsion) – Hima, Bestaoui • Optimal Aerobot Trajectory Planning for Wind-based Opportunistic Flight Control – Elfes, Kampke • Evolutionary Algorithm Based Offline/Online Path Planner for UAV Navigation – Nikolos, Valavanis, et al.
Potential Novel Approaches for Airship Path Planning • Path planning in 3-D with disturbances • Station keeping or landing for a selected time duration over waypoints through path generation • Global path planning • Combined local and global path planning • Wind assisted 3-D path planning • D* Algorithm and B-Spline methods • Neural Networks • Genetic Algorithms • Develop a new algorithm to reorient the airship as it approaches a waypoint such that the airship can reach the next waypoint without pushing beyond its dynamic constraints
Summary • What is Path Planning • Types of Path Planning • Environments • Existing Path Planning Algorithms • Detailed Descriptions of existing Path Planning Algorithms • Related topics to Path Planning Algorithms • Dynamic Programming • Airship Characteristics (JPL Aerobot Platform) • Airship Navigation • Wind Assisted Flight Planning • Factors and Trade-offs that Affect Airship Path Planning • Current Milestones in Airship Path Planning • Potential Novel Approaches for Airship Path Planning
Status of ADAMS Model • Awaiting final model from Jeff Payne • ADAMS 2005 up and running (old model) • Getting familiarized with ADAMS • Entry point not found (Error) • Successfully exported plant dynamics • Planning to meet with Antonio Diaz-Calderon • Planning to meet with Jeff Payne • *Meeting with Alberto Elfes Dec 28th
Research Assumptions • Assumptions • Known environment • Waypoints given and the order of importance is predetermined • No transient disturbances taken into account in path planning phase • No obstacles present in the environment • Research to be based on Titan Environment • Velocity • Density • Etc.
Proposed Path Planning Method 1 • Port airship “Plant” dynamics into simulink • Linearize equations of motion • Decouple Lateral and Longitudinal equations of motion • Constrain the capability of the ADAMS model to ensure that the model at full capacity can navigate the path with disturbances • Use a 3-D potential field method to attract the airship to waypoints • Develop PI or PID based controllers to allow the airship to efficiently create the path between waypoints • Once the airship is within a specified range of the waypoint, the potential field is disabled and a new potential field is activated at the next waypoint • Additional option • Airship can required to maintain a constant attitude for image gathering • Aim for time-optimal path generation
Proposed Path Planning Method 2 • Dynamic Potential fields based on Airship Parameters (Spin off of method 1) • Each waypoint has a potential field (PF) associated with it such that only 1 waypoint PF is active at a time • The waypoint PF will deactivate and another waypoint PF will activate based on information regarding the airships velocity, acceleration, orientation, etc. • Airship can perform station keeping or a hold pattern as a reference for changing the PF
Other Methods to Consider • PI or PID based controllers to navigate between waypoints using the airship dynamics in simulink • Linking B-spline methods and the airship dynamics to create paths that take into account the whole system. (Not just 1 point at a time)