Learning Accurate, Comfortable and Human-like Driving
Simon Hecker Dengxin Dai Luc Van Gool









Learning Accurate, Comfortable and Human-like Driving
    Simon Hecker

Computer Vision Lab

ETH Zürich

heckers@vision.ee.ethz.ch





Dengxin Dai

Computer Vision Lab

ETH Zürich

dai@vision.ee.ethz.ch
Luc Van Gool

Computer Vision Lab

ETH Zürich

vangool@vision.ee.ethz.ch

    December 30, 2023
===============================================================================================================================================================================================================================






Autonomous vehicles are more likely to be accepted if they drive accurately, comfortably, 
but also similar to how human drivers would. This is especially true when autonomous and 
human-driven vehicles need to share the same road. The main research focus thus far, however, 
is still on improving driving accuracy only. This paper formalizes the three concerns with the aim of accurate, 
comfortable and human-like driving. Three contributions are made in this paper. 
First, numerical map data from HERE Technologies are employed for more accurate driving; 
a set of map features – which are believed to be relevant to driving – are engineered to navigate better. 
Second, the learning procedure is improved from a pointwise prediction to a sequence-based prediction and passengers' 
comfort measures are embedded into the learning algorithm. Finally, we take advantage of the advances in 
adversary learning to learn human-like driving; specifically, the standard L1 or L2 loss is augmented by 
an adversary loss which is based on a discriminator trained to distinguish between human driving and machine driving. 
Our model is trained and evaluated on the Drive360 dataset, which features 60 hours and 3000 km of 
real-world driving data. Extensive experiments show that our driving model is more accurate, more 
comfortable and behaves more like a human driver than previous methods. The resources of this work will be 
released on the project page. 

 





§ INTRODUCTION




The deployment of autonomously driven cars is imminent, given the advances in perception, robotics and sensor technologies. It has been hyped that autonomous vehicles of multiple companies have driven millions of miles. Yet, their platforms, algorithms and assessment results are not shared with the whole community. It is believed that autonomous vehicles are more likely to be accepted if they drive accurately, comfortably and drive the same way as human drivers would. The rationale is not that human-style driver would somehow be superior, but rather that humans will find it easier to interact and feel at ease with autonomous cars in such case. This concern is especially important for the near future, when autonomous vehicles are new and share the road with human-driven vehicles. Despite its importance, this topic has not received much attention. The current research focus is only on developing more accurate driving methods. This paper formalizes the three concerns into a single learning framework aiming at accurate, comfortable and human-like driving. 

Driving Accuracy. The last years have seen tremendous progress in academia on learning driving models <cit.>. However, many of these systems are deficient in terms of the sensors used, when compared to the driving systems developed by large companies. For instance, many algorithms only use a front-facing camera <cit.> (with few exceptions <cit.>); Maps are exploited only for simple directional commands <cit.> or video rendering <cit.>. While these setups are sufficient to allow the community to study many challenges, developing algorithms for fully autonomous cars requires the use of numerical maps of high fidelity. 

Ride Comfort. Current driving algorithms <cit.> mostly treat driving as a regression problem with i.i.d individual training samples, e.g. regressing the low-level steering angle and speed for a given data sample. Yet, driving is a continuous sequence of events over time. Longitudinal and lateral control need to be coupled and these coupled operations need to be combined over time for a comfortable ride <cit.>. Thus, driving models need to be learned with continuous data sequences and proper passenger comfort measures need to be embedded into the learning system.   
While research on passenger comfort started to receive some attention <cit.>, it hardly did so in learning driving models. To the best of our knowledge, no published work on learning driving models has incorporated passenger comfort measures. This work minimizes both longitudinal and lateral oscillations, as they contribute significantly to passengers' motion sickness <cit.>.   

Human-like Driving. It is believed that autonomous vehicles will be better received if they behave like human drivers <cit.>. During the last years, several human-driven cars crashed into autonomous cars. Thankfully, damages were limited. Although there were too few of these cases yet to clearly reveal the underlying causes, experts believe that part of the problem lies with non-human-like driving behaviours of the autonomous cars. In this work, we take advantage of adversary learning to teach the car about human-like driving. Specifically, a discriminator is trained, together with our driving model, to distinguish between human driving and our machine driving. The driving model is trained to be accurate, comfortable, and at the same time to fool the discriminator so that it believes that the driving performed by our method was by a human driver. A new evaluation criterion is proposed to score the human-likeness of a driving model. 











