Abstract
This paper proposes autonomous parallel parking for a front-wheel steering vehicle, with highlights on a trajectory planning method and on a trajectory tracking control method. The trajectory planning problem is decoupled into the path planning problem and the longitudinal velocity planning problem to reduce the difficulty of the trajectory planning problem. First, a collision-free path by combining circle arcs with straight line is created to park the vehicle in one or more maneuvers on the premise of meeting the kinematic constraint of vehicle, and then the path is transformed into a continuous-curvature path using B-spline curve. Second, the longitudinal velocity is created using B-spline curve on the premise of meeting the performance constraints of driving and braking system. To execute the generated trajectory, a non-time reference path tracking sliding mode control strategy is deduced by Lyapunov stability theory, and a longitudinal velocity tracking proportional–integral control strategy is proposed based on smooth handoff method. Finally, the parking performance is verified based on model-in-the-loop simulation system.
Introduction
Nowadays, the autonomous driving has become an increasingly significant theme for automotive industry.1–3 The autonomous parking, which is a solution to solve the problem of “parking difficulty” for the inexperienced or unskilled drivers, is considered as a special topic in the autonomous driving. One major challenge of developing the autonomous parking comes from the fact that it has low computation cost and meets non-holonomic constraints of the vehicle. 4 For the challenge, numerous experts and scholars have been committed to research works of this topic and many different methods have been utilized.
These methods can be divided into two types: methods based on artificial intelligence technology and methods based on planning–tracking framework. Moran and Nagai 5 proposed a novel design method to achieve automatic parallel parking of vehicle using fuzzy-neural network with the vehicle pose and the steering wheel angle for input and output, respectively. Zhao and Collins 6 deduced a robust adaptive algorithm for automatic parallel parking in tight space by combining fuzzy logic system with genetic algorithm, which can tune the parameters of the fuzzy logic system adaptively. Ryu et al. 7 regarded the vehicle pose and the steering angle as input and output of fuzzy logic system, and presented a parallel parking algorithm based on the fuzzy logic system. Lee et al. 8 designed and implemented a novel intelligent control strategy for autonomous vehicle parking by integrating genetic algorithm, Petri net and fuzzy logic system. Demirli and Khoshnejad 9 adopted the sampling points on the fifth-order polynomial reference paths as training data, and then the fuzzy inference-based adaptive network system was trained to imitate the parallel parking operation of skilled drivers. Zheng et al. 10 proposed a new idle ant effect-based algorithm to tune the parameters of the proposed parallel parking fuzzy controller for improving the stability and response speed of the system. Wang and Zhu 11 proposed a hybrid fuzzy autonomous parking system by combining a supervisory fuzzy controller with a base fuzzy controller. The supervisory fuzzy was used to plan an executable parking trajectory, and the base fuzzy controller was designed to track the trajectory by controlling the steering wheel angle and vehicle speed. Liu et al. 12 adopted a deep neural network with the speed and the target pose of vehicle for the input and the vehicle control instructions for the output to establish the nonlinear relationship between the planned parking trajectories and the vehicle control instructions to achieve autonomous parallel parking. Xu et al. 13 presented an automatic parking control strategy by combining sliding mode control method with fuzzy logical control method to expand the initial feasible region. The sliding mode control method was used to guide the vehicle from the initial pose to the intermediate pose, and the fuzzy logical control method was used to drive the vehicle from the intermediate pose to the target pose. These methods based on artificial intelligence technology can effectively solve the problem of “parking difficulty” in the fixed scenes, and usually rely on a larger number of experimental data and expert knowledge to adapt to the changes of parking environment and parking space. However, the acquisition of experimental data and expert knowledge usually requires a large amount of experimental resources and human costs.
Compared with the methods based on artificial intelligence technology, the methods based on planning–tracking framework depend on a fewer number of experimental data and expert knowledge to adapt to the changes of parking environment and parking space. Xu et al. 14 divided the parallel parking environment into the lightly constrained zone and the highly constrained zone, and correspondingly divided the vehicle state into the initial state, the intermediate state and the target state. The path between the initial state and the intermediate state was planned based on realized by combination of circle arcs and straight line, while the path between the intermediate state and the target state is realized by quintic polynomial curves. Zhdanov et al. 15 planned a single-step parallel parking path by combination of circle arcs and straight line, but it is difficult to track the planned path smoothly because of the discontinuous curvature of the planned path. Kim et al. 16 planned a cluster of parking paths using traditional back propagation algorithm, and the cost of each path was calculated in terms of safety and the traveled distance. Finally, the path with the lowest cost was selected as the reference parking path. Zhao et al. 17 planned the collision-free smooth trajectory based on Bezier curve for the autonomous parking system on the premise of meeting the kinematic constraints of the vehicle, and designed a fuzzy proportional–integral–derivative (PID) controller to track the planned trajectory. Chand et al. 18 proposed a new automatic parallel parking maneuver for intelligent vehicles based on the sigmoidal Gompertz curve with four tunable parameters, which were determined by using an optimization scheme. Vorobieva et al. 19 presented a continuous-curvature path-planning method based on circle arcs and clothoid curves, and then the desired steering wheel angle and vehicle speed were calculated to execute the planned path. Jang et al. 20 considered the trajectory planning problem as the constrained optimization problem comprised of vehicle dynamics model and the constraint of the drivable region, and then interior point method was used to solve the optimization problem to generate the feasible parallel parking trajectory. Zips et al. 21 proposed a fast optimization-based path planner for vehicle parking in narrow environments, and the proposed approach could adapt to different parking scenarios by adjusting the weight terms of the cost function of the optimization problem. Chai et al. 22 presented a multilayer optimization strategy for generating the optimal trajectory of autonomous parallel parking system, and the optimization problem was solved by improved particle swarm optimization algorithm and gradient-based algorithm. Yang et al. 23 presented a smooth path-planning algorithm for autonomous parking system by connecting circle arcs, straight line and linearly steering spiral, and then a closed-loop controller was designed to guide the vehicle to follow the planned path. These methods based on planning–tracking framework have the characteristic of global optimization, and can safely drive the vehicle into the target parking space on the premise of meeting the kinematic and dynamic constraints of the vehicle and parking performance indicators.
In this paper, a novel trajectory planning and tracking control method for autonomous parallel parking of a front-wheel steering vehicle is presented. For the sake of reducing the difficulty of the trajectory planning problem, it is decoupled into the path planning problem and the longitudinal velocity planning problem by choosing the arc length of the trajectory as the path velocity correlation term. That is, the planning problem in three-dimensional space is simplified to two planning problems in two-dimensional space. Considering the kinematic constraint of vehicle, a collision-free path by combining circle arcs with straight line is created to park the vehicle in one or more maneuvers if the parking space is very narrow, and then the path is transformed into a continuous-curvature path using B-spline curve. Moreover, the longitudinal velocity is created using B-spline curve on the premise of meeting the performance constraints of the driving and braking system. To execute the generated trajectory, a non-time reference path tracking sliding mode control strategy is deduced by Lyapunov stability theory, and a longitudinal velocity tracking PI control strategy is proposed based on smooth handoff method. Finally, the parking performance is verified based on model-in-the-loop simulation system.
The rest of this paper is structured as follows. Section “Trajectory planning” gives the collision-free smooth trajectory for guiding the vehicle to enter the parking space in one or more maneuvers based on the combination of circle arcs, straight line, and B-spline curves. Section “Trajectory tracking control” deduces and analyses the non-time reference path tracking sliding mode control strategy and the longitudinal velocity tracking PI control strategy. Section “Simulation results” validates the parking performance, and section “Conclusion” gives the main conclusion of our work.
Trajectory planning
Trajectory planning is to design a collision-free and practical trajectory, which could guide the vehicle to the parking space safely, accurately and quickly. In this section, the trajectory planning problem for autonomous parallel parking of a front-wheel steering vehicle is decoupled into the path planning problem and the longitudinal velocity planning problem by choosing the arc length of the trajectory as the path velocity correlation term. Specifically, a collision-free path by combining circle arcs with straight line is created to park the vehicle in one or more maneuvers on the premise of meeting the kinematic constraint of vehicle, and then the path is transformed into a continuous-curvature path based on B-spline curve. Moreover, the longitudinal velocity is created based on B-spline curve on the premise of meeting the performance constraints of driving and braking system.
One-maneuver path planning
The vehicle is running at low speed when parking, so it is assumed to move with the four wheels rolling without slipping around the same instantaneous center. As shown in Figure 1, we take the left front corner of the parking space as the origin of the global coordinate system
where

