Welcome to the Quantum Amplitude Estimation (QAE) Challenge Leaderboard and reference repository! This repository hosts:
- The QAE Challenge Leaderboard & Automated CI Benchmark Suite (
leaderboard/, live dashboard at https://unitaryfoundation.github.io/csAE/leaderboard.html) — an open, standardized competition comparing non-adaptive, semi-adaptive, adaptive, depth-limited, and noisy Quantum Amplitude Estimation algorithms under identical physical measurement and query-accounting rules. - Geometric-Ladder Maximum-Likelihood QAE (
mlqae) (mlqae/, arXiv:2609.02715, interactive demo at https://unitaryfoundation.github.io/csAE/). - Compressed-Sensing / Virtual-Array ESPRIT QAE (
csAE) (csae/, arXiv:2405.14697).
Can you design a non-adaptive or adaptive amplitude estimation schedule/estimator that beats the current state of the art?
- Live Interactive Leaderboard: https://unitaryfoundation.github.io/csAE/leaderboard.html (source:
docs/leaderboard.html) - Live Geometric-Ladder Interactive Demo: https://unitaryfoundation.github.io/csAE/ (source:
docs/index.html) - How to Submit (Pull Request Guide):
leaderboard/SUBMISSION_GUIDE.md - CI Security & Architecture Plan:
leaderboard/ARCHITECTURE_PLAN.md
-
Physical Model: Estimating unknown amplitude
$a = \sin\theta \sim \mathrm{Uniform}(0.1, 0.9)$ from measurements of$G^n U|0\rangle$ with success probability$p(n,\theta) = \cos^2((2n+1)\theta)$ . -
Query Cost Accounting: A shot at Grover depth
$n = 0$ costs$1$ query; a shot at Grover depth$n \ge 1$ costs$n$ queries ($N_{\mathrm{tot}} = \sum_{n \ge 1} n N_n + N_0$ ). -
Depth Cap: the benchmark scale
$n_{\max}$ is a hard limit on the Grover depth of every circuit, for every track; the evaluators and the CI oracle reject deeper circuits. Sequential rounds are not capped and are charged in the sequential-depth constant. -
Primary Metric:
$C_{95}^{\mathrm{ave}} = \varepsilon_{95} \cdot \langle N_{\mathrm{tot}} \rangle$ across standard scales$n_{\max} \in {125, 260, 540, 1000}$ ($20{,}000$ Monte Carlo trials per scale with$1{,}000$ -resample bootstrap 95% confidence intervals), tracked alongside worst-case query cost$C_{95}^{\max}$ , tail constant$C_{99}^{\mathrm{ave}}$ , and sequential depth constant$C_{95}^{\mathrm{seq}}$ . -
5-Stage Anti-Cheat & Blind Secret Test Seed (
LEADERBOARD_SECRET_SEED): Every Pull Request touchingleaderboard/submissions/<your_algo>/triggers an isolated, network-disabled GitHub Actions workflow (.github/workflows/leaderboard_ci.yml) runningleaderboard/verifier_and_runner.py:- Static AST Security Scanner (blocks forbidden imports, builtins, and underscore/dunder introspection).
-
Input/Output & Budget Contract Validation (enforces valid depths, shot counts, and estimates in
$[0,1]$ ). - Bitwise Seed Reproducibility Check.
-
Zero-Information Coin-Flip Oracle Test (proves the algorithm cannot side-channel
a_truefrom the closure-isolatedQuantumAEOracle). -
Asymptotic Heisenberg Scaling Check & Blind Secret-Seed Certification (official rankings are evaluated against an unguessable
HMAC-SHA256seed derived fromsecrets.LEADERBOARD_SECRET_SEEDso submissions cannot tune hyperparameters on or memorize the test set).
Seeded Literature Baselines (11/11 Certified in leaderboard/submissions/)
Literature baselines are run exactly as specified in their papers; the benchmark scale fixes only the sequence length. The two Suzuki et al. MLAE entries use
| Rank | Algorithm | Track | Rounds |
[95% CI]
|
Reference | ||||
|---|---|---|---|---|---|---|---|---|---|
| 1 | mlqae-plain |
non-adaptive |
2.881 [2.82, 2.96]
|
arXiv:2609.02715 | |||||
| 2 | mlqae-flagship |
non-adaptive |
2.936 [2.88, 3.00]
|
arXiv:2609.02715 | |||||
| 3 | BAE-Adaptive |
adaptive-fixed-budget |
3.034 [2.92, 3.15]
|
arXiv:2401.15072 | |||||
| 4 | chebAE |
adaptive-variable |
3.188 [2.95, 3.44]
|
arXiv:2207.08628 | |||||
| 5 | csAE (ESPRIT) |
non-adaptive |
3.741 [3.60, 3.88]
|
arXiv:2405.14697 | |||||
| 6 | BIQAE (Beta-Posterior) |
adaptive-variable |
4.652 [4.57, 4.75]
|
Bayesian Beta-IQAE | |||||
| 7 | IQAE-CP |
adaptive-variable |
6.805 [6.66, 6.95]
|
arXiv:1912.05559 | |||||
| 8 | MLAE-EIS (Suzuki) |
non-adaptive |
7.942 [7.80, 8.09]
|
arXiv:1904.10246 | |||||
| 9 | FAE |
adaptive-variable |
8.785 [8.63, 8.95]
|
arXiv:2003.02417 | |||||
| 10 | IQAE-Chernoff |
adaptive-variable |
9.066 [8.90, 9.23]
|
arXiv:1912.05559 | |||||
| 11 | MLAE-LIS (Suzuki) |
non-adaptive |
74.588 [73.38, 75.62]
|
arXiv:1904.10246 |
# Run the 9-stage anti-cheat & sandbox unit test suite
python leaderboard/test_verifier.py
# Certify all 11 seeded literature baseline submissions
python leaderboard/certify_submissions.py
# Verify your own submission before opening a Pull Request
python leaderboard/verifier_and_runner.py --mode=verify --submission=leaderboard/submissions/<your_algo>Two non-adaptive amplitude-estimation algorithms originally developed in this repository measure the Grover iterator at a fixed set of depths and post-process the outcomes classically, so every circuit can run in parallel; they differ in the depth schedule and in the estimator.
| csAE | Geometric ladder + exact ML (mlqae) |
|
|---|---|---|
| Paper | arXiv:2405.14697 | arXiv:2609.02715 |
| Depth schedule | powers of two | ratio 1.45 ladder, one extra rung near the cap |
| Estimator | ESPRIT on a sparse virtual array | exact global maximum likelihood (one matrix product) |
| Constants at 95% | 4.3/ε total, 0.26/ε sequential depth | 2.8–3.1/ε total, 0.21/ε sequential depth |
| Where | csae/: estimator.py, csAE_example.ipynb, plots.ipynb |
mlqae/ with its own README; core module mlqae/core.py |
| Live demo | — | https://unitaryfoundation.github.io/csAE/ (source: docs/index.html) |
For the geometric-ladder maximum-likelihood method, start at mlqae/README.md. The section below documents csAE, which lives in the csae/ package (import it from the repository root: from csae import *).
This repository contains all of the code required to generate the tables and plots provided in arXiv:2405.14697. To recreate the images simply run the provided notebook csae/plots.ipynb. This will use the precomputed results stored in pickle files to generate the plots.
Should you want to run your own simulations and learn how to use the compressed sensing amplitude estimation approach, we recommend looking at the notebook csae/csAE_example.ipynb. This contains a minimal working example demonstrating the functionality.
All of the data used to generate the results in the paper can be recreated by running the csae/run_ae_sims.py python script from the repository root with the following commands. This code block generates the data needed for Fig. 3 and Tab. 1. It runs 500 Monte Carlo trials of the csAE approach for random amplitudes in the range a=(0.1, ..., 0.9). With 12 threads on a workstation this takes about XXX hours to complete.
python csae/run_ae_sims.py --save --dir=csae/sims_final/ --nthreads=24 --num_lengths=6 --C=4 --adjacency=5 --num_mc=500 > csae/sims_final/outfileC4.0.dat
python csae/run_ae_sims.py --save --dir=csae/sims_final/ --nthreads=24 --num_lengths=6 --C=8 --adjacency=5 --num_mc=500 > csae/sims_final/outfileC8.0.dat
Once the data is generated, simply run the notebook csae/plots.ipynb to generate the figures and tables. For your convenience, the precomputed data is already stored so there is no need to rerun these long simulations, except for reproducibility.