New Every published benchmark now re-runs in your browser

The quantum planner that shows its work.

QubitFlow simulates a QAOA circuit exactly in your browser, then grades its answer against a greedy planner and every possible plan. Every run publishes its seed, angles and scores, so anyone can reproduce it to the last bit.

Quantum algorithm simulated on your device. No quantum hardware.

Live run · Crawler squad research sprint Live

What the circuit would answer

The probability of each plan at the best angles found so far.

Best angles so far

γ · β
—
CVaR objective
—
Found at
—
Probability on a best plan
—
Probability within budget
—
6 jobs · budget 11 · seed … · … shots · … Simulated exactly on this device
109/109
unit tests passing
56/56
browser checks passing in Chrome 154
1.7 × 10⁻¹⁵
largest deviation from a numpy reference
…
to compute the example on this device

Test figures from the reports of 2026-10-11 · see exactly what was run

Live demo

Move the budget. Watch three planners disagree.

Six research tasks for a crawler squad. Each time you move the slider, the simulated circuit, the greedy planner and the exact checker all run again, here in your browser.

Open this run in the lab
11agent-hours
0all jobs cost 24
G greedy pick Q circuit’s candidate E exact best

The jobs, costs and values are a saved example with hypothetical planning values. Nothing is crawled or measured.

Inside the circuit

Watch a quantum algorithm work, step by step.

Each square is one of the 64 possible plans. The arrow inside is that plan’s complex amplitude: its length is the amplitude’s size and its direction is the phase. As you scroll, the page applies the real circuit.

Amplitudes · 64 plans
Step 1 · Superpose

Start with every plan at once.

Hadamard gates put the six qubits into an equal superposition. All 64 plans share the same amplitude, 1/8, and the same phase, so each is equally likely.

|ψ₀⟩ = |+⟩⊗6 = ⅛ Σₓ |x⟩

Step 2 · Phase

Score every plan simultaneously.

The cost layer turns each arrow by an angle set by that plan’s score, with over-budget plans penalised. Directions now differ, but no probability has moved yet.

|ψ₁⟩ = e−iγH |ψ₀⟩

Step 3 · Interfere

Let the plans interfere.

The mixer lets amplitude flow between plans that differ by one job. Arrows that line up reinforce and arrows that oppose cancel, so probability gathers on some plans.

|ψ₂⟩ = e−iβΣXⱼ |ψ₁⟩

Step 4 · Measure

Sample it, 1,024 times.

Each shot returns one plan, drawn at random in proportion to its probability. A seeded generator makes the shots repeatable; the plan drawn most often is the circuit’s answer.

candidate = most frequent of 1,024 seeded shots

Step 5 · Verify

Then check it against every plan.

An exact checker tries all 64 plans and grades the circuit’s answer, alongside a simple greedy planner.

Engineering

Built to be checked, not trusted.

Every part of QubitFlow leaves something you can inspect: the amplitudes, the plans, the run fingerprint and the tests.

Exact simulation

All 64 amplitudes, computed every time

No shortcuts inside the circuit: the full state vector is evolved exactly, then sampled. These are the example’s final probabilities, from most to least likely.

most likely64 plans, sortedleast likely
Exhaustive check

Every plan, graded

The exact checker enumerates all of them, so the best answer is always known.

optimalwithin budgetover budget
Reproducible

Same inputs, same bits

A deterministic search, seeded sampling and bundled trigonometry give bit-identical runs in every browser.

computing…

SHA-256 of this run’s inputs, angles, sample counts and candidate, computed in your browser.

Private

No backend at all

Static files and your device. A strict security policy blocks every other connection.

0cookies
0trackers
0accounts
On-device AI

A model on a short leash

An optional small model drafts tables and rewords results. Code sets every number, and its sentences are checked.

GPU
LFM2.5-350M · 4-bitWebGPU · opt-in · 260–290 MB, once
Benchmarked

Published, including the losses

How often each planner found the optimum on 300 hold-out problems.

Verified

Tested against an independent reference

The circuit is compared with a separate numpy implementation, and the browser build is driven end to end in Chrome.

unit tests
109/109 passing
browser checks
56/56 passing in Chrome 154
numpy deviation
1.7 × 10⁻¹⁵ (tolerance 1e-10)
dependencies
0 known vulnerabilities
Benchmarks

