File size: 1,180 Bytes
2df2f26
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
import gymnasium as gym
from Snake_EnvAndAgent import SnakeGameEnv
import pygame
import time

if __name__ == "__main__":
    env = SnakeGameEnv(render_mode='human')

    episodes = 5 
    for episode in range(episodes):
        obs, info = env.reset()
        done = False
        total_reward = 0
        steps = 0

        print(f"--- Starting Episode {episode + 1} ---")

        while not done:
            # For manual testing
            # keys = pygame.key.get_pressed()
            # if keys[pygame.K_UP]: action = 0 (map to straight)

            action = env.action_space.sample()

            next_obs, reward, terminated, truncated, info = env.step(action)
            total_reward += reward
            steps += 1
            done = terminated or truncated

            # Render the environment
            #env.render()
            #time.sleep(100) # Small delay to see the game progression

            obs = next_obs

        print(f"Episode {episode + 1} finished in {steps} steps with total reward: {total_reward:.2f}")
        print(f"Final Score: {info['score']}")

    env.close()
    print("Environment test finished.")