540 likes | 710 Views
TRAJECTORY MODIFICATION TECHNIQUES IN COVERAGE PLANNING. By - . Sanjiban Choudhury (Indian Institute of Technology, Kharagpur , India). Sanjiv Singh (Carnegie Mellon University, USA). Carnegie Mellon University. About the Institute…. … and the robots. Motivation.
E N D
TRAJECTORY MODIFICATION TECHNIQUES IN COVERAGE PLANNING By - SanjibanChoudhury (Indian Institute of Technology, Kharagpur, India) Sanjiv Singh (Carnegie Mellon University, USA) Carnegie Mellon University
Problem At Hand New outgrowths NO – GO AREAS
Main aspects of work • Handling new obstacles without re-planning. • Ensuring all routes respect curvature constraints. • Optimal turnings without entering “no-go” areas.
Current Approaches • Exact Cellular Decomposition • - Trapezoidal Decomposition(F.P. Preparata and M.I. Shamos, Computational Geometry: An Introduction, 1991) • - Boustrophedon Decomposition(H. Choset and P. Pignon, Coverage path planning: The boustrophedon decomposition, 1997) • - Split and Merge Method(T.Oksanen and A.Visala, Path Planning Algorithms for Agricultural Field Machines, 2007)
Problems with the approach • Obstacles are not handled efficiently. • Requires extra pre-determined spaces for turning, known as headlands. • Headlands have to be provided externally by operator.
Problem with obstacles • Re-planning required • Distribution of cells completely changed • Trivial cases may have over-complicated solutions.
Headlands • They are pre-determined and taken to be a considerably large enough value to allow turning. • No optimization of headland width with respect to – Curvature Constraints – Obstacle profile
‘Bending’ Lines • Each track is represented as a B-spline • Tracks are subjected to forces by 1. Obstacles 2. Curvature of track 3. Interaction forces between tracks
Modification of curves • Splines are used because of their local modification property. • Knot intervals containing the obstacle are modified.
Algorithm • 1. A track passing through the obstacle is taken. • 2. Knots are inserted appropriately. • 3. Energy associated with each knot interval is calculated. • 4. Points corresponding to the knots are acted upon by forces given by the energy gradient.
Knot insertion These points carry the curve over obstacles This part frozen This part frozen These points span over a distance of (π/2)*R to alter INITIAL heading These points span over a distance of (π/2)*R to alter FINAL heading
Knot insertion These points carry the curve over obstacles This part frozen This part frozen These points span over a distance of (π/2)*R to alter INITIAL heading These points span over a distance of (π/2)*R to alter FINAL heading
Energy of tracks • Each track has an energy associated with it.
Head to head comparisons Moving speed = 1m/s, Turning speed = 0.5 m/s, improvement = 9.6%
Turning at headlands The vehicle turns at • Field edges which are un-restricted. • Field edges which are restricted, i.e, “No Go Areas” • Edges of obstacles
Solution for the problem • The problem is framed as an “Optimal Control Problem” (OCP) (Oksanen, T., & Visala, A. (2004, October). Optimal control of tractor-trailer system in headlands)
Vehicle Model Used x and y are the coordinates of the rear axle center θ is the heading angle α is the steering angle u is the steering rate v is the velocity L is the wheel base
The OCP x is a state vector f dynamics function t0 and tf the time limits J the cost functional F the cost function C the path constraint function E the boundary condition function
Case 1 : No restriction on headlands (0,d) d (0,0)
Case 2: “No Go” Area • For such cases, solutions have been derived only for given headland width. • The OCP problem is reframed to solve for optimal headland width and time. (0,d) d No go (0,0)
Case 2: “No Go” Area Initial Values : Path Constraints : (0,d) Cost Function : d No go φ (0,0)
Case 3: Obstacles • Obstacles are also “no-go” areas inside the field. • In a similar fashion, the optimal turn is calculated.
Fitting the turns • Two sets of turns, one for no restriction, and another for restriction is stored for 10<φ<170 degrees, where φ is the angle between adjacent tracks. • The angle between tracks is rounded of to nearest multiple of 10, and the corresponding turn route is applied.
Local adjustment of turns Turn in no go area φ
Local adjustment of turns Turn in no go area φ Trajectory is converted to a spline and “bent” to respect both curvature as well as experience repulsion by the restricted areas.
Optimisation of Cellular Traversal • Currently all cellular traversal is boustrophedon. (back and forth) • However a circle takes more time back and forth than just spiraling down from its edges. • A rectangle would take more time spiraling than just covering it back and forth.
Algorithm • Choose the cell to optimise. • Offset the polygon inside by track width. Compute traversal time of the spiral and add it with traversal time of the remaining polygon. • Repeat till offsetting not possible. • Take the best solution.
Results • Guaranteed better solutions than Split and Merge method. • No significant increase in computation time.
Results Total Time = 4270 Total Time = 4965 Improvement in time = 14%