SciPy optimizers#
The gradient-based local optimizers and the global optimizers in SciPy are available to determine MTP parameters.
Local optimizers#
We can give the method name for scipy.optimize.minimize.
For CLI (motep.toml for motep train):
[[steps]]
method = "BFGS"
optimized = ["species_coeffs", "radial_coeffs", "moment_coeffs"]
For Python API:
from motep.trainer import Trainer
method = "BFGS"
optimized = ["species_coeffs", "radial_coeffs", "moment_coeffs"]
Trainer(..., steps=[{"method": method, "optimized": optimized}])
Methods like BGFS and Nelder-Mead can be specified.
Optimizers with constraints such as L-BFGS-B are also available,
but since the fixed parameters are handled on the MOTEP side,
they are not particularly recommended.
Global optimizers#
SciPy global optimizers can be specified.