Efficient End-to-end Autonomous Driving - Eraqi, Hesham (AUC Knowledge Fountain, 2020)
Steering a car through traffic is a complex task that is difficult to cast into algorithms. Therefore, researchers turn to train artificial neural networks from front-facing camera data stream along with the associated steering angles. Nevertheless, most existing solutions consider only the visual camera frames as input, thus ignoring the temporal relationship between frames. In this work, we propose a Convolution Long Short-Term Memory Recurrent Neural Network (C-LSTM), which is end-to-end trainable, to learn both visual and dynamic temporal dependencies of driving. Additionally, We introduce posing the steering angle regression problem as classification while imposing a spatial relationship between the output layer neurons. Such a method is based on learning a sinusoidal function that encodes steering angles. To train and validate our proposed model and method, we used the publicly available Comma.ai dataset. Compared with the Convolutional Neural Network (CNN)-based end-to-end direct regression method \cite{bojarski2016end}, our solution improved steering root mean square error by 35% and led to more stable steering by 87%. The end-to-end approach has demonstrated suitable vehicle control when following roads and avoiding obstacles. Conditional imitation learning (CIL) extended the end-to-end approach to allow the vehicle to take specific turns in intersections to reach a destination. Unfortunately, performance dramatically decreases when deployed to unseen environments and is inconsistent against varying weather conditions. Most importantly, the current CIL fails to avoid static road blockages. In this work, we propose a solution to those deficiencies. First, we fuse the laser scanner with the regular camera stream, at the features level, to overcome the generalization and consistency challenges. Second, we introduce a new efficient Occupancy Grid Mapping (OGM) method along with new algorithms for road blockages avoidance and global route planning. Consequently, our proposed method dynamically detects partial and full road blockages and guides the controlled vehicle to another route to reach the destination. Following the original CIL work, we demonstrated the effectiveness of our proposal on CARLA simulator urban driving benchmark. Our experiments showed that our model improved CIL \cite{codevilla2018end} consistency against weather conditions by four times and autonomous driving success rate generalization by 52%. Furthermore, our global route planner improved the driving success rate by 37%. Our proposed road blockages avoidance algorithm improved the driving success rate by 27%. Finally, the average kilometers traveled before a collision with a static object increased by 1.5 times.