Skip to content

Scenariofile

The scenariofile is a YAML-based file to specifiy the simulation setup. It can contain the following keys:

title

Can be any string, purely descriptive at the moment.

Properties
  • Required: :fontawesome-solid-star-of-life:
  • Reasonable default: ScenarioTitle
  • Data type: std::string

name

Can be any string, purely descriptive at the moment.

Properties
  • Required:
  • Reasonable default: ScenarioName
  • Data type: std::string

stop_time

Defines at which simulation time the simulation will be aborted if it does not finish earlier.

Properties
  • Required: :fontawesome-solid-star-of-life:
  • Data type: std::string
  • Possible values: Any string ending with a unit prefix like "s" or "ms". If no unit is given, it will be treated as seconds.

version

Can be used to differentiate different implementation versions. Currently not used.

Properties
  • Required:
  • Reasonable default: 0.1
  • Data type: std::string

default_delay

Delay between each simulation step (operations defined in the scenario_sequence, respectively between each step for x-many operations).

Properties
  • Required: :fontawesome-solid-star-of-life:
  • Data type: std::string
  • Possible values: Any string ending with a unit prefix like "s" or "ms". If no unit is given, it will be treated as seconds.

random_seed

Seed used for reproducable simulations. If =0 random results are produced.

Properties
  • Required: :fontawesome-solid-star-of-life:
  • Reasonable default: 1
  • Data type: uint64_t

output_path

Directory path for the resulting logging output.

Properties
  • Required: Only if environment variable DAISI_OUTPUT_PATH is not set. This yml paramater takes precedence if both are set.
  • Reasonable default: /work/ns3/results/
  • Data type: std::string

topology

Start of a sequence of mappings to define the topology of the simulation area (for example a factory hall). Details about all possible properties can be found on the Doxygen page.

Properties
  • Required: :fontawesome-solid-star-of-life:
  • Possible values: see Doxygen
topology:
    width:  50
    height: 20
    depth:   0

initial_number_of_amrs

Number of AMRs spawned in the simulation. One AMR consists of two applications (logical AMR agent and physical AMR) running on a single ns-3 node. Currently the number of AMRs cannot be changed at runtime, hence this is the total number of AMRs during the entire simulation.

Properties
  • Required: :fontawesome-solid-star-of-life:
  • Reasonable default: 12
  • Data type: uint64_t

number_of_material_flow_agents

Number of Material flow agents that should be spawned. For each agent a separate ns-3 node is created.

Properties
  • Required: :fontawesome-solid-star-of-life:
  • Reasonable default: 5
  • Data type: uint64_t

algorithm

Start of a sequence of mappings to specify the algorithms used by the logical agents.

Properties
  • Required: :fontawesome-solid-star-of-life:
  • Possible values: assignment_strategy

algorithm.assignment_strategy

The algorithm used to assign tasks/orders.

Properties
  • Required: :fontawesome-solid-star-of-life:
  • Possible values: iterated_auction, round_robin

autonomous_mobile_robots

Map containing the description of different types of AMRs.

Properties
  • Required: :fontawesome-solid-star-of-life:
  • Possible values: description

autonomous_mobile_robots.description

Map containing the description of a single type of AMR.

Properties
  • Required: :fontawesome-solid-star-of-life:
  • Possible values: properties, kinematics, load_handling

autonomous_mobile_robots.description.properties

Basic properties about the AMR. Details about all possible properties can be found on the Doxygen page.

Properties
  • Required: :fontawesome-solid-star-of-life:
  • Possible values: see Doxygen

autonomous_mobile_robots.description.kinematic

Information about the kinematics of the AMR. Details about all possible keys can be found on the Doxygen page.

Properties
  • Required: :fontawesome-solid-star-of-life:
  • Possible values: see Doxygen

autonomous_mobile_robots.description.load_handling

Information about the load handling units of the AMR. Details about all possible keys can be found on the Doxygen page.

Properties
  • Required: :fontawesome-solid-star-of-life:
  • Possible values: see Doxygen

material_flows

Start of a sequence of mapping to specify the material flows.

Currently only placeholder.

Properties
  • Required: :fontawesome-solid-star-of-life:
  • Possible values: mf

material_flows.mf

Map of information about a specific material flow.

Properties
  • Required: :fontawesome-solid-star-of-life:
  • Possible values: mfdl_program, friendly_name

material_flows.mf.mfdl_program

Currently unused.

Properties
  • Required: :fontawesome-solid-star-of-life:
  • Data type: std::string

material_flows.mf.friendly_name

Human readable name of this material flow.

Properties
  • Required: :fontawesome-solid-star-of-life:
  • Data type: std::string

scenario_sequence

A dictionary containing a list of possible scenario sequence steps. The steps are executed in the same order as they appear in the sequence.

Properties
  • Required: :fontawesome-solid-star-of-life:
  • Possible values: spawnInfo

scenario_sequence.spawnInfo

Scenario step to initialize and start entities.

Properties
  • Required: :fontawesome-solid-star-of-life:
  • Possible values: entity, friendly_name, start_time, spawn_distribution

scenario_sequence.spawnInfo.entity

The general type of entity to initialize.

Properties
  • Required: :fontawesome-solid-star-of-life:
  • Possible value: amr, mf
  • Data type: std::string

scenario_sequence.spawnInfo.friendly_name

The specific typ of the entity to initialize (for example the friendly name of a AMR type specified with autonomous_mobile_robots)

Properties
  • Required: :fontawesome-solid-star-of-life:
  • Data type: std::string

scenario_sequence.spawnInfo.start_time

Properties
  • Required: :fontawesome-solid-star-of-life:
  • Data type: std::string
  • Possible values: Any string ending with a unit prefix like "s" or "ms". If no unit is given, it will be treated as seconds.

scenario_sequence.spawnInfo.spawn_distribution

Map containing information about the spawn distribution.

Properties
  • Required: :fontawesome-solid-star-of-life:
  • Possible values: type, number, mean, sigma, percentage

scenario_sequence.spawnInfo.spawn_distribution.type

Properties
  • Required: :fontawesome-solid-star-of-life:
  • Possible values: absolute, gaussian, relative
  • Data type: std::string

scenario_sequence.spawnInfo.spawn_distribution.number

For absolute distribution.

Properties
  • Required: :fontawesome-solid-star-of-life:
  • Data type: uint16_t

scenario_sequence.spawnInfo.spawn_distribution.mean

Mean for gaussian distribution.

Properties
  • Required: :fontawesome-solid-star-of-life:
  • Data type: double

scenario_sequence.spawnInfo.spawn_distribution.sigma

Standard deviation for gaussian distribution.

Properties
  • Required: :fontawesome-solid-star-of-life:
  • Data type: double

scenario_sequence.spawnInfo.spawn_distribution.percentage

Percentage for relative distribution.

Properties
  • Required: :fontawesome-solid-star-of-life:
  • Data type: double