To reproduce our experiments, you will need at least Python 3.7 and a few packages installed. You can check your python version with
$ python --version
and install the necessary packages with
$ python -m pip install numpy scipy pandas tqdm matplotlib networkx
You will also need a local copy of our code either cloned from GitHub or downloaded from a Zenodo archive. To install our package from your local copy of the code, change to the code directory and use pip.
$ cd uclasm
$ python -m pip install .
Running the experiments will take a while depending on your hardware.
$ cd experiments
$ python run_erdos_renyi.py
$ python plot_erdos_renyi.py
Change the variables in run_erdos_renyi.py to run with different settings i.e. number of layers and whether isomorphism counting is being done.
plot_erdos_renyi.py will generate a figure called n_iter_vs_n_world_nodes_3_layers_500_trials_iso_count.pdf
which corresponds to figure 7 in the paper. Other figures related to time and number of isomorphisms will also be generated.
Running the experiments will take a while depending on your hardware.
$ cd experiments
$ python run_sudoku.py
$ python plot_sudoku_times.py
plot_sudoku_times.py will generate a figure called test_sudoku_scatter_all_log.pdf
which corresponds to figure 6 in the paper. Other figures for each individual dataset will also be generated.