from module_4.GraphicsModule4 import Gfx from module_4.PowerBoard import PowerBoard import pygame import sys if __name__ == '__main__': pb = PowerBoard((4, 4)) pb.add_random_tile() gfx = Gfx(pb, 30, (600, 600)) while True: for event in pygame.event.get(): if event.type == pygame.QUIT: sys.exit() elif event.type == pygame.KEYDOWN: if event.key == pygame.K_DOWN: pb.move_and_add_random_tile('d') if event.key == pygame.K_UP: pb.move_and_add_random_tile('u') if event.key == pygame.K_RIGHT: pb.move_and_add_random_tile('r') if event.key == pygame.K_LEFT: pb.move_and_add_random_tile('l') gfx.draw()
start_time = time.time() ann_best_tiles = [] random_best_tiles = [] for i in range(50): pb = PowerBoard((4, 4)) pb.add_random_tile() while True: if pb.is_game_over(): pb.print_to_console() ann_best_tiles.append(max(pb.get_board())) break network_output = pba.evaluate_one_board( convert_list_to_2d(pb.get_board())) pb.move_and_add_random_tile(directions[network_output]) """ possible_directions = pb.get_possible_move_directions() for choice in network_output: if directions[choice] in possible_directions: pb.move_and_add_random_tile(directions[choice]) break """ for i in range(50): pb = PowerBoard((4, 4)) pb.add_random_tile() while True: if pb.is_game_over(): pb.print_to_console() random_best_tiles.append(max(pb.get_board()))
error_rates = pba.do_training(no_of_epochs) start_time = time.time() ann_best_tiles = [] random_best_tiles = [] for i in range(50): pb = PowerBoard((4, 4)) pb.add_random_tile() while True: if pb.is_game_over(): pb.print_to_console() ann_best_tiles.append(max(pb.get_board())) break network_output = pba.evaluate_one_board(convert_list_to_2d(pb.get_board())) pb.move_and_add_random_tile(directions[network_output]) """ possible_directions = pb.get_possible_move_directions() for choice in network_output: if directions[choice] in possible_directions: pb.move_and_add_random_tile(directions[choice]) break """ for i in range(50): pb = PowerBoard((4, 4)) pb.add_random_tile() while True: if pb.is_game_over(): pb.print_to_console() random_best_tiles.append(max(pb.get_board()))
game_over = False while True: """ for event in pygame.event.get(): if event.type == pygame.QUIT: sys.exit() """ b = time() if not game_over: empties = len(pb.get_empty_spaces()) search_state = PowerBoardState(PowerBoardState.get_recursion_depth_roof(empties)) search_state.board = pb.get_board() decision = search_state.decision() with open("2048moves.txt", 'a') as log: log.write("\n\n" + str(pb.get_board())) log.write("\n" + decision) pb.move_and_add_random_tile(decision) c = time() print(c-b) if pb.is_game_over(): game_over = True print('Game over after', c-a) print('Max tile:', pb.get_max_tile()) break #gfx.draw()
a = time() game_over = False while True: """ for event in pygame.event.get(): if event.type == pygame.QUIT: sys.exit() """ b = time() if not game_over: empties = len(pb.get_empty_spaces()) search_state = PowerBoardState( PowerBoardState.get_recursion_depth_roof(empties)) search_state.board = pb.get_board() decision = search_state.decision() with open("2048moves.txt", 'a') as log: log.write("\n\n" + str(pb.get_board())) log.write("\n" + decision) pb.move_and_add_random_tile(decision) c = time() print(c - b) if pb.is_game_over(): game_over = True print('Game over after', c - a) print('Max tile:', pb.get_max_tile()) break #gfx.draw()