LEARNING_RATE = 0.003 MOMENTUM_RATE = 0.9 a = Ann(neuronsInHiddenLayers=NEURONS_IN_HIDDEN_LAYERS, listOfFunctions=LIST_OF_FUNCTIONS, learningRate=LEARNING_RATE, momentumRate=MOMENTUM_RATE, errorFunc=10) for i in range (50): trX, trY = get_data.get_training_data('training/train_data_'+str(i+1)) print "Training on data "+str(i+1) a.training(trX, trY,len(trX)-1,EPOCHS_PER_GAME) random_res = [] #random_res = [128, 128, 256, 64, 256, 128, 64, 64, 32, 64, 128, 128, 128, 128, 128, 128, 64, 128, 64, 128, 128, 64, 64, 64, 64, 128, 128, 128, 64, 128, 128, 128, 128, 128, 128, 128, 32, 128, 256, 64, 64, 128, 64, 64, 64, 128, 128, 64, 128, 64] for i in range(50): print "Random game: "+str(i+1) board = Board() window.update_view( board.generateState(board.grid) ) solver = Solver(board, window, root) solver.startSolver("random") random_res.append(int(2**board.bestTile)) ann_res=[] for asd in range(50): print "ANN game: "+str(asd+1) board = Board() window.update_view( board.generateState(board.grid) ) x = play(a) ann_res.append(x) '''
from visuals import GameWindow from board import Board from solver import Solver from Tkinter import * import random, sys, copy, time root = Tk() window = GameWindow(root) random_res = [] for i in range(50): board = Board() window.update_view( board.generateState(board.grid) ) solver = Solver(board, window, root) solver.startSolver("random") random_res.append(int(2**board.bestTile)) print random_res '''for i in range(1,50): board = Board() window.update_view( board.generateState(board.grid) ) solver = Solver(board, window, root, train_nr=i) #modes: random, upleftdownright, partialAI, onestepahead solver.startSolver("expectimax")''' # TO PLAY THE GAME, UMCOMMENT THESE LINES ''' while True: window.update_view( board.generateState(board.grid) ) print "POINTS========> > > " + str(board.points) + " < < <========POINTS"
alreadyCompleted = True gameBoard.setBoard(bestNode.board) gameBoard.placeRandomTwoOrFour() window.update_view(gameBoard.board) main = Tk() window = GameWindow(main) main.bind('<Left>', leftKey) main.bind('<Right>', rightKey) main.bind('<Up>', upKey) main.bind('<Down>', downKey) main.bind('<KeyRelease>', keyReleased) main.bind('<space>', startAlgorithm) window.pack() gameBoard = initBoard() window.update_view(gameBoard.board) # 1D list representing the board window.mainloop() newNode = findBestMove([1, 8, 9, 10, 5, 7, 6, 4, 1, 4, 5, 3, 1, 3, 2, 1]) print newNode