曼哈顿距离8拼图

时间:2014-05-02 23:25:11

标签: math prolog 8-puzzle

在这个例子http://ai.ia.agh.edu.pl/wiki/pl:prolog:pllib:sliding_puzzle中,有人可以解释我如何计算8个谜题中的曼哈顿距离吗?

如何计算:

  

A(0,0)。一个(1,0)。一个(2,1)。一个(3,2)。一个(4,3)。一个(5,4)。一个(6,3)。一个(7,2)。   一个(8,1)。 B(0,0)。 B(1,1)。 B(2,0)。 B(3,1)。 B(4,2)。 B(5,3)。 B(6,2)。   B(7,3)。 B(8,2)。 C(0,0)。 C(1,2)。 C(2,1)。 C(3,0)。 C(4,1)。 C(5,2)。   C(6,3)。 C(7,4)。 C(8,3)。 d(0,0)。 d(1,1)。 d(2,2)。 d(3,3)。 d(4,2)。   d(5,3)。 d(6,2)。 d(7,2)。 d(8,0)。 E(0,0)。 E(1,2)。 E(2,1)。 E(3,2)。   E(4,1)。 E(5,2)。 E(6,1)。 E(7,2)。 E(8,1)。 F(0,0)。 F(1,3)。 F(2,2)。   F(3,1)。 F(4,0)。 F(5,1)。 F(6,2)。 F(7,3)。 F(8,2)。克(0,0)。克(1,2)。   克(2,3)。克(3,4)。克(4,3)。克(5,2)。克(6,2)。克(7,0)。克(8,1)。 H(0,0)。   H(1,3)。 H(2,3)。 H(3,3)。 H(4,2)。 H(5,1)。 H(6,0)。 H(7,1)。 H(8,2)。
  I(0,0)。 I(1,4)。 I(2,3)。 I(3,2)。 I(4,1)。 I(5,0)。 I(6,1)。 I(7,2)。   I(8,3)。

在这段代码中?

1 个答案:

答案 0 :(得分:3)

a,b,c,...,i是固定单元名称。该表是手工编码的,以加快达到目标所需的步骤数 - 例如,取d(8,0).,这只有goal(1/2/3/8/0/4/7/6/5).才有意义,即当单元格d成立8时,需要0步...

相关问题