Example #1
0
    def __init__(self):
        self.action_space = spaces.Discrete(4)
        self.dr = [-1, 1, 0, 0]
        self.dc = [0, 0, -1, 1]
        self.map = simple

        # load map
        selected_map = self.map

        init_loc = selected_map["init"].copy()
        self.goal_loc = selected_map["goal"].copy()

        # Reset Map
        loc = np.array(selected_map['loc'].copy())  # (7,7)
        conn = np.array(selected_map['conn'].copy())  # (7,7)
        self.cur_state = np.stack([loc, conn], axis=0)

        # Reset Positions
        self.cur_loc = init_loc.copy()

        # Reset Enemies
        self.enemies = []
        self.move_enemies = []
        for e in selected_map['fixed']:
            self.enemies.append(BlueEnemy(e[0], e[1], e[2],
                                          e[3]))  # row,col,dir,conn
        for e in selected_map['moving']:
            self.move_enemies.append(YellowEnemy(e[0], e[1], e[2]))
Example #2
0
    def reset(self):
        # load map
        selected_map = self.map

        init_loc = selected_map["init"].copy()
        self.goal_loc = selected_map["goal"].copy()

        # Reset Map
        loc = np.array(selected_map['loc'].copy())  # (7,7)
        conn = np.array(selected_map['conn'].copy())  # (7,7)
        self.cur_state = np.stack([loc, conn], axis=0)

        # Reset Positions
        self.cur_loc = init_loc.copy()

        # Reset Enemies
        self.enemies = []
        self.move_enemies = []
        for e in selected_map['fixed']:
            self.enemies.append(BlueEnemy(e[0], e[1], e[2],
                                          e[3]))  # row,col,dir,conn
        for e in selected_map['moving']:
            self.move_enemies.append(YellowEnemy(e[0], e[1], e[2]))

        return self.cur_state.copy()  # (2,7,7)