Development Methodologies for Safety Critical Machine Learning Applications in the Automotive Domain: A Survey

Enabled by recent advances in the field of machine learning, the automotive industry pushes towards automated driving. The development of traditional safety-critical automotive software is subject to rigorous processes, ensuring its dependability while decreasing the probability of failures. However, the development and training of machine learning applications substantially differs from traditional software development. The processes and methodologies traditionally prescribed are unfit to account for specifics like, e.g., the importance of datasets for a development. We perform a systematic mapping study surveying methodologies proposed for the development of machine learning applications in the automotive domain. We map the identified primary publications to a general machine learning–based development process and preliminary assess their maturity. The reviews’s goal is providing a holistic view of current and previous research contributing to ML-aware development processes and identifying challenges that need more attention. Additionally, we list methods, network architectures, and datasets used within these publications. Our meta-study identifies that model training and model V&V received by far the most research attention accompanied by the most mature evaluations. The remaining development phases, concerning domain specification, data management, and model integration, appear underrepresented and in need of more thorough research. Additionally, we identify and aggregate typically methods applied when developing automated driving applications like models, datasets and simulators showing the state of practice in this field.

[1]  Li Fei-Fei,et al.  ImageNet: A large-scale hierarchical image database , 2009, CVPR.

[2]  Chung-Hao Huang,et al.  Towards Safety Verification of Direct Perception Neural Networks , 2019, 2020 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[3]  Rafia Inam,et al.  A Systematic Literature Review About the Impact of Artificial Intelligence on Autonomous Vehicle Safety , 2019, IEEE Transactions on Intelligent Transportation Systems.

[4]  Andrew Zisserman,et al.  Very Deep Convolutional Networks for Large-Scale Image Recognition , 2014, ICLR.

[5]  Rob Alexander,et al.  Coverage based testing for V&V and Safety Assurance of Self-driving Autonomous Vehicles: A Systematic Literature Review , 2020, 2020 IEEE International Conference On Artificial Intelligence Testing (AITest).

[6]  Xin Zhang,et al.  End to End Learning for Self-Driving Cars , 2016, ArXiv.

[7]  Geoffrey E. Hinton,et al.  ImageNet classification with deep convolutional neural networks , 2012, Commun. ACM.

[8]  Eric Sax,et al.  Machine learning and deep neural network — Artificial intelligence core for lab and real-world test and validation for ADAS and autonomous vehicles: AI for efficient and quality test and validation , 2017, 2017 Intelligent Systems Conference (IntelliSys).

[9]  Zakaria Chihani,et al.  CAMUS: A Framework to Build Formal Specifications for Deep Perception Systems Using Simulators , 2019, ECAI.

[10]  Samuel Labi,et al.  A deep learning algorithm for simulating autonomous driving considering prior knowledge and temporal information , 2019, Comput. Aided Civ. Infrastructure Eng..

[11]  Pallab Dasgupta,et al.  Identification of Test Cases for Automated Driving Systems Using Bayesian Optimization , 2019, 2019 IEEE Intelligent Transportation Systems Conference (ITSC).

[12]  Patrik Feth,et al.  Safety Engineering for Autonomous Vehicles , 2016, 2016 46th Annual IEEE/IFIP International Conference on Dependable Systems and Networks Workshop (DSN-W).

[13]  Greg Chance,et al.  An Agency-Directed Approach to Test Generation for Simulation-based Autonomous Vehicle Verification , 2019, 2020 IEEE International Conference On Artificial Intelligence Testing (AITest).

[14]  Harald C. Gall,et al.  Software Engineering for Machine Learning: A Case Study , 2019, 2019 IEEE/ACM 41st International Conference on Software Engineering: Software Engineering in Practice (ICSE-SEIP).

[15]  Sebastian Ramos,et al.  The Cityscapes Dataset for Semantic Urban Scene Understanding , 2016, 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR).

[16]  Michael M. Resch,et al.  A Sensitivity Analysis Approach for Evaluating a Radar Simulation for Virtual Testing of Autonomous Driving Functions , 2020, 2020 5th Asia-Pacific Conference on Intelligent Robot Systems (ACIRS).

[17]  Foutse Khomh,et al.  Studying Software Engineering Patterns for Designing Machine Learning Systems , 2019, 2019 10th International Workshop on Empirical Software Engineering in Practice (IWESEP).

