The structure of datasets are organized under ./data as follows
./data/$DATASET_NAME
├── train
└── instances # training instances
where each dataset is placed in their own $DATASET_NAME directory
The instances (.mps or .lp files) of each dataset should be prepared and placed in ./data/$DATASET_NAME/train/instances, respectively.
-
For BIP dataset, instances can be downloaded here. One can use instances 0-299 for training.
-
For BPP dataset, instances are generated by running
python ins_generation.pyNote: A random seed setting is currently missing; one may add it to address this omission.
-
For SMSP dataset, please convert instances from the steelmillslab set (a copy is available in
data/steel) into.mpsformat by runningpython gen_smsp.py
The (high-quality) solutions of training instances are collected and stored in ./data/$DATASET_NAME/train/solutions using MILP solver SCIP by
# BPP
python collect_sols.py --rootDir ./data/BPP/train --nWorkers 5 --maxTime 3600
# BIP
python collect_sols.py --rootDir ./data/BIP/train --nWorkers 5 --maxTime 3600
# SMSP
python collect_sols.py --rootDir ./data/SMSP/train --nWorkers 5 --maxTime 3600
Note: The solution files for the BIP and SMSP datasets are already available in their respective directories. Running this step from scratch can take multiple days.