ipopt-hs
Version 0.4.2.0 revision 0 uploaded by AdamVogt.
Package meta
- Synopsis
- haskell binding to ipopt and nlopt including automatic differentiation
- Description
a haskell binding to the nonlinear programming solver Ipopt. Bindings to NLopt are also included.
installation
- needs the c library ipopt installed. Also by default a binding to
nlopt is included. Nlopt by default does not include shared libraries,
which seems to be needed to run things from ghci (ie. you need to
./configure --enable-shared
when building nlopt).
A embedded language, similar to the one provided by glpk-hs, is defined in Ipopt.NLP. The goal is to define problems at a level similar to other "algebraic modeling languages", but retain some of the safety and flexibility available in haskell. There is some overhead http://code.haskell.org/~aavogt/ipopt-hs/examples/bench.html but perhaps it is negligible for your uses.
Current limitations include:
copying in every iteration happens between between Data.Vector.Storable and Data.Vector might be avoidable somehow. Currently it is done because AD needs a Traversable structure, but Storable vectors are not traversable.
sparseness of derivatives isn't used
no binding to sensitivity parts as-implemented in ipopt
- Author
- Adam Vogt <vogt.adam@gmail.com>
- Bug reports
- n/a
- Category
- Optimisation, Math, Numeric
- Copyright
- n/a
- Homepage
- n/a
- Maintainer
- Adam Vogt <vogt.adam@gmail.com>
- Package URL
- n/a
- Stability
- n/a