[18]  Andreas Geiger,et al.  Are we ready for autonomous driving? The KITTI vision benchmark suite , 2012, 2012 IEEE Conference on Computer Vision and Pattern Recognition.

[19]  Derek Rayside,et al.  A sensorless state estimation for a safety-oriented cyber-physical system in urban driving: Deep learning approach , 2021, IEEE/CAA Journal of Automatica Sinica.

[20]  Guanpeng Li,et al.  BinFI: an efficient fault injector for safety-critical machine learning systems , 2019, SC.

[21]  Karsten Behrendt,et al.  Deep learning lane marker segmentation from automatically generated labels , 2017, 2017 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS).

[22]  Karsten Berns,et al.  Safe Automotive Software , 2011, KES.

[23]  Mario Trapp,et al.  Towards Safety-Awareness and Dynamic Safety Management , 2018, 2018 14th European Dependable Computing Conference (EDCC).

[24]  Lawrence D. Jackel,et al.  Handwritten Digit Recognition with a Back-Propagation Network , 1989, NIPS.

[25]  Junfeng Yang,et al.  Efficient Formal Safety Analysis of Neural Networks , 2018, NeurIPS.

[26]  Robert Feldt,et al.  Validity Threats in Empirical Software Engineering Research - An Initial Survey , 2010, SEKE.

[27]  Cüneyt Güzelis,et al.  Object recognition and detection with deep learning for autonomous driving applications , 2017, Simul..

[28]  David Isele,et al.  Navigating Occluded Intersections with Autonomous Vehicles Using Deep Reinforcement Learning , 2018, 2018 IEEE International Conference on Robotics and Automation (ICRA).

[29]  Roberto Cipolla,et al.  Concrete Problems for Autonomous Vehicle Safety: Advantages of Bayesian Deep Learning , 2017, IJCAI.

[30]  Rajesh Kumar,et al.  Effective and Explainable Detection of Android Malware Based on Machine Learning Algorithms , 2018, ICCAI 2018.

[31]  Gabriel Pedroza,et al.  Representative Safety Assessment of Autonomous Vehicle for Public Transportation , 2018, 2018 IEEE 21st International Symposium on Real-Time Distributed Computing (ISORC).

[32]  Pietro Perona,et al.  Microsoft COCO: Common Objects in Context , 2014, ECCV.

[33]  Klaus C. J. Dietmayer,et al.  Towards Safe Autonomous Driving: Capture Uncertainty in the Deep Neural Network For Lidar 3D Vehicle Detection , 2018, 2018 21st International Conference on Intelligent Transportation Systems (ITSC).

[34]  Sorin Grigorescu,et al.  A Survey of Deep Learning Techniques for Autonomous Driving , 2020, J. Field Robotics.

[35]  Francisco J. Cazorla,et al.  Assessing the Adherence of an Industrial Autonomous Driving Framework to ISO 26262 Software Guidelines , 2019, 2019 56th ACM/IEEE Design Automation Conference (DAC).

[36]  Suman Jana,et al.  DeepTest: Automated Testing of Deep-Neural-Network-Driven Autonomous Cars , 2017, 2018 IEEE/ACM 40th International Conference on Software Engineering (ICSE).

[37]  Foutse Khomh,et al.  Software Engineering for Machine-Learning Applications: The Road Ahead , 2018, IEEE Software.

[38]  Kai Petersen,et al.  Guidelines for conducting systematic mapping studies in software engineering: An update , 2015, Inf. Softw. Technol..

[39]  Franz Wotawa,et al.  Using Ontologies for Test Suites Generation for Automated and Autonomous Driving Functions , 2018, 2018 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW).

[40]  Gail C. Murphy,et al.  How does Machine Learning Change Software Development Practices? , 2021, IEEE Transactions on Software Engineering.

[41]  Philip Koopman,et al.  Challenges in Autonomous Vehicle Testing and Validation , 2016 .

[42]  Johan J. Lukkien,et al.  An architecture pattern for safety critical automated driving applications: Design and analysis , 2017, 2017 Annual IEEE International Systems Conference (SysCon).

[43]  David M. Rodvold A software development process model for artificial neural networks in critical applications , 1999, IJCNN'99. International Joint Conference on Neural Networks. Proceedings (Cat. No.99CH36339).

