Skip to main content

View on GitHub

Open this notebook in GitHub to run it yourself
This notebook solve the Low Autocorrlation Binary Sequences (LABS) problem using QAOA. It follows the paper from Shaydulin et al.[1]. Later, the paper accepted to the Science Advances journal. The LABS problem is relevant in various fields, including communications engineering, design of radar pulses, and more, where sequences with low autocorrelation properties are desired. The LABS problem is known to be NP-hard. The LABS problem is defined as follows: For a given sequence of spins si∈{−1,+1}s_{i} \in \{-1,+1\}, we have the autocorrelation Ak(s)A_{k}(s). First, define Ak(s)A_{k}(s), the autocorrelation: Ak(s)=∑i=1N−ksisi+kA_{k}(s) = \sum_{i=1}^{N-k} s_{i}s_{i+k} The goal of LABS is to find a sequence of spins ss that minimizes the so-called “sidelobe” energy: Esidelobe=∑k=1N−1Ak2(s)E_{sidelobe} = \sum_{k=1}^{N-1} A_{k}^{2}(s)

Define the Pyomo Model

Define QAOA Parameters

Define the number of layers, the number of iterations, optimizer, and more. And define the number of spins, which is the number of qubits as well.

Combine All the QAOA Parameters to Form a Quantum Model

Synthesize

Output:
Output:

Execute

Output:

See Results and Convergence Graph and Result Histogram

Output:
output
Output:
output

References

[1]: Shaydulin, Ruslan, et al. “Evidence of scaling advantage for the quantum approximate optimization algorithm on a classically intractable problem.” arXiv preprint arXiv:2308.02342 (2023)..