Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source
ocaml-lp : LP and MIP modeling in OCaml
This library is a modeling tool for Linear Programming (LP) and Mixed Integer Programming (MIP). The model can be exported to CPLEX LP file format, which can be loaded by various solvers. Importing models from LP file is also supported.
Example
let problem =
let open Lp in
let x = var "x" in
let y = var "y" in
let c0 = [x; c 1.2 * y] <$ [c 5.0] in
let c1 = [c 2.0 * x; y] <$ [c 1.2] in
let obj = Obj.Min [x; y] in
let cnstrs = [c0; c1] in
(obj, cnstrs)
let () =
if Lp.validate problem then
Lp.write "my_problem.lp" problem
else ()
Status
Currently only basic subset of LP file format is supported. (There is no standard of LP file, though.)
supported
Single objective (linear and quadratic)
Constraints (linear and quadratic)
Bounds
Variable types (General Integers and Binary Integers)