[Scipy-tickets] [SciPy] #1494: fmin_bfgs stuck in infinite loop (but only with new version)
SciPy Trac
scipy-tickets@scipy....
Sat Aug 13 17:57:36 CDT 2011
#1494: fmin_bfgs stuck in infinite loop (but only with new version)
---------------------------------+------------------------------------------
Reporter: scipydevwikiaccount | Owner: somebody
Type: defect | Status: new
Priority: normal | Milestone: Unscheduled
Component: Other | Version: 0.9.0
Keywords: |
---------------------------------+------------------------------------------
Hello. I have run into a frustrating problem where
scipy.optimize.fmin_bfgs will get stuck in an infinite loop. This problem
has only shown up with a more recent version of scipy.
I have developed a very simple exmaple which demonstrates this problem by
trying to minimize the function -1/e^x, for which the optimal value is at
-infinity.
A simple program to reproduce the error:
> import numpy,scipy,scipy.optimize
> f=lambda x: -numpy.e**-x
> fp=lambda x: -f(x)
> x0=numpy.asarray([0])
> x=scipy.optimize.fmin_bfgs(f,x0,fp)
> print 'before: x=%s, after: x=%s' % (x0,x)
Using python 2.6, numpy 1.4.0, and scipy 0.7.2, the code successfuly
finishs with a reasonably large negative value:
$ python crash.py
Warning: Desired error not necessarily achieveddue to precision loss
Current function value: -5184705528587058413568.000000
Iterations: 1
Function evaluations: 6
Gradient evaluations: 5
before: x=[0], after: x=[-50.]
Using python 2.7, numpy 1.6.1, and scipy 0.9.0, the code gets stuck in an
infinite loop and never terminates.
--
Ticket URL: <http://projects.scipy.org/scipy/ticket/1494>
SciPy <http://www.scipy.org>
SciPy is open-source software for mathematics, science, and engineering.
More information about the Scipy-tickets
mailing list