欢迎光临散文网 会员登陆 & 注册

如何测试引擎的棋力?

2022-08-15 21:57 作者:环球国象  | 我要投稿

文章转自微信公众号

Leela和它的朋友们

    很多小伙伴都会对引擎的棋力感到好奇——新版本相较于老版本的提升有多大?不同引擎的棋力差距又有多大?今天这篇推送我们就来简要介绍一下如何利用引擎对弈的方式测试引擎的棋力。
    有很多GUI都提供了引擎对弈的功能,比如Arena,Banksia GUI,Cute Chess等等。这里我们以Cute Chess为例,介绍如何在Cute Chess中测试引擎的棋力。

    可以从以下链接获取Cute Chess:

https://github.com/cutechess/cutechess/releases

    进入页面后按下图所示,下载红箭头所指的文件。

    随后双击下载的文件,根据文件内提示完成安装。

    2.安装待测试的引擎(以Stockfish 15和最新的测试版Stockfish为例)
Stockfish 15:进入https://stockfishchess.org/download/ 下载Stockfish 15,如下图所示。

    如果大家不知道应该下载上述哪个版本的Stockfish 15,建议两个版本都下载一遍,然后分别运行它们,选择速度更快的/可以正常运行的版本。一般说来,近几年的电脑CPU都支持AVX2指令集,即优先下载支持AVX2指令集的版本。

    最新的测试版Stockfish:进入https://abrok.eu/stockfish/ 下载新的测试版Stockfish,相信老读者应该对这个网页有印象。进入页面后如下图所示,这里我们还是选择AVX2指令集的Stockfish进行下载。

    下载完成后分别解压Stockfish 15最新的测试版Stockfish。进入相应的文件夹双击得到的Stockfish.exe,输入go nodes 10000,若如下图所示则意味着Stockfish安装成功,可以在电脑上正常的运行。

3.在Cute Chess中部署待测试的引擎

    打开Cute Chess,在工具栏中打开“设置”,如下图所示。

        打开Cute Chess,在工具栏中打开“设置”,如下图所示。

    点击左下角的“+”,在Cute Chess中部署引擎,如下图所示。

    

    点击“命令”后的“浏览…”,找到先前解压Stockfish的位置,选择相应的Stockfish文件,点击打开,如下图所示,图中展示的是Stockfish 15的部署。

使用同样的方法完成对最新的测试版Stockfish的部署,此处略。


4.下载测试用Opening Book

    由于Stockfish的棋力很高,如果直接从初始局面开始对弈,很难分出胜负。因此人们常常使用一些不平衡的开局对引擎的棋力进行测试,例如UHO Openings。

    可以从以下链接获取UHO Openings:

        https://www.sp-cc.de/downloads--links.htm

    进入页面后点击第一行的“here”完成下载,如下图所示。下载后完成解压即可。

    以上就完成了所有的准备工作,接下来可以开始测试了。

    可以看到有很多选项需要设置,这里我们分块进行介绍和设置。

    左上角部分是赛事基本信息,这里最重要的设置是“PGN输出”。如果大家希望保留测试对局,则在“PGN输出”行点击“浏览”,设置测试棋谱的输出位置,下图是一个示例

    左中部分是具体的赛程规则,我们一般选择最常见的“Round Robin”,即循环赛。“循环轮数”即字面意思,像之前结束的Candidates就是双循环赛。“对手间每次相遇的对局数”即在一个循环内,两名选手之间互相下几局,在只有两个引擎参赛时,这个参数不重要。“Play each opening”即按照Opening book的一定顺序,每个开局下几遍。“对局之间等待时间”即可认为是中场休息时间。下图是一个示例:

    左下部分的结果表输出格式不重要,使用默认设置即可。

    右上部分是时限的设置,“变体”选择“Standard”。点击“时间控制”后的按钮,即可看到如下界面(时限设置可能不同)。选择最为常规的“锦标赛”模式。“步数”设为0即可成为包干模式,否则以下设置的时限为每xx回合内的时限。“时间”和“增量”即我们最为熟悉的总用时和每回合加时,这里我们设置为10s+0.1s。其余设置我们不用调整,下图即为设置示例:

    点击“OK”,即可完成时限的设置,如下图所示。

    右中上部分是开局书的设置,这里我们可以点击第二行后的“浏览…”,任意选用一个之前下载的UHO 2022 Openings的开局书。如果我们选择的开局书中每个开局长度为6回合,那么开局书的读取深度需要设置为“12层”(步数)。开局顺序可以选择“顺序”或者“随机”。下图是一个示例:

    右中部分可以忽略,直接进入右下部分。

    对于Stockfish而言,均势的局面很难翻车输棋,优势极大的局面也很难错失赢棋。因此我们可以设置“和棋判决”和“认输判决”加速比赛的进程。这些设置并不重要,因此我们只解释下图的含义。

    超过30回合后,连续5回合双方评分都在0.15~−0.15之间并且不吃子不动兵,即自动判和并进入下一局。若连续3回合双方评分都大于5(或小于5),则判定白胜(或黑胜)并进入下一局。对对局的总长度没有限制,不启用残局库(有条件的用户可自行安装残局库)对局面进行判决,引擎不会在对手行棋时进行思考。

    最后也是最重要的,加载引擎开始比赛。点击最右侧的左下的“+”,分别双击前文部署的Stockfish 15和最新的测试版Stockfish,将其加入比赛。点击“OK”后如下图所示。

    现在所有需要的设置都已完成。如下图所示,点击“OK”即可开始测试。

    最后附上比赛结果:

    Stockfish 15以33胜33和34负的战绩惜败最新的测试版Stockfish,其中Stockfish 15执黑获胜了三局。

    以上就是如何利用引擎对弈的方式测试引擎的棋力的全部内容,祝大家玩得开心!

文章转自微信公众号“Leela和它的朋友们



如何测试引擎的棋力?的评论 (共 条)

分享到微博请遵守国家法律