Automatically Learning Formal Models: An Industrial Case from Autonomous Driving Development
Paper in proceedings, 2020

The correctness of autonomous driving software is of utmost importance as incorrect behaviour may have catastrophic consequences.
Though formal model-based engineering techniques can help guarantee correctness, challenges exist in widespread industrial adoption. One among them is the model construction problem. Manual construction of formal models is expensive, error-prone, and intractable for large systems. Automating model construction would be a great enabler for the use of formal methods to guarantee software correctness and thereby for safe deployment of autonomous vehicles. Such automated techniques can be beneficial in software design, re-engineering, and reverse engineering. In this industrial case study, we apply active learning techniques to obtain formal models from an existing autonomous driving software (in development) implemented in MATLAB. We demonstrate the feasibility of active automata learning algorithms for automotive industrial use. Furthermore, we discuss the practical challenges in applying automata learning and possible directions for integrating automata learning into automotive software development workflow.

formal methods

autonomous driving

model-based engineering

active learning

automata learning


Yuvaraj Selvaraj

Chalmers, Electrical Engineering, Systems and control, Automation

Ashfaq Hussain Farooqui

Chalmers, Electrical Engineering, Systems and control, Automation

Ghazaleh Panahandeh

Martin Fabian

Chalmers, Electrical Engineering, Systems and control, Automation

Proceedings of the ACM/IEEE Joint Conference on Digital Libraries

1552-5996 (ISSN)

ACM/IEEE 23rd International Conference on Model Driven Engineering Languages and Systems (MODELS '20 Companion)
Virtual Event, Canada,

Automatically Assessing Correctness of Autonomous Vehicles (Auto-CAV)

VINNOVA, 2018-03-01 -- 2021-12-31.

Subject Categories

Software Engineering

Embedded Systems

Control Engineering

Computer Science



More information

Latest update

9/4/2020 1