This work makes four major contributions: 1) obtaining numerical map data for real-world driving data, engineering map features and showing their effectiveness in a learning to drive task; 2) incorporating ride comfort measures into an end-to-end driving framework; 3) incorporating human-like driving style into an end-to-end driving framework; and 4) improving the learning procedure of end-to-end driving from pointwise predictions to sequence-based predictions. As a result, we formalize the three major concerns about autonomous driving into one learning framework. The result is experimentally demonstrated be a more accurate, comfortable and human-like driving model. 












§ RELATED WORK





Learning Driving Models.
Significant progress has been made in autonomous driving in the last few years. Classical approaches require the recognition of all driving-relevant objects, such as lanes, traffic signs, traffic lights, cars and pedestrians, and then perform motion planning, which is further used for final vehicle control <cit.>. These type of systems are sophisticated, represent the current state-of-the-art for autonomous driving, but they are hard to maintain and prone to error accumulation over the pipeline. 


End-to-end mapping methods on the other hand construct a direct mapping from the sensory input to the maneuvers. The idea can be traced back to the 1980s <cit.>. Other more recent end-to-end examples include <cit.>. In <cit.>, the authors trained an end-to-end method with a collection of front-facing videos. The idea was extended later on by using a larger video dataset <cit.>, by adding side tasks to regularize the training <cit.>, by introducing directional commands <cit.> and route planners <cit.> to indicate the destination, by using multiple surround-view cameras to extend the visual field <cit.>, by adding synthesized off-the-road scenarios <cit.>, and by adding modules to predict when the model fails <cit.>. The main contributions of this work, namely using numerical map data, incorporating ride comfort measures, and rendering human-like driving in an end-to-end learning framework, are complementary to all methods developed before.   

There are also methods dedicated to robust transfer of driving policies from a synthetic domain to the real world domain <cit.>. Some other works study how to better evaluate the learned driving models <cit.>. Those works are complementary to our work. Other contributions have chosen the middle ground between traditional pipe-lined methods and the monolithic end-to-end approach. They learn driving models from compact intermediate representations called affordance indicators such as distance to the front car and existence of a traffic light <cit.>. Our engineered features from numerical maps can be considered as some sort of affordance indicators. Recently, reinforcement learning for driving has received increased attention <cit.>. The trend is especially fueled by the release of multiple driving simulators <cit.>.  


Navigation Maps. Increasing the accuracy and robustness of self-localization on a map <cit.> and computing the fastest, most fuel-efficient trajectory from one point to another through a road network <cit.> have both been popular research fields for many years. By now, navigation systems are widely used to aid human drivers or pedestrians. Yet, their integration for learning driving models has not received due attention in the academic community, mainly due to limited accessibility <cit.>.  We integrate industrial standard numerical maps – from HERE Technologies – into the learning of our driving models. We show the advantage of using numerical maps and further combine the engineered features of our numerical maps with the visually rendered navigation routes by <cit.>.  
 

Ride Comfort. Cars transport passengers. This has led to passenger comfort research for human-driven vehicles <cit.>. Driver comfort is also considered when developing the control system of human-driven vehicles <cit.>. Autonomous cars can lead to concerns about how well-controlled such a car is <cit.>, motion sickness <cit.> and apparent safety <cit.>. 
While research on passenger comfort started to receive more attention <cit.>, it is still missing in current driving models. To address this problem, this work incorporates passenger comfort measures into learned autonomous driving models. 




Human-like Driving. A large body of work has studied human driving styles <cit.>. Statistical approaches were employed to evaluate human drivers and to suggest improvements <cit.>. This line of research inspired us to ask whether one can learn and improve machine driving behaviour such that it is very human-like?. Human-like driving is hard to quantify. Fortunately, recent advances in adversarial learning provide the tools to extract the gist of human-like driving, using it to adjust machine driving so that it becomes more human-like. Some work has studied human-like motion planning of autonomous cars, but it was constrained to simulated scenarios <cit.>. The closest work to ours was done by Kuderer et al. <cit.> where a set of manually-crafted features are used to characterize human driving style. Our method learns the features directly from the data using adversarial neural networks.    
  









 


§ APPROACH


 In this section we describe our contributions to improve end-to-end driving models: in terms of driving accuracy, rider comfort, and human-likeness. 
 




 §.§ Accurate Driving



