This is the mail archive of the
gsl-discuss@sources.redhat.com
mailing list for the GSL project.
Re: minimization using the Brent algorithm (brent.c)
- From: Z F <mail4me9999 at yahoo dot com>
- To: Fabrice Rossi <rossi at ufrmd dot dauphine dot fr>
- Cc: Brian Gough <bjg at network-theory dot co dot uk>, Faheem Mitha <faheem at email dot unc dot edu>, gsl-discuss at sources dot redhat dot com
- Date: Mon, 17 Mar 2003 12:08:52 -0800 (PST)
- Subject: Re: minimization using the Brent algorithm (brent.c)
Dear Fabrice Rossi,
> > Sorry for my rudness, but I think that it is not prudent to require
> > a "test" point inside the interval. (I know that standard libraries
> > require that). The test F(a)>F(x)F(a) or F(y)>F(b) so the test is
> > useless and only requires an extra computation of F() which might
> be
> > time consuming.
>
> The purpose of requiring F(a)>F(x)<F(b) is not only a protection
> against
> stupid mistake.
>
> First of all, it guarantees that there is actually a minimum in the
> open
> interval ]a,b[ (as long as F is continuous). The whole rationnal of
> Brent algorithm is to take an input interval on which the studied
> function has a minimum (strictly inside the interval) and to produce
> (after a given number of steps or up to a given precision) a smaller
> interval, included into ]a,b[ that satisfies the same requirement.
>
> The fact that there might be a point y such that F(y)>F(a) or
> F(y)>F(b)
> is quite irrelevent and cannot be rule out by an efficient algorithm
> unless you make stronger assumption on F (in which case using
> derivatives might be a good idea).
This is the answer. The existance of the point y is irrelevant, but
the function will fail if y is used as the first guess of the extremum.
This is what I meant, it is a useless test. If the test is passed, you
know that a minimum exists, if the test is failed you have not learned
anything. So why complain? The function complains that it could not
check that the root exists not that it does not exist. If you like the
test so much, there should be a way to force the algorithm to proceed
even it the test is failed since it does not tell you anything.
> Moreover, evaluation of F(x) is required for the Brent algorithm (or
> the
> golden section search), so there is no useless evaluation.
The x, required for golden/Brent is not just any x, it is a particular
place inside the interval (a;b). So the function call is useless.
Thank you,
Lazar
__________________________________________________
Do you Yahoo!?
Yahoo! Platinum - Watch CBS' NCAA March Madness, live on your desktop!
http://platinum.yahoo.com