  This paper summarizes our formal approach to testing autonomous vehicles
(AVs) in simulation for the IEEE AV Test Challenge. We demonstrate a systematic
testing framework leveraging our previous work on formally-driven simulation
for intelligent cyber-physical systems. First, to model and generate
interactive scenarios involving multiple agents, we used Scenic, a
probabilistic programming language for specifying scenarios. A Scenic program
defines an abstract scenario as a distribution over configurations of physical
objects and their behaviors over time. Sampling from an abstract scenario
yields many different concrete scenarios which can be run as test cases for the
AV. Starting from a Scenic program encoding an abstract driving scenario, we
can use the VerifAI toolkit to search within the scenario for failure cases
with respect to multiple AV evaluation metrics. We demonstrate the
effectiveness of our testing framework by identifying concrete failure
scenarios for an open-source autopilot, Apollo, starting from a variety of
realistic traffic scenarios.
