(Note: This is not the project report documentation. This is just a brief description of our project, and the code we have written. The documentation is provided seperately.)
Graph Theory and Network Flow
This project is aimed at examining the working and applications of Network Flow Algorithms, in this case the Ford-Fulkerson Algorithm. The Ford-Fulkerson Algorithm is a greedy algorithm which computes the maximum flow in a network.
After having written the code for the algorithm, we have implemented a GUI to demonstrate how the traffic flow occurs. The initital state of the graph (nodes and edges), and the residual graphs at the end of each step, are shown in a graphical manner. The entire code is written in Java. The API used for the graph is the JGraphT API, specifically the JGraphX(mxGraph) implemetation. This particular API provides an interactive environment to the user for setting up the nodes of the graph. Work is being done to add more interactive features to the graph.
Moreover, after the inital GUI build is ready, we can start work on looking at useful applications of such data-flow algorithms.
The working Java code is in the following path : MiniProject/src/Residual.java
(The JGraphT package will be required to run this code.)
The link for downloading the JGraphT library : http://jgrapht.org/
The GitHub link for the JGraphT project : https://github.com/jgrapht/jgrapht