它和你在同一片迷霧下對弈

Misty 永遠看不到規範真實棋盤。每一步,它只會得到輪到走棋的一方在迷霧國際象棋規則下可以合法觀察的內容:自己的棋子、這些棋子能看見的格子,以及視野內發生的吃子。其餘一切都被隱藏。它與你遵守相同規則,而且這一點可以驗證:Mistboard 是開源的,任何人都能稽核在引擎看到局面之前執行迷霧規則的伺服器程式碼。

它如何思考

Stockfish 這樣的經典國際象棋引擎有一個優勢:它能看到整個棋盤。它透過搜尋博弈樹來選擇著法,向前推演雙方可能走出的變化,再回傳最佳變化的價值(極小化極大演算法)。這種搜尋假設只有一個真實局面和一條真實的延續。

迷霧下不存在一個可供搜尋的單一局面。Misty 看不到對手的棋子,因此它必須推理的是一個信念集合:許多與已觀察資訊一致的合法棋盤。同一步棋可能在一個棋盤上獲勝,卻在另一個棋盤上白送國王。Misty 從集合中取樣,搜尋這些可能世界,並尋找在它們之中都站得住腳的著法。

這一類方法稱為完全資訊蒙地卡羅。公開發表的最強迷霧國際象棋引擎 Obscuro 也採用同類方法。難點不只是下好國際象棋,而是在時鐘不停走動時,讓隱藏棋盤模型始終忠於已知資訊。

難點在哪裡

有兩個難點。第一個就是可能棋盤的集合本身。迷霧中局只走幾個回合步後,「所有一致的棋盤」數量就會迅速爆炸。Misty 必須在即時對局的時間預算內控制這種不確定性。

第二個難點是在這個集合上選擇著法。為一步棋評分,意味著同時衡量它在數千個可能棋盤上的表現;最直觀的辦法是取結果平均值,卻會悄悄掩埋災難。如果一步棋只在少部分棋盤上丟王,平均分可能幾乎不變,但那些對局仍會直接輸掉。引擎的大部分工作,就是針對棋盤分布而非單一棋盤進行可靠推理。

目前版本有哪些變化

目前正式環境的引擎是 Misty 1.5。首次公開發布後的大部分工作都在加固,而不是塑造新個性:避免國王偶爾走進隱藏吃子範圍,避免大子在迷霧中白送,阻止過期的搜尋記憶洩漏到新的即時局面,在搜尋中看見迷霧下的王車易位,並用小型開局庫避開不穩定的早期變化。

這並不意味著 Misty 已被徹底解決或絕對安全。它意味著那些讓早期版本顯得可笑的低級迷霧特有錯誤已經少見得多,因此與它對弈考驗的是你的理解,而不是耐心。

它目前處於什麼水準

Misty 是我見過可以直接對弈的最強迷霧國際象棋引擎,但版本號不是等級分。真正有意義的標尺是人類實戰;在一場嚴肅的人機比賽給出依據之前,我不會為它標上數字。

下一步是什麼

Misty 本身會繼續專注於迷霧國際象棋。同一套去識別化引擎協定現在也支援針對特定變體的同系引擎,包括迷霧迷你象棋的 Misty DMX 和暗棋的 MistyBanqi,但它們是獨立引擎,各有自己的規則與評估問題。

來下一盤

Misty 已在 Mistboard 上線,每一盤嚴肅的人機對局都會讓我們更準確地估計它的水準。來下一盤,你也會成為這項基準的一部分。

對戰 Misty全部文章

致引擎開發者

如果你在開發迷霧國際象棋引擎,我希望讓它與 Misty 對弈。這個變體幾乎沒有公開的引擎正面對戰資料,而引擎之間的比賽是判斷各自水準最清楚的方式。聯絡我們,我們可以安排一場比賽。

聯絡我們

參考資料

Obscuro(Zhang 與 Sandholm,ICLR 2026)。與之相鄰的學術領域是偵察盲棋,其引擎譜系包括 StrangeFish(CMU,2018)、ReBeL(FAIR,2020)、Penumbra(Georgia Tech)和 Obscuro(CMU,2026)。