SlideShare uma empresa Scribd logo
1 de 23
La complexité des 
algorithmes récursives 
Géométrie algorithmique 
Hajer TRABELSI 
Master de recherche MR1-IMD/ISAMM 
Juin 2014 
1
Contexte 
 Aujourd'hui la complexité est devenue un élément important 
2 
dans plusieurs domaine. 
 Géométrie algorithmique est un domaine relativement récent né 
autour des années 70s, dont le but est d'étudier les propriétés 
des objets géométriques. 
 Elle joue un rôle fondamental dans un grand nombre de 
domaines tels que le robotique, conception assistée par 
ordinateur, " design" industriel, image de synthèse, jeux vidéo... 
 Cela explique l’importance algorithmique des problèmes 
géométriques. 
 Nous nous intéressons de la complexité des algorithmes 
dans ce domaine. 
La complexité des algorithmes récursives 
Géométrie algorithmique
Plan 
 Géométrie algorithmique 
 Enveloppe convexe 
 Algorithmes 
3 
 Diviser pour régner (Divide-and-conquer) 
 Recherche Binaire (Binary search) 
 Théorèmes générales 
 Conclusion 
La complexité des algorithmes récursives 
Géométrie algorithmique
Géométrie algorithmique 
 C’est le domaine qui traite des algorithmes manipulant 
des concepts géométriques. 
 « C’est l'art d'accommoder ensemble les objets 
géométriques élémentaires pour en faire des objets plus 
élaborés. » - Olivier Devillers - [10] 
 L'exemple le plus cité étant celui de l'enveloppe 
convexe : on a au départ des points dans le plan, et on 
cherche à organiser ces points, en l'occurrence à trouver 
le plus petit polygone qui contienne tous les points, et 
soit convexe. 
4 La complexité des algorithmes récursives 
Géométrie algorithmique
Géométrie algorithmique 
Historique : 
 Vers les 70s: Premiers algorithmes pour résoudre les 
problèmes géométriques. 
 1976: Première thèse de doctorat en géométrie 
algorithmique (Michael Shamos) 
 1985: First Annual ACM Symposium on Computational 
Geometry. 
 1996: CGAL: 1ère implémentation des algorithmes 
efficaces. 
 1997: Le premier « handbook on computational 
geometry » voit le jour (le second en 2000). [5] 
La complexité des algorithmes récursives 
Géométrie algorithmique 
5
Enveloppe convexe 
 L'enveloppe convexe (convex hull) 
d'un ensemble S est le plus petit 
ensemble CH(S) convexe, 
contenant S. 
 C'est aussi l'intersection de tous 
les ensembles convexes contenant 
S. 
 Un ensemble S est convexe si pour 
toute paire de points a, b Є S, le 
segment ab Ϲ S. 
X 
✔ 
6 La complexité des algorithmes récursives 
Géométrie algorithmique
Enveloppe convexe 
 Soit P un ensemble de n 
points du plan. 
 On souhaite calculer 
l'enveloppe convexe de 
cet ensemble. 
 C'est le polygone (fermé) 
dont les sommets 
appartiennent à P et qui 
contient tous les points 
de P. 
7 La complexité des algorithmes récursives 
Géométrie algorithmique
Enveloppe convexe 
 Il peut être utilisée dans plusieurs cas. 
 Exemple: si on a une antenne radio qui doit couvrir un 
certain nombre de points, on va chercher la meilleure 
place pour positionner cette antenne. 
 Cela revient à trouver la plus petite ellipse contenant 
les points. Comme cette ellipse est convexe, il est clair 
que seuls les points de l'enveloppe convexe vont jouer 
un rôle. 
8 La complexité des algorithmes récursives 
Géométrie algorithmique
Algorithmes… 
 Pour parvenir au résultat recherché, il faut maintenant 
expliquer à la machine la recette. 
 l'algorithme. 
 Plusieurs algorithmes et techniques s’interviennent… 
9 
Entrée = ensemble de points P 
p1 , p2 , p3 , p4 , p5 , p6 , p7 , p8 , 
p9 , p10 , p11 
Sortie = enveloppe convexe CH(P) 
p7 , p2 , p3 , p8 , p6 , p10 
La complexité des algorithmes récursives 
Géométrie algorithmique
Diviser pour régner (Divide-and- 
conquer) 
 Idée: 
 Diviser l’ensemble des éléments en deux groupes. 
 Déterminer pour chaque ensemble l’enveloppe convexe 
selon une méthode récursive. 
 Fusionner les deux enveloppes. 
 Fusion de l’enveloppe: 
 Trouver les tangentes reliant les enveloppes 
10 La complexité des algorithmes récursives 
Géométrie algorithmique
Diviser pour régner (Divide-and- 
conquer) 
6 2 1 7 0 4 5 3 
6 2 1 7 0 4 5 3 
11 
6 2 1 7 0 4 5 3 
6 2 1 7 0 4 5 3 
N=8 
N=4 
N=2 
N=1 
La complexité des algorithmes récursives 
Géométrie algorithmique
Diviser pour régner (Divide-and- 
conquer) 
0 1 2 3 4 5 6 7 
1 2 6 7 0 3 4 5 
2 6 1 7 0 4 3 5 
12 
6 2 1 7 0 4 5 3 
6 2 1 7 0 4 5 3 
La complexité des algorithmes récursives 
Géométrie algorithmique
Diviser pour régner (Divide-and- 
conquer) 
 Le problème se divise en 
