Shortest Cityblock Path with Multiple Nodes (Goals) with Still Obstacles

1 次查看(过去 30 天)
I have spent a great deal of time reading about A* search, Dijkstra’s, and Best-First-Search algorithms. I did an exhausutive search of all m-file exhanges, toolboxes, and whatnot, but I couldn't find a solution to my problem.
As the title suggests, I have a square map (you may call it a grid, or a matrix). I have a predefined starting point, and there are predefined still obstacles. There could be as few as one goal, or there could be multiple nodes.
What I need:
I need to find the shortest cityblock path (moving diagonally isn't allowed) that passes through all goals, and plots the path on the original grid with obstacles and starting point indicated.
To help you visualize the problem, see the image
In this image, the numbers one through eight represent the only possible nodes. The blue blocks are obstacles, and the path cannot pass through it. The gray squares are equivalent to the white ones. I used color just to make it easier to understand the map.
Let me give an example with the desired solution. Assume there are only 2 desired nodes we want to pass by: node 2 and node 8. The output map should look something like this:

采纳的回答

Image Analyst
Image Analyst 2015-10-31
  4 个评论
Pyro
Pyro 2015-11-1
Oh.. I didn't notice a fifth article. Only came across parts I and II. I will try to find it. Thanks m8

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Dijkstra algorithm 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by