End-to-end driving has allowed the community to develop promising driving models based on camera data <cit.>. The focus has mainly been on perception, not so much navigation. Thus far, the representations for navigation are either primitive directional commands in a simulation environment <cit.> or rendered videos of planned routes in real-world environments <cit.>. 

We contribute 1) augmenting real-world driving data with numerical map data from HERE Technologies; and 2) designing map features believed to be relevant for driving and integrating them into a driving model. To the best of our knowledge, this work is the first to introduce large-scale numerical map data to driving models in real-world scenarios. Data acquisition and feature design are discussed in Sec. <ref>, and  the usefulness of the map data is validated in Sec. <ref>.



We adopt the driving model developed in <cit.>. Given the video I , the map information M, and the vehicle's location L, a deep neural network is trained to predict the steering angle s and speed v for a future time step. 
All data inputs are synchronized and sampled at the same sampling rate f, meaning the vehicle makes a driving decision every 1/f seconds. The inputs and outputs are represented in this discretized form. 

We use t to indicate the time stamp, such that all data can be indexed over time. For example, I_t indicates the current video frame and v_t the vehicle's current  speed. Similarly,  I_t-k is the k^th previous video frame and s_t-k is the k^th previous steering angle. Since predictions need to rely on data of previous time steps, we denote the k recent video frames by 𝐈_[t-k+1,t]≡⟨ I_t-k+1, ..., I_t⟩, and the k recent map representations by 𝐌_[t-k+1,t]≡⟨ M_t-k+1, ..., M_t⟩. 


Our goal is to train a deep network that predicts desired driving actions from the visual observations and the planned route. The learning task can be defined as: 

    F: (ℐ_[t-k+1,t], ℳ_[t-k+1,t])  →𝒮_t+1×𝒱_t+1

where 𝒮_t+1 represents the steering angle space and 𝒱_t+1 the speed space for future time t+1.  
𝒮 and 𝒱 can be defined at several levels of granularity. We consider the continuous values directly recorded from the car's CAN bus, where 𝒱 = {V | 0  ≤ V ≤ 180 for speed and 𝒮={S | -720  ≤ S ≤ 720} for steering angle in our case. Here, kilometer per hour (km/h) is the unit of v, and degree (^∘) the unit of s.  M_t is either a rendered video frame from the TomTom route planner <cit.>, or the engineered features for the numerical maps from HERE Technologies (defined in Sec. <ref>), or the combination of both. 

In order to keep notations concise, we denote the synchronized data (I,M) as D. Without loss of generality, we assume our training data to consist of a long sequence of driving data with T frames in total. Then the basic driving model is to learn the prediction function for the steering angle 

    ŝ_t+1← f_st( 𝒟_[t-k+1,t]),

and the velocity

    v̂_t+1← f_ve( 𝒟_[t-k+1,t]),

with the objective 

    ∑_t=1^T-1 ( | ŝ_t+1 - s_t+1| + λ |v̂_t+1 - v_t+1| ),

where ŝ and v̂ are predicted values, and s and v are the ground truth values. 



The learning under Eq. <ref> is straightforward and can be implemented with any standard deep network. This objective, however, assumes the driving decisions at each time step are independent from each other. We believe this is an over-simplification because driving decisions indeed exhibit strong temporal dependencies within a relatively short time range.  In the following section, we reformulate the objective by introducing a ride comfort and a human-likeness score to better model the temporal dependency of driving actions. 



 §.§ Accurate and Comfortable Driving

 

Multiple concepts relating to driving comfort have been proposed and discussed <cit.>, such as apparent safety, motion comfort (sickness), level of controllability and resulting force. While those are all relevant, some are hard to quantify. We choose to work on motion comfort, which is largely influenced by the vehicle's longitudinal and lateral jerk <cit.>.   
Due to the short-term predictive nature of most end-to-end driving models, substantial jerking is an inherent problem. Our comfort component aims at reducing jerk by imposing a temporal smoothness constraint on the longitudinal and lateral oscillations, by minimizing the second derivative of consecutive steering angle and speed predictions. 



Before introducing ride comfort and human-like driving, we reformulate Eq. <ref>. If the number of consecutive predictions that need to be optimized jointly is denoted by O, then minimizing Eq. <ref> is equivalent to minimizing 

    ∑_t=1^T-O∑_o=1^O ( | ŝ_t+o - s_t+o| + λ |v̂_t+o - v_t+o| ).

