[Couenne] Piecewise Nonlinear objective function

Pietro Belotti petr.7b6 at gmail.com
Thu Mar 8 03:19:21 EST 2018


Hi Mahmut,

you can use binary variables to define a conditional expression.
Assuming you have three functions f1, f2, f3 all depending on x, define
three binaries b1,b2,b3. Suppose these functions are defined for -M<=x<=l,
l<=x<=u, u<=x<=M respectively, where M is a large number.
Then you need to ensure b1=1 if and only if x<=l, b2=1 if and only if
l<=x<=u, and b3=1 if and only if x>=u.This can be done with linear
constraints.
The resulting expression will be b1*f1(x) + b2*f2(x) + b2*f3(x).

Pietro

On Tue, Mar 6, 2018 at 3:47 PM, Mahmut Tutam <mtutam at email.uark.edu> wrote:

> Hello,
>
> I am using couenne to solve my research project. The objective function is
> a piecewise nonlinear function and conditions of the objective function
> depend on variables. If conditions depended on paramaters, I could be able
> to solve this problem because AMPL has already posted some examples for
> piecewise linear functions. Does anyone have any idea how to solve my
> problem by using couenne? Below is my objective function having variables
> W1, W2 and W3.
>
>
>
>
> Sincerely,
> Mahmut
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/couenne/attachments/20180308/439b21cd/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Capture.JPG
Type: image/jpeg
Size: 62071 bytes
Desc: not available
URL: <http://list.coin-or.org/pipermail/couenne/attachments/20180308/439b21cd/attachment-0001.jpe>


More information about the Couenne mailing list