M1QN3
/ std
¶
Description¶
M1QN3 is a quasi-Newtonian optimization algorithm originally developed at INRIA to minimize functions with a very high number of variables. The algorithm is described in Gilbert and Lemaréchal, 1989. The original code was written in Fortran; F. Chevallier translated it to Python in 2005.
M1QN3 is distributed under the GNU General Public License and listed in the Free Software Directory.
Yaml arguments¶
The following arguments are used to configure the plugin. pyCIF will return an exception at the initialization if mandatory arguments are not specified, or if any argument does not fit accepted values or type:
Optional arguments¶
niter: (optional)
maximum number of iterations
accepted type: <class ‘int’>
nsim: (optional)
maximum number of simulations
accepted type: <class ‘int’>
maxiter: (optional): 1
maximum number of iterations; if one of the two previousis missing,
niter
is set tomaxiter
andnsim
to 2 timesmaxiter
accepted type: <class ‘int’>
dxmin: (optional): 1e-20
absolute precision on x; optional
accepted type: <class ‘float’>
df1: (optional): 0.01
expected decrease for f
accepted type: <class ‘float’>
epsg: (optional): 1e-20
relative precision on the gradient
accepted type: <class ‘float’>
mode: (optional): 0
mode more M1QN3; for expert users only; see M1QN3 documentation for further details
accepted type: <class ‘int’>
nupdates: (optional): 5
number of updates; for experts only
accepted type: <class ‘int’>
Requirements¶
The current plugin requires the present plugins to run properly:
Requirement name |
Requirement type |
Explicit definition |
Any valid |
Default name |
Default version |
---|---|---|---|---|---|
simulator |
True |
True |
gausscost |
std |
Yaml template¶
Please find below a template for a Yaml configuration:
1minimizer:
2 plugin:
3 name: M1QN3
4 version: std
5 type: minimizer
6
7
8 # Optional arguments
9 niter: XXXXX
10 nsim: XXXXX
11 maxiter: XXXXX
12 dxmin: XXXXX
13 df1: XXXXX
14 epsg: XXXXX
15 mode: XXXXX
16 nupdates: XXXXX