Find paths through graphs with vertices and edges using C++ implementations of some standard graph theory algorithms.
The very first theorem of graph theory was presented in 1735 by Leonhard Euler. Details
A GUI that reads text files specifying a graph and the path to be found
- Euler Path that traverses every edge exactly once Detailed Documentation
- Costs Cheapest or shortest paths between two vertices. Detailed Documentation
- Explore Path in square 2D grid with unkown link costs until reached. Detailed Documentation
- Tour Path that visits all vertices. Detailed Documentation
- Cycle Find cycles in a graph. Detailed Documentation
- Spans Find minimum cost edges that cover every vertex. Detailed Documentation
- Sales Path that visits every location specified on a 2D plane. Detailed Documentation
- Components Find maximal components. Detailed Documentation
- Cliques Find maximal cliques in graph. Detailed Documentation
- Flows Maximum flow through network between two vertices. Detailed Documentation
- All Paths Find all the paths between two nodes in a directed graph. Detailed Documentation
- Probabilities Find the probability that an end node can be reached when links are available with specified probability Detailed Documentation
- Allocate Find an allocation of agents to tasks that optimizes the number of tasks completed. Detailed Documentation
- Node Cover Find nodes that cover every link in graph. Detailed Documentation
- Hills Path that minimizes the changes in elevation. Detailed Documentation
- Cuts Find vertices that, any one removed, split graph into unconnected components. Detailed Documentation
A GUI that reads obstacle locations ( e.g. furniture in a room or crops in a field ) and calculates a route around them. Detailed Documentation
Generate random, solveable mazes and solve them. Detailed Documentation
Run unit tests
Run timing tests
Test data files specifying graphs of various sizes up to hundreds of thousands of edges. Detailed Documentation