1 / 28

Algorithmique et Complexité

Algorithmique et Complexité. Michel de Rougemont Université Paris II et LRI mdr@lri.fr http://www.lri.fr/~mdr. 1. Qu’est ce qu’un algorithme? Complexité d’un algorithme. 2. P=NP et classes de complexité. 3. Approximations. 4. Modèles de calcul. Sens et dénotation.

jed
Download Presentation

Algorithmique et Complexité

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Algorithmique et Complexité Michel de Rougemont Université Paris II et LRI mdr@lri.fr http://www.lri.fr/~mdr 1. Qu’est ce qu’un algorithme? Complexité d’un algorithme. 2. P=NP et classes de complexité. 3. Approximations. 4. Modèles de calcul. Sens et dénotation. 17 Novembre 2003

  2. Algorithmique et Complexité • Existe-t-il un algorithme pour résoudre un problème? • Quelles sont les propriétés d’un algorithme A? • Propriétes de Complexité • Complexité en Temps (Espace) T(x) = #Etapes élémentaires sur x A est Polynomial si • Kolmogorov : Taille du plus petit programme. (Mesure qui peut être contradictoire avec la complexité en temps) • Existe-t-il un algorithme polynomial, O(n), O(log n)….? 17 Novembre 2003

  3. Algorithmique Al-Khowarizmi (800) Qu’est ce qu’une fonction calculable? Fonction récursive (1936) Thèse de Church Indécidabilité et Incomplétude de Gödel Machine de Turing Machine Universelle de Kleene 17 Novembre 2003

  4. Fonctions calculables • Il existe des fonctions non calculables. • Il existe une hiérarchie de problèmes • indécidables. 17 Novembre 2003

  5. Algorithmique et informatique • Fonction récursive Universelle • Algorithme vs. Programme • Propriétés d’algorithmes et de programmes. • Programmation Linéaire. P depuis 1980 Simplex, analysé depuis 2001 • Primalité : P depuis 2002 • Factoriser : ? • Equilibre de Nash : ? 17 Novembre 2003

  6. Complexité Classe P. Une fonction est P-calculable s’il existe un algorithme dont le nombre d’étapes élémentaires sur une entrée de taille n est toujours borné par . Classe NP. Un problème est NP s’il existe un algorithme polynomial pour toujours vérifier une solution. Problème NP-complet. Un problème A est NP-complet s’il est NP et pour tout problème B dans NP il existe une fonction f, P-calculable t.q. pour tout x S. Cook 72 R. Karp 73 P=NP ? No 7 des problèmes mathématiques pour le XXI s. 17 Novembre 2003

  7. Algèbre linéaire 1. Fonctions classiques sur des matrices entières 2. Optimisation 4 2 1 3 3. Problèmes NP 4. Problèmes coNP 17 Novembre 2003

  8. Hiérachie polynomiale Permanent Maxcut coNP NP Factoriser P Iso Non-Iso Det, Inversion, Primalité 17 Novembre 2003

  9. Programmation linéaire : PL • Simplex • NP-complétude en nombre entier • Non approximation (1990) • Efficacité moyenne du simplex • PL(A,b,c,k): comment decider si c.x < k ? • k < Max : trouver une solution x • k > Max : trouver une solution du Dual • Principe MinMax PL est P-calculable. (1980) Ellipsoid (Points-intérieurs) 17 Novembre 2003

  10. Analyse du Simplex D. Spielman, M.I.T., 2001 • Simplex peut être exponentiel. • Simplex EST polynomial pour la complexité de lissage. • Application pratique: modifier aléatoirement la matrice A, et l’algorithme converge plus vite. 17 Novembre 2003

  11. ApproximationCalcul probabiliste Définition: t s’il existe un algorithme probabiliste A tel que : • Si f(x)=1, Prob[ A accepte] > 2/3 • Si f(x)=0, Prob[ A rejette ] > 2/3 Probabilité d’erreur 17 Novembre 2003

  12. Hasard et algorithme Jeu de Mikado t t s s 1 paquet 2 paquets 17 Novembre 2003

  13. Marche aléatoire : espace log nsur un graphe symétrique à n sommets c c d s s e d e b b • 00 vers c • 01 vers d • vers e • 11 vers b Au départ du sommet s, 2 tirages Pas de « preuve » d’un chemin entre s et t. 17 Novembre 2003

  14. Analyse d’une marche aléatoire Cas 1. Connexe. Après étapes Pr [erreur] <1/3 Cas 2. Non-Connexe. Après Pr [erreur] =0 s La marche arrive à t. s 17 Novembre 2003

  15. Calcul et hasard • Espace Logarithmique • s-t Connexité • Temps polynomial probabiliste • (classe BPP, Machine de Turing probabiliste) • Permanent est approximable • (Jerrum, Sinclair 1999, marche aléatoire à mélange rapide) • Factorisation reste difficile • Temps polynomial quantique • Factorisation est facile (Shor, 1996) 17 Novembre 2003

  16. Approximation • Fonctions • A approxime • Relations Dist (R,S) = # x : if Dist(R,S) < 17 Novembre 2003

  17. Maxcut • Problème NP-complet • Problème de Maximisation • Approximable en temps polynomial Coupe de taille 9 17 Novembre 2003

  18. Approximation de Maxcut • Principe général pour une large classe de problèmes: • Sous-graphe aléatoire • Evaluer Maxcut sur le sous-graphe • Combiner les estimations Sous-graphe aléatoire 17 Novembre 2003

  19. Hasard et Hiérarchie polynomiale P étendu à BPP NP étendu à IP IP Perm BPP Maxcut coNP NP Factorisation P Non-Iso 17 Novembre 2003

  20. Modèles de Calcul 1. Modèle quantique 2. Modèles biologiques 3. Modèle du WEB • Distribution de calculs • Modèle Economique. Un algorithme distribué définit des équilibres pour un jeu. Mécanisme. • Algorithmique des jeux • Comment réguler le Web (SPAM, Sécurité….)? 4. Percevoir, Sciences du langage. 17 Novembre 2003

  21. Sens et dénotation Dénotation et Intension Quel est le « sens » d’une expression? « int f(x) {return (2*x+1);} » « L’étoile du matin est l’étoile du soir » Intensions: propriétés autres que la dénotation: Complexité, robustesse,…. Sens (Moschovakis 2000) = Algorithme qui définit les intensions. 17 Novembre 2003

  22. Conclusion • Algorithmique: • Existence, fonction calculable • Analyse (Simplex) • Complexité • Classes de Complexité • Existence d’algorithme efficace • Approximations • Calcul probabiliste • Testeurs/Correcteurs • Modèles de Calcul • Sens et Dénotation. 17 Novembre 2003

  23. Vérification polynomialeNP Il existe une fonction t.q. L est dans NP s’il existe une fonction g dans P t.q. Pour la fonction : On ne connaît pas de telle fonction g!! La fonction est le complément de C’est une fonction de co-NP. 17 Novembre 2003

  24. Isomorphisme de graphes 5 4 4 3 3 5 1 1 2 2 1 2 3 4 5 1 3 2 4 5 Permutation : Preuve de l’isomorphisme: 13245 17 Novembre 2003

  25. Non-Isomorphisme de graphes 5 4 4 3 3 5 1 1 2 2 1 2 3 4 5 1 3 2 4 5 ne maintient pas (1,4) Aucune Permutation ne maintient un isomorphisme: Preuve du non-isomorphisme: Enumérer n! Permutations (120) 17 Novembre 2003

  26. Vérification probabiliste • Comment vérifier avec un protocole? • V choisit {1,2} et • construit • P envoit . • Si , P.V=1, sinon P.V=0 P V 0 (1/2) 1 (1/2) • L admet une preuve interactive, s’il existe un • protocole t.q pour tout x : • Si , Prob [ P.V(x)=1] =1 • Si , Prob [ P’.V(x)=1] < 1/2 17 Novembre 2003

  27. Preuve Interactive A B Bob pose des questions à Alice (qui peut mentir) Bob utilise le hasard. Après un temps court (polynomial), Bob Accepte ou rejette. 17 Novembre 2003

  28. O-connaissance de l’isomorphisme h’(G1)=H h’’ A B i=1 Preuve classique : A transmet h (ex: 13245) Preuve interactive : Alice génère h’ aléatoire, calcule h’(G1)=H, transmis à Bob: tire i au sort. Alice envoie h’’, l’iso. entre H et Gi 17 Novembre 2003

More Related