[SciPy-user] another optimization oddity
oliphant.travis at ieee.org
Fri Apr 5 11:04:26 CST 2002
On Fri, 2002-04-05 at 08:10, Steve M. Robbins wrote:
> On Fri, Apr 05, 2002 at 04:55:24PM +0200, Henk Jansen wrote:
> > As the owner of this prpblem I did some homework. I guess I've found a
> > bug in "scipy.minpack.leastsq.py" :
> Speaking of odd things in scipy.optimize ...
> I have a problem that is too large for the typical O(N^2) methods, so I
> implemented steepest descent and nonlinear conjugate gradient methods.
Any chance you'd share these routines back?
> I wanted to use the function line_search() in optimize.py, but I am
> mystified by its use of the zoom() function:
> def zoom(a_lo, a_hi):
> That looks like an uncompleted stub function to me. Correct?
It looks like I never finished the line_search algorithm. It's not used
in any of the other subroutins. The BFGS algorithm uses the
line_search_BFGS algorithm which does pretty much the same thing.
It's not documented, but it's pretty clear. I suspect we should export
one of these line algorithms and make it part of the published
line_search_BFGS(f, xk, pk, gfk, args=(), c1=1e-4,alpha0=1)
f -- the function
xk -- "reference vector"
pk -- minimization direction Minimize f(xk+alpha*pk) over alpha
gfk -- vector giving the gradient of f at xk --- numbers not a function.
args --- extra arguments to the function.
c1 --- an accuracy constraint
alpha0 --- starting guess for alpha
More information about the SciPy-user