Synthesizing Reactive Test Environments for Autonomous Systems: Testing Reach-Avoid Specifications with Multi-Commodity Flows
Apurva Badithela, Josefine B. Graebener, Wyatt Ubellacker, Eric V., Mazumdar, Aaron D. Ames, Richard M. Murray

TL;DR
This paper presents a method for automatically generating reactive test environments for autonomous systems using multi-commodity flow optimization, ensuring system behaviors meet specified reach-avoid criteria in simulation and real hardware.
Contribution
It introduces a novel framework combining automata-based specifications with multi-commodity network flow optimization for reactive test synthesis.
Findings
Successfully verified locomotion behaviors on hardware.
Demonstrated effectiveness in grid world simulations.
Framework ensures system meets complex test specifications.
Abstract
We study automated test generation for verifying discrete decision-making modules in autonomous systems. We utilize linear temporal logic to encode the requirements on the system under test in the system specification and the behavior that we want to observe during the test is given as the test specification which is unknown to the system. First, we use the specifications and their corresponding non-deterministic B\"uchi automata to generate the specification product automaton. Second, a virtual product graph representing the high-level interaction between the system and the test environment is constructed modeling the product automaton encoding the system, the test environment, and specifications. The main result of this paper is an optimization problem, framed as a multi-commodity network flow problem, that solves for constraints on the virtual product graph which can then be…
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.
Taxonomy
TopicsFormal Methods in Verification · Model-Driven Software Engineering Techniques · Software Testing and Debugging Techniques
