inf562 g eom etrie algorithmique et applications
play

INF562 G eom etrie Algorithmique et Applications Algorithmes - PowerPoint PPT Presentation

INF562 G eom etrie Algorithmique et Applications Algorithmes dapproximation g eom etrique Steve Oudot Pr eliminaire : un peu de th eorie de la complexit e Principe de cette th eorie : - on prend un probl` eme


  1. INF562 – G´ eom´ etrie Algorithmique et Applications Algorithmes d’approximation g´ eom´ etrique Steve Oudot

  2. Pr´ eliminaire : un peu de th´ eorie de la complexit´ e Principe de cette th´ eorie : - on prend un probl` eme (exemple : unicit´ e des ´ el´ ements d’un ensemble) - on choisit un mod` ele de calcul (exemple : comparaison) - on ´ etudie la difficult´ e de ce probl` eme pour ce mod` ele : → borne inf´ erieure : Ω( n log n ) [Ben-Or 83] → borne sup´ erieure : O ( n log n ) (on trie les elements au fur et ` a mesure) 2

  3. Pr´ eliminaire : un peu de th´ eorie de la complexit´ e Principe de cette th´ eorie : - on prend un probl` eme (exemple : unicit´ e des ´ el´ ements d’un ensemble) - on choisit un mod` ele de calcul (exemple : Word-RAM) - on ´ etudie la difficult´ e de ce probl` eme pour ce mod` ele : → borne inf´ erieure : Ω( n ) → borne sup´ erieure : O ( n ) amorti (table de hachage) 2

  4. Pr´ eliminaire : un peu de th´ eorie de la complexit´ e Principe de cette th´ eorie : - on prend un probl` eme (exemple : unicit´ e des ´ el´ ements d’un ensemble) - on choisit un mod` ele de calcul (exemple : quantum circuits) - on ´ etudie la difficult´ e de ce probl` eme pour ce mod` ele : erieure : Ω( n 2 / 3 ) [Aaronson, Shi 04]) → borne inf´ erieure : O ( n 2 / 3 ) (Prob(r´ → borne sup´ esultat correct) = Ω(1) [Ambainis 07] Note: on ne compte pas le temps de lire l’entr´ ee 2

  5. Pr´ eliminaire : un peu de th´ eorie de la complexit´ e Principe de cette th´ eorie : - on prend un probl` eme (exemple : unicit´ e des ´ el´ ements d’un ensemble) - on choisit un mod` ele de calcul (exemple : quantum circuits) - on ´ etudie la difficult´ e de ce probl` eme pour ce mod` ele : erieure : Ω( n 2 / 3 ) [Aaronson, Shi 04]) → borne inf´ la preuve n’est pas evidente mais elle est jolie : elle se base sur un resultat de geometrie algebrique du a Milnor et Thom) erieure : O ( n 2 / 3 ) (Prob(r´ → borne sup´ esultat correct) = Ω(1) [Ambainis 07] A priori il n’y a pas de modele de calcul absolument plus realiste que les autres. En pratique le modele que l’on choisit depend du type des Note: on ne compte pas le temps de lire l’entr´ ee Quel mod` ele de calcul choisir ? donnees sur lesquelles on veut travailler, et des operations que ces donnees supportent (comparaison, hachage, etc.). 2

  6. Mod` eles de calcul Tous les mod` eles de calcul ne sont pas ´ equivalents. Certains mod` eles de calcul sont plus performants que d’autres. D’une part ils peuvent Hi´ erarchie de Chomsky (1956): resoudre certains problemes plus rapidement. D’autre part ils peuvent resoudre des problemes que d’autres modeles ne peuvent pas. • langages r´ eguliers (automates finis) exemple: { a ∗ b ∗ } • grammaires hors-contexte (automates finis ` a pile) exemple : { a n b n | n > 0 } + ce sont des machines de Turing qui ne peuvent ecrire sur la bande en-dehors de l’endroit ou se trouve ecrite l’instance du probleme, ou sur • grammaires contextuelles (automates finis a bande lin´ eairement born´ ee) une longueur lineaire en la taille de l’entree. Ils sont adaptes pour effectuer l’operation de derivation. exemple : { a n b n c n | n > 0 } • langages d´ ecidables (machines de Turing) exemple : { ( n, m ) | n mod m = 0 } 3

  7. Mod` eles de calcul Tous les mod` eles de calcul ne sont pas ´ equivalents. Certains mod` eles de calcul sont plus performants que d’autres. D’une part ils peuvent Hi´ erarchie de Chomsky (1956): resoudre certains problemes plus rapidement. D’autre part ils peuvent resoudre des problemes que d’autres modeles ne peuvent pas. • langages r´ eguliers (automates finis) exemple: { a ∗ b ∗ } • grammaires hors-contexte (automates finis ` a pile) exemple : { a n b n | n > 0 } + ce sont des machines de Turing qui ne peuvent ecrire sur la bande en-dehors de l’endroit ou se trouve ecrite l’instance du probleme, ou sur • grammaires contextuelles (automates finis a bande lin´ eairement born´ ee) une longueur lineaire en la taille de l’entree. Ils sont adaptes pour effectuer l’operation de derivation. exemple : { a n b n c n | n > 0 } • langages d´ ecidables (machines de Turing) exemple : { ( n, m ) | n mod m = 0 } au-del` a : langages r´ ecursivement ´ enum´ erables, langages ind´ ecidables 3

  8. Mod` eles de calcul Th` ese de Church-Turing (1936): ele de calcul effectif [i.e. r´ ealisable par une machine] peut Tout mod` ˆ etre simul´ e par une machine de Turing 3

  9. Mod` eles de calcul Th` ese de Church-Turing (1936): ele de calcul effectif [i.e. r´ ealisable par une machine] peut Tout mod` ˆ etre simul´ e par une machine de Turing → mod` ele de r´ ef´ erence : machine de Turing → mod` eles ´ equivalents (pour la calculabilit´ e): λ -calcul, algebraic comparison, Pointer Machine, Real-RAM, Word-RAM, etc. → but : classifier les probl` emes de mani` ere consistante pour tous ces mod` eles 3

  10. Classes de complexit´ e 4

  11. Classes de complexit´ e ? P = NP • enjeux colossaux d´ epassant largement le cadre scientifique • implications dans de nombreux domaines des sciences et au-del` a • que faire si P � = NP ? Certains probl` emes sont-ils d´ efinitivement inaccessibles ? 4

  12. Classes de complexit´ e ? P = NP • enjeux colossaux d´ epassant largement le cadre scientifique • implications dans de nombreux domaines des sciences et au-del` a • que faire si P � = NP ? Certains probl` emes sont-ils d´ efinitivement inaccessibles ? → calcul quantique ? → algorithmes d’approximation 4

  13. Classes de complexit´ e ? P = NP • enjeux colossaux d´ epassant largement le cadre scientifique • implications dans de nombreux domaines des sciences et au-del` a • que faire si P � = NP ? Certains probl` emes sont-ils d´ efinitivement inaccessibles ? → calcul quantique ? → algorithmes d’approximation → algorithmes d’approximation 4

  14. Algorithmes d’approximation Def: Un probl` eme d’optimisation (minimisation) p consiste, ` a partir d’une instance i donn´ ee, ` a calculer une structure qui optimise (minimise) une certaine fonction de coˆ ut | · | . 5

  15. Algorithmes d’approximation Def: Un probl` eme d’optimisation (minimisation) p consiste, ` a partir d’une instance i donn´ ee, ` a calculer une structure qui optimise (minimise) une certaine fonction de coˆ ut | · | . Exemple: ´ etant donn´ e un graphe pond´ er´ e G , calculer l’arbre couvrant de G de poids minimal. → probl` eme : MST → instance : G → fonction de coˆ ut : somme des poids des arˆ etes de l’arbre 5

  16. Algorithmes d’approximation Def: Un probl` eme d’optimisation (minimisation) p consiste, ` a partir d’une instance i donn´ ee, ` a calculer une structure qui optimise (minimise) une certaine fonction de coˆ ut | · | . → pour toute instance i , soit OPT p ( i ) une structure optimale sur i Def: Un algorithme de κ -approximation de ( p, | · | ) est un algorithme A qui, pour toute instance i de p , fournit une solution A ( i ) (en temps Poly ( | i | ) ) telle que | A ( i ) | ≤ κ | OPT p ( i ) | . → κ peut ˆ etre une constante ou bien une fonction (polynˆ omiale) de | i | 5

  17. Algorithmes d’approximation Def: Un probl` eme d’optimisation (minimisation) p consiste, ` a partir d’une instance i donn´ ee, ` a calculer une structure qui optimise (minimise) une certaine fonction de coˆ ut | · | . → pour toute instance i , soit OPT p ( i ) une structure optimale sur i Def: Un algorithme de κ -approximation de ( p, | · | ) est un algorithme A qui, pour toute instance i de p , fournit une solution A ( i ) (en temps Poly ( | i | ) ) telle que | A ( i ) | ≤ κ | OPT p ( i ) | . → κ peut ˆ etre une constante ou bien une fonction (polynˆ omiale) de | i | Def (PTAS): Un PTAS de p vis-` a-vis de |·| est une famille ` a un param` etre d’algorithmes polynˆ omiaux, { A ε } ε> 0 , telle que pour tout ε > 0 et toute instance i de p , | A ε ( i ) | ≤ (1 + ε ) | OPT p ( i ) | . 5

  18. Algorithmes d’approximation Def: Un probl` eme d’optimisation (minimisation) p consiste, ` a partir d’une instance i donn´ ee, ` a calculer une structure qui optimise (minimise) une certaine fonction de coˆ ut | · | . Plus g´ en´ eralement, la raison d’ˆ etre d’un algorithme d’approximation (ou et ceci sans forc´ ement changer de classe de complexit´ e. Par exemple certains algorithmes d’approximation en g´ eom´ etrie visent ` a r´ eduire la d’une famille d’algorithmes d’approximation) est de r´ eduire la complexit´ e d´ ependance en la dimension des donn´ ees. cf. la s´ eance de cours suivante. d’un probl` eme donn´ e pour un mod` ele de calcul donn´ e. → dans la suite, le mod` ele de calcul par d´ efaut sera Real-RAM 5

  19. Traveling Salesman Problem 2 TSP: Given a complete graph G = ( V, E ) with 5 non-negative weights, find the tour (cycle passing 3 7 through each vertex once) of minimum total cost. 1 17 0 . 2 8 K 7 6

  20. Traveling Salesman Problem | OPT | = 36 . 2 2 TSP: Given a complete graph G = ( V, E ) with 5 non-negative weights, find the tour (cycle passing 3 7 through each vertex once) of minimum total cost. 1 17 0 . 2 8 OPT K 7 6

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend