config/main.yaml#
An example main configuration file for the ARGoS engine:
# Per-project configuration for SIERRA core. This dictionary is
# mandatory.
sierra:
# Configuration for each experimental run. This dictionary is
# mandatory for all experiments.
run:
# The directory within each experimental run's working
# directory which will contain the metrics output as by the
# run. This key is mandatory for all experiments. Can be
# anything; this is the interface link between where the
# project code outputs things and where SIERRA looks for
# outputs.
run_metrics_leaf: 'metrics'
# The name of the shared library where project code can be
# found, sans file extension. Must include
# 'lib'. Optional. If not present, then SIERRA will use
# ``--project`` as the name of the library to tell ARGoS to
# use.
library_name: 'libawesome'
# Configuration for performance measures. This key is mandatory
# for all experiments. The value is the location of the .yaml
# configuration file for performance measures. It is a separate
# config file so that multiple scenarios within a single
# project which define performance measures in different ways
# can be easily accommodated without copy-pasting.
perf: 'perf-config.yaml'
An example main configuration file for the ROS1+Gazebo engine:
# Per-project configuration for SIERRA core. This dictionary is
# mandatory.
sierra:
# Configuration for each experimental run. This dictionary is
# mandatory for all experiments.
run:
# The directory within each experimental run's working
# directory which will contain the metrics output as by the
# run. This key is mandatory for all experiments. Can be
# anything; this is the interface link between where the
# project code outputs things and where SIERRA looks for
# outputs.
run_metrics_leaf: 'metrics'
# Configuration for performance measures. This key is mandatory
# for all experiments. The value is the location of the .yaml
# configuration file for performance measures. It is a separate
# config file so that multiple scenarios within a single
# project which define performance measures in different ways
# can be easily accommodated without copy-pasting.
perf: 'perf-config.yaml'
# Configuration specific to the ROS engines. This
# dictionary is required if that engine is selected, and
# optional otherwise.
ros:
# The list of robot configuration for the engine that you want
# SIERRA to support (that actual list of robots supported by the
# engine can be much larger).
robots:
# The name of a supported robot which can be passed to
# ``--robot``. Can be any valid python string, and does not
# have to match whatever the robot is called in its ROS
# package.
governator:
# The ROS package that the robot can be found in. This
# package must be on your ROS_PACKAGE_PATH or SIERRA will
# fail at runtime. This key is required.
pkg: "my_ros_package"
# The name of your robot within its ROS package. Used by
# SIERRA to add the ROS node to load its description. This
# key is required.
model: "terminator"
# The name of a variation of the base robot model. This key
# is optional. If present, the actual name of the robot in
# the ROS package used to source the robot description is
# constructed via <model>_<model_variant>
model_variant: "T1000"
# The robot prefix which will be prepended to the robot's
# numeric ID to form its UUID. E.g., for robot 14, its UUID
# will be <prefix>14. This is used by SIERRA to create
# unique namespaces for each robot's nodes so that all their
# ROS topics are unique.
prefix: "T"
myrobot2:
...
An example main configuration file for the ROS1+Robot engine:
# Per-project configuration for SIERRA core. This dictionary is
# mandatory.
sierra:
# Configuration for each experimental run. This dictionary is
# mandatory for all experiments.
run:
# The directory within each experimental run's working
# directory which will contain the metrics output as by the
# run. This key is mandatory for all experiments. Can be
# anything; this is the interface link between where the
# project code outputs things and where SIERRA looks for
# outputs.
run_metrics_leaf: 'metrics'
# Configuration for performance measures. This key is mandatory
# for all experiments. The value is the location of the .yaml
# configuration file for performance measures. It is a separate
# config file so that multiple scenarios within a single
# project which define performance measures in different ways
# can be easily accommodated without copy-pasting.
perf: 'perf-config.yaml'
# Configuration specific to the ROS engines. This
# dictionary is required if that engine is selected, and
# optional otherwise.
ros:
# The list of robot configuration for the engine that you want
# SIERRA to support (that actual list of robots supported by the
# engine can be much larger).
robots:
# The name of a supported robot which can be passed to
# ``--robot``. Can be any valid python string, and does not
# have to match whatever the robot is called in its ROS
# package.
turtlebot3:
# The robot prefix which will be prepended to the robot's
# numeric ID to form its UUID. E.g., for robot 14, its UUID
# will be <prefix>14. This is used by SIERRA to create
# unique namespaces for each robot's nodes so that all their
# ROS topics are unique (if desired).
prefix: "tb3_"
# The name of the setup script to source on login to each
# robot to setup the ROS environment. This key is optional.
setup_script: "$HOME/setup.bash"
myrobot2:
...