scenic.domains.driving

Domain for driving scenarios.

This domain must currently be used in 2D Compatibility Mode.

The world model defines Scenic classes for cars, pedestrians, etc., actions for dynamic agents which walk or drive, as well as simple behaviors like lane-following. Scenarios for the driving domain should import the model as follows:

model scenic.domains.driving.model

Scenarios written for the driving domain should work without changes [1] in any of the following simulators:

For example, the examples/driving/badlyParkedCarPullingIn.scenic scenario is written for the driving domain and can be run in multiple simulators:

  • no simulator, for viewing the initial scene:

    $ scenic examples/driving/badlyParkedCarPullingIn.scenic
    
  • the built-in Newtonian simulator, for quick debugging without having to install an external simulator:

    $ scenic -S --model scenic.simulators.newtonian.driving_model \
        examples/driving/badlyParkedCarPullingIn.scenic
    
  • CARLA, using the default map specified in the scenario:

    $ scenic -S --model scenic.simulators.carla.model \
        examples/driving/badlyParkedCarPullingIn.scenic
    
  • LGSVL, specifying a map which it supports:

    $ scenic -S --model scenic.simulators.lgsvl.model \
        --param map tests/formats/opendrive/maps/LGSVL/borregasave.xodr \
        --param lgsvl_map BorregasAve \
        examples/driving/badlyParkedCarPullingIn.scenic
    

Footnotes

Submodules

actions

Actions for dynamic agents in the driving domain.

behaviors

Library of useful behaviors for dynamic agents in driving scenarios.

controllers

Low-level controllers useful for vehicles.

model

Scenic world model for scenarios using the driving domain.

roads

Library for representing road network geometry and traffic information.

simulators

Abstract interface to simulators supporting the driving domain.

workspace

Workspaces for the driving domain.