stormvogel.examples.cheese_maze

Attributes

Functions

create_cheese_maze([num_corridors, vcorridor_length, ...])

Build the cheese maze POMDP using the bird API.

Module Contents

stormvogel.examples.cheese_maze._OBS_ID
stormvogel.examples.cheese_maze.create_cheese_maze(num_corridors: int = 3, vcorridor_length: int = 2, slippery: float = 0.0)

Build the cheese maze POMDP using the bird API.

The maze has a horizontal corridor (top row) of width 2*num_corridors-1 connected to num_corridors vertical corridors. Each vertical corridor ends at the bottom row, where the middle corridor holds the cheese and the rest hold dragons.

Observations are determined by which directions are open (walls / grid boundaries), except for the bottom row and the special start state.

Parameters:
  • num_corridors – Number of vertical corridors. Must be odd and >= 3.

  • vcorridor_length – Number of blue cells in each vertical corridor (rows between horizontal corridor and bottom row).

  • slippery – Probability that an action is a no-op (agent stays in place). Must be in [0, 1). Default 0 gives fully deterministic moves. Has no effect when the intended move would already stay in place (wall or boundary), since both outcomes coincide.