You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1423 lines
37 KiB

2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
  1. from __future__ import annotations
  2. from gymnasium.envs.registration import register
  3. from minigrid import minigrid_env, wrappers
  4. from minigrid.core import roomgrid
  5. from minigrid.core.world_object import Wall
  6. __version__ = "2.3.0"
  7. try:
  8. import sys
  9. from farama_notifications import notifications
  10. if "minigrid" in notifications and __version__ in notifications["minigrid"]:
  11. print(notifications["minigrid"][__version__], file=sys.stderr)
  12. except Exception: # nosec
  13. pass
  14. def register_minigrid_envs():
  15. # Playground
  16. # ----------------------------------------
  17. register(
  18. id="MiniGrid-Playground-v0",
  19. entry_point="minigrid.envs:Playground",
  20. kwargs={},
  21. )
  22. # BlockedUnlockPickup
  23. # ----------------------------------------
  24. register(
  25. id="MiniGrid-BlockedUnlockPickup-v0",
  26. entry_point="minigrid.envs:BlockedUnlockPickupEnv",
  27. )
  28. # LavaCrossing
  29. # ----------------------------------------
  30. register(
  31. id="MiniGrid-LavaCrossingS9N1-v0",
  32. entry_point="minigrid.envs:CrossingEnv",
  33. kwargs={"size": 9, "num_crossings": 1},
  34. )
  35. register(
  36. id="MiniGrid-LavaCrossingS9N2-v0",
  37. entry_point="minigrid.envs:CrossingEnv",
  38. kwargs={"size": 9, "num_crossings": 2},
  39. )
  40. register(
  41. id="MiniGrid-LavaCrossingS9N3-v0",
  42. entry_point="minigrid.envs:CrossingEnv",
  43. kwargs={"size": 9, "num_crossings": 3},
  44. )
  45. register(
  46. id="MiniGrid-LavaCrossingS11N5-v0",
  47. entry_point="minigrid.envs:CrossingEnv",
  48. kwargs={"size": 11, "num_crossings": 5},
  49. )
  50. # LavaSlippery
  51. # ----------------------------------------
  52. register(
  53. id="MiniGrid-LavaSlipperyS12-v0",
  54. entry_point="minigrid.envs:LavaSlipperyEnv1",
  55. kwargs={"size": 12},
  56. )
  57. register(
  58. id="MiniGrid-LavaSlipperyCliff-16x13-v0",
  59. entry_point="minigrid.envs:LavaSlipperyCliff",
  60. kwargs={"height": 13, "width": 16},
  61. )
  62. register(
  63. id="MiniGrid-LavaSlipperyCliff-16x13-Slip50-v0",
  64. entry_point="minigrid.envs:LavaSlipperyCliff",
  65. kwargs={"height": 13, "width": 16, "probability_intended": 0.5, "probability_turn_intended": 0.5},
  66. )
  67. register(
  68. id="MiniGrid-LavaSlipperyCliff-16x13-Slip50-Time-v0",
  69. entry_point="minigrid.envs:LavaSlipperyCliff",
  70. kwargs={"height": 13, "width": 16, "probability_intended": 0.5, "probability_turn_intended": 0.5, "per_step_penalty": 0.01},
  71. )
  72. register(
  73. id="MiniGrid-LavaSlipperyCliff-16x13-Slip80-Time-v0",
  74. entry_point="minigrid.envs:LavaSlipperyCliff",
  75. kwargs={"height": 13, "width": 16, "probability_intended": 0.2, "probability_turn_intended": 0.2, "per_step_penalty": 0.01},
  76. )
  77. register(
  78. id="MiniGrid-LavaSlipperyCliff-16x13-Slip10-Time-v0",
  79. entry_point="minigrid.envs:LavaSlipperyCliff",
  80. kwargs={"height": 13, "width": 16, "probability_intended": 0.9, "probability_turn_intended": 0.9, "per_step_penalty": 0.01},
  81. )
  82. register(
  83. id="MiniGrid-LavaSlipperyCliff-16x13-Dense-v0",
  84. entry_point="minigrid.envs:LavaSlipperyCliff",
  85. kwargs={"height": 13, "width": 16, "dense_rewards": True},
  86. )
  87. register(
  88. id="MiniGrid-LavaSlipperyCliff-16x13-Dense-Slip50-v0",
  89. entry_point="minigrid.envs:LavaSlipperyCliff",
  90. kwargs={"height": 13, "width": 16, "dense_rewards": True, "probability_intended": 0.5, "probability_turn_intended": 0.5},
  91. )
  92. register(
  93. id="MiniGrid-LavaSlipperyHill-16x13-Slip10-v0",
  94. entry_point="minigrid.envs:LavaSlipperyHill",
  95. kwargs={"height": 13, "width": 16, "probability_intended": 0.9, "probability_turn_intended": 0.9},
  96. )
  97. register(
  98. id="MiniGrid-LavaSlipperyHill-16x13-Slip50-v0",
  99. entry_point="minigrid.envs:LavaSlipperyHill",
  100. kwargs={"height": 13, "width": 16, "probability_intended": 0.5, "probability_turn_intended": 0.5},
  101. )
  102. register(
  103. id="MiniGrid-LavaSlipperyHill-16x13-Slip50-Time-v0",
  104. entry_point="minigrid.envs:LavaSlipperyHill",
  105. kwargs={"height": 13, "width": 16, "probability_intended": 0.5, "probability_turn_intended": 0.5, "per_step_penalty": 0.01},
  106. )
  107. register(
  108. id="MiniGrid-LavaSlipperyHill-16x13-Slip80-Time-v0",
  109. entry_point="minigrid.envs:LavaSlipperyHill",
  110. kwargs={"height": 13, "width": 16, "probability_intended": 0.2, "probability_turn_intended": 0.2, "per_step_penalty": 0.01},
  111. )
  112. register(
  113. id="MiniGrid-LavaSlipperyHill-16x13-Slip10-Time-v0",
  114. entry_point="minigrid.envs:LavaSlipperyHill",
  115. kwargs={"height": 13, "width": 16, "probability_intended": 0.9, "probability_turn_intended": 0.9, "per_step_penalty": 0.01},
  116. )
  117. register(
  118. id="MiniGrid-LavaSlipperyMazeS20-v0",
  119. entry_point="minigrid.envs:LavaSlipperyMaze",
  120. kwargs={"width": 20, "height": 20},
  121. )
  122. register(
  123. id="MiniGrid-LavaSlipperyMazeS20-Slip90-v0",
  124. entry_point="minigrid.envs:LavaSlipperyMaze",
  125. kwargs={"width": 20, "height": 20, "probability_intended": 0.1, "probability_turn_intended": 0.1},
  126. )
  127. register(
  128. id="MiniGrid-LavaSlipperyMazeS20-Slip90-Dense-v0",
  129. entry_point="minigrid.envs:LavaSlipperyMaze",
  130. kwargs={"width": 20, "height": 20, "probability_intended": 0.1, "probability_turn_intended": 0.1, "dense_rewards": True},
  131. )
  132. # LavaFaulty
  133. register(
  134. id="MiniGrid-LavaFaultyS15-5-v0",
  135. entry_point="minigrid.envs:LavaFaultyEnv",
  136. kwargs={"size": 15, "fault_probability": 0.05},
  137. )
  138. register(
  139. id="MiniGrid-LavaFaultyS15-1-v0",
  140. entry_point="minigrid.envs:LavaFaultyEnv",
  141. kwargs={"size": 15, "fault_probability": 0.01},
  142. )
  143. register(
  144. id="MiniGrid-LavaFaultyS15-5-Time-v0",
  145. entry_point="minigrid.envs:LavaFaultyEnv",
  146. kwargs={"size": 15, "fault_probability": 0.05, "per_step_penalty": 0.01},
  147. )
  148. register(
  149. id="MiniGrid-LavaFaultyS15-1-Time-v0",
  150. entry_point="minigrid.envs:LavaFaultyEnv",
  151. kwargs={"size": 15, "fault_probability": 0.01, "per_step_penalty": 0.01},
  152. )
  153. register(
  154. id="MiniGrid-LavaFaultyS10-5-v0",
  155. entry_point="minigrid.envs:LavaFaultyEnv",
  156. kwargs={"size": 10, "fault_probability": 0.05},
  157. )
  158. register(
  159. id="MiniGrid-LavaFaultyS8-1-v0",
  160. entry_point="minigrid.envs:LavaFaultyEnv",
  161. kwargs={"size": 8, "fault_probability": 0.01},
  162. )
  163. register(
  164. id="MiniGrid-LavaFaultyS8-30-v0",
  165. entry_point="minigrid.envs:LavaFaultyEnv",
  166. kwargs={"size": 8, "fault_probability": 0.3},
  167. )
  168. # WindyCity
  169. # ----------------------------------------
  170. register(
  171. id="MiniGrid-WindyCity-v0",
  172. entry_point="minigrid.envs:WindyCityEnv",
  173. kwargs={},
  174. )
  175. register(
  176. id="MiniGrid-WindyCity2-v0",
  177. entry_point="minigrid.envs:WindyCity2Env",
  178. kwargs={'probability_intended': 0.95, 'probability_turn_intended': 0.95, "per_step_penalty": 0.01},
  179. )
  180. register(
  181. id="MiniGrid-WindyCity2Det-v0",
  182. entry_point="minigrid.envs:WindyCity2Env",
  183. kwargs={'probability_intended': 0.95, 'probability_turn_intended': 0.95, 'two_player_winning_region_start': True},
  184. )
  185. #register(
  186. # id="MiniGrid-WindyCity-Adv-v0",
  187. # entry_point="minigrid.envs:WindyCityAdvEnv",
  188. # kwargs={'probability_intended': 0.95, 'probability_turn_intended': 0.95},
  189. #)
  190. register(
  191. id="MiniGrid-WindyCity-Adv-v0",
  192. entry_point="minigrid.envs:WindyCitySmallAdv",
  193. kwargs={'probability_intended': 1.00, 'probability_turn_intended': 1.00, "per_step_penalty": 0.02},
  194. )
  195. # DoubleDoors
  196. # ----------------------------------------
  197. register(
  198. id = "MiniGrid-DoubleDoor-12x12-v0",
  199. entry_point="minigrid.envs:DoubleDoorEnv",
  200. kwargs={"width": 12, "height": 12}
  201. )
  202. register(
  203. id = "MiniGrid-DoubleDoor-16x16-v0",
  204. entry_point="minigrid.envs:DoubleDoorEnv",
  205. kwargs={"width": 16, "height": 16}
  206. )
  207. register(
  208. id = "MiniGrid-DoubleDoor-10x8-v0",
  209. entry_point="minigrid.envs:DoubleDoorEnv",
  210. kwargs={"width": 10, "height": 8}
  211. )
  212. # SingleDoors
  213. # ----------------------------------------
  214. register(
  215. id = "MiniGrid-SingleDoor-7x6-v0",
  216. entry_point="minigrid.envs:SingleDoorEnv",
  217. kwargs={"width": 7, "height": 6}
  218. )
  219. # AdversarySimple
  220. # ----------------------------------------
  221. register(
  222. id = "MiniGrid-Adv-8x8-v0", entry_point="minigrid.envs:AdversarySimple",
  223. kwargs={"width": 8, "height": 8}
  224. )
  225. register(
  226. id = "MiniGrid-Adv-10x10-v0", entry_point="minigrid.envs:AdversarySimple",
  227. kwargs={"width": 10, "height": 10}
  228. )
  229. register(
  230. id = "MiniGrid-Adv-15x15-v0", entry_point="minigrid.envs:AdversarySimple",
  231. kwargs={"width": 15, "height": 15}
  232. )
  233. # OscillatingAdversaries
  234. # ----------------------------------------
  235. register(
  236. id = "MiniGrid-OscAdv-8x8-v0", entry_point="minigrid.envs:OscillatingAdversaries",
  237. kwargs={"width": 8, "height": 8}
  238. )
  239. # AdversaryDoorPickup
  240. # ----------------------------------------
  241. register(
  242. id = "MiniGrid-AdvDoorPickup-v0", entry_point="minigrid.envs:AdversaryDoorPickup",
  243. kwargs={}
  244. )
  245. register(
  246. id = "MiniGrid-AdvDoorPickup-Dense-v0", entry_point="minigrid.envs:AdversaryDoorPickup",
  247. kwargs={"dense_reward": True}
  248. )
  249. # AdversaryDebug
  250. # ----------------------------------------
  251. register(
  252. id = "MiniGrid-AdvDebug-4x4-v0",
  253. entry_point="minigrid.envs:AdversaryDebug",
  254. kwargs={"width": 4, "height": 4}
  255. )
  256. register(
  257. id = "MiniGrid-AdvDebug-5x5-v0",
  258. entry_point="minigrid.envs:AdversaryDebug",
  259. kwargs={"width": 5, "height": 5}
  260. )
  261. register(
  262. id = "MiniGrid-AdvDebug-8x8-v0",
  263. entry_point="minigrid.envs:AdversaryDebug",
  264. kwargs={"width": 8, "height": 8}
  265. )
  266. register(
  267. id = "MiniGrid-AdvDebugNoWalls-8x8-v0",
  268. entry_point="minigrid.envs:AdversaryDebug",
  269. kwargs={"width": 8, "height": 8, "generate_wall": False}
  270. )
  271. register(
  272. id = "MiniGrid-AdvDebugLava-8x8-v0",
  273. entry_point="minigrid.envs:AdversaryDebug",
  274. kwargs={"width": 8,
  275. "height": 8,
  276. "generate_wall": False,
  277. "generate_lava": True}
  278. )
  279. register(
  280. id = "MiniGrid-AdvDebugSlippery-8x8-v0",
  281. entry_point="minigrid.envs:AdversaryDebug",
  282. kwargs={"width": 8,
  283. "height": 8,
  284. "generate_wall": False,
  285. "generate_lava": False,
  286. "generate_slippery": True}
  287. )
  288. # SimpleCrossing
  289. # ----------------------------------------
  290. register(
  291. id="MiniGrid-SimpleCrossingS9N1-v0",
  292. entry_point="minigrid.envs:CrossingEnv",
  293. kwargs={"size": 9, "num_crossings": 1, "obstacle_type": Wall},
  294. )
  295. register(
  296. id="MiniGrid-SimpleCrossingS9N2-v0",
  297. entry_point="minigrid.envs:CrossingEnv",
  298. kwargs={"size": 9, "num_crossings": 2, "obstacle_type": Wall},
  299. )
  300. register(
  301. id="MiniGrid-SimpleCrossingS9N3-v0",
  302. entry_point="minigrid.envs:CrossingEnv",
  303. kwargs={"size": 9, "num_crossings": 3, "obstacle_type": Wall},
  304. )
  305. register(
  306. id="MiniGrid-SimpleCrossingS11N5-v0",
  307. entry_point="minigrid.envs:CrossingEnv",
  308. kwargs={"size": 11, "num_crossings": 5, "obstacle_type": Wall},
  309. )
  310. # DistShift
  311. # ----------------------------------------
  312. register(
  313. id="MiniGrid-DistShift1-v0",
  314. entry_point="minigrid.envs:DistShiftEnv",
  315. kwargs={"strip2_row": 2},
  316. )
  317. register(
  318. id="MiniGrid-DistShift2-v0",
  319. entry_point="minigrid.envs:DistShiftEnv",
  320. kwargs={"strip2_row": 5},
  321. )
  322. # DoorKey
  323. # ----------------------------------------
  324. register(
  325. id="MiniGrid-DoorKey-5x5-v0",
  326. entry_point="minigrid.envs:DoorKeyEnv",
  327. kwargs={"size": 5},
  328. )
  329. register(
  330. id="MiniGrid-DoorKey-6x6-v0",
  331. entry_point="minigrid.envs:DoorKeyEnv",
  332. kwargs={"size": 6},
  333. )
  334. register(
  335. id="MiniGrid-DoorKey-8x8-v0",
  336. entry_point="minigrid.envs:DoorKeyEnv",
  337. kwargs={"size": 8},
  338. )
  339. register(
  340. id="MiniGrid-DoorKey-16x16-v0",
  341. entry_point="minigrid.envs:DoorKeyEnv",
  342. kwargs={"size": 16},
  343. )
  344. # Dynamic-Obstacles
  345. # ----------------------------------------
  346. register(
  347. id="MiniGrid-Dynamic-Obstacles-5x5-v0",
  348. entry_point="minigrid.envs:DynamicObstaclesEnv",
  349. kwargs={"size": 5, "n_obstacles": 2},
  350. )
  351. register(
  352. id="MiniGrid-Dynamic-Obstacles-Random-5x5-v0",
  353. entry_point="minigrid.envs:DynamicObstaclesEnv",
  354. kwargs={"size": 5, "agent_start_pos": None, "n_obstacles": 2},
  355. )
  356. register(
  357. id="MiniGrid-Dynamic-Obstacles-6x6-v0",
  358. entry_point="minigrid.envs:DynamicObstaclesEnv",
  359. kwargs={"size": 6, "n_obstacles": 3},
  360. )
  361. register(
  362. id="MiniGrid-Dynamic-Obstacles-Random-6x6-v0",
  363. entry_point="minigrid.envs:DynamicObstaclesEnv",
  364. kwargs={"size": 6, "agent_start_pos": None, "n_obstacles": 3},
  365. )
  366. register(
  367. id="MiniGrid-Dynamic-Obstacles-8x8-v0",
  368. entry_point="minigrid.envs:DynamicObstaclesEnv",
  369. )
  370. register(
  371. id="MiniGrid-Dynamic-Obstacles-16x16-v0",
  372. entry_point="minigrid.envs:DynamicObstaclesEnv",
  373. kwargs={"size": 16, "n_obstacles": 8},
  374. )
  375. # Empty
  376. # ----------------------------------------
  377. register(
  378. id="MiniGrid-Empty-5x5-v0",
  379. entry_point="minigrid.envs:EmptyEnv",
  380. kwargs={"size": 5},
  381. )
  382. register(
  383. id="MiniGrid-Empty-Random-5x5-v0",
  384. entry_point="minigrid.envs:EmptyEnv",
  385. kwargs={"size": 5, "agent_start_pos": None},
  386. )
  387. register(
  388. id="MiniGrid-Empty-6x6-v0",
  389. entry_point="minigrid.envs:EmptyEnv",
  390. kwargs={"size": 6},
  391. )
  392. register(
  393. id="MiniGrid-Empty-Random-6x6-v0",
  394. entry_point="minigrid.envs:EmptyEnv",
  395. kwargs={"size": 6, "agent_start_pos": None},
  396. )
  397. register(
  398. id="MiniGrid-Empty-8x8-v0",
  399. entry_point="minigrid.envs:EmptyEnv",
  400. )
  401. register(
  402. id="MiniGrid-Empty-16x16-v0",
  403. entry_point="minigrid.envs:EmptyEnv",
  404. kwargs={"size": 16},
  405. )
  406. # Fetch
  407. # ----------------------------------------
  408. register(
  409. id="MiniGrid-Fetch-5x5-N2-v0",
  410. entry_point="minigrid.envs:FetchEnv",
  411. kwargs={"size": 5, "numObjs": 2},
  412. )
  413. register(
  414. id="MiniGrid-Fetch-6x6-N2-v0",
  415. entry_point="minigrid.envs:FetchEnv",
  416. kwargs={"size": 6, "numObjs": 2},
  417. )
  418. register(id="MiniGrid-Fetch-8x8-N3-v0", entry_point="minigrid.envs:FetchEnv")
  419. # FourRooms
  420. # ----------------------------------------
  421. register(
  422. id="MiniGrid-FourRooms-v0",
  423. entry_point="minigrid.envs:FourRoomsEnv",
  424. )
  425. # GoToDoor
  426. # ----------------------------------------
  427. register(
  428. id="MiniGrid-GoToDoor-5x5-v0",
  429. entry_point="minigrid.envs:GoToDoorEnv",
  430. )
  431. register(
  432. id="MiniGrid-GoToDoor-6x6-v0",
  433. entry_point="minigrid.envs:GoToDoorEnv",
  434. kwargs={"size": 6},
  435. )
  436. register(
  437. id="MiniGrid-GoToDoor-8x8-v0",
  438. entry_point="minigrid.envs:GoToDoorEnv",
  439. kwargs={"size": 8},
  440. )
  441. # GoToObject
  442. # ----------------------------------------
  443. register(
  444. id="MiniGrid-GoToObject-6x6-N2-v0",
  445. entry_point="minigrid.envs:GoToObjectEnv",
  446. )
  447. register(
  448. id="MiniGrid-GoToObject-8x8-N2-v0",
  449. entry_point="minigrid.envs:GoToObjectEnv",
  450. kwargs={"size": 8, "numObjs": 2},
  451. )
  452. # KeyCorridor
  453. # ----------------------------------------
  454. register(
  455. id="MiniGrid-KeyCorridorS3R1-v0",
  456. entry_point="minigrid.envs:KeyCorridorEnv",
  457. kwargs={"room_size": 3, "num_rows": 1},
  458. )
  459. register(
  460. id="MiniGrid-KeyCorridorS3R2-v0",
  461. entry_point="minigrid.envs:KeyCorridorEnv",
  462. kwargs={"room_size": 3, "num_rows": 2},
  463. )
  464. register(
  465. id="MiniGrid-KeyCorridorS3R3-v0",
  466. entry_point="minigrid.envs:KeyCorridorEnv",
  467. kwargs={"room_size": 3, "num_rows": 3},
  468. )
  469. register(
  470. id="MiniGrid-KeyCorridorS4R3-v0",
  471. entry_point="minigrid.envs:KeyCorridorEnv",
  472. kwargs={"room_size": 4, "num_rows": 3},
  473. )
  474. register(
  475. id="MiniGrid-KeyCorridorS5R3-v0",
  476. entry_point="minigrid.envs:KeyCorridorEnv",
  477. kwargs={"room_size": 5, "num_rows": 3},
  478. )
  479. register(
  480. id="MiniGrid-KeyCorridorS6R3-v0",
  481. entry_point="minigrid.envs:KeyCorridorEnv",
  482. kwargs={"room_size": 6, "num_rows": 3},
  483. )
  484. # LavaGap
  485. # ----------------------------------------
  486. register(
  487. id="MiniGrid-LavaGapS5-v0",
  488. entry_point="minigrid.envs:LavaGapEnv",
  489. kwargs={"size": 5},
  490. )
  491. register(
  492. id="MiniGrid-LavaGapS6-v0",
  493. entry_point="minigrid.envs:LavaGapEnv",
  494. kwargs={"size": 6},
  495. )
  496. register(
  497. id="MiniGrid-LavaGapS7-v0",
  498. entry_point="minigrid.envs:LavaGapEnv",
  499. kwargs={"size": 7},
  500. )
  501. # LockedRoom
  502. # ----------------------------------------
  503. register(
  504. id="MiniGrid-LockedRoom-v0",
  505. entry_point="minigrid.envs:LockedRoomEnv",
  506. )
  507. # Memory
  508. # ----------------------------------------
  509. register(
  510. id="MiniGrid-MemoryS17Random-v0",
  511. entry_point="minigrid.envs:MemoryEnv",
  512. kwargs={"size": 17, "random_length": True},
  513. )
  514. register(
  515. id="MiniGrid-MemoryS13Random-v0",
  516. entry_point="minigrid.envs:MemoryEnv",
  517. kwargs={"size": 13, "random_length": True},
  518. )
  519. register(
  520. id="MiniGrid-MemoryS13-v0",
  521. entry_point="minigrid.envs:MemoryEnv",
  522. kwargs={"size": 13},
  523. )
  524. register(
  525. id="MiniGrid-MemoryS11-v0",
  526. entry_point="minigrid.envs:MemoryEnv",
  527. kwargs={"size": 11},
  528. )
  529. register(
  530. id="MiniGrid-MemoryS9-v0",
  531. entry_point="minigrid.envs:MemoryEnv",
  532. kwargs={"size": 9},
  533. )
  534. register(
  535. id="MiniGrid-MemoryS7-v0",
  536. entry_point="minigrid.envs:MemoryEnv",
  537. kwargs={"size": 7},
  538. )
  539. # MultiRoom
  540. # ----------------------------------------
  541. register(
  542. id="MiniGrid-MultiRoom-N2-S4-v0",
  543. entry_point="minigrid.envs:MultiRoomEnv",
  544. kwargs={"minNumRooms": 2, "maxNumRooms": 2, "maxRoomSize": 4},
  545. )
  546. register(
  547. id="MiniGrid-MultiRoom-N4-S5-v0",
  548. entry_point="minigrid.envs:MultiRoomEnv",
  549. kwargs={"minNumRooms": 6, "maxNumRooms": 6, "maxRoomSize": 5},
  550. )
  551. register(
  552. id="MiniGrid-MultiRoom-N6-v0",
  553. entry_point="minigrid.envs:MultiRoomEnv",
  554. kwargs={"minNumRooms": 6, "maxNumRooms": 6},
  555. )
  556. # ObstructedMaze
  557. # ----------------------------------------
  558. register(
  559. id="MiniGrid-ObstructedMaze-1Dl-v0",
  560. entry_point="minigrid.envs:ObstructedMaze_1Dlhb",
  561. kwargs={"key_in_box": False, "blocked": False},
  562. )
  563. register(
  564. id="MiniGrid-ObstructedMaze-1Dlh-v0",
  565. entry_point="minigrid.envs:ObstructedMaze_1Dlhb",
  566. kwargs={"key_in_box": True, "blocked": False},
  567. )
  568. register(
  569. id="MiniGrid-ObstructedMaze-1Dlhb-v0",
  570. entry_point="minigrid.envs:ObstructedMaze_1Dlhb",
  571. )
  572. register(
  573. id="MiniGrid-ObstructedMaze-2Dl-v0",
  574. entry_point="minigrid.envs:ObstructedMaze_Full",
  575. kwargs={
  576. "agent_room": (2, 1),
  577. "key_in_box": False,
  578. "blocked": False,
  579. "num_quarters": 1,
  580. "num_rooms_visited": 4,
  581. },
  582. )
  583. register(
  584. id="MiniGrid-ObstructedMaze-2Dlh-v0",
  585. entry_point="minigrid.envs:ObstructedMaze_Full",
  586. kwargs={
  587. "agent_room": (2, 1),
  588. "key_in_box": True,
  589. "blocked": False,
  590. "num_quarters": 1,
  591. "num_rooms_visited": 4,
  592. },
  593. )
  594. register(
  595. id="MiniGrid-ObstructedMaze-2Dlhb-v0",
  596. entry_point="minigrid.envs:ObstructedMaze_Full",
  597. kwargs={
  598. "agent_room": (2, 1),
  599. "key_in_box": True,
  600. "blocked": True,
  601. "num_quarters": 1,
  602. "num_rooms_visited": 4,
  603. },
  604. )
  605. register(
  606. id="MiniGrid-ObstructedMaze-1Q-v0",
  607. entry_point="minigrid.envs:ObstructedMaze_Full",
  608. kwargs={
  609. "agent_room": (1, 1),
  610. "key_in_box": True,
  611. "blocked": True,
  612. "num_quarters": 1,
  613. "num_rooms_visited": 5,
  614. },
  615. )
  616. register(
  617. id="MiniGrid-ObstructedMaze-2Q-v0",
  618. entry_point="minigrid.envs:ObstructedMaze_Full",
  619. kwargs={
  620. "agent_room": (2, 1),
  621. "key_in_box": True,
  622. "blocked": True,
  623. "num_quarters": 2,
  624. "num_rooms_visited": 11,
  625. },
  626. )
  627. register(
  628. id="MiniGrid-ObstructedMaze-Full-v0",
  629. entry_point="minigrid.envs:ObstructedMaze_Full",
  630. )
  631. # ObstructedMaze-v1
  632. # ----------------------------------------
  633. register(
  634. id="MiniGrid-ObstructedMaze-2Dlhb-v1",
  635. entry_point="minigrid.envs.obstructedmaze_v1:ObstructedMaze_Full",
  636. kwargs={
  637. "agent_room": (2, 1),
  638. "key_in_box": True,
  639. "blocked": True,
  640. "num_quarters": 1,
  641. "num_rooms_visited": 4,
  642. },
  643. )
  644. register(
  645. id="MiniGrid-ObstructedMaze-1Q-v1",
  646. entry_point="minigrid.envs.obstructedmaze_v1:ObstructedMaze_Full",
  647. kwargs={
  648. "agent_room": (1, 1),
  649. "key_in_box": True,
  650. "blocked": True,
  651. "num_quarters": 1,
  652. "num_rooms_visited": 5,
  653. },
  654. )
  655. register(
  656. id="MiniGrid-ObstructedMaze-2Q-v1",
  657. entry_point="minigrid.envs.obstructedmaze_v1:ObstructedMaze_Full",
  658. kwargs={
  659. "agent_room": (2, 1),
  660. "key_in_box": True,
  661. "blocked": True,
  662. "num_quarters": 2,
  663. "num_rooms_visited": 11,
  664. },
  665. )
  666. register(
  667. id="MiniGrid-ObstructedMaze-Full-v1",
  668. entry_point="minigrid.envs.obstructedmaze_v1:ObstructedMaze_Full",
  669. )
  670. # Playground
  671. # ----------------------------------------
  672. #register(
  673. # id="MiniGrid-Playground-v0",
  674. # entry_point="minigrid.envs:PlaygroundEnv",
  675. #)
  676. # PutNear
  677. # ----------------------------------------
  678. register(
  679. id="MiniGrid-PutNear-6x6-N2-v0",
  680. entry_point="minigrid.envs:PutNearEnv",
  681. )
  682. register(
  683. id="MiniGrid-PutNear-8x8-N3-v0",
  684. entry_point="minigrid.envs:PutNearEnv",
  685. kwargs={"size": 8, "numObjs": 3},
  686. )
  687. # RedBlueDoors
  688. # ----------------------------------------
  689. register(
  690. id="MiniGrid-RedBlueDoors-6x6-v0",
  691. entry_point="minigrid.envs:RedBlueDoorEnv",
  692. kwargs={"size": 6},
  693. )
  694. register(
  695. id="MiniGrid-RedBlueDoors-8x8-v0",
  696. entry_point="minigrid.envs:RedBlueDoorEnv",
  697. )
  698. # Unlock
  699. # ----------------------------------------
  700. register(id="MiniGrid-Unlock-v0", entry_point="minigrid.envs:UnlockEnv")
  701. # UnlockPickup
  702. # ----------------------------------------
  703. register(
  704. id="MiniGrid-UnlockPickup-v0",
  705. entry_point="minigrid.envs:UnlockPickupEnv",
  706. )
  707. # BabyAI - Language based levels - GoTo
  708. # ----------------------------------------
  709. register(
  710. id="BabyAI-GoToRedBallGrey-v0",
  711. entry_point="minigrid.envs.babyai:GoToRedBallGrey",
  712. )
  713. register(
  714. id="BabyAI-GoToRedBall-v0",
  715. entry_point="minigrid.envs.babyai:GoToRedBall",
  716. )
  717. register(
  718. id="BabyAI-GoToRedBallNoDists-v0",
  719. entry_point="minigrid.envs.babyai:GoToRedBallNoDists",
  720. )
  721. register(
  722. id="BabyAI-GoToObj-v0",
  723. entry_point="minigrid.envs.babyai:GoToObj",
  724. )
  725. register(
  726. id="BabyAI-GoToObjS4-v0",
  727. entry_point="minigrid.envs.babyai:GoToObj",
  728. kwargs={"room_size": 4},
  729. )
  730. register(
  731. id="BabyAI-GoToObjS6-v1",
  732. entry_point="minigrid.envs.babyai:GoToObj",
  733. kwargs={"room_size": 6},
  734. )
  735. register(
  736. id="BabyAI-GoToLocal-v0",
  737. entry_point="minigrid.envs.babyai:GoToLocal",
  738. )
  739. register(
  740. id="BabyAI-GoToLocalS5N2-v0",
  741. entry_point="minigrid.envs.babyai:GoToLocal",
  742. kwargs={"room_size": 5, "num_dists": 2},
  743. )
  744. register(
  745. id="BabyAI-GoToLocalS6N2-v0",
  746. entry_point="minigrid.envs.babyai:GoToLocal",
  747. kwargs={"room_size": 6, "num_dists": 2},
  748. )
  749. register(
  750. id="BabyAI-GoToLocalS6N3-v0",
  751. entry_point="minigrid.envs.babyai:GoToLocal",
  752. kwargs={"room_size": 6, "num_dists": 3},
  753. )
  754. register(
  755. id="BabyAI-GoToLocalS6N4-v0",
  756. entry_point="minigrid.envs.babyai:GoToLocal",
  757. kwargs={"room_size": 6, "num_dists": 4},
  758. )
  759. register(
  760. id="BabyAI-GoToLocalS7N4-v0",
  761. entry_point="minigrid.envs.babyai:GoToLocal",
  762. kwargs={"room_size": 7, "num_dists": 4},
  763. )
  764. register(
  765. id="BabyAI-GoToLocalS7N5-v0",
  766. entry_point="minigrid.envs.babyai:GoToLocal",
  767. kwargs={"room_size": 7, "num_dists": 5},
  768. )
  769. register(
  770. id="BabyAI-GoToLocalS8N2-v0",
  771. entry_point="minigrid.envs.babyai:GoToLocal",
  772. kwargs={"room_size": 8, "num_dists": 2},
  773. )
  774. register(
  775. id="BabyAI-GoToLocalS8N3-v0",
  776. entry_point="minigrid.envs.babyai:GoToLocal",
  777. kwargs={"room_size": 8, "num_dists": 3},
  778. )
  779. register(
  780. id="BabyAI-GoToLocalS8N4-v0",
  781. entry_point="minigrid.envs.babyai:GoToLocal",
  782. kwargs={"room_size": 8, "num_dists": 4},
  783. )
  784. register(
  785. id="BabyAI-GoToLocalS8N5-v0",
  786. entry_point="minigrid.envs.babyai:GoToLocal",
  787. kwargs={"room_size": 8, "num_dists": 5},
  788. )
  789. register(
  790. id="BabyAI-GoToLocalS8N6-v0",
  791. entry_point="minigrid.envs.babyai:GoToLocal",
  792. kwargs={"room_size": 8, "num_dists": 6},
  793. )
  794. register(
  795. id="BabyAI-GoToLocalS8N7-v0",
  796. entry_point="minigrid.envs.babyai:GoToLocal",
  797. kwargs={"room_size": 8, "num_dists": 7},
  798. )
  799. register(
  800. id="BabyAI-GoTo-v0",
  801. entry_point="minigrid.envs.babyai:GoTo",
  802. )
  803. register(
  804. "BabyAI-GoToOpen-v0",
  805. entry_point="minigrid.envs.babyai:GoTo",
  806. kwargs={"doors_open": True},
  807. )
  808. register(
  809. id="BabyAI-GoToObjMaze-v0",
  810. entry_point="minigrid.envs.babyai:GoTo",
  811. kwargs={"num_dists": 1, "doors_open": False},
  812. )
  813. register(
  814. id="BabyAI-GoToObjMazeOpen-v0",
  815. entry_point="minigrid.envs.babyai:GoTo",
  816. kwargs={"num_dists": 1, "doors_open": True},
  817. )
  818. register(
  819. id="BabyAI-GoToObjMazeS4R2-v0",
  820. entry_point="minigrid.envs.babyai:GoTo",
  821. kwargs={"num_dists": 1, "room_size": 4, "num_rows": 2, "num_cols": 2},
  822. )
  823. register(
  824. id="BabyAI-GoToObjMazeS4-v0",
  825. entry_point="minigrid.envs.babyai:GoTo",
  826. kwargs={"num_dists": 1, "room_size": 4},
  827. )
  828. register(
  829. id="BabyAI-GoToObjMazeS5-v0",
  830. entry_point="minigrid.envs.babyai:GoTo",
  831. kwargs={"num_dists": 1, "room_size": 5},
  832. )
  833. register(
  834. id="BabyAI-GoToObjMazeS6-v0",
  835. entry_point="minigrid.envs.babyai:GoTo",
  836. kwargs={"num_dists": 1, "room_size": 6},
  837. )
  838. register(
  839. id="BabyAI-GoToObjMazeS7-v0",
  840. entry_point="minigrid.envs.babyai:GoTo",
  841. kwargs={"num_dists": 1, "room_size": 7},
  842. )
  843. register(
  844. id="BabyAI-GoToImpUnlock-v0",
  845. entry_point="minigrid.envs.babyai:GoToImpUnlock",
  846. )
  847. register(
  848. id="BabyAI-GoToSeq-v0",
  849. entry_point="minigrid.envs.babyai:GoToSeq",
  850. )
  851. register(
  852. id="BabyAI-GoToSeqS5R2-v0",
  853. entry_point="minigrid.envs.babyai:GoToSeq",
  854. kwargs={"room_size": 5, "num_rows": 2, "num_cols": 2, "num_dists": 4},
  855. )
  856. register(
  857. id="BabyAI-GoToRedBlueBall-v0",
  858. entry_point="minigrid.envs.babyai:GoToRedBlueBall",
  859. )
  860. register(
  861. id="BabyAI-GoToDoor-v0",
  862. entry_point="minigrid.envs.babyai:GoToDoor",
  863. )
  864. register(
  865. id="BabyAI-GoToObjDoor-v0",
  866. entry_point="minigrid.envs.babyai:GoToObjDoor",
  867. )
  868. # BabyAI - Language based levels - Open
  869. # ----------------------------------------
  870. register(
  871. id="BabyAI-Open-v0",
  872. entry_point="minigrid.envs.babyai:Open",
  873. )
  874. register(
  875. id="BabyAI-OpenRedDoor-v0",
  876. entry_point="minigrid.envs.babyai:OpenRedDoor",
  877. )
  878. register(
  879. id="BabyAI-OpenDoor-v0",
  880. entry_point="minigrid.envs.babyai:OpenDoor",
  881. )
  882. register(
  883. id="BabyAI-OpenDoorDebug-v0",
  884. entry_point="minigrid.envs.babyai:OpenDoor",
  885. kwargs={"debug": True, "select_by": None},
  886. )
  887. register(
  888. id="BabyAI-OpenDoorColor-v0",
  889. entry_point="minigrid.envs.babyai:OpenDoor",
  890. kwargs={"select_by": "color"},
  891. )
  892. register(
  893. id="BabyAI-OpenDoorLoc-v0",
  894. entry_point="minigrid.envs.babyai:OpenDoor",
  895. kwargs={"select_by": "loc"},
  896. )
  897. register(
  898. id="BabyAI-OpenTwoDoors-v0",
  899. entry_point="minigrid.envs.babyai:OpenTwoDoors",
  900. )
  901. register(
  902. id="BabyAI-OpenRedBlueDoors-v0",
  903. entry_point="minigrid.envs.babyai:OpenTwoDoors",
  904. kwargs={"first_color": "red", "second_color": "blue"},
  905. )
  906. register(
  907. id="BabyAI-OpenRedBlueDoorsDebug-v0",
  908. entry_point="minigrid.envs.babyai:OpenTwoDoors",
  909. kwargs={
  910. "first_color": "red",
  911. "second_color": "blue",
  912. "strict": True,
  913. },
  914. )
  915. register(
  916. id="BabyAI-OpenDoorsOrderN2-v0",
  917. entry_point="minigrid.envs.babyai:OpenDoorsOrder",
  918. kwargs={"num_doors": 2},
  919. )
  920. register(
  921. id="BabyAI-OpenDoorsOrderN4-v0",
  922. entry_point="minigrid.envs.babyai:OpenDoorsOrder",
  923. kwargs={"num_doors": 4},
  924. )
  925. register(
  926. id="BabyAI-OpenDoorsOrderN2Debug-v0",
  927. entry_point="minigrid.envs.babyai:OpenDoorsOrder",
  928. kwargs={"debug": True, "num_doors": 2},
  929. )
  930. register(
  931. id="BabyAI-OpenDoorsOrderN4Debug-v0",
  932. entry_point="minigrid.envs.babyai:OpenDoorsOrder",
  933. kwargs={"debug": True, "num_doors": 4},
  934. )
  935. # BabyAI - Language based levels - Pickup
  936. # ----------------------------------------
  937. register(
  938. id="BabyAI-Pickup-v0",
  939. entry_point="minigrid.envs.babyai:Pickup",
  940. )
  941. register(
  942. id="BabyAI-UnblockPickup-v0",
  943. entry_point="minigrid.envs.babyai:UnblockPickup",
  944. )
  945. register(
  946. id="BabyAI-PickupLoc-v0",
  947. entry_point="minigrid.envs.babyai:PickupLoc",
  948. )
  949. register(
  950. id="BabyAI-PickupDist-v0",
  951. entry_point="minigrid.envs.babyai:PickupDist",
  952. )
  953. register(
  954. id="BabyAI-PickupDistDebug-v0",
  955. entry_point="minigrid.envs.babyai:PickupDist",
  956. kwargs={"debug": True},
  957. )
  958. register(
  959. id="BabyAI-PickupAbove-v0",
  960. entry_point="minigrid.envs.babyai:PickupAbove",
  961. )
  962. # BabyAI - Language based levels - PutNext
  963. # ----------------------------------------
  964. register(
  965. id="BabyAI-PutNextLocal-v0",
  966. entry_point="minigrid.envs.babyai:PutNextLocal",
  967. )
  968. register(
  969. id="BabyAI-PutNextLocalS5N3-v0",
  970. entry_point="minigrid.envs.babyai:PutNextLocal",
  971. kwargs={"room_size": 5, "num_objs": 3},
  972. )
  973. register(
  974. id="BabyAI-PutNextLocalS6N4-v0",
  975. entry_point="minigrid.envs.babyai:PutNextLocal",
  976. kwargs={"room_size": 6, "num_objs": 4},
  977. )
  978. register(
  979. id="BabyAI-PutNextS4N1-v0",
  980. entry_point="minigrid.envs.babyai:PutNext",
  981. kwargs={"room_size": 4, "objs_per_room": 1},
  982. )
  983. register(
  984. id="BabyAI-PutNextS5N2-v0",
  985. entry_point="minigrid.envs.babyai:PutNext",
  986. kwargs={"room_size": 5, "objs_per_room": 2},
  987. )
  988. register(
  989. id="BabyAI-PutNextS5N1-v0",
  990. entry_point="minigrid.envs.babyai:PutNext",
  991. kwargs={"room_size": 5, "objs_per_room": 1},
  992. )
  993. register(
  994. id="BabyAI-PutNextS6N3-v0",
  995. entry_point="minigrid.envs.babyai:PutNext",
  996. kwargs={"room_size": 6, "objs_per_room": 3},
  997. )
  998. register(
  999. id="BabyAI-PutNextS7N4-v0",
  1000. entry_point="minigrid.envs.babyai:PutNext",
  1001. kwargs={"room_size": 7, "objs_per_room": 4},
  1002. )
  1003. register(
  1004. id="BabyAI-PutNextS5N2Carrying-v0",
  1005. entry_point="minigrid.envs.babyai:PutNext",
  1006. kwargs={"room_size": 5, "objs_per_room": 2, "start_carrying": True},
  1007. )
  1008. register(
  1009. id="BabyAI-PutNextS6N3Carrying-v0",
  1010. entry_point="minigrid.envs.babyai:PutNext",
  1011. kwargs={"room_size": 6, "objs_per_room": 3, "start_carrying": True},
  1012. )
  1013. register(
  1014. id="BabyAI-PutNextS7N4Carrying-v0",
  1015. entry_point="minigrid.envs.babyai:PutNext",
  1016. kwargs={"room_size": 7, "objs_per_room": 4, "start_carrying": True},
  1017. )
  1018. # BabyAI - Language based levels - Unlock
  1019. # ----------------------------------------
  1020. register(
  1021. id="BabyAI-Unlock-v0",
  1022. entry_point="minigrid.envs.babyai:Unlock",
  1023. )
  1024. register(
  1025. id="BabyAI-UnlockLocal-v0",
  1026. entry_point="minigrid.envs.babyai:UnlockLocal",
  1027. )
  1028. register(
  1029. id="BabyAI-UnlockLocalDist-v0",
  1030. entry_point="minigrid.envs.babyai:UnlockLocal",
  1031. kwargs={"distractors": True},
  1032. )
  1033. register(
  1034. id="BabyAI-KeyInBox-v0",
  1035. entry_point="minigrid.envs.babyai:KeyInBox",
  1036. )
  1037. register(
  1038. id="BabyAI-UnlockPickup-v0",
  1039. entry_point="minigrid.envs.babyai:UnlockPickup",
  1040. )
  1041. register(
  1042. id="BabyAI-UnlockPickupDist-v0",
  1043. entry_point="minigrid.envs.babyai:UnlockPickup",
  1044. kwargs={"distractors": True},
  1045. )
  1046. register(
  1047. id="BabyAI-BlockedUnlockPickup-v0",
  1048. entry_point="minigrid.envs.babyai:BlockedUnlockPickup",
  1049. )
  1050. register(
  1051. id="BabyAI-UnlockToUnlock-v0",
  1052. entry_point="minigrid.envs.babyai:UnlockToUnlock",
  1053. )
  1054. # BabyAI - Language based levels - Other
  1055. # ----------------------------------------
  1056. register(
  1057. id="BabyAI-ActionObjDoor-v0",
  1058. entry_point="minigrid.envs.babyai:ActionObjDoor",
  1059. )
  1060. register(
  1061. id="BabyAI-FindObjS5-v0",
  1062. entry_point="minigrid.envs.babyai:FindObjS5",
  1063. )
  1064. register(
  1065. id="BabyAI-FindObjS6-v0",
  1066. entry_point="minigrid.envs.babyai:FindObjS5",
  1067. kwargs={"room_size": 6},
  1068. )
  1069. register(
  1070. id="BabyAI-FindObjS7-v0",
  1071. entry_point="minigrid.envs.babyai:FindObjS5",
  1072. kwargs={"room_size": 7},
  1073. )
  1074. register(
  1075. id="BabyAI-KeyCorridor-v0",
  1076. entry_point="minigrid.envs.babyai:KeyCorridor",
  1077. )
  1078. register(
  1079. id="BabyAI-KeyCorridorS3R1-v0",
  1080. entry_point="minigrid.envs.babyai:KeyCorridor",
  1081. kwargs={"room_size": 3, "num_rows": 1},
  1082. )
  1083. register(
  1084. id="BabyAI-KeyCorridorS3R2-v0",
  1085. entry_point="minigrid.envs.babyai:KeyCorridor",
  1086. kwargs={"room_size": 3, "num_rows": 2},
  1087. )
  1088. register(
  1089. id="BabyAI-KeyCorridorS3R3-v0",
  1090. entry_point="minigrid.envs.babyai:KeyCorridor",
  1091. kwargs={"room_size": 3, "num_rows": 3},
  1092. )
  1093. register(
  1094. id="BabyAI-KeyCorridorS4R3-v0",
  1095. entry_point="minigrid.envs.babyai:KeyCorridor",
  1096. kwargs={"room_size": 4, "num_rows": 3},
  1097. )
  1098. register(
  1099. id="BabyAI-KeyCorridorS5R3-v0",
  1100. entry_point="minigrid.envs.babyai:KeyCorridor",
  1101. kwargs={"room_size": 5, "num_rows": 3},
  1102. )
  1103. register(
  1104. id="BabyAI-KeyCorridorS6R3-v0",
  1105. entry_point="minigrid.envs.babyai:KeyCorridor",
  1106. kwargs={"room_size": 6, "num_rows": 3},
  1107. )
  1108. register(
  1109. id="BabyAI-OneRoomS8-v0",
  1110. entry_point="minigrid.envs.babyai:OneRoomS8",
  1111. )
  1112. register(
  1113. id="BabyAI-OneRoomS12-v0",
  1114. entry_point="minigrid.envs.babyai:OneRoomS8",
  1115. kwargs={"room_size": 12},
  1116. )
  1117. register(
  1118. id="BabyAI-OneRoomS16-v0",
  1119. entry_point="minigrid.envs.babyai:OneRoomS8",
  1120. kwargs={"room_size": 16},
  1121. )
  1122. register(
  1123. id="BabyAI-OneRoomS20-v0",
  1124. entry_point="minigrid.envs.babyai:OneRoomS8",
  1125. kwargs={"room_size": 20},
  1126. )
  1127. register(
  1128. id="BabyAI-MoveTwoAcrossS5N2-v0",
  1129. entry_point="minigrid.envs.babyai:MoveTwoAcross",
  1130. kwargs={"room_size": 5, "objs_per_room": 2},
  1131. )
  1132. register(
  1133. id="BabyAI-MoveTwoAcrossS8N9-v0",
  1134. entry_point="minigrid.envs.babyai:MoveTwoAcross",
  1135. kwargs={"room_size": 8, "objs_per_room": 9},
  1136. )
  1137. # BabyAI - Language based levels - Synth
  1138. # ----------------------------------------
  1139. register(
  1140. id="BabyAI-Synth-v0",
  1141. entry_point="minigrid.envs.babyai:Synth",
  1142. )
  1143. register(
  1144. id="BabyAI-SynthS5R2-v0",
  1145. entry_point="minigrid.envs.babyai:Synth",
  1146. kwargs={"room_size": 5, "num_rows": 2},
  1147. )
  1148. register(
  1149. id="BabyAI-SynthLoc-v0",
  1150. entry_point="minigrid.envs.babyai:SynthLoc",
  1151. )
  1152. register(
  1153. id="BabyAI-SynthSeq-v0",
  1154. entry_point="minigrid.envs.babyai:SynthSeq",
  1155. )
  1156. register(
  1157. id="BabyAI-MiniBossLevel-v0",
  1158. entry_point="minigrid.envs.babyai:MiniBossLevel",
  1159. )
  1160. register(
  1161. id="BabyAI-BossLevel-v0",
  1162. entry_point="minigrid.envs.babyai:BossLevel",
  1163. )
  1164. register(
  1165. id="BabyAI-BossLevelNoUnlock-v0",
  1166. entry_point="minigrid.envs.babyai:BossLevelNoUnlock",
  1167. )