ipopt-hs: haskell binding to ipopt including automatic differentiation
a haskell binding to the nonlinear programming solver ipopt http://projects.coin-or.org/Ipopt
installation
- needs ipopt installed: For example if you have a `usrincludecoinIpStdCInterface.h` from your ipopt installation, use:
cabal install ipopt-hs --extra-include-dirs=/usr/include/coin
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.
Refer to examples/Test1.hs
for an example where the derivatives
are computed by hand, Test2.hs
for the use of
createIpoptProblemAD
and Test3.hs
for the highest level.
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 to decide which way to calculate (forward vs. backward mode)
probably doesn't work if
IpStdCInterface.h
has Number =/=CDouble
no binding to SetIntermediateCallback
garbage collection of
IpProblem
won't free C-side resources
Downloads
- ipopt-hs-0.2.0.0.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 && <3.5), base (>=4.6 && <4.7), containers, ipopt-hs, lens, mtl (>=2 && <3), vector (>=0.10 && <0.11) [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-03T02:34:23Z |
Distributions | |
Reverse Dependencies | 1 direct, 0 indirect [details] |
Executables | ipopt-hs_Test3, ipopt-hs_Test2, ipopt-hs_Test1 |
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 log] All reported builds failed [all 1 reports] |