Variables $0\le x< 1$, $y,z\ge 0$. We have a constraint $$y=(z+c)\frac{x^2}{1-x},$$ where constant $c>0$.

We partitioned $x$ into $n$ intervals of equal length and defined a new variable $\phi_i=1$ for $i=1,\ldots,n$ iff $x\in(r_i-1,r_i]$ (we set $x=r_i$) and zero otherwise.

So we have this constraint $$y=\sum_{i=1}^n(z+c)\left(\frac{r_i^2}{1-r_i}\right)\phi_i$$

How can we linearize this new constraint?

If we define a new non-negative variable $\xi_i=z\phi_i$ and add the required 3 additional constraints with $M$, can we rewrite the second constraint above as $$y=\sum_{i=1}^n\left(\frac{r_i^2}{1-r_i}\right)(\xi_i+c\phi_i)$$

  • 3
    $\begingroup$ You've discretized a continuous variable so that you now have the product of continuous variables with binary variable. This will be less accurate than (solving to global optimality) the original nonlinear optimization problem. It may or may not be easier to solve. I suggest you first solve the nonlinear problem, and compare solution time and accuracy with any discretized version. Many nonlinear optimization solvers perform linearization (of constraints), but do so adaptively and iteratively, so that the final solution is accurate. $\endgroup$ May 5, 2022 at 15:46

1 Answer 1


You are on the right track. Linearizing the product of a continuous variable ($\xi_i$) and a binary variable ($\phi_i$) is a FAQ. See, for instance, How to linearize the product of a binary and a non-negative continuous variable?. It requires that you be able to slap upper and lower bounds on $\xi_i$.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.