[SciPy-User] fmin_bfgs stuck in infinite loop
Mon Oct 24 12:50:19 CDT 2011
the OP is a colleague of mine and I looked quickly at the code. The
infinite loop in the OP's illustrating script comes from the "while 1"
loop in l.144 of linesearch.py : becuse phi0 is np.nan, phi1 is returned
as np.nan as well, and the break condition is never met. There is an
easy fix :
stp, phi1, derphi1, task = minpack2.dcsrch(alpha1, phi1, derphi1,
c1, c2, xtol, task,
amin, amax, isave,
if task[:2] == asbytes('FG') and not np.isnan(phi1):
alpha1 = stp
phi1 = phi(stp)
derphi1 = derphi(stp)
but it is not a nice kludge.... Is there a better way to secure this
while 1 loop? I am sure I am not covering all possible pathological
cases with adding "not np.isnan(phi1)" in the code above.
On 08/14/2011 01:38 AM, b9o2jnbm tsd71eam wrote:
> I have run into a frustrating problem where scipy.optimize.fmin_bfgs
> will get stuck in an infinite loop.
> I have submitted a bug report:
> but would also like to see if anybody on this list has any suggestions
> or feedback.
> This message has been scanned for viruses and
> dangerous content by *MailScanner* <http://www.mailscanner.info/>, and is
> believed to be clean.
> SciPy-User mailing list
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the SciPy-User