首頁>Club>
還有殘局庫,為什麼計算能力那麼強的軟體,很多必勝的殘局它解不了?
9
回覆列表
  • 1 # 股市裡的那些事

    一、棋譜庫對於象棋軟體的作用,就像記憶對人的作用一樣,沒有棋譜庫,軟體做不了什麼技術和分析。

    依據我的理解,象棋軟體的分析過程就是在其棋譜庫中查詢,匹配出最最佳化的走法。如果沒有了棋譜庫,象棋軟體就無法對局面進行分析了,象棋軟體的計算分析不是在空想、空計算。所以說,判斷某款象棋軟體牛不牛,那麼看它的棋譜庫大不大就可以了。越牛的軟體,其棋譜庫就越大,“記住”的棋譜也就越多。人也一樣,棋力比較的一個方面,就看誰記住的棋譜多一些。

    二、一局象棋往往可以分為開局、中局和殘局三個階段,對應的棋譜庫也就常常分為開局庫、中局庫和殘局庫。如果一開始就讓軟體分析,它也是根據當前該局象棋走了幾個回合和剩餘多少棋子來判斷,到了哪個階段,應該從哪個庫開始查詢和分析的。

    象棋的開局往往是前10多個回合內的走法,此時側重於儘快開出大子,儘快搶佔有利位置,和現實世界中的行軍打仗類似。如果此時貪多吃子,最後往往會處於被動挨打的局面。中局則是雙方拼殺的真正開始,如果你在開局中就不利,那到了中局就基本是處處捱打步步被動了。殘局則是中局拼殺的結果,此時往往勝負已經分曉,雙方所剩的棋子都不多了,但贏方還沒有殺死對方的老將。如果殘局的功夫不到家,出現了漏著,也有可能會被反殺的。象棋的棋譜就是根據這些特徵來劃分的,象棋軟體再依據這些局面去查詢不同的棋譜庫。

    三、如果讓軟體在棋局一開始,它就跟隨分析的話,它也是先根據對方的走法在開局庫查找出合適的走法。如果沒有了開局庫,它就亂走一通,不管對方怎麼走,它都只管自己走它自己的。

    由此可見,開局庫對於象棋軟體是多麼的重要。象棋的開局體系非常龐大,如果沒有開局庫,軟體就無法判斷出哪種開局最優,針對對方的走法,應該採用什麼樣的開局來應對,那就容易出現亂招了,胡亂走出個開局來,那樣很快就可能被對方殺死了。這樣的軟體自然就沒有什麼價值,也就沒有存在的空間了。

    四、將棋譜庫分為開局庫、中局庫和殘局庫,有利於軟體減少計算步數、縮短分析時間

    如果沒有開局庫,只有全域性庫,那麼針對於對手的每一步,軟體都要分析到勝利前的最後一步,則軟體的計算分析量是非常巨大的,將會出現卡機問題或死迴圈問題,甚至計算機無法完成分析工作。

    五、最後,軟體能不能破解某個殘局,除了和它的棋譜庫有關以外,還與它的運算能力有關

    記住棋譜(棋譜庫),只是棋力的一個方面,棋力的另外一個方面是棋譜的理解和運用能力(對於象棋軟體來說,就是它查詢和對比棋譜的能力)。由此可見,如果軟體不能破解某個必勝的棋局,那麼有兩種可能,一是它的棋譜庫了沒有對應的棋譜,二是它的運算能力不行,它無法從眾多的棋譜中對比出(或找到)合適的棋譜走法。

  • 2 # 灑家要一桶草莓冰淇淋

    象棋棋子少,變化相對圍棋少,人類目前總結的開局接近最優開局,有開局庫可以最佳化計算過程,但是個人覺得如果頂級軟體設計專家們全力改進象棋軟體,比如讓阿爾法狗團隊設計,會有更優的演算法或更快的速度,象棋應該是能被窮盡計算的,只不過這是人腦遠遠達不到的,現在棋軟基本已經讓人望塵莫及了

  • 3 # 棋痴說棋

    第二,現在已經有了人工智慧技術,第二代阿法狗自我PK多少個迴圈之後就可以秒殺人類棋手。這裡自我PK的目的就是各種變例都走一遍,一次又一次的自我最佳化。最佳化好之後才是搜尋、排序 跟人類棋手PK。

    所以,一定要有開局庫是因為,沒有開局庫的話,電腦可能會走出我們看起來很低端的招數。這個開局庫就相當於軟體提前優化了自身。

  • 中秋節和大豐收的關聯?
  • 我的冬棗為啥產量上不去呢?