documentation config files

This commit is contained in:
Chanumask
2023-11-27 17:36:33 +01:00
parent e1cc34b30f
commit 6ce4226a20
6 changed files with 127 additions and 67 deletions

View File

@ -1,4 +1,21 @@
General:
# RNG-seed to sample the same "random" numbers every time, to make the different runs comparable.
env_seed: 69
# Individual vs global rewards
individual_rewards: true
# The level.txt file to load from marl_factory_grid/levels
level_name: rooms
# Radius of Partially observable Markov decision process
pomdp_r: 3
# Print all messages and events
verbose: True
# Run tests
tests: false
# In the "clean and bring" Scenario one agent aims to pick up all items and drop them at drop-off locations while all
# other agents aim to clean dirt piles.
Agents: Agents:
# The clean agents
Wolfgang: Wolfgang:
Actions: Actions:
- Move8 - Move8
@ -12,6 +29,7 @@ Agents:
- DirtPiles - DirtPiles
Clones: 8 Clones: 8
# The item agent
Juergen: Juergen:
Actions: Actions:
- Move8 - Move8
@ -42,33 +60,32 @@ Entities:
Items: Items:
coords_or_quantity: 5 coords_or_quantity: 5
# Rules section specifies the rules governing the dynamics of the environment.
General:
env_seed: 69
individual_rewards: true
level_name: rooms
pomdp_r: 3
verbose: True
tests: false
Rules: Rules:
# Environment Dynamics # Environment Dynamics
# When stepping over a dirt pile, entities carry a ratio of the dirt to their next position
EntitiesSmearDirtOnMove: EntitiesSmearDirtOnMove:
smear_ratio: 0.2 smear_ratio: 0.2
# Doors automatically close after a certain number of time steps
DoorAutoClose: DoorAutoClose:
close_frequency: 7 close_frequency: 7
# Respawn Stuff # Respawn Stuff
# Define how dirt should respawn after the initial spawn
RespawnDirt: RespawnDirt:
respawn_freq: 30 respawn_freq: 30
# Define how items should respawn after the initial spawn
RespawnItems: RespawnItems:
respawn_freq: 50 respawn_freq: 50
# Utilities # Utilities
# Define what happens on entity collisions
WatchCollisions: WatchCollisions:
done_at_collisions: false done_at_collisions: false
# Done Conditions # Done Conditions
# Define the conditions for the environment to stop. Either success or a fail conditions.
# The environment stops when all dirt is cleaned
DoneOnAllDirtCleaned: DoneOnAllDirtCleaned:
DoneAtMaxStepsReached: DoneAtMaxStepsReached:
max_steps: 500 max_steps: 500

View File

@ -1,5 +1,19 @@
# Default Configuration File # Default Configuration File
General:
# RNG-seed to sample the same "random" numbers every time, to make the different runs comparable.
env_seed: 69
# Individual vs global rewards
individual_rewards: true
# The level.txt file to load from marl_factory_grid/levels
level_name: large
# View Radius; 0 = full observatbility
pomdp_r: 3
# Print all messages and events
verbose: false
# Run tests
tests: false
# Agents section defines the characteristics of different agents in the environment. # Agents section defines the characteristics of different agents in the environment.
# An Agent requires a list of actions and observations. # An Agent requires a list of actions and observations.
@ -93,38 +107,42 @@ Entities:
# Zones: Entities representing zones in the environment. # Zones: Entities representing zones in the environment.
Zones: { } Zones: { }
# General section includes general settings for the environment.
General:
env_seed: 69
individual_rewards: true
level_name: large
pomdp_r: 3
verbose: false
tests: false
# Rules section specifies the rules governing the dynamics of the environment. # Rules section specifies the rules governing the dynamics of the environment.
Rules: Rules:
# Environment Dynamics # Environment Dynamics
# When stepping over a dirt pile, entities carry a ratio of the dirt to their next position
EntitiesSmearDirtOnMove: EntitiesSmearDirtOnMove:
smear_ratio: 0.2 smear_ratio: 0.2
# Doors automatically close after a certain number of time steps
DoorAutoClose: DoorAutoClose:
close_frequency: 10 close_frequency: 10
# Maintainers move at every time step
MoveMaintainers: MoveMaintainers:
# Respawn Stuff # Respawn Stuff
# Define how dirt should respawn after the initial spawn
RespawnDirt: RespawnDirt:
respawn_freq: 15 respawn_freq: 15
# Define how items should respawn after the initial spawn
RespawnItems: RespawnItems:
respawn_freq: 15 respawn_freq: 15
# Utilities # Utilities
# Define what happens on entity collisions
WatchCollisions: WatchCollisions:
done_at_collisions: false done_at_collisions: false
# Done Conditions # Done Conditions
# Define the conditions for the environment to stop. Either success or a fail conditions.
# The environment stops when an agent reaches a destination
DoneAtDestinationReach: DoneAtDestinationReach:
# The environment stops when all dirt is cleaned
DoneOnAllDirtCleaned: DoneOnAllDirtCleaned:
# The environment stops when a battery is discharged
DoneAtBatteryDischarge: DoneAtBatteryDischarge:
# The environment stops when a maintainer reports a collision
DoneAtMaintainerCollision: DoneAtMaintainerCollision:
# The environment stops after max steps
DoneAtMaxStepsReached: DoneAtMaxStepsReached:
max_steps: 500 max_steps: 500

