Hi,
let me give you an example in OPL because it is simple:
float a[i in 1..4]=0.5+i;
dvar float x[1..4];
minimize sum(i in 1..4) x[i]*a[i];
subject to
{
x[1]+x[2]>=0;
(x[1]>=0) && (x[3]-x[4]>=0) || (x[1]<=0) && (x[3]-x[4]<=0);
}
Here I used logical constraints to handle the non linear part.
regards
#CPLEXOptimizers#DecisionOptimization