deux sous-problèmes de 
taille approximative n/2. 
 2 T(n/2) 
 La division et la fusion sont 
effectués en un temps D(n) 
et C(n). 
 O (n). 
 Par conséquent, le temps 
d'exécution de l'algorithme 
est en  O(n log n). 
13 La complexité des algorithmes récursives 
Géométrie algorithmique
Recherche Binaire (Binary 
search) 
 Elle peut être vue comme une divide-and-conquer 
méthode. 
 Chaque itération élimine la moitié des possibilités 
restantes. 
 Cela rend les recherches binaires très efficace. 
 Elle nécessite une collecte sélective. 
 Cela signifie la collecte doit être triés avant de chercher. 
14 La complexité des algorithmes récursives 
Géométrie algorithmique
Recherche Binaire (Binary 
search) 
Chercher l’élément x=14 
15 
✔ 
111 222 555 777 888 111111 111222 111444 111777 
La complexité des algorithmes récursives 
Géométrie algorithmique
Recherche Binaire (Binary 
search) 
Principe dichotomie : 
 À chaque étape d’itération, 
l’intervalle de recherche doit 
être divisé par deux. 
 T(n/2) 
 Le test est en  O(1). 
 Le temps d’exécution est en 
 O(log n). 
16 La complexité des algorithmes récursives 
Géométrie algorithmique
Autres… 
 Brute Force 
 Algorithme de la ficelle (Jarvis) 
 Gift Wrapping 
 Quickhull 
 … 
17 La complexité des algorithmes récursives 
Géométrie algorithmique
Théorèmes générales 
 n : la taille du problème 
 a : le nombre des sous 
problèmes dans la 
récursivité. 
 n/b : la taille de chaque 
sous-problème. 
 f : le coût des traitement 
que l'algorithme fait en 
dehors des appels 
récursifs. 
 Si a≥1 , b>1 alors 
T(n) = aT(n/b) + f(n) 
18 La complexité des algorithmes récursives 
Géométrie algorithmique
Théorèmes générales 
(Démonstration: voir [1]) 
La complexité des algorithmes récursives 
Géométrie algorithmique 
19
Théorèmes générales 
La complexité des algorithmes récursives 
Géométrie algorithmique 
20
Conclusion 
 La géométrie algorithmique est un domaine vague 
contenant plusieurs algorithmes qui traitent des 
concepts géométriques. 
 Parmi ces algorithmes, il y’a ceux qui traitent l’enveloppe 
convexe. 
 Ils permettent d’organiser des points/ des éléments dans 
un plan. 
 Des techniques sont utilisées par ces algorithmes. 
 Nous avons cité le « divide-and-conquer » et le « binary 
search ». 
 Pour calculer la complexité des algorithmes, il y’a des 
théorèmes qui peuvent s’appliquer dans le domaine de la 
géométrie algorithmique. 
21 La complexité des algorithmes récursives 
Géométrie algorithmique
Merci pour votre attention 
 
22 La complexité des algorithmes récursives 
Géométrie algorithmique
Bibliographie 
[1]: Complexity of recursive algorithms, Computational Geometry, Vera 
Sacristan 
[2]: Computational Geometry: from Theory to Applications (2013/14) - 
Luca Castelli Aleardi et Steve Oudot 
[3]: Computational Geometry: Algorithms and Applications, Third Edition 
(March 2008), Mark de Berg, Otfried Cheong, Marc van Kreveld, Mark 
Overmars, published by Springer-Verlag 
[4]: https://interstices.info/algorithme-geometrique 
[5]: Les enveloppes convexes en géométrie algorithmique, Achraf Othman 
[6]: Les enveloppes convexes en géométrie algorithmique, Achraf Othman 
[7]: Computational Geometry:Convex Hulls 
[8]: http://www.youtube.com/watch?v=NQMUQpmurFI 
[9]: Master Theorem: Practice Problems and Solutions 
[10]: Un joli algorithme géométrique et ses vilains problèmes numériques, 
Olivier Devillers, 2006 
23 La complexité des algorithmes récursives 
Géométrie algorithmique

Mais conteúdo relacionado

Mais procurados

Chapitre i introduction et motivations
Chapitre i introduction et motivationsChapitre i introduction et motivations
Chapitre i introduction et motivationsSana Aroussi
 
Chapitre iv algorithmes de tri
Chapitre iv algorithmes de triChapitre iv algorithmes de tri
Chapitre iv algorithmes de triSana Aroussi
 
Cours algorithmique et complexite complet
Cours algorithmique et complexite completCours algorithmique et complexite complet
Cours algorithmique et complexite completChahrawoods Dmz
 
Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Ines Ouaz
 
Cours Programmation Orientée Objet en C++
Cours Programmation Orientée Objet en C++Cours Programmation Orientée Objet en C++
Cours Programmation Orientée Objet en C++Amina HAMEURLAINE
 
Chapitre 2 plus court chemin
Chapitre 2 plus court cheminChapitre 2 plus court chemin
Chapitre 2 plus court cheminSana Aroussi
 
algo et complexité .pptx
algo et complexité  .pptxalgo et complexité  .pptx
algo et complexité .pptxtarekjedidi
 
cours de complexité algorithmique
cours de complexité algorithmiquecours de complexité algorithmique
cours de complexité algorithmiqueAtef MASMOUDI
 
