CLICK TO SEE PROJECT SPECIFICATIONS
Group Members
Things to Do
How to
Project Description
- "Ricky Tran" rickydtran@ufl.edu
- "Christopher Lai" chrislai95@ufl.edu
- "Wyndham Hudson" caelum@ufl.edu
Created Makefile for Environment for projectImplemented Graph ObjectCreated Graph Object functions (ie. add edges, num of edges, size, etc.)Created Spanning Tree to have all nodes connectedRandom Graph Data generation based off of P factor b/w 0.1 and 0.9Setup testcases for Graph ObjectCreate SW Implementation of Dijkstra's for adj matrixCreate SW Implementation of Dijkstra's for adj list and heap(pqueue)Port fibbanacci heap into wrapper to use with adj listBrainstorm HW implementation and OptimizationsCreate HW Implmenetation of Dijkstra'sDo performance metrics of SW ImplmentationDo performance metrics of HW Implemenation
- git clone https://github.com/rickydtran/dijkstra_fpga.git (only done initially, do git pull origin master to get latest changes after)
- Enter github credentials
- git checkout -b branchname
- Do shit
- git add -A
- git commit -m "blah"
- git push origin branchname
Dijkstra’s shortest path algorithm is one of the most important algorithms available for generating the exact optimal solutions to a large set of shortest path problems. Dijkstra’s is a greedy algorithm that provides a solution to several real world problems, such as traversing road, router, and telephone networks. Optimizing Dijkstra’s algorithm would improve performance in the world of navigation and communication.
The algorithm works by visiting neighboring vertices of a graph beginning at a starting point. It then repeatedly examines the closest not-yet-examined vertex, adding its vertices to the set of vertices already examined. It then expands outwards from the initial starting point until it reaches its end point. The algorithm revolves around edge relaxation, where the shortest known path between two vertices can be extended by adding the edge coordinates at the end.