Abstract
It is impossible to achieve vertex movement and rapid velocity control in aerial robots and aerial vehicles because of momentum from the air. A continuous-curvature path ensures such robots and vehicles can fly with stable and continuous movements. General continuous path-planning methods use spline interpolation, for example B-spline and Bézier curves. However, these methods cannot be directly applied to continuous path planning in a 3D space. These methods use a subset of the waypoints to decide curvature and some waypoints are not included in the planned path. This paper proposes a method for constructing a curvature-continuous path in 3D space that includes every waypoint. The movements in each axis, x, y and z, are separated by the parameter u. Waypoint groups are formed, each with its own continuous path derived using quadratic polynomial interpolation. The membership function then combines each continuous path into one continuous path. The continuity of the path is verified and the curvature-continuous path is produced using the proposed method.
Keywords
Introduction
Path searching is one of the main topics in path-planning research. The primary purpose of path planning is to construct a collision-free path. Commonly used algorithms for path planning include the D* algorithm [1], potential field algorithm [2], Probabilistic Roadmap Methods (PRM) algorithm [3], and Rapidly exploring Random Trees (RRT) [4]. These algorithms focus on path planning on a 2D plane. For path planning in a 3D space, researchers have proposed algorithms to create various optimal or sub-optimal paths [5] [6]. These algorithms provide a method of creating paths using waypoints for the 3D movement of aerial vehicles and aerial robots [7].
Many forces, such as gravitational, centrifugal, centripetal, and inertia, may obstruct stable movement in a real physical environment. These forces have a greater effect on movements in a 3D space compared to movements on a 2D plane. On a 2D plane, the movements obtain momentum from the ground. Therefore, as long as slippage does not occur or the path is continuous, the effects of these forces can be neglected. On the other hand, in a 3D space the movement of aerial robots or aerial vehicles is unable to obtain momentum from the ground. Instead, momentum is gained from the air; for this, a fixed-wing aircraft must have a larger velocity than stalling velocity [8]. If the velocity drops below the stalling velocity, the fixed-wing aircraft cannot obtain the lift force and will stall. Therefore, the fixed-wing aircraft must fly above the stalling velocity and cannot have any sharp angular movements or stop in the 3D space. A rotary-wing aircraft can hover in 3D space but cannot have any sharp angular movement or rapidly stop. These conditions imply that the movements of aircraft in 3D space should not have vertexes and that the velocity and acceleration should be continuous and maintained above the stalling velocity.
Paths with continuous velocity and acceleration, also referred to as smooth paths or continuous paths, are classified in terms of continuity, G0, G1, G2, -, Gn [9]. A G0 continuous path is constructed by forming a straight line between the waypoints. PRM [3] produces the G 0 continuous path. A G1 continuous path matches the first-order differential values at each of the waypoints. This path provides a continuous velocity and a common tangential direction at the waypoint. A G2 continuous path has the same second-order differential values and also shares a common centre of curvature. This path has a continuous acceleration, and it is called a curvature-continuous path. A Gn continuous path is defined as a continuity of the n th-order differential values. The path must have G2 continuity to guarantee smooth movements.
Many studies focus on movements in 2D space and utilize spline-based methods to construct the continuous path. Magid et al. proposed a robot navigation algorithm based on spline [10]. Komoriya et al. proposed trajectory design and control of a wheel-type mobile robot using B-spline [11]. Piazzi et al. demonstrated the use of
Various algorithms have also been applied for constructing continuous paths in 3D space. Hasircioglu et al. showed 3D path planning for the navigation of UAV by applying evolutionary algorithms using B-spline [5]. Yang et al. demonstrated a 3D path-smoothing algorithm using cubic Bézier spiral curves [16]. Further, Babaei and Mortazavi described 3D curvature-constrained trajectory planning based on in-flight waypoints [6].
Most 2D and 3D continuous path-planning methods use spline interpolation, for example B-spline and Bézier spiral curves. However, such methods are not applicable in path-smoothing methods because some waypoints are not part of the smoothed path. Instead, control points should be used to decide curvature in the path.
This paper expands the quadratic polynomial interpolation (QPMI) path-smoothing method [17] [18], used for path smoothing in a 2D plane, to connect waypoints and form continuous curves in a 3D space.
The rest of the paper is organized as follows: section 2 explains the path-smoothing method using polynomial interpolation. In section 3, the QPMI path-smoothing method is expanded to apply to the 3D space. Section 4 proposes the membership function for the QPMI path-smoothing method in a 3D space. Section 5 discusses continuity and curvature in the proposed method. Section 6 describes a series of 3D path-smoothing simulations using the proposed method. Section 7 provides conclusions.
Path-smoothing method using polynomial interpolation
In the case of aerial robots or aerial vehicles polynomial interpolation cannot be applied directly, because in a 3D space the path involves a complex non-linear trajectory where each waypoint has a visit sequence. The planned path must visit every waypoint in sequential order. These conditions make it difficult to apply polynomial interpolation directly to 3D paths. Other spline-interpolation-based methods produce paths that do not visit all waypoints. Instead, control points are either used based on a subset of waypoints or determined using another method. In this case, the planned smooth path may be a shorter path, but it is not a unique path through the waypoints. Essentially, the path should depend on the waypoints only, and visit all waypoints.
General polynomial interpolation involves constructing a polynomial curve that includes every waypoint. Runge's phenomenon [9] occurs when using high-order polynomials. QPMI [17] avoids Runge's phenomenon by using the quadratic polynomial, which is the lowest-order polynomial connecting three waypoints with G2 continuity. In addition, it has a unique solution, a shortest path, and can obtain variations in curvature. These features provide high reliability and require only low-performance hardware. However, in order to create a shortest path, the quadratic polynomial should have a rotated form. QPMI [17] can express a 3D path in the 3D space by improving the parameter u, which denotes the distance of the linear path between the neighbour waypoints. This parameter separates the x, y, and z values from the 3D axes. The values and the differential values of each axis can then be obtained. These values provide the variation of curvature and the continuity.
This paper expands the QPMI path-smoothing method [17] and demonstrates how the proposed method can create a smooth path by combining quadratic polynomials sequentially in the 3D space.
Continuous path creation using quadratic polynomials
Smooth path connecting three waypoints using quadratic polynomial
In QPMI [17] the path connecting three waypoints can be expressed using a quadratic polynomial. Equation (1) is the quadratic polynomial for presenting a path on the 2D plane.
The quadratic polynomial connecting the three waypoints (P1:(x1, y1), P2:(x2, y2), and P3:(x 3, y3)) can be obtained using the following method:
Equation (2) is an inverse matrix for obtaining the quadratic polynomial. This is the general quadratic polynomial interpolation for connecting three waypoints, which constructs the shortest G2 continuous path.

