qiskit.optimization.algorithms.OptimizationResult
class OptimizationResult(x, fval, variables, status, raw_results=None)
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}
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
fval | Returns the optimal function value. |
raw_results | Return the original results object from the optimization algorithm. |
status | Returns the termination status of the optimization algorithm. |
variable_names | Returns the list of variable names of the optimization problem. |
variables | Returns the list of variables of the optimization problem. |
variables_dict | 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. |
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.