Thèse soutenue

Analyse réaliste d'algorithmes standards

FR  |  
EN
Auteur / Autrice : Nicolas Auger
Direction : Cyril Nicaud
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance le 20/12/2018
Etablissement(s) : Paris Est
Ecole(s) doctorale(s) : École doctorale Mathématiques, Sciences et Technologies de l'Information et de la Communication (Champs-sur-Marne, Seine-et-Marne ; 2015-....)
Partenaire(s) de recherche : Laboratoire : Laboratoire d'informatique de l'Institut Gaspard Monge (1997-2009) - Laboratoire d'Informatique Gaspard-Monge / LIGM
Jury : Président / Présidente : Frédérique Bassino
Examinateurs / Examinatrices : Cyril Nicaud, Carine Pivoteau, Antoine Genitrini
Rapporteurs / Rapporteuses : Vlady Ravelomanana, Loïck Lhote

Mots clés

FR  |  
EN

Résumé

FR  |  
EN

À l'origine de cette thèse, nous nous sommes intéressés à l'algorithme de tri TimSort qui est apparu en 2002, alors que la littérature sur le problème du tri était déjà bien dense. Bien qu'il soit utilisé dans de nombreux langages de programmation, les performances de cet algorithme n'avaient jamais été formellement analysées avant nos travaux. L'étude fine de TimSort nous a conduits à enrichir nos modèles théoriques, en y incorporant des caractéristiques modernes de l'architecture des ordinateurs. Nous avons, en particulier, étudié le mécanisme de prédiction de branchement. Grâce à cette analyse théorique, nous avons pu proposer des modifications de certains algorithmes élémentaires (comme l'exponentiation rapide ou la dichotomie) qui utilisent ce principe à leur avantage, améliorant significativement leurs performances lorsqu'ils sont exécutés sur des machines récentes. Enfin, même s'il est courant dans le cadre de l'analyse en moyenne de considérer que les entrées sont uniformément distribuées, cela ne semble pas toujours refléter les distributions auxquelles nous sommes confrontés dans la réalité. Ainsi, une des raisons du choix d'implanter TimSort dans des bibliothèques standard de Java et Python est probablement sa capacité à s'adapter à des entrées partiellement triées. Nous proposons, pour conclure cette thèse, un modèle mathématique de distribution non-uniforme sur les permutations qui favorise l'apparition d'entrées partiellement triées, et nous en donnons une analyse probabiliste détaillée