def __init__(self, state_id, actions):
        self.id = state_id
        """:type: int"""
        self.models = {a: StateActionInfo() for a in actions}
        """:type: dict[Action, StateActionInfo]"""
        # Randomizing the initial q-values impedes performance
        # self.q = {a: ((0.01 - 0.0) * np.random.random() + 0.0) for a in actions}
        self.q = {a: 0.0 for a in actions}
        """:type: dict[Action, float]"""
        self.steps_away = 100000
        """:type: int"""