This folder contains code and data accompanying the NeurIPS 2022 submission " (Optimal) Online Bipartite Matching with Predicted Degrees."
The core functions are found in matching.py with a separate Jupyter Notebook for each experiment.
To reproduce the experiments from the paper, run the corresponding Jupyter Notebook.

Dependencies:
The code is written in python3 with the following external packages:
- numpy
- networkx
- scipy

Files:
- matching.py: The core functions for the experiments.
- analysis-experiments-asymptotic.ipynb: The notebook for the experiments displayed in Table 1.
- analysis-experiments.ipynb: The notebook for the experiments displayed in Figure 7.
- snapshot_graph.ipynb: The notebook for the experiments displayed in Figures 1 and 2 (only the data from 2004 for CAIDA are included to meet the space limit).
- zipf-experiments.ipynb: The notebook for the experiments displayed in Figure 3.
- data/*: Data for the Oregon and Caida datasets.

The code/data for the Known i.i.d. experiments can be found at the "Online Bipartite Matching Library" by Denis Pankratov Allan Borodin, Christodoulos Karavasilis at https://users.encs.concordia.ca/~denisp/online-bm-lib.tar.gz (see the corresponding paper https://arxiv.org/pdf/1808.04863.pdf).