电脑象棋

电脑象棋，是指人工智能象棋对弈软件。电脑象棋软件的制作，分成开局、中盘、残局三个部分，各自有不同的算法，开局主要以储存的开局棋谱为本，中盘与残局则运用审局函数和对局树的计算，但残局必须考虑特例的计算。

最早的计算机程序的象棋游戏是1986年的洛斯阿拉莫斯象棋。由于象棋与国际象棋许多相似之处，再加上电脑国际象棋发展较为成熟，电脑象棋软件设计的架构跟方法大致上都是参考电脑国际象棋。

2006年最好的电脑象棋软件，已可以和顶尖棋士相抗衡。

## 象棋引擎程序

名称｜作者｜网站｜战绩/备注

象棋大师、特级大师、将族｜虞希舜｜无｜1989电脑奥林匹克金牌

象棋专家｜曹国明｜无｜1989, 1990电脑奥林匹克银牌

象棋明星、ELP｜郑武尧，台湾大学团队｜无｜1989电脑奥林匹克铜牌；1990, 2001, 2002电脑奥林匹克金牌

梦入神机（mrsj）｜吴韧｜无｜1991, 1992电脑奥林匹克金牌

纵马奔流（zmbl）｜涂志坚｜无｜2003电脑奥林匹克金牌

千虑（contemplation）｜吴光哲，台湾大学团队｜无｜2004电脑奥林匹克金牌

象棋奇兵｜赵明阳｜ 有｜2005电脑奥林匹克金牌

棋天大圣｜王骄｜ 有｜2006, 2007电脑奥林匹克金牌；2006浪潮杯中国计算机博弈锦标赛冠军

倚天象棋｜陈朝营，韦余涛｜ 有｜2008电脑奥林匹克金牌

天马行空（TMSK）｜沈秉杰｜无｜2009电脑奥林匹克金牌

象棋世家｜郑明政｜ 有｜2010, 2011电脑奥林匹克金牌

谢谢大师（XieXieMaster）｜Pascal Tang｜ 有｜2003电脑奥林匹克银牌；2004世界电脑象棋赛冠军

象棋旋风｜陈朝营，张志强，张闽｜无｜2007第2届中国机器博弈锦标赛冠军；2008第13届电脑奥林匹克银牌

新象棋旋风｜陈朝营｜ 有｜2010第4届中国机器博弈锦标赛冠军；2011第5届中国机器博弈锦标赛亚军

天机象棋｜郑旭｜ 有｜2007第2届中国机器博弈锦标赛亚军；2008第13届电脑奥林匹克铜牌

象棋名手｜蒋志敏，张闽｜ 有｜2009第3届中国机器博弈锦标赛冠军；2010第4届中国机器博弈锦标赛季军；2011第5届中国机器博弈锦标赛冠军；2012第6届中国机器博弈锦标赛冠军；2013第7届中国机器博弈锦标赛冠军；2014第8届中国机器博弈锦标赛冠军

佳佳象棋｜李国来｜ 有｜2008第13届电脑奥林匹克第4名; 2009第3届中国机器博弈锦标赛亚军; 2010第4届中国机器博弈锦标赛亚军

先知（Oraclex）｜张志富｜无｜多次参加中国机器博弈锦标赛。2011第5届中国机器博弈锦标赛季军; 2012第6届中国机器博弈锦标赛亚军; 2013第7届中国机器博弈锦标赛亚军; 2014第8届中国机器博弈锦标赛亚军

七星大师｜赵德志｜无

VSCCP｜Pham Hong Nguyen｜无｜开源示范程式

梦入神蛋（英文名MRSD，旧名为ki11egg）｜魏泽人｜ 有｜又称梦入圣蛋、撤蛋，是一个象棋对弈程式，作者魏泽人，使用GPL授权。早期运用丙正正语言写成。它本身已经有一个用户界面，用 FLTK 函式库写成。后来又有人将梦入神蛋的引擎改写，成为另一象棋程式“浅红”的外挂引擎。

象眼（ElephantEye）｜黄晨｜ 有｜开源

浅红像棋｜Jeremy Craner｜ 有

棋隐（Chess Learner）｜邵金雷｜ 有

楚汉棋缘｜贺建良｜无

SaoLa｜Pham Hong Nguyen｜无

深象｜台湾师大团队｜无｜2006电脑奥林匹克铜牌

象棋经略｜吴衍奇｜无

理治棋壮（BitStronger）｜林健等，北理工团队｜ 有｜符合UCCI标准的开源程序

GMChess｜lerosua｜ 有｜引擎基于象眼，进入Debian

皮卡鱼 （Pikafish）｜PikaCat-OuO等人｜ 有｜引擎基于Stockfish，开源项目地址，引擎支持 UCI 协议，基于高效更新神经网络（NNUE）的象棋评估

小虫象棋（BugChess）｜刘宗元｜ 有｜商业引擎

## 比赛

### 程式对程式

