ASAM OpenSCENARIO®

DATASHEET
Domain
Simulation
Current Version
2.0.0
Release Date
20 Jul 2022
Application Areas
  • Simulation
  • X-in-the-loop
  • Proving grounds
Specification Content
  • Language specification
  • Domain model specification
File Formats
  • osc
Scope
Dynamic scenario description

ASAM OpenSCENARIO®

(The download of ASAM OpenSCENARIO V2.0.0 is free of charge)

ASAM OpenSCENARIO defines the dynamic content of the world, for example, behavior of traffic participants and how these are expected to interact with each other and the environment. The standard occupies a unique position among the ASAM OpenX standards in that there are currently two major versions of the standard developed in parallel. For the sake of readability in this document the terms ASAM OpenSCENARIO 1.x and ASAM OpenSCENARIO 2.x represent the latest version of each. Due to the different foundations between the versions, ASAM took measures throughout the development of these parallel activities to ensure that convergence and compatibility between ASAM OpenSCENARIO 1.x and ASAM OpenSCENARIO 2.x is possible. These measures were formulated as requirements to all ASAM OpenSCENARIO development projects:

  1. ASAM OpenSCENARIO 2.x shall be a full superset of the features of ASAM OpenSCENARIO 1.x.
  2. Migration of an ASAM OpenSCENARIO 1.x scenario to an ASAM OpenSCENARIO 2.x scenario shall be possible.
  3. Conversion of a subset of ASAM OpenSCENARIO 2.x that maps to the feature set of ASAM OpenSCENARIO 1.x shall be possible.
  4. All future ASAM OpenSCENARIO releases shall be accompanied by an up-to-date ruleset for a migration path from 1.x to 2.x.
  5. The run time behavior of any scenario converted/migrated from the latest ASAM OpenSCENARIO 1.x to ASAM OpenSCENARIO 2.x shall be the same. This requirement can be influenced by implementation-specific factors, which are not addressed here. In other words, whatever you can express in ASAM OpenSCENARIO 1.x you will be able to express in ASAM OpenSCENARIO 2.x in order to get the same runtime behavior.

 

Relation between ASAM OpenSCENARIO® 1.x and ASAM OpenSCENARIO® 2.x

ASAM OpenSCENARIO 1.x is based on an XML format. The most recent version is V1.2.0.  ASAM OpenSCENARIO 2.x is based on a domain specific programming language and includes an extendable domain model. The extension mechanism is described in Section 9.3 "Extending the domain model". The domain model represents the central concepts of the on-road driving domain, see Section 8.1 "Domain model introduction".

The first version for ASAM OpenSCENARIO 2.x - which is V2.0.0 (downloadable on this page) - is being released together with this statement. ASAM OpenSCENARIO 2.x is not backwards compatible with ASAM OpenSCENARIO 1.x, although it may be possible to convert certain scenarios using a subset that is directly supported by ASAM OpenSCENARIO 1.x. ASAM OpenSCENARIO 2.x is intended as a superset to ASAM OpenSCENARIO 1.x. In other words, what you can do in ASAM OpenSCENARIO 1.x you can do in ASAM OpenSCENARIO 2.x, and more. An improvement with ASAM OpenSCENARIO V2.0.0 is the support for abstract scenarios.

Concrete and logical scenarios can be expressed in both versions, however ASAM OpenSCENARIO 2.x offers additional features that enrich the scenario description. As ASAM OpenSCENARIO 1.x does not support abstract descriptions, it has no direct equivalent to ASAM OpenSCENARIO 2.x.

Neither version of ASAM OpenSCENARIO guarantees exact reproducibility across different tools due to the high amount of implementation-specific factors that may influence the simulation results. The focus of this standard is on enabling exchange and re-use of scenario descriptions. This does not change across the versions – given the right conversion mechanism.

All parameters in an ASAM OpenSCENARIO V1.2.0 scenario file must have a default value assigned, which means that by itself these scenario files are always concrete. Such a scenario file may be accompanied by an additional parameter distribution file, and if used together with the scenario file in an implementation that supports it, the combination is considered a logical scenario. In such a case the default values are overridden.

It is important to note, that the more abstract a scenario, the more possible valid solutions there may be and the lower the guarantee of another user replicating an exact scenario or set of scenarios during concretization. This is due to the nature of abstraction levels. For further information, the reader is referred to additional literature, see e.g. Neurohr et al., 2021.