View File

@ -1,11 +1,17 @@
General: General:
env_seed: 69 env_seed: 69
# Individual vs global rewards
individual_rewards: true individual_rewards: true
# The level.txt file to load from marl_factory_grid/levels
level_name: eight_puzzle level_name: eight_puzzle
# View Radius; 0 = full observatbility
pomdp_r: 0 pomdp_r: 0
# Print all messages and events
verbose: True verbose: True
# Run tests
tests: false tests: false
# In the "eight puzzle" there are 8 agents standing on a 3x3 map, each with a specific destination to reach.
Agents: Agents:
Wolfgang: Wolfgang:
Actions: Actions:
@ -27,7 +33,9 @@ Agents:
- Dennis - Dennis
- Karl-Heinz - Karl-Heinz
- Kevin - Kevin
# multiple agents can not stand on the same location
is_blocking_pos: true is_blocking_pos: true
Entities: Entities:
Destinations: Destinations:
# Let them spawn on closed doors and agent positions # Let them spawn on closed doors and agent positions
@ -54,7 +62,8 @@ Rules:
done_at_collisions: false done_at_collisions: false
# Done Conditions # Done Conditions
# Done when all agents are standing on the correct destination at the same time
DoneAtDestinationReach: DoneAtDestinationReach:
condition: simultanious condition: simultaneous
DoneAtMaxStepsReached: DoneAtMaxStepsReached:
max_steps: 500 max_steps: 500

View File

@ -1,14 +1,16 @@
General: General:
# Your Seed # Your Seed
env_seed: 69 env_seed: 69
# Individual or global rewards? # Individual vs global rewards
individual_rewards: true individual_rewards: true
# The level.txt file to load # The level.txt file to load from marl_factory_grid/levels
level_name: narrow_corridor level_name: narrow_corridor
# View Radius; 0 = full observatbility # View Radius; 0 = full observatbility
pomdp_r: 0 pomdp_r: 0
# print all messages and events # print all messages and events
verbose: true verbose: true
# Run tests
tests: false
Agents: Agents:
# Agents are identified by their name # Agents are identified by their name

View File

@ -1,30 +1,18 @@
General: General:
env_seed: 69 env_seed: 69
# Individual vs global rewards
individual_rewards: true individual_rewards: true
# The level.txt file to load from marl_factory_grid/levels
level_name: two_rooms level_name: two_rooms
# View Radius; 0 = full observatbility
pomdp_r: 3 pomdp_r: 3
# Print all messages and events
verbose: false verbose: false
# Run tests
tests: false
Entities: # In "two rooms one door" scenario 2 agents spawn in 2 different rooms that are connected by a single door. Their aim
Destinations: {} # is to reach the destination in the room they didn't spawn in leading to a conflict at the door.
Doors: {}
GlobalPositions: {}
Zones: {}
Rules:
# Init:
AssignGlobalPositions: {}
ZoneInit: {}
AgentSingleZonePlacement: {}
IndividualDestinationZonePlacement: {}
# Env Rules
MaxStepsReached:
max_steps: 10
Collision:
done_at_collisions: false
DoorAutoClose:
close_frequency: 10
Agents: Agents:
Wolfgang: Wolfgang:
Actions: Actions:
@ -49,3 +37,29 @@ Agents:
- Walls - Walls
- Destination - Destination
- Doors - Doors
Entities:
Destinations: { }
Doors: { }
GlobalPositions: { }
Zones: { }
Rules:
# Environment Dynamics
DoorAutoClose:
close_frequency: 10
# Utilities
# Define what happens on entity collisions
WatchCollisions:
done_at_collisions: false
# Init
AssignGlobalPositions: { }
ZoneInit: { }
AgentSingleZonePlacement: { }
IndividualDestinationZonePlacement: { }
# Done Conditions
MaxStepsReached:
max_steps: 10

View File

@ -13,7 +13,7 @@ from marl_factory_grid.utils.states import Gamestate
ANY = 'any' ANY = 'any'
ALL = 'all' ALL = 'all'
SIMULTANEOUS = 'simultanious' SIMULTANEOUS = 'simultaneous'
CONDITIONS = [ALL, ANY, SIMULTANEOUS] CONDITIONS = [ALL, ANY, SIMULTANEOUS]