Planning a Continuous Vehicle Trajectory for an Automated Lane Change Maneuver by Nonlinear Programming considering Car-Following Rule and Curved Roads

*is study proposes a trajectory planning method for an automated lane change maneuver. We consider that the spatiotemporal trajectory of a controlled vehicle can be represented by a polynomial function and estimate the parameters of the polynomial function through nonlinear programming that does not rely on the assumed time horizon of lane change and the assumed final state of the controlled vehicle. When the controlled vehicle achieves its target lane, the state of this vehicle should be constrained by both the position and the speed of the forward vehicle. We integrate a car-following model into the nonlinear programming to constrain the state of the controlled vehicle at the end of the lane change. Notably, the interaction factors are taken into consideration: the motion of the vehicle that follows the controlled vehicle in the target lane can be influenced by the trajectory planning results of the controlled vehicle.*e proposed trajectory planningmethod can simultaneously estimate themotion of the following vehicle and plan the trajectory for the controlled vehicle. Our proposed model can also work for curved road sections. We represent the curve information in the nonlinear programming by a regression model. We solve the nonlinear programming through the sequential quadratic program (SQP) algorithm and design a method to specify an initial guess for the algorithm.*is paper finally demonstrates the effect of the proposed trajectory planning method under different scenarios.


Introduction
A lane change maneuver is one of the complex driving maneuvers. is maneuver is constrained by the states of the surrounding vehicles and involves both longitudinal and lateral motions. To automatically drive a controlled vehicle from its current lane to a target lane, advanced driver assistance systems (ADAS) need to employ an algorithm to plan a trajectory for the lane change maneuver that will allow the vehicle to track its trajectory and complete the maneuver [1]. A vehicle trajectory should contain both spatial and temporal information about the future motion of the controlled vehicle.
is paper aims to propose a nonlinear program that can generate continuous trajectories for the lane change maneuver. We consider that a vehicle has already decided to change the lane and can obtain some of the precise states [2,3], such as the positions, speeds, and accelerations, of the surrounding vehicles through V2V (vehicle to vehicle) communications.
Several methods have been proposed to solve the vehicle trajectory planning problem. Below, we make a brief review of existing works in the area of lane change trajectory planning. Interested readers can refer to [4][5][6][7] for a comprehensive literature review.
Recent scientific literature has shown that combinatorial methods, such as the state lattice, are widely applied to solve vehicle trajectory planning problems [4]. Such a method must first create a discrete graph offline and then search for a trajectory from the graph [8][9][10][11]. For example, Ferguson et al. [12] used Newton's method to generate candidate spatial paths in a spatial space and stored the paths in a lookup table. e trajectory planner generates and evaluates spatiotemporal trajectories based on the lookup table. Ziegler [13] established a geometric graph and used the shortest path algorithms to search for paths in the graph. e trajectory was formulated as quintic splines and was generated according to the selected path. Werling et al. [14] generated a candidate set that consisted of s-shaped swerve trajectories and selected the best trajectory from this finite set. McNaughton et al. [15] developed a spatiotemporal lattice method that considered vehicle dynamics based on the bicycle model. Since a vehicle trajectory is a routing solution in a spatiotemporal space, combinatorial methods must discretize a large spatiotemporal space and lose the flexibility for the trajectory planning to avoid the curse of dimensionality.
In recent years, several studies have discussed trajectory planning based on mathematical programming [16][17][18]. Such a method can avoid ergodic searching in a spatiotemporal space with large size and is an ideal tool for planning a vehicle's trajectory in a continuous spatiotemporal space. More importantly, mathematical programming can consider constraint conditions such as safety and comfort constraints in a straightforward manner.
Shamir [19] proposed a nonlinear program to plan the trajectory, where the lane change trajectory is based on underlying polynomial equations. e programming attempts to minimize the total kinetic energy with a constraint for speed and acceleration. However, the study assumed that the initial and final points of the lane-changing maneuver were both known conditions and that the initial and final velocities were equal. is assumption may not be found in real-world cases. Milam et al. [20] and Schwartz and Milam [21] formulated the trajectory planning as an optimal control problem (OCP) and solved the programming using a sequential quadratic programming (SQP) solver. e proposed OCP can constrain the trajectory by vehicle dynamics, whereas the assumption of the initial state of the vehicle and the static obstacle cannot account for the practical lane change driving scenario with moving obstacles (i.e., the moving surrounding vehicles). Carvalho et al. [22] adopted a model predictive control (MPC) method to combine the trajectory planning and control. eir proposed MPC method was a nonlinear program that can be solved by a customized SQP algorithm. However, their study did not discuss a moving obstacle, such as vehicles around the controlled vehicle. Ziegler et al. [23] proposed a continuous optimization scheme for trajectory planning. e study constructed a constrained nonlinear program that can plan the future positions of the controlled vehicle for each time interval along a prespecified time horizon. e programming can guarantee a collision-free planning result. Maeda et al. [24] employed the final state control (FSC) method for trajectory planning. e proposed FSC aimed to minimize the jerk of the controlled vehicle and mainly constrained the movement of the vehicle by the initial/final state of the vehicle. e proposed FSC method can avoid the collision between the controlled vehicle and pedestrians by combining the future position information about pedestrians in the jerk minimization problem. However, the proposed FSC method was strongly dependent on the assumed final state of the vehicle. Nilsson [25] proposed a low-complexity quadratic program to plan a vehicle trajectory for lane change maneuvers. e method can satisfy the collision-free requirement for the vehicles near the controlled vehicle. However, the method was only collision-free when considering safety spaces, but it ignored speed issues. e method was designed for lane changes on a straight-line lane and may suffer from adaption problems, especially when handling lane changes for road sections with curves. Luo et al. [26] proposed a nonlinear program for trajectory planning that can maintain safe space between the controlled vehicle and other vehicles. is study treated the trajectory as a polynomial function and optimized the parameters of the polynomial function. A continuous and derivable vehicle trajectory can be generated by solving the programming.
Nonlinear programming has long been recognized as a powerful tool for trajectory planning.
is study further develops this methodology to improve its feasibility. Previous studies usually assumed that the length of a control time horizon is known and fixed, so the shape of the trajectory can be constrained well, but we find that it is difficult to set a precise value for the time horizon of the lane change maneuver before undertaking trajectory planning. We also find that previous studies often assumed that the longitudinal position in Cartesian coordinates of a vehicle at the end of the lane change maneuver can be used as a given condition. However, the final longitudinal position is available only if the vehicle drives along a straight road. Furthermore, Papadimitriou and Tomizuka [27] showed that the shape of the trajectory for a lane change maneuver is highly dependent on the final state of the vehicle. Although a few studies (e.g., Jula et al. [28] and Nilsson et al. [25]) have noted that the final position of the vehicle should maintain a safety space relative to the forward vehicle, we still need to further consider that the state of a vehicle at the end of the lane change maneuver should be constrained by the position, speed, and acceleration of the forward vehicle in the target lane, according to the car-following theory (see Kesting et al. [29]; Toledo et al. [30]; Kesting et al. [31]; and Song et al. [32]). is study proposes a new methodology that no longer needs to use the exact time horizon length and exact final position information to constrain the trajectory. We consider that although we do not know the exact length of the time horizon and the final position of a controlled vehicle at the end of the lane change maneuver, the final state of the controlled vehicle should satisfy several equality conditions. For example, the vehicle must reach the center of the target lane, and the driving direction must be equal to the direction of the center of the target lane. Instead of using the exact time horizon length and final position information, we attempt to use equality conditions to constrain the shape parameters of the trajectory. In this study, we integrate a carfollowing rule into the trajectory planner and use the carfollowing model to constrain the state of the controlled vehicle at the end of the lane change. is approach can also allow the controlled vehicle to switch from the lane change maneuver to the car-following maneuver smoothly. In addition, the lane change maneuver of the controlled vehicle may interact with the motion of the surrounding vehicles.
We attempt to simultaneously estimate the motion of the surrounding vehicles and plan the trajectory for the controlled vehicle. is strategy helps us determine the shape of the trajectory with respect to the motion of the surrounding vehicles. We also note that the trajectory planning results should match road curves well, which includes not only straight lines but also circular curves and transition curves. Our study provides a simple method for combining the road curve information into trajectory planning. e proposed method can be easily adapted in practice: it does not require knowing the start and end position of a curve, and it is not limited to the type of curve. e trajectory planner needs to replan the trajectory at a specified frequency during the lane change maneuver. However, at each replanning step, the trajectory planner always uses the same procedure to generate the trajectory.
is study focuses on the trajectory planning method itself and leaves the discussion of technical details, such as the replanning issue, for other studies. e rest of the paper is organized as follows. Section 2 explains the background of the lane change maneuver. Section 3 describes the nonlinear programming that is proposed to plan a lane change trajectory. Section 4 discusses the solution techniques for the proposed programming. Section 5 presents a series of numerical examples. Section 6 concludes the study.

