什么叫殘局庫(kù)?

殘局庫(kù)是經(jīng)特別算法產(chǎn)生的特定格式的、儲(chǔ)存各限定棋子數(shù)目的殘局之所有局面及其估值的數(shù)據(jù)庫(kù)文件集合。概述地說(shuō),殘局?jǐn)?shù)據(jù)庫(kù)是儲(chǔ)存了殘局局面并經(jīng)回溯分析計(jì)算過(guò)的數(shù)據(jù)庫(kù)文件,它使用在棋弈程序上,當(dāng)進(jìn)入殘局時(shí),只要適合使用的殘局?jǐn)?shù)據(jù)庫(kù)文件存在,程序?qū)⒆叩梅浅M昝?。多?shù)棋弈引擎并不一定要到達(dá)殘局庫(kù)所涵蓋的局面時(shí)才使用殘局庫(kù)。例如,在到達(dá)如此局面之前幾步,引擎計(jì)算(但還沒(méi)走棋)一系列交換之后直接進(jìn)入殘局庫(kù)里存有的局面。引擎于是搜索探查殘局庫(kù)并取得那個(gè)設(shè)想局面的結(jié)果。如此當(dāng)然提高了棋力。

有多少種殘局庫(kù)格式?彼此有什么不同?

殘局庫(kù)格式是多種多樣的,包括肯·托普森式(Ken Thompson)、史蒂文·愛(ài)德華茲式(Steven J. Edwards)、歐根尼·納利莫夫式(Eugene Nalimov)以及Chessmaster9000專(zhuān)用的EDGB殘局庫(kù)格式。不過(guò)總的來(lái)說(shuō)它們劃分為兩種殘局庫(kù)類(lèi)型:將殺步數(shù)(DTM)類(lèi)型和變換步數(shù)(DTC)類(lèi)型。粗略地以非專(zhuān)業(yè)語(yǔ)言來(lái)說(shuō),彼此之間區(qū)別如下:將殺步數(shù)(DTM)類(lèi)型:即Distance to mate,這種類(lèi)型的庫(kù)為每一個(gè)局面儲(chǔ)存最短的將殺可能(以層,即ply來(lái)計(jì)算,一層相當(dāng)于半個(gè)回合)。例如Nalimov殘局庫(kù)。變換步數(shù)(DTC)類(lèi)型:即Distance to conversion,這種類(lèi)型的庫(kù)儲(chǔ)存每一個(gè)局面及其一個(gè)“轉(zhuǎn)換”之間的最短層數(shù)。所謂一個(gè)轉(zhuǎn)換,指或者是兵升變,或者某子被吃去,或者出現(xiàn)將殺。例如Thompson殘局庫(kù)。另外,無(wú)論是DTM還是DTC類(lèi)型的殘局庫(kù),都不能識(shí)別50回合自然限著規(guī)則。為了克服它們的缺點(diǎn),已經(jīng)提出了DTZ和DTR另外兩種類(lèi)型。但至今只停留在理論上。說(shuō)到具體每種格式的區(qū)別,還不能簡(jiǎn)單就說(shuō)得清楚的。Crafty的作者于2000年10月在新聞組作過(guò)如下解釋?zhuān)?“Edwards式:屬于將殺步數(shù)(DTM)類(lèi)型。Edwards式的主要問(wèn)題是這種殘局庫(kù)體積比其它的龐大。 “Nalimov式:也屬于將殺步數(shù)(DTM)類(lèi)型,但Nalimov式的殘局庫(kù)文件是壓縮的,也可以以壓縮形式使用而無(wú)不利之處。對(duì)于擁有全部3、4、5子殘局的殘局庫(kù),別的格式其文件總數(shù)大小超過(guò)30G,而使用這種格式的大約只有7.5G。 “Thompson式:屬于變換步數(shù)(DTC)類(lèi)型(每當(dāng)發(fā)生吃子,殘局的‘級(jí)數(shù)’都變小)。這種格式難以以壓縮形式使用,相對(duì)于Nalimov式,它提供的信息也不相同……比如,它告訴你一些信息,卻沒(méi)有區(qū)分是負(fù)還是和,而Nalimov式對(duì)此則有區(qū)分。 “Nalimov式是最佳選擇。幾乎每個(gè)引擎都支持它……”當(dāng)然,他沒(méi)有提及僅是Chessmaster9000專(zhuān)用的EDGB格式殘局庫(kù),因?yàn)镋DGB是2002年8月才發(fā)布的。Nalimov式仍然是最流行的在用殘局庫(kù)格式,因此我想再多談一點(diǎn)這種格式。 Nalimov式幾近“完美”,因?yàn)樗殉赃^(guò)路兵也考慮進(jìn)去了。但是沒(méi)把王車(chē)易位也考慮進(jìn)去。只不過(guò),大概只有排局迷才會(huì)對(duì)此計(jì)較??偟膩?lái)說(shuō),現(xiàn)代幾乎所有的國(guó)際象棋程序包括大多數(shù)Winboard引擎使用Nalimov式殘局庫(kù),一部分原因是它們不設(shè)版權(quán),一部分原因它們更高效?,F(xiàn)在Nalimov式殘局庫(kù)已經(jīng)出了部分6子殘局庫(kù)。Nalimov式殘局庫(kù)有兩種形式,壓縮的和非壓縮的,壓縮的以“emd”為文件后綴。多數(shù)現(xiàn)代棋弈程序能解壓使用壓縮的殘局庫(kù),例如Crafty從16.5版本后就支持壓縮的Nalimov式殘局庫(kù)。我注意到有個(gè)Winboard引擎Esc只能用非壓縮的。殘局庫(kù)還有其它一些格式,但比較少見(jiàn)。比較著名的,商業(yè)性高級(jí)棋弈軟件Nimzo8使用它的Nimzo殘局庫(kù),這種殘局庫(kù)放入到內(nèi)存中使用,因此讀取比較快。一直沒(méi)有公開(kāi)發(fā)表但棋力不俗的ferret也使用它的專(zhuān)用殘局庫(kù)。我文章余下部分,除非特別說(shuō)明,殘局庫(kù)都是指Nalimov式。

常見(jiàn)棋弈程序各支持什么格式的殘局庫(kù)?

chessbase出版發(fā)行的那些大名鼎鼎的高級(jí)軟件比如(Deep)Fritz、Junior、HIARCS、shredder 5.0+等都支持Nalimov式;Shredder 5.0+另支持Thompson;Nimzo8+另支持自身的Nimzo殘局庫(kù);Rebel Tiger 2.0和Chess Tiger 14.0也支持Nalimov式和CT15,早期Rebel不支持任何殘局庫(kù);Chessmaster 9000及以后版本支持其專(zhuān)用的EDGB殘局庫(kù);Chess Genius 6.5支持Thompson式;絕大部分免費(fèi)的Winboard引擎都是支持Nalimov式,其中Crafty在15.21版本之前使用Edwards式,之后只支持Nalimov式;16.5版本之后可使用壓縮的Nalimov式殘局庫(kù)。