我刚开始尝试使用极小/ negamax算法,我想出了听起来不错,我的想法,但没有人使用它,它可能是一个有缺陷的逻辑。

我们为什么不这样做:

创建三个与深度= X,找出哪些移动提出的,等待我们的对手。他做了他的举动后,我们可以只取我们已经评估了移动的子树,并继续生成它更深,而使用旧的节点。我们可以使用节点的已评估值,并与新的更深层次的节点的新值衡量他们。

Altough新的值可能不会像精确用通常的方法,我们可以得到从更深的和利润。

我为我和烂笔头和非结构化问题道歉,但我希望你明白我的想法。

有帮助吗?

解决方案

我想你错过这里的如何的极大极小的作品。极小枚举所有的可能性到指定深度d,然后分配一个得分在d节点(游戏状态),并搬回了树的基础上,无论我的最大化在每个深度返回MAX或MIN节点播放器或最小化播放器。

您做自上而下的提案将意味着你必须得分的节点在更浅的深度分配,导致较差的评价。

其他提示

的想法正在被使用,但是以不同的方式。相反,保持周围的搜索树,这将是内存望而却步,评价分数保持在换位表和重用。这可以做反复深入时节省时间,因为许多职位将已经从以前的搜索缓存分数。因此重用旧的搜索结果可以与一些中间搜索的帮助和加快移动订货,但叶节点仍然需要在任何终端深度搜索引擎使用进行评估。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top