ds4dm / ecole

Extensible Combinatorial Optimization Learning Environments
https://www.ecole.ai
BSD 3-Clause "New" or "Revised" License
321 stars 68 forks source link

Adding Vehicle Routing and Bin Packing Problems as well as TreeSizeEstimate as a reward function. #352

Open ndrwnaguib opened 1 year ago

ndrwnaguib commented 1 year ago

Pull request checklist

Proposed implementation

I believe this is more of an extension to the currently supported instances, which are the vehicle routing and the bin packing problems (https://github.com/ds4dm/ecole/discussions/287). The latter can either be used independently or to estimate the number of minimum vehicles in the former.

I also added a new reward function, the tree size estimate, as reported by SCIP using https://github.com/scipopt/scip/blob/7786715f8b949d41febdad414615cec8af465173/src/scip/event_estim.c#L3017

Since the new loaders are not quite the same as the others, I thought I'd wait to hear your feedback before writing the tests, the new loaders mainly expect files as input either from http://vrp.galgos.inf.puc-rio.br/index.php/en/ for the Vehicle Routing Problem or http://people.brunel.ac.uk/~mastjjb/jeb/orlib/files/ for Bin Packing (or possibly files with the same format)