Then for every O consecutive frames starting at time t, the loss of driving accuracy will be

    ℒ_t^acc  = ∑_o=1^O ( | ŝ_t+o - s_t+o| + λ |v̂_t+o - v_t+o|)
. 

We can now present the objective function for accurate and comfortable driving as

    ∑_t=1^T-O∑_o=1^O ( ℒ_t^acc + ζ_1 ℒ_t^com),

where 

    ℒ_t^com =  ∑_o=2^O-1 |ŝ_t+o-1 -2ŝ_t+o+ŝ_t+o+1|/(1/f)^2
     + λ |v̂_t+o-1 -2v̂_t+o+v̂_t+o+1|/(1/f)^2.

ζ_1 is a trade-off parameter to balance the two costs. By optimizing under the objective in Eq. <ref>, consecutive predictions are learned and optimized together for accurate and comfortable driving. 



 §.§ Accurate, Comfortable & Human-like Driving


If autonomous cars behave differently from human-driven cars, it is hard for humans to predict their future actions. This unpredictability can cause accidents. Also, if a car behaves more the way its passengers expect, the ride will feel more reassuring. Thus, we argue that it is important to design human-like driving algorithms from the very start. Hence, we introduce a human-likeness score. The higher the value, the closer to human driving. Since it is hard to manually define what a human driving style is – as was done for general comfort measures (Sec. <ref>), we adopt adversarial learning to model it. 

An adversarial learning method consists of a generator and discriminator. Our driving model defined in Eq. <ref> or in Eq. <ref> is the generator 𝐆. We now describe the training objective for the discriminator. For convenience, we name the short trajectories of O frames used in Sec. <ref> as drivelets. Given the outputs of our driving model for a drivelet B̂_t=(ŝ_t+1,..., ŝ_t+O, v̂_t+1,..., v̂_t+O) and its corresponding ground truth from the human driver  B_t=(s_t+1,..., s_t+O, v_t+1,..., v_t+O), the goal is to train a fully-connected discriminator 𝐃 using the cross-entropy loss to classify the two classes (i.e. machine and human).  





We forward the drivelet at t to 𝐆 to obtain the driving actions B̂_t. To make autonomous driving more human-like is equivalent to letting the distribution of B̂_t approximate that of B_t. We thus define our loss for human-like driving as an adversarial loss: 

    ℒ_t^hum = - log(𝐃(B̂_t)^1),

where 𝐃(B̂_t)^1 is the probability of classifying B̂_t as human driving. 

Putting everything together, our objective for accurate, comfortable and human-like driving is as follows: 

    ℒ =  ∑_t=1^T-O∑_o=1^O ( ℒ_t^acc + ζ_1 ℒ_t^com) + ζ_2 ℒ_t^hum.

ζ_2 is a trade-off parameter to control the contributions of the costs. 
In keeping with adversarial learning, our training is conducted under the following min-max criterion: 

    _𝐆_𝐃ℒ(I,M).
 

















 §.§ HERE Navigation


In this section, we first describe how we augment real-world driving data, specifically the Drive360 dataset <cit.> with map data from HERE Technologies. Then, we present our feature extraction to translate obtained map data to feature vectors M's in order to be used by our driving model.     


Obtaining HERE Map Data.
Drive360 features 60 hours of real-world driving data over 3000 km. We augment Drive360 with HERE Technologies map data. 
Drive360 offers a time stamped GPS trace for each route recorded. We use a path-matcher based on a hidden markov model employing the Viterbi algorithm <cit.> to calculate the most likely path traveled by the vehicle during dataset recording, snapping the GPS trace to the underlying road network. This improves our localization accuracy significantly, especially in urban environments where the GPS signal may be weak and noisy. Through the path matcher we obtain a map matched GPS coordinate for each time stamp, which is then used to query the HERE Technologies map database to obtain the various types of map data. 

HERE Technologies has generated an abundant amount of map data. We selected 15 types of data of 6 categories, as described in Table <ref>. All features belonging to category 1 will be capped at 250m, for example no distanceToTrafficLight feature is given if the next traffic light on route is further than 250m from the current map matched position. The features of category 5 specify the relative heading of all roads exiting the next approaching intersection, with regard to the map matched entry heading, see Fig. <ref>. The features of category 6 specify the relative heading of the planned route a certain distance in advance. This relative heading is only calculated with map matched positions. The relative heading is dependent on the road geometry and the route taken, see Fig. <ref>. Using more types of map data constitutes our future work. These augmented map data will be made publicly available.  

