Artificial intelligence 三水壶的一个启发式函数

Artificial intelligence 三水壶的一个启发式函数,artificial-intelligence,graph-algorithm,heuristics,Artificial Intelligence,Graph Algorithm,Heuristics,我有个问题要问你们 我是人工智能的新手。我想用*搜索来解决水壶问题(3个水壶-3升,5升,9升-试图得到7升) 我需要一个启发式函数来实现解决方案,但我找不到一个好的启发式f(n),这样算法就可以找到解决方案的最少步骤。因此,根据您的参数,解决此问题的非启发式方法是: 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) Fi

我有个问题要问你们

我是人工智能的新手。我想用*搜索来解决水壶问题(3个水壶-3升,5升,9升-试图得到7升)


我需要一个启发式函数来实现解决方案,但我找不到一个好的启发式f(n),这样算法就可以找到解决方案的最少步骤。

因此,根据您的参数,解决此问题的非启发式方法是:

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等。不应涉及分割,只需使使用特定操作的成本变得“昂贵”。

因此,根据您的参数,解决此问题的非启发式方法是:

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等。应该没有除法,你只需要让使用特定操作变得“昂贵”即可。

我在大学里也学过人工智能课程,到目前为止你试过什么?我试过一个函数,定义为h(n)=(目标状态的jugs之和(n)-初始状态之和(n))/2。。我没能成功。我的意思是把这个标记为完全重复:更大的问题是,你知道如何在不使用启发式的情况下解决这个问题吗?是的,我同时使用DFS和BFS解决了这个问题。我还在大学里修过一门人工智能课程,到目前为止你尝试了什么?我尝试过一个定义为h(n)=(目标状态的jugs(n)之和)的函数-初始状态之和(n))/2。。我没能成功。我的意思是将此标记为完全重复的结束:更大的问题是,你知道如何在不使用启发式的情况下解决此问题吗?是的,我同时使用DFS和BFS解决了此问题。所以你说使用这样的函数?f(n)=一种状态下的液体总量(Ex:for(2,3,5=2+3+5=10)+操作量(Ex:pour=1,Fill=1,Empty=6)@Un_NatMenDim这将是沿着这些线的东西是的,其中倾倒、填充和清空操作被分配一个值或权重。这些参数的最佳值是什么,目前我无法理解,尤其是在动态输入的情况下。好的,谢谢你的回答,朋友。那么你说使用这样的函数?f(n)=一种状态下的液体总量(Ex:for(2,3,5=2+3+5=10)+操作量(Ex:pour=1,Fill=1,Empty=6)@Un_NatMenDim是的,浇注、填充和清空操作都被指定了一个值或权重。这些参数的最佳值目前我无法理解,尤其是动态输入。好的,谢谢你的回答,朋友。。