它和你在同一片迷雾下对弈
Misty 永远看不到规范真实棋盘。每一步,它只会得到轮到走棋的一方在迷雾国际象棋规则下可以合法观察的内容:自己的棋子、这些棋子能看见的格子,以及视野内发生的吃子。其余一切都被隐藏。它与你遵守相同规则,而且这一点可以验证:Mistboard 是开源的,任何人都能审计在引擎看到局面之前执行迷雾规则的服务器代码。
它如何思考
Stockfish 这样的经典国际象棋引擎有一个优势:它能看到整个棋盘。它通过搜索博弈树来选择着法,向前推演双方可能走出的变化,再回传最佳变化的价值(极小化极大算法)。这种搜索假设只有一个真实局面和一条真实的延续。
迷雾下不存在一个可供搜索的单一局面。Misty 看不到对手的棋子,因此它必须推理的是一个信念集合:许多与已观察信息一致的合法棋盘。同一步棋可能在一个棋盘上获胜,却在另一个棋盘上白送国王。Misty 从集合中采样,搜索这些可能世界,并寻找在它们之中都站得住脚的着法。
这一类方法称为完全信息蒙特卡洛。公开发表的最强迷雾国际象棋引擎 Obscuro 也采用同类方法。难点不只是下好国际象棋,而是在时钟不停走动时,让隐藏棋盘模型始终忠于已知信息。
难点在哪里
有两个难点。第一个就是可能棋盘的集合本身。迷雾中局只走几个回合步后,「所有一致的棋盘」数量就会迅速爆炸。Misty 必须在实时对局的时间预算内控制这种不确定性。
第二个难点是在这个集合上选择着法。为一步棋评分,意味着同时衡量它在数千个可能棋盘上的表现;最直观的办法是取结果平均值,却会悄悄掩埋灾难。如果一步棋只在少部分棋盘上丢王,平均分可能几乎不变,但那些对局仍会直接输掉。引擎的大部分工作,就是针对棋盘分布而非单一棋盘进行可靠推理。
当前版本有哪些变化
当前生产引擎是 Misty 1.5。首次公开发布后的大部分工作都在加固,而不是塑造新个性:避免国王偶尔走进隐藏吃子范围,避免大子在迷雾中白送,阻止过期的搜索记忆泄漏到新的实时局面,在搜索中看见迷雾下的王车易位,并用小型开局库避开不稳定的早期变化。
这并不意味着 Misty 已被彻底解决或绝对安全。它意味着那些让早期版本显得可笑的低级迷雾特有错误已经少见得多,因此与它对弈考验的是你的理解,而不是耐心。
它目前处于什么水平
Misty 是我见过可以直接对弈的最强迷雾国际象棋引擎,但版本号不是等级分。真正有意义的标尺是人类实战;在一场严肃的人机比赛给出依据之前,我不会为它标上数字。
下一步是什么
Misty 本身会继续专注于迷雾国际象棋。同一套脱敏引擎协议现在也支持针对特定变体的同系引擎,包括迷雾迷你象棋的 Misty DMX 和暗棋的 MistyBanqi,但它们是独立引擎,各有自己的规则与评估问题。
来下一盘
Misty 已在 Mistboard 上线,每一盘严肃的人机对局都会让我们更准确地估计它的水平。来下一盘,你也会成为这项基准的一部分。
致引擎开发者
如果你在开发迷雾国际象棋引擎,我希望让它与 Misty 对弈。这个变体几乎没有公开的引擎正面对战数据,而引擎之间的比赛是判断各自水平最清晰的方式。联系我们,我们可以安排一场比赛。
参考资料
Obscuro(Zhang 与 Sandholm,ICLR 2026)。与之相邻的学术领域是侦察盲棋,其引擎谱系包括 StrangeFish(CMU,2018)、ReBeL(FAIR,2020)、Penumbra(Georgia Tech)和 Obscuro(CMU,2026)。