Solving a QUBO instance
Solving a QUBO instance means feeding an Instance to a solver. qubosolver gives you two ways to do that:
- Call the classical or quantum pipeline functions directly, composing transforms and solvers as needed.
- Or use
Solverwith aSolverConfig, which wraps a common pipeline (transform β solve β lift) behind a single call, and lets you switch between a classical and a quantum approach by configuration alone.
Composition of solvers and transforms
Section titled βComposition of solvers and transformsβA solve is a pipeline: an optional chain of transforms reduces or adapts the instance, a solver produces a solution for the transformed instance, and each transform is "lifted" in reverse to map that solution back to the original instance.
Solver/SolverConfig builds this pipeline for you: preprocessing=True chains the configured transforms before solving, postprocessing=True chains refinement solvers after, and the solver itself is either the classical or quantum pipeline depending on solving. See Transforms and Solvers for the building blocks.
The quantum pipeline
Section titled βThe quantum pipelineβSolving with a quantum approach turns the instance into a program that runs on a neutral-atom device β an embedding step maps variables onto atoms, drive shaping builds the laser pulse, and the result is compiled and run on a backend (a local emulator, a remote emulator, or a real QPU).
QuantumProgram, which a backend (a QPU or an emulator) runs. run returns a Job as soon as it's queued β the Solution is fetched later through that job, via an async fetch, once it's ready.See The quantum pipeline for the full walkthrough, including a runnable example and how to plot the register and drive.
Where to go next
Section titled βWhere to go nextβ- Understand the core
InstanceandSolutiontypes. - Learn about the building blocks of the classical pipeline: solvers and transforms.
- Learn about the steps of the quantum pipeline: embedding, drive shaping, compiling, and backends.
- Configure either approach through
qubosolver.SolverConfig.