Minimal length and width of the parking space for parking in one maneuver.
Similarly, the minimum width of the parking space for parking in one maneuver is deduced by making the right rear corner of the vehicle have no collision with the lateral obstacle when the vehicle rotates with the minimum radius
Supposing that the length and width of the parking space is larger than the minimum length and width of the parking space for parking in one maneuver, the task of one-maneuver path planning is to generate a collision-free path based on the combination of circle arcs and straight line under the conditions that the coordinate of the starting point
1. According to the coordinate of the starting point
2. According to the coordinate of the target point
3. The angle of circle arc
4. The coordinate of the point
5. The maximum distance from the x-axis of the coordinate system
where

Path for parking in one maneuver.
According to equation (3), the angle of circle arc
Multiple maneuvers path planning
When the length of the parking space is smaller than the minimum length of the parking space for parking in one maneuver, the vehicle first moves backward along one maneuver path until approaching the rear obstacle, and then moves forward with the maximum steering wheel angle to parallel to the parking space and approach the front obstacle. Subsequently, a series of forward and backward moves is designed to make the vehicle enter into the parking space, as shown in Figures 3–6.

Forward move with sufficient longitudinal distance available.

Forward move with sufficient lateral distance available.

Backward move with sufficient lateral distance available.

Backward move with sufficient longitudinal distance available.
Forward move
Supposing that the available longitudinal distance
where
The y coordinate of the point
According to equation (6), we can obtain
According to equation (7), when the radius
Considering the constraint of the available longitudinal distance
where
According to the circle arc
According to equations (11) and (12), we can obtain
Equation (13) shows that the lateral displacement of the vehicle increases with the angle of the circle arc
Supposing that the available lateral distance
According to equation (14), the angle of the circle arc
Similarly, the lateral displacement of the vehicle is given by
According to equations (14) and (16), we can obtain
Equation (17) shows that the lateral displacement of the vehicle increases with the angle of the circle arc
The above process of designing the forward move of the vehicle is based on the assumptions that the available longitudinal distance of the parking space is sufficient and the available lateral distance of the parking space is sufficient, and the establishing conditions of the assumptions are given by
Backward move
Supposing that the available lateral distance
According to equation (18), the angle of the circle arc
Similarly, the lateral displacement of the vehicle is given by
According to equations (18) and (20), we can obtain
Equation (21) shows that the lateral displacement of the vehicle increases with the angle of the circle arc
Supposing that the available longitudinal distance
According to equation (22), the angle of the circle arc
After the backward move, the vehicle successfully enters into the parking space.
The above process of designing the backward move of the vehicle is based on the assumptions that the available longitudinal distance of the parking space is sufficient and the available lateral distance of the parking space is sufficient, and the establishing conditions of the assumptions are given by
Continuous-curvature path for the parking maneuver
The curvature of the parking path by combination of circle arcs and straight line is discontinuous at the junction of circle arc and straight line, and the vehicle has to stop to reorient the steering wheel angle. The steering at the stop induces the non-uniform wear of the tires and increases the workload of the steering motor. Therefore, we adopts B-spline curve to smooth the parking path composed of circle arcs and straight line.
As shown in Figure 7, the curvature of the circle arc

