Recent progress in trajectory smoothing of mobile robots

The mobile robotics is growing rapidly and is being used in a variety of applications, greatly improving productivity. Path planning is a central part of autonomous navigation for mobile robots. However, most paths generated by these methods have sharp turns, which are unacceptable for mobile robots due to their own motion limitations or specific task scenarios. Smoother paths are therefore needed to improve the reliability and efficiency of the robot while adapting to realistic scenarios. This paper summarizes the classical curve smoothing algorithms and relate new research results presented in recent years, and divide them into six categories: polynomial interpolation, non-uniformly interpolated curves, Beizer curves, B spline curves, Reeds-Shepp curves, geometric algorithms, etc. Besides, a brief mathematical description is given along with the algorithms, and some of the algorithms are also given as examples for reference. In the future, better curve smoothing algorithms to satisfy the kinematic laws of different vehicles (robots/ships/UAVs) in multiple environments and non-simple interpolation smoothing algorithms will be proposed.


Introduction
In the context of the global transformation of industry towards intelligence, the mobile robotics industry has grown rapidly [1].Today, mobile robots are widely used in areas such as warehousing, logistics, agriculture, and unmanned vehicles, where they repeat simple and tedious tasks, freeing up human labour and increasing productivity [2].In the case of mobile robots, their capabilities are often judged by factors such as safety and efficiency [3].They usually work in complex environments where there may exit static or dynamic obstacles, and when mobile robots perform tasks from the start to the end, they use their autonomous navigation capabilities to plan paths to avoid obstacles and reach the end.
Path planning is one of the most crucial aspects of autonomous navigation, and the contour of the projected path curve has a significant impact on the robot's effectiveness and dependability.The following criteria can typically be used to assess how well an algorithm planned a path curve: 1. the computational complexity of the algorithm 2. path length 3. smoothness of the path lower computing complexity and shorter pathways can increase the mobile robot's operational effectiveness for the first two reasons.But for the third point, in reality, the impact of the smoothness of the path curve on the robot must be considered.Firstly, mobile robots may not be able to move omnidirectionally due to their own motion constraints (such as continuous curvature constraints on the robot), making it difficult to complete sharp turns in strict accordance with the planned path.Second, for unmanned robots considering comfort, storage robots transporting valuables or dangerous goods, etc., sharp turns are unacceptable, so the degree of smoothing of the path curve is an important research point that must be extra smoothed after the path curve has been planned [4].To illustrate the limitations of path curves planned by classical path planning algorithms, taking a grid-like map of 8*12 as an example.The classical path planning algorithms are algorithms such as Dijkstra, Best First Search (BFS), A* and the optimization algorithm associated with A*. Figure 1 shows the path curves planned by the A* algorithm and the full-angle path planning A* algorithm.In the figure, the mobile robot has to go around black obstacles from the yellow point to reach the green point.The blue and red lines are the path curves planned by each of the two methods.It is clear that both the traditional A* algorithm and its optimization algorithm suffer from the problem that the path curve consists of only straight lines and sharp turns, also with too many turns and a high cumulative number of turns, so it is difficult for the mobile robot to follow such a path curve [5].In short, the algorithm must plan a path curve that not only meets the requirement of reaching the end point at minimal cost, but also conforms to robot kinematics so that it can be better applied in realistic scenarios.In this paper, classical curve smoothing algorithms and the latest research results from recent years are summarized in this paper.These algorithms can be used for the optimization of path curves, and hence give solutions to the problems described above.Along with the presentation of the algorithms, certain mathematical descriptions of the formulas and graphical examples are given.

