我仍在试图弄清楚我的启发式选择如何以及为何会影响我实现的搜索时间。
我的地图如下(不是确切的大小):
###########
# #
# # # # # #
# #
# # # # # #
# #
我选择了我的启发式
option 1: h = abs(n.x - target.x) + abs(n.y - target.y)
option 2: h = 2*(abs(n.x- target.x) + abs(n.y - target.y))
使用option 1
,算法运行相对较好,直到我必须从上到下移动,在这种情况下,需要很长时间才能提出路径。
option 2
,option 1
时间提高了约90%。
我试着读到有关高估/低估的消息,我无法提出明确的解释。
可能是什么原因?我的选择合理吗?