qiskit.optimization.algorithms.OptimizationResult¶
-
class
OptimizationResult
(x, fval, variables, status, raw_results=None, samples=None)[source]¶ 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 newOptimizationResult
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.samples (
Optional
[List
[SolutionSample
]]) – the solution samples.
- Raises
QiskitOptimizationError – if sizes of
x
andvariables
do not match.
-
__init__
(x, fval, variables, status, raw_results=None, samples=None)[source]¶ - 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.samples (
Optional
[List
[SolutionSample
]]) – the solution samples.
- Raises
QiskitOptimizationError – if sizes of
x
andvariables
do not match.
Methods
__init__
(x, fval, variables, status[, …])- type x
Union
[List
[float
],ndarray
,None
]
Attributes
Returns the optimal function value.
Return the original results object from the optimization algorithm.
Returns the list of solution samples
Returns the termination status of the optimization algorithm.
Returns the list of variable names of the optimization problem.
Returns the list of variables of the optimization problem.
Returns the optimal value as a dictionary of the variable name and corresponding value.
Returns the optimal value found in the optimization or None in case of FAILURE.
-
property
fval
¶ Returns the optimal function value.
- Return type
float
- Returns
The function value corresponding to the optimal value found in the optimization.
-
property
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.
-
property
samples
¶ Returns the list of solution samples
- Return type
List
[SolutionSample
]- Returns
The list of solution samples.
-
property
status
¶ Returns the termination status of the optimization algorithm.
- Return type
OptimizationResultStatus
- Returns
The termination status of the algorithm.
-
property
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.
-
property
variables
¶ Returns the list of variables of the optimization problem.
- Return type
List
[Variable
]- Returns
The list of variables.
-
property
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.
-
property
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.