Simplex parameters in MINIMIZE

25 visualizações
Pular para a primeira mensagem não lida

Alexandre Voute

não lida,
27 de out. de 2022, 07:56:4327/10/2022
para molpro-user
Dear Molpro experts,
I am using the MINIMIZE command to find the minimum of a quantity depending on a geometrical variable, say, "r".
Here I am using the simplex method. I (think I) understand the method (nicely described in Szabo and Ostlund's "Modern Quantum Chemistry", appendix C) but then I do not quite understand in the Molpro manual what the "simplex parameters" are in relation to the THRESH option (the default being 1E-2).
May someone give more details about this?
Thank you.
Best regards,
Alexandre Voute

andreas...@gmail.com

não lida,
27 de out. de 2022, 12:04:1427/10/2022
para molpro-user
Dear Alexandre Voute,

the Simplex consists of N+1 (N being the number of parameters of the function to be minimised) sets of parameters
and their corresponding function values. Normally you start with a set of parameters which provide some
first guess of the optimal values, say: {p_1,p_2,...p_N}. The starting simplex then is computed by adding the different
parameter sets:
{p_1+delta,p_2,...p_N}
{p_1,p_2+delta,...p_N}
...
{p_1,p_2,...p_N+delta}

with some reasonable change of the parameters by a value of delta (should not bee too small, otherwise the
algorithm will not properly work). For these the function is evaluated and you get a set of N+1 values
{f_1,f_2,...,f_N+1} and then the actual optimisation is started. As far as I know, convergence is achieved as soon as
     |f_high-f_low| < thresh
is below a given threshold (set to thresh=1d-2 in Molpro's implementation). f_high is the highest function value of
the Simplex and f_low the lowest one. Once the above convergence criterion is obeyed the set of parameters
corresponding to the f_low value provide the solution.

Best wishes,
Andreas

Alexandre Voute

não lida,
2 de nov. de 2022, 09:35:0602/11/2022
para molpro-user
Dear Andreas,
Thank you very much for the detailed explanation, in particular for specifying what is the quantity which is compared to THRESH.
From what you say, I suppose that the initial delta_n (n=1...N) are given by VSTEP (by default, i.e. when VSCALE=2, those are given in units of the initial guess values of p_1,...,p_N). Is that right?
Best,
Alexandre

andreas...@gmail.com

não lida,
3 de nov. de 2022, 12:29:5103/11/2022
para molpro-user
Dear Alexandre,

yes, this is true, the variable VSTEP corresponds to the delta from my example. I have used the Simplex method
just recently, by the way, and observed that it can sometimes help to restart the Simplex when the first one did
not quite converge to the precision wanted. The reason for this is that the Simplex method can sometimes make
tiny steps once it reached the valley with the minimum and then it can take a very long time until convergence
is reached. If you take the optimised parameters from the first Simplex and do a restart using again parameter
changes with VSTEP, however, there is a good chance that the convergence towards the minimum is accelerated
because then the algorithm will try out greater steps again.

Alexandre Voute

não lida,
3 de nov. de 2022, 13:27:4303/11/2022
para molpro-user
Dear Andreas,
Great, thank you for the answer and the suggestions!
Best wishes,
Alexandre
Responder a todos
Responder ao autor
Encaminhar
0 nova mensagem