我有问题要问你们。
我是人工智能的新手。我想用A *搜索来解决水壶问题(3个水壶 - 3升,5升,9升 - 试图得到7升)。
我需要一个启发式函数来实现解决方案,但我找不到一个好的启发式f(n),以便算法找到解决方案的最少步骤。
答案 0 :(得分:1)
因此,给定您的参数解决此问题的非启发式方法是:
0) Fill the 9 liter jug
1) Pour the 9 liter jug into the 5 liter jug, this leaves 4 liters in the 9 liter
2) Fill the 3 liter jug
3) Pour the 3 liter jug into the 9 liter jug and the problem is solved
因此,您将看到一个图表,其中的节点可以处于以下两种状态之一:Pour
或Fill
。然后,您为每个节点分配一个重量,表示您将从中获得的液体量1,2,3,etc
。不应该涉及任何分工,你只需要使用特定的操作“昂贵”。