Cooperation-Aware Lane Change Control in Dense Traffic

Cooperation-Aware Lane Change Control in Dense Traffic

Sangjae Bae, Dhruv Saxena, Alireza Nakhaei, Chiho Choi, Kikuo Fujimura, and Scott Moura University of California, Berkeley, USA.Carnegie Mellon University, USA.Honda Research Institute, USA.*This work was funded by Honda Research Institute, USA.

This paper presents a real-time lane change control framework of autonomous driving in dense traffic, which exploits cooperative behaviors of human drivers. This paper especially focuses on heavy traffic where vehicles cannot change lane without cooperating with other drivers. In this case, classical robust controls may not apply since there is no “safe” area to merge to. That said, modeling complex and interactive human behaviors is non-trivial from the perspective of control engineers. We propose a mathematical control framework based on Model Predictive Control (MPC) encompassing a state-of-the-art Recurrent Neural network (RNN) architecture. In particular, RNN predicts interactive motions of human drivers in response to potential actions of the autonomous vehicle, which are then be systematically evaluated in safety constraints. We also propose a real-time heuristic algorithm to find locally optimal control inputs. Finally, quantitative and qualitative analysis on simulation studies are presented, showing a strong potential of the proposed framework.

I Introduction

An autonomous-driving vehicle is no longer a futuristic concept and extensive researches have been conducted in various aspects, spanning from localization, perceptions, and controls to implementations and validations. Particularly from the perspective of control engineers, designing a controller that secures safety, in various traffic conditions, such as driving on arterial-road/highway in free-flow/dense traffic with/without traffic lights, has been a principal research focus. Among all, this paper investigates a lane change in dense traffic.

With the importance of safety, many literature have focused on robust controls that guarantee collision avoidance. Unlike other autonomous robots, autonomous-driving vehicle can take advantage of a deliberate roadway on arterial road or highway. Exploiting a roadway as guidance, longitudinal controller designs have proven their effectiveness in maintaining a safety distance to a front vehicle, as well as securing driving comfort and energy efficiency [3, 2]. A lane-changing control extends longitudinal controller without significant modifications in mathematical foundations, by recognizing additional lanes and vehicles [11]. Lane-changing controllers often utilize probabilistic models [24, 23] or scenario-based models [19, 6] to predict adjacent drivers’ motions, which primarily seek for a safe area in a robust manner.

Unfortunately, those robust methods may not apply in a highly dense traffic where there is no “safe” area to seek for. In such dense traffic condition, interactions with human drivers are essential to successfully change a lane. That is, a human driver can potentially slow down to make a spacial interval so that the other vehicle can merge into. That being said, modeling interactive behaviors by formal statistical or scenario-based approaches is non-trivial, mainly due to its complex and stochastic nature as well as computational challenge. Consequently, it is yet an open question, with its importance in accomplishing fully autonomous vehicles [16].

A few literature focused on human interactions in lane change or merging [5, 17, 25, 18]. Especially, Reinforcement Learning (RL) techniques have been thoroughly investigated, appealing for their potentials in finding maneuvers under interactive or unknown traffic conditions [18, 20]. However, issues on safety, reliability, or interpretability have yet to be resolved for RL for practical use. In addition to that, those proposed methods limited their focus on interactions between two vehicles at a time, in lane changing or lane keeping. In realistic case with highly dense traffic, each vehicle’s motion is reactive to multiple vehicles simultaneously, where existing methods may not fit.

Apart from RL, an increasing number of literature has applied Deep Neural Network architecture in the scope of autonomous driving and Advanced Driving Assistance Systems (ADAS), and they have shown their usefulness in explaining complex environments [21, 7, 4]. Particularly in predicting motions of human (drivers), Recurrent Neural Network (RNN) architectures have met rapid technical advance, proving their accuracy [8, 1] as well as computational efficiency [10]. Therefore, it would be natural to take advantage of those advances in regard to controller design, yet imposing upon formal mathematical foundations of autonomous driving control established with rigorous control theories [9] and well-formulated vehicle dynamics [13]. That is, a controller based on control theories eventually determines optimal control inputs for autonomous driving, while partially exploiting predictions by RNN. The incorporation thereby would remain the controller reliable, interpretable, and tunable, while having the controller responsive to delicate, interactive motions of human drivers. It is still challenging to mathematically incorporate RNN into formal controller design and to solve a control problem effectively and efficiently. We address these challenges in this paper.

