FireMonkey3D之中国象棋程序设计(六)完善算法

FireMonkey3D之中国象棋程序设计(六)完善算法

  声明:本程序设计参考象棋巫师源码(开发工具dephi 11,建议用delphi 10.3以上版本)。  

  这一章主要完善算法。本章目标:

  • 实现开局库;
  • 实现PVS(主要变例搜索);
  • 把根节点的搜索单独处理,增加搜索的随机性;
  • 克服由长将引起的置换表的不稳定性。

  6.1 实现开局库

  开局库几乎是每个象棋程序必备的部件,它的好处是:

  (1) 即使再笨的程序,开局库能使得它们在开局阶段看上去不那么业余;

  (2) 通过随机选择走法,让开局灵活多变,增加对弈的趣味性。

  我们程序使用开源象棋程序 ElephantEye 的开局库Book.dat文件,开局库文件的结构:  

type BookItem=record
  dwLock:Cardinal;
  wmv, wvl:Word;
end;
hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » FireMonkey3D之中国象棋程序设计(六)完善算法