Practical Approach for Developing Lateral Motion Control of Autonomous Lane Change System

In this paper, we present a practical approach to address the vehicle lateral control problem. The proposed method can overcome practical problems associated with vehicle lane changes on highways. The vehicle state with respect to the road, which is called lateral offset, jumps in camera vision sensors when the vehicle changes lanes. Thus, in this study, we solve the state jump problem by translating it into a new domain called the cylinder domain. In addition, we proposed the design of a parameter-varying controller to overcome the nonlinear term of vehicle dynamics by considering it as a varying parameter. The proposed method does not consider the lateral offset jump when changing lanes. Furthermore, its significant advantage in terms of computation time makes it suitable for implementation in low-cost electronic control units (ECUs). The proposed algorithm is validated using MATLAB/Simulink with the vehicle dynamics analysis program CarSim.


Introduction
In recent decades, extensive research and development of autonomous driver assistance systems or autonomous driving have been conducted to improve driver convenience and to reduce the risk of accidents. This type of vehicle control technology is divided into longitudinal and lateral control methods. For longitudinal applications of vehicles, many applications are already available in the market, such as adaptive cruise control. For lateral control applications of vehicle, some assistance systems were recently introduced in the market, such as lane departure warning systems and blind spot detection. Now, the market is expanding to autonomous lane change systems (ALCS). As the lateral application extends from aids to control, the lateral controller becomes more important because it is directly related to the riding comfort of the driver and stability of the vehicle.
We can classify the lateral control methods for the autonomous vehicle into two types; path planning and following, and lane following. The path planning and following method is used only when the target point is presented, such as the DARPA challenge [1]. In this method, the autonomous vehicle generates the reference using the way points and by following the reference autonomously. Thus, it is mainly used for military applications in rough environments such as deserts and mountains. To change lanes on public roads or highways using this method, a precise map that includes way points is required [2][3][4][5][6].
In the lane following method, a vehicle obtains the lane information from the discrete magnetic markers embedded in the roadway, as presented some studies [7][8][9]. However, with the development of technology in recent years, the lane information is obtained using vision sensors, such as cameras or high-precision light detection and ranging (LIDAR). When the lane following method is used, the autonomous vehicle tracks the detected lane [10][11][12][13][14][15]. Generally, the state with respect to the road is obtained via various parameters, such as lateral offset and heading errors, and a control objective for the lane keeping system (LKS) is maintaining this error at zero [16].
Meanwhile, for lane change, the autonomous vehicle tracks the desired lateral offset that increases or decreases the lateral offset error from the original lane, while the front camera obtains the original lane information. In this situation, the vehicle crosses over between the original and target lanes for lane change, and the camera vision sensor starts obtaining the target lane information instead of that of the original lane. Consequently, an inevitable jumped lane information is obtained as shown in Figure 1. This discrete change in lane information, i.e., the state jump, may deteriorate the lateral control performance. Moreover, the ALCS can cause serious accidents because of sudden changes in the control input. Thus, these discrete changes in the lane information should be considered while implementing the ALCS.
To overcome the state jump problem, adding and subtracting the lane width might be a solution at the moment the vehicle changes the lane. However, it is dangerous if the detection time of the camera vision sensor and the calculation time of the system are different when the vehicle is controlled for the lane change because of the unmatched state information, as shown in Figure 1. This figure shows that a sudden control input is generated becuase of the unmatched state information with respect to time in our real-vehicle experiment. The reason is that the camera vision sensor usually has a hysteresis to reduce the detection error when driving near the lane. Therefore, it is difficult to detect a state jump and provide the control system with synchronized lane change information. In this study, we proposed a linear parameter varying (LPV) lateral motion controller using the cylinder domain to overcome the state jump problem.
First, the lateral motion of vehicle dynamics in a plane is reformulated in the cylinder domain. Gluing the edges of the plane road creates the cylindrical domain. Further, the state jump does not occur due to a lane change in this cylinder domain means that the vehicle come back to the original position by maintaining its continuous state.
Second, to solve the nonlinear term caused by domain gluing, the procedure of the LPV design method is proposed. The lateral movement of the vehicle in the new cylinder domain is nonlinear; however, the proposed method allows the designing of linear controllers without considering complicated nonlinear controllers. By considering the nonlinear bounded varying term as a system parameter using the trigonometric function constraint, the overall control design procedure changes into linear parameter dependent gain-scheduling problem.
To the best of our knowledge, the proposed method is the first algorithm in literature to avoid state jump during lane changes as applicable to the automotive industry. The contributions of this study can be summarized as follows: • A new lateral motion model for a lane change system is introduced in the cylinder domain. In addition, the overall lateral motion controller design procedure for autonomous lane change system is presented in the cylinder domain. • State jump in lateral offset does not appear in the proposed cylinder domain due to its gluing characteristics. Consequently, the proposed method does not need to consider the lane crossing time when developing a lane change controller. Using simple sine and cosine references, the vehicle can complete the lane change process effectively. • The LPV controller makes it possible to control the vehicle using simple linear controller, and has a significant advantage in the computation time for low-cost electronic control unit (ECU). It is validated with the MATLAB/Simulink including the vehicle dynamics analysis program CarSim.
Using the sub-optimal gain calculated from both pre-calculated optimal gain and interpolation from updated varying parameter, the proposed method exhibits reasonable performance in lane change. We introduce the generally used vehicle model in terms of lateral position and heading errors with respect to the road for lateral control to regulate both lateral position and heading errors. This implies that the vehicle is maintained at the road center. Further, we derive the new vehicle motion model for lateral control systems by considering the jumped state of the lateral offset in a lane-change situation. The new model presents the plane motion of the vehicle in the cylinder domain.

