Learning What to Monitor: Using Machine Learning to Improve past STL Monitoring

Andrea Brunello, Luca Geatti, Angelo Montanari, Nicola Saccomanno

Proceedings of the Thirty-Third International Joint Conference on Artificial Intelligence

Main Track. Pages 3270-3280.

https://doi.org/10.24963/ijcai.2024/362

PDF BibTeX

Abstract

Monitoring is a runtime verification technique that can be used to check whether an execution of a system (trace) satisfies or not a given set of properties. Compared to other formal verification techniques, e.g., model checking, one needs to specify the properties to be monitored, but a complete model of the system is no longer necessary. First, we introduce the pure past fragment of Signal Temporal Logic (ppSTL), and we use it to define the monitorable safety (G(ppSTL)) and cosafety (F(ppSTL)) fragments of STL, which properly extend the commonly-used bounded-future fragment. Then, we devise a multi-objective genetic programming algorithm to automatically extend the set of properties to monitor on the basis of the history of failure traces collected over time. The framework resulting from the integration of the monitor and the learning algorithm is then experimentally validated on various public datasets. The outcomes of the experimentation confirm the effectiveness of the proposed solution.

Keywords

  • Knowledge Representation and Reasoning: KRR: Learning and reasoning
  • Machine Learning: ML: Explainable/Interpretable machine learning
  • Knowledge Representation and Reasoning: KRR: Qualitative, geometric, spatial, and temporal reasoning
  • Machine Learning: ML: Symbolic methods
Welcome Future Conferences AI Journal Division IJCAI Proceedings Travel Grant Program IJCAI Awards