Skip to content

QuTech-Delft/qgym

Repository files navigation

QGYM – A Gym for Training and Benchmarking RL-Based Quantum Compilation

qgym is a software framework that provides environments for training and benchmarking RL-based quantum compilers. It is built on top of OpenAI Gym and abstracts parts of the compilation process that are irrelevant to AI researchers. qgym includes three environments: InitialMapping, Routing, and Scheduling, each of which is customizable and extensible.

Documentation

We have created an extensive documentation with code snippets. Please feel free to contact us via s.feld@tudelft.nl if you have any questions, or by creating a GitHub issue.

Getting Started

What follows are some simple steps to get you running. You could also have a look at some Jupyter Notebooks that we have created for a tutorial at the IEEE International Conference on Quantum Computing and Engineering (QCE’22).

We also gave an talk about the package at qhack 2024, which you can find by clicking the image below. qgym: A Gym for RL-based Quantum Compilation

Installing with pip

To install the qgym use

pip install qgym

If you would also like to use the notebooks, additional packages are required, which can simply be installed by using In this case, use

pip install qgym[tutorial]

Currently qgym has support for Python 3.8, 3.9, 3.10, 3.11 and 3.12.

Publication

The paper on qgym has been presented in the 1st International Workshop on Quantum Machine Learning: From Foundations to Applications (QML@QCE'23). The publication can be found on computer.org You can find the preprint of the paper on arxiv.

@inproceedings{van2023qgym,
  title={qgym: A Gym for training and benchmarking RL-based quantum compilation},
  author={Van Der Linde, Stan and De Kok, Willem and Bontekoe, Tariq and Feld, Sebastian},
  booktitle={2023 IEEE International Conference on Quantum Computing and Engineering (QCE)},
  volume={2},
  pages={26--30},
  year={2023},
  organization={IEEE}
}

Team

Building qgym is a joint effort.

Core developers

Contributors and Power Users