QAOA.jl
This package implements the Quantum Approximate Optimization Algorithm and the Mean-Field Approximate Optimization Algorithm.
Installation
To install, use Julia's built-in package manager
julia> ] add QAOA
Documentation & Examples
Our docs can be found here. Examples showcasing the use of QAOA.jl
are also presented in our examples folder.
Benchmarks
QAOA.jl
also supports gradient optimization via automatic differentiation. Below is a comparison of run times between PennyLane
[@PennyLane] and QAOA.jl
on an Apple M1 processor. The benchmarks are retrieved by performing 128 steps with the respective gradient optimizer on the same instance of size
Citations
If you are using code from this repository, please cite our work:
@misc{https://doi.org/10.48550/arxiv.2303.00329,
doi = {10.48550/ARXIV.2303.00329},
url = {https://arxiv.org/abs/2303.00329},
author = {Misra-Spieldenner, Aditi and Bode, Tim and Schuhmacher, Peter K. and Stollenwerk, Tobias and Bagrets, Dmitry and Wilhelm, Frank K.},
keywords = {Quantum Physics (quant-ph), Disordered Systems and Neural Networks (cond-mat.dis-nn), FOS: Physical sciences, FOS: Physical sciences},
title = {Mean-Field Approximate Optimization Algorithm},
publisher = {arXiv},
year = {2023},
copyright = {arXiv.org perpetual, non-exclusive license}
}