Skip to content

quicophy/quimb-qaoa

Repository files navigation

quimb-qaoa

This package implements an optimized version of the Quantum Approximate Optimization Algorithm (QAOA) with the open-source library Quimb. The intent behind this package is to allow effortless customization of QAOA, such as implementations of different problems and variants.

Installation

To install the developpement version (recommended):

pip install quimb-qaoa@git+https://github.com/quicophy/quimb-qaoa

Structure

quimb-qaoa is partitionned to allow easy implementation of QAOA extensions. Here are the main useful modules.

  • Launcher:

Main class of the package. Used to launch QAOA simulations.

  • Initialization:

Implementation of initialization methods. Currently supports: random initialization and TQA initialization.

  • Problem:

Implementation of NP-hard problems. Currently supports: Monotone NAE3SAT, Monotone 1-in-3SAT, Monotone 2SAT, 2SAT.

  • Hamiltonian:

Formulation of the problems as Ising models.

  • Circuit:

Implementation of QAOA ansatz with the circuit form. Currently supports: Regular QAOA and Grover-Mixer QAOA.

  • MPS:

Implementation of QAOA ansatz with the Matrix-Product-State (MPS) form. Currently supports: Regular QAOA and Grover-Mixer QAOA.

About

An optimized implementation of the Quantum Approximate Optimization Algorithm (QAOA) with Quimb.

Topics

Resources

License

Stars

Watchers

Forks

Languages