目的是在通过所有检查点S
(按任意顺序)时,从源G
引导僵尸程序到目标@
。标记为#
的单元格无法访问。机器人可以在标有.
########
#@....G#
##.##@##
#..@..S#
#@.....#
########
解决问题的一种方法是从当前状态中选择一个检查点作为目标,然后引导机器人到达它。然后选择下一个检查点作为目标和当前检查点作为源并引导机器人达到其新目标。最后从最后一个检查站引导它进入状态G
。
但这种技术在很大程度上依赖于遍历检查站的顺序。
我想知道是否可以找到一个好的启发式来决定下一个检查点吗?
答案 0 :(得分:1)
我认为这个问题可以减少给旅行推销员。设S,G和@为图的节点。然后计算每对节点之间的最小距离,考虑任何墙壁。然后你有一个图表,点之间的加权距离。现在这是TSP,你知道第一个和最后一个节点的差别很小。