Method
How it works
The first four sections give you the idea in plain words. The equations follow, so you can check the mathematics against the engine’s code.
The machine moves
IBM publishes calibration data for each of its quantum computers: how long each qubit keeps its state (T1 and T2), how often each gate fails, how often a measurement is misread.
- The numbers drift, sometimes slowly and sometimes in jumps, as the chip and its refrigerator change.
- The evidence is on the home page: real T1 calibrations of one qubit on
ibm_fez, from May to October 2026.
Qiskit’s NoiseModel.from_backend copies the latest calibration into a noise model. That model
is exact for its moment, and nothing in your simulation shows how far the machine has moved
since.
The pipeline in seven stages
SuperconducTED sits between the calibration data and Qiskit Aer, the simulator. Each snapshot goes through seven stages:
- Ingest. A scheduled job archives the calibrations of IBM’s
ibm_fez, in public, since May 2026. - Summarise. Three features describe the snapshot: mean T1, mean T2 and mean readout error.
- Fuzzify. Overlapping fuzzy sets (“low”, “typical”, “high”) describe each feature. Every combination of sets is a rule, and each rule fires as strongly as the snapshot matches it.
- Combine. Each rule proposes noise parameters as a linear function of the features; the engine averages the proposals, weighted by how strongly each rule fired.
- Squash. The result is mapped into the range the physical parameter can take.
- Check eligibility. Only gates that the snapshot reports get a noise channel.
- Project. The parameters become amplitude and phase damping channels that Aer simulates.
The rule base is a Takagi-Sugeno-Kang (TSK) fuzzy system. ANFIS trains it the way a small neural network is trained.
Why a range
One calibration is one sample of a machine that keeps moving.
- An interval type-2 fuzzy set has a lower and an upper membership. The gap between them holds what is not known about the input.
- An ensemble of noise models that spans that uncertainty turns one simulation into a range of outcomes.
- The aim is a range that brackets what the hardware does across calibration cycles.
Where it stands
Research preview. This section reports the engine’s state, not a result.
- Working: the calibration archive, feature extraction, the fuzzy pipeline end to end, channel projection, and an ensemble of Aer noise models. The suite has 859 NC-021 tests.
- In progress: training. The ridge least-squares fit of the rule outputs merged on 15 October 2026 PR #114. Training needs five distinct device states per trainable parameter, 1,170 NC-045 in all; 868 NC-069 are archived.
- Open: how ensemble members differ ADR-015, how their results combine into an interval ADR-016, and type-1 or interval type-2 ADR-009. Until these land, the outputs are point estimates.
Every design decision is in the engine’s decision record, the design in its architecture document, and every figure in its numerical-claims register.
The equations
The definitions match the engine’s code (fuzzy/membership.py, fuzzy/tsk.py,
fuzzy/defuzzification.py, channels/kraus.py).
Features. A snapshot gives : the mean T1, the mean T2 and the mean readout error.
Membership. Each rule has one Gaussian set per feature, with a centre and a width that training learns:
Firing strength. The product of the rule’s memberships:
Rule output. First-order TSK: each rule proposes the two noise parameters as a linear function of the features,
Combination. The average of the proposals over the rules, weighted by firing strength:
With three sets per feature there are rules and 234 NC-045 trainable parameters: 216 in the matrices , and 18 centres and widths NC-037.
Channel. Squashing turns into an amplitude-damping parameter and a phase-damping parameter , both in . Each eligible gate then gets amplitude damping, with Kraus operators
composed with phase damping of parameter .
The type-2 path. An interval Gaussian set has two widths, , so each membership becomes an interval and each rule fires with a lower strength and an upper strength . The engine’s Nie-Tan defuzzifier averages the two weighted averages:
The range. The plan is for the range to come from the ensemble: noise models (32 NC-018 by default), each simulated, with their results combined into an interval. How the members differ and how their results combine are the open decisions above.