Cours Piles et files en utilisant lesl istes chainées Prof. KHALIFA MANSOURI
Cours Piles et files en utilisant lesl istes chainées Prof. KHALIFA MANSOURI Cours Piles et files en utilisant lesl istes chainées Prof. KHALIFA MANSOURI
Cours Piles et files en utilisant lesl istes chainées Prof. KHALIFA MANSOURI Mansouri Khalifa
 
Chapitre v algorithmes gloutons
Chapitre v algorithmes gloutonsChapitre v algorithmes gloutons
Chapitre v algorithmes gloutonsSana Aroussi
 
Chapitre 3 la recherche tabou
Chapitre 3 la recherche tabouChapitre 3 la recherche tabou
Chapitre 3 la recherche tabouAchraf Manaa
 
Cours systèmes temps réel partie 2 Prof. Khalifa MANSOURI
Cours  systèmes temps réel partie 2 Prof. Khalifa MANSOURICours  systèmes temps réel partie 2 Prof. Khalifa MANSOURI
Cours systèmes temps réel partie 2 Prof. Khalifa MANSOURIMansouri Khalifa
 
Chapitre2_Partie1.pdf
Chapitre2_Partie1.pdfChapitre2_Partie1.pdf
Chapitre2_Partie1.pdfMbarkiIsraa
 
Diagramme de Séquence
Diagramme de SéquenceDiagramme de Séquence
Diagramme de SéquenceabdoMarocco
 
Cours Génie Logiciel - Cours 2 - Cycles de vie
Cours Génie Logiciel - Cours 2 - Cycles de vieCours Génie Logiciel - Cours 2 - Cycles de vie
Cours Génie Logiciel - Cours 2 - Cycles de vieMohammed Amine Mostefai
 
Travaux Dirigés : Algorithmique et Structure de Données
Travaux Dirigés : Algorithmique et Structure de DonnéesTravaux Dirigés : Algorithmique et Structure de Données
Travaux Dirigés : Algorithmique et Structure de DonnéesAnass41
 
Rapport Projet de Fin d'Etudes
Rapport Projet de Fin d'EtudesRapport Projet de Fin d'Etudes
Rapport Projet de Fin d'EtudesHosni Mansour
 

Mais procurados (20)

Chapitre i introduction et motivations
Chapitre i introduction et motivationsChapitre i introduction et motivations
Chapitre i introduction et motivations
 
Chapitre iv algorithmes de tri
Chapitre iv algorithmes de triChapitre iv algorithmes de tri
Chapitre iv algorithmes de tri
 
Cours algorithmique et complexite complet
Cours algorithmique et complexite completCours algorithmique et complexite complet
Cours algorithmique et complexite complet
 
COURS_PYTHON_22.ppt
COURS_PYTHON_22.pptCOURS_PYTHON_22.ppt
COURS_PYTHON_22.ppt
 
Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)
 
Cours Programmation Orientée Objet en C++
Cours Programmation Orientée Objet en C++Cours Programmation Orientée Objet en C++
Cours Programmation Orientée Objet en C++
 
Chapitre 1 rappel
Chapitre 1   rappelChapitre 1   rappel
Chapitre 1 rappel
 
Chapitre 2 plus court chemin
Chapitre 2 plus court cheminChapitre 2 plus court chemin
Chapitre 2 plus court chemin
 
algo et complexité .pptx
algo et complexité  .pptxalgo et complexité  .pptx
algo et complexité .pptx
 
cours de complexité algorithmique
cours de complexité algorithmiquecours de complexité algorithmique
cours de complexité algorithmique
 
Cours Piles et files en utilisant lesl istes chainées Prof. KHALIFA MANSOURI
Cours Piles et files en utilisant lesl istes chainées Prof. KHALIFA MANSOURI Cours Piles et files en utilisant lesl istes chainées Prof. KHALIFA MANSOURI
Cours Piles et files en utilisant lesl istes chainées Prof. KHALIFA MANSOURI
 
Chapitre v algorithmes gloutons
Chapitre v algorithmes gloutonsChapitre v algorithmes gloutons
Chapitre v algorithmes gloutons
 
Algorithmes de tri
Algorithmes de triAlgorithmes de tri
Algorithmes de tri
 
Chapitre 3 la recherche tabou
Chapitre 3 la recherche tabouChapitre 3 la recherche tabou
Chapitre 3 la recherche tabou
 
Cours systèmes temps réel partie 2 Prof. Khalifa MANSOURI
Cours  systèmes temps réel partie 2 Prof. Khalifa MANSOURICours  systèmes temps réel partie 2 Prof. Khalifa MANSOURI
Cours systèmes temps réel partie 2 Prof. Khalifa MANSOURI
 
Chapitre2_Partie1.pdf
Chapitre2_Partie1.pdfChapitre2_Partie1.pdf
Chapitre2_Partie1.pdf
 
Diagramme de Séquence
Diagramme de SéquenceDiagramme de Séquence
Diagramme de Séquence
 
Cours Génie Logiciel - Cours 2 - Cycles de vie
Cours Génie Logiciel - Cours 2 - Cycles de vieCours Génie Logiciel - Cours 2 - Cycles de vie
Cours Génie Logiciel - Cours 2 - Cycles de vie
 
Travaux Dirigés : Algorithmique et Structure de Données
Travaux Dirigés : Algorithmique et Structure de DonnéesTravaux Dirigés : Algorithmique et Structure de Données
Travaux Dirigés : Algorithmique et Structure de Données
 
