AbstractUnconstrainedMinimizer

class pmrf.optimize.AbstractUnconstrainedMinimizer

Bases: Module

Abstract interface for unconstrained minimization algorithms.

It does not honour bounds, so it moves through raw space, where each parameter’s bijector keeps it inside its bounds.

abstractmethod run(fn: Callable[[PyTree, Any], Shaped[jaxlib._jax.Array, '']], y0: PyTree, args: Any, max_iter: int = 1024, **kwargs) → MinimizeResult

Execute the minimization algorithm.

Parameters:
  • fn (callable) – The objective function to minimize.

  • y0 (PyTree) – The initial parameter guess.

  • args (Any) – Args to pass to fn.

  • max_iter (int = 1024) – The maximum number of iterations to take.

  • **kwargs – Runtime arguments forward to the solver backend.

Returns:

An instance of pmrf.optimize.MinimizeResult.

Return type:

results

property honours_bounds: bool

never.

Type:

Whether the minimiser keeps its values inside the bounds it is given