The principle of the parking path smoothed by B-spline curve.
According to equations (24) and (25), we can obtain the length of the line segment
According to the definition of B-spline curve,
24
the transition curve based on B-spline curve can be expressed as
According to the vehicle kinematic model, we can obtain the relationship between the curvature of the transition curve and the front-wheel equivalent steering angle
Substituting equation (27) into equation (28) yields
According to chain rule, we can obtain the front-wheel equivalent steering speed
where
Substituting the derivative of equation (29) with respect to the parameter
It is evident from equation (31) that the front-wheel equivalent steering speed is not only related to the parking path, but also related to the vehicle longitudinal velocity. To decouple the parking trajectory planning problem into a path-planning problem and a longitudinal velocity planning problem, equation (31) is rewritten as
where
According to equations (27) and (32), it can be seen that the continuity of the parking path curvature requires that B-spline curve is
The control points of B-spline curve shown in Figure 8, which are symmetrically distributed on two equal sides of an isosceles triangle, are given by
where

Schematic diagram of B-spline curve of degree five.
As shown in Figure 8, the B-spline curve determined by equations (33)–(35) is symmetrical and has the largest curvature at the middle point
The interior point method 25 is used to solve the nonlinear optimization problem (36) in off-line mode to reduce the computational time, and the first half of the fixed B-spline curve is used as the transition curve.
The parking path composed of circle arcs and straight line shown in Figure 2 is corrected based on the above principle of the parking path smoothed by B-spline curve. As shown in Figure 9, the endpoint