In addition to supporting more levels of scenario abstraction, ASAM OpenSCENARIO 2.x also provides the following new features:

  • A programming language, an object-oriented DSL
  • Consistent scenario description over concrete, logical and abstract scenario levels
  • Increased support for binding to external code/functions/methods (e.g. distribution functions, statistics)
  • Built in constraints
  • Built in KPI and coverage measurements
  • Increased support for reuse (e.g. of scenarios, libraries or modifiers)
  • Extendible language and domain entities
  • Designed to support additional non-simulation based use cases such as X-in-the-loop or proving grounds
  • Abstract road network description independent and complimentary to specific map formats (Section 8.5, "Abstract road network")

It should be noted that many of these new features are not a mandatory part of a scenario description. For a full overview of the new features and increased scope, refer to Section 1 "Scope". As this is the first release of the DSL with the many new features, we expect there to be a need for additional functionality that is not yet a part of the standard. The language supports self-extension as well as the ability to bind to external software methods defined in other languages or mechanisms. The domain model can also be extended with further entities, actors, or actions that it does not yet define, see Section 9.3 "Extending the domain model". It is expected that future projects will investigate the integration of relevant user-defined extensions into future versions of the standard.

 

Migration

Due to the more descriptive nature of the DSL and the difference in its semantics to ASAM OpenSCENARIO 1.x there are often multiple options to migrate from 1.x to ASAM 2.x. Often elements in ASAM OpenSCENARIO 1.x, such as behaviors or actions do not have a one-to-one mapping, but the behavior can be replicated through combinations of language constructs in ASAM OpenSCENARIO 2.x. Options to do this are documented in the standard. Other times, there are elements that have no direct mapping, such as controllers. These are not domain elements and rather data model constructs specific to ASAM OpenSCENARIO 1.x that do not have an equivalent in 2.x.

Section 10 "Migrating from ASAM OpenSCENARIO V1.2.0" provides significant detail on how users of ASAM OpenSCENARIO 1.x can migrate their scenarios to ASAM OpenSCENARIO V2.0.0. This is currently non-normative and does not yet cover all elements. Section 10.8 "Elements from V1.2.0 not yet covered" shows where coverage is not yet complete. See the roadmap for what we plan to do to improve this. ASAM OpenSCENARIO V2.0.0 does not yet include a normative ruleset enabling direct or automated conversion from ASAM OpenSCENARIO 1.x scenarios. ASAM aims to include this in future releases.

 

Roadmap

Throughout the last years, ASAM has consistently communicated a convergence roadmap. ASAM expects (and encourages) both parallel versions of ASAM OpenSCENARIO to converge to a unified version.

 

 

Given the current release, this roadmap has been updated.

 

 

ASAM aims to converge the two parallel versions by the end of 2024. To ensure co-development, ASAM will setup a joint project to develop one converged version of ASAM OpenSCENARIO that is based on the DSL defined in ASAM OpenSCENARIO V2.0.0. This will likely be a new major version.

This version shall have full coverage of the domain features in ASAM OpenSCENARIO 1.x as well as in ASAM OpenSCENARIO 2.x. It will be a full superset. A converged version will have at least one clear mapping for domain features of previous versions. It is still open to which extent this will be automatable.

On the way to a converged version, the project may release additional versions of both ASAM OpenSCENARIO 1.x and ASAM OpenSCENARIO 2.x based on a shared backlog. At the least ASAM expects there to be an ASAM OpenSCENARIO V1.3.0, an ASAM OpenSCENARIO V2.0.1 and an ASAM OpenSCENARIO V2.1.0. There may be more, dependent on the backlog.

A joint project may define new features during the convergence period but these must be reflected in both ASAM OpenSCENARIO 1.x and ASAM OpenSCENARIO 2.x. Once a converged version is released, ASAM OpenSCENARIO 1.x will move into maintenance mode and no new features will be added. From then on, new features will only be available in the converged ASAM OpenSCENARIO (see Supplementary notes 2022-07-20 3 version of ASAM OpenSCENARIO). The converged version will be based on the DSL and the domain model. Currently it is not planned for the converged version to support the XML format.

 


DATASHEET
Domain
Simulation
Current Version
2.0.0
Release Date
20 Jul 2022
Application Areas
  • Simulation
  • X-in-the-loop
  • Proving grounds
Specification Content
  • Language specification
  • Domain model specification
File Formats
  • osc
Scope
Dynamic scenario description
Our newsletter informs you when a new standard version is released.
Subscribe