Global Energy Fairing of B-Spline Curves in Path Planning Problems
The paper is concerned with path planning for mobile robots. Specifically, the discussion is related to the following problem: Given an ordered sequence of points on the plane, construct a path that fits these points and satisfies certain smoothness requirements. These requirements may be different in different problems and imply basically that the constructed path is to be realizable. Such a problem arises, e.g., when it is required to follow in an automated mode a path stored as a discrete set of points, which, e.g., were collected by a GPS receiver installed on a car when it followed this path for the first time. Due to errors inherent in the data points, the shape of the curve approximating the desired path turns out often inappropriate. The shape of the curve can be improved by applying the so-called fairing, which consists in moving the original data points with the aim to minimize some fairness criterion. Adequate small variations of the data points preserve the proximity of the resulting path to the original data points and make it fairer. In the paper, a new global fairing method is proposed. It reduces the problem of constructing a fair cubic B-spline curve to solving a quadratic programming problem with simple constraints. The fairing criterion is based on minimizing jumps of the spline third derivative. The discussion is illustrated by numerical examples of fairing two actual paths constructed by data points collected by a GPS/GLONASS receiver mounted on a moving vehicle.