Background of the Lane Change Maneuver
is study focuses on the lane change maneuver scenario, as shown in Figure 1. In Figure 1 When vehicle 0 finishes the lane change maneuver at the time instant T, it must switch from the lane change maneuver to a car-following maneuver. Accordingly, we consider that the state of vehicle 0 at time instant T should satisfy three conditions. First, vehicle 0 should achieve the center of the target lane. Second, vehicle 0 should drive along the tangential direction of the center of the target lane. ird, to maintain the safety and comfort of vehicle 0, the planned acceleration of vehicle 0 at time instant T should be equal to the acceleration determined by a car-following model. Specifically, the final acceleration of vehicle 0 is derived by the car-following model, whose inputs include the planned speed of vehicle 0 at time instant T, the speed of vehicle 3 at time instant T, and the distance between vehicles 0 and 3 at time instant T (i.e., Δs in Figure 1(a)).
We also estimate the motion of vehicle 1 based on the jerk of vehicle 1. We assume that the driver of vehicle 1 is not willing to reduce the speed too much and wishes to keep the jerk as close to zero as possible. It is also reasonable to assume that vehicle 1 can accept the lane change maneuver of vehicle 0 if two requirements are satisfied. First, the corresponding jerk and other kinematic variables are within the acceptable bounds. Second, the final acceleration of vehicle 1 at time instant T is smaller than the safe acceleration, which is derived using the car-following model. Since vehicle 1 follows vehicle 0 at time instant T, this carfollowing acceleration is dependent on the speed of vehicle 1 at time instant T, the speed of vehicle 0 at time instant T, and the distance between vehicle 1 and 0 at time instant T (i.e., Δ d in Figure 1(b)).