We add two original contributions to the literature: (i) we propose a mathematical control framework that systematically evaluates several human drivers’ interactive motions, in a highly dense traffic on the highway. The framework partially exploits Recurrent Neural networks (RNN) to predict (nonlinear) interactive motions, which are incorporated into safety constraints. Optimal control inputs are obtained eventually by Model Predictive Control (MPC) based on vehicle dynamics; (ii) we propose a real-time rollout-based heuristic algorithm that sequentially evaluates human driver’s reactions and that finds locally optimal solutions. The idea of incorporating RNN as a prediction model into a MPC controller is straightforward, however, a problem with RNN becomes complex and highly nonlinear to solve using classical optimization algorithms. We show our heuristic algorithm finds locally optimal solutions effectively and efficiently.

The paper is organized in the following manner. Section II describes the mathematical formulation of the proposed control framework and the heuristic algorithm. Section III presents and analyzes simulation results to validate the proposed framework. Section IV summarizes the paper’s contributions.

Ii Controller Design

We suppose that a target lane is known and is highly dense with other vehicles. To design a controller to change lane to the target lane, it is important to estimate how surrounding vehicles will react given controls. Predicting their behavior, however, is challenging because their behaviors are interactive with each other, and it is too complex to model either physically or statistically, using formal methods such as Markov chains. We therefore employ a Recurrent Neural network architecture (RNN), particularly Social Generative Adversarial Network (SGAN) that has been successful in predicting interactive human behaviors in crowded spaces [10]. Fig. 1 shows the block diagram on the control framework. The key intuition of the framework is the following. The controller takes Model Predictive Control (MPC) framework as a basis which takes current states (position, velocity, and heading) as input and provides a pair of acceleration and steering angle as output. In the MPC controller, the optimization problem is formulated where the objective function is to minimize divergences from a target lane and a desired speed as well as control efforts, while satisfying system dynamics and avoiding collisions. The solver, based on a heuristic algorithm, solves the optimization problem at each time step by exploiting a trained SGAN to predict the other vehicles’ interactive motions that are reactive to controls. Note that the predicted motions are incorporated into the constraint of collision avoidance. The controller designs are detailed in the following sections.

Fig. 1: Diagram of the control framework with a Recurrent Neural network, SGAN. The solver (small box in MPC controller) can be based on different algorithms (either optimization algorithms or heuristic).

Ii-a System Dynamics

We exploit the nonlinear kinematic bicycle model in [13] to represent vehicle dynamics. For the completeness of the paper, the kinematics is re-written:


where (,) is the coordinate of the center of vehicle in Cartesian coordinate, is the inertial heading, is the vehicle speed, is the acceleration of the center of the car in the same direction as the velocity, and and indicate the distance from the center of the car to the front axles and and to the rear axles, respectively. The control inputs are: front steering angle and acceleration . We use Euler methods to discretize the models and denote the discretized model by:


where and .

Ii-B Control Objective

The objective of the controller is to merge to target lane, while avoiding collisions to other vehicles. We assume that it is preferred to change lane sooner. We also assume that smooth accelerations and steering are preferred for drive comfort. For brevity of descriptions, we assume the road is eastbound, i.e., driving from West to East. The objective function is formulated:


where and are predicted states and input at time based on the measurements at time , respectively. is the latitude coordinate of the road-end, is the longitude coordinate of the vertical center of the target lane, is the reference velocity. Each penalty is regularized with , , , , , and , respectively. We ensure the timely lane change with the dynamic weight , written as a convex-function, . The term (7) penalizes the divergence of the center of the vehicle from the vertical center of the target lane. The terms (9) and (10) penalize the control of front wheel angle and acceleration, respectively, for the energy efficiency. The term (11) and (12) penalize the steering rate and jerk, respectively, for drive comfort. Remind that the lateral divergence in (7) can be represented as a divergence in Frenet coordinate for practical use.

Ii-C Constraints for Safety with Recurrent Neural Network

