@hackage comfort-glpk0.1
Linear Programming using GLPK and comfort-array
Categories
License
BSD-3-Clause
Maintainer
Henning Thielemann <haskell@henning-thielemann.de>
Links
Versions
Installation
Tested Compilers
Dependencies (8)
- base >=4.5 && <5
- deepseq >=1.3 && <1.7
- transformers >=0.3 && <0.7
- comfort-array >=0.4 && <0.6
- glpk-headers >=0.4.1 && <0.6
- linear-programming >=0.0 && <0.1 Show all…
Dependents (0)
Package Flags
debug
(off by default)
Enable debug output
Simple interface to linear programming functions provided by GLPK
using the flexible Array shape framework from comfort-array
.
E.g. you can use Shape.Tuple
to convert safely
between nested tuples and arrays with the same number of elements.
type X = Shape.Element type PairShape = Shape.NestedTuple Shape.TupleIndex (X,X) case Shape.indexTupleFromShape (Shape.static :: PairShape) of (posIx,negIx) -> case mapSnd (mapSnd Array.toTuple) <$> LP.simplex [] [[1.*posIx, (-1).*negIx] ==. 314] (LP.Minimize, Array.fromTuple (23,42) :: Array PairShape Double) of (Right (LP.Optimal, (absol, (pos, neg)))) -> printf "absol %f, pos %f, neg %f\n" absol pos neg _ -> fail "GLPK solver failed"
Alternatives: coinor-clp
, hmatrix-glpk
, glpk-hs