D2MoN: Detecting and Mitigating Real-Time Safety Violations in Autonomous Driving Systems

This paper proposes D2MON, a data-driven real-time safety monitor, to detect and mitigate safety violations of an autonomous vehicle (AV). The key insight is that traffic situations that lead to AV safety violations fall into patterns and can be identified by learning from existing safety violations. Our approach is to use machine learning techniques to model the traffic behaviors that result in safety violations and detect their symptoms in advance before the actual crashes happen. If D2MoN detects surroundings as dangerous, it will take safety actions to mitigate the safety violations so that the AV remains safe in the evolving traffic environment. Our steps are twofold: (1) We use software fuzzing and data augmentation techniques to generate efficient safety violation data for training our ML model. (2) We deploy the model as a plug-and-play module to the AV software, detecting and mitigating safety violations of the AV in runtime. Our evaluation demonstrates our proposed technique is effective in reducing over 99% of safety violations in an industry-level autonomous driving system, Baidu Apollo.

[1]  Zhisheng Hu,et al.  Disclosing the Fragility Problem of Virtual Safety Testing for Autonomous Driving Systems , 2021, 2021 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW).

[2]  Saurabh Jha,et al.  AV-FUZZER: Finding Safety Violations in Autonomous Driving Systems , 2020, 2020 IEEE 31st International Symposium on Software Reliability Engineering (ISSRE).

[3]  Cen Zhang,et al.  MUZZ: Thread-aware Grey-box Fuzzing for Effective Bug Hunting in Multithreaded Programs , 2020, USENIX Security Symposium.

[4]  Yang Liu,et al.  Cerebro: context-aware adaptive fuzzing for effective vulnerability detection , 2019, ESEC/SIGSOFT FSE.

[5]  Peng Li,et al.  SAVIOR: Towards Bug-Driven Hybrid Testing , 2019, 2020 IEEE Symposium on Security and Privacy (SP).

[6]  Alexander Carballo,et al.  A Survey of Autonomous Driving: Common Practices and Emerging Technologies , 2019, IEEE Access.

[7]  Ravishankar K. Iyer,et al.  ML-Based Fault Injection for Autonomous Vehicles: A Case for Bayesian Fault Injection , 2019, 2019 49th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN).

[8]  Christof Fetzer,et al.  SpecFuzz: Bringing Spectre-type vulnerabilities to the surface , 2019, USENIX Security Symposium.

[9]  Gregory Dudek,et al.  Generating Adversarial Driving Scenarios in High-Fidelity Simulators , 2019, 2019 International Conference on Robotics and Automation (ICRA).

[10]  Bihuan Chen,et al.  Hawkeye: Towards a Desired Directed Grey-box Fuzzer , 2018, CCS.

[11]  Xin Xu,et al.  Baidu Apollo Auto-Calibration System - An Industry-Level Data-Driven and Learning based Vehicle Longitude Dynamic Calibrating Algorithm , 2018, ArXiv.

[12]  Wei Zhan,et al.  A non-conservatively defensive strategy for urban autonomous driving , 2016, 2016 IEEE 19th International Conference on Intelligent Transportation Systems (ITSC).

[13]  Yoshua Bengio,et al.  Empirical Evaluation of Gated Recurrent Neural Networks on Sequence Modeling , 2014, ArXiv.

[14]  Quoc V. Le,et al.  Sequence to Sequence Learning with Neural Networks , 2014, NIPS.

[15]  S. Hochreiter,et al.  Long Short-Term Memory , 1997, Neural Computation.

[16]  Barton P. Miller,et al.  An empirical study of the reliability of UNIX utilities , 1990, Commun. ACM.

[17]  Elif Derya Übeyli,et al.  Recurrent Neural Networks , 2018 .