Skip to content

pedroszattoni/amazon-challenge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

An Inverse Optimization approach to the Amazon Challenge

This repository contains the source code to reproduce the Inverse Optimization (IO) approach to the Amazon Last Mile Routing Research Challenge from the paper Inverse Optimization for Routing Problems.

Usage

To test the code in this repository, you need to follow the steps:

  1. Download the Amazon Challenge datasets here.
  2. Run process_data.py. This script preprocesses the datasets and splits them per depot (needs to be run only once).
  3. Run main.py. This script can be executed in the terminal/command line or IDE.

The following Python packages are required:

  • numpy.
  • invopt: this package is used to solve the IO problem.
  • gurobipy or ortools: our IO approach to the Amazon Challenge requires a Traveling Salesperson Problem (TSP) solver. Two options are available: one using Gurobi, which solves the TSP to optimality (slow), and one using Google OR Tools, which solves the TSP approximately (fast).

Citing

If you use this repository, please cite the accompanying paper:

@article{zattoniscroccaro2023inverse,
  title={Inverse Optimization for Routing Problems},
  author={Zattoni Scroccaro, Pedro and van Beek, Piet and Mohajerin Esfahani, Peyman and Atasoy, Bilge},
  journal={https://arxiv.org/abs/2307.07357},
  year={2023}
}

About

An Inverse Optimization approach to the Amazon Challenge.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages