Source code for pomdp_py.problems.maze.domain.state

"""Defines the State for the maze domain, which is the position of the robot and its orientation.
"""

import pomdp_py
import numpy as np


[docs] class State(pomdp_py.State): """The state of the problem is just the robot position""" def __init__(self, positition, orientation): """ Initializes a state in light dark domain. Args: position (tuple): position of the robot. """ if len(position) != 2: raise ValueError("State position must be a vector of length 2") self.position = positition self.orientation = orientation def __hash__(self): return hash(self.position, self.orientation) def __eq__(self, other): if isinstance(other, State): return self.position == other.position else: return False def __str__(self): return self.__repr__() def __repr__(self): return "State(%s)" % (str(self.position, self.orientation))