Exemplo n.º 1
0
from snake_game import Snake
import time
import random

snake = Snake(20, True)

debug = False

best_score = 0

while 1:
    time.sleep(0.03)

    if(debug):
        move = snake.do_move(0)
    else:
        move = snake.do_move(random.randint(0,4))
        print(move)

    if(move['reward'] < 0):
        snake.reset()


    elif(snake.get_score() > best_score):
    	best_score = snake.get_score() 
Exemplo n.º 2
0
        bestScore = score
        print('New Best Score : ' + str(bestScore) + ' a ' +
              str(datetime.datetime.now()))
        agent.save()

    if (reward < -1):
        #print('Total reward : ' + str(lastTotalReward))
        lastTotalReward = 0
        snake.reset()

    iteration += 1

    observation = snake.get_observation()
    state_control = observation['state_control']
    snake_location = observation['snake_location']
    state = get_state(grid_size, snake_location, state_control)

    action = agent.pickAction(state, True)

    new_observation = snake.do_move(agent.getSelectedAction(action))
    reward = new_observation['reward']
    lastTotalReward += reward

    new_state_control = new_observation['state_control']
    new_snake_location = new_observation['snake_location']
    next_state = get_state(grid_size, new_snake_location, new_state_control)

    agent.train(state, action, reward, next_state, True)

print('Best Score : ' + str(bestScore))