ipopt-hs: haskell binding to ipopt and nlopt including automatic differentiation
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
Modules
[Index]
Flags
Automatic Flags
Name | Description | Default |
---|---|---|
build_examples | build executable from examples/ | Disabled |
nlopt | also include nlopt bindings | Enabled |
Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info
Downloads
- ipopt-hs-0.4.0.1.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
- No Candidates
Versions [RSS] | 0.0.0.0, 0.2.0.0, 0.3.0.0, 0.4.0.0, 0.4.0.1, 0.4.2.0, 0.5.0.0, 0.5.1.0 |
---|---|
Dependencies | ad (>=3.4), ansi-wl-pprint (>=0.6.7), base (<5), containers (<0.6), criterion, ipopt-hs, lens (>=3.10 && <5), linear, mtl (>=2 && <3), optimization (>=0.1.3), random-shuffle, Rlang-QQ, splines, template-haskell, uu-parsinglib (>=2.8), vector (>=0.10 && <0.11), vector-space (>=0.8.6) [details] |
License | BSD-3-Clause |
Author | Adam Vogt <vogt.adam@gmail.com> |
Maintainer | Adam Vogt <vogt.adam@gmail.com> |
Category | Optimisation, Math, Numeric |
Source repo | head: darcs get http://code.haskell.org/~aavogt/ipopt-hs |
Uploaded | by AdamVogt at 2014-02-10T19:45:50Z |
Distributions | |
Reverse Dependencies | 1 direct, 0 indirect [details] |
Executables | ipopt-hs_Tests |
Downloads | 5409 total (1 in the last 30 days) |
Rating | (no votes yet) [estimated by Bayesian average] |
Your Rating | |
Status | Docs uploaded by user Build status unknown [no reports yet] |