2008/200995 Plan du cours 1.Introduction –Contenu du cours 2.Logique mathématique –Calcul propositionnel –Calcul des prédicats –Logique floue et aide à.

Slides:



Advertisements
Présentations similaires
Comparaison de deux algorithmes d’approximation
Advertisements

Chapitre annexe. Récursivité
Algorithmes et structures de données avancées Cours 7
Algorithmes et structures de données avancés
Structures de données et complexité
Introduction à l’Algorithmique
Calculs de complexité d'algorithmes
Algorithmique Résume.
Introduction Pour concrétiser l’enseignement assisté par ordinateur
Cours d'algorithmique 7 - Intranet 1 27 novembre 2006 Cours dAlgorithmique Dérécursion (début) : Équivalences entre programmes récursifs et programmes.
Cours d'algorithmique 11 / Intranet 1 9 janvier 2006 Cours dAlgorithmique N P - complétude.
LA FONCTION EXPONENTIELLE
Yann Chevaleyre et Jean-Daniel Zucker
Synthèse Stage Algorithmique Académie de la Réunion.
FONCTIONS EXPONENTIELLES ET LOGARITHMES
INTRODUCTION.
IN302 – Chapitre 1 Notions de base, connexité. Rappels sur la complexité
Chapitre II.Rappels mathématiques et complexité
Programmes du cycle terminal
Les bases de l’Algorithmique
Conception et analyse des algorithmes
Références Bibliographiques
Tests de comparaison de moyennes
Introduction à l’algorithmique
Les éléments de base de l’algorithmique
Algorithmes Branch & Bound
Les algorithmes: complexité et notation asymptotique
ASI 3 Méthodes numériques pour l’ingénieur
IFT-2000: Structures de Données Introduction à lanalyse dalgorithmes Dominic Genest, 2009.
Algorithmique et Programmation
Les points importants des chapitres 1 et 2. Ce quil faut retenir Les 2 conception du pgcd() (méthode force brute et diminuer pour régner) Définition de.
Analyse d’Algorithmes
Analyse d’algorithmes
Mesurer l’efficacité des algorithmes
IFT Complexité et NP-complétude
1 CSI 4506: Introduction à lintelligence artificielle La recherche adversairiale.
Algorithmes d ’approximation
Algorithmique (Introduction)
Efficacité des algorithmes
Mise en oeuvre des MMCs L'utilisation des MMCs en reconnaissance des formes s'effectue en trois étapes : définition de la topologie de la chaîne de Markov,
Les Algorithmes de Tri Introduction Tri par Sélection
Programmation non procédurale Le projet ECOLE 2000
Structures de données IFT-2000 Abder Alikacem La récursivité Semaine 5 Département dinformatique et de génie logiciel Édition Septembre 2009.
Régression linéaire (STT-2400)
Analyse des Algorithmes
Analyse d’algorithmes
ASI 3 Méthodes numériques pour l’ingénieur
Conception et analyse des algorithmes
1 Notations Asymptotiques Et Complexité Notations asymptotiques : 0 et  Complexité des algorithmes Exemples de calcul de complexité.
O-notation 1. Introduction 2. O-notation 3. Opérations 3.1 Somme 3.2 Produit 4. Règles générales 5. Exemple 6.Analyse des algorithmes récursifs 6.1 Dilatation.
INTRODUCTION.
Complexité des Problèmes Combinatoires Module IAD/RP/RO/Complexité Philippe Chrétienne.
Algorithmes Branch & Bound
STATISTIQUES – PROBABILITÉS
D.E ZEGOUR Ecole Supérieure d’Informatique. Problèmes de décision Concepts de base Expressions régulières Notation particulière pour exprimer certaines.
Septembre Semaines du 2 au 13 septembre DATECOURSEXERCICESEXERCICES à fairePOUR le Jeudi 4 Prise de contact Rappels sur les suites 2 exemples donnés pour.
LES PRINCIPES DE LA THERMODYNAMIQUE
1 1 Huitième journée Quelques algorithmes. 2 Définition Description des tâches pour que celles-ci soient aisément programmables Différent d’une méthode.
Algorithmique : Introduction
Equilibre de successions de flux différents d’échéances différentes.
Leçon 4 NOTION DE FONCTION Fabienne BUSSAC.
MATHÉMATIQUES DISCRÈTES Chapitre 2 (section 2) François Meunier DMI.
2005/2006 Structures de Données Introduction à la complexité des algorithmes.
Annexe Concepts mathématiques utilisés dans le cours.
20/06/2015propagation de signatures lexicales dans le graphe du Web 1 Propagation de signatures lexicales dans le graphe du Web M. Bouklit M. Lafourcade.
Algorithmique et Complexité
ANALYSE Révisions.
CSI2510 Structures de données et algorithmes Analyse des algorithmes
1 CSI 4506: Introduction à l’Intelligence Artificielle La Recherche Adversariale.
Algorithmes Branch & Bound Module IAD/RP/RO Master d ’informatique Paris 6 Philippe Chrétienne.
Transcription de la présentation:

2008/ Plan du cours 1.Introduction –Contenu du cours 2.Logique mathématique –Calcul propositionnel –Calcul des prédicats –Logique floue et aide à la décision 3.Induction 4.Analyse d’algorithmes –Comparaison asymptotique de fonctions –Complexité 5.Récurrence 6.Mathématique de la gestion –Théorie des graphes –Optimisation

