[SciPy-dev] Brent's Principal Axis Algorithm

Charles R Harris charlesr.harris at gmail.com
Tue Sep 8 23:10:50 EDT 2009


On Tue, Sep 8, 2009 at 7:28 PM, Eric Firing <efiring at hawaii.edu> wrote:

> Robert Kern wrote:
> > On Tue, Sep 8, 2009 at 12:44, Christoph
> > Schmidt-Hieber<c.schmidt-hieber at ucl.ac.uk> wrote:
> >> Dear all,
> >> I've started a Google code project (http://code.google.com/p/pypraxis/)
> to provide a Python interface to Brent's principal axis algorithm. It's
> basically a wrapper around some Fortran code from
> http://www.netlib.org/opt/. Brent's algorithm minimizes a function of
> several variables without calculating derivatives - not to be mistaken for
> scipy.optimize.brent, that only performs single-variable minimization. The
> algorithm typically outperforms other derivative- and gradient-free
> algorithms (Brent, 2002; http://wwwmaths.anu.edu.au/~brent/pub/pub011.html).
> In my experience, it converges substantially faster than fmin and
> fmin_powell from scipy.optimize when fitting models with 5 to 15 free
> parameters to experimental data. Notably, Mathematica uses this algorithm
> for minimization without derivatives
> >> (
> http://reference.wolfram.com/mathematica/tutorial/UnconstrainedOptimizationPrincipalAxisMethod.html
> ).
> >> I've provided some test cases and a wrapper that allow to compare it
> directly to the existing algorithms from scipy.optimize. Let me know if you
> think that the code could be a candidate for integration into
> scipy.optimize. It would obviously require some work to make it conform with
> the other functions that are already present.
> >
> > That would be great! Unfortunately, there is no license attached to
> > praxis.f, so it cannot be integrated into scipy until we find a
> > suitably licensed implementation of the algorithm.
> >
>
> http://wwwmaths.anu.edu.au/~brent/software.html
>
> This seems to imply that the code may be used freely; but it wouldn't
> hurt to ask the author.
>
>

No it doesn't, it implies that most of the code is GPL. ISTR looking at the
random number generation code on Brent's site and coming to a stop after
that bit. It may be that Brent would be open to relicensing the code, or
that the code in guestion is not just free, but BSD free, but I think it
would be advisable to contact Brent and find out.

Chuck
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/scipy-dev/attachments/20090908/7388b65b/attachment.html>


More information about the SciPy-Dev mailing list