126 lines
3.9 KiB
Plaintext
126 lines
3.9 KiB
Plaintext
---
|
||
title: CplexOptimizer
|
||
description: API reference for qiskit.optimization.algorithms.CplexOptimizer
|
||
in_page_toc_min_heading_level: 1
|
||
python_api_type: class
|
||
python_api_name: qiskit.optimization.algorithms.CplexOptimizer
|
||
---
|
||
|
||
# CplexOptimizer
|
||
|
||
<Class id="qiskit.optimization.algorithms.CplexOptimizer" isDedicatedPage={true} github="https://github.com/qiskit-community/qiskit-aqua/tree/stable/0.9/qiskit/optimization/algorithms/cplex_optimizer.py" signature="CplexOptimizer(disp=False)" modifiers="class">
|
||
Bases: `qiskit.optimization.algorithms.optimization_algorithm.OptimizationAlgorithm`
|
||
|
||
The CPLEX optimizer wrapped as an Qiskit [`OptimizationAlgorithm`](qiskit.optimization.algorithms.OptimizationAlgorithm "qiskit.optimization.algorithms.OptimizationAlgorithm").
|
||
|
||
This class provides a wrapper for `cplex.Cplex` ([https://pypi.org/project/cplex/](https://pypi.org/project/cplex/)) to be used within the optimization module.
|
||
|
||
**Examples**
|
||
|
||
```python
|
||
>>> 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.
|
||
|
||
**Raises**
|
||
|
||
[**MissingOptionalLibraryError**](qiskit.aqua.MissingOptionalLibraryError "qiskit.aqua.MissingOptionalLibraryError") – CPLEX is not installed.
|
||
|
||
## Methods
|
||
|
||
### get\_compatibility\_msg
|
||
|
||
<Function id="qiskit.optimization.algorithms.CplexOptimizer.get_compatibility_msg" signature="CplexOptimizer.get_compatibility_msg(problem)">
|
||
Checks whether a given problem can be solved with this optimizer.
|
||
|
||
Returns `''` since CPLEX accepts all problems that can be modeled using the `QuadraticProgram`. CPLEX may throw an exception in case the problem is determined to be non-convex.
|
||
|
||
**Parameters**
|
||
|
||
**problem** (`QuadraticProgram`) – The optimization problem to check compatibility.
|
||
|
||
**Return type**
|
||
|
||
`str`
|
||
|
||
**Returns**
|
||
|
||
An empty string.
|
||
</Function>
|
||
|
||
### is\_compatible
|
||
|
||
<Function id="qiskit.optimization.algorithms.CplexOptimizer.is_compatible" signature="CplexOptimizer.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.
|
||
|
||
**Return type**
|
||
|
||
`bool`
|
||
|
||
**Returns**
|
||
|
||
Returns True if the problem is compatible, False otherwise.
|
||
</Function>
|
||
|
||
### is\_cplex\_installed
|
||
|
||
<Function id="qiskit.optimization.algorithms.CplexOptimizer.is_cplex_installed" signature="CplexOptimizer.is_cplex_installed()" modifiers="static">
|
||
Returns True if cplex is installed
|
||
</Function>
|
||
|
||
### solve
|
||
|
||
<Function id="qiskit.optimization.algorithms.CplexOptimizer.solve" signature="CplexOptimizer.solve(problem)">
|
||
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.
|
||
|
||
**Return type**
|
||
|
||
`OptimizationResult`
|
||
|
||
**Returns**
|
||
|
||
The result of the optimizer applied to the problem.
|
||
|
||
**Raises**
|
||
|
||
[**QiskitOptimizationError**](qiskit.optimization.QiskitOptimizationError "qiskit.optimization.QiskitOptimizationError") – If the problem is incompatible with the optimizer.
|
||
</Function>
|
||
|
||
## Attributes
|
||
|
||
### disp
|
||
|
||
<Attribute id="qiskit.optimization.algorithms.CplexOptimizer.disp">
|
||
Returns the display setting.
|
||
|
||
**Return type**
|
||
|
||
`bool`
|
||
|
||
**Returns**
|
||
|
||
Whether to print CPLEX information or not.
|
||
</Attribute>
|
||
</Class>
|
||
|