ForYes

中国象棋的着法生成

中国象棋着法生成的性能很大程度上能够影响搜索,而网上几乎没有相关的测试指标

至少我自己搜了一大圈,一个相关的数据都没有看到过,只看到了零星的NPS之类的统计

NPS基本上对于搜索没有什么特别大的评判价值,除非它实在是太低了

因为NPS取决于你每个节点干了多少事情,有时候准度越高性能越低,NPS因此下滑

这不代表棋力变差了

比如你皮卡鱼,它的NPS是中国象棋引擎里面数一数二低的,照样凭NNUE薄纱全体中象引擎

因为NNUE对于NPS的降低是非常明显的,但对于棋力的提升是无敌的

而着法生成不一样,这个确实是越快越好的,类似于你排序,相同准度下肯定越快性能越高

所以我这里罗列一下着法生成的性能,加入了防编译器优化的策略防止虚高,供后人参考:

  • Chess98旧版本
    • 生成速度(legal):~24万/s
    • 含排序总速度(picking):~15万/s
  • Chess98
    • 生成速度(legal):~128万/s
    • 含排序总速度(picking):~88万/s
  • 兵河五四
    • 生成速度(legal):~31万/s
    • 含排序总速度(picking):~22万/s
  • Pikafish
    • 生成速度(legal):~532万/s
    • 含排序速度(picking):~177万/s

我之后再优化吧,你Pikafish/Stockfish的优化过于强悍

Stockfish社区实在是太给力了,Pikafish直接移植Stockfish也继承了强大的基础

532万的生成速度我都不知道它怎么做到的我靠

两个字,牛逼