Posts

Understanding human driver behaviour

By Ross Walker, Research Fellow in Autonomous Cars, Cranfield University

 

The Multi-Car Collision Avoidance (MuCCA) Project will develop a next-generation driver aid that aims to avoid multi-car collisions on motorways – if an accident cannot be avoided, the MuCCA system will attempt to minimise its consequences (both injuries and damage). But before the MuCCA vehicles are able to react to these potentially dangerous situations, they have to understand how a human driver would react. And to do so, we need to develop a training algorithm that predicts how drivers behave when avoiding collisions.

 

Accident prevention

Drivers avoid accidents by reacting fast enough to a dangerous situation, however for multiple car collisions simply reacting may not be enough. By modelling how human drivers behave on motorways, and how the proximity of surrounding cars influence their behaviour, the movement of the cars that surround the MuCCA vehicle can be predicted over the next few seconds. This can allow any potential accidents to be recognised in advance, and consequently avoided before they have chance to begin developing.

 

Data acquisition

To predict potential accidents we first need to learn the driver trajectories that result in them. To safely obtain such trajectory data we use simulation software so that accidents can be created within a virtual (safe) environment.

 

Tailoring scenarios to the MuCCA Project

The MuCCA project deals with up to five vehicles moving along a passage of UK motorway; the prediction algorithm adopts the same parameters, and various training scenarios are devised so that meaningful human driving behaviour can be captured in the simulator.

 

To begin, a simple test should always be carried out when initially developing an algorithm – this is to ensure results are as expected and the algorithm is behaving correctly. A simple behaviour was captured from a single vehicle having to pass by a broken down car in their lane. This was primarily to gauge if the driver’s reaction time to the blocked lane replicated a real-life scenario.

The introduction of multiple cars allowed us to capture data on how well the drivers maintained motorway lane discipline. It also gave insight into how drivers undertake, lane-hog, or tailgate, which all increase the likelihood of a collision.

a) Which lane will the leading HDV move to?

b) How will the back HDV cope with the front HDV moving in front?

c) What will the right HDV do if the left move is blocked?

 

Obtaining trajectory examples of standard driving etiquette allows the network to learn normal driving behaviour; being able to predict this is as important as predicting collisions.

 

These scenarios are designed to force situations where collisions are likely, and potentially unavoidable. Gathering data like this is what will teach the network to learn behaviour that will result in collisions, allowing the MuCCA system to take a different route that will avoid an accident.

d) How will the HDVs negotiate past the staggered obstacles?

e) How will the HDVs compete to move past the obstacles?

 

All algorithms must be pushed to their limits, and a scenario where the cars/drivers behave abnormally or even erratically also be trialed, even if it is not seen on a standard motorway (e.g. a car travelling in the wrong direction). This way we can evaluate how well the algorithm copes under extreme situations.

 

Predicting car trajectories

To predict how drivers behave we train a neural network computer algorithm to learn human driving patterns. Biologically inspired by the synaptic connections between neurons of the brain, we use a technique known as deep learning, where multiple densely-connected layers of neurons teach themselves to recognise patterns.

Neural networks learn through observing similar data. By feeding in the recorded trajectories of multiple cars, taken from our simulator, the network can begin to recognise similarities in driving behaviours. As the network learns – evaluating these trajectories over multiple passes (epochs) – it begins to predict increasingly accurate trajectories. After each epoch, the loss (difference) between the real-values and the predicted-values are measured. It is the aim of the network to decrease this loss so that over the training period the predictions become steadily closer to the desired outcome.  The predictions made by the network reflect the driving behaviours of real human drivers and are much closer to the desired outcome.

 

The performance of the trained neural network is then evaluated using new data – this is to ensure it can  successfully predict driving behaviour/trajectories that it may not have seen during training (known as generalisation).  It is vital the network generalises well as it would be impossible to train it with every car movement possible – the number of potential interactions would be astronomical.  Selecting and training the network with a good representation/cross-section of all types of driving behaviour will allow the network will understand the general types of interaction seen between drivers on the road and infer appropriate predictions.

 

Training the network

The network is trained over 5,000 epochs using the data obtained from the simulator. As each training epoch passes the model improves until it begins to plateau, and may even begin to deteriorate. This is when the network trains the model to predict the ‘noise’ in the data as well, and fit the predicted trajectories to match the training data exactly. This is known as ‘over-fitting’ and will mean the network will not generalise well, and training must be stopped before this happens.

