Yuxiang Zhang1, Jiachen Wang2, Jidong Lv3, Bingzhao Gao4, Hongqing Chu5, Xiaoxiang Na6. 1. The State Key Laboratory of Automotive Simulation and Control, Jilin University, Changchun 130025, China. 2. The College of Computer Science and Technology, Jilin University, Changchun 130015, China. 3. The Utopilot SAIC MOTOR, Shanghai 200438, China. 4. The Clean Energy Automotive Engineering Center, Tongji University, Shanghai 201804, China. 5. School of Automotive Studies, Tongji University, Shanghai 201804, China. 6. The Department of Engineering, University of Cambridge, Cambridge CB2 1PZ, UK.
Abstract
In complex driving scenarios, automated vehicles should behave reasonably and respond adaptively with high computational efficiency. In this paper, a computational efficient motion planning method is proposed, which considers traffic interaction and accelerates calculation. Firstly, the behavior is decided by connecting the points on the unequally divided road segments and lane centerlines, which simplifies the decision-making process in both space and time span. Secondly, as the dynamic vehicle model with changeable longitudinal velocity is considered in the trajectory generation module, the C/GMRES algorithm is used to accelerate the calculation of trajectory generation and realize on-line solving in nonlinear model predictive control. Meanwhile, the motion of other traffic participants is more accurately predicted based on the driver's intention and kinematics vehicle model, which enables the host vehicle to obtain a more reasonable behavior and trajectory. The simulation results verify the effectiveness of the proposed method.
In complex driving scenarios, automated vehicles should behave reasonably and respond adaptively with high computational efficiency. In this paper, a computational efficient motion planning method is proposed, which considers traffic interaction and accelerates calculation. Firstly, the behavior is decided by connecting the points on the unequally divided road segments and lane centerlines, which simplifies the decision-making process in both space and time span. Secondly, as the dynamic vehicle model with changeable longitudinal velocity is considered in the trajectory generation module, the C/GMRES algorithm is used to accelerate the calculation of trajectory generation and realize on-line solving in nonlinear model predictive control. Meanwhile, the motion of other traffic participants is more accurately predicted based on the driver's intention and kinematics vehicle model, which enables the host vehicle to obtain a more reasonable behavior and trajectory. The simulation results verify the effectiveness of the proposed method.
Entities:
Keywords:
autonomous vehicles; model predictive control; trajectory planning
Due to the complex driving scenarios and difficulty in accurately predicting the behavior of the surrounding vehicles, the automated vehicles need to adapt to great complexity and dynamics in real traffic [1,2]. Therefore, advanced motion planning algorithms should help the agent behave reasonably and respond adaptively in dynamic and complex driving scenarios with computational efficient and reliable control [3].
1.1. State-of-the-Art Review and Challenges
The performance of motion planning methods is closely related to the trajectory prediction of other traffic participants, behavior planning, and trajectory generation. As automated vehicles will frequently interact with other traffic participants, trajectory prediction will influence behavior planning and trajectory generation modules. The motion of other environment vehicles is predicted with constant longitudinal velocity or acceleration [4]. Such a prediction is inaccurate and will decrease the reasonability of behavior planning and trajectory generation modules [5,6]. Thus, more accurately predicted trajectories will promote the performance of motion planning.In behavior planning aspects, the machine learning-based or model-based methods usually decide a human-like behavior, like lane-change and obstacle avoidance, which contains a wide range of trajectories. To ensure absolute safety, decision-making methods are always conservative. Thus, more complex behaviors should be generated in decision-making. POMDP can generate a more abundant behavior [7,8]. The road is divided into several segments and the points are connected to represent different behavioral decisions [9,10].Regarding trajectory generation, current methods can be divided into graph-search-based methods [11], incremental search [12], interpolating curve methods [13] and numerical optimization [14,15]. Model Predictive Control (MPC) is widely used because it can explicitly deal with constraints to ensure safety with consideration of traffic interaction not only at the current time step but also in the predictive horizon [16,17]. As for the control model in MPC, the dynamic vehicle model is added to the kinematic model to realize stable motion control and enrich driving behaviors [18,19].The high-performance motion planning methods should be computationally efficient and enable automated vehicles to behave reasonably and respond adaptively in dynamic and complex scenarios. First, the host vehicle will interact with the surrounding vehicles while driving on the road inevitably. The motion prediction of environment vehicles needs to be predicted in the planning horizon, which enables the host vehicle to behave reasonably and adapt to the dynamic traffic environment. Meanwhile, the driving process contains a large span in both time and space, which means precise driving behavior will cause huge calculations. To balance the calculation time and planning performance, the problem in the model formulation aspect should be simplified without losing reasonability.To further promote the reasonability of motion planning, except for the dynamic vehicle model, variational velocity can be considered in the trajectory generation. Thus, the control model will change from the linear model to the nonlinear model [20]. Such a control model increases the time for online solving, which needs an additional fast solving algorithm to realize online calculation [21,22,23].
1.2. Work and Contributions
As shown in Figure 1, this paper proposes a computational efficient motion planning method for autonomous vehicles, which can behave reasonably and adaptively in dynamic and complex driving scenarios. After predicting the trajectory of environment vehicles, the behavior planning and trajectory generation will be done sequentially. The following improvements simplify the problem and decrease calculation to realize computational efficiency. In the behavior planning module, the road is divided into several segments with road points and different behaviors are represented with different connections between road points in each segment. Firstly, rather than only set road points in the center of the lane, the road points are also distributed on the lane line, which enables the behavior planner to generate more complex behaviors. Meanwhile, in predictive control, short-term behavior is much more complex and also should be paid more attention to. Besides, the prediction is not accurate while lengthening the predictive horizon. Thus, rather than equally dividing the road, unequal segments that the distance between these road segments is gradually increasing can further decrease calculation and raise reasonability. Secondly, based on the analysis of different traffic participants, the motion of static environment vehicles is much more simple, and can directly exclude corresponding behaviors. Therefore, static environment vehicles are used to narrow the feasible region of the solution and further decrease online calculation. Thirdly, variational longitudinal velocity and dynamic vehicle models are considered to raise the reasonability of trajectory generation. It can also speed up the trajectory following process with the resulting acceleration and steering wheel angle. We use the C/GMRES algorithm to realize on-line calculations in NMPC. The main contributions are summarized as follows
Figure 1
Diagram of the proposed motion planning frame.
The complex and reasonable behavior of the host vehicle is efficiently realized by connecting different points located on unequally divided road segments and lane centerlines.Trajectory prediction of surrounding vehicles is considered during trajectory planning. And the trajectory planning is based on both driver’s intention and the kinematics vehicle model, which can increase the accuracy and rationality.C/GMRES is used to realize online calculation and raise the reasonability of trajectory generation and trajectory following.The remainder of this paper is organized as follows. In Section 2, the coordinate systems and the trajectory prediction are introduced. Section 3 introduces the behavioral planning module. In Section 4, the trajectory generation module is introduced. In Section 5, the simulation process is shown, and the results are given and analyzed in detail. The simulation results verify the effectiveness of the proposed method. Section 6 is the conclusion of this paper.
2. Coordinate Systems Conversion and Trajectory Prediction
In this section, first, the conversion between the Cartesian coordinate system and the Frenet coordinate system is introduced to simplify the planning process. Then, three ways of trajectory prediction are illustrated and compared.
2.1. Coordinate Systems Conversion
To describe the relation between two coordinates, as shown in Figure 2, the Cartesian coordinate of is while the Frenet coordinate of is , where l is the distance from to the reference point [24]. In coordinate systems conversion, the lane centerline is extracted with a third-degree polynomial equation as the reference curve of the Frenet coordinate system, e.g., . For the conversion from Frenet coordinate to Cartesian coordinate , a nearest point works as the reference point to convert , whose Frenet coordinate can be written as . Since the arc length is already known, can be calculated by dividing the curve and sampling from the starting point . The integral value of the sampling point can similarly be calculated. Compare with to determine whether the is the desired coordinate point , and finally find the coordinates of . And the Cartesian coordinate of can be calculated with
where is the curvature of the reference curve at point .
Figure 2
Diagram of coordinate systems conversion. is the starting point, is the ending point. is the point on the trajectory of the vehicle to be converted. is the nearest point that works as the reference point to convert . is the reference curve tangent vector in the Frenet coordinate system, and is the normal vector in the Frenet coordinate system. is the Frenet coordinate of .
For the conversion from Cartesian coordinate to Frenet coordinate , the reference point is also needed. We use to represent the square of the distance from to the reference point . The horizontal coordinate value of the reference point that minimizes satisfies , which can be solved by Newton’s method [25]. By calculating and , the iteration formula can be expressed asThe iteration stops while and is the target value. The Frenet coordinate can be solved as
2.2. Trajectory Prediction
The information about the surrounding vehicles and the trajectories of the surrounding vehicles in a period of time in the future is essential for motion planning. Such trajectory prediction can be done based on the driver’s intention, vehicle kinematics model, or both driver’s intention and vehicle kinematics model, which will be compared in this section.
2.2.1. Trajectory Prediction Based on Driver’s Intention
We consider lane change and lane-keeping operations. For an operation intention, countless driving trajectories can be realized. Based on the driver of the vehicle, the actual driving trajectory may be very gentle or aggressive. In addition, the geometric environment of the road will also affect the actual trajectory. Therefore, the trajectory prediction based on the operation intention can generate a set of predicted trajectories based on the current state of the vehicle, the operation intention, and the road parameters, and then select the optimal one based on the information. Since the shape of the road has a great influence on the predicted trajectory, the predicted trajectory cluster is firstly generated in the Frenet coordinate system, then converted into the Cartesian coordinate system.In Frenet coordinate system, and represent longitudinal distance and lateral distance, respectively. We use and to represent the initial state and the end state of the vehicle trajectory. To ensure the continuity of the trajectory and provide unique expressions for different trajectories, high-order polynomials are used for fitting to represent the trajectory of longitudinal and lateral distance over time t. For the initial state , each state variable can be obtained by converting the current kinematic parameters in the Cartesian coordinate system, which can be expressed as
where is the distance from the initial position to the centerline of the lane. is the orientation of the tangent vector . is the current value of the normal acceleration of the vehicle and is the curvature of the reference point.We assume that the vehicle is on the center line of its target lane after finishing the intended operation and it remains the same longitudinal acceleration throughout the operation. Therefore, some of the operation termination state can be calculated as
, where d is the width of the lane while the vehicle is changing the current lane and the sign is determined by the lane change direction. For lane keeping operation, .For a complete lane change operation, the time to complete the operation is about 6 s, and the length of can be adjusted according to the driver’s driving style. For lane-keeping operations, the time is significantly shorter. Use to represent the end time of the operation, that is, take a fixed step size and sample start from 0 to with K steps. Since it is assumed that the longitudinal acceleration of the vehicle remains unchanged, the longitudinal speed at the termination state is . For the lateral distance at the termination state, a fifth-degree polynomial fit for time t can be used, which is calculated as
where are the parameters of the curve. Then, and can be calculated respectively. Therefore, the lateral state values at the initial state () and the terminal lateral state () can be written asAnd the parameters can be obtained by solving the following matrixSince the longitudinal displacement changes according to , a fourth-degree polynomial with respect to time t is used to fit the longitudinal kinematic, which can be expressed as
where are the parameters. The initial states and the terminal states can be represented by replacing t in the above formula with 0 and , respectively.Therefore, the parameters can be obtained by solving the following matrixDifferent corresponds to different fitting parameters c and different driving trajectories. When selecting the optimal trajectory, first convert the trajectory to the Cartesian coordinate system. The principles to be followed in the selection process include: is as short as possible, the driving process is comfortable, and the lateral displacement is reduced as much as possible during the lane change operation. Therefore, for the selection of the optimal predicted trajectory based on the driver’s intention, the maximum normal acceleration value in the driving trajectory and the time to complete the operation are mainly considered
where represents the trajectory and represents the cost of the trajectory. is the normal acceleration at time t. is the total time of the trajectory. and are two coefficients. The resulting trajectory with the smallest cost value is used as the optimal prediction trajectory based on the operation intention prediction
2.2.2. Trajectory Prediction Based on Vehicle Kinematics Model
The trajectory predicted based on the driver’s intention is more accurate at a longer time horizon, but the accuracy is lower on a shorter time horizon. The trajectory predicted using the current kinematic parameters of the vehicle is more accurate in a shorter time. So, it is necessary to put both the intention and kinematics model into consideration. We assume that the vehicle acceleration and yaw rate remain unchanged. Therefore, in the Cartesian coordinate system, the vehicle speeds along the x and y axes at time t can be represented as
where the velocity at time t is . The predicted trajectory based on the kinematic model can be obtained by integrating the vehicle velocities,
where and are two parameters determined by the initial state and can be expressed asIn particular, when the initial yaw rate , the predicted trajectory changes to
2.2.3. Trajectory Prediction Based on Both Driver’s Intention and Vehicle Kinematics Model
Since the predicted trajectory based on the kinematics model is more accurate only in a shorter prediction time, and the trajectory based on the driver’s intention has higher accuracy in a longer period of time, the predicted trajectory obtained by combining the two will be more accurate. Let the coefficient of the predicted trajectory based on the kinematics model be , and the predicted trajectory model can be changed to
where is a time-varying variable that is designed to predict trajectory with high accuracy. Here, is designed and tuned with multiple simulations asCombined with the driver’s intention and the vehicle kinematics model, a more accurate predicted trajectory can be obtained. The results of trajectory prediction are shown in Figure 3. The trajectory that is predicted based on both operation intention and the vehicle kinematics model is more accurate than the other two methods.
Figure 3
The results of trajectory prediction based on operation intention, vehicle kinematics model, and both operation intention and vehicle kinematics model.
3. Behavioral Planning
In the behavioral planning, by comprehensively considering the host vehicle information, road information, and surrounding environment information, an optimal behavioral trajectory is selected, which will be used for trajectory generation.
3.1. Generation of Candidate Paths
To reduce the size of the search space for trajectory planning and speed up the calculation, a series of candidate paths need to be generated first. The optimal path that does not collide is selected from the candidate paths. The candidate path is a candidate set that can represent the behavior that the vehicle can take in the planning process, and the road space of the entire prediction time is reasonably divided into multiple road segments. Comprehensively considering the prediction length and calculation time, the road space in the prediction time is divided into three road segments. The candidate points at the same s coordinates are called a layer of candidate point sets. The diagram of this division is shown in Figure 4. The road space occupied by each road segment can be represented as
where refers to the distance traveled by the vehicle in 1 s, refers to the length of the road space. To prevent the predicted length from being too short, a minimum interval needs to be set so that the vehicle can plan the trajectory even if the current vehicle speed is too slow. The value of is set based on the comprehensive consideration of the calculation time and the predicted length. The step length near the current position is short and the one farther away from the current position is large.
Figure 4
The diagram of Generation of Candidate Paths.
All candidate roads together constitute a candidate set of trajectories in the future. Each layer of candidate point sets contains the center point of both the current lane and the adjacent lane and the lane change point of the two lanes. By connecting the points in the candidate point set, a series of path candidate sets can be generated. To further narrow the search range, considering that the vehicle has a high risk of completing the lane change operation in a short period of time, the set of candidate points of the first layer contains only the road center point of the current lane and the lane change point with the adjacent lane.The path candidate set is a connection of a series of points in the search space, but not every road can be driven in the path candidate set. There will inevitably be static and dynamic obstacles on the road. Regardless of the dynamic obstacles, the paths that pass through the static obstacles are firstly removed. When driving along these paths, the vehicle will inevitably collide with a static obstacle at any time. After removing, all paths in the remaining set of paths candidates will become candidate paths in the behavior decision layer. Speed planning is needed for these candidate paths to select the optimal one.
3.2. Speed Profile
The selection of vehicle speed needs comprehensive consideration of traffic and road information and restrictions, vehicle restrictions, dynamic obstacles, and other information. Traffic road information mainly includes traffic lights, traffic signs, stop lines, maximum and minimum speed limits, etc, which is simply shown in Figure 5. When selecting the optimal speed sequence, traffic road information must be extracted as the first constraint. Since the influence of road traffic information on vehicle speed mainly acts on the road driving direction, that is, the S direction, the limit curve based on the traffic road information on the vehicle speed can be represented in a v-s profile.
Figure 5
Maximum velocity considering traffic information and lateral acceleration.
The maximum lateral acceleration of the vehicle while driving needs to consider the physical limitations of the vehicle and the impact on comfort. Based on the maximum lateral acceleration and the road curvature, the speed limit based on the lateral acceleration can be calculated asSince the road curvatures of adjacent lanes are the same, the limitation of the maximum lateral acceleration on the vehicle speed still only exists in the S direction. By comparing the value of the above two speeds, the limit curve of the vehicle speed in the S direction can be obtained as shown in Figure 5.For dynamic obstacles, if time and space are considered at the same time, the problem of speed selection is a problem of optimal selection in S-L-T three-dimensional space, which is extremely high in calculation complexity. To reduce the dimension, each of the above candidate paths can be subjected to speed planning once. The coordinates L can be ignored to reduce the difficulty of calculation. An S-T profile is used to plan speed.In an S-T profile, the T axis represents the time axis for predicting the future along the candidate road, and the S axis represents the space axis extending from the origin along the candidate road. We assume that the dynamic obstacles have constant acceleration within the prediction. The information on dynamic obstacles can be displayed in blue blocks and a safe distance is reserved too. The vehicle needs to travel in the space-time area corresponding to the blank grid. The origin of the S-T map is the current position of the host vehicle, and how to get to the target S position is the goal of speed planning.Some restrictions and objective functions are necessary. First, the speed of the vehicle should be as fast as possible, which is calculated asIn addition, large acceleration will reduce driving comfort, so acceleration needs to be limited asFinally, it is necessary to avoid frequent acceleration and deceleration of the vehicle during driving, which isIn summary, the cost function is
where , and are coefficients corresponding to , and . The optimal speed sequence for a certain behavior can be obtained through the cost function as shown in Figure 6.
Figure 6
Speed profile.
3.3. Optimal Behavioral Trajectory Selection
Each candidate trajectory in the behavior planning candidate set represents a behavioral operation, and it is especially important to select the optimal one. It is necessary to consider efficiency, comfort, energy consumption, and other aspects.First, the number of lane changes needs to be considered. is a cost function factor affected by the number of lane changes. Since lane changing greatly increases energy consumption and greatly reduces comfort, it is necessary to avoid unnecessary and frequent lane changing operations. Thus,
where represents the layer number, represents the candidate point. represents the lane at candidate point.In addition, since the S coordinate of the endpoint of each candidate route is the same, the shorter the travel time, the higher the efficiency. is only determined by the time. Frequent changes in behavior can reduce comfort and increase control difficulty. To reduce unnecessary changes in behavior planning, a consistency coefficient is introduced to indicate the difference between the candidate behaviors at the current time and the previously executed behavior. Thus, can be formulated asWhen generating the speed profile in the previous step, the candidate trajectory has been discretized. The step size after discretization is , and the total number of discrete points is . is the discrete step size of the model used for resampling performed. Then, . Therefore, and represent the coordinate values of the point on the candidate trajectory in Frenet coordinate system at time t. and represent the coordinate values of the point on the candidate trajectory in Frenet coordinate system at time t, which are the same corresponding point with and . In this way, by constraining the difference between the same corresponding points in the two behavior planning paths taken at adjacent moments, the consistency and continuity of the behavior planning path can be constrained.Last but not least, to make the vehicle location in the center of the road as much as possible while lane-keeping, is used to represent the number of nodes where the vehicle is on the road boundary in the planned behavior trajectory, where represents nodes where the vehicle is at the road boundary in the behavior trajectory.In summary, a behavior path that is optimal in terms of efficiency, comfort, and energy consumption is selected according to the following cost function, and this behavior path is used as a reference for motion planning.
3.4. Resampled Behavioral Trajectory
The step length of the behavior trajectory is longer. After selecting an optimal behavior trajectory, the trajectory needs to be converted from the Frenet coordinate system to the Cartesian coordinate system. The diagram of this process is shown in Figure 7. The step length of the candidate trajectory is , and the time sequence is , , …. The step size used in resampling is , and the time sequence is , , …. Since is larger than , the optimal behavior trajectory needs to be interpolated to shorten the step size. In the process of interpolating, it is assumed that the vehicle speed remains unchanged within , and the number of contained in each is . The time sequence of resampled trajectory can be written as , , …, , , , …, where represents the time at the step, and represents the resampled point in the step.
Figure 7
Resampled behavioral trajectory.
4. Trajectory Generation
With selected behavior from the behavioral planning module, nonlinear model predictive control is used in the trajectory generation module, which considers variational longitudinal velocity and dynamic vehicle model, and uses the C/GMRES algorithm to speed up the calculation process.
4.1. Vehicle Dynamic Model
To describe the vehicle dynamics characteristics more accurately, this paper uses a vehicle dynamics model. For the vehicle system, the coordinate system is the right-handed coordinate system, and the origin is the position of the center of mass of the vehicle. According to Newton’s second law, the dynamic characteristics can be represented as
where m is the mass of the vehicle and is the inertia of the vehicle. and are the lateral forces of the front wheel and rear wheel, respectively. is the lateral acceleration. and are the lengths from the center of mass to the front axle and the rear axle, respectively. w is the yaw rate. is used to represent the ratio of lateral speed to the longitudinal speed,From the geometric relationship, the slip angles of the front and rear wheels can be represented as
where is the steering angle. When the lip angle is small, the tire characteristics can be regarded as linear, which is calculated asThe derivative of longitudinal acceleration is the acceleration of the vehicle.Using as the state vector of the vehicle dynamics system and as the input vector of the vehicle dynamics system, the state equation of the vehicle dynamics system isTransform the state equation of the continuous form vehicle dynamics system into a discrete form
4.2. Controller Design
To complete the task of trajectory planning, it is necessary to rationally design the objective functions and constraints of model predictive control. The input value of the vehicle system cannot exceed the limit of the physical structure, so the upper and lower limits of the input variable need to be limited asTo ensure that the planned trajectory does not collide with obstacles, it is necessary to maintain a certain safety distance between the trajectory at each moment and the obstacle at the corresponding moment. Since the longitudinal speed of the vehicle is often much higher than the lateral speed, a larger safe distance is needed in the longitudinal direction than in the lateral direction. The safety range around the host autonomous vehicle is designed as an ellipse, where the long axis of the ellipse is the longitudinal direction so that the safety constraint can be expressed as
where and represent safety distance in the longitudinal direction and the lateral direction, respectively. The larger the safety distance is, the further the host vehicle acts.To make the final trajectory planning result close to the behavioral planning path, the following objective function is needed
where and are the coordinates of the trajectory at time-step k. and are the coordinates of the resampling behavioral planning path at time-step k.As mentioned before, excessive acceleration and a small turning radius will greatly reduce driving comfort, and so it’s necessary to control their value of them.A terminal constraint is added to ensure the final trajectory matches the planned behavioral path better.When there are two environment vehicles, the expression of the controller for motion planning isSince the vehicle dynamics model used is a non-linear model, a suitable solving algorithm is necessary. In this paper, a Continuation/GMRES algorithm is used to solve the nonlinear model predictive control problem.
4.3. C-GMRES
In the nonlinear model predictive control problem, the small sampling period of mechanical systems will bring a great burden to the computing platform. Based on Generalized Minimum Residual Method (GMRES), Ohtsuka introduced the concept of the Continuation Generalized Minimum Residual Method (C/GMRES), which solves the linear equations involved in the differential equations at each sampling instant, thereby solving the control input sequence [26]. The detailed C/GMRES algorithm that is used in this paper is depicted in Algorithm 1.To solve the trajectory planning problem, first, the dummy inputs are used to convert inequality constraints into equality constraints.Meanwhile, to prevent multiple solutions of dummy inputs, adding a small dummy penalty to the objective function
where is a small positive constant.Then, define the Hamiltonian by
where represents costate and represents language multiplier. represents the dimension of constraints.For an optimal control , it exists and , the following conditions should be satifiedHere, Equaton (43) can be summarized asThen, can be expressed asHere, is an introduced stable matrix that stabilizes at the origin. Then, can be computed withThe solution curve is approximated by forward difference if an initial solution satisfying can be found. Here, generalized minimal residual (GMRES) method is applied to solve the linear equation . The combination of forward difference approximation and GMRES is called FDGMRES.
5. Simulation
In this section, the proposed computational efficient motion planning method is verified in three different environments. According to the information of the obstacle and the predicted trajectory, the behavior is selected, and the trajectory is optimized using NMPC, which is fast solved by the C/GMRES algorithm.
5.1. Obstacle Avoidance on Straight Lane
As shown in Figure 8, the host vehicle travels on a straight lane with an initial speed of 10 m/s. The maximum speed limit of the road is 15 m/s and each lane width is 4m. An obstacle vehicle is 30 m ahead of the host vehicle at speed of 5 m/s. The trajectory of the host vehicle and the obstacle vehicle is shown in Figure 8a. The speed profile of two vehicles and the steering wheel angle of the host vehicle is shown in Figure 8b,c. In this driving scenario, the host vehicle executes two consecutive lane-changing operations smoothly and quickly to avoid dynamic obstacles and keep the speed under the maximum speed.
Figure 8
Simulation results of obstacle avoidance on a straight lane. Here, (a) is vehicle trajectory. (b) is vehicle velocity. (c) is steering wheel angle.
The processor of the computer is Intel (R) Core (TM) i7-6700hq CPU@ 2.60GHZ. The time step size for simulation is 0.05s and the nonlinear model predictive control problem using the C/GMRES algorithm, which is also compared with fmincon function in MATLAB. As shown in Figure 9, the calculating time of solving is much less than the time step size , and also much less than the calculating time of the fmincon function in MATLAB which is more than 10 min. It shows that the local path planning module solved by C/GMRES can better meet the requirements of solving speed.
Figure 9
Calculating time.
5.2. Obstacle Avoidance on Winding Lane
In the scenario of a winding road, the center line of the initial lane is The obstacle vehicle travels at a speed of 5 m/s at 50 m in front of the host vehicle. The trajectory and speed profile of the two vehicles and the steering wheel angle of the host vehicle is shown in Figure 10. The host vehicle chooses to accelerate to overtake the preceding vehicle and avoid the obstacle.
Figure 10
Simulation results of obstacle avoidance on winding lane. Here, (a) is vehicle trajectory. (b) is vehicle velocity. (c) is steering wheel angle.
5.3. Lane-Changing Obstacle Avoidance
A much more complex scenario is verified in the third simulation, in which the intention of the obstacle changed. The trajectory of the obstacle vehicle is selected from the open data set, which executes a lane change to the left lane. The trajectory and speed profile of the two vehicles and the steering wheel angle of the host vehicle is shown in Figure 11.
Figure 11
Simulation results of lane-changing obstacle avoidance. Here, (a) is vehicle trajectory. (b) is vehicle velocity. (c) is steering wheel angle.
As shown in Figure 11a, at first, the obstacle vehicle chooses lane-keeping before changing lanes to the left lane. In this process, the host vehicle tries to change lanes. After the obstacle vehicle decides to change to the target lane of the host vehicle, the host vehicle decides to change back to its original lane. From the above simulation results, the proposed motion planning method considers safety, computational efficiency, and comfort simultaneously and obtains good system performance.
6. Conclusions
This paper proposes a computationally efficient motion planning method for autonomous vehicles, which considers dynamic obstacle avoidance and traffic interaction. The decision process for complex behavior is reasonably simplified in both time and space span. Different points located on unequally divided road segments and lane centerlines are connected to represent behavior. And C/GMRES algorithm is used to accelerate the calculation of the NMPC problem in the trajectory generation module. The trajectories of other traffic participants are more accurately predicted with known intention and vehicle models, which enables the movement to be more reasonably planned. Finally, three groups of simulation experiments are carried out to verify the rationality and superiority of the algorithm.In future works, the interactive intention prediction will be considered in the intention predictive layer, which can extend the motion planning method from reacting adaptively to predicting adaptively. By considering the interactions between the ego vehicle and surrounding drivers socially via implicit and/or explicit communications, the behavior of the autonomous vehicle can be more human-like and facilitate safety performance under complex and dynamic environments [27].