One-maneuver parking path smoothed by B-spline curve.
As shown in Figure 9, the vector

One-maneuver smooth parking path corrected to avoid overlapping path.
The specific smoothing process of the parking path is the inverse process of the above analysis process under the condition that the smoothing offset is unknown. Since the smoothing offset is unknown, a known starting point
1. The coordinate of the point
2. According to the planning process of one maneuver parking path in section “One-maneuver path planning” we can obtain the following parameters based on the coordinate of the point 2a. The coordinate of the center point 2b. The coordinate of the center point 2c. The angle of the circle arc
2d. The coordinate of the point 2e. The coordinate of the point
3. The actual smoothing offset is calculated as
4. The coordinate of the point
5. The coordinates of the point
6. The coordinates of the point
7. The first half of the fixed B-spline curve given by solving the nonlinear optimization problem (36) in off-line mode is used to generate the transition curves starting with the point
8. The maximum distance from the x-axis of the coordinate system
where
Longitudinal velocity planning
The task of the vehicle longitudinal velocity planning for autonomous parallel parking is to design a smooth parking velocity curve to make the vehicle start smoothly to move along the planned parking path and to make the vehicle stop smoothly at the end of the planned parking path. Therefore, the parking velocity curve can be divided into acceleration, constant velocity and deceleration segments. In this section, we adopt B-spline curve to design the acceleration and deceleration segments to implement the smooth changes of the parking velocity and acceleration under the constraints of equations (39)–(43). The design process of the acceleration segment is mainly introduced as follows, since the deceleration segment can be easily obtained by flipping the acceleration segment vertically
where
According to the definition of B-spline curve,
24
the parking velocity curve based on B-spline curve can be expressed as
The derivative of equation (44) with respect to time, we can obtain the parking jerk curve as follows
According to the strong convex hull property of B-spline curve,
26
we take the point
where

