Miscellaneous¶
Benchmark comparison¶
In the companion JOSS paper AMaze is compared against a number of other benchmarks from the Python ecosystem. The scripts (Python and Shell) to reproduce a under docs/latex/benchmarking:
generate_all.sh iterates over every declared package and proceeds, if necessary, to installing it before delegating to the dedicated worker.
The full list of workers is:
1downloads=$tmp/downloads 2mkdir -p $downloads 3log=$tmp/log 4 5line(){ 6 n=$(tput cols) 7 printf "=%.0s" $(seq $n) 8 printf "\n" 9} 10export -f line
Individual workers will perform 1000 timesteps of every available environment (averaged over 10 replicates) in the inspected library and report through a pandas dataframe
format.py performs the formatting of the raw data thus produced. Note that the one used for the aforementioned article is available under docs/latex/benchmarking/table.csv
Warning
Installing all of these libraries plus their dependencies will take quite some time and disk space. It is highly recommended to do so in a virtual environment on a sufficiently robust machine.
Complexity space¶
In the README, a figure presenting the complexity of 500’000 mazes is used to showcase the diversity of the underlying space. Such a figure can be generated by the scripts under docs/latex/complexity/:
generate.py will create 100’000 mazes of Trivial, Simple, Lures, Traps and Complex classes, each. Results are stored in the sibling file data.csv
format.py will generate most of the visuals (kde, image overlay)
complexity.tex needs to be compiled for the inset images (it is recommended to do so from the main compiler at docs/latex/compile.sh