Skip to content

Repository files navigation

Route Optimization Platform

Vehicle Routing Problem with Time Windows and Capacity Constraints (CVRPTW)

Live Demo & Access

You can access the deployed version of the platform directly via Swagger UI: http://139.100.207.201:5000/docs/

Description

A logistics optimization system that solves the CVRPTW problem - efficient routing of vehicles considering time windows and load capacity.

Swagger UI Interface

Documentation

Contributing & Agents

Team

Name Email
Maksim Potushinskii m.potushinskii@innopolis.university
Dania Galieva da.galieva@innopolis.university
Anastasiia Glinskaia a.glinskaia@innopolis.university
Timur Iusupov t.iusupov@innopolis.university
Marsel Tukhvatullin m.tukhvatullin@innopolis.university

Setup Steps

  1. Clone the repository:
git clone https://github.com/iu-students/route-optimization-platform.git
cd route-optimization-platform
  1. Create .env file:

API_KEY - The master authentication key required for all API requests.

cp .env.example .env
  1. Start with Docker Compose: This command builds the Docker images (if not already built) and starts all required services in detached mode. The platform will run in the background.
docker compose up --build -d
  1. Verify :
curl http://localhost:5003/health

Swagger UI

After starting the application, open http://localhost:5000/docs in your browser to access Swagger UI.

API Version

Use the dropdown at the top of Swagger UI to switch between MVP versions. Current active version: v3

Available Endpoints

  • POST /solve - Start route optimization calculation.
  • GET /solution - Get the computed optimal route after /solve completes.
  • GET /metrics - Get cost breakdown statistics for the last completed solution.
  • GET /history - List past calculations with summary metadata.
  • GET /history/{id} - Get full calculation details including input/output files.
  • POST /validate - Validate input JSON without solving.
  • GET /health - Check server status.

Authentication

All endpoints except /health require API key authentication. Include in request headers: X-API-Key: your-api-key

The API key is set in the .env file.

Known Limitations

  • The optimization algorithms are based on heuristics and metaheuristics (including CP-SAT). As a result, the solver may produce different solutions for identical inputs across different runs. This is expected behavior for heuristic approaches, which balance solution quality against computational speed. For detailed troubleshooting guidance and complete support documentation, please refer to our Customer Handover Documentation.

Weekly reports

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

Route optimization platform

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages