Scipy.optimize Inequality Constraint – Which side of the inequality is considered?

Refer to https://docs.scipy.org/doc/scipy-0.18.1/reference/tutorial/optimize.html and scroll down to Constrained minimization of multivariate scalar functions (minimize), you can find that

This algorithm allows to deal with constrained minimization problems
of the form:

enter image description here

where the inequalities are of the form C_j(x) >= 0.

So when you define the constraint as

def constraint1(x):
    return x[0]+x[1]+x[2]+x[3]-1

and specify the type of the constraint as

con1 = {'type': 'ineq', 'fun': constraint1}

it automatically assumes that the constraint is in the standard form x[0]+x[1]+x[2]+x[3]-1>=0 i.e., x[0]+x[1]+x[2]+x[3]>=1

Leave a Comment