Polynomial interpolation
The polynomial interpolation-based curve smoothing algorithm is a commonly used method for curve smoothing [6].The algorithm fits a set of discrete points that are known to exist while maintaining the curve's original shape and properties to produce a smooth curve, a smooth curve is produced by the polynomial interpolation process from a collection of discrete points.When performing polynomial interpolation, the appropriate polynomial order needs to be chosen.Generally speaking, the higher the order, the higher the accuracy of the fit but also the more likely it is to lead to overfitting problems.Therefore, in practice, the order needs to be controlled appropriately.The advantage of polynomial interpolation-based curve smoothing algorithm is simple and effective, and is therefore widely used in practical applications.However, the algorithm also has some drawbacks, such as the tendency to lead to overfitting problems, and the need to properly control the number of polynomial orders.Besides, the algorithm also requires a high density of data points and a high sampling frequency, otherwise it may lead to fluctuations or oscillations in the interpolation results.
The Lagrange interpolation polynomial is the most widely used algorithm in path smoothing, and this method is described below.Lagrange interpolation polynomials: If the nth degree polynomial   ()( = 1,2 ⋯ ) satisfies at n+1 nodes(<  1 < ⋯ <   ) call these n + 1 nth polynomials  0 (),  1 () ⋯   () the nth interpolation basis functions on node  0 ,  1 , ⋯ ,   .The nth interpolation basis function can be obtained from the equation (2): It is clear that the above equation satisfies the conditions for the definition of the nth interpolation basis function.Thus,   () satisfying the   (  ) =   ,  = 0,1, ⋯ ,  condition can be expressed as equation ( 3): An interpolating polynomial shaped as above is called a Lagrange interpolating polynomial.That is: A class of non-polynomial parametric splines was proposed which generated curves with  2 continuity and required only four control points from Cem Yuksel et al, to define each curve segment between consecutive control points [7].An approach from Chang S.R. et al, was proposed to obtain collision-free and continuous curves using an interpolation approach [8].

Non-uniform interpolated curves
A method for non-uniform interpolation of curves was proposed from Nira Dyn in 2022 [9].The paper proposed interpolating 2-point schemes and interpolating 4-point schemes, and demonstrated that the planned path of this approach was shown to be smoother than traditional interpolation methods.
The classical interpolation method (The even and the odd subdivision rule) is first illustrated [10].First given the initial zero-level curve data  0 = (  0 ) ∈ℤ ,the data for the  + 1 ( ∈  0 ) level curves are obtained from equation ( 5): In the formula,   ,   are fixed real numbers.If the values of   ,   are made to depend on the values of k and i, then it is possible to achieve smoother interpolation results.With this thought, Nira Dyn proposed a special nonlinear interpolation method, which differs from the common nonlinear interpolation approach in that the authors proposed to use a uniform binary of parameters    = 1/2  [11].When j is not zero,  ,0  = 1,  −  = 1 The parameter is periodic and independent of i, j.  ,  is duplicated in i with frequency 2  , which means that the data   = (  +1 ) ∈ℤ obtained by this method is given in accordance with the equation ( 6): Where l=i mod 2  with certain finite sets    ⊂ ℤ and weights  ,  ∈ ℝ for ⅈ{0,1, ⋯ , 2  − 1},  ∈    and   .
By varying the number of integers in the set j, the non-uniform interpolation method gives a smoother curve compared to the fixed interpolation method for the interpolation of two points and the interpolation of four points, which is more advantageous for path optimization of mobile robots.

The Bezier curve
The well-known Bessel curve was introduced by the French engineer Pierre Bessel in 1962.It is a curve that does not contain parameters and has continuity, symmetry and periodicity.It is an excellent way of smoothing applied to two-dimensional line segments.
The Beizer curve is essentially a kinematic trajectory curve, generated by the uniform motion of n simultaneously moving points on n line segments, which has the following properties: Control of the curve shape using n control points  1 ,  2 , ⋯ ,   Beizer curves connect the beginning position  1 and the goal position   ,but do not pass through the intermediate control point  2 ⋯  −1 Formula for a Beizer curve of degree N: It is also possible to express the above formula recursively in equation ( 8): Beizer curves are an excellent path smoothing algorithm, the most widely used is the cubic parametric Beizer curve, shown on Figure 2, which is fast to compute for practical problems.In addition to this, path smoothing can be done by simply recording the coordinates of the necessary control points on the path, which is simple and saves storage space.
This approach was used in Ben Zhang's study, where a new path planning algorithm was designed in conjunction with a jump point algorithm, capable of global path curve optimization Further, Baoye Song et al present a modified particle swarm optimization method for the design of smooth trajectory of mobile robots according to Beizer curve [13].The new approach uses successive higher order Bessel curves instead of connecting several lower order Bessel curve segments to achieve higher order continuity.

