ZKSF logo, a neon quantum brainZKSF
← All applications

Logistics and transportation

Route optimisation: what 400 qubits actually buys you

Vehicle routing is among the most often cited quantum computing applications for industry: an intuitive problem, famously hard, with exponentially many routes to choose between. This page works through the arithmetic of encoding one, and measures it against the classical solver.

The ZKSF console with the QAOA MaxCut template loaded, the problem that routing and scheduling instances map onto, beside the circuit it builds

Load the instance yourself and change the numbers. Open the console

The short version

  • Routing scales quadratically in qubits. N stops needs N squared binary variables, so ten stops needs 100 qubits and 200 stops needs 40,000
  • The encoding is the binding constraint, not the hardware. You cannot reach 40,000 logical qubits by improving fidelity
  • Hundreds of logical qubits buys about fifteen stops. That is what the 2029 roadmaps target, against a delivery round of 200
  • OR-Tools solves 200 stops in three seconds. On a laptop, and the three seconds was the budget we gave it rather than the time it needed

Run on our engines

A random 16-variable QUBO, seed 20260902, whose exact optimum is -18.7897: the size a machine can hold, with no routing structure in it, generated by small_qubo.py in the public benchmarks folder. It is deliberately small, because the 100-stop round this benchmark is about needs 10,000 qubits and fits nothing. Submitted to each kind of compute we offer, on 16 and 25 September 2026 at 500 shots. Every figure below is a real job on the service, priced as any customer would be priced.

DeviceEngineKindQubitsResultCost
CPUmps.quimb.cpuCPU16-16.3521, gap 2.44 certificate$0.0001
CPUexact.cpuCPU16-14.0904, gap 4.70 certificate$0.0001
NVIDIAexact.gpuGPU16-16.5132, gap 2.28 certificate$0.0001
Rigettiqpu.rigettiQPU16-216.06, gap 76.30 on the routing instance * certificate$0.5125
IQMqpu.iqm.garnetQPU16-14.7420, gap 4.05 certificate$1.025
IQMqpu.iqm.emeraldQPU16-10.5934, gap 8.20 certificate$1.100
Google Cloud TPUexact.tpuTPU16-18.7897, the optimum certificatebest outcome$0.0776
Google Cloud TPUneural.tpuTPU—a QUBO is diagonal, which is not the shape a neural ansatz is for—

Exact statevector simulation on an NVIDIA GPU in our 24 GB tier returned the lowest routing cost at -16.5132, against an exact optimum of -18.7897, with a tensor-network simulator close behind at -16.3521. IQM Garnet returned -14.7420 and IQM Emerald -10.5934 on the same vehicle routing instance.

Emerald placed last here and first on the satellite tasking page, on the same fixed-parameter method and the same shot count. A single 500-shot draw of an unoptimised circuit does not separate these two superconducting processors, and the order here should not be read as one.

* The Rigetti row is not scored against the optimum named above. The run used the 4-vehicle routing instance that sector_instances.py generates instead. Its exhaustive minimum is -292.3588, and the 76.30 gap is measured against that rather than against -18.7897. The IQM rows are our own internal testing. The exact.tpu row, added 25 September, is the only run on this instance to reach the exact optimum of -18.7897. The steps are in the docs.

A note on the hardware certificates: they state Hellinger fidelity against the exact distribution. For an optimisation circuit that distribution is spread across many outcomes rather than concentrated on one, so the figure is low by construction and is not a measure of whether the device found a good answer. The result column above is.

The same problem is yours to run: every instance here is seeded, so it rebuilds exactly. Open the console and a cost estimate is free before anything executes.

Open in Colab

Run this instance yourself. The notebook rebuilds the exact seeded instance behind every figure on this page, in a browser tab, with nothing to install and no account. Read it on GitHub

Then run it on our engines

The notebook proves the numbers on free public packages. This is the step it does not cover: the same circuit on a certified engine, with a public certificate you can cite instead of citing ours.

pip install qsim-sdk

import qsim_sdk
client = qsim_sdk.Client(token="...")     # free account at app.zksf.org

client.estimate(circuit, shots=512)       # free, before you spend anything
job = client.run(circuit, shots=512)      # $0.0001 on CPU
job.certificate()                         # a public, verifiable URL

Every finished job can be exported as a public certificate that opens without an account, and the rules these benchmarks follow apply to your run exactly as they do to ours.

This page has no quantum benchmark, and that is the result

On our other pages we run the quantum method and report how it did. Here we cannot, and the reason is the finding.

To put a travelling salesman problem on a quantum computer you encode it as a QUBO, which needs a binary variable for every combination of stop and position in the tour. That is N squared variables for N stops, and one qubit per variable. Ten stops needs 100 qubits.

The largest processor we can run is 108, and the largest built anywhere is around 1,600. Neither helps much: a thousand qubits buys you a 31-stop route, and those are physical qubits with no error correction, where a routing circuit of that depth would return noise.

A ten-stop delivery round is not a logistics problem. It is a morning.

