The latest version of ipopt-hs is 0.5.1.0-0.

ipopt-hs

Version 0.4.0.1 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 buildin 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 at least on the small 4-variable constrained optimization problem.

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 SetIntermediateCallback

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

Components