Search code examples
optimizationquadratic-programmingbranch-and-bound

What is the difference between Integer Quadratic Programming versus Mixed Integer Quadratic Programming?


I am new to the optimization problem of Quadratic programming. In equation 8 of the following paper: here , there is an equation:

enter image description here

The authors state that this is an 'Integer Quadratic Programming (IQP)' formula.

Alternatively, in another website: here , there is the following equation which is described as a 'Mixed Integer Quadratic Programming (MIQP)' formulation:

enter image description here

From my perspective, both of the equations shown above are similar, with the only difference being that the MIQP formula has '1/2' included in it.

1) I am looking for an explanation on the differences between the IQP and MIQP

2) In addition, I am interested to apply quadratic programming to the assignment problem, thus, looking for any insight into which should be used (i.e., IQP vs. MIQP) and when.


Solution

  • Integer Quadratic Programming (IQP) implies there are no continuous variables in the model: all variables are discrete. Mixed Integer Quadratic Programming (MIQP) allows both discrete and continuous variables. If your model only has discrete variables it is both an MIQP and an IQP. All popular solvers are of the MIQP type, so I tend to use MIQP even if I don't have continuous variables. IQP as model type is not often used. I don't think this is really something to worry about.