Trajectory Planning by a Nonlinear
Program (TRNP) is discretized maneuver yields the value of t i as where I is given as a constant value. However, it should be noted that t i is not a constant and is dependent on the value of T. At time instant t i , we introduce vehicle 0's kinematic variables as the longitudinal position x 0,i , the lateral position y 0,i , the longitudinal velocity v x 0,i , the lateral velocity v y 0,i , the longitudinal acceleration a x 0,i , the lateral acceleration a y 0,i , the longitudinal jerk j x 0,i , and the lateral jerk j y 0,i . To construct a feasible trajectory, polynomials have been widely recognized as an effective tool in satisfying the traveler's comfort [7]. For example, Papadimitriou and Tomizuka [27] and Yoneda et al. [33] constrained the initial and final states of the controlled vehicle and used two fifth-order polynomial functions to represent a trajectory. erefore, polynomial functions are adopted in our study to represent the longitudinal and lateral kinematic models. Moreover, compared to the usual method to build the kinematic vehicle model using the position, speed, and acceleration, our study adopts the position, speed, acceleration, and jerk as decision variables in constructing the kinematic model. erefore, to adapt to the kinematic model, we choose to increase the polynomial functions to a higher order (e.g., Shui [34] and You et al. [35]) and establish the kinematic model as where α 0 , . . . , α 6 and β 0 , . . . , β 6 in equations (2) and (3)  At the beginning of the lane change maneuver, the initial states (positions, speeds, and accelerations) for vehicles can be obtained through techniques such as autonomous perception or V2X communications. Since we know the initial state of vehicle 0 at time instant t 0 , the values for α 0 , α 1 , α 2 and β 0 , β 1 , β 2 can be derived as In equation (4), we use y 0,0 , v y 0,0 , a y 0,0 , x 0,0 , v x 0,0 , and a x 0,0 to denote y 0,i , v y 0,i , a y 0,i , x 0,i , v x 0,i , and a x 0,i for vehicle 0 at the initial time instant i � 0.
We further define the speed of vehicle 0 at time instant T (i.e., for i � I) as v 0,I : and define the acceleration of vehicle 0 at time instant T as a 0,I : Let us denote the jerk of vehicle 1 as j 1 . e speed of vehicle 1 at time instant t i is where v 1,0 and a 1,0 are the initial speed and acceleration of vehicle 1. en, the curve distance between the position of vehicle 1 at time instant t i and the origin of the target lane can be obtained as where s 1,0 is the initial curve distance of vehicle 1.