Deploying Map Data.
Features belonging to categories 1-4 are denoted as M[1-4]. At each time step t we sample M[1-4]_[t-k, t] with k set to 2s into the past with a step size of 0.1s. This gives us a feature vector of 160 elements that we subsequently feed into a small LSTM network. We found that an LSTM network yields a better performance than a fully connected network for these feature categories. It is worth noticing that for features belonging to category 1 we supply the inverse distance capped at 1, effectively allowing for a value range of [0, 1]. Features belonging to categories 5 and 6 are denoted as M[5-6]. At each time t we sample  M[5-6]_t, obtaining a feature vector of size 7 that we feed into a small fully connected layer network which works well for these two types of features. The engineered map features will be publicly released. 












§ EXPERIMENTS

 





 §.§ Implementation Details

The modules of our method are implemented as follows: 


Camera: Our core model consists of a fine-tuned Resnet34 <cit.> CNN to process sequences of front facing camera images, followed by two regression networks to predict steering wheel angle and vehicle speed. The architecture is similar to the baseline model from <cit.>. The model in this work requires training with a drivelet of O consecutive instances, each having K frames. It means that O+K-1 frames are used for each camera in each optimization step. This leads to memory issues when using multiple surround-view cameras. Thus we choose to proceed with a single front-facing camera for this work.  

 TomTom: Following <cit.>, a fine-tuned AlexNet <cit.> is used to process the visual map representation from the TomTom Go App.

HERE: An LSTM nework with 20 hidden states to process M[1-4] and one fully connected network with three layers of size 10 to process M[5-6].

Comfort: No extra network is needed. The loss is computed according to Eq. <ref> and gradients are back propagated to adjust the driving network.  



Human-like: A fully-connected, three-layer discriminator network to model human-like driving. The loss is computed according to Eq. <ref> to adjust the driving network.