To quantify safety, we consider a distance interval between two vehicles as a metric. That is, if a distance interval between two vehicles is zero, it means they collide into each other. Mathematical calculation of a distance interval depends on how each vehicle is shaped.

Ii-C1 Vehicle Shape Model

We aim to model a vehicle shape as a smooth function that is continuously differentiable, so that the control framework can also apply gradient-based algorithms. We model it with three circles which is illustrated in Fig. 2.

Fig. 2: Vehicle shape modeled by three circles.

With the circle model, the safety constraint against vehicle is written:




and and are the distance from the center to the side and to the front of the vehicle, respectively.

Ii-C2 Interactive Motion Prediction

Remind that drivers’ motions are interactive to each other and their motions must be predicted simultaneously. We utilize social GAN (SGAN) in [10] which efficiently and effectively captures multi-modal interactions between agents. SGAN is composed of a generator and discriminator that are adversarial to each other. That is, the generator generates a set of candidate trajectories, and the discriminator evaluates those trajectories to tell if each trajectory is either real or fake. Both the generator and discriminator are comprised of long-short term memory (LSTM) networks to account for the sequential nature of agents’ motion. The encoder in the generator first learns temporal behavior of each agent and stores the hidden states through the LSTM. The following module pools the motion states of agents with each other to evaluate their interactions. This pooling process is essentially to share history of motion between agents, generating social interactions as a pooled tensor for each agent . The decoder in the generator then predicts multiple trajectories that are socially interactive to each other. SGAN uses adversarial loss between the generator and discriminator, as well as loss between fake and real trajectories. SGAN takes as input a sequence of positions of each agent over an observation time horizon and as output a sequence of positions of each agent over an prediction time horizon . Interested readers are referred to [10] for more details.

Ii-C3 Incorporation of Recurrent Neural Network into Safety Constraints

A trained SGAN predicts coordinates of the center of vehicle and the coordiates are incorporated in the safety constraints (13). To formalize, we consider a trained SGAN as a function that maps from observed trajectories to predicted trajectories:


for observation horizon and prediction horizon , where indicates a predicted value. Given the observations until time , the coordinates of vehicle at time is represented as and .

Ii-D Control Problem Formulation

The complete optimization problem for the receding horizon control is:


subject to:


where and are the minimum and maximum front wheel angle rate, respectively, and and are the minimum and maximum acceleration, respectively. The constraint (21) ensures that the ego vehicle changes the lane before the dead end . Note that the constraints (17) and (18) are non-linear and therefore the problem is non-convex.

Ii-E Heuristic Algorithm

Remind that the inequality constraint (18) is not a convex set. We further suppose that we do not know of mathematical formulations of SGAN, i.e., black-box, and we can only evaluate its output given an input. Along with the non-linear equality constraint (17), it is non-trivial to find a solution with canonical optimization algorithms, such as gradient descent or Newton methods. We propose a rollout-based algorithm that finds locally optimal solutions in time efficient manner. The process is the following. From the current state at time , the controller randomly generates a finite set of control sequences over the time horizon . That is, where . Then the controller evaluates a cumulative cost (16) for each control sequence and chooses one that has a minimum cost over the time horizon . The controller takes the first control input from the optimal sequence and discards the rest. Algorithm 1 formalizes the procedure.

The process of finding the optimal sequence (line 1 in Algorithm 1) is the following. At each time step and with candidate control sequence , the controller (i) runs SGAN to predict the motions of surrounding vehicles, (ii) propagates the ego vehicle through the dynamics (17) given the action , (iii) checks the constraints (18)-(21), and discards the candidate sequence if the constraints are violated, and (iv) updates the cumulative cost (16). Note that evaluating each control sequence candidate can be separable, and therefore a parallel computation framework can be applied to improve computation efficiency.

Init : states ,
other vehicles’ position for all
1 while  and  do
2       Randomly generate a total of control sequences over while satisfying (19), (20)
3       Find the optimal sequence that minimizes cumulative cost over and that is feasible with (18)
5       Propagate through dynamics (17) with the first element of
7       Observe positions of other vehicles at the current time
8       for all
9 end while
Algorithm 1 Monte Carlo Roll-out Algorithm

