def do_POST(self): self.rfile.readline() # Skip header post_body = self.rfile.readline() data = simplejson.loads(post_body) #strats = ['best-2011-10-24-16-47-58.c4', 'best-2011-10-24-16-47-39.c4', 'best-2011-10-24-16-48-38.c4', 'best-2011-10-24-16-48-09.c4'] strats = ['best-2011-10-24-16-48-26.c4',] random.shuffle(strats) strat = genetic.genetic(int(data['currentTurn']), strats[0]) move = strat.getMove(data['board']) #move = get_move(data) self.send_response(200) self.send_header('Content-Type', 'application/json') self.end_headers() self.wfile.write('{"move":%d}' % move)
def isWinner(self): return self.utils.isWinner(self.board) def printBoard(self): self.utils.printBoard(self.board) if __name__ == "__main__": #players = [ dumb.dumb(1), dumb.dumb(2) ] #players = [ dumb.url(1,'http://dl.no.de/ai/twostep/move'), genetic.genetic(2, 'best.c4') ] #players = [ dumb.url(1,'http://dl.no.de/ai/random/move'), genetic.genetic(2, 'best.c4') ] #players = [ genetic.genetic(1, 'best.c4'), dumb.url(2,'http://dl.no.de/ai/random/move') ] #players = [ genetic.genetic(1, 'best_so_far2.c4'), dumb.dumb(2) ] #players = [ genetic.genetic(1, 'best_so_far2.c4'), dumb.url(2,'http://dl.no.de/ai/twostep/move') ] #players = [ genetic.genetic(1, 'best.c4'), dumb.url(2,'http://dl.no.de/ai/twostep/move') ] players = [ genetic.genetic(1, 'best.c4'), dumb.url(2,'http://dl.no.de/ai/random/move') ] NUM_GAMES = 200 ROWS = 6 COLS = 7 win_stats = defaultdict(int) for g in range(NUM_GAMES): c = c4(rows=ROWS,cols=COLS) for i in range(c.rows * c.cols): #c.printBoard() winner = c.isWinner() if winner <> 0: print 'Player %d has won' % winner #c.printBoard() #exit() break