Exemple #1
0
def main_random():
    env = AgarioEnv(render=RENDER,
                    speed_scale=SPEED_SCALE,
                    display_text=DISPLAY_TEXT,
                    grid_resolution=GRID_RESOLUTION)
    agent = RandomAgent()
    for episode in range(NUM_EPISODES):
        state = env.reset()
        num_steps = 0
        done = False
        while True:
            action = agent.get_action(state)
            for _ in range(NUM_SKIP_FRAMES):
                if RENDER:
                    env.render()
                state, reward, done, _ = env.step(action)
            if done or num_steps >= MAX_STEPS:
                print(f'epoch: {episode}, max_mass = {state.mass}')
                agent.max_masses.append(state.mass)
                break
            num_steps += 1
    agent.save_performance(path='random.performance')
    agent.print_final_stats()
    env.close()
Exemple #2
0
    def close(self):
        if (self.physics_connected):
            p.disconnect()

            self.physics_connected = False




if __name__ == "__main__":

    env = BoosterBackEnv(render=True)
    epds = 3

    #agent = LSTMAgent()
    #agent = MaxThrustAgent()
    agent = RandomAgent()
    #agent = DoNothingAgent()

    for epd in range(epds):
        obs = env.reset()
        done = False
        while not done:

            action = agent.get_action(obs)
            time.sleep(0.01)
            obs, reward, done, info = env.step(action)

    import pdb; pdb.set_trace()