Module Lbfgs_d.Make
Parameters
Signature
type stop= float -> state -> boolstopping criterion function type
val iter : state -> intiter sreturns the number of iterations for optimisation states
val prev_fv : state -> floatprev_fv sreturns the last objective function value of states
val fv_hist : state -> float listfv_hist sreturns the history of the objective function values of statesup to the last objective function value (i.e.,prev_f sis the same asList.hd (fv_hist s))
val init : ?corrections:int -> prms0:prms -> unit -> stateinit ?corrections ~prms0 ()returns an initialises optimisation state for initial parmatersprms0
val min : ?pgtol:float -> ?factr:float -> ?stop:stop -> f:f -> state -> floatmin ~f stateminimisesfwith respect to the states- parameter factr
tolerance in the termination test for the algorithm. The iteration will stop when
(f^k - f^{k+1})/max{ |f^k|, |f^{k+1}|, 1} <= factr*epsilon_float. Set e.g.factrto1e12for low accuracy,1e7for moderate accuracy and1e1for extremely high accuracy. Settingfactrto0.suppresses this termination test. Default:1e7.
- parameter pgtol
The iteration will stop when
max{ |proj g_i| : i = 0,..., n-1} <= pgtolwhereproj g_iis the ith component of the projected gradient. Settingpgtolto0.suppresses this termination test. Default:1e-5.
- parameter stop
An user-provided stopping criterion that terminates the optimization where
stop fv sistrue.