En primer lugar, puede asumir $Q$ es simétrica, ya que de lo contrario se puede convertir el problema en uno que sí contenga una matriz simétrica mediante $P = \frac{1}{2}(Q + Q^T)$ . No es difícil demostrar que $P$ es simétrica y cumple $x^T P x = x^T Q x$ para todos $x$ .
Vanderbei's Programación lineal: Fundamentos y extensiones demuestra que $Q$ ser semidefinida positiva es una condición suficiente para que no haya brecha de dualidad. (Véanse las páginas 378-379 de la primera edición).
Bazaraa, Sherali y Shetty's _Programación no lineal: Teoría y algoritmos_ muestra que, para la programación no lineal general, la existencia de un punto de silla para la función lagrangiana es una condición necesaria y suficiente para que no haya brecha de dualidad. (Véase el teorema 6.2.5, págs. 269-270, tercera edición.) Obviamente, esto también es una condición necesaria y suficiente para la programación cuadrática. Tal vez haya una manera de simplificar el teorema sobre un punto de silla al caso especial de la programación cuadrática, pero no veo cómo hacerlo ahora mismo. ( Añadido : No parece haber una forma útil conocida de hacerlo. Véase el párrafo siguiente).
Añadido : Para el caso no convexo ( $Q$ no es semidefinida positiva), encontrar condiciones suficientes útiles para que no haya brecha de dualidad parece ser un problema de investigación en curso. Por ejemplo, véase "On the zero duality gap in nonconvex quadratic programming problems", de Zheng, Sun, Li y Xu ( Revista de Optimización Global , 2011, DOI: 10.1007/s10898-011-9660-y), en particular la introducción, donde dan una visión general de los resultados sobre las condiciones para que no haya brecha de dualidad, incluyendo algunas condiciones necesarias y suficientes para ciertos casos especiales de programación cuadrática - pero ninguna, por lo que puedo decir, en el caso general.