Cube Klee–Menthe - Klee–Minty cube

Cube Klee Minty pour la méthode simplex du sommet de l'ombre.

Le cube Klee-Minty ou Klee-Minty polytope ( du nom de Victor Klee et George J. Minty ) est une unité hypercube de la variable dimension dont les coins ont été perturbés. Klee et Minty démontré que George Danzig d » algorithme simplex a de mauvaises performances pire des cas il est initialisé à un coin de leur « cube aplaties ». Sur la version tridimensionnelle, l' algorithme simplex et l' algorithme entrecroisé visitent les 8 coins dans le pire des cas.

En particulier, de nombreux algorithmes d' optimisation pour l'optimisation linéaire présentent des performances médiocres lorsqu'ils sont appliqués au cube Klee-Minty. En 1973, Klee et Minty ont montré que l' algorithme du simplexe de Dantzig n'était pas un algorithme en temps polynomial lorsqu'il était appliqué à leur cube. Par la suite, des modifications du cube Klee-Minty ont montré un mauvais comportement à la fois pour d' autres bases - échange des algorithmes de pivotement et aussi pour les algorithmes de points intérieurs.

Description du cube

Le cube Klee-Minty a été initialement spécifié avec un système paramétré d'inégalités linéaires, avec la dimension comme paramètre. Lorsque la dimension est de deux, le "cube" est un carré écrasé. Lorsque la dimension est de trois, le "cube" est un cube écrasé. Des illustrations du "cube" sont apparues à côté des descriptions algébriques.

Le polytope de Klee-Minty est donné par

Cela a D variables, D contraintes autres que les D contraintes de non-négativité, et 2 D sommets, tout comme un D -dimensionnelle hypercube fait. Si la fonction objectif à maximiser est

et si le sommet initial de l'algorithme du simplexe est l'origine, alors l'algorithme tel que formulé par Dantzig visite tous les sommets 2D , atteignant finalement le sommet optimal

Complexité de calcul

Le cube Klee-Minty a été utilisé pour analyser les performances de nombreux algorithmes, à la fois dans le pire des cas et en moyenne. La complexité temporelle d'un algorithme compte le nombre d' opérations arithmétiques suffisant pour que l'algorithme résolve le problème. Par exemple, l'élimination gaussienne nécessite de l' ordre de  D 3 opérations, et on dit donc qu'elle a une complexité polynomiale en temps, car sa complexité est limitée par un polynôme cubique . Il existe des exemples d'algorithmes qui n'ont pas de complexité en temps polynomial. Par exemple, une généralisation de l'élimination de Gauss appelée algorithme de Buchberger a pour sa complexité une fonction exponentielle des données du problème (le degré des polynômes et le nombre de variables des polynômes multivariés ). Étant donné que les fonctions exponentielles finissent par croître beaucoup plus rapidement que les fonctions polynomiales, une complexité exponentielle implique qu'un algorithme a des performances lentes sur de gros problèmes.

Pire cas

Une illustration d'un polytope tridimensionnel qui est la région réalisable pour un problème de programmation linéaire. L'algorithme du simplexe traverse les arêtes entre les sommets jusqu'à ce qu'il atteigne un sommet optimal. Dans le cas illustré, l'algorithme du simplexe prend cinq étapes. Cependant, l'algorithme du simplexe visite chaque sommet dans le pire des cas d'un problème dont la région réalisable est le cube de Klee-Minty, de sorte que le nombre d'étapes augmente de façon exponentielle avec la dimension du problème.

En optimisation mathématique, le cube Klee-Minty est un exemple qui montre la complexité de calcul dans le pire des cas de nombreux algorithmes d' optimisation linéaire . C'est un cube déformé avec exactement 2  coins D de dimension D . Klee et Minty ont montré que l' algorithme du simplexe de Dantzig visite tous les coins d'un cube (perturbé) en dimension  D dans le pire des cas .  

Les modifications de la construction de Klee-Minty ont montré une complexité temporelle exponentielle similaire pour d'autres règles pivotantes de type simplexe, qui maintiennent la faisabilité primale, comme la règle de Bland . Une autre modification a montré que l' algorithme d'entrecroisement , qui ne maintient pas la faisabilité primale, visite également tous les coins d'un cube de Klee-Minty modifié. Comme l'algorithme simplex, l'algorithme entrecroisé visite les 8 coins du cube tridimensionnel dans le pire des cas.

Algorithmes de suivi de chemin

D'autres modifications du cube Klee-Minty ont montré de mauvaises performances des algorithmes de suivi du chemin central pour l'optimisation linéaire, en ce sens que le chemin central se rapproche arbitrairement de chacun des coins d'un cube. Cette performance de "vertex-stalking" est surprenante, car de tels algorithmes de suivi de chemin ont une complexité en temps polynomial pour l'optimisation linéaire.

Cas moyen

Le cube de Klee-Minty a également inspiré des recherches sur la complexité des cas moyens . Lorsque les pivots éligibles sont effectués au hasard (et non par la règle de la descente la plus raide), l'algorithme du simplexe de Dantzig nécessite en moyenne un nombre quadratique de pas ( de l'ordre de O( D 2 ). Les variantes standard de l'algorithme du simplexe prennent en moyenne  D pas pour un cube. Lorsqu'il est initialisé à un coin aléatoire du cube, l'algorithme d'entrecroisement ne visite que  D coins supplémentaires, cependant, selon un article de Fukuda et Namiki de 1994. L'algorithme du simplexe et l'algorithme d'entrecroisement visitent exactement 3 coins supplémentaires du cube tridimensionnel en moyenne.

Voir également

Remarques

Les références

Liens externes

Description algébrique avec illustration

Les deux premiers liens ont à la fois une construction algébrique et une image d'un cube de Klee-Minty en trois dimensions :

Images sans système linéaire