This in turn allows us to define a total of five DNN models that are composed of combinations of our sub-modules, see Table <ref>. Each model is trained on the same 50 hours of training data of the Drive360 dataset. 
We employ a discriminator network 𝐃 consisting of three fully connected layers each of size 10 to enforce human-like driving by our models. 𝐃 is tasked with classifying maneuvers either as being human or machine created using a binary cross entropy loss.  𝐃 is trained using an Adam optimizer with a learning rate of 10^-4.
We train with a batch size of 16 for one epoch on a Titan X GPU. Training for more epochs does not significantly improve convergence, and thus allows us to limit our maximum model training time to around 26 hours. In terms of parameter values, we set O to 5, k to 3, λ to 1, ζ_1 to 0.1 and ζ_2 to 1. A larger value for O and k might lead to better performance but it requires more computational power and GPU memory. Values for the other three parameters are set so that the costs are `calibrated' to the same range. The optimal values can be found by cross-validation if needed. 



























 §.§ Evaluation

A driving model should drive as accurately as possible in a wide range of scenarios. As our models are trained via imitation learning, we define accuracy as how close the model predictions are to the human ground truth maneuver under the L1 distance metric. We define A_s as the absolute mean error in the steering angle prediction and A_v as the absolute mean error in the vehicle speed prediction. Specifically, we predict the steering wheel angle 𝒮_t+0.5s and vehicle speed 𝒱_t+0.5s 0.5s into the future [Predicting further into the future is possible and our experiments have shown a growing degradation in accuracy the further one predicts.]. We use a SmoothL1 loss to jointly train 𝒮_t+0.5s and 𝒱_t+0.5s using the Adam Optimizer with an initial learning rate of 10^-4.

Evaluation Sets. 
Our whole test set, denoted by 𝕊, consisting of around 10 hours of driving, covers a wide range of situations including city and countryside driving. While one overall number on the whole set is easier to follow, evaluations on specific scenarios can highlight the strengths and weaknesses of driving models at a finer granularity.
By enriching the Drive360 dataset with HERE map data, we can filter our test set 𝕊 for specific scenarios. We have chosen three interesting scenarios in this evaluation[more will be include in the supplementary material.]:



-0.5
  * 𝔸⊂𝕊 where the distance to the next traffic light is less than 40m or the distance to the next pedestrian crossing is less than 40m and the speed limit is less than or equal to 50km/h. Translates to approaching a traffic light or pedestrian crossing in the city.

  * 𝔹⊂𝕊 where the curvature is greater than 0.01 and the speed limit is 80 km/h and the distance to the next intersection greater than 100m. Translates to winding road where road radius is less than 100m and no intersections in the vicinity.

  * ℂ⊂𝕊 where the distance to the next intersection is less than 20m, named approaching an intersection. 


Comparison to state-of-the-art. 
We compare our method to two start-of-the-art end-to-end driving methods <cit.> and <cit.>. They are trained under the same settings as our method is trained.
The results are shown at the top of Table <ref>. The results show that our method performs better than the two competing methods. It is more accurate, more comfortable and behaves more like a human driver than previous methods. This is due to our numerical map features, the sequence-based learning, and two new learning objectives, namely ride comfort and human-like style. We also compare our method to the classical proportional–integral–derivative (PID) controller for improving ride comfort and show that our method performs better (see Table <ref>). All detailed discussions are given in the following sections, where we also compare against ablations of our full model (id: 5). 

   



  §.§.§ Driving Accuracy


By comparing the performance of Model_1-3 in Table <ref>, one can find that driving accuracy improves significantly when using maps. Model_1 and Model_2 are in fact the same models as used in <cit.>. The best results are achieved by using HERE numerical features and TomTom visual maps together. This implies that the two ways of using map data are to some extent complementary. 
We reason that the TomTom module offers a complete world view, in other words, an aggregation of all available TomTom map data, rendered into a video. It is designed to facilitate human driving, but it seems that neural networks benefit from having this intuitive representation as well. Yet, while the rendered video is quite effective for representing route information, there is little room left for further improvement towards accurate navigation – it is very challenging to reverse engineer all exact map information from the rendered videos. 

The designed features out of our numerical map data are in stark contrast to the rendered video representation. They are accurate and unequivocal. By using numerical map features, our method Model_3 outperforms <cit.> which only uses rendered visual maps. It also outperforms <cit.> which uses no map information.  Our engineered HERE map features show marked improvement for challenging driving scenarios.  For instance, the error (mse) of steering angle prediction is reduced from 19.69 to 16.83 for scenario approaching intersections by using our engineered map features, and the error for speed prediction is reduced from 4.20 to 3.75 for traffic light or pedestrian crossing. In this work, only fifteen numerical features are hand selected from the vast amount of available HERE map features. Logically, this leaves plenty of room for improving the use of numerical map features. This is especially true as the quality of navigation maps keeps improving. For rendered videos, one has almost exhausted the ability for further improvement. Part of our future work will be on incorporating a much larger set of numerical map features. 



  §.§.§ Ride Comfort


By imposing an additional comfort loss, we are able to significantly improve ride comfort by reducing lateral and longitudinal oscillations, at a modest loss of driving accuracy. This can be confirmed by comparing the performance of Model_3 and Model_4 in Table <ref>.  
For models that use no map data, we observe a similar trend – significant gains in comfort at a modest cost in driving accuracy. One direction to address this issue is to design and learn an adaptive loss for ride comfort such that it only takes effect when the driving model is accurate. That is to say, ride comfort measures are only applied when driving scenarios are easy. Otherwise, safety considerations must take prevalence. Using road attributes from our map features can help identify such scenarios. We have also investigated in how far a classical proportional–integral–derivative (PID) controller can achieve similar comfort levels to our learned approach. To this end, we process the network predictions of <cit.> and <cit.> with tuned (exhaustive grid search for parameters) PID controllers such that their comfort score is the same as our learned approach. We report these results in Table <ref>. This shows that reaching similar levels of comfort to our learned approach with a PID controller comes at the price of degraded driving performance and thus our way of including comfort in the driving model is preferable.

















  §.§.§ Human-likeness

A driving style to be human-like is hard to quantify. It is also hard to evaluate. In order to evaluate it quanlitatively, 
we propose a new evaluation criterion – the human-likeness score. This score is calculated by clustering human driving maneuvers (s and v concatenated) from the evaluation set 𝕊, over a 0.5s window with a step size of 0.1s, into 75 unique clusters using the Kmeans algorithm. Predicted model maneuvers are then considered human-like if, for the same window, they are associated with the same cluster as the human maneuver. We chose our window and step size to be consistent with our model training. The human-likeness score is then defined as the percentage of driving maneuvers given by an algorithm being associated to the same cluster as the human driving maneuvers for the same time window. 
To this end, and similar to the comfort training procedure, we generate model driving maneuvers via a sequence of five (O=5) consecutive steering wheel angle and vehicle speed predictions.
We observe, again in Table <ref>, that our adversarial learning designed for modeling a human-like driving style significantly improves overall performance and in particular boosts driving accuracy and the human-likeness score, see Model_5 vs Model_4. 
Interestingly, when a model drives more accurately, due to the presence of a navigation component, its human-likeness score improves as well. This is evidenced by the performance of Model_1 and Model_3. This is because the model has a clearer understanding of the driving environment and consequently yields quite comfortable and human-like driving already. 
Overall, the model trained using our human likeness loss, along with the accuracy loss and ride comfort loss, drives more accurate, more comfortable and more human-like than all previous methods.  





  §.§.§ Error Diagnosis
 
It is notoriously difficult to evaluate and understand driving model performance solely based on a global quantitative evaluation. For example, a model with the lowest overall test steering error might perform terribly in certain specific scenarios. 
The ability to automatically generate meaningful evaluation subsets using numerical map features is tremendously helpful and allows for scenario targeted evaluations as demonstrated in Table <ref>.  In this section, we propose a new evaluation scheme to visualize the correlation of the error rate (frequency of making errors) of our final model to road attributes. 
More specifically, five major road attributes (speed limit, traffic light, cross walk, road type, and intersection) are chosen; for each of them, we define exclusive subsets that collectively complete the test set. We then calculate the error-rate for each subset, where, as in <cit.>, error is defined when steering prediction is off by more than 10  or speed prediction by more than 5 km/h. For each road attribute, we normalize the error-rates over its subsets. 
The results are shown in Fig. <ref>. As can be seen, the model generally makes more mistakes in more challenging situations. For instance, it makes more mistakes on winding roads than on straight roads, and makes more mistakes at intersections than along less taxing stretches of road. We can also see that the model works better on highways than in cities. The results of this error diagnosis provide new insights for the further improvement of existing methods and is therefore advisable to include.  



  §.§.§ Qualitative Evaluation

In Fig. <ref> we present two unique driving sequences with respective model predictions. The steering wheel angle gauge, on the left, is a direct map of the steering wheel angle to degrees, whereas the speed gauge, on the right, is from 0km/h to 130km/h. Gauges should be used for relative model comparison, with our baseline Model_1 prediction in orange, our most accurate Model_5 prediction in red and the human maneuver in blue. We consider a model to perform well when the magnitude of a gauge is identical (or similar) to the human gauge.

Fig. <ref> (1) shows the benefit of using maps. Model_1 falsely predicts continuing straight on the road and tries to compensate for leaving the lane, see (3,b), while Model_5 accurately predicts the left turn. By using this example, we would like to emphasize again that due attention should be paid to map data when learning driving models. Fig. <ref> (2) shows the benefit of using HERE features. While one may claim that Model_5, being aware of distance to pedestrian crossings, accurately slowed down for the pedestrians in (2, b) and would, in a real setting not have had an accident, Model_1 clearly did no such thing. Thus a great benefit of HERE features is that we can automatically filter for these scenarios and evaluate models at a finer granularity. This greatly improves model understanding. Please see the supplementary material for a video of animated sequences.





§ CONCLUSION

This paper has extended the objective of autonomous driving models from accurate driving to accurate, comfortable and human-like driving. The importance of the three objectives has been thoroughly discussed, mathematically formulated, and then translated into one neural network which is end-to-end trainable. This work made three contributions. First, numerical maps from the leading mapping company HERE Technologies are employed to augment the 3000km real-world driving data of the Drive360 dataset. A set of driving-relevant features have been extracted to effectively use the map information for autonomous driving. Second, the learning of end-to-end driving models is improved from pointwise prediction to sequence-based prediction and a passengers' comfort measure is included to reduce motion sickness. Finally, adversary learning was introduced such that the learned driving model behaves more like human drivers.  Extensive experiments have shown that our driving model is more accurate, more comfortable and more human-like than previous methods. 


Acknowledgement 
This work is funded by Toyota Motor Europe via the research
project TRACE-Zurich. We are grateful for the support by HERE Technologies for granting us the access of their map data, without their support this project would not have been possible. We would like to thank in particular Dr. Harvinder Singh for his insightful discussions of using HERE map data. 

ieee




