Example #1
0
    def SetUp(self):
        game_params = TkinterGameSetupParams()
        (player1Type, player1Depth, player2Type, player2Depth) = game_params.GetGameSetupParams()

        if player1Type == 'AI':
            if player1Depth > 0:
                self.ai_players[chess.WHITE] = AI(self.board, chess.WHITE, player1Depth)
            else:
                self.ai_players[chess.WHITE] = RandomAI()

        if player2Type == 'AI':
            if player2Depth > 0:
                self.ai_players[chess.BLACK] = AI(self.board, chess.BLACK, player2Depth)
            else:
                self.ai_players[chess.BLACK] = RandomAI(self.board)
Example #2
0
                playerTurn = not playerTurn
            except (ValueError, IndexError):
                continue


while True:
    command = input("Enter board size and plane nr: ")
    cmd = command.split()
    if len(cmd) == 2:
        if int(cmd[0]) > 5:
            if int(cmd[1]) * 2 < int(cmd[0]):
                break
            else:
                print("Too many planes!")
        else:
            print("Board too small!")
    else:
        print("Invalid input!")

boardPlayer = Board(int(cmd[0]))
boardAI = Board(int(cmd[0]))

algorithm = RandomAI(int(cmd[0]))

pop = RandAIPopulate(boardAI, int(cmd[1]))

game = Game(boardPlayer, boardAI, algorithm, int(cmd[1]))

ui = UI(game)

ui.start()
Example #3
0
        factorial(player_count / factorial(player_count - 2)))
    return round_count * permutation_count


def _get_print_interval(round_count, player_count, print_count):
    interval = int(_get_match_count(round_count, player_count) / print_count)
    return interval if interval != 0 else 1


if __name__ == "__main__":
    game = TicTacToe()

    from timeit import default_timer as timer

    p1 = Player("player1", WeightedGameStateAI())
    p2 = Player("player2", WeightedGameStateAI())
    p3 = Player("player3", RandomAI())

    start = timer()
    # Training round
    game.play_tournament(50, [p1, p2, p3])
    stop = timer()
    print("Training finished in {0} seconds.".format(stop - start))

    start = timer()
    # Actual tournament
    res = game.play_tournament(10, [p1, p2, p3])
    stop = timer()
    print("Tournament finished in {0} seconds.".format(stop - start))
    print("Results:\n{0}".format(res))