Scenic - Probabilitistic Scenario Generator

Using Scenic Probabilistic Language to generate randomized scenarios for operational development testing of simulators.

Table of contents

About the project

Scenic is a domain-specific probabilistic programming language for modeling the environments of cyber-physical systems like robots and autonomous cars. A Scenic program defines a distribution over scenes, configurations of physical objects and agents; sampling from this distribution yields concrete scenes which can be simulated to produce training or testing data. Scenic can also define (probabilistic) policies for dynamic agents, allowing modeling scenarios where agents take actions over time in response to the state of the world.

Tool flow using scene improvisation to train, test, and debug a cyber-physical system.

Generating Probabilistic Scenes

Links for reference:

Classes

Scenic provides a few important classes used for creating Scenic scenarios. This contains a full list of specifiers.Table describes the properties for each of these classes.

Scenic Output

The “output” of a Scenic program is two fold, a scene describing a configuration of physical objects, and a policy defining how those objects behave over time.

Results

demo-scenario

References