highs-lp: Linear Programming using HiGHS and comfort-array

[ bsd3, library, math ] [ Propose Tags ] [ Report a vulnerability ]

Simple interface to linear programming functions provided by HiGHS 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 fmap (mapSnd Array.toTuple) $ snd $
         LP.solve LP.choose [] [[1.*posIx, (-1).*negIx] ==. 314]
           (LP.Minimize,
            Array.fromTuple (23,42) :: Array PairShape Double)
      of
        Just (absol, (pos, neg)) ->
          printf "absol %f,  pos %f, neg %f\n" absol pos neg
        _ -> fail "HiGHS solver failed"

Alternatives: coinor-clp, comfort-glpk, hmatrix-glpk, glpk-hs

Flags

Manual Flags

NameDescriptionDefault
debug

Enable debug output

Disabled

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.0
Dependencies base (>=4.5 && <5), comfort-array (>=0.5.4 && <0.6), deepseq (>=1.3 && <1.7), guarded-allocation (>=0.0.1 && <0.1), linear-programming (>=0.0 && <0.1), non-empty (>=0.3.2 && <0.4), QuickCheck (>=2 && <3), storable-record (>=0.0.5 && <0.1), transformers (>=0.3 && <0.7), utility-ht (>=0.0.16 && <0.1) [details]
Tested with ghc ==8.6.5
License BSD-3-Clause
Author Henning Thielemann <haskell@henning-thielemann.de>
Maintainer Henning Thielemann <haskell@henning-thielemann.de>
Revised Revision 1 made by HenningThielemann at 2024-10-26T18:25:06Z
Category Math
Source repo this: darcs get https://hub.darcs.net/thielema/highs-lp/ --tag 0.0
head: darcs get https://hub.darcs.net/thielema/highs-lp/
Uploaded by HenningThielemann at 2023-12-22T19:40:12Z
Distributions
Downloads 60 total (9 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]