This project is designed to compute the importance of individual segments and higher-order interactions between different segments in bike path networks.
The setup is written for Linux/macOS systems. For Windows systems some commands might be slightly different, but the general setup structure stays the same. You need Python compatible to version 3.12 and Julia compatible to version 1.10 installed.
- You need the BikePathNet package in the same parent folder as this package.
- Install julia packages via the julia REPL (in Julia REPL press ])
pkg> add DrWatson pkg> activate path/to/this/project pkg> instantiate
- Create a Python virtual environment (named venv from here on) and add all packages from the
requirements.txt.python3 -m venv /path/for/venv source /path/to/venv/activate pip install -r requirements.txt
All commands assume you are in the project folder. 0. If you want to use any other data than present in this project (or see how the data used here was created), please generate it with the BikePathNet package and then copy it to the input folder in the data directory.
- Run the simulations for the small example network (example), Hamburg (hh) and Manhattan (ny)
If you want to make use of parallelizing parts of the calculations, specify the number of threads (e.g. 8) available to julia.
julia scripts/example.jl
julia --threads 8 scripts/example.jl
- Figures and other evaluation can now be generated in the Jupyter notebook
example.ipynbin thenotebooksfolder. The Jupyter server should be started from inside the python vev. The plots will be saved in theplotsfolder.
You may notice that the julia script start with the commands:
using DrWatson
@quickactivate "BikePathSynergies"which auto-activate the project and enable local path handling from DrWatson.
- Python 3.12.3
- Julia 1.12.1
- Python packages and dependencies: See requirements.txt
- Julia packages and dependencies: See Mainfest.toml
The demand data is extracted from Kontur population data sets for Germany and the USA, distributed under Creative Commons Attribution International (CC BY) license. The graphs are heavily based on OpenStreetMap (OSM) data distributed under Open Data Commons Open Database License (ODbL).