Rapport Projet de Fin d'Etudes
Rapport Projet de Fin d'EtudesRapport Projet de Fin d'Etudes
Rapport Projet de Fin d'Etudes
 

Destaque

Cours algorithmique et complexite
Cours algorithmique et complexite Cours algorithmique et complexite
Cours algorithmique et complexite Saddem Chikh
 
Chapitre 1 arbres de recherche
Chapitre 1 arbres de rechercheChapitre 1 arbres de recherche
Chapitre 1 arbres de rechercheSana Aroussi
 
Le problème de voyageur de commerce: algorithme génétique
Le problème de voyageur de commerce: algorithme génétiqueLe problème de voyageur de commerce: algorithme génétique
Le problème de voyageur de commerce: algorithme génétiqueRima Lassoued
 
Recherche Opérationnelle - Optimisation (notions de base)
Recherche Opérationnelle - Optimisation (notions de base)Recherche Opérationnelle - Optimisation (notions de base)
Recherche Opérationnelle - Optimisation (notions de base)Mohammed TAMALI
 
Cours structures des données (langage c)
Cours structures des données (langage c)Cours structures des données (langage c)
Cours structures des données (langage c)rezgui mohamed
 
Matrices y conclusiones
Matrices y conclusionesMatrices y conclusiones
Matrices y conclusionesSelvin Loayes
 
listes chainée en JAVA
listes chainée en JAVAlistes chainée en JAVA
listes chainée en JAVAsunsaida
 
Chapitre 6 hachage statique
Chapitre 6 hachage statiqueChapitre 6 hachage statique
Chapitre 6 hachage statiqueSana Aroussi
 
Chapitre i rappel sur l'algèbre de boole
Chapitre i rappel sur l'algèbre de boole Chapitre i rappel sur l'algèbre de boole
Chapitre i rappel sur l'algèbre de boole Sana Aroussi
 
Chapitre 3 structures séquentielles
Chapitre 3 structures séquentiellesChapitre 3 structures séquentielles
Chapitre 3 structures séquentiellesSana Aroussi
 
Corrigé langage c
Corrigé langage cCorrigé langage c
Corrigé langage ccoursuniv
 
Big Data ete learning Analytics
Big Data ete learning AnalyticsBig Data ete learning Analytics
Big Data ete learning AnalyticsMokhtar Ben Henda
 
Chapitre 5 structures hierarchiques (arbres)
Chapitre 5 structures hierarchiques (arbres)Chapitre 5 structures hierarchiques (arbres)
Chapitre 5 structures hierarchiques (arbres)Sana Aroussi
 
INF240 - Bases de données DUT SRC1 - Cours 2
INF240 - Bases de données DUT SRC1 - Cours 2INF240 - Bases de données DUT SRC1 - Cours 2
INF240 - Bases de données DUT SRC1 - Cours 2PGambette
 
INF240 - Bases de données DUT SRC1 - Cours 1
INF240 - Bases de données DUT SRC1 - Cours 1INF240 - Bases de données DUT SRC1 - Cours 1
INF240 - Bases de données DUT SRC1 - Cours 1PGambette
 

Destaque (18)

Cours algorithmique et complexite
Cours algorithmique et complexite Cours algorithmique et complexite
Cours algorithmique et complexite
 
Programmation linéaire
Programmation linéaireProgrammation linéaire
Programmation linéaire
 
Chapitre 1 arbres de recherche
Chapitre 1 arbres de rechercheChapitre 1 arbres de recherche
Chapitre 1 arbres de recherche
 
Le problème de voyageur de commerce: algorithme génétique
Le problème de voyageur de commerce: algorithme génétiqueLe problème de voyageur de commerce: algorithme génétique
Le problème de voyageur de commerce: algorithme génétique
 
Igl cours 3 - introduction à uml
Igl   cours 3 - introduction à umlIgl   cours 3 - introduction à uml
Igl cours 3 - introduction à uml
 
Recherche Opérationnelle - Optimisation (notions de base)
Recherche Opérationnelle - Optimisation (notions de base)Recherche Opérationnelle - Optimisation (notions de base)
Recherche Opérationnelle - Optimisation (notions de base)
 
Cours structures des données (langage c)
Cours structures des données (langage c)Cours structures des données (langage c)
Cours structures des données (langage c)
 
Matrices y conclusiones
Matrices y conclusionesMatrices y conclusiones
Matrices y conclusiones
 
Correction
CorrectionCorrection
Correction
 
listes chainée en JAVA
listes chainée en JAVAlistes chainée en JAVA
listes chainée en JAVA
 
Chapitre 6 hachage statique
Chapitre 6 hachage statiqueChapitre 6 hachage statique
Chapitre 6 hachage statique
 
Chapitre i rappel sur l'algèbre de boole
Chapitre i rappel sur l'algèbre de boole Chapitre i rappel sur l'algèbre de boole
Chapitre i rappel sur l'algèbre de boole
 
Chapitre 3 structures séquentielles
Chapitre 3 structures séquentiellesChapitre 3 structures séquentielles
Chapitre 3 structures séquentielles
 
Corrigé langage c
Corrigé langage cCorrigé langage c
Corrigé langage c
 
Big Data ete learning Analytics
Big Data ete learning AnalyticsBig Data ete learning Analytics
Big Data ete learning Analytics
 
Chapitre 5 structures hierarchiques (arbres)
Chapitre 5 structures hierarchiques (arbres)Chapitre 5 structures hierarchiques (arbres)
Chapitre 5 structures hierarchiques (arbres)
 
