[SciPy-user] lagrange multipliers in python

Dominique Orban dominique.orban at gmail.com
Fri Jun 15 16:03:40 EDT 2007


Bill Baxter wrote:
> On 6/16/07, Dominique Orban <dominique.orban at gmail.com> wrote:
>>
>> Bill Baxter wrote:
>> > On 6/16/07, Dominique Orban <dominique.orban at gmail.com> wrote:
>> >>
>> > scipy.optimize also has an L-BFGS implementation -- in pure C I
>> believe.  Is
>> > there something yours offers that scipy's doesn't?  (like constraints?)
>>
>> L-BFGS has been generalized to bound constraints only (resulting in the
>> code
>> L-BFGS-B), but the implementation is very different from that of L-BFGS.
>> NLPy
>> only contains L-BFGS for now and the implementation is standard. Since it
>> is all
>> in Python it is easy to read and modify (e.g, implement different
>> iteration-dependent scalings.) I am not sure which one is interfaced in
>> SciPy.
> 
> Yes, it's L-BFGS-B in Scipy, actually.  I was referring to constraints other
> than simple bounds.

Thanks, I will look into Scipy's interface. One of the ideas behind NLPy is that 
only fundamental building blocks for optimization are interfaces to 
state-of-the-art code in C or Fortran (e.g., some factorization routines, 
complex linesearches, ...) while I try to keep the algorithms themselves in 
Python. I haven't gotten around to implementing L-BFGS-B yet. There are also 
other ways to solve bound-constrained problems and still use an L-BFGS approx to 
the second derivatives.

Dominique



More information about the SciPy-User mailing list