Systems

System components handle more technical aspects of the simulation. The mandatory System component in VLMP is “simulationName,” which must always be present as it names the simulation. An optional component is “backup,” which, if added, performs a simulation backup at specified intervals. Here is an example of the System category with two components, the mandatory “simulationName” and “backup”:

"system":[
    {"type":"simulationName",
     "parameters":{"simulationName":"exampleName"}},
    {"type":"backup",
     "parameters":{"backupIntervalStep":1000,
                   "backupFilePath":"backup"}}
]

This example shows how, besides the simulation name, a backup component is added. This component will perform a backup every 1000 steps and save it in the file named “backup”. When this component is added, it not only enables backup at certain intervals but also allows for rebooting the simulation if an error occurs.

The complete list of System components is as follows:


backup

author

Pablo Ibáñez-Freire

Component used to add a backup system to the simulation. When this component is added to the simulation, the simulation will create a backup of the simulation every backupIntervalStep steps. The simulation will try to restore the simulation from the backup if the simulation crashes.

Required Parameters

Name

Description

Type

Default

backupIntervalStep

Interval of steps between backups

ullint

Optional Parameters

Name

Description

Type

Default

backupEndStep

Step at which the backup ends

ullint

MAX_ULLINT

backupFilePath

Path to the backup file

str

backup

backupStartStep

Step at which the backup starts

ullint

0

Example:

{
        "type": "backup",
        "backupIntervalStep": 1000,
        "backupFilePath": "backup"
}

seed

author

Pablo Ibáñez-Freire

This component sets the seed for the random number generator

Required Parameters

Name

Description

Type

Default

seed

Seed for the random number generator

int

Example:

{
        "type": "seed",
        "seed": 123456
}

simulationName

author

Pablo Ibáñez-Freire

Essential component for naming a simulation. This component is compulsory in every simulation configuration as each simulation requires a unique name. The ‘simulationName’ component assigns a descriptive and identifiable name to a simulation, facilitating its management and reference within the system. This name is used as the primary identifier for the simulation across various components and modules.

Required Parameters

Name

Description

Type

Default

simulationName

Unique name assigned to the simulation

str

Example:

{
        "type": "simulationName",
        "simulationName": "MyUniqueSimulationName"
}