Conséquences de l'existence d'un algorithme fortement polynomial pour la programmation linéaire?


31

L'un des Saint Graal de la conception d'algorithmes est de trouver un algorithme fortement polynomial pour la programmation linéaire, c'est-à-dire un algorithme dont l'exécution est délimitée par un polynôme dans le nombre de variables et de contraintes et est indépendante de la taille de la représentation des paramètres (en supposant arithmétique des coûts unitaires). La résolution de cette question aurait-elle des implications en dehors de meilleurs algorithmes de programmation linéaire? Par exemple, l'existence / la non-existence d'un tel algorithme aurait-elle des conséquences sur la géométrie ou la théorie de la complexité?

Edit: Je devrais peut - être clarifier ce que j'entends par conséquences. Je recherche des conséquences mathématiques ou des résultats conditionnels, des implications qui sont connues pour être vraies maintenant . Par exemple: "un algorithme polynomial pour LP dans le modèle BSS séparerait / réduirait les classes de complexité algébrique FOO et BAR", ou "s'il n'y a pas d'algorithme fortement polynomial alors il résout telle ou telle conjecture sur les polytopes", ou "un un algorithme fortement polynomial pour le problème X qui peut être formulé comme un LP aurait des conséquences intéressantes blah ". La conjecture de Hirsch serait un bon exemple, sauf qu'elle ne s'applique que si le simplexe est polynomial.


3
il va également de soi que la technique de preuve utilisée pour montrer ce résultat pourrait être encore plus intéressante que le résultat en termes d'impact à long terme.
Suresh Venkat

Réponses:


28

Cela montrerait que les jeux de parité et de gain moyen sont en P. Voir Sven Schewe. Des jeux de parité et de gains à la programmation linéaire. MFCS 2009.


excellent. J'aimerais pouvoir donner plus d'un +1 à cela. c'est un résultat très cool.
Suresh Venkat

Quelqu'un pourrait-il expliquer comment un algorithme fortement polynomial pour LP impliquerait cela? Schewe construit une instance de taille polynomiale de LP avec des nombres doublement exponentiels. Bien. Nous exécutons maintenant l'algorithme de temps fortement polynomial dessus. Mais n'avons-nous pas besoin de simuler les opérations arithmétiques que fait cet algorithme? Comment se fait cette simulation sans passer de temps super-polynomial? (rappelez-vous que les nombres sont doublement exponentiels; je suppose que l'on pourrait faire un tour de reste chinois, mais pouvons-nous comparer les nombres de cette façon en temps polynomial?).
slimton

2
Je n'ai pas encore lu attentivement le document, mais si je comprends bien, ils prouvent seulement que le problème est dans P dans le modèle Real RAM / BSS ( en.wikipedia.org/wiki/Blum%E2%80%93Shub%E2 % 80% 93Smale_machine ), pas la version normale de P. Vous pouvez définir des modèles de calcul sur n'importe quel anneau R (voir ams.org/notices/200409/fea-blum.pdf ). Sur nous obtenons des machines de Turing normales, et sur les réels nous obtenons le modèle BSS. Chaque anneau a sa propre version de P, qui peut ne pas être égale au P. standardZ2R
Ian

Clarification à mon commentaire précédent: s'il existe un algorithme fortement polynomial pour LP, alors il est polynomial dans le modèle BSS, auquel cas l'article implique la parité et les jeux de gains sont également en P dans le modèle BSS.
Ian

@Ian: En d'autres termes: cette réponse était un peu trompeuse (mais cela ne vous a pas empêché de l'accepter comme réponse valide).
slimton

8

Cela dépend de la réponse. Si l'algorithme créé a un temps d'exécution , alors cela aurait très peu d'impact. D'un autre côté, si cela conduit à une nouvelle façon de résoudre les LPs, cela pourrait avoir un impact énorme. Par exemple, si je me souviens bien de l'histoire (et je me trompe peut-être complètement ), l'algorithme ellipsoïde, par exemple, en plus de sa signification théorique, a conduit (?) Au développement de la méthode du point intérieur, qui était plus rapide dans certains cas que le simplexe algorithme. Cela a conduit à une accélération significative dans la pratique, car les deux approches ont été pressées pour la limite maximale de ce qui peut être fait.(dn)Ackerman(10000)


3
Mais ces conditions valent à peu près n'importe quel résultat théorique: il peut être utile ou non en fonction de l'exécution, et les techniques / idées dans le résultat peuvent conduire à de futures avancées.
Ian

Pas vraiment. Si une certaine forme de la conjecture de Hirsch est vraie, et la preuve est constructive, alors cela conduirait presque sûrement à des solveurs plus rapides pour LP. En bref, si la question est spécifique, ses implications sont claires et si la question est large, elle risque de ne mener à rien. Autrement dit, la seule conséquence sûre de l'algorithme polynomial de temps pour LP est que nous comprendrions mieux le problème que nous ne le faisons actuellement.
Sariel Har-Peled

5

Voici une conséquence pour la géométrie: Une borne fortement polynomiale pour toute variante (aléatoire ou déterministe) de l'algorithme simplex implique une borne polynomiale sur le diamètre de n'importe quel graphe polytopique. Cela implique que la "version polynomiale" de la conjecture de Hirsch est vraie.


6
mais il n'y a aucune raison de croire qu'un algorithme temporel fortement polynomial pour les LP doit passer par la méthode simplex. Les méthodes les plus connues à ce jour (sous-exponentielles) utilisent une stratégie d'échantillonnage aléatoire + récursivité.
Suresh Venkat

Oops. J'ai raté le point.
Shiva Kintali

Cela ne vaut que si le simplexe est fortement polynomial. Je recherche des résultats qui tiennent plus généralement. Il se pourrait que la conjecture polynomiale de Hirsch soit fausse mais qu'un autre algorithme soit fortement polynomial, ou que la conjecture polynomiale de Hirsch soit vraie mais simplexe est exponentielle car elle ne peut pas trouver un court chemin dans le temps polynomial.
Ian

@Suresh: En fait, je suis presque sûr que la stratégie d'échantillonnage aléatoire + récurrence sous-exponentielle que vous mentionnez (Clarkson-Matoušek-Sharir-Welzl / Kalai, n'est-ce pas?) Est un algorithme dual simplex. (Mais cela ne contredit pas votre point de vue.)
Jeffε

Oh, attendez. Michael Goldwasser n'a-t-il pas élaboré cela il y a longtemps dans un article SIGACT? Hmm. maintenant je dois aller creuser.
Suresh Venkat
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.