gpt4 book ai didi

bit-manipulation - 从移动位板生成单个移动

转载 作者:行者123 更新时间:2023-12-04 02:19:50 26 4
gpt4 key购买 nike

在我的国际象棋引擎中,它使用位板来表示棋盘的状态,一次生成一大块伪合法移动,结果是位板。例如:

棋子:

Pawns' state Pawns' state - bitboard

稍后一点位板魔法:

Pawns' positions Pawns' positions - bitboard

最后的位板只是一大块可能的 Action 。引擎通常如何获取此位板并从中生成单独的移动?我是否必须遍历每一位以检查它是否已设置?不过,迭代位板似乎违背了使用位板的真正目的,这就是我有点怀疑的原因。

有没有更好的办法?

最佳答案

然后,通常您应用 minimax 的一些变体算法来评估移动的好坏,因此您可以选择(您估计的)最佳移动。例如,一个简单的变体是 alpha-beta .

这些变体主要涉及尝试将搜索引导至“可能有用的着法”并远离搜索空间的无用区域,因为搜索树非常广泛,您深入探索它的能力对于一盘好棋极为重要AI - 浅层探索使 AI 很容易“陷入困境”,因为它会做出短期看起来不错的选择,即使后来效果很差。

所以是的,您将遍历位板。这并没有真正违背他们的目的 - 你仍然(可能)计算出比你没有使用位板快得多的移动。对于最简单的 AI,您可以使用标准的位板技术采取“第一步”,但像这样玩的 AI 将低于新手水平,根本不考虑输赢。

关于bit-manipulation - 从移动位板生成单个移动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31359896/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com