Algorithm 1 is straightforward to implement, however, it may require a substantial computation power to find a solution real time depending on the time horizon and the sample size . That said, unlike other applications of motion planning algorithms, autonomous driving on road has specific patterns in terms actions in specific driving scenarios. For example, if a vehicle keeps driving in the same lane, large steering angles do not have to be explored. Similarly, if a vehicle changes lane to left, steering angles to right do not have to be explored. From those observations, a smaller size of action spaces can be specified in each driving scenario: (i) keeping lane, (ii) changing lane to left, and (iii) changing lane to right. Denoting action spaces of keeping lane by , changing lane to left by , and changing lane to right by , each action space can read:


where , indicates steering to left, and indicates steering to right. Action space of changing lane to left (23) indicates that we only consider steering to left when turning left and the same logic is applied to the action space of changing lane to right (24).

Iii Simulation Study

Iii-a Driver Model of Cooperativeness

For the simulation study, we have a driver model of which the longitudinal driving behavior is governed by intelligent driver model (IDM) in [22] and lane changing behavior is governed by the strategy of Minimizing Overall Braking Induced by Lane changes (MOBIL) in [12]. The driver model is also based on the bicycle kinematics in Section II-A. Additionally, we introduce a parameter for cooperativeness to the driver model. If , a vehicle stops and waits until another vehicle within the selective yield zone (zone B in Fig. 3) overtakes, if , the vehicle ignores another and drives forward. If , the yield action is randomly sampled from the Bernoulli distribution with probability .

Fig. 3: Forced yield zone (red area labeled with A) and selective yield zone (yellow area labeled with B). The dashed lines indicate the boundaries of the center lane. If another vehicle from the next lane intersects with the path of the vehicle, i.e., in zone A, the vehicle in the center lane must stop and wait until the other vehicle cuts into the center lane. If the other vehicle from next lane intersects with zone B, the vehicle in the center lane decides either yield or not, according to the cooperativeness parameter . Zone B corresponds to a vertical perception range, and the range can be adjusted by .

Iii-B Simulation Scenario Overview

In the simulation study, we consider a scene of highway in dense traffic, illustrated in Fig. 4. In the scene, the ego vehicle (in green) plans to change the lane from the current lane (lane 1) to the next lane (lane 2). However, the vehicles are driving with narrow distance intervals to each other, which are not enough for the ego vehicle to cut in without cooperating with other vehicles (in blue). Given the challenge, the controller finds a pair of acceleration and steering angle at each time step to induce the other vehicles to make a space for the ego vehicle to overtake.

Only the ego vehicle uses the controller designed in Section II and the other vehicles (in blue) are based on the driver model in the previous Section III-A with heterogeneous parameter settings. The controller design parameters are such that divergence from the target lane is more significantly penalized compared to the other penalty terms. The list of the controller design parameters is tabulated in Table I.

The parameters of the driver model are set in the following manner: (i) the minimum distance interval between vehicles is shorter than the vehicle length so that the traffic can be highly dense, (ii) other drivers drive realistically, e.g., physically feasible acceleration and steering angles, and (iii) other drivers’ motions are noisy, e.g., oscillating center positions and noisy acceleration behaviors, to test robustness of the controller. The driver model parameters are tabulated in Table II. Note that parameters of each driver are sampled from uniform distributions, denoted by , to account for heterogeneous behaviors of drivers. Nonetheless, we assume that all vehicles are in the same size for brevity. We also assume that vehicles have perfect perceptions; that is, no offset in positions of vehicles.

The simulation study utilizes [14] and runs on a Linux machine (Intel(R) Xeon(R) CPU E5-2640 v4 @ 2.40GHz with NVIDIA GeForce GTX TITAN Black).

Fig. 4: Test merging scenario with three lanes. Green indicates the ego vehicle, red indicates a stopped vehicle, i.e., dead-end of the lane, and blue indicates other drivers. More blue corresponds to more cooperative, i.e., cooperativeness parameter of higher value. Each number in white rectangle indicates a lane number.
Param Description Value
Receding time horizon 2.8
Control sequence sample size 32
Time step size 0.4
Weight on divergence from a target lane 12000
Weight on divergence from a desired speed 1000
Weight on steering angle 500
Weight on acceleration 500
Weight on steering rate 100
Weight on jerk 100
Minimum steering angle -0.3
Maximum steering angle 0.3
Minimum acceleration -4.0
maximum acceleration 3.5
End of current lane 50
Reference velocity 10
TABLE I: Controller design parameters
Param Description Value
Reference velocity
Safe time headway
Maximum acceleration
Comfortable deceleration
Acceleration exponent
Minimum distance to front car
Perception range
Length from center to side of car 0.9
Length from center to front of car 2
TABLE II: Driver model design parameters