INF240 - Bases de données DUT SRC1 - Cours 2
INF240 - Bases de données DUT SRC1 - Cours 2INF240 - Bases de données DUT SRC1 - Cours 2
INF240 - Bases de données DUT SRC1 - Cours 2
 
INF240 - Bases de données DUT SRC1 - Cours 1
INF240 - Bases de données DUT SRC1 - Cours 1INF240 - Bases de données DUT SRC1 - Cours 1
INF240 - Bases de données DUT SRC1 - Cours 1
 

Semelhante a La complexité des algorithmes récursives Géométrie algorithmique

optimisation cours.pdf
optimisation cours.pdfoptimisation cours.pdf
optimisation cours.pdfMouloudi1
 
Cours algorithmique et complexite complet
Cours algorithmique et complexite completCours algorithmique et complexite complet
Cours algorithmique et complexite completChahrawoods Dmz
 
Mathematiques _resumes_du_cours
Mathematiques  _resumes_du_coursMathematiques  _resumes_du_cours
Mathematiques _resumes_du_coursahmed jafour
 
Chapitre 3 _Conception et analyse d’algorithme-DPR.pdf
Chapitre 3 _Conception et analyse d’algorithme-DPR.pdfChapitre 3 _Conception et analyse d’algorithme-DPR.pdf
Chapitre 3 _Conception et analyse d’algorithme-DPR.pdfMbarkiIsraa
 
Fonctions trigonometriques h12
Fonctions trigonometriques h12Fonctions trigonometriques h12
Fonctions trigonometriques h12Mehdi Charifi
 
la complexité des algorithmes en toute simplicité
la complexité des algorithmes en toute simplicitéla complexité des algorithmes en toute simplicité
la complexité des algorithmes en toute simplicitéSana REFAI
 
Chap IV : Théorie des graphes
Chap IV : Théorie des graphesChap IV : Théorie des graphes
Chap IV : Théorie des graphesMohammed TAMALI
 
Projet d'Analyse Numérique
Projet d'Analyse NumériqueProjet d'Analyse Numérique
Projet d'Analyse NumériqueYassineElaroui2
 
Présentation Finale - Partie I.pptx
Présentation Finale - Partie I.pptxPrésentation Finale - Partie I.pptx
Présentation Finale - Partie I.pptxouassityoussef
 
Résolution numérique de l'équation de Black Scholes en python
Résolution numérique de l'équation de Black Scholes en pythonRésolution numérique de l'équation de Black Scholes en python
Résolution numérique de l'équation de Black Scholes en pythonAli SIDIBE
 
La recherche approchée de motifs : théorie et applications
La recherche approchée de motifs : théorie et applications La recherche approchée de motifs : théorie et applications
La recherche approchée de motifs : théorie et applications Ibrahim Chegrane
 
chap 3 complexité (3).pdf
chap 3 complexité (3).pdfchap 3 complexité (3).pdf
chap 3 complexité (3).pdfdonixwm
 
Support Formation Samsung - Python - Session 2 - 2022.pptx
Support Formation Samsung - Python - Session 2 - 2022.pptxSupport Formation Samsung - Python - Session 2 - 2022.pptx
Support Formation Samsung - Python - Session 2 - 2022.pptxbpmana
 
L'impact des incriments des séquences de tri Shell. Expérimentation des séque...
L'impact des incriments des séquences de tri Shell. Expérimentation des séque...L'impact des incriments des séquences de tri Shell. Expérimentation des séque...
L'impact des incriments des séquences de tri Shell. Expérimentation des séque...Soumia Elyakote HERMA
 
Etude du dimensionnement du divergent RL10-B2
Etude du dimensionnement du divergent RL10-B2Etude du dimensionnement du divergent RL10-B2
Etude du dimensionnement du divergent RL10-B2Daniel de Santiago Casado
 

Semelhante a La complexité des algorithmes récursives Géométrie algorithmique (20)

optimisation cours.pdf
optimisation cours.pdfoptimisation cours.pdf
optimisation cours.pdf
 
Rapport MOGPL
Rapport MOGPLRapport MOGPL
Rapport MOGPL
 
Cours algorithmique et complexite complet
Cours algorithmique et complexite completCours algorithmique et complexite complet
Cours algorithmique et complexite complet
 
Approximation de ritter
Approximation de ritterApproximation de ritter
Approximation de ritter
 
Mathematiques _resumes_du_cours
Mathematiques  _resumes_du_coursMathematiques  _resumes_du_cours
Mathematiques _resumes_du_cours
 
Chapitre 3 _Conception et analyse d’algorithme-DPR.pdf
Chapitre 3 _Conception et analyse d’algorithme-DPR.pdfChapitre 3 _Conception et analyse d’algorithme-DPR.pdf
Chapitre 3 _Conception et analyse d’algorithme-DPR.pdf
 
Fonctions trigonometriques h12
Fonctions trigonometriques h12Fonctions trigonometriques h12
Fonctions trigonometriques h12
 
la complexité des algorithmes en toute simplicité
la complexité des algorithmes en toute simplicitéla complexité des algorithmes en toute simplicité
la complexité des algorithmes en toute simplicité
 
Chap IV : Théorie des graphes
Chap IV : Théorie des graphesChap IV : Théorie des graphes
Chap IV : Théorie des graphes
 
Expose.ppt
Expose.pptExpose.ppt
Expose.ppt
 
