iwopy.core.optimizer

Classes

Optimizer

Abstract base class for optimization solvers.

Module Contents

class iwopy.core.optimizer.Optimizer(problem: iwopy.core.problem.Problem, name: str = 'optimizer')[source]

Bases: iwopy.core.base.Base

Abstract base class for optimization solvers.

Parameters:
problem: iwopy.core.problem.Problem

The problem to optimize

name: str = 'optimizer'

The name

finalize(opt_results: iwopy.core.opt_results.SingleObjOptResults | iwopy.core.opt_results.MultiObjOptResults | int | None = None, verbosity: int = 1) → None[source]

This function may be called after finishing the optimization.

Parameters:
opt_results: iwopy.core.opt_results.SingleObjOptResults | iwopy.core.opt_results.MultiObjOptResults | int | None = None

The optimization results object

verbosity: int = 1

The verbosity level, 0 = silent

initialize(verbosity: int = 0, /) → None
initialize(*, verbosity: int = 0) → None

Initialize the object.

Parameters:
verbosity: int = 0

The verbosity level, 0 = silent

print_info() → None[source]

Print solver info, called before solving

abstract solve(verbosity: int = 1, callbacks: list[iwopy.core.optimizer_callback.OptimizerCallback] | None = None) → iwopy.core.opt_results.SingleObjOptResults | iwopy.core.opt_results.MultiObjOptResults | None[source]

Run the optimization solver.

Parameters:
verbosity: int = 1

The verbosity level, 0 = silent

callbacks: list[iwopy.core.optimizer_callback.OptimizerCallback] | None = None

Ordered callbacks for intermediate optimization states.

Returns:

results – The optimization results object

property initialized : bool

Flag for finished initialization

Returns:

initialized – True if initialization has been done

name = 'optimizer'
problem