Пример #1
0
def start():
    """
    Starts one of the processes based on command line arguments.

    :return : the worker class that was started
    """
    parser = create_parser()
    args = parser.parse_args()
    config_type = args.type

    if args.cmd == 'uci':
        disable(999999)  # plz don't interfere with uci

    config = Config(config_type=config_type)
    setup(config, args)

    logger.info(f"config type: {config_type}")

    import chess_zero.lib.tf_util as ttt

    if args.cmd == 'self':
        os.environ["CUDA_DEVICE_ORDER"] = "PCI_BUS_ID"
        os.environ["CUDA_VISIBLE_DEVICES"] = "0"
        ttt.set_session_config(allow_growth=True)
        from .worker import self_play
        return self_play.start(config)
    elif args.cmd == 'opt':
        os.environ["CUDA_DEVICE_ORDER"] = "PCI_BUS_ID"
        os.environ["CUDA_VISIBLE_DEVICES"] = "0"
        ttt.set_session_config(allow_growth=True)
        from .worker import optimize
        return optimize.start(config)
    elif args.cmd == 'eval':
        os.environ["CUDA_DEVICE_ORDER"] = "PCI_BUS_ID"
        os.environ["CUDA_VISIBLE_DEVICES"] = "0"
        ttt.set_session_config(allow_growth=True)
        from .worker import evaluate
        return evaluate.start(config)
    elif args.cmd == 'sl':
        from .worker import sl
        return sl.start(config)
    elif args.cmd == 'uci':
        from .play_game import uci
        return uci.start(config)
Пример #2
0
def start(config: Config):
    tf_util.set_session_config(per_process_gpu_memory_fraction=0.5)
    return SelfPlayWorker(config, env=ChessEnv()).start()
Пример #3
0
            # 轮到人类
            print('当前局面如下:')
            pretty_print_panel(env.board.panel)
            print()
            action = input("请输入您要放置的棋子位置:")
            while action not in env.board.legal_moves:
                print("输入有误!请重新输入.")
                action = input("请输入您要放置的棋子位置:")
        env.step(action)

    print('本局游戏结束!当前棋面为:')
    pretty_print_panel(env.board.panel)

    if env.winner == Winner.draw:
        man_score = 0.5
    elif env.white_won == robot_white:
        man_score = 0
    else:
        man_score = 1

    cur.append(cur_pipes)
    return man_score


if __name__ == '__main__':
    import chess_zero.lib.tf_util as ttt
    os.environ["CUDA_DEVICE_ORDER"] = "PCI_BUS_ID"
    os.environ["CUDA_VISIBLE_DEVICES"] = "0"
    ttt.set_session_config(allow_growth=True)
    start()
Пример #4
0
def start(config: Config):
    tf_util.set_session_config(per_process_gpu_memory_fraction=0.2)
    return EvaluateWorker(config).start()
Пример #5
0
def start(config: Config):
    tf_util.set_session_config(config.trainer.vram_frac)
    return OptimizeWorker(config).start()
Пример #6
0
def start(config: Config):
    tf_util.set_session_config(per_process_gpu_memory_fraction=0.59)
    return OptimizeWorker(config).start()
Пример #7
0
def start(config: Config):
    tf_util.set_session_config(per_process_gpu_memory_fraction=0.1)
    return SupervisedLearningWorker(config, env=ChessEnv()).start()
Пример #8
0
def start(config: Config):
    tf_util.set_session_config(config.eval.vram_frac)
    return EvaluateWorker(config).start()