弈心

弈心

弈心是當今最強的五子棋引擎。與黑石、Goro、連珠終結者等其它著名五子棋程式相比,弈心可以給出更為細緻的分析,進而獲得更有競爭力的著法。弈心在全球有數以千計的用戶及支持者。

弈心的最新引擎版本為0.4.29,界面版本為1.4。

基本介紹

  • 中文名:弈心
  • 外文名:Yixin
  • 作者:孫鍇
  • 運行平台:Windows/Mac/Linux/BSD
  • 語言:漢語、英語
  • 功能:五子棋對弈分析
  • 主要成就:獲得Gomocup冠軍
  • 發布平台:Github
開發背景,軟體特性,獲得獎項,常見問題,

開發背景

當從小痴迷於中國象棋的孫鍇偶遇“楚漢棋緣”時,“做一個象棋程式”的想法自此誕生。一個只能進行四層計算,在今天看來非常簡單的小程式,卻開啟了孫鍇同計算機科學的美妙情緣。而最終,經過不斷的修改,這個象棋程式也達到了令人滿意的效果——戰勝了孫鍇及其父親。
然而,孫鍇的人機博弈故事並未就此終結。在與朋友的交流中,他又對五子棋程式產生了極大的興趣。起初,由於多個因素的影響,孫鍇在很大程度上低估了五子棋人機對弈的難度。但實際上,五子棋對弈本身所具有的專業規則下無終結,分支因子多,審局困難等特性,以及資料的缺乏,無疑給孫鍇出了一道難題。然而,一遇失敗就放棄從不是他的風格。經歷過冥思苦想卻毫無進展的抑鬱,經歷過偶獲靈感而得巨大飛躍的狂喜,最終,孫鍇的五子棋“弈心”成為了最好的五子棋人工智慧程式之一。

軟體特性

弈心採用了棋軟廣泛採用的引擎-界面分離的設計,引擎與界面之間採用管道通信。
  1. 弈心的界面程式採用了清晰簡潔的設計,上手容易,簡單易用。
  2. 弈心的界面程式是開源程式,基於Simplified BSD協定。
  3. 弈心的界面程式由GTK+搭建,具有良好的跨平台能力,支持Windows/Mac/Linux/BSD。
  4. 弈心的界面程式同時支持與弈心協定兼容的引擎,如可以在無禁規則下載入Tito引擎。
  5. 弈心引擎採用了許多原創技術,控盤能力優秀,棋風穩健。棋力超越Blackstone(黑石)、Renjusolver(連珠終結者)等老牌五子棋軟體。引擎部分獲Gomocup2012,Gomocup2013,Gomocup2014冠軍。
  6. 對於非商業用途,弈心引擎永久免費。

獲得獎項

1. 2014年4月14日 Gomocup 2014冠軍
2. 2013年4月6日 Gomocup 2013冠軍
3. 2012年4月18日 Gomocup 2012冠軍

常見問題

  • :如何將界面語言設定為中文?
    :點擊選單View->Language->簡體中文。
  • :如何讓軟體跳過某個(或某些)著法的計算?
    :使用block命令。例如,如果讓軟體忽略i7點的計算,則輸入block i7。
  • :如何獲得第2,第3,…,第n優著法?
    :藉助block命令。在已獲得最優著法的基礎上,將最優著法使用block命令讓軟體跳過,令軟體重新計算,則可獲得第2優著法。類似地,可以獲得第3,…,第n優著法。
  • :如何獲得正在計算中的最優路線以及評分?
    :輸入bestline命令。
  • :為什麼設定了計算機執黑(白),並輪到計算機走棋了,但計算機既不計算,也不走棋?
    :請單擊棋盤任意位置。
  • :棋盤上不同顏色的點的代表的意義是什麼?

    (1) 白色:必敗點;
    (2) 紅色:最優點;
    (3) 橙色:正在計算的點;
    (4) 黃色:已經計算的點;
    (5) 淡藍色:被禁止的點。
  • :推薦的棋風設定是什麼?
    :建議棋風選擇0(快棋)或1(慢棋)。
  • :不同段位的區別是什麼?
    :不同段位的差異僅在於計算時間上。計算時間的排序為:不限時≥名人≥九段≥六段≥四段≥三段≥二段≥一段。計算時間越多棋力相應越強。
  • :在不同配置的計算機上,棋力是否有區別?
    :除自定義等級外,段位對應的棋力與計算機配置無關。對於同一個段位,在更優配置的計算機上所需的計算時間更少。
  • :哈希表是什麼?
    :哈希表是用於提高引擎計算效率的表形結構,可以避免引擎計算中的重複勞動。
  • :哈希表大小如何設定?
    :對於要分析的局面,分析的時間越長,越大的哈希表就越有必要。然而,哈希表並非越大越好,對於局面的快速分析,相比小的哈希表,大的哈希表的會降低分析速度。對於一般套用,哈希表大小建議選用默認值。
  • :如何設定執行緒數?
    :藉助多執行緒,弈心可以充分利用多處理器或多核心處理器的計算能力。執行緒數的設定以處理器支持的執行緒數上限為宜。
  • :什麼是分裂深度?
    :當採用多執行緒計算時,分裂深度定義了將計算任務分配給多個執行緒的最小深度。這個參數會影響引擎的分析速率,可以根據具體的計算機硬體進行調整以提升引擎的表現。
  • :軟體的中文名是“弈心”還是“奕心”?
    :弈心。截至2014年7月,中文百科詞條有誤。
  • :引擎名前綴“Deep”是什麼意思?
    :由西洋棋軟體流傳下的命名傳統之一,“Deep”用於指示軟體能夠藉助多處理器或多核心處理器,在單位時間內獲得對局面更深入的分析結果。
  • :弈心是免費的嗎?
    :對於非商業用途,弈心免費。
  • :弈心開源嗎?
    :弈心引擎尚不開源;弈心界面程式Yixin-Board開源(Simplified BSD License)。
  • :安全軟體報告弈心是病毒?
    :在確認下載來源可靠,且電腦在安裝弈心前未受病毒感染的前提下,請相信是安全軟體誤報。

相關詞條

熱門詞條

聯絡我們