# RS01156: CPLEX CAN CRASH WITH A MIQCP WITH A QUADRATIC CONSTRAINT WITH AN ALL BINARY QUADRATIC EXPRESSION AND NO LINEAR TERM.

## APAR status

### Closed as fixed if next.

## Error description

With quadratic expressions containing only binary variables (either in the objective or constraints), CPLEX can make an indefinite Q matrix positive semi definite by adding a diagonal to the Q matrix and subtracting a linear expression of the binaries to compensate. This can be done since the square of a binary equals the binary. However, for quadratic constraints, if there is no linear term to start with, CPLEX can crash when doing this. Problem occurs with all supported versions, including CPLEX 12.5. Expect a fix in the first fixpack for 12.5, plus any fixpacks for earlier versions. Meanwhile, turn of the presolve qpmakepsd to avoid the problem. However, this means CPLEX requires the Q matrix to positive semi definite upon input. RTC-10846 created for this. This has been fixed in CPLEX 12.5, which is now available.

## Local fix

Turn off the presolve qpmakepsd parameter. If the user is relying on this feature to manage an indefinite Q matrix with all binaries, the user can perform the convexification himself. This involves adding a suitably large diagonal to the Q matrix, and subtracting a linear term using the corresponding diagonal vector. The simplest values for the diagonal vectors consist of using the absolute off diagonal terms of the rows or columns of Q, whichever is larger. Better: upgrade to CPLEX 12.5 or later, which fixes this. Initial claim that 12.5.0.0 does not fix this was incorrect; this was fixed in May of 2012.

## Problem summary

Potential crash on models with quadratic constraints containing all binary variables and no linear terms.

## Problem conclusion

## Temporary fix

Upgrade to 12.5 or later.

## Comments

## APAR Information

### APAR number

RS01156

### Reported component name

ILOG CPLEX

### Reported component ID

5724Y4800

### Reported release

C40

### Status

CLOSED FIN

### PE

NoPE

### HIPER

NoHIPER

### Special Attention

NoSpecatt

### Submitted date

2012-11-07

### Closed date

2012-12-27

### Last modified date

2012-12-27

### APAR is sysrouted FROM one or more of the following:

### APAR is sysrouted TO one or more of the following:

## Fix information

## Applicable component levels

### RC50 PSY

UP

### Document information

**More support for:**
IBM ILOG CPLEX Optimization Studio

**Software version:**
C40

**Reference #:**
RS01156

**Modified date:**
27 December 2012