Measured, not promised.

On 300 random problems never used for tuning, the circuit’s candidate finds the optimum less often than a simple greedy planner. We publish that, with the code that reproduces it.

Recompute it in your browser
Share of hold-out problems where each planner found the optimal plan
300 problems, 4–6 jobs each. Blue bars are the simulated QAOA search; grey is the greedy baseline.
0%25%50%75%100%

Figures are locked by an automated test that reruns the benchmark, and the Benchmarks page reruns them on your device. The plain-mean search is the textbook objective; under a large penalty it collapses toward the empty plan, which is why QubitFlow uses CVaR.

The lab

A complete planner in a browser tab.

Bring your own jobs and budget. The lab runs the circuit, shows every angle it tried, and lets anyone check the result.

  • Your own inputsFour to six jobs, strict validation and clear errors.
  • Full transparencyThe parameter-search heatmap, the outcome distribution and a table of every plan.
  • Reproduce anythingExport a run file, share a link, or replay a saved run and compare.
  • Optional on-device AIDraft a job table from one sentence, then confirm every number yourself.
QubitFlow · Lab
Screenshot of the QubitFlow lab comparing the greedy planner, the quantum-simulation candidate and the exact checker for the example.
Scenarios

Start from a scenario, or bring your own.

Each opens in the lab and runs immediately. All are saved examples with hypothetical values, chosen to show different behaviour.

Research

Standing on published science.

QubitFlow did not invent these methods. It implements them carefully and shows its work.

Full method and references
arXiv · 2014

A Quantum Approximate Optimization Algorithm

E. Farhi, J. Goldstone, S. Gutmann

Used for the circuit: alternating cost and mixer layers.

Quantum · 2020

Improving Variational Quantum Optimization using CVaR

P. Kl. Barkoutsos, G. Nannicini, A. Robert, I. Tavernelli, S. Woerner

Used for the search objective, CVaR with α = 0.3.

Physical Review X · 2020

QAOA: Performance, Mechanism, and Implementation on Near-Term Devices

L. Zhou, S.-T. Wang, S. Choi, H. Pichler, M. D. Lukin

Used for INTERP, which starts deeper circuits from shallower ones.

The Computer Journal · 1965

A Simplex Method for Function Minimization

J. A. Nelder, R. Mead

Used for refining the circuit’s angles after the grid search.

Questions

Straight answers.

What QubitFlow is, what it is not, and how to check it for yourself.

No quantum hardware

Everything is a classical simulation of a quantum algorithm, and it is labelled that way wherever it appears.

No speed-up

Simulating 2ⁿ amplitudes cannot beat simply checking all 2ⁿ plans, which QubitFlow also does, on every run.

No invented numbers

Every figure here is computed live in your browser, locked by an automated test, or recorded from a real test run.

Does QubitFlow run on a quantum computer?

No. It simulates a quantum algorithm exactly on your own device, by storing all 2ⁿ complex amplitudes and applying the circuit to them. That is why it is limited to six jobs, and why every page says “quantum algorithm simulated on your device”.

Why does the circuit sometimes lose to the greedy planner?

Because a shallow QAOA circuit is an approximate method. On the published hold-out set the circuit’s candidate is optimal about seven times in ten, while greedy is optimal about five times in six. QubitFlow shows the comparison on every run instead of hiding it.

Is anything I type sent to a server?

No. There is no backend. Your jobs, budgets and settings are processed in your browser. If you switch on the optional AI, your browser downloads the model files from Hugging Face and jsDelivr, but your text stays on your device.

How can I check a result myself?

Export the run from the lab and drop it on the Verification page, or run npm run reproduce on it. Both re-run the simulation with the same inputs and seed and compare the angles, every sample count and the candidate. Runs are bit-identical across browsers.

What does the AI do, and what can it not do?

It can draft a job table from a sentence and reword the result. It cannot set a score, a constraint or a verdict. Drafts are schema-checked and must be confirmed by you, and each reworded sentence is checked against the computed facts.

Can I use QubitFlow for real decisions?

QubitFlow is a demonstration for exploration and education, not advice. The exact checker always tells you the true optimum for your inputs, but the inputs themselves are only as good as your estimates.

Try it now

It ran in a few milliseconds on your device. Now try your own jobs.

Four to six jobs and a budget is all it takes. No account, nothing to install.