python idastar vs astar解决8 puzz

2024-09-29 23:19:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我开始更新我的人工智能知识,所以我实施了一些寻路算法来解决8字谜。在

我想知道为什么我的IDA*实现会有更长的路要走。它应该是最佳的,就像一个*。在

% python puzzle8.py -a idastar -d hard
IDASTAR - RESULT in 161.6099:
1 | 2 | 3
4 | 5 | 6
7 | 8 | N

cost: 0 total_cost: 121
...
nodes 28

% python puzzle8.py -a astar -d hard
Max nodes 665 loops 1085
ASTAR - RESULT in 0.3148:
1 | 2 | 3
4 | 5 | 6
7 | 8 | N

cost: 0 total_cost: 115
...
nodes 24

代码在主旨https://gist.github.com/1629405

更新:

代码现在指向的是一个正在工作的版本。在

^{pr2}$

但我仍然在想,为什么IDA*在pythonpython下花费的时间要比A*长得多。在

更新2:

代码已更改打印现在访问的节点。在

IDASTAR创建4184368ASTAR1748节点。在


Tags: 代码inpy算法节点result人工智能total

热门问题