diff --git a/marl_factory_grid/configs/clean_and_bring.yaml b/marl_factory_grid/configs/clean_and_bring.yaml index 35aae3e..3d8efbb 100644 --- a/marl_factory_grid/configs/clean_and_bring.yaml +++ b/marl_factory_grid/configs/clean_and_bring.yaml @@ -8,7 +8,7 @@ General: # Radius of Partially observable Markov decision process pomdp_r: 3 # Print all messages and events - verbose: true + verbose: false # Run tests tests: false diff --git a/marl_factory_grid/configs/simple_crossing.yaml b/marl_factory_grid/configs/simple_crossing.yaml index bcc0cc8..2e2a9c6 100644 --- a/marl_factory_grid/configs/simple_crossing.yaml +++ b/marl_factory_grid/configs/simple_crossing.yaml @@ -6,14 +6,14 @@ General: level_name: simple_crossing # View Radius; 0 = full observatbility pomdp_r: 0 - verbose: true + verbose: false tests: false Agents: Agent_horizontal: Actions: - Noop - - Move8 + - Move4 Observations: - Walls - Other @@ -27,7 +27,7 @@ Agents: Agent_vertical: Actions: - Noop - - Move8 + - Move4 Observations: - Walls - Other diff --git a/marl_factory_grid/configs/two_rooms_one_door_modified.yaml b/marl_factory_grid/configs/two_rooms_one_door_modified.yaml new file mode 100644 index 0000000..c6132d6 --- /dev/null +++ b/marl_factory_grid/configs/two_rooms_one_door_modified.yaml @@ -0,0 +1,72 @@ +General: + env_seed: 69 + # Individual vs global rewards + individual_rewards: true + # The level.txt file to load from marl_factory_grid/levels + level_name: two_rooms_modified + # View Radius; 0 = full observatbility + pomdp_r: 3 + # Print all messages and events + verbose: false + # Run tests + tests: false + +# In "two rooms one door" scenario 2 agents spawn in 2 different rooms that are connected by a single door. Their aim +# is to reach the destination in the room they didn't spawn in leading to a conflict at the door. +Agents: + Wolfgang: + Actions: + - Move8 + - Noop + - DestAction + - DoorUse + Observations: + - Walls + - Other + - Doors + - Destination + Positions: + - (3,1) + Sigmund: + Actions: + - Move8 + - Noop + - DestAction + - DoorUse + Observations: + - Other + - Walls + - Destination + - Doors + Positions: + - (3,13) + +Entities: + Destinations: + spawnrule: + SpawnDestinationsPerAgent: + coords_or_quantity: + Wolfgang: + - (3,12) + Sigmund: + - (3,2) + + Doors: { } + GlobalPositions: { } + +Rules: + # Environment Dynamics + DoorAutoClose: + close_frequency: 10 + + # Utilities + # This rule defines the collision mechanic, introduces a related DoneCondition and lets you specify rewards. + WatchCollisions: + done_at_collisions: false + + # Init + AssignGlobalPositions: { } + + # Done Conditions + DoneAtMaxStepsReached: + max_steps: 100 diff --git a/marl_factory_grid/levels/two_rooms_modified.txt b/marl_factory_grid/levels/two_rooms_modified.txt new file mode 100644 index 0000000..892701e --- /dev/null +++ b/marl_factory_grid/levels/two_rooms_modified.txt @@ -0,0 +1,7 @@ +############### +#111111#222222# +#111111#222222# +#111111D222222# +#111111#222222# +#111111#222222# +############### \ No newline at end of file diff --git a/studies/normalization_study.py b/studies/normalization_study.py index 7c72982..dd48c60 100644 --- a/studies/normalization_study.py +++ b/studies/normalization_study.py @@ -1,6 +1,6 @@ -from algorithms.utils import Checkpointer +from marl_factory_grid.algorithms.utils import Checkpointer from pathlib import Path -from algorithms.utils import load_yaml_file, add_env_props, instantiate_class, load_class +from marl_factory_grid.algorithms.utils import load_yaml_file, add_env_props, instantiate_class, load_class # from algorithms.marl import LoopSNAC, LoopIAC, LoopSEAC