B spline curve
B spline curves are an optimization and extension of Beizer curves and a classical method of curve smoothing, defined by a series of control points and nodes [14].B spline curves may mimic complicated curve forms and have a high degree of fit.They also have strong local control features that make it simple to add or remove control points as needed without changing the overall shape of the path.
The definition of a B spline curve requires two components: a sequence of nodes and a basis function.The nodal sequence is a non-degenerate sequence, usually uniformly distributed.By using base value analysis method, the effect of each control point on the curve is analyzed.For B-spline curves, their base values are generally local non-zero values.So that there is only a local effect of the control points, which allows the curve to adapt well to local variations.The classical approach to the calculation is: Allowing for n+1 control points, the border range and shape of the curve spline are defined by  0 ,  1 ⋯   .Then the kth order B spline curve with n+1 control points is: Where  ,() is the i-th order B spline basis function, corresponding to the control point   .The basis function has the following de Boere-Cox recurrence equation (10): Where t is a continuously varying value of a non-decreasing sequence known as a nodal vector, generally with the first and last values defined as 1.The sequence is as follows: [  0 ,  1 , ⋯ ,   ,  +1 , ⋯ ,   ,  +1 , ⋯ ,  + ] In a study by Xinchen Li, a smooth path curve algorithm for shortening and smoothing paths in complex environments was proposed [15].The article uses cubic smoothed B-sample curves to generate a final path that is collision-free, strictly continuous and suitable for the robot motion principle.Furthermore, a curve approximation method via arbitrary order B splines was proposed from Raine Yeh et al, which achieves a high approximation of the curve node vector, this method can produce more accurate results with fewer control points and is quicker than other smooth curve algorithms [16].
For further research, an approach of moving the path control points and processing the original path curve before smoothing by using B spline curves was proposed from Ning Cao et al, which yields a smoothed path that outperforms the results of a direct B spline curve algorithm [17].
The initial curve's quality has a big impact on the way the curve was smoothed.The traditional Line of sight algorithm determines whether the line of adjacent control points passes through an obstacle, i.e. and whether there is a sight between the two points.By connecting the two points with a sight directly, a shorter path length and fewer turns can be obtained.However, traditional methods may produce sharp angles in the path curve, which is detrimental to the robot's movement.Therefore, the paper proposes two optimized methods, which treat the curve so that the turn angle is as large as possible, facilitating further smoothing.

Rotate line algorithm.
The Rotate line algorithm moves control points on a curve to make the angle of the curve turn as large as possible.Only one control point is moved per operation, so it is only necessary to monitor that the section of the curve affected by the control point does not collide with an obstacle.For example, Moving the point  2 in the Figure 3 so that it moves on the line segment  2  3 , the movement of  2 causes only one curve segment  1  2 to move.Notice that the direction of a curve segment is determined by two points, which means the algorithm is to be applied twice.The front and back angles are gained before and after the two motions, and the two moves have distinct impacts on the curve.Figure 3(a) shows the effect of the front angle: a movement of  2 in the direction of  3 increases angle  1  2 ′  3 .The effect of back angle is shown in Figure 3(b): the effect of moving  2 in the direction of  3 on the angle  0  1  2 ′ has to be discussed in separate cases, where the angle increases if the point  3 is below  1 and decreases vice versa.

Parallel line algorithm.
The authors also propose a Parallel line algorithm.The core idea is that when the curve is processed twice using the Rotate line algorithm, if the back angle of the curve segment still does not meet the actual requirements, two points can be found on the two-line segments corresponding to the back angle.The two points can be connected to form a new curve, while under the premise of satisfying the requirement of not colliding with an obstacle, many arbitrarily parallel paths can be drawn, as shown in Figure 4.It is obvious that the angle increases a lot after the processing.

Reed-Shepp curve
The Reeds-Shepp curve is a mathematical model for describing the trajectory of a robot or vehicle, proposed in 1990 by American mathematicians Lester R. Ford Jr.With consideration for the size of the robots and the mobility limits, it is a shortest path planning method that may be used to determine the best route to the desired place, shown on Figure 5.
Reeds-Shepp curves comprise four basic curve types: straight-line segments, circular arcs, S-curves and inverse S-curves.Each type of curve can be used to describe different ways of moving a robot or vehicle, where C stands for circular arc motion, S for straight line motion, | for imminent reverse motion and u for two circular arc motions turning by equal angles.In a Reeds-Shepp curve, each basic curve type has a corresponding surrogate value that is used to represent the cost required in executing that curve.Hence, Reeds-Shepp curves may be modified to fit a variety of application settings in order to save costs and discover the shortest path.The curve has the following advantages: (1) Shortest path: The Reeds-Shepp curve finds the shortest path between two points, which is important for robot and vehicle motion control.(2) Turning radius limit: The Reeds-Shepp curve takes into account the turning radius limit of the vehicle or robot, which can avoid problems such as collisions during robot or vehicle motion.(3) Versatility: Reeds-Shepp curves include four basic curve types that can be used to describe different types of motion with great flexibility.
In conclusion, the Reeds-Shepp curve is a useful mathematical model for robot path planning, vehicle driving assistance systems, air vehicle control and other fields.Its consideration of shortest path planning and turning radius limits makes it safer and more reliable for robots and vehicles to avoid problems such as collisions during their movements.
But the Reeds-shepp curve also has some limitations.In reality, the traditional method does not include the size of the mobile robots in the calculation range.Therefore, it cannot be applied directly to robots with actual size.Because a point robot that does not take into account size can change direction immediately at any point, especially at vertexes and cusps (cusps are points formed as the robot changes from forward to backward), it is not possible for a robot that takes size into account.In response to these problems, an optimization of the Reeds-shepp curve (Two points path planning approach) was proposed in a study by B.J. Alshaer et al [19].The algorithm modifies the points used for path planning according to the robot's motion state, allowing the robot to adapt to a realistic scenario with a mobile robot of considered size.
When a mobile robot with actual size backs up, the path is planned according to the midpoint of the robot's rear axis; when the robot moves forward, the path is planned with reference to the midpoint of the front axis.At the cusp formed by the robot changing direction of travel, the method adds an additional straight section to the path, as shown in figure 6.The point used for path planning is also used as a driving point.The additional straight-line segment helps to place the midpoint of the front axis at the start of the optimal path.The robot has to execute a forward command next, which is beneficial for robots considering size if the control points are aligned with the path.

