La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Conception et analyse des algorithmes

Présentations similaires


Présentation au sujet: "Conception et analyse des algorithmes"— Transcription de la présentation:

1 Conception et analyse des algorithmes
8INF806 Conception et analyse des algorithmes

2 1936 Définition formelle de la notion d'algorithme:
Turing: Machine de Turing Post: Machine de Post Kleene: fonctions récursives Church: -calculus

3 Problèmes indécidables
Certains problèmes n'admettent aucun algorithme. ex. Problème d'arrêt ex. Résoudre une équation diophantienne ex. Le jeu de la vie (game of life)

4 Thèse de Church-Turing
Toutes ces définitions sont équivalentes Notion intuitive d'algorithme = machine de Turing Remarque: ordinateur bio-moléculaire et ordinateur quantique.

5 Efficacité des algorithmes
Quantité raisonnable de ressources Ressources: temps, espace mémoires, nombre de processeurs, nombre de bits de communications, nombre de bits aléatoires, etc. Nous considérerons surtout le temps Algorithme efficace = temps polynomial

6 Thèse de Church-Turing étendue
algorithme efficace = machine de Turing efficace

7 Théorie de la complexité
Prouver que certains problèmes requièrent une quantité minimale de ressources. Exemple: Factorisation d'un entier n Conception d'algorithme: borne supérieure Théorie de la complexité: borne inférieure

8 Pourquoi des bornes inférieures
Résultats négatifs Évite de perdre son temps La recherche de bornes inférieures peut conduire à la découverte d'algorithmes efficaces. Exemple: Test de primalité

9 Difficulté du domaine Borne supérieure  un seul algorithme
Borne supérieure  tous les algorithmes Fait: Aucun des plus important problèmes en complexité n'a encore été résolu Exemple: Dernier théorème de Fermat

10 Question centrale: P≠NP
P: ensemble des problèmes disposant d'une solution efficace Exemple: test de primalité NP: ensemble de problèmes pour lesquel on ne connaît aucun algorithme efficace Exemple: Problème du commis voyageur

11 Comparer des problèmes (réduction)
Deux problèmes: A et B A≤B si on peut construire un algorithme efficace pour A si on dispose d'un algorithme efficace pour B B est au moins aussi difficile que A A et B ont le même niveau de difficulté si A≤B et B≤A.

12 Exemple A: multiplication B: mise au carré X2 = X × X X × Y =

13 Problèmes NP-complet Un problème A est NP-complet si: A est dans NP
B ≤ A pour tout B dans NP A est le problème le plus difficile dans NP Si A admet un algorithme efficace alors tous les probles B dans NP admettent un algorithme efficace

14 Que faire quand un problème est trop difficile?
Reformuler le problème Algorithmes probabiliste: L'espérance du temps est raisonnable La probabilité d'erreur est raisonnable Algorithme d'approximation Pour les problèmes d'optimisation (ex. TSP) Heuristiques (algorithmes génétiques, etc.)

15 Quelques joyaux Théorème de Cook: Théorème PCP
SAT est NP-complet Théorème PCP Exemple: circuit hamiltonien Théorème de Furst, Saxe et Sipser. Limites du parallélisme


Télécharger ppt "Conception et analyse des algorithmes"

Présentations similaires


Annonces Google