gpt4 book ai didi

c++ - 寻找更好的回溯系统

转载 作者:塔克拉玛干 更新时间:2023-11-03 08:00:13 25 4
gpt4 key购买 nike

我将尝试用简单的术语来解释这一点,因为它可能比我发布代码要短。我制作了一个递归解决方案的一部分,该解决方案必须通过选择正确的“移动顺序”来完成游戏,如果它陷入僵局,那么它必须回溯。我当前的系统通过在任何无效的移动上设置一个标识符来工作,这样它就不能在回溯时再次使用,直到找到新的路径/移动顺序。

但是我遇到了一个问题;游戏可以达到这样的状态,即只剩下两步棋,而且两步都不会解决游戏。我目前的系统基本上会让这两个 Action 不断地相互交换,因为解决方案尝试下一个 Action ,发现它不起作用,然后尝试下一个。我相信我的问题是我重置了我的标识符,它告诉解决方案在每次移动时不要使用移动,但我不确定我将如何设置它。

如果您需要任何进一步的信息或有任何见解,请告诉我。谢谢!

最佳答案

我不确定您所描述的游戏的性质,更多信息可能有助于确定更好的方法供您遵循。我在主题中看到您的评论,您说在找到新的着法后该索引会重置。这听起来不太好。我相信您必须解决此问题,因为正如您刚刚从您的示例中看到的那样,在某些情况下它会失败,而我们不能拥有仅在有条件的情况下工作的算法。

您描述的问题听起来像一棵博弈树?正确的?如果是这样,为什么不将您对问题的描述更改为博弈树,并使用一种经过验证的博弈树搜索算法,例如 Alpha-Beta Pruning假设游戏是对抗性的?

关于c++ - 寻找更好的回溯系统,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9246322/

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