An everest-optimizers plugin for ropt
The ropt-eo package extends the ropt
module by providing a plugin that integrates optimization algorithms from the
everest-optimizers package. ropt itself is a robust optimization framework
designed for both continuous and discrete optimization workflows and is
extensible through its plugin architecture. Installing ropt-eo makes its
algorithms directly available within ropt.
Reference
ropt_eo.everest_optimizers.EverestOptimizers
Bases: Backend
OPT++ optimization backend for ropt.
This class provides an interface to several optimization algorithms from
the OPT++ library, enabling their use within ropt.
This backend cannot run concurrently in-process
OPT++ always creates an output file under a fixed name in the current
working directory, which everest-optimizers deletes again once the run
has started. Two runs at once in the same process therefore create and
delete the same file, and each one's output_file is a path they share.
To use this backend alongside anything else, prefix the method with
external/ and it runs in a process of its own, through the
external backend.
To select an optimizer, set the method field within the
optimizer section of the
EnOptContext configuration object to the desired
algorithm's name. Most methods support the general options defined in the
EnOptContext object. For algorithm-specific
options, use the options dictionary within the
optimizer section.
Below are the supported options:
Common Options:
debug, output_file, search_method, search_pattern_size, max_step, gradient_multiplier, max_iterations, max_function_evaluations, convergence_tolerance, gradient_tolerance
Method-specific Options:
| Method | Options |
|---|---|
| q_newton | |
| bcq_newton | |
| q_nips | merit_function, mu, centering_parameter, steplength_to_boundary, constraint_tolerance |