Projet d'Analyse Numérique
Projet d'Analyse NumériqueProjet d'Analyse Numérique
Projet d'Analyse Numérique
 
Présentation Finale - Partie I.pptx
Présentation Finale - Partie I.pptxPrésentation Finale - Partie I.pptx
Présentation Finale - Partie I.pptx
 
Syllabus
SyllabusSyllabus
Syllabus
 
cours algorithme
cours algorithmecours algorithme
cours algorithme
 
Résolution numérique de l'équation de Black Scholes en python
Résolution numérique de l'équation de Black Scholes en pythonRésolution numérique de l'équation de Black Scholes en python
Résolution numérique de l'équation de Black Scholes en python
 
La recherche approchée de motifs : théorie et applications
La recherche approchée de motifs : théorie et applications La recherche approchée de motifs : théorie et applications
La recherche approchée de motifs : théorie et applications
 
chap 3 complexité (3).pdf
chap 3 complexité (3).pdfchap 3 complexité (3).pdf
chap 3 complexité (3).pdf
 
Support Formation Samsung - Python - Session 2 - 2022.pptx
Support Formation Samsung - Python - Session 2 - 2022.pptxSupport Formation Samsung - Python - Session 2 - 2022.pptx
Support Formation Samsung - Python - Session 2 - 2022.pptx
 
L'impact des incriments des séquences de tri Shell. Expérimentation des séque...
L'impact des incriments des séquences de tri Shell. Expérimentation des séque...L'impact des incriments des séquences de tri Shell. Expérimentation des séque...
L'impact des incriments des séquences de tri Shell. Expérimentation des séque...
 
Etude du dimensionnement du divergent RL10-B2
Etude du dimensionnement du divergent RL10-B2Etude du dimensionnement du divergent RL10-B2
Etude du dimensionnement du divergent RL10-B2
 

Último

SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdfSKennel
 
le present des verbes reguliers -er.pptx
le present des verbes reguliers -er.pptxle present des verbes reguliers -er.pptx
le present des verbes reguliers -er.pptxmmatar2
 
SciencesPo_Aix_InnovationPédagogique_Bilan.pdf
SciencesPo_Aix_InnovationPédagogique_Bilan.pdfSciencesPo_Aix_InnovationPédagogique_Bilan.pdf
SciencesPo_Aix_InnovationPédagogique_Bilan.pdfSKennel
 
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...Faga1939
 
Présentation_ Didactique 1_SVT (S4) complet.pptx
Présentation_ Didactique 1_SVT (S4) complet.pptxPrésentation_ Didactique 1_SVT (S4) complet.pptx
Présentation_ Didactique 1_SVT (S4) complet.pptxrababouerdighi
 
Formation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadershipFormation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadershipM2i Formation
 
Saint Georges, martyr, et la lègend du dragon.pptx
Saint Georges, martyr, et la lègend du dragon.pptxSaint Georges, martyr, et la lègend du dragon.pptx
Saint Georges, martyr, et la lègend du dragon.pptxMartin M Flynn
 
Cours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSETCours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSETMedBechir
 
Principe de fonctionnement d'un moteur 4 temps
Principe de fonctionnement d'un moteur 4 tempsPrincipe de fonctionnement d'un moteur 4 temps
Principe de fonctionnement d'un moteur 4 tempsRajiAbdelghani
 
Le Lean sur une ligne de production : Formation et mise en application directe
Le Lean sur une ligne de production : Formation et mise en application directeLe Lean sur une ligne de production : Formation et mise en application directe
Le Lean sur une ligne de production : Formation et mise en application directeXL Groupe
 
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdfSciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdfSKennel
 
presentation sur la maladie de la dengue .pptx
presentation sur la maladie de la dengue .pptxpresentation sur la maladie de la dengue .pptx
presentation sur la maladie de la dengue .pptxNYTombaye
 
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdfSKennel
 
Cours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSETCours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSETMedBechir
 
Zotero avancé - support de formation doctorants SHS 2024
Zotero avancé - support de formation doctorants SHS 2024Zotero avancé - support de formation doctorants SHS 2024
Zotero avancé - support de formation doctorants SHS 2024Alain Marois
 
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdfSKennel
 
Presentation de la plateforme Moodle - avril 2024
Presentation de la plateforme Moodle - avril 2024Presentation de la plateforme Moodle - avril 2024
Presentation de la plateforme Moodle - avril 2024Gilles Le Page
 
Fondation Louis Vuitton. pptx
Fondation      Louis      Vuitton.   pptxFondation      Louis      Vuitton.   pptx
Fondation Louis Vuitton. pptxTxaruka
 

Último (20)

SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
 
le present des verbes reguliers -er.pptx
le present des verbes reguliers -er.pptxle present des verbes reguliers -er.pptx
le present des verbes reguliers -er.pptx
 
SciencesPo_Aix_InnovationPédagogique_Bilan.pdf
SciencesPo_Aix_InnovationPédagogique_Bilan.pdfSciencesPo_Aix_InnovationPédagogique_Bilan.pdf
SciencesPo_Aix_InnovationPédagogique_Bilan.pdf
 
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
 
Présentation_ Didactique 1_SVT (S4) complet.pptx
Présentation_ Didactique 1_SVT (S4) complet.pptxPrésentation_ Didactique 1_SVT (S4) complet.pptx
Présentation_ Didactique 1_SVT (S4) complet.pptx
 
Formation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadershipFormation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadership
 