e Nonlinear Program.
We construct a nonlinear program to plan the trajectory for vehicle 0 while estimating the motion of vehicle 1. e proposed program treats α 3 , α 4 , α 5 , α 6 , β 3 , β 4 , β 5 , β 6 , T, and j 1 as decision variables. As shown in Figure 2, the proposed nonlinear programming aims to minimize the safety risk and discomfort for vehicle 0 and vehicle 1, while improving the traveling efficiency of vehicle 0. e detailed formulation of the programming is given as Equation (9a) is the objective function of the nonlinear program, where ρ 0 , ρ 1 , ρ 2 , ρ 3 , ρ 4 , and ρ 5 are weight parameters. e objective function takes into account several factors, including driving comfort, safety, efficiency, and negative influence of the surrounding vehicles, where the combination method in the objective function has been validated in many works [36][37][38]. Since we aim to minimize the safety risk and discomfort for vehicle 0, the objective function contains the average quadratic acceleration and jerk of vehicle 0 (see the first four items). en, we also seek to make the time horizon T of the lane change maneuver as short as possible to improve efficiency. Finally, we add j Constraint (9d) ensures that the value of a 0,I defined by equation (6) must be equal to the acceleration determined by a car-following model. As shown by equation (6), a 0,I can be considered a function of the decision variables α 3 , α 4 , α 5 , α 6 , β 3 , β 4 , β 5 , β 6 , and T. Constraint (9d) uses a car-following model to constrain the values of these variables. We where κ, λ, s c , C 1 , C 2 , V 1 , and V 2 are the prespecified parameters of the car-following model, where the values of them are inherited from the work of Jiang et al. [39]. v 0,I is the speed of vehicle 0 at time instant T, whose value can be calculated by equation (5), and v 3,I means the speed of vehicle 3 at time instant T, which can be computed as where v 3,0 is the speed of vehicle 3 at time instant t 0 , a 3,0 is the acceleration of vehicle 3 at time instant t 0 , and j 3,0 is the jerk of vehicle 3 at time instant t 0 . e curve distance between the position of vehicle 3 and the origin of the target lane at time instant T (see Figure 4) can be further obtained as where s 3,0 is the initial curve distance between the position of vehicle 3 and the origin of the target lane at time instant t 0 . e curve distance between vehicles 0 and 3 at time instant T can be obtained as where l is the length of a vehicle and S * (x 0,I ) returns the curve distance between the position of vehicle 0 and the origin of the target lane at time instant T (see Figure 4). Constraint (9e) ensures that at the end of the lane change maneuver, the acceleration of vehicle 1, a 1,I , is not smaller than the low boundary a min and is not larger than the safe acceleration of vehicle 1 provided by the FVDM. e carfollowing acceleration of vehicle 1 is obtained as where we can calculate a 1,I and v 1,I as a 1,0 + j 1 T and v 1,0 + a 1,0 T + 0.5j 1 T 2 , respectively. And Δ d is denoted as the distance between vehicles 1 and 0 in the target lane at time instant T. Since the curve distance s 1,I between the position of vehicle 1 and the origin of the target lane at time instant T is given as Constraint (9f ) ensures that the Euclidean distance between vehicles 0 and 1 is greater than the diagonal length r of a vehicle at time instant t i . In constraint (9f ), x 1,i and y 1,i denote the longitudinal and lateral positions of vehicle 1 at time instant t i , respectively. We obtain x 1,i as x 1,i � X * (s 1,i ), where s 1,i is given by equation (8) and X * (s) is a function that returns the longitudinal position x for a point located at the center of the target lane whose curve distance is s (see Figure 4). y 1,i can be further obtained as y 1,i � Y * (x 1,i ).
Constraint (9g) ensures that the distance between vehicles 0 and 3 must be larger than the diagonal length r of a vehicle. We use x 3,i and y 3,i to denote the longitudinal and lateral positions of vehicle 3 at time instant t i , respectively. ese values can be obtained as x 3,i � X * (s 3,i ) and y 3,i � Y * (x 3,i ), respectively. Constraint (9h) is for the distance between vehicles 0 and 4. Similar to the work in Ziegler et al. [23], we decompose a vehicle shape into five circles with diameter m (see Figure 5). en, these circles are indexed as k � 0, 1, . . . , 4, where the center of the 0-th circles is also the centroid of the vehicle.   Fatemi et al. [41]; and Hammarstrand et al. [42]) confirmed that polynomial regression models can approximate road curves well in Cartesian coordinates. Following these studies, we also employ the polynomial regression model to approximate Y (x), Y * (x), S(x), S * (x), and X(s). First, we can obtain sampling points among the road curves from a high-definition map, such as the grey points in Figure 6. en, we adopt the polynomial regression model to estimate the road curves (i.e., the grey lines in Figure 6) and obtain the internal parameters through the least squares method. is method is not required to know the geometric design of a road and is not restricted by the type of curve.