Parking velocity, acceleration and jerk based on B-spline curve.
According to equation (47), the constraint of equation (41) is satisfied naturally. To satisfy the constraints of equations (39) and (40), the degree of B-spline curve is set to 3 and the multiplicities of the first knot and the last knot are set to 4 to make B-spline curve pass through the first and last control points. Thus, the knot vector of the B-spline curve is given by
As shown in Figure 11, the area surrounded by the line segment
The interior point method is used to solve the nonlinear optimization problem (49) in off-line mode to reduce the computational time, and the fixed B-spline curve is used as the acceleration and deceleration segments of the parking velocity curve.
Trajectory tracking control
Trajectory tracking control is to design a robust decoupling control strategy to make the vehicle execute the generated trajectory by simultaneously controlling the steering system, the driving system and the braking system. In this section, the trajectory tracking control problem for autonomous parallel parking of a front-wheel steering vehicle is decoupled into the path tracking control problem and the longitudinal velocity tracking control problem by choosing the lateral displacement of the parking trajectory as the non-time reference. Specifically, a non-time reference path tracking sliding mode control strategy is developed based on Lyapunov stability theory, and a longitudinal velocity tracking PI control strategy is proposed based on smooth handoff method.
Path tracking control
The kinematic characteristics of the vehicle at low speed can be represented as the coordinate

Kinematic model of the vehicle.
When the vehicle moves backward, the negative of the x coordinate of the reference point is the monotone increasing function with respect to time and is selected as the non-time reference. Then, the non-time reference parking path tracking error is given by
The derivative of equation (51) with respect to the non-time reference yields
Define the sliding surface
where
According to equation (53), we can obtain the following equation when
Therefore, the state trajectory on the sliding surface can asymptotically converge to the equilibrium point of the system. Furthermore, the non-time reference path tracking sliding mode control strategy is developed to make the state trajectory converge to the sliding surface in finite time, and the following theorem is obtained.
Theorem 1
Consider the system (51) where the non-time reference path tracking sliding mode control law is defined in equation (55)
where
Proof
Define a Lyapunov function candidate as
Differentiating
The derivative of equation (53) with respect to time yields
Substituting equation (58) into equation (57) yields
Substituting equation (55) into equation (59) yields
According to the finite time stability theorem,28,29 the state trajectory of the closed-loop system is converged to the sliding surface
where
Furthermore, according to equation (54), the equilibrium point of the closed-loop system is asymptotically stable.
In the aspect of forcing the state trajectory of the closed-loop system to approach the sliding surface, equation (60) shows that the exponential rate reaching item
When the vehicle moves forward, the x coordinate of the reference point is the monotone increasing function with respect to time and is selected as the non-time reference. Similarly, the following non-time reference path tracking sliding mode control law can be deduced based on the sliding surface
Longitudinal velocity tracking control
Since the driving system and the braking system are two opposing single-acting actuators, the proposed longitudinal velocity tracking PI control strategy adopts a PI error metric to complete the smooth switch-over between the driving system and the braking system. 30 Then, the PI error metric based on proportional integral control method is calculated as
where
When the PI error metric is non-negative, the driving system is activated to exert a driving force proportional to the PI error metric on the vehicle; and when it is negative, the braking system is activated to exert a braking force proportional to the negative of the PI error metric on the vehicle
where
Simulation results
The parking performance of the proposed autonomous parallel parking strategy is verified based on model-in-the-loop simulation system, which is constituted of the vehicle dynamics simulation software (MSC CarSim®) and the proposed autonomous parallel parking strategy. MSC CarSim® can deliver the most accurate and efficient methods for simulating the whole vehicle dynamics to make the simulation results coincide with the real-vehicle experimental results. Parallel parking in one or more maneuvers on a flat dry asphalt road is carried out, respectively, and all parameters of the test vehicle are listed in Table 1.
Parameters for the test vehicle.
Parallel parking in one maneuver
The parallel parking in one maneuver is implemented under the conditions that the length and width of the parking space are set to the minimum length and the minimum width of the parking space and the coordinate of the starting point is set to [4, 3]. The simulation results are shown in Figure 13. As shown in Figure 13(i), we can see that the reference parking path can guide the vehicle into the parking space safely. As shown in Figure 13(a), (d), (f) and (h), we can see that the proposed non-time reference path tracking sliding mode control strategy can achieve accurate and stable tracking control of the reference parking path without reorienting the steering wheel angle at the stop of vehicle. As shown in Figure 13(b), (e) and (g), we can see that the designed longitudinal velocity tracking PI control strategy can achieve accurate and stable tracking control of the reference longitudinal velocity by smoothly switching over between the driving system and the braking system. In sum, as shown in Figure 13(j), the proposed trajectory tracking control strategy can make the vehicle execute the planned trajectory without collision by simultaneously controlling the steering system, the driving system and the braking system.

