def __init__(self, game_type = "chests", grid_size = 10, max_eps_len = 500): if game_type not in ["chests","traps"]: raise Exception else: if game_type == "chests": self.gameClass = games.ChestKey elif game_type == "traps" self.gameClass = games.TrapKey game0 = curriculum.CurriculumWrappedGame( self.gameClass, curriculums={ 'map_size': games.curriculum.MapSizeCurriculum( (grid_size,) * 4, (grid_size,) * 4, (grid_size,) * 4 ), } ) all_games = [game0] self.game = games.MazeGame( all_games, # featurizer=featurizers.SentenceFeaturesRelative( # max_sentences=30, bounds=4) featurizer=featurizers.GridFeaturizer() ) self.w, self.h = game.get_max_bounds() self.actions = self.game.all_possible_actions() self.action_dim = 1 self.num_action = len(self.actions) self.state_dim = ( self.w, self.h , len(self.game.all_possible_features())) # for ep len self.frame = 0 self.max_frame = max_eps_len
def __init__(self): super(MazebaseWrapper, self).__init__() self.name = MAZEBASE try: # Reference: https://github.com/facebook/MazeBase/blob/3e505455cae6e4ec442541363ef701f084aa1a3b/py/mazebase/games/mazegame.py#L454 small_size = (10, 10, 10, 10) lk = curriculum.CurriculumWrappedGame( mazebase_games.LightKey, curriculums={ 'map_size': mazebase_games.curriculum.MapSizeCurriculum( small_size, small_size, (10, 10, 10, 10)) }) game = mazebase_games.MazeGame( games=[lk], featurizer=mazebase_games.featurizers.GridFeaturizer()) except mazebase.utils.mazeutils.MazeException as e: print(e) self.game = game self.actions = self.game.all_possible_actions()
from six.moves import input import numpy as np import mazebase.games as games from mazebase.games import featurizers from mazebase.games import curriculum import logging logging.getLogger().setLevel(logging.DEBUG) player_mode = True tk = curriculum.CurriculumWrappedGame(games.TrapKey, curriculums={ 'map_size': games.curriculum.MapSizeCurriculum( (10, 10, 10, 10), (10, 10, 10, 10), (10, 10, 10, 10)), }) ck = curriculum.CurriculumWrappedGame(games.ChestKey, curriculums={ 'map_size': games.curriculum.MapSizeCurriculum( (10, 10, 10, 10), (10, 10, 10, 10), (10, 10, 10, 10)), }) #all_games = [bd, lk] all_games = [tk]
import mazebase.games as games from mazebase.games import featurizers from mazebase.games import curriculum import logging logging.getLogger().setLevel(logging.DEBUG) player_mode = True switches = curriculum.CurriculumWrappedGame( games.Switches, waterpct=0.1, n_switches=4, switch_states=4, curriculums={ 'map_size': games.curriculum.MapSizeCurriculum( (3, 3, 3, 3), (3, 3, 3, 3), (10, 10, 10, 10) ) } ) sg = curriculum.CurriculumWrappedGame( games.SingleGoal, waterpct=0.3, curriculums={ 'map_size': games.curriculum.MapSizeCurriculum( (3, 3, 3, 3), (3, 3, 3, 3), (10, 10, 10, 10) ) }