All predictions use a 1 second time-series input (string of red dots) to predict a 3 second time-series output (string of green dots), at a sampling rate of 10Hz.  In other words, we record the position of a vehicle once every 100 milliseconds and then use the 10 most recent positions as the input. That way we can tell the network what the surrounding vehicles have just done, and the network predicts what will happen over the next 3 seconds. The car fitted with the MuCCA system (purple square) is predicting the direction of the driver, as well as the direction of the surrounding cars (yellow squares), including the broken-down car (blue square) blocking the lane. The network successfully predicts the trajectories of each car and is also able to predict the collision of a broken-down car blocking a lane, as well as the movement of the broken down car following the impact.

 

The results show that the accuracy of the predictions compared to the ground truth (string of blue dots) is almost indistinguishable. Had the car responsible for the accident been fitted with the MuCCA system the predictions made would have raised the issue of the predicted accident and taken steps to intervene, preventing the collision from occurring at all.

 

There is still much work to be done, but this is a very promising start and illustrative of the benefits the MuCCA system could bring to motorway driving. The more we can understand human driving, the more complex and accurate the MuCCA vehicle can be when responding to dangerous situations – this means safer roads and fewer accidents.

MuCCA is Research & Development project funded by CCAV (Centre for Connected & Autonomous Vehicles) and InnovateUK, being delivered by a consortium consisting of AppIus IDIADA, Cosworth, Cranfield University, SBD, Transport Systems Catapult and Westfield Sportscars. Keep up to date with the latest news on twitter @muccaproject

Decision making algorithms

MuCCA cooperative path-planning/decision making algorithms and its applications on motorways

Are we ready for autonomous driving? How autonomous driving can assist humans on the motorways? These issues are recurrent nowadays in the face of the biggest challenges that are appearing to building safety systems on our roads. Autonomous driving systems can help decrease fatalities caused by traffic accidents. However, this technology has a good deal of aspects to be improved so as planning obstacle-free paths for a vehicle to increase highway safety.

 

A challenging research task for autonomous driving is the coordination of several autonomous cars. This new technology is the guarantee of making car traffic safer in the future. Cooperative systems have just recently started to be explored in the context of automated driving and are expected to become increasingly common on motorways. In this context, the MuCCA (Multi-Car Collision Avoidance) project, funded by the Centre for Connected and Autonomous Vehicles (CCAV) via Innovate UK, is developing a cooperative system that will enable connected and autonomous vehicles (CAVs) to avoid collisions. As part of this project, Cranfield University is responsible for developing robust algorithms for path prediction and decision-making/inter-vehicle communication.

 

The actual version of the algorithms developed considered a strategy based on model predictive control (MPC) to make cooperative decisions to avoid a potential accident. We explored an extending cooperative path-planning approach to traffic where human drivers are present in on-road scenarios. In the not-too-distant future, it is feasible that cooperative solutions to driving manoeuvres that would enable autonomous vehicles to simultaneously coexist on the roads with vehicles driven by humans. In this context, the human driver model (HDM) needs to be integrated with the autonomous planning in order to safely interact with the autonomous vehicles on the road.

 

Our cooperative planning framework re-plans the route of the vehicle for each step and can be summarized in Figure 1. This solution is able to provide the following improvements and capabilities:

 

  • Incorporation of constraints for smoother manoeuvring when avoiding obstacle. System constraints are the set of rules to drive on roads, road boundaries and logical propositions that guarantee a safe distance to other MuCCA vehicles and obstacles.
  • Increased prediction horizon for path planning and more short horizon for trajectory control in order to get better predictions and precise vehicle control.
  • Demonstrates V2V communications to avoid collisions. The plans of other vehicles can be communicated in real time so that each vehicle communicates its desired location.
  • Able to demonstrate path planner at higher speeds and varying vehicle speeds.
  • Incorporation of multiple human driven vehicles into path planning process. Considers multiple human driver path predictions from either the neural network model or the ANFIS (artificial neuro- fuzzy inference system) model for the HDM.

 

MuCCA cooperative planning framework

Figure 1. The basic concept of cooperative path-planning as a model-based and optimization-based solution.

 

The first conclusions were promising since our system was able to successfully avoid human driven vehicles along with obstacle and other MuCCA vehicles. The results of this first investigation for the cooperative path planning and decision making algorithms developed by Cranfield will be presented at the 9th International Conference on Intelligent Systems (IS’18), an international event supported by IEEE. This conference will be held in Madeira Island, Portugal, on 25-27 September 2018.

 

 Dr Icaro Viana, Research Fellow in Autonomous Cars: Cooperative Guidance, Cranfield University.