The simulation results of parallel parking in one maneuver: (a) steering wheel angle, (b) throttle level and brake cylinder pressure, (c) the x coordinate of the reference point, (d) the y coordinate of the reference point, (e) vehicle longitudinal velocity, (f) the orientation angle of vehicle changing with respect to the x coordinate of the reference point, (g) vehicle longitudinal velocity changing with respect to the x coordinate of the reference point, (h) the reference parking path and actual parking path, (i) the dynamic envelope of the vehicle moving along the reference parking path and (j) the dynamic envelope of the vehicle moving along the actual parking path.
Parallel parking in multiple maneuvers
The parallel parking in multiple maneuvers is implemented under the conditions that the coordinate of the starting point is set to [4, 3], the width of the parking space is set to the minimum width of the parking space and the length of the parking space is set to 5.173 m, which is smaller than the minimum length of the parking space. The simulation results are shown in Figure 14.

The simulation results of parallel parking in one maneuver: (a) steering wheel angle, (b) throttle level and brake cylinder pressure, (c) the x coordinate of the reference point, (d) the y coordinate of the reference point, (e) vehicle longitudinal velocity, (f) the orientation angle of vehicle changing with respect to the x coordinate of the reference point, (g) vehicle longitudinal velocity changing with respect to the x coordinate of the reference point, (h) the reference parking path and actual parking path, (i) the dynamic envelope of the vehicle moving along the reference parking path and (j) the dynamic envelope of the vehicle moving along the actual parking path.
As shown in Figure 14(i), we can see that the reference parking path can guide the vehicle into the parking space safely. As shown in Figure 14(a), (d), (f) and (h), we can see that the proposed non-time reference path tracking sliding mode control strategy can achieve accurate and stable tracking control of the reference parking path. First, the vehicle moves backward without reorienting the steering wheel angle at the stop of vehicle until approaching the rear obstacle. Then, the vehicle executes 3 times of forward and backward moves to enter the parking space. During forward or backward moves, the steering is done at the stop of vehicle to improve the parking space utilization. After each forward or backward move, the lateral displacement of the vehicle shown in the local enlarged drawing of Figure 14(d) is generated. As shown in Figure 14(b), (e) and (g), we can see that the designed longitudinal velocity tracking PI control strategy can achieve accurate and stable tracking control of the reference longitudinal velocity by smoothly switching over between the driving system and the braking system. In sum, as shown in Figure 14(j), the proposed trajectory tracking control strategy can make the vehicle execute the planned trajectory without collision by simultaneously controlling the steering system, the driving system and the braking system.
Conclusion
This paper has presented a novel trajectory planning method and a novel trajectory tracking control method for autonomous parallel parking of a front-wheel steering vehicle. First, a collision-free path by combining circle arcs with straight line is created to park the vehicle in one or more maneuvers, and then the path is transformed into a continuous-curvature path using B-spline curve. Second, the longitudinal velocity is created using B-spline curve. To execute the generated trajectory, a non-time reference path tracking sliding mode control strategy is deduced by Lyapunov stability theory, and a longitudinal velocity tracking PI control strategy is proposed based on smooth handoff method. Finally, the simulation is implemented to validate the parking performance, and the simulation results show that it can guarantee that the vehicle parks in the narrow parking space safely and accurately.
Footnotes
Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship and/or publication of this article.
Funding
The author(s) received no financial support for the research, authorship and/or publication of this article.
