CplexOptimizer#
- class CplexOptimizer(disp=False, cplex_parameters=None)[source]#
Bases:
OptimizationAlgorithm
The CPLEX optimizer wrapped as an Qiskit
OptimizationAlgorithm
.This class provides a wrapper for
cplex.Cplex
(https://pypi.org/project/cplex/) to be used within the optimization module.Examples
>>> from qiskit_optimization.problems import QuadraticProgram >>> from qiskit_optimization.algorithms import CplexOptimizer >>> problem = QuadraticProgram() >>> # specify problem here, if cplex is installed >>> optimizer = CplexOptimizer() if CplexOptimizer.is_cplex_installed() else None >>> if optimizer: result = optimizer.solve(problem)
Initializes the CplexOptimizer.
- Parameters:
disp (bool) – Whether to print CPLEX output or not.
cplex_parameters (Dict[str, Any] | None) – The parameters for CPLEX. See https://www.ibm.com/docs/en/icos/20.1.0?topic=cplex-parameters for details.
Attributes
- cplex_parameters#
Returns parameters for CPLEX
- disp#
Returns the display setting.
- Returns:
Whether to print CPLEX information or not.
Methods
- get_compatibility_msg(problem)[source]#
Checks whether a given problem can be solved with this optimizer.
Returns
''
since CPLEX accepts all problems that can be modeled using theQuadraticProgram
. CPLEX may throw an exception in case the problem is determined to be non-convex.- Parameters:
problem (QuadraticProgram) – The optimization problem to check compatibility.
- Returns:
An empty string.
- Return type:
- is_compatible(problem)#
Checks whether a given problem can be solved with the optimizer implementing this method.
- Parameters:
problem (QuadraticProgram) – The optimization problem to check compatibility.
- Returns:
Returns True if the problem is compatible, False otherwise.
- Return type:
- solve(problem)[source]#
Tries to solves the given problem using the optimizer.
Runs the optimizer to try to solve the optimization problem. If problem is not convex, this optimizer may raise an exception due to incompatibility, depending on the settings.
- Parameters:
problem (QuadraticProgram) – The problem to be solved.
- Returns:
The result of the optimizer applied to the problem.
- Raises:
QiskitOptimizationError – If the problem is incompatible with the optimizer.
- Return type: