This project aims to propose a solution to offer a high resolution of the capacity coverage monitoring for critical dispatch services such as an emergency service.
By capacity coverage we mean the information relying on: How many teams can reach any point of a jurisdiction within a given timeframe?
Below is an example of how this information could be used in a dispatch application:
At some point this project will need one or more machine learning models to estimate accurately the routes. For that purpose a project has been initiated: https://github.com/ds4es/unit-response-oracle
sudo dnf install wget autoconf automake libtool curl make unzip git gcc-c++ boost boost-devel zlib-devel -y
Retrieve this repo
git clone https://github.com/ds4es/service-coverage-monitoring-backend
cd service-coverage-monitoring-backend
Pull all git submodules
git submodule update --init --recursive
Build and install submodules that needs to be
# protobuf
cd ./lib/protobuf && ./autogen.sh
./configure
make
sudo make install
cd ../../
# OSM-binary
make -C ./lib/OSM-binary/src
sudo make -C ./lib/OSM-binary/src install
# RoutingKit
make -C ./lib/RoutingKit
Declare needed shared libraries in the LD_LIBRARY_PATH
search path environment variable:
echo 'export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:./lib/RoutingKit/lib:/usr/local/lib64:/usr/local/lib' | tee -a ~/.bashrc
. ~/.bashrc
Each script in the test directory got on the top of it build and execute instructions.
NB: A minimum of 4GB RAM will be required to run those scripts
# Get some data
wget -P ./data/pbf https://download.geofabrik.de/europe/andorra-latest.osm.pbf
# build
g++ -Ilib/RoutingKit/include -Llib/RoutingKit/lib -std=c++11 ./test/pbf_to_contracted_graph.cpp -o ./bin/pbf_to_contracted_graph -lroutingkit -lprotobuf-lite -losmpbf -lz -lboost_serialization
# Run
./bin/graph_properties_preview ./data/pbf/andorra-latest.osm.pbf