最早由宏碁电脑开始举办电脑象棋比赛，从 1988 年到 1990 年止。另一个是电脑奥林匹亚竞赛中有电脑象棋的项目，从 1989 年办到 1992 年暂停，2001 年起继续每年举办。最近几年电脑象棋发展越来越热络，2004 年起世界电脑象棋争霸赛每三年举办一次。中国机器博弈锦标赛 2006 年起开始每年举办。

### 人对程式

1985 年到 1990 年宏碁电脑就曾办过人对电脑的竞赛。

之后偶有计算机程序参加人类的象棋比赛或检定赛，但时常遇到阻挠，譬如不予排名甚至不准参赛。人脑对电脑象棋大赛 自 1999 年开始每年举办。

## 协议/通讯协定

为了让象棋程式与程式之间能够自动下棋，因此必须定出了一些共通协议（protocol），譬如棋盘如何表示、棋步如何表示、或是复杂一些的时间控制。比较早公开提出的有 cxboard 及 浅红 plugin spec。现在比较广为流行的是基于国际象棋协议修改而来的 中国象棋通用引擎协议（UCCI）以及旋风UCI协议。

## 残局

电脑象棋对残局的处理主要有两种方法，一是编写大量规则，当盘面符合某些条件则调整评分函数，这个方法的优点是可以将棋谱或专家研究的结果编写入程式内，缺点是例外可能很多。另一种则是利用电脑强大的计算力与储存空间，穷举一个兵种所有的状况，做成数据库，优点是数据库内的资料都很精确（某个盘面的输赢，距离输赢步数），但缺点是建造数据库旷日费时，在实战中还不够实用。因此实战程式都是采用第一种方法，少数程式会再利用残局库作辅助。

残局库研究困难在于象棋棋规的处理，还有如何快速建造大数据库。

## 竞赛排名

比赛名称｜排名

2006中国象棋计算机博弈锦标赛｜棋天大圣 象棋奇兵 旋风 天机 将神 等

2007中国象棋计算机博弈锦标赛｜象棋旋风 天机 棋天大圣 佳佳象棋 象棋奇兵 YSSY 将神传说 3D象棋 棋王 决战象棋 象棋名手 象棋ABC 象棋蛟龙

2008ICGA象棋计算机博弈赛(北京)｜倚天 旋风 天机 佳佳 猴王 大圣 3D 奇兵 TMSK YSSY 世家 兵河五四 UFX 先知 ABC 上海交大 Chimo 棋迹

2009中国象棋计算机博弈锦标赛｜象棋名手 佳佳象棋 陶情弈趣 倚天 天机 新奇兵 先知 哈工程 理治棋壮

2010中国象棋计算机博弈锦标赛｜新象棋旋风 佳佳象棋 象棋名手 先知象棋 哈工程 哈理工象棋

2011中国象棋计算机博弈锦标赛｜象棋名手 象棋旋风 先知象棋 哈理工象棋 棋弈 工程之星

2012中国象棋计算机博弈锦标赛｜象棋名手 先知象棋 攻防专家 棋弈 韶大象棋

2013中国象棋计算机博弈锦标赛｜象棋名手 先知象棋 攻防专家 韶大象棋_环创队 哈理工象棋 哈工程_RSA 理志棋壮

2014中国象棋计算机博弈锦标赛｜象棋名手 先知象棋 攻防专家

## 大事纪

- 1988：宏碁电脑与象棋协会举办第一届电子计算机象棋大赛，《象棋大师》程式获得冠军
- 1989：《特级大师》参加新秀杯升段赛，昇为二段棋士
- 1989：第一届奥林匹亚电脑游戏程式竞赛，《特级大师》获得冠军
- 1991：《将族》电脑象棋游戏公开发行
- 1998：《ELP》参加昭荣杯升段赛，晋昇为五段棋士
- 1999：开始举办人脑对电脑象棋大赛
- 2001：《ELP》参加新庄市长杯全国比赛，晋昇为六段棋士
- 2004：第一届世界电脑象棋争霸赛
- 2004：《棋海无涯》参加启泰杯八段赛，获得冠军。
- 2006：首届中国象棋计算机博弈锦标赛暨2006中国机器博弈学术研讨会
- 2006：《棋天大圣》两和象棋等级分第一的许银川
- 2007：第二届中国计算机博弈锦标赛，《象棋旋风》获得冠军
- 2008：The 13th International Computer Games Championship，《倚天》获得冠军
- 2009：2009中国计算机博弈锦标赛，《象棋名手》获得冠军
- 2009：在人机大战中，象棋软件《象棋名手》、《佳佳象棋》、《陶情弈趣》以4胜2和的总成绩赢得和刘星、黄海林、朱琮思三位大师的比赛
- 2010：2010中国计算机博弈锦标赛，《新象棋旋风》获得冠军
- 2011：2011中国计算机博弈锦标赛，《象棋名手》获得冠军
- 2012：2012中国计算机博弈锦标赛，《象棋名手》获得冠军
- 2013：2013中国计算机博弈锦标赛，《象棋名手》获得冠军
- 2014：2014中国计算机博弈锦标赛，《象棋名手》获得冠军

## 外部链接

- Computer Chinese Chess (Yen, Chen, Yang, Hsu) — review (英)
- 近年来电脑象棋在台湾的进展