Skip to content

Personalizable Route Planning (master-thesis code)

License

Notifications You must be signed in to change notification settings

Stunkymonkey/prp

Repository files navigation

Personalizable Route Planning (PRP)

master-thesis(pdf)

based on related work using OSM data. download osm.pbf files from geofabrik

screenshot

Compile

git submodule update --init --recursive
cargo build --release

Extract OSM-data

cargo run --bin pbfextractor --release -- [path/to/pbf-file] [folder/with/srtm/files] [path/to/output/fmi-file(output)]

extracting largest connected set of node: (needed for Merge- & Gonzalez-partitioning)

cargo run --bin fmi_largest_set --release -- -i [path/to/fmi-file] -o [path/to/fmi-file(output)]

two methods possible:

  • Merge
cargo run --bin mlp_merge --release -- -f [path/to/fmi-file] -o [path/to/mlp-file(output)] [-p/-s defining save points when merging e.g. -s 500 5000]
  • Gonzalez
cargo run --bin mlp_gonzalez --release -- -f [path/to/fmi-file]  -o [path/to/mlp-file(output)] -p [partitions from top to bottom e.g. 50 100]
  • K-Means
cargo run --bin mlp_kmeans --release -- -f [path/to/fmi-file]  -o [path/to/mlp-file(output)] -p [partitions from top to bottom e.g. 50 100]

Pre-computation

cargo run --bin prp_pre --release -- -f [path/to/fmi-file] -m [path/to/mlp-file] -o [path/to/bin-file(output)]

this may take some time

Run

  • web-server via:
cargo run --bin prp_web --release -- -f [path/to/bin-file] -q prp
  • evaluation-tool via: (evaluation file can be generated with analysis/generate-eval-file.py)
cargo run --bin prp_eval --release -- -f [path/to/bin-file] -e [path/to/eval_file] -t check -q prp