Iii-C Training SGAN for Motion Prediction

Table III lists hyper parameters of SGAN used in the simulation study. Training and validation dataset are generated by simulations only with the driver model in III-A with heterogeneity in the design parameters in Table II. The dataset are collected from multiple scenarios in various traffic density, from free flow to dense traffic. In the dataset, we also add noise in positions so that the trained neural network becomes more robust to noise input. With a total of 27550 data points, training SGAN with GPU takes approximately 18 hours. An example of motions predicted by SGAN, compared to groud truth, is illustrated in Fig. 5.

The SGAN has 1.872 of average displacement error and 2.643 of final displacement error for during training. It is important to highlight that the training dataset does not include the scenario that we test our controller with. This is to see whether SGAN trained in one environment can still apply in another environment, in which SGAN is not trained. Note that SGAN can provide a distribution of predicted motions, which then can be incorporated to the optimization problem as a chance constraint for robustness. Also, different methods for designing loss function for SGAN training can be applied, which remain for future work.

Param Description Value
Observation time horizon
Prediction time horizon
Batch size
Embedding dimension
MLP dimension
Hidden layer dimension of encoder (generator)
Hidden layer dimension of decoder (generator)
Hidden layer dimension of encoder (discriminator)
Bottleneck dimension in Pooling module
Generator learning rate
Discriminator learning rate
TABLE III: SGAN parameters
Fig. 5: Motion predictions by SGAN. Rectangles in green, blue, and red indicate ego, other driving, and stopped vehicles, respectively. Dashed lines represent the boundary of lanes. Each point of circle indicates the center of vehicle at each time step. The triangle labeled with highlights a center position at time , .

Iii-D Simulation Results and Analysis

Fig. 6 illustrates the simulated position trajectories. It is shown that the ego vehicle (in green) often stops and waits before merging (at and ), since otherwise the safety constraint (18) can be violated. As the ego vehicle gets closer to the target lane (the middle lane), the vehicle on the target lane reacts by slowing down the speed, to make a space for the ego vehicle to cut in (at ). As soon as an enough space is made, the ego vehicle merges into the target lane.

Fig. 6: Simulated position trajectories. A dot indicates a center coordinate of a vehicle at each time step and the color of dots distinguishes between trajectories of vehicles. A distance between two successive dots demonstrates how fast a vehicle moves. The rectangles illustrate the shape of the vehicles (colors are described in the caption of Fig. 5). The positions of the rectangles indicate the initial positions.

These interactive behaviors of the ego vehicle can be also seen in Fig. 7. While the ego vehicle is interacting with other vehicles to merge over 3.218.6, both the acceleration and steering angle fluctuate significantly to quickly get closer to the while avoiding collisions. Over 18.620, the ego vehicle changes lane and the acceleration still fluctuates. This is again because the ego vehicle needs to move quick, but must stop whenever another vehicle gets too close. Once the ego vehicle merges into the target lane, after 20, the acceleration and steering angle fluctuate in a smaller range, and drives smoothly.

Fig. 7: Acceleration (top) and steering angle (bottom) profile of the ego vehicle. The ego vehicle initiates merging to a target lane at time 18.6.
Constant Velocity SGAN Ground Truth
Success rate Cooperative 96 99 99
Mixed 90 97 97
Aggressive 48 81 89
Mean time to merge Cooperative 25.95 () 23.97 () 24.53 ()
Mixed 26.97 () 25.76 () 26.21 ()
Aggressive 35.24 () 29.32 () 28.31 ()
Mean min distance Cooperative 0.69 () 0.49 () 0.72 ()
Mixed 0.58 () 0.42 () 0.61 ()
Aggressive 0.35 () 0.30 () 0.55 ()
TABLE IV: Monte Carlo simulation results (a total of 100 simulations each) for three motion prediction models, constant velocity, SGAN, and ground truth, in different level of cooperativeness. A trip is “successful” if the ego vehicle changes lane to the target lane within the time limit (40 [s]). Until the time limit, the target lane is packed with vehicles and there is no empty space to which the ego vehicle can overtake without cooperating with other drivers. The “time to merge” indicates the time period [s] that the ego vehicle takes to change lane to the target lane. The “min distance” indicates the minimum distance [m] from the ego vehicle to other vehicles at any point of simulation. The value in the parentheses shows the standard deviation.

