def __init__(self, room_length=3, num_rooms_per_side=2):
assert room_length % 2 == 1, "room_length must be odd"
assert room_length >= 3, "room_length must be greater than 3"
assert num_rooms_per_side >= 1, "must have at least 1 room"
self.room_length = room_length
self.num_rooms_per_side = num_rooms_per_side
# 0 = up, 1 = right, 2 = down, 3 = left
self.action_space = spaces.Discrete(4)
self.max_pos = room_length * num_rooms_per_side - 1
obs_space = (self.max_pos + 1, self.max_pos + 1, 1)
self.observation_space = spaces.Box(low=0, high=1, shape=obs_space)
self.goal_reward = 1
self.goal_state = [self.max_pos, self.max_pos]
self._obs = np.zeros(obs_space)
self._reset()
评论列表
文章目录