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.
To install the developpement version (recommended):
pip install quimb-qaoa@git+https://github.com/quicophy/quimb-qaoa
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.