Lateral Motion Model in Plane Domain
In this study, a generalized lateral dynamic motion model of a vehicle is considered. The lateral dynamics of the bicycle model as shown in Figure 2 are described by summing the forces F y and moment M z at the center of gravity of the vehicle: (1) For small slip angles, the lateral tire force F y can be approximated as a linear function of the tire slip angle (α f , α r ) [16,17]. The tire slip angle is defined as the angle between the orientation of the tire and that of the velocity vector of the wheel θ V : where C α denotes tire cornering stiffness. Using small angle approximations for both θ V f and θ V r , we obtain with For the LKS, we define the following two state variables: • e y is the lateral offset error at the center of gravity of the vehicle from the lane center. • e ψ denotes the heading error of the vehicle with respect to the desired road.
Then, the dynamic model for the lateral control system can be described as follows in terms of state vector x = e yėy e ψėψ T , control input u = δ, and external signal ϕ = ψ des T [12,16,18]: where, Equation (5) represents the lateral motion of the vehicle with respect to the road in the plane domain. e y , e ψ , andė ψ can be obtained using the camera sensor [11]. To describe the vehicle motion model in the cylinder domain, let us now define the new states ξ i using e yėy e ψėψ as follows: where L w denotes the road lane width which is obtained using a vision sensor and generally considered as a constant value. Now, the 2D motion of the vehicle changes in 3D motion by satisfying the following constraint: In other words, the vehicle travels along the surface of the cylinder whose cross section is in the shape of a unit circle. Further, we can obtain the dynamics of ξ 1 and ξ 2 with constant velocity from (5) and (6) as:ξ Furthermore, the overall vehicle dynamics of lateral motion with respect to the road is represented in terms of state vector ξ 1 ξ 2 ξ 3 ξ 4 ξ 5 T , control input u and external signal ϕ as follows: For the LKS, the vehicle should maintain its driving lane while satisfying the lateral offset e y = 0. Therefore, in the proposed cylinder domain, the desired values of ξ 1 and ξ 2 for LKS are 0 and 1, respectively.
In (9), both vehicle states ξ 1 and ξ 2 are available because x 1 is measured using the vision sensor. In addition, x 3 is also obtained using the vision sensor and x 4 from the in-vehicle sensor.
The gluing function ρ(x) and its inverse, which transform system (5) into (9), are described as follows: Using Equation (10), one can obtain the original state x i of lateral dynamics.
where RLC and LLC denote right and left lane changes, respectively. The desired lane change time t lc is a user-defined parameter for the lane change system. In the simulation section, we can see the example of reference trajectories.

Controller Design in Cylinder Domain
In this section, we describe the development of the LPV controller in the cylinder domain. We propose a linear controller that can effectively reflect the geometrical aspects of the newly presented cylinder domain. Thus, the lateral motion model in the cylinder domain is linearized; however, it is designed to reflect the nonlinearity as much as possible. To achieve the above objectives, two proposed methods (parameterization of nonlinearly changing variables and definition of auxiliary variable for linearization) are described in this session.

Development of LPV System
We can change the nonlinear dynamics into linear dynamics by considering the nonlinear bounded terms in the model as matrix coefficients. The ξ 1 and ξ 2 states in (10) are nonlinear for the original state x 1 . Therefore, we define these two variables as the varying parameter as where x 1 and L w are available from the vision sensor. Now, the first two equations in (9) can be represented as follows:ξ Note that the lateral offset error x 1 is unbounded, and the lane width L w is not zero on a highway. Nevertheless, the varying parameters are bounded because of the trigonometric function.
Now, we introduce a small auxiliary variable for the non-linearized term between ξ 1,2 and ξ 3 . In practice, ξ 1 and ξ 2 are approximately accurate because their values are calculated by the measured signal from lateral offset and width of lane. However, ξ 3 contains uncertainty because it is obtained from an estimator or numerical derivation of the lateral offset. Therefore, we introduce auxiliary variables σ to ξ 3 rather than ξ 1 and ξ 2 . Let us define an auxiliary variable σ that reflects the nonlinearized term between ξ 1,2 and ξ 3 as follows: Further, the linearized Equation (14) can be reformulated as follows using Equation (15): The same can be applied forξ 2 . Therefore, the nonlinear dynamics (9) with the cylinder domain can be interpreted as a form of the LPV system with variation of lateral offset and lane width. Both parameterizing the nonlinear bounded varying parameter (12) and defining the auxiliary variable (15), result in the following LPV system: where By introducing auxiliary variable we can obtain both a reflection of the non-linearized term and controllability of the given system.

Interpolation Based Gain-Scheduling
Now, we choose the following vertex V among the several candidates by considering a bound of the time-varying parameter: Then, the varying parameter vector, θ ∈ R 2 is rewritten in the following polytopic form where Note that the convex interpolation parameter vector ξ(θ) is uniquely determined by the given time-varying parameter vector θ if the vertex V is invertible in (19). However, the given vertex in (18) is not invertible and one cannot determine the interpolation parameter vector. Therefore, we introduce the internal division constraints to make the given vertex invertible. The defined varying parameters satisfy the trigonometric constraints; thus, the parameters always exist on the surface of the cylinder as follows: Furthermore, the ranges of the vertices are equal in a 2D space. Considering the same range of varying parameter and ∑ 4 i=1 η i (θ) = 1 lead to the following equation: In addition, θ 1 is the internal division of θ 1 and θ 1 by η 1 and η 3 . Thus, the varying parameter can be represented as follows: We can also obtain the equation of θ 2 as θ 2 = η 2 2θ 2 + η 4 2θ 2 .
As a result, constraints (21) and (22) give the following expanded vertices matrixV and the expanded parameter vectorΘ can be defined as follows: where M ∈ R 2×4 is the expanded matrix forV, and s ∈ R 2 is the expanded vector forΘ. Now, the vertex in (23) is invertible and the convex interpolation parameter is uniquely determined as Using the convex interpolation parameters, η i (θ), one can represent the system matrix as the following parameter-dependent matrix A ξ (θ): where A Here,Â (j) ξ are the real fixed nodal matrices associated with θ(x 1 , L w ) = θ 1 θ 2 T . Now, a gain-scheduled optimal control gain K(θ) will be considered using convex interpolation. As the control problem for vehicle lateral motion is reformulated for the LPV systems, we can design a linear controller. In this study, the process of LPV controller design is proposed in the cylinder domain, so the validity is verified through the basic linear quadratic (LQ) controller for reference tracking.
We can pre-calculate the optimal gain K (i) for each vertex A (i) from the well-known Riccati equation. As we mentioned before, once the varying parameter is updated, the convex interpolation parameter is uniquely determined as η(θ) =V −1Θ using the Equation (23). From the measured varying parameters, we can calculate and update the sub-obtimal gain for the lateral motion controller as follows [19,20]: Note that the gain is not optimal but sub-optimal because the proposed method uses simple interpolation from each vertex. Nevertheless, the proposed method exhibits reasonable performance with a small amount of computation, which can be confirmed by the simulation results in the next section.

Simulation Results
The proposed algorithm is designed and validated via MATLAB/Simulink. A C-class hatchback model in CarSim from Mechanical Simulation is also used to solve the vehicle dynamics. From the vision sensor in the CarSim, one can obtain the state of vehicle such as lateral offset and heading offset with respect to the road. The overall simulation-in-the-loop architecture of the proposed ALCS is shown in Figure 4.
Two lane change scenarios are considered in this study for the validation:  One of the basic methods of changing lanes is by setting a reference using sine and cosine components, as presented in this study. However, the reference that appears when a human driver changes lanes does not perfectly follow sine and cosine [21]. Therefore, the second scenario is conducted to verify the proposed algorithm under a non-sinusoidal reference trajectory.
In both cases, the vehicle travels a straight lane at 60 km/h. The nominal parameters of a C-class hatchback in CarSim are used for the proposed ALCS.

