I realize I should probably have posted this on the Julia-Opt group, but I didn't know about it. I have to look around JuMP more to understand its design. I have 10+ year of successful research with the ampl.jl model (only in Python) so I'm quite confident that it has most of what a continuous optimizer needs, with the exception perhaps of cone optimization. Also I'd like to ask why you would reimplement backward AD. Some people spend their entire career writing reliable AD software. It's not a judgement on your code; I would have interfaced ADOL-C which already provides much of what optimization needs, including Jacobian-vector products and Hessian-vector products (and Hessian of the Lagrangian - vector products).
On Sunday, April 13, 2014 2:48:26 AM UTC-7, Miles Lubin wrote: > > Hi Dominique, > > This will definitely be very useful for accessing the large array of > problem instances written in AMPL. > > As for writing solvers in Julia around this format, I'm admittedly biased > but I don't think it's an ideal approach. We already have a pure-Julia > implementation of AD for exact sparse Hessians in JuMP. That said, solvers > written in Julia shouldn't be tied to a particular AD implementation or > modeling language; ideally they will just implement a nonlinear > MathProgBase interface (which doesn't quite exist yet), on top of which > they could be called from JuMP or AMPL. I agree with Tony that it could be > very interesting to use this interface as an interchangeable backend for > JuMP's AD. > > Also, I'm not sure if you've considered it, but by licensing this > interface under GPL, all solvers that use it must be released under GPL > also, I believe. > > Miles > > On Sunday, April 13, 2014 6:14:51 AM UTC+1, Dominique Orban wrote: >> >> I just put together a few C and Julia files that let users read models in >> the AMPL modeling language for optimization. >> >> https://github.com/dpo/ampl.jl >> >> It's not quite a module or a package; please bear with me as I'm still >> learning Julia. This gives access to a huge collection of problems already >> written in AMPL, e.g., >> >> http://orfe.princeton.edu/~rvdb/ampl/nlmodels/index.html >> https://github.com/mpf/Optimization-Test-Problems (many of the same >> problems, without the solve command) >> http://netlib.org/ampl/models/ >> etc. >> >> AMPL computes first and second derivatives for you, so it should be easy >> to pass such problems to solvers written in Julia, and to write solvers >> around this model format. >> >> Cheers. >> >
