Digraph Explorer

My dissertation project at the University of Edinburgh (a group project with three other students) explored the properties of directed graphs and how they relate to non-commutative algebras. I made this fun tool to help me and my groupmates to visualise graphs and quickly calculate the number of paths through a graph, without having to type out a load of ones and zeros all the time (for the first few days we were entering the adjacency matrix in MatLab to do the calculations). You can read more about the mathematics of these graphs, including how the patterns relate to quasipolynomials, in the dissertation.

I volunteered to turn our research project into a class given to first year students, with this tool used as a teaching resource. This earned myself and my groupmates a letter of commendation from the Principal of the University, which is nice. It's also just a fun tool to play with! The original project was done in BBC Basic and took about three days to write, but I just made the same thing in JavaScript and React in about 10 minutes 😅.

Digraph Explorer

Path Counts by Path Length

Try it out! Click the button to add nodes and the button to add edges. If you start creating loops you'll see an exponential explosion in the number of paths! You can also download the path counts as a CSV file, the original program just displayed the results in the console. It looked like this:

Digraph Explorer Console

In fact, if you have a Windows PC you can have a look at the original program which is just a .exe file [download].