Geometric algorithm
The Chaikin curve smoothing algorithm was presented by George Chaikin at the University of Utah lecture in 1974, developing a geometric algorithm that can directly deal with control polygons [20].This is an interesting curve smoothing algorithm.For curves generated by a set of control points or control polygons, Chaikin's algorithm is based on cutting the corners in a particular way, i.e. by connecting new control points to achieve chopping off the curve's corners and generating a new route.This procedure is then repeated again to create a smoother curve path.
Chaikin uses a fixed scale to cut the corners of the curve, so they are all cut equally.Given a polygonal curve controlled by n+1 control points  1 ,  2 , ⋯ ,   , a new sequence of control points  0  0  1  1 ⋯  −1  −1 is formed by cutting in the above way, where   ,   is related to  as in equation ( 11 It may be inferred that the shift from n to 2n control points has resulted in a smoother curve and more precise management of the curve.The Figure 7 uses the twice Chaikin method of curve smoothing, which is based entirely on geometric images and only requires the coordinates of the control points to be known, and a simple algebraic calculation is used to smooth the curve.

Other methods
In addition, the authors briefly summarize some of the latest research results, which are difficult to be classified into the above categories based on their principles.
Fei Fei Li, Yun Du et al. proposed an algorithm combining an improved artificial fish swarm algorithm with continuously path curves, which substantially improved the path planning accuracy [21].A smoothness and time optimum S-curve trajectory planning technique with excellent efficiency and minimal complexity was presented by Yi Fang, Jie Hu et al [22].Lin Xu, Baoye Song et al. proposed an algorithm combining curve smoothing with adaptive delay velocity (PSO-ADV), and the newly developed PSO-ADV algorithm has excellent performance and can find the optimal control points and parameters quickly [23].Jianwei Ma et al. proposed a genetic algorithm robot path planning incorporating continuous curve smoothing [24].This method is used to overcome the problems of node redundancy and spike mutation in conventional methods.Compared with the existing methods, the path curve generated by this method are shorter, smoother and safer.

Conclusion
In this paper, taking as a starting point the paths that need to be smoothed in real-life applications of mobile robots, the current curve smoothing algorithms is summarized and divided into six categories: polynomial interpolation, non-uniform interpolation curves, Beizer curves, B spline curves, Reeds-Shepp curves and geometric algorithms.With innovations and upgrades in the field of mobile robotics, robot path optimization has become an important research area and the study of this has important practical implications.In the future, it is expected that more mobile robots will appear in various fields to improve efficiency and reduce the labour burden.The research on path curves of mobile robots will continue to advance and deepen.Also, the better path curve smoothing algorithms can be applied to various vehicles such as robots, ships and drones.In addition, methods other than pure interpolation smoothing will also be proposed in the future.

Figure 1 .
Figure 1.Path planning result on different methods.(a) Traditional A-star; (b) Improved A-star.In this paper, classical curve smoothing algorithms and the latest research results from recent years are summarized in this paper.These algorithms can be used for the optimization of path curves, and hence give solutions to the problems described above.Along with the presentation of the algorithms, certain mathematical descriptions of the formulas and graphical examples are given.

Figure 3 .
Figure 3. (a)Effect for front angle; (b)Effect for back angle.