Documentation


Model.addGenConstrPWL()

addGenConstrPWL ( xvar, yvar, xpts, ypts, name="" )

Add a new general constraint of type GRB.GENCONSTR_PWL to a model.

A piecewise-linear (PWL) constraint states that the relationship <span>$</span>y =
f(x)<span>$</span> must hold between variables <span>$</span>x<span>$</span> and <span>$</span>y<span>$</span>, where <span>$</span>f<span>$</span> is a piecewise-linear function. The breakpoints for <span>$</span>f<span>$</span> are provided as arguments. Refer to the description of piecewise-linear objectives for details of how piecewise-linear functions are defined.

Arguments:

xvar (Var): The <span>$</span>x<span>$</span> variable.

yvar (Var): The <span>$</span>y<span>$</span> variable.

xpts (list of float): The <span>$</span>x<span>$</span> values for the points that define the piecewise-linear function. Must be in non-decreasing order.

ypts (list of float): The <span>$</span>y<span>$</span> values for the points that define the piecewise-linear function.

name (string, optional): Name for the new general constraint.

Return value:

New general constraint.

Example usage:

  gc = model.addGenConstrPWL(x, y, [0, 1, 2], [1.5, 0, 3], "myPWLConstr")