Designing Neural Networks for Real-Time Systems
Hammond Pearce, Xin Yang, Partha S. Roop, Marc Katzef, T\'orur, Biskopst{\o} Str{\o}m

TL;DR
This paper presents a pipeline to compile neural networks trained in Keras into C code suitable for static timing analysis, enabling real-time guarantees in safety-critical cyber-physical systems.
Contribution
It introduces a method to convert neural networks into analyzable C code for static timing analysis, improving safety guarantees in real-time systems.
Findings
Successfully derived worst-case execution timings for an autonomous vehicle neural network
Compiled neural networks to a time-predictable platform for static analysis
Enhanced safety assurance in cyber-physical systems through formal timing guarantees
Abstract
Artificial Neural Networks (ANNs) are increasingly being used within safety-critical Cyber-Physical Systems (CPSs). They are often co-located with traditional embedded software, and may perform advisory or control-based roles. It is important to validate both the timing and functional correctness of these systems. However, most approaches in the literature consider guaranteeing only the functionality of ANN based controllers. This issue stems largely from the implementation strategies used within common neural network frameworks -- their underlying source code is often simply unsuitable for formal techniques such as static timing analysis. As a result, developers of safety-critical CPS must rely on informal techniques such as measurement based approaches to prove correctness, techniques that provide weak guarantees at best. In this work we address this challenge. We propose a design…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
