[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Help-gsl] GSL Error code in multimin optimization
From: |
Brian Gough |
Subject: |
Re: [Help-gsl] GSL Error code in multimin optimization |
Date: |
Mon, 22 Feb 2010 22:01:16 +0000 |
User-agent: |
Wanderlust/2.14.0 (Africa) Emacs/22.1 Mule/5.0 (SAKAKI) |
At Tue, 16 Feb 2010 14:30:02 -0500,
Sushmita Roy wrote:
> I am using the GSL multimin package to find the minima of
> a high (~1000) dimensional function. I am using the
> "gsl_multimin_fdfminimizer_vector_bfgs2"
> optimizer and I am following the example in the GSL multimin manual.
> However, every time I
> execute an iteration using "gsl_multimin_fdfminimizer_iterate" I always
> get the error code GSL_ENOPROG,
> which stands for "iteration is not making progress..".
>
> I know that there are several calls to my likelihood and its derivative
> functions, so the optimizer
> does search for some time. But I am just concerned about the severity of
> this error code, and
> whether it indicates that my results are wrong. I have checked the
> likelihood and derivative
> functions and I am quite certain that I have them correctly.
>
If you still have the problem, an example program might help people to
see what is wrong.
In the code there are only 2 places where ENOPROG is returned
if (pnorm == 0.0 || g0norm == 0.0 || state->fp0 == 0)
{
gsl_vector_set_zero (dx);
return GSL_ENOPROG;
}
if ((a-alpha)*fpa <= GSL_DBL_EPSILON) {
/* roundoff prevents progress */
return GSL_ENOPROG;
};
--
Brian Gough
GNU Scientific Library -
http://www.gnu.org/software/gsl/