使用A*算法解决滑动拼图和N皇后问题?

我已经成功地在NxM网格上实现了A*路径查找算法。

我了解A*算法的基础知识,我想知道如何将相同的算法应用于上述问题。

能否有人指导我,在这些问题中启发式函数h和G分数的相关性是什么,以及如何进行操作。

例如,在网格搜索中,我们将邻居节点添加到开放列表中,然后搜索最低的F分数,并将其添加到关闭列表中。

要解决N皇后和滑动拼图问题,如何遵循相同的算法呢?

谢谢你 🙂


回答:

你需要正确定义你的转换函数、成本函数和启发式函数。既然你已经了解A*算法的基础知识,我不会详细解释每个例子,而是建议你查看N-Queens问题N-Puzzle问题Hipster库中的实现。如果你不是用Java编写代码也不用担心,代码足够清晰,可以让你了解如何操作。

希望我的回答对你有帮助。

Adrián

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

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