Skip to content

This repository contains the Vehicle Routing Problem with Time Windows and Delivery Robots (VRPTWDR), inspired by the work of Chen et al. (2021). The project uses Java to implement an Adaptive Large Neighborhood Search (ALNS) heuristic for solving the problem and compares the performance with solutions obtained via the Gurobi optimizer.

License

Notifications You must be signed in to change notification settings

0ab2bcf6/vrptwdr

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

VRPTWDR Solver Framework

License Java Version

This repository provides a framework for solving the Vehicle Routing Problem with Time Windows and Delivery Robots (VRPTWDR). The codebase includes three solvers:

  1. Greedy Solver – A simple heuristic-based approach.
  2. Adaptive Large Neighborhood Search with Simulated Annealing (ALNS-SA) Solver – A metaheuristic optimization method.
  3. Gurobi Solver – A solver using the Gurobi optimizer for improved solution quality.

Status

This repository is not actively developed but provides a functional framework for working with VRPTWDR. Contributions and modifications are welcome.

Requirements

  • Java 11+ is required to run the framework.
  • Gurobi must be installed for the Gurobi Solver to function properly.

TODOs

  • Test the newly implemented Solomon and Homberger parsers. src/parser/SolomonHombergerXMLParser.java is very inefficient.
  • Ensure the correct calculation of VRPTW cost for Solomon and Homberger benchmark instances.

Usage

The framework is designed for researchers and practitioners looking to experiment with VRPTWDR solutions. Users can integrate new solvers and modify the existing solvers as needed.

  • Instances and Solvers should be selected in src/Main.java.
  • Solvers should be represented as a class in algorithm/MyCustomerSolver.java
  • Custom parser should implement src/parser/InterfaceVRPTWDRDataset.java
  • Custom operators for the ALNS metaheuristic solver should extend/implement the respective abstract class and interface
    • src/insert/AbstractALNSInsert.java and src/insert/InterfaceALNSInsert.java for inserts
    • src/removal/AbstractALNSRemoval.java and src/removal/InterfaceALNSRemoval.java for removal

License

This project is licensed under the BSD 2-Clause License. See the LICENSE file for details.

About

This repository contains the Vehicle Routing Problem with Time Windows and Delivery Robots (VRPTWDR), inspired by the work of Chen et al. (2021). The project uses Java to implement an Adaptive Large Neighborhood Search (ALNS) heuristic for solving the problem and compares the performance with solutions obtained via the Gurobi optimizer.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages