[SCIP] Why SCIP reformulates bilinear constraints while writing problem in CIP format?

Stefan Vigerske stefan at math.hu-berlin.de
Mon Mar 11 02:15:41 CET 2019


Hi,

that's just the way how either AMPL produced the .nl file or the .nl 
file interface presents the instance to SCIP. I presume that at some 
point someone wanted a symmetric coefficient matrix for the quadratic 
term, so the bilinear terms got split up.

SCIP's presolve will take care of adding the terms up again.

Stefan

On 3/10/19 11:02 PM, Vladimir V. Voloshinov wrote:
> Dear SCIP developers,
> we use the following console command to convert NL-file to CIP format (as
> an input of ParaSCIP). E,g, for PROBLEm.nl it looks like
> $ echo "write problem PROBLEM.cip quit" | scipampl PROBLEM.nl -i
> It works correctly, but recently I noticed some strange reformulation of
> constraints in resulting CIP-file.
> It seems, that it concerns homogeneous expressions only. At least I did not
> found that  "reformulation" for "non-homogeneous" constraints.
> 
> E.g. if original problem has constraints on norm of vector of variables
> x[1]^2 + x[2]^2 = 1,
> then it will appear into the following form (no questions!)
> [quadratic] <cons_norm>: <x[1]>[C]^2 +<x[2]>[C]^2 == 1;
> 
> But if original problem has constraint on vectors product
> x[1]*y[2] - x[2]*y[1] <= 0,
> then it will appear in CIP file in the following (equivalent)  form:
> [quadratic] <cons_vp>:  +0.5<x[1]>[C]<y[2]>[C] -0.5<x[2]>[C]<y[1]>[C]
> -0.5<x[2]>[C]<y[1]>[C] +0.5<x[1]>[C]<y[2]>[C] <= 0;
> But why?! What is the reason for this transformation?
> 
> Best regards,
> Vladimir V. Voloshinov,
> head of lab. C-3 "Distributed computing algorithms",
> http://www.iitp.ru/ru/researchlabs/1040.htm,
> Center for Distributed Computing, http://distcomp.ru, Institute for
> Information Transmission Problems RAS
> 
> 
> _______________________________________________
> Scip mailing list
> Scip at zib.de
> https://listserv.zib.de/mailman/listinfo/scip
> 



More information about the Scip mailing list