Web application for solving the Vehicle Routing Problem using OptaPlanner.
First, clone this repository and cd
into it.
Frontend and backend are built and run independently. Open two terminal windows.
-
Install
npm
. If you’re on Fedora, you can do this by running:sudo dnf install npm
-
Install dependencies.
cd optaweb-tsp-ui npm install
-
Run frontend.
npm start
Tip
|
Prevent
npm start from launching your default browserIf you don’t want You can use echo BROWSER=none >> .env.local |
JDK 8 is the only system prerequisite. To install OpenJDK 8 on Fedora, run:
sudo dnf install java-1.8.0-openjdk-devel
-
Download OpenStreetMap data for Belgium from Geofabrik.
-
Download the OSM file belgium-latest.osm.pbf.
-
Save it to
optaweb-vehicle-routing/optaweb-vehicle-routing-backend/local/openstreetmap/belgium-latest.osm.pbf
.
-
Run backend.
cd optaweb-vehicle-routing-backend ./mvnw spring-boot:run
See Backend Development Guide to learn how to run backend during development.
Tip
|
Use a different OSM file
If you want to try a different region than Belgium, download an OSM file from Geofabrik and use a system property when starting the backend to change the data file: ./mvnw spring-boot:run -Dosmfile=massachusetts-latest.osm.pbf |
Caution
|
Using large OSM files
For best user experience it is recommended to use smaller regions like individual European or US states. Using OSM files larger than 1 GB will require significant RAM size and take a lot of time (up to several hours) for the initial processing. |