Solver Properties & Parameters#

The Leap service provides several hybrid solvers with the properties and configurable parameters described here. For the properties and parameters of QPU solvers, see the QPU Solver Properties and QPU Solver Parameters sections.

Nonlinear Solver#

Nonlinear programming (NLP) is the process of solving an optimization problem where some of the constraints are not linear equalities and/or the objective function is not a linearfunction. Such optimization problems are pervasive in business and logistics: inventory management, scheduling employees, equipment delivery, and many more.

Large optimization problems can be formulated as nonlinear models, as described in the Model Construction (Nonlinear Models) section. You can then use the nonlinear hybrid solver hosted in the Leap™ service to find good solutions.

Properties of the nonlinear solver.

Parameters of the nonlinear solver.

CQM Solver#

Large optimization problems can be formulated as constrained quadratic models, as described in the Model Construction (Quadratic Models) section. You can then use the CQM hybrid solver hosted in the Leap service to find good solutions.

Properties of the CQM solver.

Parameters of the CQM solver.

Additional Solvers#

BQM Solver#

Properties of the binary quadratic model (BQM) solver.

Parameters of the BQM solver.

DQM Solver#

Properties of the discrete quadratic model (DQM) solver.

Parameters of the DQM solver.

Examples#

Nonlinear Solver#

The following code solves an illustrative traveling-salesperson problem using a quantum-classical hybrid solver in the Leap service.

>>> from dwave.optimization.generators import traveling_salesperson
>>> from dwave.system import LeapHybridNLSampler
...
>>> DISTANCE_MATRIX = [
...     [0, 656, 227, 578, 489],
...     [656, 0, 889, 141, 170],
...     [227, 889, 0, 773, 705],
...     [578, 141, 773, 0, 161],
...     [489, 170, 705, 161, 0]]
...
>>> model = traveling_salesperson(distance_matrix=DISTANCE_MATRIX)
>>> sampler = LeapHybridNLSampler()     
>>> results = sampler.sample(
...     model,
...     label='SDK Examples - TSP')     

CQM Solver#

The following code creates a constrained quadratic model (CQM) representing a knapsack problem and solves it using a quantum-classical hybrid solver in the Leap service.

>>> from dimod.generators import random_knapsack
>>> from dwave.system import LeapHybridCQMSampler
...
>>> cqm = random_knapsack(10)
>>> sampler = LeapHybridCQMSampler()        
>>> sampleset = sampler.sample_cqm(cqm,
...                                time_limit=180,
...                                label="SDK Examples - Bin Packing")