Solution Techniques
We use the SQP algorithm to solve the nonlinear programming defined by equations (9). Although the SQP algorithm may not obtain a global solution for the nonlinear problem, previous studies indicated that it is not necessary to find a global solution for the trajectory planning problem [23,43,44]. is is because a feasible solution can satisfy the requirements for safety and comfort during the lane change maneuver.
A random initial guess for the solution may lead to a failure for the SQP algorithm to find a feasible solution. is study develops a simple and effective way to find the initial guess. To obtain an initial solution for SQP, we set α 6 � 0, β 6 � 0, j 1 � 0, and T � T (T is a prespecified parameter). erefore, the remaining unknown variables are α 3 , α 4 , α 5 , β 3 , β 4 , and β 5 , which can be solved through equations (16)- (21).
In equations (16)- (21), the values for T, x 0,I , Y * (x 0,I ), v x 0,I , v y 0,I , a x 0,I , and a y 0,I are prespecified values, which can be computed using analytical methods according to the kinematic and geological relationship as follows.
In equation (22), we use x 0,I to denote a prespecified value for x 0,I . Here, we suggest prespecifying the value of Δs as Δs first and then determining x 0,I according to the specified Δs and T by the following equations: where x 0,I is the only unknown variable in equations (22) and (23), whose value can be computed by solving the equations. For equations (18) and (19), we can derive v x 0,I and v y 0,I based on v 0,I , using the orientation of the road curves.

Journal of Advanced Transportation
We assume that the speed of vehicle 0 is equal to the speed of vehicle 3 at time instant T and thus get v 0,I � v 3,I � v 3,0 + a 3,0 T + 1/2j 3,0 T 2 . Similarly, for equations (20) and (21), we determine a x 0,I and a y 0,I according to a 0,I which can be computed using C(v 0,I , v 3,I , Δs).

