Skip to main contentIBM Quantum Documentation
This page is from an old version of Qiskit SDK. Go to the latest version.

qiskit.optimization.algorithms.OptimizationResult

class OptimizationResult(x, fval, variables, status, raw_results=None)

GitHub

A base class for optimization results.

The optimization algorithms return an object of the type OptimizationResult with the information about the solution obtained.

OptimizationResult allows users to get the value of a variable by specifying an index or a name as follows.

Examples

>>> from qiskit.optimization import QuadraticProgram
>>> from qiskit.optimization.algorithms import CplexOptimizer
>>> problem = QuadraticProgram()
>>> _ = problem.binary_var('x1')
>>> _ = problem.binary_var('x2')
>>> _ = problem.binary_var('x3')
>>> problem.minimize(linear={'x1': 1, 'x2': -2, 'x3': 3})
>>> print([var.name for var in problem.variables])
['x1', 'x2', 'x3']
>>> optimizer = CplexOptimizer()
>>> result = optimizer.solve(problem)
>>> print(result.variable_names)
['x1', 'x2', 'x3']
>>> print(result.x)
[0. 1. 0.]
>>> print(result[1])
1.0
>>> print(result['x1'])
0.0
>>> print(result.fval)
-2.0
>>> print(result.variables_dict)
{'x1': 0.0, 'x2': 1.0, 'x3': 0.0}
Note

The order of variables should be equal to that of the problem solved by optimization algorithms. Optimization algorithms and converters of QuadraticProgram should maintain the order when generating a new OptimizationResult object.

Parameters

  • x (Union[List[float], ndarray, None]) – the optimal value found in the optimization, or possibly None in case of FAILURE.
  • fval (float) – the optimal function value.
  • variables (List[Variable]) – the list of variables of the optimization problem.
  • raw_results (Optional[Any]) – the original results object from the optimization algorithm.
  • status (OptimizationResultStatus) – the termination status of the optimization algorithm.

Raises

QiskitOptimizationError – if sizes of x and variables do not match.

__init__

__init__(x, fval, variables, status, raw_results=None)

Parameters

  • x (Union[List[float], ndarray, None]) – the optimal value found in the optimization, or possibly None in case of FAILURE.
  • fval (float) – the optimal function value.
  • variables (List[Variable]) – the list of variables of the optimization problem.
  • raw_results (Optional[Any]) – the original results object from the optimization algorithm.
  • status (OptimizationResultStatus) – the termination status of the optimization algorithm.

Raises

QiskitOptimizationError – if sizes of x and variables do not match.


Methods

__init__(x, fval, variables, status[, …])type xUnion[List[float], ndarray, None]

Attributes

fvalReturns the optimal function value.
raw_resultsReturn the original results object from the optimization algorithm.
statusReturns the termination status of the optimization algorithm.
variable_namesReturns the list of variable names of the optimization problem.
variablesReturns the list of variables of the optimization problem.
variables_dictReturns the optimal value as a dictionary of the variable name and corresponding value.
xReturns the optimal value found in the optimization or None in case of FAILURE.

fval

Returns the optimal function value.

Return type

float

Returns

The function value corresponding to the optimal value found in the optimization.

raw_results

Return the original results object from the optimization algorithm.

Currently a dump for any leftovers.

Return type

Any

Returns

Additional result information of the optimization algorithm.

status

Returns the termination status of the optimization algorithm.

Return type

OptimizationResultStatus

Returns

The termination status of the algorithm.

variable_names

Returns the list of variable names of the optimization problem.

Return type

List[str]

Returns

The list of variable names of the optimization problem.

variables

Returns the list of variables of the optimization problem.

Return type

List[Variable]

Returns

The list of variables.

variables_dict

Returns the optimal value as a dictionary of the variable name and corresponding value.

Return type

Dict[str, float]

Returns

The optimal value as a dictionary of the variable name and corresponding value.

x

Returns the optimal value found in the optimization or None in case of FAILURE.

Return type

Optional[ndarray]

Returns

The optimal value found in the optimization.

Was this page helpful?
Report a bug or request content on GitHub.