I guess that your quadratic matrix C'G is indeed not positive semi-definite, and
thus, your quadratic constraint is not convex. So why does it work when the
variables are binary? This comes from Gurobi's presolve, which is able to
convert your matrix into a positive semi-definite one, by exploiting the fact
that for binary variables the equation x = x*x is valid. Then, we can add zeros
in the form of "x*x - x" to the constraint until the diagonal elements of the
matrix is large enough to make it PSD. Alternatively, one can linearize products
of a binary variable with some other (potentially non-binary) variable to get
rid of the quadratic constraints.
Depending on the circumstances, Gurobi does one or the other. If the variables
are continuous, however, there is no way to turn a non-PSD matrix into an
equivalent system with a PSD matrix.
Tobias
> --
>
> ---
> You received this message because you are subscribed to the Google Groups
> "Gurobi Optimization" group.
> To unsubscribe from this group and stop receiving emails from it, send an email
> to
gurobi+un...@googlegroups.com <mailto:
gurobi+un...@googlegroups.com>.
> For more options, visit
https://groups.google.com/d/optout.
--
-----------------------------------------------------------------
Dr. Tobias Achterberg
Senior Software Developer
Gurobi Optimization
achte...@gurobi.com
-----------------------------------------------------------------
Sitz der Gesellschaft: Bad Homburg v.d.H.
Registergericht: Bad Homburg v.d.H., HRB 12607
Geschäftsführer: Robert E. Bixby, Dirk Zechiel