[Scip] help
Gregor Hendel
hendel at zib.de
Fri Jun 6 16:47:52 CEST 2014
Dear Abdelkader Ouali,
welcome to the SCIP mailing list.
SCIP only accepts linear objective functions as input, every nonlinear
(or in your case piecewise linear) objective
has to be modeled via additional constraints.
The first attempt I would do in your situation is a linearization of all
|f_i x_i - f_j x_j| by adding two continuous variables y^(+)_{ij} >= 0,
y?_{ij} >= 0 and a constraint
f_i x_i - f_j x_j = y^(+)_{ij} - y?_{ij}. Then replace your objective
function by \sum \sum y^(+)_{ij} + y?_{ij}, and
you obtain the desired result.
Best regards,
Gregor
Am 06.06.2014 11:34, schrieb Abdelkader Ouali:
> Dear Scip users,
>
> I'am newer in SCIP solver, i know the basic steps to model and solve MIP
> using cpp wrapper for column generation.
>
> My question concern the objective function in SCIP. When adding
> variables to the problem.
> In the original problem, each time we use SCIPaddVar(), SCIP construct
> the objective as
> follow (notation in latex format) :
>
> *\min z = **\sum{i \invars} C_ivars_i*, where *C_i* is the objective
> of variable, and *vars_i* its associated variable.
>
> In my case, i don't want to use this formula to construct my objective
> function. To be more clear,
> my objective function has the form :
>
> *\min z=\sum_{I\in X}\sum_{J\in X}|f_I X_I -f_J X_J|*, where X is set of boolean variables, f_I
> their associated objective values.
> I want to know if there some c++ SCIP functions, that allow me, to express my objective function
> as i want ?
>
> Thank you for any response or documentations about this question
>
> ---
> Abdelkader Ouali
>
>
> _______________________________________________
> Scip mailing list
> Scip at zib.de
> http://listserv.zib.de/mailman/listinfo/scip
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listserv.zib.de/pipermail/scip/attachments/20140606/a73153c4/attachment.html>
More information about the Scip
mailing list