亚洲欧美精品沙发,日韩在线精品视频,亚洲Av每日更新在线观看,亚洲国产另类一区在线5

<pre id="hdphd"></pre>

  • <div id="hdphd"><small id="hdphd"></small></div>
      學(xué)習(xí)啦>興趣愛(ài)好>學(xué)下棋>國(guó)際象棋>

      國(guó)際象棋殘局庫(kù)

      時(shí)間: 雪花750 分享

        什么是國(guó)際象棋殘局庫(kù)?有多少種國(guó)際象棋殘局庫(kù)格式?彼此有什么不同?下面學(xué)習(xí)啦小編給你介紹國(guó)際象棋殘局庫(kù)吧,歡迎閱讀。

        國(guó)際象棋殘局庫(kù)介紹

        Aaron Tay

        A1. 什么叫殘局庫(kù)?(endgame tablebase,簡(jiǎn)稱egtb)

        概述性地說(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昝馈?/p>

        多數(shù)棋弈引擎并不一定要到達(dá)殘局庫(kù)所涵蓋的局面時(shí)才使用殘局庫(kù)。例如,在到達(dá)如此局面之前幾步,引擎計(jì)算(但還沒(méi)走棋)一系列交換之后直接進(jìn)入殘局庫(kù)里存有的局面。引擎于是搜索探查殘局庫(kù)并取得那個(gè)設(shè)想局面的結(jié)果。如此當(dāng)然提高了棋力。

        【譯注:作者說(shuō)他不熟悉殘局?jǐn)?shù)據(jù)庫(kù)的技術(shù)細(xì)節(jié);譯者也不熟悉,那也需要一定數(shù)學(xué)和程序設(shè)計(jì)基礎(chǔ)。但作者的解釋未免也太過(guò)簡(jiǎn)單些了,不妨試著這樣解釋:殘局庫(kù)是經(jīng)特別算法產(chǎn)生的特定格式的、儲(chǔ)存各限定棋子數(shù)目的殘局之所有局面及其估值的數(shù)據(jù)庫(kù)文件集合。比如王+車對(duì)王的最簡(jiǎn)單殘局,其相應(yīng)數(shù)據(jù)庫(kù)文件就儲(chǔ)存了由這三個(gè)棋子在棋盤上組成的一切可能局面及估值,所以當(dāng)局面到達(dá)王+車對(duì)王局面時(shí),引擎就直接在數(shù)據(jù)庫(kù)中搜索、對(duì)照局面并取出相應(yīng)估值,這樣它“想都不用想”就知道該如何走。因?yàn)橹谱鳉埦謳?kù)文件時(shí),用回溯分析計(jì)算過(guò)所有局面,得出最佳結(jié)果,因此按殘局庫(kù)里的走法走相對(duì)應(yīng)的殘局是最正確最完美的(這是對(duì)合格殘局庫(kù)的要求)。所以使用殘局庫(kù)大大提高了引擎走末段殘局的棋力--幾乎不花時(shí)間計(jì)算且又走出最準(zhǔn)確的棋步。目前,棋子數(shù)目最大的是六子殘局,即雙方剩下棋子加起來(lái)一共六只,不管什么組合(顯而易見(jiàn),雙方各有一只王加起來(lái)就占了兩子)?!?/p>

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

        有各種各樣的殘局庫(kù)格式,包括肯·托普森式(Ken Thompson)、史蒂文·愛(ài)德華茲式(Steven J. Edwards)、歐根尼·納利莫夫式(Eugene Nalimov)以及Chessmaster9000專用的EDGB殘局庫(kù)格式。

        不過(guò)總的來(lái)說(shuō)它們劃分為兩種殘局庫(kù)類型:將殺步數(shù)(DTM)類型和變換步數(shù)(DTC)類型。粗略地以非專業(yè)語(yǔ)言來(lái)說(shuō),彼此之間區(qū)別如下:

        將殺步數(shù)(DTM)類型:即Distance to mate,這種類型的庫(kù)為每一個(gè)局面儲(chǔ)存最短的將殺可能(以層,即ply來(lái)計(jì)算,一層相當(dāng)于半個(gè)回合)。例如Nalimov殘局庫(kù)。

        變換步數(shù)(DTC)類型:即Distance to conversion,這種類型的庫(kù)儲(chǔ)存每一個(gè)局面及其一個(gè)“轉(zhuǎn)換”之間的最短層數(shù)。所謂一個(gè)轉(zhuǎn)換,指或者是兵升變,或者某子被吃去,或者出現(xiàn)將殺。例如Thompson殘局庫(kù)。

        另外,無(wú)論是DTM還是DTC類型的殘局庫(kù),都不能識(shí)別50回合自然限著規(guī)則。為了克服它們的缺點(diǎn),已經(jīng)提出了DTZ和DTR另外兩種類型。但至今只停留在理論上。

        說(shuō)到具體每種格式的區(qū)別,還不能簡(jiǎn)單就說(shuō)得清楚的。Crafty的作者于2000年10月在新聞組作過(guò)如下解釋:

        “Edwards式:屬于將殺步數(shù)(DTM)類型。Edwards式的主要問(wèn)題是這種殘局庫(kù)體積比其它的龐大。

        “Nalimov式:也屬于將殺步數(shù)(DTM)類型,但Nalimov式的殘局庫(kù)文件是壓縮的,也可以以壓縮形式使用而無(wú)不利之處。對(duì)于擁有全部3、4、5子殘局的殘局庫(kù),別的格式其文件總數(shù)大小超過(guò)30G,而使用這種格式的大約只有7.5G。

        “Thompson式:屬于變換步數(shù)(DTC)類型(每當(dāng)發(fā)生吃子,殘局的‘級(jí)數(shù)’都變小)。這種格式難以以壓縮形式使用,相對(duì)于Nalimov式,它提供的信息也不相同……比如,它告訴你一些信息,卻沒(méi)有區(qū)分是負(fù)還是和,而Nalimov式對(duì)此則有區(qū)分。

        “Nalimov式是最佳選擇。幾乎每個(gè)引擎都支持它……”

        當(dāng)然,他沒(méi)有提及僅是Chessmaster9000專用的EDGB格式殘局庫(kù),因?yàn)镋DGB是2002年8月才發(fā)布的。Nalimov式仍然是最流行的在用殘局庫(kù)格式,因此我想再多談一點(diǎn)這種格式。

        Nalimov式幾近“完美”,因?yàn)樗殉赃^(guò)路兵也考慮進(jìn)去了。但是沒(méi)把王車易位也考慮進(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)有公開發(fā)表但棋力不俗的Ferret也使用它的專用殘局庫(kù)。我文章余下部分,除非特別說(shuō)明,殘局庫(kù)都是指Nalimov式。

        A4. 常見(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及以后版本支持其專用的EDGB殘局庫(kù);Chess Genius 6.5支持Thompson式;絕大部分免費(fèi)的Winboard引擎都是支持Nalimov式,其中Crafty在15.21版本之前使用Edwards式,之后只支持Nalimov式;16.5版本之后可使用壓縮的Nalimov式殘局庫(kù)。

        A5. 從哪里可得到殘局庫(kù)?

        如果你有Chessbase發(fā)行的軟件比如Fritz,你就同時(shí)擁有3-4子壓縮Nalimov式殘局庫(kù)。但你可能覺(jué)得不夠,有三種方法可得到更多:購(gòu)買、下載、自造。如果你有Chessmaster9000,CD原盤上已附帶所有4子和部分5子殘局庫(kù)。寫作此文時(shí),Chessmaster9000專用的這種EDGB殘局庫(kù)既還沒(méi)有得出售、也沒(méi)有地方下載。

        Chessbase出版發(fā)行的The Chessbase Endgame Turbo CD一共四張CD,包含Nalimov式全部3和4子、以及部分重要的5子殘局庫(kù),還可找得到一套9CD的,包含更全。

        關(guān)于下載,你可以到ftp://ftp.cis.uab.edu/pub/hyatt/TB去下載所有3、4、5和少部分6子殘局庫(kù)【譯注:對(duì)于熟悉國(guó)際象棋軟件的,這個(gè)FTP站可說(shuō)大大有名,既可以下載Nalimov式殘局庫(kù),也是提供各版本Crafty下載的老家】,要下載5子以上的殘局庫(kù),你需要較快的網(wǎng)上下載速度,因?yàn)樗鼈兒艽?。【單單一個(gè)文件上百M(fèi)是很平常的,而且文件很多】

        至于自造殘局庫(kù),可使用tbgen.exe這個(gè)工具,下載:

        ftp://ftp.cis.uab.edu/pub/hyatt/TB/tbexe.zip,教程可在http://moq.pythoz.com/WinBoard.htm找;http://www.aarontay.per.sg/winboard/EndgameP.html也有。但想自造5子殘局,需要很快的電腦和大量的內(nèi)存。

        A9. 殘局庫(kù)文件有多大?我需要完整的5子殘局庫(kù)嗎?

        注意都是指Nalimov式。

        安裝殘局庫(kù)文件越多,程序的棋力就越強(qiáng)??墒?,一套完整的3、4、5子殘局文件要占7.05GB的硬盤空間!【所以想下載的話有些心理準(zhǔn)備】注意你購(gòu)買的很多號(hào)稱“全版”的殘局庫(kù)CD其實(shí)并不是完整的,有些不重要的殘局庫(kù)被剔除了,比如王+后+車+象對(duì)單王這樣的5子殘局,引擎靠算完全足夠了,沒(méi)必要用殘局庫(kù)。人們多數(shù)都是下載完整的3子和4子庫(kù),然后選擇一些5子庫(kù)來(lái)下載。由于殘局中有車存在的情況較多,所以優(yōu)先下載帶車的殘局庫(kù)文件。

        一般不同子數(shù)的殘局庫(kù)文件放在同一目錄下,然后在引擎的設(shè)置文件中指明殘局庫(kù)的路徑就可使用了。除非另有特別需求可有些放在子目錄下,而且要檢查一下你的引擎、或界面是否允許設(shè)置指向不同的殘局庫(kù)路徑。Yace的作者指出,幾乎所有的引擎都支持同時(shí)指向不同的殘局庫(kù)路徑。

        使用殘局庫(kù)時(shí),有個(gè)問(wèn)題要注意處理好,否則可能出現(xiàn)啼笑皆非的情況。比如你有王+車+兵對(duì)王+車的殘局庫(kù)文件(假定你已有全套3和4子殘局庫(kù)),這種情況下你應(yīng)同時(shí)還有王+后+車對(duì)王+車的殘局庫(kù)文件,因?yàn)橐紤]兵升變?yōu)楹蟮那闆r!

        有些引擎很“笨”的,假如你缺少王+后+車對(duì)王+車的殘局庫(kù)文件,在某些強(qiáng)方可勝的王+車+兵對(duì)王+車殘局里,且兵可升變?yōu)楹蟮那闆r下,它竟然不懂得升變的!為什么會(huì)這樣呢?因?yàn)槟阌型?車+兵對(duì)王+車的殘局庫(kù)文件,對(duì)于當(dāng)前局面引擎通過(guò)查找殘局庫(kù)看到強(qiáng)方勝;而對(duì)于兵升變?yōu)楹蟮木置?,引擎找不到相?yīng)王+后+車對(duì)王+車殘局庫(kù)文件,雖然兵升變?yōu)楹?,引擎?dāng)然評(píng)價(jià)強(qiáng)方獲得很高分的優(yōu)勢(shì)(其實(shí)也是勝勢(shì)),但也是只會(huì)定為“相對(duì)不確定”,也就是說(shuō)很高分的優(yōu)勢(shì)還是不如已明確指出的勝利“更高分”!類似的情況還有,比方你有王+后+兵對(duì)王+后的殘局庫(kù)文件卻沒(méi)有王+后+后對(duì)王+后文件,那么……

        有些引擎比較“智能”,能避免這個(gè)問(wèn)題,因此缺乏某些殘局庫(kù)文件也沒(méi)關(guān)系;但有些比如Fritz、Tiger、Amy、Comet、Gandalf就不會(huì)處理了?!咀g注:原文如此,但他沒(méi)說(shuō)到哪個(gè)版本的Fritz和Tiger都有這個(gè)問(wèn)題】

        當(dāng)然,上述那個(gè)情況,如果是存在有快速將殺的可能,倒不一定出現(xiàn)這個(gè)問(wèn)題。

        注意,Yace目前還不支持4+1的5子殘局庫(kù),即一方有王和隨便三子/兵,另一方單王;【譯注:4+1未必很好勝,甚至難勝的;原文提到,但沒(méi)說(shuō)什么,這種特殊情況,比如:王+三只最邊的兵疊在一起對(duì)處在這邊上的單王……】

        A10. 關(guān)于6子殘局庫(kù)

        就我所知,使用到6子殘局的引擎還不多,盡管從原理上讓引擎使用6子殘局庫(kù)很簡(jiǎn)單。

        6子殘局庫(kù)的用法沒(méi)什么變的,一樣。能下載Nalimov式6子殘局庫(kù)的地方是ftp://ftp.cis.uab.edu/pub/hyatt/TB/Six/,目前還不多,而且一個(gè)文件就大于2G,所以分成兩部分供下載。

        引擎使用查找6子殘局庫(kù),對(duì)于系統(tǒng)還有一些嚴(yán)厲的技術(shù)要求,要求很高。

        目前的6子殘局庫(kù),不包含兵的幾乎齊了,而包含兵的還沒(méi)出現(xiàn)。估計(jì)全套的6子殘局庫(kù)要占用1000G的空間大小。

        A11. 關(guān)于殘局庫(kù)是否工作正常和是否出現(xiàn)內(nèi)部錯(cuò)誤。

        殘局庫(kù)的內(nèi)部錯(cuò)誤,是指下載下來(lái)或自己制作的殘局庫(kù)中的某個(gè)(或某些)文件內(nèi)部出現(xiàn)“腐朽”,結(jié)果不但發(fā)揮不了效力,甚至可能導(dǎo)致某些使用它(們)的引擎啟動(dòng)不了。這當(dāng)然是個(gè)問(wèn)題,想想看殘局庫(kù)的文件有這么多啊,想抓出究竟是哪一個(gè)文件有內(nèi)部錯(cuò)誤很不容易。

        不過(guò)要知道殘局庫(kù)是否工作正常并非沒(méi)有辦法,用引擎中分析局面時(shí),特別是專門根據(jù)你所擁有的殘局庫(kù)而設(shè)定局面時(shí),往往光憑觀察就知道殘局庫(kù)是否在使用:引擎走棋或給出估值很迅速,“想都不想地”,而且給出的估值一般恒定不變【譯注:另外那些“一眼看出”數(shù)十步之后殺棋的肯定使用到了殘局庫(kù)】。有些引擎在分析模式時(shí)會(huì)在思考變化上指出估值是來(lái)自殘局庫(kù),例如Crafty在主變后方會(huì)加上“”字樣?!咀g注:也可以打開引擎的log模式,分析后手工文本方式查看log文件,往往有說(shuō)殘局庫(kù)的使用情況,比如Ruffian】

        假如你使用Nalimov式殘局庫(kù),要批量檢查一大批文件有更簡(jiǎn)單辦法:

        1、使用datacomp.exe;

        2、下載殘局庫(kù)時(shí)會(huì)見(jiàn)到MD5驗(yàn)證文件,可以使用之檢查,見(jiàn)http://www.aarontay.per.sg/Winboard/md5.html;

        這些需要做一些操作,供有興趣者自行研究。另外譯者還推薦你若有光盤刻錄機(jī),不妨刻錄備份一到兩套殘局庫(kù),有什么問(wèn)題覆蓋回來(lái)就是了。不少人用了幾年的殘局庫(kù),也未出現(xiàn)過(guò)這種文件內(nèi)部錯(cuò)誤。

        A13. Crafty怎么樣使用殘局庫(kù)?

        Winboard下的引擎一般都要手工編輯引擎配置文件。編輯Crafty的引擎配置文件Crafty.rc,在里面加一行 tbpath=你的殘局庫(kù)硬盤實(shí)際路徑。其它引擎的設(shè)置大同小異,只不過(guò):1)不同引擎的配置文件名稱可能不同,比如yace是yace.ini,Ruffian是ruffian.ctg 等等,都是文本方式打開;2) 參數(shù)寫法不同,不過(guò)從字面上一般都可以看出是哪個(gè)。

        假如你是用Fritz等商業(yè)程序,則是在option項(xiàng)里的tablebase標(biāo)簽設(shè)定,以Deep Fritz 7為例如下:

        可注意到它有三欄,如果你的殘局庫(kù)都放在同一個(gè)目錄里,可以只在第一欄填或按選殘局庫(kù)路徑,否則可填更多路徑。殘局庫(kù)是可以分放在不同路徑的,目的是可臨時(shí)手工選擇使用哪些。那里還可順便設(shè)殘局庫(kù)緩存數(shù)目。

        其它軟件的殘局庫(kù)設(shè)定方法,一般在菜單中也不難找到。

        A14. 殘局庫(kù)文件的成對(duì)性

        譬如殘局庫(kù)文件kqkr,即王+后對(duì)王+車,但哪方持后哪方持車呢?顯然一個(gè)完整的殘局庫(kù)應(yīng)該是白方黑方的情況都要考慮,即要對(duì)稱考慮。

        早期的Nalimov式殘局庫(kù)需要兩個(gè)文件.nbw 和.nbb來(lái)考慮這種對(duì)稱性,上述例子就是分別有kqkr.nbw.emd和kqkr.nbb.emd兩個(gè)文件。所有殘局庫(kù)文件都是這樣成對(duì)出現(xiàn)的,下載時(shí)兩個(gè)都要下載才構(gòu)成一個(gè)完整的王+后對(duì)王+車殘局庫(kù)。最后的后綴.emd表示這是經(jīng)過(guò)壓縮的殘局庫(kù)文件,不壓縮的話體積大很多?,F(xiàn)在大多數(shù)引擎能直接使用壓縮的殘局庫(kù)。

        但自從六子殘局庫(kù)開始出現(xiàn)之后,出現(xiàn)新的格式,某些殘局庫(kù)只需要一個(gè)文件就足夠了。但同時(shí)也需要更新版本的引擎才支持只需一個(gè)文件的殘局庫(kù),而且絕對(duì)對(duì)稱的那些殘局,比如krkr等還是兩個(gè)文件都要。這個(gè)以后再說(shuō)。

        目前為穩(wěn)妥著想,最好還是成對(duì)文件都下載使用。

        順便說(shuō)說(shuō),免費(fèi)下載下來(lái)的Nalimov殘局文件是,比如kqkr.nbw.emd,而Chessbase發(fā)售的endgame turbo光盤所帶的則是,比如kqkrnbw.emd,中間少了個(gè)圓點(diǎn)。但使用起來(lái)這兩者看不出有什么區(qū)別,反正Fritz兩種都認(rèn)。它們可以互換。

        A15. 救命!殘局庫(kù)還是用不了怎么辦!

        原因可能有:

        1、殘局庫(kù)路徑指向錯(cuò)誤;

        2、文件內(nèi)部錯(cuò)誤(“腐朽了”)或文件名錯(cuò)誤地改了;

        3、沒(méi)有成對(duì)下載使用,.nbw 和.nbb要一起有的;

        4、殘局庫(kù)規(guī)格不符合當(dāng)前引擎要求。

        第一個(gè)原因最常見(jiàn),特別是改了路徑卻忘了改指向;文件“腐朽”有可能出現(xiàn)在下載過(guò)程中出錯(cuò),也可能硬盤有錯(cuò)或其它軟硬件操作錯(cuò)誤導(dǎo)致(斷電、非法操作等有可能導(dǎo)致);第三個(gè)原因其實(shí)也經(jīng)常出現(xiàn),下載時(shí)一定要看清,尤其五子殘局以上的由于太大,不少人都是選擇只下載一部分;第四原因要先了解引擎是否只支持別的殘局庫(kù),一般Nalimov式最通用,但chessmaster就不用它。

        如果某些局面里,引擎奇怪地不愿意走最明顯取勝的著法[一般是升變?yōu)楹骫,那就要懷疑是不是出現(xiàn)殘局庫(kù)不完整的問(wèn)題【不是前面說(shuō)的文件內(nèi)部錯(cuò)誤】,其它文章有說(shuō)。當(dāng)然前提是你要證實(shí)引擎是不是發(fā)現(xiàn)還有更明顯的勝法。

        A16. 有什么圖形界面工具可以更直觀察看殘局庫(kù)?

        1、有一個(gè)免費(fèi)的數(shù)據(jù)庫(kù)工具SCID http://scid.sourceforge.net/,它的作者說(shuō)有這個(gè)功能;

        2、Shredder6的“endgame oracle”;

        3、一個(gè)叫Wihelm的免費(fèi)工具。

      584733