예제 #1
0
        bot2 = int(bot2)

    with open(f"saved_weights/epoch{epoch1}.json") as f:
        weights1 = json.load(f)[bot1]

    with open(f"saved_weights/epoch{epoch2}.json") as f:
        weights2 = json.load(f)[bot2]

    r1 = Robot("test1", weights1)
    r2 = Robot("test2", weights2)
    c1 = CodeContainer.from_directory(r1.bot_directory)
    c2 = CodeContainer.from_directory(r2.bot_directory)

    game = Game([c1, c2],
                board_size=16,
                max_rounds=MAX_ROUNDS,
                random_pieces=0,
                debug=True,
                seed=None)

    start = time.time()
    while game.running:
        print('.', end='', flush=True)
        game.turn()
    print()
    end = time.time()
    print(f"Winner is {game.winner}")
    print(f"Time taken = {end - start}")
    viewer = FancyViewer(game.board_size, game.board_states, window_size=800)
    viewer.play(delay=0.04)
예제 #2
0
##    if len(sys.argv) >= 2:
##        epoch = sys.argv[1]
##    else:
##        epoch = 0
##        while os.path.isfile(f"saved_weights/epoch{epoch}.json"):
##            epoch += 1
##        epoch -= 1
##        print(f"Using epoch {epoch}")
##    
##    with open(f"saved_weights/epoch{epoch}.json") as f:
##        weights = json.load(f)[0]
##        
##    r1 = Robot("test1", weights)
##    c1 = CodeContainer.from_directory(r1.bot_directory)
    c1 = CodeContainer.from_directory("testbot")
    c2 = CodeContainer.from_directory("examplefuncsplayer")
    w = 0
    l = 0
    for test in range(10):
        game = Game([c1, c2], board_size=16, max_rounds=250, debug=False, seed=None)
        while game.running:
            game.turn()
        if game.winner == Team.WHITE:
            w += 1
        else:
            l += 1
        print(round(w/(w+l)*100, 2))
    viewer = FancyViewer(game.board_size, game.board_states, window_size=800)
    viewer.play(delay=0.5)
예제 #3
0
        bot2 = int(bot2)

    with open(f"saved_weights/epoch{epoch1}.json") as f:
        weights1 = json.load(f)[bot1]

    with open(f"saved_weights/epoch{epoch2}.json") as f:
        weights2 = json.load(f)[bot2]

    r1 = Robot("test1", weights1)
    r2 = Robot("test2", weights2)
    c1 = CodeContainer.from_directory(r1.bot_directory)
    c2 = CodeContainer.from_directory(r2.bot_directory)

    game = Game([c1, c2],
                board_size=16,
                max_rounds=MAX_ROUNDS,
                debug=True,
                seed=None,
                random_pieces=10)

    start = time.time()
    while game.running:
        print('.', end='', flush=True)
        game.turn()
    print()
    end = time.time()
    print(f"Winner is {game.winner}")
    print(f"Time taken = {end - start}")
    viewer = FancyViewer(game.board_size, game.board_states, window_size=800)
    viewer.play(delay=0.2)
예제 #4
0

if __name__ == "__main__":
    import os, sys, json, time
    from fancyviewer import FancyViewer
    from robot import Robot

    MAX_ROUNDS = 250

    p1 = sys.argv[1]
    p2 = sys.argv[2]

    c1 = CodeContainer.from_directory(p1)
    c2 = CodeContainer.from_directory(p2)

    game = Game([c1, c2],
                board_size=16,
                max_rounds=MAX_ROUNDS,
                debug=True,
                seed=None)
    start = time.time()
    while game.running:
        print('.', end='', flush=True)
        game.turn()
    print()
    end = time.time()
    print(f"Winner is {game.winner}")
    print(f"Time taken = {end - start}")
    viewer = FancyViewer(game.board_size, game.board_states, window_size=800)
    viewer.play(delay=0.1)
예제 #5
0
if __name__ == "__main__":
    import os, sys, json, time
    from fancyviewer import FancyViewer
    from robot import Robot

    MAX_ROUNDS = 500

    p1 = sys.argv[1]
    p2 = sys.argv[2]
    if len(sys.argv) > 3:
        MAX_ROUNDS = int(sys.argv[3])

    c1 = CodeContainer.from_directory(p1)
    c2 = CodeContainer.from_directory(p2)

    game = Game([c1, c2],
                board_size=16,
                max_rounds=MAX_ROUNDS,
                debug=False,
                seed=None)
    start = time.time()
    while game.running:
        print('.', end='', flush=True)
        game.turn()
    print()
    end = time.time()
    print(f"Winner is {game.winner}")
    print(f"Time taken = {end - start}")
    viewer = FancyViewer(game.board_size, game.board_states, window_size=800)
    viewer.play(delay=0.02)