我有一个基于瓷砖的地图,其中几个瓷砖是墙壁,其他瓷砖是可步行的。可步行的瓷砖构成了我想在路径规划中使用的图表。我的问题是他们是否有任何好的算法来找到访问图中每个节点的路径,最大限度地减少重复访问?
例如:
地图示例 http://img220.imageshack.us/img220/3488/mapq.png
如果底部的黄色瓷砖是起点,则访问所有重复次数最少的瓷砖的最佳路径是:
路径示例 http://img222.imageshack.us/img222/7773/mapd.png
这条路径有两次重复访问。更糟糕的路径是在第一个路口左转,然后在三个已经访问过的瓷砖上回溯。
我不关心结束节点,但开始节点很重要。
谢谢。
编辑:
我在我的问题中添加了图片,但在查看时看不到它们。他们来了:
http://img220.imageshack.us/img220/3488/mapq.png
http://img222.imageshack.us/img222/7773/mapd.png
此外,在图表中我需要这个,因为永远不会出现 min repeats = 0 的情况。也就是说,要踩到地图中的每个图块,玩家必须至少穿过自己的路径一次。