[44]  Ivica Crnkovic,et al.  A Taxonomy of Software Engineering Challenges for Machine Learning Systems: An Empirical Investigation , 2019, XP.

[45]  M. Maurer,et al.  Towards Efficient Hazard Identification in the Concept Phase of Driverless Vehicle Development , 2020, 2020 IEEE Intelligent Vehicles Symposium (IV).

[46]  Paolo Tonella,et al.  Misbehaviour Prediction for Autonomous Driving Systems , 2019, 2020 IEEE/ACM 42nd International Conference on Software Engineering (ICSE).

[47]  Roman Henze,et al.  Incorporating safety relevance and realistic parameter combinations in test-case generation for automated driving safety assessment , 2020, 2020 IEEE 23rd International Conference on Intelligent Transportation Systems (ITSC).

[48]  Xin Li,et al.  Efficient statistical validation of machine learning systems for autonomous driving , 2016, 2016 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[49]  Etienne Perot,et al.  Deep Reinforcement Learning framework for Autonomous Driving , 2017, Autonomous Vehicles and Machines.

[50]  Krzysztof Czarnecki,et al.  Urban Driving with Multi-Objective Deep Reinforcement Learning , 2018, AAMAS.

[51]  Johannes Stallkamp,et al.  Detection of traffic signs in real-world images: The German traffic sign detection benchmark , 2013, The 2013 International Joint Conference on Neural Networks (IJCNN).

[52]  Rupsa Saha,et al.  Road Detection for Reinforcement Learning Based Autonomous Car , 2020, ICISS.

[53]  Lutz Eckstein,et al.  How safe is automated driving? Human driver models for safety performance assessment , 2017, 2017 IEEE 20th International Conference on Intelligent Transportation Systems (ITSC).

[54]  Daniel Krajzewicz,et al.  Recent Development and Applications of SUMO - Simulation of Urban MObility , 2012 .

[55]  Mohamed Aly,et al.  Real time detection of lane markers in urban streets , 2008, 2008 IEEE Intelligent Vehicles Symposium.

[56]  Sagar Behere,et al.  A functional architecture for autonomous driving , 2015, 2015 First International Workshop on Automotive Software Architecture (WASA).

[57]  Stefan Wagner,et al.  A Safety Argumentation for Fail-Operational Automotive Systems in Compliance with ISO 26262 , 2019, 2019 4th International Conference on System Reliability and Safety (ICSRS).

[58]  Luc Van Gool,et al.  Traffic sign recognition — How far are we from the solution? , 2013, The 2013 International Joint Conference on Neural Networks (IJCNN).

[59]  Rick Salay,et al.  An Analysis of ISO 26262: Machine Learning and Safety in Automotive Software , 2018 .

[60]  Erik Karlsson,et al.  A Data-Driven Generative Model for GPS Sensors for Autonomous Driving , 2018, 2018 IEEE/ACM 1st International Workshop on Software Engineering for AI in Autonomous Systems (SEFAIAS).

[61]  Michael Kläs,et al.  Uncertainty Wrappers for Data-Driven Models - Increase the Transparency of AI/ML-Based Models Through Enrichment with Dependable Situation-Aware Uncertainty Estimates , 2019, SAFECOMP Workshops.

[62]  Konrad Rieck,et al.  DREBIN: Effective and Explainable Detection of Android Malware in Your Pocket , 2014, NDSS.

[63]  John M. Dolan,et al.  Attention-based Hierarchical Deep Reinforcement Learning for Lane Change Behaviors in Autonomous Driving , 2019, 2019 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS).

[64]  Johannes Stallkamp,et al.  Man vs. computer: Benchmarking machine learning algorithms for traffic sign recognition , 2012, Neural Networks.

[65]  Homayoun Najjaran,et al.  Analysis of driving data for autonomous vehicle applications , 2017, 2017 IEEE International Conference on Systems, Man, and Cybernetics (SMC).

[66]  Sarfraz Khurshid,et al.  DeepRoad: GAN-Based Metamorphic Testing and Input Validation Framework for Autonomous Driving Systems , 2018, 2018 33rd IEEE/ACM International Conference on Automated Software Engineering (ASE).

[67]  Rudolf Mester,et al.  Simulated autonomous driving in a realistic driving environment using deep reinforcement learning and a deterministic finite state machine , 2018, APPIS.

