围棋AI.续一.Sabaki+Leela Zero+Leelasabaki.2018年6月26日

版权声明:本文为博主原创文章,未经博主允许可以随意转载。 https://blog.csdn.net/cfy_openvms/article/details/82804106

前言

年初,伴随着围棋AI的兴起,自己也试着安装、对弈。随后将自己的安装、使用记录下来,在简书这个平台发布,方便感兴趣的网友安装使用。对应链接:https://www.jianshu.com/p/c4474034086a
几个月忙碌工作的同时,Sabaki、Leela Zero、Leelasabaki等几个软件各自升级了几个版本,这次利用出差的一点闲暇时间写了这个“围棋AI.续一”,希望对大家有帮助。

相关软件介绍和下载(Windows 10 Pro 64位版本)

1、Sabaki

一个完全使用网页技术(HTML5 + Javascript)开发,由electron封装,界面漂亮的围棋应用程序。作者的中文名字好象叫沈易川。Sabaki好象是日语发音,腾挪(围棋术语)的意思,目前(2018年6月26日)的版本是v0.34.1。
官网地址:http://sabaki.yichuanshen.de/
Github地址:https://github.com/SabakiHQ/Sabaki

官方网站截图

Github上Sabaki的页面


下载地址:https://github.com/SabakiHQ/Sabaki/releases/tag/v0.34.1
在官方网站上点击“Download”就会链接到最新版的Sabaki下载地址
2018年6月26日,当下的最新版本是0.34.1

运行下载的“sabaki-v0.34.1-win-x64-setup.exe”文件,按照提示安装即可。
注意:1、最好不要安装在默认的“Program Files”文件夹下,因为随后复制其他工具时会受到权限提示;2、安装文件夹不要有空格,我开始命名文件夹含有空格,结果调用Leela-Zero GTP引擎时,报一堆js错误。
Sabaki的Theme(可以定制棋盘棋子的样式)下载地址:https://github.com/SabakiHQ/Sabaki/blob/master/docs/guides/theme-directory.md

2、LeelaSabaki

Github地址:https://github.com/SabakiHQ/LeelaSabaki

LeelaSabaki页面

LeelaSabaki下载,选择“Download LeelaSabaki”

LeelaSabaki下载页面


将下载得到的“leelsabaki-v0.3.0-linux-macos-win-x64.7z”文件解压,将解压得到的文件夹复制到Go文件夹下,如下图。

“Leelasabaki-v0.3.0-win64”就是解压后的文件夹

3、Leela Zero

2017年2月18日,比利时人工智能开发者Gian-Carlo Pascutto在自己的主页公开了一款围棋人工智能“Leela”,并提供免费下载。这款围棋人工智能据悉接近了职业水准。韩国职业棋手孙根气五段说:“虽然在部分死活问题上存在短板,但棋感和局面的运营接近了职业水准,尤其这款程序在普通个人电脑上运行就可达到上述的水准。”Leela在KGS计算机围棋大赛多次获得冠军(第32、38、42届),2008年在计算机奥林匹克赛上获得过九路围棋银牌和十九路围棋铜牌。现在(2018年6月26日),Leela的作者已经有一段时间没有更新Leela了,而是不断升级Leela衍生出的Leela-Zero这一参照Alpha-Zero的版本。
Leela Zero的官方主页:http://zero.sjeng.org/

Leela Zero的官方主页


Leela Zero的Github下载地址:https://github.com/gcp/leela-zero/releases
Leela Zero的权重文件就在官方主页的下方:

Leela Zero的权重文件

Leela Zero的配置方法与Leela相似(其中的参数“-t 6”表示使用CPU的6线程;“-w 2b80a9db.txt”表示调用名字为“2b80a9db.txt”的权重文件;“--noponder”表示对手时间内不思考):

Leela Zero的配置方法

注意:
1、权重文件我是解压缩了的,虽然有说不用解压。
2、权重文件要放在“Leelasabaki-v0.3.0-win64”文件夹下,而不是“Leela-zero-0.15-win64”文件夹下。因为Sabaki是调用“leelasabaki-win.exe”这个文件,而不是直接调用“leelaz.exe”。
3、可以在DOS窗口,用“leelaz.exe -h”命令查看leelaz的参数说明。

leelaz的参数说明

4、进入Sabaki设置GTP引擎

首先运行Sabaki应用程序,在窗口的菜单栏中选择“Engines”,选择“Manage Engines...”。

Manage Engines...

在弹出的窗口中,选择“Engines”标签,点击左下的“Add”,分别填入“Engine Name”(引擎名字,随便写,如:Leela Zero 0.15)、“Path”(LeelaSabaki的路径和文件名,如:C:\Go\Leelasabaki-v0.3.0-win64\leelasabaki-win.exe)、“Arguments”(执行参数,还要把Leela GTP的路径和文件名带上,如:--flat C:\Go\Leela-zero-0.15-win64\leelaz.exe -t 6 -w 2b80a9db.txt --noponder)字段。图中下面的是已经填好的样例。完成后点击“Close”。如下图。

填好Engines的样子


LeelaSabaki的正则表达式:leelasabaki [--flat] [--heatmap] [--help] <path-to-leela> [leela-arguments...]
在Sabaki主界面窗口的菜单栏中选择“View”,按照下图勾选。
还要勾选“Show Comments”

View的勾选样例

在Sabaki主界面窗口的菜单栏中选择“Engines”,选择“Attach...”,开始自动对局。如下图。

选择对局引擎,填写对局信息

成功载入引擎,我的显卡是Nvidia GeForce GTX 1050 Ti,准备对局,左边窗口是Leela GTP引擎的信息窗口,右边窗口是棋子树

如果想要围棋AI给你下一手的建议,在引擎设置窗口添加“--heatmap”参数,红色区域越大越浓,表示这个着点的胜率越高

关于棋子摆放整齐的方法

怀疑自己有轻度强迫症,面对Sabaki棋子排列不整齐的样子难受啊。于是,2018年2月12日在作者的Github上提问了这个问题,下午的时候作者(沈易川?)回复了邮件。解决方法是:菜单栏上点击“File”,再选择“Preferences...”,在弹出的窗口中,把“Fuzzy stone placement”前面的对号去掉。唉,英文不行啊!

选择Preferences...

把“Fuzzy stone placement”前面的对号去掉

注意:
在填写路径等信息时,最好是复制路径信息,不要手动填写,避免错误。

猜你喜欢

转载自blog.csdn.net/cfy_openvms/article/details/82804106