创建非完美游戏算法

我知道像极小化极大算法这样的算法可以用来玩完美游戏(在这种情况下,我在寻找一个类似于井字游戏的游戏)。

然而,我想知道如何创建一个非完美的算法,或者不同“技能等级”(简单、中等、困难等)的AI,让人类玩家实际上有机会击败它。


回答:

在不同的深度截断搜索以限制计算机的技能。改变评估函数,使计算机偏好不同的策略。

非专业人类玩家使用次优策略和有限的战术。这些大致对应于对游戏状态的评估不佳和有限的前瞻能力。

关于随机性,需要一点点随机性,这样计算机就不会总是犯同样的错误,有时可能会运气好或坏于平常。为此,不要总是选择最佳路径,而是在它们的得分加权下进行选择。你可以通过让AI根据游戏结果来改进其评估函数,即更新其权重,使AI变得更加有趣。这样,它可以通过玩游戏在有限的搜索深度下学习更好的评估函数,就像人类可能会做的那样。

Related Posts

Keras Dense层输入未被展平

这是我的测试代码: from keras import…

无法将分类变量输入随机森林

我有10个分类变量和3个数值变量。我在分割后直接将它们…

如何在Keras中对每个输出应用Sigmoid函数?

这是我代码的一部分。 model = Sequenti…

如何选择类概率的最佳阈值?

我的神经网络输出是一个用于多标签分类的预测类概率表: …

在Keras中使用深度学习得到不同的结果

我按照一个教程使用Keras中的深度神经网络进行文本分…

‘MatMul’操作的输入’b’类型为float32,与参数’a’的类型float64不匹配

我写了一个简单的TensorFlow代码,但不断遇到T…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注