Clear Filters
Clear Filters

3-Dimensional Shortest Path

7 views (last 30 days)
Helio
Helio on 3 Mar 2016
Commented: Walter Roberson on 5 Oct 2020
Hello, I have a question about the shortest path algorithm.
I want to find shortest path in 3 dimensional space(for example, latitude, longitude, and altitude) I think it's possible that using "graphshortestpath" function in matlab is fine.
But in this case it's hard to make a graph matrix and a edge matrix...
So if someone knows that an efficient way to make for shortest path algorithm for 3 dimensional space, please help me.
Thanks in advance!

Accepted Answer

Ahmet Cecen
Ahmet Cecen on 3 Mar 2016
You are in luck. I have just released a code that does the very exact thing you want to the FileExchange. If you really need to use the toolbox function graphshortestpath, contact me for a version that uses that. Check the earlier sections of the file to find the efficient way to convert volumetric data into a graph, which should be the fastest most efficient way in the west (well while using MATLAB).
  3 Comments
Timothy Turk
Timothy Turk on 5 Oct 2020
I get the following error when I try to run this. Can you help? I have installed Visual Studio for Windows.
Please Install a Compatible C++ Compiler (Like Visual Studio Compilers for Windows)Not enough input arguments.
Error in Tort3D (line 36)
[nx,ny,nz] = size(Alpha);
Walter Roberson
Walter Roberson on 5 Oct 2020
The most common cause for that error would be if you were using an old enough version of MATLAB that function names were still not case-sensitive (quite a while ago!) so that the Alpha was being treated as alpha and that alpha() function was being executed -- the alpha() function requires an input argument.
This in turn would require that Alpha (or alpha) had not been assigned to in the code at a point where the code expected it had been assigned to.

Sign in to comment.

More Answers (1)

Walter Roberson
Walter Roberson on 3 Mar 2016
The A* and Dijkstra algorithms do not care at all about how many dimensions the graph is embedded in: they only care about the connection information and the distances (or the two combined in one.)
  3 Comments
Helio
Helio on 3 Mar 2016
Thank you for your reply. Yes I'm with you, so I am trying to find the most efficiency way to transform. If you know a good way to transform considering sets of waypoints, could you please give me some idea?
Steven Lord
Steven Lord on 3 Mar 2016
The shortestpath method for graph and digraph objects that was introduced in release R2015b can work on a weighted graph object. There's an example on that function's documentation page.

Sign in to comment.

Categories

Find more on Graph and Network Algorithms in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!