Hmm, that's too bad. Looks like there was a big refactoring of linesearch.py (
<a href="https://github.com/scipy/scipy/blob/master/scipy/optimize/linesearch.py">https://github.com/scipy/scipy/blob/master/scipy/optimize/linesearch.py</a> ) a couple of years ago (
<a href="https://github.com/scipy/scipy/commit/fefef2d73200d535b95ce0f21dcfe122301a967d">https://github.com/scipy/scipy/commit/fefef2d73200d535b95ce0f21dcfe122301a967d</a> )<div><br></div><div>Thanks for the help Nathaniel :)<br>
<br><div class="gmail_quote">On Tue, Apr 17, 2012 at 11:16 AM, Nathaniel Smith <span dir="ltr">&lt;<a href="mailto:njs@pobox.com">njs@pobox.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im">On Tue, Apr 17, 2012 at 7:14 PM, John Salvatier<br>
&lt;<a href="mailto:jsalvati@u.washington.edu">jsalvati@u.washington.edu</a>&gt; wrote:<br>
&gt; Well that&#39;s good news. I have scipy .9.0b1, what version do you have?<br>
<br>
</div>Less good news: I have 0.8.0 :-)<br>
<span class="HOEnZb"><font color="#888888"><br>
- N<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
&gt; On Tue, Apr 17, 2012 at 11:13 AM, Nathaniel Smith &lt;<a href="mailto:njs@pobox.com">njs@pobox.com</a>&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt; On Tue, Apr 17, 2012 at 6:35 PM, John Salvatier<br>
&gt;&gt; &lt;<a href="mailto:jsalvati@u.washington.edu">jsalvati@u.washington.edu</a>&gt; wrote:<br>
&gt;&gt; &gt; Hi all!<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; I am having a problem with the fmin_bfgs solver that&#39;s surprising to me.<br>
&gt;&gt; &gt; Here&#39;s the toy problem I&#39;ve set up:<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; from scipy.optimize import fmin_bfgs, fmin_ncg<br>
&gt;&gt; &gt; from numpy import *<br>
&gt;&gt; &gt; import numpy as np<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; def f(x ):<br>
&gt;&gt; &gt;     if x &lt; 0:<br>
&gt;&gt; &gt;         return 1.79769313e+308<br>
&gt;&gt; &gt;     else :<br>
&gt;&gt; &gt;         return x + 1./x<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; xs = fmin_bfgs(f, array( [10.]), retall = True)<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; The solver returns [nan] as the solution.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; The problem is designed to be stiff: between 0 and 1, it slopes upward<br>
&gt;&gt; &gt; to<br>
&gt;&gt; &gt; infinity but between 1 and infinity, it slopes up at a slope of 1. Left<br>
&gt;&gt; &gt; of 0<br>
&gt;&gt; &gt; the function has a &quot;nearly infinite&quot; value. If bfgs encounters  a value<br>
&gt;&gt; &gt; that&#39;s larger than the current value, it should try a different step<br>
&gt;&gt; &gt; size,<br>
&gt;&gt; &gt; no? Why does fmin_bfgs fail in this way?<br>
&gt;&gt;<br>
&gt;&gt; I can&#39;t reproduce this (on my computer it converges to 0.99999992),<br>
&gt;&gt; but have you tried making that &lt; into a &lt;=? The divide-by-zero at f(0)<br>
&gt;&gt; might be making it freak out.<br>
&gt;&gt;<br>
&gt;&gt; -- Nathaniel<br>
&gt;&gt; _______________________________________________<br>
&gt;&gt; SciPy-User mailing list<br>
&gt;&gt; <a href="mailto:SciPy-User@scipy.org">SciPy-User@scipy.org</a><br>
&gt;&gt; <a href="http://mail.scipy.org/mailman/listinfo/scipy-user" target="_blank">http://mail.scipy.org/mailman/listinfo/scipy-user</a><br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; SciPy-User mailing list<br>
&gt; <a href="mailto:SciPy-User@scipy.org">SciPy-User@scipy.org</a><br>
&gt; <a href="http://mail.scipy.org/mailman/listinfo/scipy-user" target="_blank">http://mail.scipy.org/mailman/listinfo/scipy-user</a><br>
&gt;<br>
_______________________________________________<br>
SciPy-User mailing list<br>
<a href="mailto:SciPy-User@scipy.org">SciPy-User@scipy.org</a><br>
<a href="http://mail.scipy.org/mailman/listinfo/scipy-user" target="_blank">http://mail.scipy.org/mailman/listinfo/scipy-user</a><br>
</div></div></blockquote></div><br></div>