Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

92 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

qaoa

Implementation of the Quantum Approximate Optimization Algorithm (QAOA) for the Maximum Cut (MaxCut) problem with Qiskit in a flexible and customizable framework.

What's in here?

Here you can find the code we use in some of our quantum optimization projects.

  • classes contains two classes, one to generate graph instances for the MaxCut problem and the other to implement and QAOA-type quantum circuits.
  • data contains some pre-generated data (graphs created with the Problems class) and an example data generation notebook.
  • documentation contains two minimal documentation notebooks about the classes and utilities in this repository.
  • functions contains utilities to work with the classes in classes, solve the MaxCut problem and othe related tasks.
  • tutorials contains a minimal example notebook showing a possible pipeline where the MaxCut problem is solved in a specific instance.
  • config.py is a configuration file used to specify some settings (e.g. the number of QAOA layers).
  • qaoa_app.py is the code associated to the companion app quantum-optimization-app.streamlit.app
  • requirements.txt contains the requirements (install the file before using the code in this repository).
  • LICENSE MIT License.

Use this repository

If you want to use the code in this repository in your projects, please cite explicitely our work, and

  • Clone the repository with git clone https://github.com/leonardoLavagna/qaoa
  • Install the requirements with pip install -r requirements.txt

For further guidance check the examples in the documentation and tutorials directories.

Contributing

We welcome contributions to enhance the functionality and performance of the models. Please submit pull requests or open issues for any improvements or bug fixes.

License

This project is licensed under the MIT License.

Citation

Cite this repository or one of the associated papers, such as:

@misc{Lav24,
      title={On the Effects of Small Graph Perturbations in the MaxCut Problem by QAOA}, 
      author={Leonardo Lavagna and Simone Piperno and Andrea Ceschini and Massimo Panella},
      year={2024},
      eprint={2408.15413},
      archivePrefix={arXiv},
      primaryClass={quant-ph},
      url={https://arxiv.org/abs/2408.15413}}

About

Implementation of the Quantum Approximate Optimization Algorithm for the MaxCut problem with Qiskit, in a flexible and customizable framework.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages