/BPFI-learn2branch

Source code for paper "Batch-Wise Permutation Feature Importance Evaluation and Problem-Specific Bigraph for Learn-to-Branch"

Primary LanguageJupyter NotebookMIT LicenseMIT

Batch-wise Permutation Feature Importance Evaluation and Problem-Specific Bigraph for Learn-to-Branch

Yajie Niu, Chen Peng, Bolin Liao

Installation

This work is based on learn2branch, which proposes Graph Convolutional Neural Network for learn-to-branch.

Please follow installation instructions of learn2branch to install SCIP and PySCIPOpt.

Structure and running

In the instructions below we assumed that a bash variable PROBLEM exists. For example,

PROBLEM=setcover

Generate Instances

python Gasse_l2b/S01_generate_instances.py

Generate dataset

python Gasse_l2b/S02_generate_dataset.py

Train models

python S03_train_gcnn.py

BPFI evaluation

python S041_evaluate_BPFI.py

Train competitors

python S031_train_competitors.py

Test models

python S04_test_gcnn.py

Evaluate models

python S05_evaluate_gcnn.py

You can use the file exp.py to run all of the above files.