We also quantitatively validate the controller, based on Monte Carlo simulations. We consider two comparative studies, (i) one with respect to different cooperation levels and (ii) the other with respect to different prediction models. In each simulation, all vehicles are randomly positioned, except for the stopped vehicle (dead-end of the road), and the driver model parameters in Table II are sampled from uniform distributions. The simulation results are summarized in Table IV. In the comparative study with respect to different cooperation levels, we consider three cases: when all drivers are cooperative (i.e., for all driver in the scene), when all drivers are aggressive (i.e., ), and when they are mixed (i.e., ). It is important to highlight that the ego vehicle does not know how cooperative the other drivers are. We found that when the drivers are all cooperative, changing lane to the target lane within the time limit is more likely than when the drivers are either partially cooperative (i.e., mixed) or non-cooperative (i.e., aggressive). Still, it is possible that the ego vehicle cannot change the lane within the time limit (i.e., not 100% success) and ends up being stranded on the current lane. This is because the drivers may have short perception ranges, determined by , which can result in the drivers not detecting the ego vehicle and keeping their speed, even though they are cooperative. Nonetheless, even when all drivers are aggressive, the controller can successfully change lane in most of the cases. One caveat is that the ego vehicle can get quite close to the other vehicles, especially when the other drivers are not being cooperative and pass the ego vehicle (mean min distance in Table IV), although no collision was observed over the simulations.

We then compare the performance of the controller between with SGAN and with a simple motion prediction method: constant velocity model, which predicts that a vehicle will keep the same speed in the next time step. We also compare it with perfect predictions of other vehicles’ motions. In general, we found that with a more accurate prediction model and with more cooperative drivers, the success rate increases. In fact, when all drivers are cooperative, all three prediction models can lead to a successful lane change. That is, the imprecision of predictions on drivers’ interactive motions is not critical when the drivers are cooperative, since the drivers are easily imposed to cooperate with rough control inputs resulted by imprecise predictions. This, however, would be no longer valid if the drivers are aggressive. When they are aggressive, the ego vehicle needs a precise control that keenly imposes the other drivers’ cooperation, which cannot be evaluated by the simple constant velocity model. Consequently, the success rate with SGAN is significantly higher (+33) than that with the simple constant velocity model when the drivers are aggressive. We also found that the controller with more accurate predictions tends to change lane more quickly. That is, a prediction error of other vehicles’ motions leads the ego vehicle to be positioned where it cannot impose the coming vehicle to slow down to make a room for the ego vehicle. In consequence, the ego vehicle must let the coming vehicle pass and waits for the vehicle coming next to cooperate. Finally, the minimum distances tend to be significantly larger with perfect predictions compared to that with SGAN. That is, more precise predictions help the controller secure a safer trajectory in lane change.

Finding a minimum distance between two vehicles analytically is computationally efficient, even though it is computed as the minimum distance among any pairs of circles. The circle model takes about in average, to compute a minimum distance between two vehicles at a time. In consequence, finding one control input at each time step takes less than , which can be used for realtime control.

Iii-E Limitations and Future Work

No collision is observed in the simulation studies, however, it is still possible that an inaccurate prediction could result in collision, i.e., not robust to safety. In fact, the controller cannot be robust to other drivers’ behaviors as there is no such “safe” area that the ego vehicle can merge without cooperation of other drivers. Still, improved predictions can help the ego vehicle keeping the distance to the other vehicles, as shown in Table IV. Improving SGAN predictions by designing training set, loss functions, or network structures, remains for future work. In addition to improving the predictions, we can design a safety buffer that rules out aggressive merging behaviors when the ego vehicle is too close to another vehicle. One idea can be incorporating a statistical model in parallel with SGAN that tells whether a prediction from SGAN is very unlikely. This idea directly relates statistical model checking [15], which also remains for future work. Another limitation is that the proposed algorithm (Algorithm 1) is heuristic. That is, even in an identical scenario, the controller may find a different solution. This might be acceptable in many cases unless the constraints are not violated, however, an advanced optimization algorithm can be further studied to find a locally optimal solution with a convergence guarantee.

