POLIP

library for polynomially constrained
mixed-integer programming

polip :: contents / maintainers / instances / archive / bibliography

This page describes the PIP-format - a file format for storing polynomially constraint mixed-integer programs. The syntax is a straight-forward extension of the usual file format for storing linear programs (LPs) and mixed-integer programs (MIPs). Products are written using "*" and powers using "^" (hence these characters are not allowed in variable names). See below for an example.

Token Description


<Program> = <Objective> ? <Constraints> ? <Bounds> ? <General> ? <Binary>? "End"

<Objective> = "Maximize"|"Minimize" <Label>? <Polynomial>?

<Label> = <Name>":"

<Polynomial> = <Monomial>*

<Monomial> = (<Number>|"+"|"-") (<Name>("^"<Integer>)?)*

<Constraints> = "Subject to" ( <Label> ? <Polynomial> ("<="|"=="|"="|">=") <Number> )*

<Bounds> = "Bounds" ( (("-inf"|<Number>) "<=")? <Name> (("<=") ("+inf"|"inf"|<Number>))? )*

<General> = "General" <Name>*

<Binary> = "Binary" <Name>*

Additional Requirements

Keywords

The following are keywords:

The keywords are case-insensitive.

Example


Maximize
 obj: x1 * x2 + 2 x2
Subject to
 c1: -2 x1 + x2 x3 + 3 x4 <= -1
 c2: 2 x1 +4 x4 == 30
 c3: x2^3 == 2
 c4: x4 = 1
Bounds
 -inf <= x1 <= 10
 2 <= x2
 x3 <= 2
Binary
 x4
End



© by maintainers  |  last update by   |  imprint