(a) Quadratic polynomial graph on the 2D plane. (b) Quadratic polynomial connecting three waypoints in the 3D space.
Figure 1 illustrates the quadratic polynomial graph on the 2D plane (a), and, similarly, in the 3D space (b). The waypoints in the 3D space are expressed by equation (3).
The aim of this paper is to construct and express smooth paths using quadratic polynomials in the 3D space. To apply this concept to the 3D space, a parametric method is used to express the 3D path.
The parametric method provides a convenient description of the path. The parametric path in the 3D space can be expressed as
The parameter u is the linear distance and can be calculated from the linear piecewise path. In the 3D space, there are three waypoints: P1:(x a t y1, z 1), P2:(x2, y2, z2), and P3: (x3, y3, z3). The parameter u can then be obtained as:
From equations (6), (7), and (8), we obtain the following inverse matrix calculations:
These equations express the G2 continuous path in the 3D space using the parametric method. The path has a parabolic curve and the plane of this curve is defined as a triangle made by three waypoints in the 3D space. If variations of each axis are G2 continuous, the combined path has G2 continuity.
Equation (5) can be generalized as:
In addition, equations (9), (10), and (11) can be described as follows:
Equations (13), (14), and (15) are the generalized equations of (9), (10), and (11). Path (4) can be changed as follows:
The mth waypoints require m - 2 polynomials at each axis. In the case of four or more waypoints, the general polynomial interpolation requires an increasing polynomial degree. For four waypoints, two quadratic polynomial paths are available. In this paper, the waypoints are grouped. The first group consists of P1, P2, and P3. The first parametric quadratic polynomials P2: (x2(u), y2(u), z2(u)) can be obtained by using equations (13), (14), and (15). This path is the G2 continuous path connecting P1, P2, and P3. The second group consists of P2, P3, and P4 and the second parametric quadratic polynomials P3: (x3(u), y3(u), z3(u)) are obtained similarly. These two quadratic polynomial groups overlap between P2 and P3. The two paths are then combined using a membership function at the overlapping region.
The membership function applied uses a triangular function to distribute the degree of truth in the fuzzy control theory.

