pharo-ai / graph-algorithms

A graph algorithms library implemented in Pharo
MIT License
22 stars 12 forks source link

Benchmark the algorithms #18

Open jordanmontt opened 1 year ago

jordanmontt commented 1 year ago

It is important to benchmark the algorithms

Also we need to benchmark our algorithms against industrial implementation to see how we are positioned against those

nikhil061102 commented 1 year ago

Hello Sir, Firstly, I believe we can look into theoretically graph theory to ensure that we are implementing the algorithms with best possible computational complexity.
Secondly, we can check what other organizations are doing and how differently (or more efficiently) are they implementing the same algorithms. For example - I found from my research that NetworkX is a python library which provides support for graph related algorithms. They have implemented almost all the algorithms which we can look into. Thirdly, I believe like you said we can focus more into testing the algorithms rigorously. Fourthly, I think that we should not shy away from unconventional ways of implementing the algorithm. For example - if we are using LinkedList in some certain algorithm, then we can also try using arrays or any other collections. Then we can test the speed of the different implementations of the same algorithm.
Thank you :)

jordanmontt commented 1 year ago

Hello @nikhil061102 Yes indeed! Feel free to open issues or do Pull Request. You can add this points to your proposal.