Saint Georges, martyr, et la lègend du dragon.pptx
Saint Georges, martyr, et la lègend du dragon.pptxSaint Georges, martyr, et la lègend du dragon.pptx
Saint Georges, martyr, et la lègend du dragon.pptx
 
Cours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSETCours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSET
 
DO PALÁCIO À ASSEMBLEIA .
DO PALÁCIO À ASSEMBLEIA                 .DO PALÁCIO À ASSEMBLEIA                 .
DO PALÁCIO À ASSEMBLEIA .
 
Principe de fonctionnement d'un moteur 4 temps
Principe de fonctionnement d'un moteur 4 tempsPrincipe de fonctionnement d'un moteur 4 temps
Principe de fonctionnement d'un moteur 4 temps
 
Le Lean sur une ligne de production : Formation et mise en application directe
Le Lean sur une ligne de production : Formation et mise en application directeLe Lean sur une ligne de production : Formation et mise en application directe
Le Lean sur une ligne de production : Formation et mise en application directe
 
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdfSciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
 
presentation sur la maladie de la dengue .pptx
presentation sur la maladie de la dengue .pptxpresentation sur la maladie de la dengue .pptx
presentation sur la maladie de la dengue .pptx
 
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
 
Cours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSETCours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSET
 
Zotero avancé - support de formation doctorants SHS 2024
Zotero avancé - support de formation doctorants SHS 2024Zotero avancé - support de formation doctorants SHS 2024
Zotero avancé - support de formation doctorants SHS 2024
 
Pâques de Sainte Marie-Euphrasie Pelletier
Pâques de Sainte Marie-Euphrasie PelletierPâques de Sainte Marie-Euphrasie Pelletier
Pâques de Sainte Marie-Euphrasie Pelletier
 
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
 
Presentation de la plateforme Moodle - avril 2024
Presentation de la plateforme Moodle - avril 2024Presentation de la plateforme Moodle - avril 2024
Presentation de la plateforme Moodle - avril 2024
 
Fondation Louis Vuitton. pptx
Fondation      Louis      Vuitton.   pptxFondation      Louis      Vuitton.   pptx
Fondation Louis Vuitton. pptx
 

