CQM Solver Properties#
This section describes the properties of quantum-classical hybrid
constrained quadratic model solvers such as the Leap
service’s hybrid_constrained_quadratic_model_version1
. For the parameters
you can configure, see the CQM Solver Parameters section.
category#
Type of solver.
hybrid
: Quantum-classical hybrid; typically one or more classical algorithms run on the problem while outsourcing to a quantum processing unit (QPU) parts of the problem where it benefits most.
Example#
>>> from dwave.system import LeapHybridCQMSampler
...
>>> sampler = LeapHybridCQMSampler()
>>> sampler.properties["category"]
'hybrid'
maximum_number_of_biases#
Maximum number of biases, both linear and quadratic in total, accepted by the solver.
Example#
>>> from dwave.system import LeapHybridCQMSampler
...
>>> sampler = LeapHybridCQMSampler()
>>> sampler.properties["maximum_number_of_biases"]
750000000
maximum_number_of_constraints#
Maximum number of constraints accepted by the solver.
Example#
>>> from dwave.system import LeapHybridCQMSampler
...
>>> sampler = LeapHybridCQMSampler()
>>> sampler.properties["maximum_number_of_constraints"]
100000
maximum_number_of_linear_biases_real#
Maximum number of linear biases of type floating-point/real numbers counted across all constraints and the model’s objective.
Example#
>>> from dwave.system import LeapHybridCQMSampler
...
>>> sampler = LeapHybridCQMSampler()
>>> sampler.properties["maximum_number_of_linear_biases_real"]
75000000
maximum_number_of_quadratic_variables#
Maximum number of variables that have interactions (quadratic biases)—counted across all constraints (meaning that the same variable can be counted multiple times if it appears in interactions in more than one constraint)—accepted by the solver.
Example#
>>> from dwave.system import LeapHybridCQMSampler
...
>>> sampler = LeapHybridCQMSampler()
>>> sampler.properties["maximum_number_of_quadratic_variables"]
15000000
maximum_number_of_quadratic_variables_real#
Maximum number of variables that have interactions (quadratic biases) of type floating-point/real numbers—counted across all constraints (meaning that the same variable can be counted multiple times if it appears in interactions in more than one constraint)—accepted by the solver.
Example#
>>> from dwave.system import LeapHybridCQMSampler
...
>>> sampler = LeapHybridCQMSampler()
>>> sampler.properties["maximum_number_of_quadratic_variables_real"]
0
maximum_number_of_variables#
Maximum number of problem variables accepted by the solver.
Example#
>>> from dwave.system import LeapHybridCQMSampler
...
>>> sampler = LeapHybridCQMSampler()
>>> sampler.properties["maximum_number_of_variables"]
5000000
maximum_time_limit_hrs#
Maximum allowed run time, in hours, that can be specified for the solver.
Example#
>>> from dwave.system import LeapHybridCQMSampler
...
>>> sampler = LeapHybridCQMSampler()
>>> sampler.properties["maximum_time_limit_hrs"]
24.0
minimum_time_limit_s#
Minimum required run time, in seconds, the solver must be allowed to work on any given problem.
For more details, see the Samplers section for solver methods that calculate the default runtime of a given problem.
Example#
>>> from dwave.system import LeapHybridCQMSampler
...
>>> sampler = LeapHybridCQMSampler()
>>> sampler.properties["minimum_time_limit_s"]
5
num_biases_multiplier#
Multiplier used in the internal calculation of the minimum run time, minimum_time_limit_s, the solver must be allowed to work on the given problem.
Example#
>>> from dwave.system import LeapHybridCQMSampler
...
>>> sampler = LeapHybridCQMSampler()
>>> sampler.properties["num_biases_multiplier"]
4.65705646e-06
num_constraints_multiplier#
Multiplier used in the internal calculation of the minimum run time, minimum_time_limit_s, the solver must be allowed to work on the given problem.
Example#
>>> from dwave.system import LeapHybridCQMSampler
...
>>> sampler = LeapHybridCQMSampler()
>>> sampler.properties["num_constraints_multiplier"]
6.44385747e-09
num_variables_multiplier#
Multiplier used in the internal calculation of the minimum run time, minimum_time_limit_s, the solver must be allowed to work on the given problem.
Example#
>>> from dwave.system import LeapHybridCQMSampler
...
>>> sampler = LeapHybridCQMSampler()
>>> sampler.properties["num_variables_multiplier"]
0.000157411458
parameters#
List of the parameters supported for the solver.
Example#
>>> from dwave.system import LeapHybridCQMSampler
...
>>> sampler = LeapHybridCQMSampler()
>>> sampler.properties["parameters"]["time_limit"]
'Maximum runtime, in seconds, requested for the problem submission.'
quota_conversion_rate#
Rate at which user or project quota is consumed for the solver as a ratio to QPU solver usage. Different solver types may consume quota at different rates.
Time is deducted from your quota according to:
See the Solver Usage Charges section for more information.
Example#
>>> from dwave.system import LeapHybridCQMSampler
...
>>> sampler = LeapHybridCQMSampler()
>>> sampler.properties["quota_conversion_rate"]
20
supported_problem_types#
Indicates what problem types are supported for the solver.
CQM solvers support the following energy-minimization problem types:
cqm
Constrained quadratic models (CQM) are typically used for applications that optimize problems that might include binary-valued variables (both \(0/1\)-valued variables and \(-1/1\)-valued variables), integer-valued variables, and real variables (also known as continuous variables); the model supports constraints natively.
Example#
>>> from dwave.system import LeapHybridCQMSampler
...
>>> sampler = LeapHybridCQMSampler()
>>> sampler.properties["supported_problem_types"]
['cqm']
version#
Version number of the solver.
Example#
>>> from dwave.system import LeapHybridCQMSampler
...
>>> sampler = LeapHybridCQMSampler()
>>> sampler.properties["version"]
1.12