mirror of
https://github.com/illiumst/marl-factory-grid.git
synced 2025-05-22 14:56:43 +02:00
147 lines
4.7 KiB
YAML
147 lines
4.7 KiB
YAML
# 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.
|
|
|
|
# An Agent requires a list of actions and observations.
|
|
# Possible actions: Noop, Charge, Clean, DestAction, DoorUse, ItemAction, MachineAction, Move8, Move4, North, NorthEast, ...
|
|
# Possible observations: All, Combined, GlobalPosition, Battery, ChargePods, DirtPiles, Destinations, Doors, Items, Inventory, DropOffLocations, Maintainers, ...
|
|
# You can use 'clone' as the agent name to have multiple instances with either a list of names or an int specifying the number of clones.
|
|
Agents:
|
|
Wolfgang:
|
|
Actions:
|
|
- Noop
|
|
- Charge
|
|
- Clean
|
|
- DestAction
|
|
- DoorUse
|
|
- ItemAction
|
|
- Move8
|
|
Observations:
|
|
- Combined:
|
|
- Other
|
|
- Walls
|
|
- GlobalPosition
|
|
- Battery
|
|
- ChargePods
|
|
- DirtPiles
|
|
- Destinations
|
|
- Doors
|
|
- Items
|
|
- Inventory
|
|
- DropOffLocations
|
|
- Maintainers
|
|
|
|
# Entities section defines the initial parameters and behaviors of different entities in the environment.
|
|
# Entities all spawn using coords_or_quantity, a number of entities or coordinates to place them.
|
|
Entities:
|
|
# Batteries: Entities representing power sources for agents.
|
|
Batteries:
|
|
initial_charge: 0.8
|
|
per_action_costs: 0.02
|
|
|
|
# ChargePods: Entities representing charging stations for Batteries.
|
|
ChargePods:
|
|
coords_or_quantity: 2
|
|
|
|
# Destinations: Entities representing target locations for agents.
|
|
# - spawn_mode: GROUPED or SINGLE. Determines how destinations are spawned.
|
|
Destinations:
|
|
coords_or_quantity: 1
|
|
spawn_mode: GROUPED
|
|
|
|
# DirtPiles: Entities representing piles of dirt.
|
|
# - initial_amount: Initial amount of dirt in each pile.
|
|
# - clean_amount: Amount of dirt cleaned in each cleaning action.
|
|
# - dirt_spawn_r_var: Random variation in dirt spawn amounts.
|
|
# - max_global_amount: Maximum total amount of dirt allowed in the environment.
|
|
# - max_local_amount: Maximum amount of dirt allowed in one position.
|
|
DirtPiles:
|
|
coords_or_quantity: 10
|
|
initial_amount: 2
|
|
clean_amount: 1
|
|
dirt_spawn_r_var: 0.1
|
|
max_global_amount: 20
|
|
max_local_amount: 5
|
|
|
|
# Doors are spawned using the level map.
|
|
Doors:
|
|
|
|
# DropOffLocations: Entities representing locations where agents can drop off items.
|
|
# - max_dropoff_storage_size: Maximum storage capacity at each drop-off location.
|
|
DropOffLocations:
|
|
coords_or_quantity: 1
|
|
max_dropoff_storage_size: 0
|
|
|
|
# GlobalPositions.
|
|
GlobalPositions: { }
|
|
|
|
# Inventories: Entities representing inventories for agents.
|
|
Inventories: { }
|
|
|
|
# Items: Entities representing items in the environment.
|
|
Items:
|
|
coords_or_quantity: 5
|
|
|
|
# Machines: Entities representing machines in the environment.
|
|
Machines:
|
|
coords_or_quantity: 2
|
|
|
|
# Maintainers: Entities representing maintainers that aim to maintain machines.
|
|
Maintainers:
|
|
coords_or_quantity: 1
|
|
|
|
|
|
# Rules section specifies the rules governing the dynamics of the environment.
|
|
Rules:
|
|
# Environment Dynamics
|
|
# When stepping over a dirt pile, entities carry a ratio of the dirt to their next position
|
|
EntitiesSmearDirtOnMove:
|
|
smear_ratio: 0.2
|
|
# Doors automatically close after a certain number of time steps
|
|
DoorAutoClose:
|
|
close_frequency: 10
|
|
# Maintainers move at every time step
|
|
MoveMaintainers:
|
|
|
|
# Respawn Stuff
|
|
# Define how dirt should respawn after the initial spawn
|
|
RespawnDirt:
|
|
respawn_freq: 15
|
|
# Define how items should respawn after the initial spawn
|
|
RespawnItems:
|
|
respawn_freq: 15
|
|
|
|
# Utilities
|
|
# This rule defines the collision mechanic, introduces a related DoneCondition and lets you specify rewards.
|
|
# Can be omitted/ignored if you do not want to take care of collisions at all.
|
|
WatchCollisions:
|
|
done_at_collisions: false
|
|
|
|
# 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:
|
|
# The environment stops when all dirt is cleaned
|
|
DoneOnAllDirtCleaned:
|
|
# The environment stops when a battery is discharged
|
|
DoneAtBatteryDischarge:
|
|
# The environment stops when a maintainer reports a collision
|
|
DoneAtMaintainerCollision:
|
|
# The environment stops after max steps
|
|
DoneAtMaxStepsReached:
|
|
max_steps: 500
|