Scenario 1: Sine and Cosine Based Trajectory
In scenario 1, the vehicle started changing lanes at 5 s to the right during 5 s. Figure 5a shows the reference trajectory and measured state in cylinder domain. One can observe that to change the lane to the right, the reference trajectories of ξ 1 and ξ 2 are designed using sin(2πt/5) and cos(2πt/5). The derivative of the reference is not continuous at 5 s and 10 s; thus, it can be seen that the output value of the controller is instantaneously large in Figure 5c. Therefore, it can be seen in Figure 5a  We can see the lateral offset in local coordinate jumps when the vehicle cross the lane at about 7.5 s. The designed trajectories can be plotted in local coordinates using the inverse of the gluing function in (10), as plotted with the red dashed line. However, both reference trajectory and measured state do not have jump state in the cylinder domain. In other words, even if the reference trajectory is generated in the cylinder domain and the control method is applied, the movement of the vehicle is the same as that on the plane.
The convex interpolation parameters for the LPV controller are shown in Figure 5c. As the nonlinear varying parameter θ changes, the corresponding interpolation parameters change in a similar manner as the sine and cosine forms.

Scenario 2: Human Driver-Based Trajectory
As discussed earlier, the steering angle obtained when a human driver changes lanes does not follow the sine and cosine trend perfectly. Therefore, in scenario 2, we performed a simulation to determine if the proposed controller exhibits reasonable performance even with this nonsinusoidal reference trajectory. In scenario 2, after 3 s the vehicle started changing lanes for about 3 s. To generate a human driver-based reference for the second scenario, we make a several lane changes using the driver model, which is already implemented in the CarSim. During several lane changes using the human driver model, we logged both ξ 1 and ξ 2 . Further, we used the logged signals ξ 1 and ξ 2 as reference inputs for the proposed ALCS. Figure 6a shows the reference trajectory and measured state in the cylinder domain. As shown in Figure 6a, the given reference trajectories of ξ 1 and ξ 2 are similar but not exactly matched to the sine function. However, unlike scenario 1, the derivative of the reference is continuous; thus the control input changes smoothly during lane change, as shown in Figure 6c In addition, the other states in the cylinder domain, (ξ 3 , ξ 4 and ξ 5 ), which are affected by the control input, have similar patterns. Furthermore, it can be seen that a constant value is not maintained in each state. We can infer that the change in the yawrate, which affects the ride quality, is smooth and not abrupt when a human driver changes lanes, as shown in Figure 6a. It is observed that when the lane change begins, the slope of the control input value is smaller than the slope of the moment when crossing the lane, as shown in Figure 6c.  To change lanes to the left, the desired lateral position of the vehicle is set to 3.4 m, as shown by the green line in Figure 6b. Furthermore, using the inverse gluing function in (10), the human characteristics-based trajectories ξ 1 and ξ 2 are merged with the reference trajectory, as shown by the red dashed line in Figure 5b. It is observed that when the vehicle crosses the boundary between the original and target lanes at about 5 s, the position of the vehicle in the cylinder domain is (ξ 1 , ξ 2 ) = (0, −1).
The controller uses sub-obtimal gain, which is obtained by interpolation of the optimized gain for each vertex, as shown in Figure 5c; however, the proposed method provides a reasonable performance. In addition to the significant advantages in terms of computation time, the control performance is remarkable despite the simple linear controller. We expect the proposed method to be suitable for low-cost electronic control units, which cannot handle heavy computations. Furthermore, if necessary, advanced lane change controllers can be applied to improve the control performance, such as model predictive control.

Conclusions
In this study, a practical approach for the lane change system of autonomous vehicles is proposed; to the best of our knowledge, this is the first work of its kind in literature. Our cylinder domain approach, which glued the edges of the plane road, change the discrete state to continuous state without jumps. In addition, the proposed cylinder domain makes it possible for the autonomous vehicles to change lanes without considering the lane crossing time. In contrast to the method of integrating the lateral jerk of vehicle to generate the lane change path, the simple sine reference makes it possible to change lanes in the proposed method.
Furthermore, we presented the overall lateral motion controller design procedure for the ALCS. In this study, the LPV method is based on the basic LQ controller for the introduction of the controller design procedure in the cylinder domain; further, it provides reasonable lane change performance. We believe that the proposed method is suitable for low-cost electronic control units because it provides significant performance even with simple calculations using linear convex interpolation. Our future goals include developing advanced controllers in the cylinder domain, such as a model predictive controller and sliding mode controller for ALCS, to improve the tracking performance. Autonomous lane change with varying speed in the cylinder domain is also included in future work.