Tour - JamesBremner/PathFinder GitHub Wiki
This option attempts to find a path that visits every node
Input
format
The first line specifies the calculation required. It must contain
format tour
Links
Column | Description |
---|---|
1 | l for link |
2 | vertex name |
3 | vertex name |
4 | cost |
Example
format tour
l 1 2 1
l 2 3 1
l 2 4 10
l 4 3 1
Algorithm
The algorithm is an approximation of the travelling salesman algorithm.
While it is not guaranteed to find the best possible path ( in terms of cost, visiting every vertex, not revisiting vertices ) it will usually quickly find a reasonable path.
The algorithm finds a spanning tree of the graph, then does a depth search through the tree. When it becomes 'trapped' at a leaf of the tree it will 'jump' to another unvisited leaf and continue the search from there.