Triangular membership functions. Red dotted line is a variation of P2(u) degree. Blue dashed line is a variation of P3(u) degree.
Figure 2 shows variations of the membership functions in the case of four waypoints. The overlapped section P2 to P3 is expressed by the parameters u2 and u3. The degree of two waypoints varies by parameter u. The red dotted line decreases in the section from u2 to u3. In this section, the degree of P2(u) decreases. The blue dashed line increases in the section from u2 to u3. The degree of P3(u) is increasing in this section. The group of paths is defined as
X(u), Y(u) and Z(u) are described as follows:
μ f (u) is a decreasing function and is depicted by the red dotted line in Figure 2. This function starts at one and decreases to zero. On the other hand, μ r (u) is an increasing function. This function starts at zero and increases to one. The membership functions are as follows.
Since there is no overlap in the first and last sections, the polynomials are not affected by other polynomials and the membership function is not required. Therefore, μ r (u) and μfm−1(u). are both one. The general functions 1 can be described as:
The polynomial is obtained by finding the quadratic polynomial's solution using the 3×3 inverse matrix, which has a unique and simple solution without high-order polynomials and trigonometric functions. On the other hand, the quadratic polynomials have the cubic polynomial form at the overlapped sections using the membership functions.
Path continuity is determined by differential values. If the first-order differential values connect each waypoint, the path is the G1 continuous path. If the second-order differential values match at each waypoint, the path is the G2 continuous path. The first-order differential values of X (u), Y(u), and Z(u) can be obtained as:
The second-order differential values are described as:
On the x axis, the xn (u) is the quadratic polynomial connecting the (n−1) th , nth, and (n + 1) th waypoints. This polynomial has maximum degree at the nth waypoint. At the nth waypoint, xn (u) exists and the differential values of xn (u) are only affected at the nth waypoint. Therefore, the first-order and second-order differential values at the nth waypoint are decided by xn (u). This means the path is the G 2 continuous path. The yn(u) and zn (u) can be described as the case of xn (u). These values are as follows:
Equations (32), (33), and (34) show the first-order and second-order differential values at the nth waypoint.
The curvature is related to the differential values. The curvature of the parametric quadratic polynomial can be described by equation (35) using equations (26) to (31).
Equation (35) consists of the differential values and is a function of u. The continuity of curvature is an important part in constructing the smooth path. The G2 continuous path is called the curvature continuous path. The continuous curvature is necessary to verify G2 continuity. If the curvature graph is continuous, this path is the G2 continuous path.
Movement of aerial robot in the 3D-space
This simulation assumes that the aerial robot requires a smooth 3D path. Table 1 shows ten waypoints. The proposed method is applied to construct the smooth 3D path from the waypoints and the continuity of the planned 3D path is then verified. In addition, variations of each axis and curvature are obtained.
Waypoints for simulation
Waypoints for simulation
This path starts at the origin. The aerial robot flies around an area with variable elevation and returns to the origin. To apply the proposed method, the parameter u was obtained using equation (12).
Parameter u for simulation
The general linear path is shown in Figure 3. In this simulation, we change this linear piecewise path to the G 2 continuous path.

