python

围棋AI.Leela+Python脚本分析棋谱

2018-02-12  本文已影响634人  开源大熊

完成了Sabaki+LeelaSabaki+Leela GTP搭建完美围棋AI平台后,在“飞扬围棋论坛”看到有棋友介绍用Leela+Python脚本分析棋谱,于是也试了一下。

软件下载和安装

Github下载:https://github.com/lightvector/leela-analysis

leela-analysis的Github页面
将下载得到的“master.zip”文件解压缩到之前下载安装的Leela0110GTP文件夹下。如下图。
analysis-master文件夹就是leela-analysis的文件夹
Python官方下载网站地址:https://www.python.org/downloads/windows/
Python下载页面
因为leela-analysis网页上有说明,棋谱分析脚本是依赖于Python 2.7的,所以,在下载页面里找到最新版的2.7版本下载(这个文档是2018年2月12日写的)。 选择适合自己电脑的版本下载
下载完成后,执行下载文件,安装Python语言环境(我的电脑是Windows 10 Pro X64版本,所以下载的是:https://www.python.org/ftp/python/2.7.14/python-2.7.14.amd64.msi)。

运行脚本,分析棋谱

安装Python 2.7后,就有了Python运行环境。
leela-analysis官方介绍的正则表达式是:sgfanalyze.py my_game.sgf --leela /PATH/TO/LEELA.exe > my_game_analyzed.sgf
有的棋友执行脚本报类似这样的错误:

Warning: Komi not specified, assuming 7.500000
Executing approx 408 analysis steps
| | done% | Est... | done / total
| | 0.00% | Est... | 0 / 408
Traceback (most recent call last):
File "sgfanalyze.py", line 462, in <module>
leela.start()
File "D:\Leela0100GTP\sgftools\leela.py", line 188, in start
p = Popen([self.executable, '--gtp', '--noponder'] + xargs, stdout=PIPE, stdin=PIPE, stderr=PIPE)
File "C:\Program Files\Python27\lib\subprocess.py", line 390, in init
errread, errwrite)
File "C:\Program Files\Python27\lib\subprocess.py", line 640, in _execute_child
startupinfo)
WindowsError: [Error 2]
Failure, reporting partial results...
|==================================================| 100.00% | 0:00:00 | 408 / 408
|==================================================| 100.00% | Done. | Elapsed Time: 0:00:00

我也遇到类似的问题,解决后发现是执行文件路径错误。我的解决办法是直接用绝对路径。比如我的命令行是这样的:

sgfanalyze.py 001.sgf --leela C:\Sabaki\Leela0110GTP\Leela0110GTP_OpenCL.exe > 001_analyzed.sgf
因为有Python环境,脚本sgfanalyze.py前面不用加命令,直接就能解释执行

路径说明图
开始分析截图
大约2小时,分析完成截图

用Sabaki打开分析过的棋谱。如下图。


Sabaki打开分析过的棋谱
大功告成,今晚吃鸡!
上一篇下一篇

猜你喜欢

热点阅读