2008/ Analyse d’algorithmes Algorithme : –« recette », séquence d’actions définies de façon non ambigüe, qui peut être appliquée pour résoudre un problème en un temps fini. Analyse d’un algorithme : –Approprié à la tâche à laquelle il est destiné ? –Meilleur qu’un autre ? –Possibilités d’amélioration ? –Ressources utilisées en temps et en mémoire ? –Performances indépendamment de l’implémentation ?

2008/ Outil d’analyse : Comportement asymptotique de fonctions Questions : –Peut-on extrapoler le temps requis pour résoudre un problème sur base de jeux de données de test (plus petits…) ? –Comment comparer deux algorithmes indépendamment des machines sur lesquelles ils seront implémentés ? –Comment s’assurer qu’un algorithme s’adaptera bien à une augmentation de la taille du problème à résoudre ?

2008/ Analyse d’algorithmes Etudier le temps requis par un algorithme en fonction de la taille du problème.  Comment comparer le taux de croissance de différentes fonctions ?

2008/ Analyse d’algorithmes Hypothèses simplificatrices : –Soient 2 algorithmes A1 et A2 avec : A1 systématiquement plus rapide que A2 pour de « petits » jeux de données. A2 systématiquement plus rapide que A1 pour de « grands » jeux de données.  A2 sera préféré à A1 car « presque toujours » meilleur. –On ne tient pas compte des paramètres de performances propres aux ordinateurs sur lesquels l’algorithme est implémenté.

2008/ Comparaison asymptotique de fonctions Fonctions étudiées : –Temps de calcul en fonction de la taille des données (input). –Domaine : nombre naturels. –Image : nombres réels positifs.

2008/ Dominance asymptotique F domine asymptotiquement G si : Exemple :

2008/ Notation Définition : soient 2 fonctions F et G : Expressions courantes :

2008/ Autres définitions

2008/ Interprétation Si Alors F et G croissent approximativement de la même façon lorsque n est grand.

2008/ Exemple 1

2008/ Exemple 1

2008/ Exemple 2

2008/ Exemple 4

2008/ Exemple 4

2008/ Généralisation de l’exemple 4

2008/ Extension à des fonctions partielles Fonction partielle : définie pour presque tous les n (tous sauf un nombre fini de valeurs). Extension de la définition de dominance : F domine asymptotiquement G si :

2008/ Propriétés (1) Théorème 1 : Corollaire : Conséquence ( a= 1) : la dominance asymptotique est une relation réflexive.

2008/ Propriétés (2) Théorème 2 : Conséquence : la dominance asymptotique est une relation transitive. Corrolaire :

2008/ Propriétés (3) Théorème 3 : Corollaire (par induction) :

2008/ Relation d’équivalence Théorème 4 : Cf. 

2008/ Fonctions polynomiales Définition : fonction polynomiale de degré k : –Avec a k  0. –Fonction partielle : définie seulement pour les n tels que P(n) est positive  a k > 0.

2008/ Fonctions polynomiales Théorème 5 : Corollaire (monômes) :

2008/ Fonctions polynomiales Théorème 6 : pour une fonction polynomiale de degré k : On a :

2008/ Fonctions exponentielles

2008/ Fonctions exponentielles Théorème 7 :

2008/ Fonctions logarithmiques

2008/ Fonctions logarithmiques Corollaire du théorème 7 :

2008/ Comparaison

2008/ Complexité d’un algorithme Comment estimer le temps d’exécution d’un programme pour un jeu de données de taille donnée à partir des temps observés pour des jeux de données de test (plus petits) ? Comment comparer les performances de deux algorithmes indépendant des machines sur lesquelles ils seront implémentés ? Comment s’assurer qu’un algorithme s’adaptera bien à des jeux de données de taille plus élevée ?

2008/ Complexité Mesure de la complexité en temps d’un algorithme. Utilisation de la notation O. Exemple : –Un algorithme de tri en O(n 2 ) sera moins bon qu’un autre en O(n ln(n)).

2008/ Principe de comptage

2008/ Exemple 1

2008/ Exemple 1 Que compter ? –Comparaisons ? –Echanges ? Pour une séquence :

2008/ Exemple 1 Nombre de comparaisons : – = 3 Complexité : –O(1)

2008/ Exemple 2

2008/ Exemple 2 Pour une sélection :

2008/ Exemple 2 Nombre de comparaisons : –2 + Max { 0, } = 5 Complexité : –O(1)

2008/ Exemple 3

2008/ Exemple 3 Nombre de comparaisons : –2 + Max { 1, 2 + Max ( 1, 1 ) } = 5 Complexité : –O(1) Remarque : –En comptant les échanges : maximum 2, alors que maximum 3 pour les versions précédentes !

2008/ Exemple 4

2008/ Exemple 4 - Répétition

2008/ Exemple 4 Nombre de comparaisons : –Boucle intérieure : N - 1 –Boucle extérieure : (N – 1) × (N – 1) Complexité : –O(N 2 )

2008/ Exemple 5

2008/ Exemple 5 Nombre de comparaisons : –Boucle intérieure : N - 1 –Boucle extérieure : (N – 1) + (N – 2) + … = N × (N – 1) / 2 Complexité : –O(N 2 )