La complexité des algorithmes récursives Géométrie algorithmique

  • 1. La complexité des algorithmes récursives Géométrie algorithmique Hajer TRABELSI Master de recherche MR1-IMD/ISAMM Juin 2014 1
  • 2. Contexte  Aujourd'hui la complexité est devenue un élément important 2 dans plusieurs domaine.  Géométrie algorithmique est un domaine relativement récent né autour des années 70s, dont le but est d'étudier les propriétés des objets géométriques.  Elle joue un rôle fondamental dans un grand nombre de domaines tels que le robotique, conception assistée par ordinateur, " design" industriel, image de synthèse, jeux vidéo...  Cela explique l’importance algorithmique des problèmes géométriques.  Nous nous intéressons de la complexité des algorithmes dans ce domaine. La complexité des algorithmes récursives Géométrie algorithmique
  • 3. Plan  Géométrie algorithmique  Enveloppe convexe  Algorithmes 3  Diviser pour régner (Divide-and-conquer)  Recherche Binaire (Binary search)  Théorèmes générales  Conclusion La complexité des algorithmes récursives Géométrie algorithmique
  • 4. Géométrie algorithmique  C’est le domaine qui traite des algorithmes manipulant des concepts géométriques.  « C’est l'art d'accommoder ensemble les objets géométriques élémentaires pour en faire des objets plus élaborés. » - Olivier Devillers - [10]  L'exemple le plus cité étant celui de l'enveloppe convexe : on a au départ des points dans le plan, et on cherche à organiser ces points, en l'occurrence à trouver le plus petit polygone qui contienne tous les points, et soit convexe. 4 La complexité des algorithmes récursives Géométrie algorithmique
  • 5. Géométrie algorithmique Historique :  Vers les 70s: Premiers algorithmes pour résoudre les problèmes géométriques.  1976: Première thèse de doctorat en géométrie algorithmique (Michael Shamos)  1985: First Annual ACM Symposium on Computational Geometry.  1996: CGAL: 1ère implémentation des algorithmes efficaces.  1997: Le premier « handbook on computational geometry » voit le jour (le second en 2000). [5] La complexité des algorithmes récursives Géométrie algorithmique 5
  • 6. Enveloppe convexe  L'enveloppe convexe (convex hull) d'un ensemble S est le plus petit ensemble CH(S) convexe, contenant S.  C'est aussi l'intersection de tous les ensembles convexes contenant S.  Un ensemble S est convexe si pour toute paire de points a, b Є S, le segment ab Ϲ S. X ✔ 6 La complexité des algorithmes récursives Géométrie algorithmique
  • 7. Enveloppe convexe  Soit P un ensemble de n points du plan.  On souhaite calculer l'enveloppe convexe de cet ensemble.  C'est le polygone (fermé) dont les sommets appartiennent à P et qui contient tous les points de P. 7 La complexité des algorithmes récursives Géométrie algorithmique
  • 8. Enveloppe convexe  Il peut être utilisée dans plusieurs cas.  Exemple: si on a une antenne radio qui doit couvrir un certain nombre de points, on va chercher la meilleure place pour positionner cette antenne.  Cela revient à trouver la plus petite ellipse contenant les points. Comme cette ellipse est convexe, il est clair que seuls les points de l'enveloppe convexe vont jouer un rôle. 8 La complexité des algorithmes récursives Géométrie algorithmique
  • 9. Algorithmes…  Pour parvenir au résultat recherché, il faut maintenant expliquer à la machine la recette.  l'algorithme.  Plusieurs algorithmes et techniques s’interviennent… 9 Entrée = ensemble de points P p1 , p2 , p3 , p4 , p5 , p6 , p7 , p8 , p9 , p10 , p11 Sortie = enveloppe convexe CH(P) p7 , p2 , p3 , p8 , p6 , p10 La complexité des algorithmes récursives Géométrie algorithmique
  • 10. Diviser pour régner (Divide-and- conquer)  Idée:  Diviser l’ensemble des éléments en deux groupes.  Déterminer pour chaque ensemble l’enveloppe convexe selon une méthode récursive.  Fusionner les deux enveloppes.  Fusion de l’enveloppe:  Trouver les tangentes reliant les enveloppes 10 La complexité des algorithmes récursives Géométrie algorithmique
  • 11. Diviser pour régner (Divide-and- conquer) 6 2 1 7 0 4 5 3 6 2 1 7 0 4 5 3 11 6 2 1 7 0 4 5 3 6 2 1 7 0 4 5 3 N=8 N=4 N=2 N=1 La complexité des algorithmes récursives Géométrie algorithmique
  • 12. Diviser pour régner (Divide-and- conquer) 0 1 2 3 4 5 6 7 1 2 6 7 0 3 4 5 2 6 1 7 0 4 3 5 12 6 2 1 7 0 4 5 3 6 2 1 7 0 4 5 3 La complexité des algorithmes récursives Géométrie algorithmique
  • 13. Diviser pour régner (Divide-and- conquer)  Le problème se divise en deux sous-problèmes de taille approximative n/2.  2 T(n/2)  La division et la fusion sont effectués en un temps D(n) et C(n).  O (n).  Par conséquent, le temps d'exécution de l'algorithme est en  O(n log n). 13 La complexité des algorithmes récursives Géométrie algorithmique
  • 14. Recherche Binaire (Binary search)  Elle peut être vue comme une divide-and-conquer méthode.  Chaque itération élimine la moitié des possibilités restantes.  Cela rend les recherches binaires très efficace.  Elle nécessite une collecte sélective.  Cela signifie la collecte doit être triés avant de chercher. 14 La complexité des algorithmes récursives Géométrie algorithmique
  • 15. Recherche Binaire (Binary search) Chercher l’élément x=14 15 ✔ 111 222 555 777 888 111111 111222 111444 111777 La complexité des algorithmes récursives Géométrie algorithmique
  • 16. Recherche Binaire (Binary search) Principe dichotomie :  À chaque étape d’itération, l’intervalle de recherche doit être divisé par deux.  T(n/2)  Le test est en  O(1).  Le temps d’exécution est en  O(log n). 16 La complexité des algorithmes récursives Géométrie algorithmique
  • 17. Autres…  Brute Force  Algorithme de la ficelle (Jarvis)  Gift Wrapping  Quickhull  … 17 La complexité des algorithmes récursives Géométrie algorithmique
  • 18. Théorèmes générales  n : la taille du problème  a : le nombre des sous problèmes dans la récursivité.  n/b : la taille de chaque sous-problème.  f : le coût des traitement que l'algorithme fait en dehors des appels récursifs.  Si a≥1 , b>1 alors T(n) = aT(n/b) + f(n) 18 La complexité des algorithmes récursives Géométrie algorithmique
  • 19. Théorèmes générales (Démonstration: voir [1]) La complexité des algorithmes récursives Géométrie algorithmique 19
  • 20. Théorèmes générales La complexité des algorithmes récursives Géométrie algorithmique 20
  • 21. Conclusion  La géométrie algorithmique est un domaine vague contenant plusieurs algorithmes qui traitent des concepts géométriques.  Parmi ces algorithmes, il y’a ceux qui traitent l’enveloppe convexe.  Ils permettent d’organiser des points/ des éléments dans un plan.  Des techniques sont utilisées par ces algorithmes.  Nous avons cité le « divide-and-conquer » et le « binary search ».  Pour calculer la complexité des algorithmes, il y’a des théorèmes qui peuvent s’appliquer dans le domaine de la géométrie algorithmique. 21 La complexité des algorithmes récursives Géométrie algorithmique
  • 22. Merci pour votre attention  22 La complexité des algorithmes récursives Géométrie algorithmique
  • 23. Bibliographie [1]: Complexity of recursive algorithms, Computational Geometry, Vera Sacristan [2]: Computational Geometry: from Theory to Applications (2013/14) - Luca Castelli Aleardi et Steve Oudot [3]: Computational Geometry: Algorithms and Applications, Third Edition (March 2008), Mark de Berg, Otfried Cheong, Marc van Kreveld, Mark Overmars, published by Springer-Verlag [4]: https://interstices.info/algorithme-geometrique [5]: Les enveloppes convexes en géométrie algorithmique, Achraf Othman [6]: Les enveloppes convexes en géométrie algorithmique, Achraf Othman [7]: Computational Geometry:Convex Hulls [8]: http://www.youtube.com/watch?v=NQMUQpmurFI [9]: Master Theorem: Practice Problems and Solutions [10]: Un joli algorithme géométrique et ses vilains problèmes numériques, Olivier Devillers, 2006 23 La complexité des algorithmes récursives Géométrie algorithmique