[68]  J. Zico Kolter,et al.  Provable defenses against adversarial examples via the convex outer adversarial polytope , 2017, ICML.

[69]  Javier Alonso-Mora,et al.  Planning and Decision-Making for Autonomous Vehicles , 2018, Annu. Rev. Control. Robotics Auton. Syst..

[70]  Patrik Feth,et al.  Dynamic Risk Assessment for Vehicles of Higher Automation Levels by Deep Learning , 2018, SAFECOMP Workshops.

[71]  M. Violante,et al.  A Novel Simulation-Based Approach for ISO 26262 Hazard Analysis and Risk Assessment , 2019, 2019 IEEE 25th International Symposium on On-Line Testing and Robust System Design (IOLTS).

[72]  Adel Djoudi,et al.  A simulation-based framework for functional testing of automated driving controllers , 2020, 2020 IEEE 23rd International Conference on Intelligent Transportation Systems (ITSC).

[73]  Gerald E. Peterson Foundation for neural network verification and validation , 1993, Defense, Security, and Sensing.

[74]  Germán Ros,et al.  CARLA: An Open Urban Driving Simulator , 2017, CoRL.

[75]  Diptendu Sinha Roy,et al.  An AI-based Real-Time Roadway-Environment Perception for Autonomous Driving , 2020, 2020 IEEE International Conference on Consumer Electronics - Taiwan (ICCE-Taiwan).

[76]  Moongu Jeon,et al.  Autonomous Vehicle: The Architecture Aspect of Self Driving Car , 2018, SSIP.

[77]  Shin Yoo,et al.  Guiding Deep Learning System Testing Using Surprise Adequacy , 2018, 2019 IEEE/ACM 41st International Conference on Software Engineering (ICSE).

[78]  Christian Berger,et al.  Software-Related Challenges of Testing Automated Vehicles , 2017, 2017 IEEE/ACM 39th International Conference on Software Engineering Companion (ICSE-C).

[79]  Huáscar Espinoza,et al.  Safety assessment of automated vehicle functions by simulation-based fault injection , 2017, 2017 IEEE International Conference on Vehicular Electronics and Safety (ICVES).

[80]  Xenofon D. Koutsoukos,et al.  Safety Verification of Cyber-Physical Systems with Reinforcement Learning Control , 2019, ACM Trans. Embed. Comput. Syst..

[81]  Markus Borg,et al.  Automotive Safety and Machine Learning: Initial Results from a Study on How to Adapt the ISO 26262 Safety Standard , 2018, 2018 IEEE/ACM 1st International Workshop on Software Engineering for AI in Autonomous Systems (SEFAIAS).

[82]  Claes Wohlin,et al.  Guidelines for snowballing in systematic literature studies and a replication in software engineering , 2014, EASE '14.

[83]  Markus Borg,et al.  Safely Entering the Deep: A Review of Verification and Validation for Machine Learning and a Challenge Elicitation in the Automotive Industry , 2018, Journal of Automotive Software Engineering.

[84]  Mykel J. Kochenderfer,et al.  Policy compression for aircraft collision avoidance systems , 2016, 2016 IEEE/AIAA 35th Digital Avionics Systems Conference (DASC).

[85]  Lussier Benjamin,et al.  Validation of Safety Necessities for a Safety-Bag Component in Experimental Autonomous Vehicles , 2018, 2018 14th European Dependable Computing Conference (EDCC).

[86]  Sabir Hossain,et al.  Driverless Car: Autonomous Driving Using Deep Reinforcement Learning in Urban Environment , 2018, 2018 15th International Conference on Ubiquitous Robots (UR).

[87]  Xuejin Chen,et al.  Ground-Aware Point Cloud Semantic Segmentation for Autonomous Driving , 2019, ACM Multimedia.

[88]  Qin Li,et al.  A Quantitative Safety Verification Approach for the Decision-making Process of Autonomous Driving , 2019, 2019 International Symposium on Theoretical Aspects of Software Engineering (TASE).

[89]  Lei Wang,et al.  Safety Performance Assessment of Assisted and Automated Driving by Virtual Experiments: Stochastic Microscopic Traffic Simulation as Knowledge Synthesis , 2015, 2015 IEEE 18th International Conference on Intelligent Transportation Systems.