Iv Conclusion

This paper formalizes a control framework of autonomous driving for lane changing in dense traffic. This paper particularly focuses on a heavy traffic where vehicles cannot merge into a lane without cooperating with other drivers. The control framework incorporates a Recurrent Neural Network (RNN) architecture, especially a state-of-the-art Social Generative Adversarial Network (SGAN), to predict interactive motions of multiple human drivers. The predicted motions are systematically evaluated in safety constraints to evaluate control inputs. A heuristic algorithm based on Monte Carlo simulation along with roll-out approach is developed to find locally optimal solutions in computationally efficient manner. The qualitative and quantitative analysis of simulation studies validate the strong potential of the proposed control framework in achieving automatic lane change by cooperating multiple human drivers, while avoiding collisions.


The authors thank David Isele at Honda Research Institute USA and Huckleberry Febbo and Ran Tian at University of Michigan, Ann Arbor, for their insightful comments and suggestions. Sangjae Bae contributed the work during his internship at Honda Research Institute USA.


  • [1] A. Alahi, K. Goel, V. Ramanathan, A. Robicquet, L. Fei-Fei, and S. Savarese (2016) Social lstm: human trajectory prediction in crowded spaces. In Proceedings of the IEEE conference on computer vision and pattern recognition, pp. 961–971. Cited by: §I.
  • [2] S. Bae, Y. Choi, Y. Kim, J. Guanetti, F. Borrelli, and S. Moura (2019) Real-time ecological velocity planning for plug-in hybrid vehicles with partial communication to traffic lights. arXiv preprint arXiv:1903.08784. Cited by: §I.
  • [3] S. Bae, Y. Kim, J. Guanetti, F. Borrelli, and S. Moura (2018) Design and implementation of ecological adaptive cruise control for autonomous driving with communication to traffic lights. arXiv preprint arXiv:1810.12442. Cited by: §I.
  • [4] M. Bojarski, P. Yeres, A. Choromanska, K. Choromanski, B. Firner, L. Jackel, and U. Muller (2017) Explaining how a deep neural network trained with end-to-end learning steers a car. arXiv preprint arXiv:1704.07911. Cited by: §I.
  • [5] M. Bouton, A. Nakhaei, K. Fujimura, and M. J. Kochenderfer (2019) Cooperation-aware reinforcement learning for merging in dense traffic. arXiv preprint arXiv:1906.11021. Cited by: §I.
  • [6] R. Chandra, Y. Selvaraj, M. Brännström, R. Kianfar, and N. Murgovski (2017) Safe autonomous lane changes in dense traffic. In 2017 IEEE 20th International Conference on Intelligent Transportation Systems (ITSC), pp. 1–6. Cited by: §I.
  • [7] C. Chen, A. Seff, A. Kornhauser, and J. Xiao (2015) Deepdriving: learning affordance for direct perception in autonomous driving. In Proceedings of the IEEE International Conference on Computer Vision, pp. 2722–2730. Cited by: §I.
  • [8] C. Choi, A. Patil, and S. Malla (2019) DROGON: a causal reasoning framework for future trajectory forecast. arXiv preprint arXiv:1908.00024. Cited by: §I.
  • [9] J. C. Doyle, B. A. Francis, and A. R. Tannenbaum (2013) Feedback control theory. Courier Corporation. Cited by: §I.
  • [10] A. Gupta, J. Johnson, L. Fei-Fei, S. Savarese, and A. Alahi (2018) Social gan: socially acceptable trajectories with generative adversarial networks. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pp. 2255–2264. Cited by: §I, §II-C2, §II.
  • [11] C. Hatipoglu, U. Ozguner, and K. A. Redmill (2003) Automated lane change controller design. IEEE transactions on intelligent transportation systems 4 (1), pp. 13–22. Cited by: §I.
  • [12] A. Kesting, M. Treiber, and D. Helbing (2007) General lane-changing model mobil for car-following models. Transportation Research Record 1999 (1), pp. 86–94. Cited by: §III-A.
  • [13] J. Kong, M. Pfeiffer, G. Schildbach, and F. Borrelli (2015) Kinematic and dynamic vehicle models for autonomous driving control design. IEEE Intelligent Vehicles Symposium, Proceedings 2015-August, pp. 1094–1099. External Links: Document, ISBN 9781467372664 Cited by: §I, §II-A.
  • [14] S. I. S. Laboratory (2019) AutomotiveDrivingModels.jl. GitHub. Note: Cited by: §III-B.
  • [15] A. Legay, B. Delahaye, and S. Bensalem (2010) Statistical model checking: an overview. In International conference on runtime verification, pp. 122–135. Cited by: §III-E.
  • [16] J. Levinson, J. Askeland, J. Becker, J. Dolson, D. Held, S. Kammel, J. Z. Kolter, D. Langer, O. Pink, V. Pratt, et al. (2011) Towards fully autonomous driving: systems and algorithms. In 2011 IEEE Intelligent Vehicles Symposium (IV), pp. 163–168. Cited by: §I.
  • [17] J. E. Naranjo, C. Gonzalez, R. Garcia, and T. De Pedro (2008) Lane-change fuzzy control in autonomous vehicles for the overtaking maneuver. IEEE Transactions on Intelligent Transportation Systems 9 (3), pp. 438–450. Cited by: §I.
  • [18] D. Sadigh, S. Sastry, S. A. Seshia, and A. D. Dragan (2016) Planning for autonomous cars that leverage effects on human actions.. In Robotics: Science and Systems, Vol. 2. Cited by: §I.
  • [19] G. Schildbach and F. Borrelli (2015) Scenario model predictive control for lane change assistance on highways. In 2015 IEEE Intelligent Vehicles Symposium (IV), pp. 611–616. Cited by: §I.
  • [20] S. Shalev-Shwartz, S. Shammah, and A. Shashua (2016) Safe, multi-agent, reinforcement learning for autonomous driving. arXiv preprint arXiv:1610.03295. Cited by: §I.
  • [21] Y. Tian, K. Pei, S. Jana, and B. Ray (2018) Deeptest: automated testing of deep-neural-network-driven autonomous cars. In Proceedings of the 40th international conference on software engineering, pp. 303–314. Cited by: §I.
  • [22] M. Treiber, A. Hennecke, and D. Helbing (2000) Congested traffic states in empirical observations and microscopic simulations. Physical review E 62 (2), pp. 1805. Cited by: §III-A.
  • [23] S. Ulbrich and M. Maurer (2013) Probabilistic online pomdp decision making for lane changes in fully automated driving. In 16th International IEEE Conference on Intelligent Transportation Systems (ITSC 2013), pp. 2063–2067. Cited by: §I.
  • [24] M. P. Vitus and C. J. Tomlin (2013) A probabilistic approach to planning and control in autonomous urban driving. In 52nd IEEE Conference on Decision and Control, pp. 2459–2464. Cited by: §I.
  • [25] F. You, R. Zhang, G. Lie, H. Wang, H. Wen, and J. Xu (2015) Trajectory planning and tracking control for autonomous lane change maneuver based on the cooperative vehicle infrastructure system. Expert Systems with Applications 42 (14), pp. 5932–5946. Cited by: §I.
Comments 0
Request Comment
You are adding the first comment!
How to quickly get a good reply:
  • Give credit where it’s due by listing out the positive aspects of a paper before getting into which changes should be made.
  • Be specific in your critique, and provide supporting evidence with appropriate references to substantiate general statements.
  • Your comment should inspire ideas to flow and help the author improves the paper.

The better we are at sharing our knowledge with each other, the faster we move forward.
The feedback must be of minimum 40 characters and the title a minimum of 5 characters
Add comment
Loading ...
This is a comment super asjknd jkasnjk adsnkj
The feedback must be of minumum 40 characters
The feedback must be of minumum 40 characters

You are asking your first question!
How to quickly get a good answer:
  • Keep your question short and to the point
  • Check for grammar or spelling errors.
  • Phrase it like a question
Test description