Google uses RL to make Willow quantum error correction 3.5x steadier

Quantum computers do not only need better qubits; they need a way to stay calibrated while computation continues. In a July 22, 2026 Google Research post, Google Quantum AI describes a reinforcement learning system that uses quantum error correction signals to steer thousands of control parameters during operation.

The problem is hardware drift. Quantum processors depend on analog control signals, including frequencies, amplitudes, and phases. When those values drift, today’s calibration routines can require stopping the computation. That is incompatible with useful quantum algorithms that may need to run continuously for days or months.

Google’s Nature paper changes the role of error detection events. In ordinary quantum error correction, those events help a decoder infer how to preserve logical information. In this experiment, the same stream also becomes a learning signal for an autonomous RL agent. The agent watches error patterns and adjusts controls to counteract drift before it accumulates into worse logical failure.

The test ran on Google’s Willow superconducting processor. Under deliberately injected control-parameter drift, RL steering improved the logical stability of the error-correcting code by 3.5x. After the processor had already gone through expert human calibration, RL fine-tuning still reduced the logical error rate by an additional 20%. Google says the combined system reached fewer than one logical error per thousand surface-code error correction cycles, and one per hundred in the color code.

The result is not a claim that general-purpose quantum computing is solved. It is a control breakthrough aimed at one of the operational bottlenecks that appears as systems scale. The next tests are larger qubit arrays, longer live computations, and real algorithm workloads rather than injected drift alone. Still, the direction matters: if quantum machines are to run for long periods, calibration has to become part of the computation loop instead of a maintenance break outside it.