The encoding cost, against what classical does

OR-Tools routing solver with guided local search, three-second budget per instance, seed 20260902. Measured 2 September 2026.

StopsQubits neededOR-Tools tourOR-Tools timeQuantum feasibility
101003,375< 3 sBeyond exact simulation
204003,360< 3 sBeyond any current hardware
502,5005,781< 3 s23x the widest processor we offer
10010,0007,853< 3 s93x the widest processor we offer
20040,00011,446< 3 s374x the widest processor we offer

The three-second figure is the budget we gave the solver, not the time it needed. OR-Tools returns a good tour far sooner and spends the remainder improving it.

Because it optimises against a wall-clock budget rather than to completion, tour lengths move by a fraction of a percent between runs: the accompanying notebook reproduced 11,454 at 200 stops against the 11,446 shown here. The qubit column does not move.

Read the two middle columns together

At 200 stops, a real distribution problem, the classical solver produces a route inside a three-second budget on an ordinary laptop. The quantum encoding of the same problem needs 40,000 qubits, with no error correction accounted for. Add fault tolerance at today's error rates and the physical requirement passes 60 million.

The gap is not a matter of waiting for the next hardware generation. It is four orders of magnitude on logical qubits alone, against a classical method that already answers the question faster than you can read the output.

Why it is often presented otherwise

Two moves, and both are technically true in isolation.

The first is to quote the size of the search space. A 200-stop tour has more orderings than there are atoms in the observable universe, which is correct and irrelevant, because no solver enumerates them. Branch and bound with good bounds never visits the vast majority of that space, which is exactly why OR-Tools finishes in seconds.

The second is to demonstrate on a tiny instance. A five or six stop route does fit on current hardware, and a demonstration at that size is real. It is also a problem you can solve by hand, and the encoding cost means it does not extend.

What would have to change

Not hardware, in the first instance. The encoding would have to change. Quadratic qubit scaling is a property of the standard QUBO formulation of routing, not a law, and better formulations exist in the literature for restricted variants.

Until one of them reduces the cost by orders of magnitude, hardware progress does not help, because you cannot reach 40,000 logical qubits by improving fidelity.

The published roadmaps make this concrete. Quantinuum Sol targets roughly 100 logical qubits in 2027, and IBM Starling and Quantinuum Apollo target hundreds by 2029. Hundreds of logical qubits is a genuine achievement and it buys a delivery round of about fifteen stops.

The encoding, not the roadmap, is the binding constraint here.

If someone offers you a quantum routing solution, the question worth asking is not how many qubits their machine has. It is how many binary variables their encoding needs for the instance size you actually run, and how that compares to what OR-Tools does with it on a laptop.

Where operations problems do fit

This is not a general statement about operations research. Satellite observation tasking encodes as a maximum weighted independent set at one variable per request, which is linear rather than quadratic, and on that problem we do have a quantum benchmark and QAOA does sometimes find the optimum. The difference between the two pages is the encoding, not the industry.

What you can run here

Routing does not reduce to anything this hardware solves natively, and no engine here changes the conclusion above. What you can run is your own QAOA formulation on the gate engines, with each optimiser step sent as a single sweep so the cost is one job per step rather than one per evaluation, and the exact simulators as the reference that says how far the answer sits from the best one. That is the comparison worth repeating on your own instances before any of it is budgeted for.

For context: where the hardware actually is

Gaps on this page are quoted against the processors ZKSF can run. That is not the frontier. Quantinuum, IBM, Atom Computing and QuEra’s newest systems are not available through us, and those machines are considerably further along. As of September 2026:

Physical qubits built

Infleqtion Sqale1,600Neutral atom
Atom Computing1,180Neutral atom, 1,225 sites
IBM Condor1,121Superconducting, 2023
IBM Heron R2156Superconducting, ~99.5% two-qubit fidelity
Rigetti Cepheus108The largest available through ZKSF

Two-qubit gate fidelity

The number that actually governs what a circuit can do.

IonQ99.99%Trapped ion, first past four nines
Silicon Quantum Computing99.99%Silicon spin
Quantinuum99.97%Trapped ion, all-to-all
IQM99.91%Superconducting, available through ZKSF

Logical qubits demonstrated

Published results, not roadmap targets.

QuEra96 logical / 448 physicalNeutral atom
Quantinuum48 logical / 98 physicalTrapped ion, iceberg code
Atom Computing24 logicalOn the 1,180-qubit system
Google1 logical / 105 physicalSurface code, below threshold

Announced roadmap

Targets. Roadmaps slip, and these are not results.

Quantinuum Sol, 2027192 physical, ~100 logicalIceberg code, distance 2. Error detection with postselection, not correction
IBM Starling, 2029~200 logicalBivariate bicycle qLDPC, 100 million gates
Quantinuum Apollo, 2029hundreds of logicalThousands of physical, logical error 1e-6 or better

See an operations problem that does encode well.

Same solver, same methodology, a problem whose structure suits a quantum computer, and a real head-to-head result.