Introduction#

SAPI Solvers—compute resources D‑Wave makes available through SAPI that you can submit problems to—can be queried for their properties, which characterize behaviors and supported features; accept certain parameters that define the problem to be solved; and accept other parameters that control how the problem is run.

For example, Advantage™ quantum computers have a num_reads_range property that advertises the supported range for the number of requested anneals on a problem submitted to such a solver:

>>> from dwave.system import DWaveSampler
>>> DWaveSampler().properties["num_reads_range"]
[1, 10000]

Similarly, a hybrid solver in the Leap service might accept a bqm and label as its problem parameters and time_limit as a controlling parameter, where the supported values of the latter are specified by this solver’s minimum_time_limit property.

>>> from dwave.system import LeapHybridDQMSampler
>>> dqm = dimod.DiscreteQuadraticModel.from_file("my_dqm_problem")   
>>> LeapHybridDQMSampler().sample_dqm(dqm, time_limit=10)       

About This Document#

This document describes the available SAPI Solvers and the supported

SAPI Solvers#

The Leap service provides quantum-classical Hybrid Solvers and QPU Solvers that are available through SAPI.

Note

Not all accounts have access to all these solvers. You can see the solvers your account can access on the dashboard for your account or by using the dwave CLI (e.g., dwave solvers -la).

Additionally, Ocean software provides classical solvers such as steepest descent that you can run locally. Those are not described in this document. See the Ocean software documentation for information on parameters of such solvers.

Hybrid Solvers#

The quantum-classical hybrid solvers in the Leap service are intended to solve arbitrary application problems formulated as quadratic and nonlinear models[1].

These solvers, which implement state-of-the-art classical algorithms together with intelligent allocation of the quantum computer to parts of the problem where it benefits most, are designed to accommodate even very large problems. Hybrid solvers enable you to benefit from D‑Wave’s deep investment in researching, developing, optimizing, and maintaining hybrid algorithms.

These solvers have the following characteristics:

  • There is no fixed problem structure. In particular, these solvers do not have properties num_qubits, qubits, and couplers.

  • Solvers may return one solution or more, depending on the solver, the problem, and the time allowed for solution. Returned solutions are not guaranteed to be optimal.

  • Solver properties and parameters are entirely disjoint from those of QPU solvers.

  • Maximum problem size and solution times differ between solvers and might change with subsequent versions of the solver: always check your selected solver’s relevant properties. For example, the solver selected below has limits on maximum_number_of_biases and maximum_number_of_variables that restrict problem size, and requirements on minimum_time_limit and maximum_time_limit_hrs that restrict solution time.

    >>> sampler = LeapHybridDQMSampler()                         
    >>> sampler.properties.keys()                                
    dict_keys(['minimum_time_limit',
                'maximum_time_limit_hrs',
                'maximum_number_of_variables',
                'maximum_number_of_biases',
                'parameters',
                'supported_problem_types',
                'category',
                'version',
                'quota_conversion_rate'])
    >>> sampler.properties["maximum_time_limit_hrs"]           
    24.0
    

Generally Available Hybrid Solvers#

The generally available hybrid solvers depend on your account in the Leap service. Check your dashboard to see which hybrid solvers are available to you.

Generally available hybrid solvers currently supported include:

  • Hybrid BQM solver (e.g., hybrid_binary_quadratic_model_version2)

    Binary quadratic models (BQM) typically represent problems of decisions that could either be true (or yes) or false (no); for example, should an antenna transmit, or did a network node fail?

    These solvers accept arbitrarily structured, unconstrained problems formulated as BQMs, with any constraints typically represented through penalty models.

  • Hybrid CQM solver (e.g., hybrid_constrained_quadratic_model_version1)

    Constrained quadratic models (CQM) typically represent problems that might include real, integer and/or binary variables and one or more constraints.

    These solvers accept arbitrarily structured problems formulated as CQMs, with any constraints represented natively.

  • Hybrid DQM solver (e.g., hybrid_discrete_quadratic_model_version1)

    Discrete quadratic models (DQM) typically represent problems with several distinct options; for example, which shift should employee X work, or should the state on a map be colored red, blue, green, or yellow?

    These solvers accept arbitrarily structured, unconstrained problems formulated as DQMs, with any constraints typically represented through penalty models.

  • Hybrid nonlinear-program solver (e.g., hybrid_nonlinear_program_version1)

    Nonlinear models typically represent problems that might include integer and/or binary variables and one or more constraints. Such models are especially suited for use with decision variables that represent a common logic, such as subsets of choices or permutations of ordering. For example, in a traveling salesperson problem, permutations of the variables representing cities can signify the order of the route being optimized, and in a knapsack problem, the variables representing items can be divided into subsets of packed and not packed.

    These solvers accept arbitrarily structured problems formulated as nonlinear models, with any constraints represented natively.

Contact D‑Wave at sales@dwavesys.com if your application requires scale or performance that exceeds the currently advertised capabilities of the generally available hybrid solvers.

QPU Solvers#

The Getting Started with D-Wave Solvers guide is an introduction to QPU solvers. For a more advanced, technical description of QPUs, see the QPU Solver Datasheet guide.

Generally Available QPU Solvers#

D‑Wave currently makes available the Advantage quantum computer.

Starting in 2022, experimental prototypes of D‑Wave’s next-generation QPU, the Advantage2™ system, were put online in the Leap service for study.