Cette question concerne les problèmes de programmation quadratique avec des contraintes de boîte (box-QP), c'est-à-dire des problèmes d'optimisation de la forme
- minimiser sous réserve de x ∈ [ 0 , 1 ] n .
Si était semi-défini positif, alors tout serait bien, convexe et facile, et nous pourrions résoudre le problème en temps polynomial.
En revanche, si nous avions la contrainte d'intégralité , nous pourrions facilement résoudre le problème dans le temps O ( 2 n ⋅ p o l y ( n ) ) par la force brute. Aux fins de cette question, c'est assez rapide.
Mais qu'en est-il du cas continu non convexe? Quel est l'algorithme connu le plus rapide pour les box-QPs généraux?
Par exemple, pouvons-nous résoudre ces problèmes dans un temps modérément exponentiel, par exemple , ou la complexité la plus défavorable des algorithmes les plus connus est-elle bien pire?
Contexte: J'ai quelques boîtes-QP assez petites que j'aimerais réellement résoudre, et j'ai été un peu surpris de voir les performances médiocres de certains logiciels commerciaux, même pour de très petites valeurs de . J'ai commencé à me demander s'il y avait une explication TCS pour cette observation.
la source
Réponses:
Une solution optimale se trouve sur un visage. Ainsi, nous pouvons parcourir toutes les faces du cube et trouver tous les points stationnaires sur chacune des faces.
Voici une procédure plus concrète. Une face du cube peut être caractérisée par deux ensembles d'indices disjoints et I 1 . Pour i ∈ I 0 , nous fixons x i = 0 , et pour i ∈ I 1 nous fixons x i = 1 . Soit ˜ x les entrées non fixées restantes de x . Cette correction transforme la fonction objectif sous la forme suivante:I0 I1 i∈I0 xi=0 i∈I1 xi=1 x~ x
avec et ˜ c appropriés , et une constante d , et nous voulons trouver les points stationnaires de cette fonction à la condition que 0 < ˜ x < 1A~ c~ d 0<x~<1 .
A cette fin, nous prenons la différenciation de la fonction objectif pour obtenir
Résoudre ce système d'équations linéaires vous donne les points stationnaires, les candidats pour des solutions optimales. Nous les examinons tous, vérifions la condition et choisissons-en une avec la valeur objective minimale.
la source