Linear piecewise path of aerial robot
The first step requires finding variations of x, y, and z using equations (23), (24), and (25). These variations are shown in Figure 4.

(a) Variation of the x axis. (b) Variation of the y axis. (c) Variation of elevation in the z axis
Figure 5 shows the path on the 2D plane using the variations of x and y. The variation of z is in accordance with the altitude of the aerial robot.

Aerial robotm's movement on the 2D plane
The 3D path is formed by expressing the path as shown in Figure 5 along with the altitude in the 3D space. Figure 6 displays the 3D path using the proposed method.
Figure 6 has a continuous form, but determining whether it is a G2 continuous path requires checking the continuity of the path.

3D smooth path using the proposed method
Continuity can be determined by the first-order and second-order differential values. The graph of the first-order differential values is shown in Figure 7 and the graph of second-order differential values is shown in Figure 8.

Graphs of the first-order differential values: (a) is the x, (b) is the y and (c) is the z axis
Figures 7 and 8 show continuous graphs in all the axes Since there are no disjointed sections visible in the graphs, the path has G2 continuity
These values can create the curvature by using equation (35). The graph of curvature is shown in Figure 9.
The G2 continuous path has continuous curvature The planned path in Figure 9 also has continuous curvature The section in which the curvature changes in Figure 9 matches the variation shown in Figure 6 Therefore the planned 3D smooth path is the G2 continuous path.
The simulation showed that the proposed method constructs the 3D G2 continuous path from the waypoints The continuity is verified by checking the differential values.

Second-order differential values of the smoothed path: (a) is the x, (b) is the y, and (c) is the z axis

Graph of curvature
The proposed method does not use trigonometric and high-order functions.
Many studies have focused on finding collision-free paths and solving mazes on the 2D plane. However, in real environments, movements are required to be stable. In order to achieve stable movement, paths should be continuous.
For aerial robots and aerial vehicles, the movement must follow a smooth path in the 3D space. They must maintain velocity and cannot change direction rapidly. General waypoint-planning methods form paths only using waypoints without considering the continuity of the path. If aerial robots and aerial vehicles follow a planned continuous path, the flight can be made more stable through optimal movements using the shortest path.
This paper has proposed a method for constructing the 3D smooth path from waypoints in a 3D space. The path must visit every waypoint and have G2 continuity. The 3D smooth path is obtained without using complex calculations such as trigonometric functions or using high-order polynomial functions.
The proposed method expands the QPMI path-smoothing method and uses quadratic polynomial interpolation to create the unique, shortest, G2 continuous path about three waypoints. This paper takes these advantages of quadratic polynomial interpolation for constructing the 3D smooth path. The proposed method has two steps. The first step is to make waypoint groups that consist in three waypoints. Each group has its own path obtained from the parametric quadratic polynomial interpolation. The 3D path is expressed using a parametric method and is the G2 continuous path about each waypoint group having the unique, shortest path. The second step is to combine the planned waypoint group's paths. The membership function uses the parameter u and distributes the degree of each waypoint group's path. Each path is merged into one path to maintain continuity. The planned path is shown to be the G2 continuous 3D path.
The proposed 3D path-smoothing method uses only quadratic polynomials and features a relatively simple computation. It produces a unique, shortest, G2 continuous path that visits all the waypoints. The curvature of the path is verifiable. This method can also be combined with a waypoint planner or a path-searching method to construct a 3D smooth path. In addition, this method does not require storage for saving path data. These advantages enable the development of a simple system.
Acknowledgements
This research was supported by the Inha University.
