qrunch.tools.minimizers.sequential

Sequential minimizer class that optimizes parameters with a given list of minimizers.

Classes

SequentialMinimizer

A class that minimizes a function sequentially using a list of minimizers.

class SequentialMinimizer

Bases: Minimizer

A class that minimizes a function sequentially using a list of minimizers.

__init__(minimizers: list[Minimizer]) None

Initialize the SequentialMinimizer.

Parameters:

minimizers (list[Minimizer]) – A list of multivariable minimizers to use in sequence.

Return type:

None

minimize(function: Callable[[list[ndarray[Any, dtype[float64]]]], list[float]], initial_guess: ndarray[Any, dtype[float64]] | None, iteration: int | None, bounds: tuple[float, float] | list[tuple[float, float]] | None = None, circuit: Circuit | None = None, operator: HermitianPauliSum | None = None) MinimizerResult

Sequentially minimize the function with the provided list of minimizers.

Parameters:
  • function (Callable[[list[ndarray[Any, dtype[float64]]]], list[float]]) – The function to minimize. Takes a numpy float as input and outputs a scalar value.

  • initial_guess (ndarray[Any, dtype[float64]] | None) – The initial guess for the values of the parameters.

  • iteration (int | None) – The current iteration of the, if applicable.

  • bounds (tuple[float, float] | list[tuple[float, float]] | None) – The bounds for the parameters.

  • circuit (Circuit | None) – The parameterized circuit to be minimized.

  • operator (HermitianPauliSum | None) – The operator used in the expectation value.

Return type:

MinimizerResult