Awesome
CombOptNet: Fit the Right NP-Hard Problem by Learning Integer Programming Constraints
This repository contains PyTorch implementation of the paper CombOptNet: Fit the Right NP-Hard Problem by Learning Integer Programming Constraints
Installation
- Run
pipenv install
(at your own risk with--skip-lock
to save some time). - From within the pipenv environment run
python3 -m pip install -i https://pypi.gurobi.com gurobipy
. - Obtain a license and download/set it.
- Download and extract the datasets.
Usage
For [experiment] = knapsack
or [experiment] = static_constraints
:
- Set the
base_dataset_path
parameter inexperiments/[experiment]/base.yaml
. - In case of static constraints: set the
dataset_specification
parameter inexperiments/static_constraints/base.yaml
- Run
python3 main.py experiments/[experiment]/[method].yaml
.
Citation
@misc{paulus2021comboptnet,
title={CombOptNet: Fit the Right NP-Hard Problem by Learning Integer Programming Constraints},
author={Anselm Paulus and Michal Rolínek and Vít Musil and Brandon Amos and Georg Martius},
year={2021},
eprint={2105.02343},
archivePrefix={arXiv},
primaryClass={cs.LG}
}