Numerical Examples
In this section, we generate a series of numerical examples and demonstrate the effectiveness of the proposed trajectory planning model. is section is organized as follows: we first present the method for generating random test scenarios and hyperparameter setting. en, we provide descriptive statistics to summarize the test results. Subsequently, we show the details of the proposed trajectory planning model using four scenarios. Finally, sensitivity analysis is conducted to illustrate the impact on the feasibility and computation burden of the algorithm under different factors.

Traffic Scenario Generation.
In this section, we introduce the method for generating the test scenarios. As stated before, the initial state information includes position, speed, acceleration, and jerk.

Vehicle Longitudinal Position Generation
(i) Generate the distance between vehicle 1 and vehicle 3 as where t headway follows a Weibull distribution where the shape parameter and scale parameter are defined as 5.955 and 1.3829, respectively [45]. (ii) Generate the distance between vehicle 0 and vehicle 4 as where t headway follows Weibull distribution, where the shape parameter and scale parameter are 5.955 and 1.3829, respectively. (ii) We assume that the initial value of vehicle 1 is x (m) * (x) = η 0 + η 1 x 1 + η 2 x 2 + ... + η 6 x 6 (x) = ξ 0 + ξ 1 x 1 + ξ 2 x 2 + ... + ξ 6 x 6 Figure 6: Road curve fitting using the polynomial regression model. 8 Journal of Advanced Transportation (iii) Generate x 0,0 from the uniform distribution x 0,0 ∼ U(x 1,0 + v 0,0 t safety , x 3,0 − v 0,0 t safety ), where we assume that the time gap of the vehicle 0 and 1 is larger than the minimum value (t safety ), and the relationship for the time gap of vehicles 0 and 3 is similar to the time gap of vehicles 0 and 1. e value of (t safety ) (1.6 s) is specified based on the model proposed by Kesting et al. [29].
Finally, we generate 1000 scenarios to test the effectiveness of the proposed lane change trajectory algorithm. e statistics of generated scenarios are outlined in Table 1, where the mean, 5-th percentile, and 95-th percentile statistical indicators are adopted.
Moreover, we test the proposed model on a section of a road with a transition curve. We set the width of a lane as 3.5 m. e values of hyperparameters are specified based on Nilsson et al. [46] and are listed in Table 2.

Statistics of Results.
e proposed lane change trajectory algorithm can solve most of the scenarios (92.9%). Table 3 lists the statistics of the results. e proposed algorithm can determine the value of T flexibly, where the mean is 4.45 s. Also, the proposed model can determine the jerk j 1 of vehicle 1 automatically, which ranges from −0.47 to −0. 23. is suggests that our model can avoid a drastic speed change for the following vehicle in the target lane. e numerical tests are conducted on a laptop with a 1.70 GHz i5-3317U CPU having 8.00 GB of RAM running on Windows 10. e whole procedure of optimization is provided by the SQP solver in the MATLAB Optimization Toolbox. Figure 7 presents the statistics of CPU time for computation. e 15%, 50%, and 95% percentiles of CPU time for computation are 0.44, 5.74, 11.83 seconds. Furthermore, the histogram in Figure 7 shows that a considerable proportion can obtain a feasible solution in less than 1.66 seconds. We believe that improvement in the language and optimization box (i.e., using C language or AMPL) can further reduce the computation time significantly. Figure 8 shows the factors that affect CPU time. As shown in the color bar on the right side, the darker red color means the longer CPU time, while the lighter red color means the solution can be obtained in a relatively short CPU time. e x-, y-, z-axes in Figure 8 represent the time headway between vehicle 0 and its surrounding vehicles (vehicle 1, vehicle 3, and vehicle 4). Figure 8 indicates that with the time headway becoming longer, the required CPU time can decrease significantly (the color becomes lighter).

Case Analysis.
In this section, we attempt to use numerical examples to demonstrate that the proposed trajectory planning method can generate an appropriate trajectory for the controlled vehicle to meet several situations. Table 4, we prepare four scenarios to test the trajectory planning method. In scenarios 1 and 2, vehicle 0 changes from a lane with low speed to a lane with fast speed. Compared to scenario 2, the initial position of vehicle 1 in scenario 1 is closer to that of vehicle 0, and it drives with a higher initial speed. However, in scenarios 3 and 4, vehicle 0 changes from a lane with a fast speed to a lane at a low speed. Compared to scenario 3, the average speed of the vehicles in the target lane of scenario 4 is slower than that of the vehicles in the target lane. For vehicles 1, 3, and 4, we set initial accelerations and jerks as a 1,0 � 0, a 3,0 � 0, a 4,0 � 0, j 3 � 0, and j 4 � 0.

As shown in
We observe that the computation times for scenarios 1 to 4 are 2.59 s, 0.60 s, 0.49 s, and 0.65 s, respectively. Figure 9(a) exhibits the time-dependent longitudinal and lateral positions' dynamics of vehicle 0's planned trajectory under scenarios 1 and 2. Figure 9(b) shows the planned trajectories of vehicle 0 under scenarios 3 and 4. As reported in Table 5, the value of x 0,I in scenario 1 is significantly larger than that in scenario 2. And the total time horizon T of the lane change maneuver under scenario 1 is also greater than that under scenario 2, whereas vehicle 0 is closer to vehicle 3 at the end of the lane change maneuver under scenario 1. ese features suggest that when planning the lane change trajectory for the controlled vehicle, the small distance between the controlled vehicle and its surrounding vehicle can lead to a complex and dangerous scenario, which may require more time for finishing the lane change maneuver. Moreover, the time-related positions of vehicle 0 and its surrounding vehicles are depicted in detail in Figure 10. rough different time indexes, we can observe that vehicle 0 for the 4 scenarios can keep a safe distance from its surrounding vehicles during the planning horizon, which can validate the safety of the proposed algorithm.
Since the proposed nonlinear programming can simultaneously consider the motions of vehicles 0 and 1, the planned trajectory of vehicle 0 can vary with different initial states of vehicle 1. As presented by Figures 9(c) and 9(e), the speed on the x-/y-axis of vehicle 0 under scenario 1 tends to be faster than that under scenario 2.
is is because compared to scenario 2, the initial speed of vehicle 1 is faster, and the initial position of vehicle 1 is closer to vehicle 0 under scenario 1. Table 5  target lane in scenario 4 is slower than that in scenario 3, vehicle 0 tends to decelerate more dramatically in scenario 4 than in scenario 3. Table 5 reports the ending state of vehicle 1 at time instant T. As mentioned in Section 2, we consider that the driver of vehicle 1 is not willing to reduce the speed too much and wishes to keep the jerk as close to zero as possible. Our proposed nonlinear program can optimize the possible jerk for vehicle 1 under this assumption. Table 5 shows that the jerk of vehicle 1 under scenario 1 is smaller than that under scenario 2 because vehicle 1 needs to decelerate more dramatically to avoid colliding with vehicle 0 in scenario 1. In scenario 4, since the initial speed of vehicle 1 is slow enough, vehicle 1 can remain safe, even if the jerk of vehicle 1 is 0.

Sensitivity Analysis.
In this section, we conduct a series of sensitivity analyses to explore the feasibility of the proposed algorithm as well as the computational load of the algorithm in detail. First, we use scenario 1 (Table 4) as the base scenario. en, we change the distance between vehicle 0 and vehicle 1 (Figure 11), the distance between vehicle 0 and vehicle 3 (Figure 12), and the distance between vehicle 0 and vehicle 4 ( Figure 13) alternately. We set the distance range from 2 m to 150 m and then determine the      Here, we generate a scenario analysis every 2 m, so x 1,0 � 358, 356, . . . , 212, 210m for 75 generated scenarios. erefore, we can derive that the distance between vehicle 0 and vehicle 1 is 2, 4, . . . , 148, 150m for the 75 generated scenarios. en, the proposed lane change planning algorithm is executed to check the feasibility of the algorithm and CPU computation load under the 75 generated scenarios.
It can be seen that the feasibility of the proposed lanechanging planning model can be guaranteed when the distance between the vehicles is larger than a certain value    (28 m in Figure 11(a), 100 m in Figure 12(a), and 22 m in Figure 13(a)). e larger distance between the controlled Success Failure When the distance is larger than 28m, the proposed algorithm can always find a feasible solution.   vehicle and its surrounding vehicles can decrease the required computational CPU time (Figures 11(b), 12(b), and 13(b)). is indicates that a scenario with a little distance between the controlled vehicle and its surrounding vehicles means a dangerous or even infeasible lane-changing driving situation and thus involves complex maneuvers to complete the lane-changing task (therefore, the optimization toolbox needs to take longer time to find a feasible solution). We also find that the leading vehicle in the target lane is the most critical factor for the lane change maneuver. e ego vehicle is able to execute the lane change maneuver if and only if a large enough distance (larger than 100m) between the ego vehicle and the leading vehicle in the target lane is available.

Conclusions
is study proposed a nonlinear trajectory planning program for automated vehicles to conduct a lane change maneuver. When constructing the spatiotemporal lane change trajectory, the polynomial function is adopted and its parameters are determined through a nonlinear program. Instead of assigning assumed values for the planning horizon and final state, this study incorporates them into the nonlinear program's decision variables, which can be obtained after optimization. Specifically, for the controlled vehicle's final state, it is further constrained through positions and speeds of the forward vehicle in the target lane, which is achieved through a car-following model. Moreover, we consider the interactions between the following vehicle in the target lane and the controlled vehicle: the motion of the new following vehicle is influenced by the trajectory planning results of the controlled vehicle, and the influence of the new following vehicle is built through the car-following model. erefore, the proposed trajectory planning methods can simultaneously plan trajectories for the new following vehicle and the controlled lane change vehicle. e proposed nonlinear program is not restricted by the type of road, so the model can be easily applied in practice. Finally, we solve the nonlinear programming through the SQP algorithm and assign an initial solution using the Newton method to improve the solution quality. e numerical results demonstrate that the performance of the proposed trajectory planning method can satisfy the requirements of safety and comfort under most scenarios. e main contributions are as follows. First, we provide a new methodology that no longer needs to use the preassumed exact time horizon length and the preassumed exact final position information to constrain the trajectory. erefore, the proposed method can be more flexible for the lane change maneuver and can be adaptive to more generalized scenarios. Second, we integrate a car-following rule into the trajectory planner and use the car-following model to constrain the state of the controlled vehicle at the end of the lane change.
is approach can allow the controlled vehicle to switch from the lane change maneuver to the car-following maneuver smoothly. ird, we attempt to provide a lane change plan allowing the controlled vehicle to interact with the surrounding vehicles.
is strategy helps us determine the shape of the trajectory with respect to the motion of the surrounding vehicles. Finally, the proposed method is not limited to a certain type of road curve (i.e., a straight-line road). e proposed method can perform well for different types of road curves. erefore, it presents great value in practice.
Future research may focus on building a realistic trajectory prediction model and incorporate it into the nonlinear program. Moreover, we will explore more computational issues to improve the feasibility and optimality of the trajectory planning program in future studies. For example, we will establish a feasibility check model, which starts before the trajectory planning process and can examine whether a lane change decision is appropriate under the current driving scenario. rough the anticipation feasibility check model, we can address the problems in terms of the significant computational resources' waste (time and memory) caused by the strict or infeasible lane change scenario and provide a possible solution for the computationally efficient solution in the automated vehicle.

Data Availability
e data used to support the findings of this study are available from the corresponding author upon request.

Conflicts of Interest
e authors declare that there are no conflicts of interest regarding the publication of this paper.