External Optimizers
ropt.plugins.optimizer.external.ExternalOptimizer
Bases: Optimizer
Plugin class for optimization using an external process.
This class enables optimization via an external process, which performs the optimization independently and communicates with this class over pipes to request function evaluations, report optimizer states, and handle any errors.
Typically, the optimizer is specified within an
OptimizerConfig via the method field,
which either provides the algorithm name directly or follows the form
plugin-name/method-name. In the first case, ropt searches among all
available optimizer plugins to find the specified method. In the second
case, it checks if the plugin identified by plugin-name contains
method-name and, if so, uses it. Both of these are not supported by the
external optimizer class. Instead, it requires that the method field
includes both the plugin and method names in the format
external/plugin-name/method-name or external/method-name. This ensures
the external optimizer can identify and launch the specified optimization
method method-name and launch it as an external process.