浏览代码

Renamed Playground-v1 to RoomGrid-v0

Maxime Chevalier-Boisvert 7 年之前
父节点
当前提交
99931d11d0
共有 2 个文件被更改,包括 14 次插入7 次删除
  1. 1 1
      gym_minigrid/envs/__init__.py
  2. 13 6
      gym_minigrid/envs/playground_v1.py

+ 1 - 1
gym_minigrid/envs/__init__.py

@@ -8,4 +8,4 @@ from gym_minigrid.envs.putnear import *
 from gym_minigrid.envs.lockedroom import *
 from gym_minigrid.envs.fourroomqa import *
 from gym_minigrid.envs.playground_v0 import *
-from gym_minigrid.envs.playground_v1 import *
+from gym_minigrid.envs.roomgrid import *

+ 13 - 6
gym_minigrid/envs/playground_v1.py

@@ -30,16 +30,18 @@ class Room:
             topY + 1, topY + sizeY - 1
         )
 
-class PlaygroundV1(MiniGridEnv):
+class RoomGrid(MiniGridEnv):
     """
     Environment with multiple rooms and random objects.
-    This environment has no specific goals or rewards.
+    This is meant to serve as a base class for other environments.
     """
 
     def __init__(
             self,
             roomSize=6,
-            numCols=4
+            numCols=4,
+            maxObsPerRoom=3,
+            lockedRooms=False
     ):
         assert roomSize > 0
         assert roomSize >= 4
@@ -47,9 +49,12 @@ class PlaygroundV1(MiniGridEnv):
         self.roomSize = roomSize
         self.numCols = numCols
         self.numRows = numCols
+        self.maxObsPerRoom =  maxObsPerRoom
+        self.lockedRooms = False
 
         gridSize = (roomSize - 1) * numCols + 1
         super().__init__(gridSize=gridSize, maxSteps=6*gridSize)
+
         self.reward_range = (0, 1)
 
     def _genGrid(self, width, height):
@@ -90,6 +95,8 @@ class PlaygroundV1(MiniGridEnv):
         # Randomize the player start position and orientation
         self.placeAgent()
 
+        # TODO: respect maxObsPerRoom
+
         # Place random objects in the world
         types = ['key', 'ball', 'box']
         for i in range(0, 12):
@@ -107,10 +114,10 @@ class PlaygroundV1(MiniGridEnv):
         self.mission = ''
 
     def step(self, action):
-        obs, reward, done, info = super().step(self, action)
+        obs, reward, done, info = super().step(action)
         return obs, reward, done, info
 
 register(
-    id='MiniGrid-Playground-v1',
-    entry_point='gym_minigrid.envs:PlaygroundV1'
+    id='MiniGrid-RoomGrid-v0',
+    entry_point='gym_minigrid.envs:RoomGrid'
 )