ConstraintsYou can create constraints in two ways: following an objective and the words subject to, or in a dedicated constraints block. Dimensions and convexity will be automatically checked. A constraint is an expression, a relation sign (<=, == or >=) and another expression. You can also index constraints. Valid constraints have one of three forms:
Some examples: constraints
x >= 0 sum(x) <= 5 # Constraint on sum of indexed variables: sum[i=1..3](z[i]) <= Ztotal # Constraint on fourth and fifth elements of z: z[3] == z[4] end For convenience, you can also use twosided constraints of the following form: constraints
x_min <= x <= x_max end You can index constraints in conjunction with indexed variables or parameters. For example: constraints
x_min <= x[t] <= x_max, t=0..T A[i]*x <= b[i], i=1..3 A[i]*sum[j=0..5](w[j]) == 0, i=1..3 end Notes
