A simple rerouting program that randomly generates a graph and uses Dijkstra's algorithm to find the shortest path between two nodes. The program then quickly reroutes in case of a node faliure. The graphs at each stage were visualized with Java Swing.
Initial random graph:
Graph with shortest path between start and end node:
Graph with rerouting beacuse of broken node (node faliure):