Data-Driven Falsification of Cyber-Physical Systems
By: Atanu Kundu, Sauvik Gon, Rajarshi Ray
Potential Business Impact:
Finds hidden dangers in self-driving cars.
Cyber-Physical Systems (CPS) are abundant in safety-critical domains such as healthcare, avionics, and autonomous vehicles. Formal verification of their operational safety is, therefore, of utmost importance. In this paper, we address the falsification problem, where the focus is on searching for an unsafe execution in the system instead of proving their absence. The contribution of this paper is a framework that (a) connects the falsification of CPS with the falsification of deep neural networks (DNNs) and (b) leverages the inherent interpretability of Decision Trees for faster falsification of CPS. This is achieved by: (1) building a surrogate model of the CPS under test, either as a DNN model or a Decision Tree, (2) application of various DNN falsification tools to falsify CPS, and (3) a novel falsification algorithm guided by the explanations of safety violations of the CPS model extracted from its Decision Tree surrogate. The proposed framework has the potential to exploit a repertoire of \emph{adversarial attack} algorithms designed to falsify robustness properties of DNNs, as well as state-of-the-art falsification algorithms for DNNs. Although the presented methodology is applicable to systems that can be executed/simulated in general, we demonstrate its effectiveness, particularly in CPS. We show that our framework, implemented as a tool \textsc{FlexiFal}, can detect hard-to-find counterexamples in CPS that have linear and non-linear dynamics. Decision tree-guided falsification shows promising results in efficiently finding multiple counterexamples in the ARCH-COMP 2024 falsification benchmarks~\cite{khandait2024arch}.
Similar Papers
Data-Driven Probabilistic Evaluation of Logic Properties with PAC-Confidence on Mealy Machines
Artificial Intelligence
Helps cars check if they are driving safely.
Automated Test Oracles for Flaky Cyber-Physical System Simulators: Approach and Evaluation
Software Engineering
Checks computer programs without running them.
Architectural Transformations and Emerging Verification Demands in AI-Enabled Cyber-Physical Systems
Software Engineering
AI makes smart systems work better, but harder to check.