class maze.core.trajectory_recording.records.state_record.StateRecord(maze_state: Any, maze_action: Optional[Any], step_event_log: maze.core.log_events.step_event_log.StepEventLog, reward: Union[float, numpy.ndarray, Any], done: Optional[bool], info: Optional[Dict], serializable_components: Dict[str, Any])

Keeps trajectory data for one step. Note: It should be ensured that the components are not going to change after assigning them to the step record (e.g. by copying the relevant ones, especially state and the serializable components).

  • maze_state – Current MazeState of the env.

  • maze_action – Last MazeAction taken by the agent.

  • step_event_log – Log of events dispatched by the env during the last step.

  • reward – Reward as returned by the environment (either scalar or distributed reward)

  • done – Dictionary indicating whether the environment or particular agents are done

  • info – Dictionary with any other supplementary information provided by the env

  • serializable_components – dict of all serializable components as provided by the env - e.g. { “demand_generator” : demand_generator_object }

property env_time

Internal time of environment (if available) that this record belongs to.