addGenConstrMin ( resvar, vars, constant=None, name="" )

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

A MIN constraint <span>$</span>r = \min\{x_1,\ldots,x_n,c\}<span>$</span> states that the resultant variable <span>$</span>r<span>$</span> should be equal to the minimum of the operand variables <span>$</span>x_1,\ldots,x_n<span>$</span> and the constant <span>$</span>c<span>$</span>.

You can also add a MIN constraint using the min_ function.


resvar (Var): The variable whose value will be equal to the minimum of the other variables.

vars (list of Var, or tupledict of Var values): The variables over which the MIN will be taken.

constant (float, optional): The constant to include among the arguments of the MIN operation.

name (string, optional): Name for the new general constraint. Note that name will be stored as an ASCII string. Thus, a name like 'A<span>$</span>{\rightarrow}<span>$</span>B' will produce an error, because '<span>$</span>{\rightarrow}<span>$</span>' can not be represented as an ASCII character. Note also that names that contain spaces are strongly discouraged, because they can't be written to LP format files.

Example usage:

  # x5 = min(x1, x3, x4, 2.0)
  model.addGenConstrMin(x5, [x1, x3, x4], 2.0, "minconstr")

  # overloaded forms
  model.addConstr(x5 == min_([x1, x3, x4], constant=2.0), name="minconstr")
  model.addConstr(x5 == min_(x1, x3, x4, constant=2.0), name="minconstr")