Loading AI tools
procédure systématique permettant de résoudre un problème De Wikipédia, l'encyclopédie libre
Un algorithme est une suite finie et non ambiguë d'instructions et d’opérations permettant de résoudre une classe de problèmes[1].
Le domaine qui étudie les algorithmes est appelé l'algorithmique. On retrouve aujourd'hui des algorithmes dans de nombreuses applications informatiques, dont dans les systèmes permettant le fonctionnement des ordinateurs[2], la cryptographie, le routage d'informations, la planification et l'utilisation optimale des ressources, le traitement d'images, le traitement de textes, la bio-informatique, l'intelligence artificielle, , etc.
L'algorithme peut être mis en forme de façon graphique dans un algorigramme ou organigramme de programmation.
Le mot algorithme a une longue histoire.
'Al-Khwârizmî (en arabe : الخوارزمي)[3],[4] est un mathématicien persan du IXe siècle, dont le nom est relatif au Khwarezm, une région située au Sud de la mer d'Aral. Le traité qu’il écrit en arabe au IXe siècle sera traduit en latin au XIIe siècle, sous le titre Algoritmi de numero Indorum. "Algoritmie des nombres indiens"[5],[6]. Algoritmie est la latinisation de son nom par les traducteurs : Alchoarismi puis Algorismi, Algorismo, Algoritmi[7]. Un de ses ouvrages a d'ailleurs donné son nom à l'algèbre (voir cet article), dont le titre de la traduction par Gilbert de Cremone : Liber Maumeti filii Moysi Alchoarismi de Algebra et Almuquabala, où l'on retrouve traduit son nom : Maumeti filii Moysi Alchoarismi (Muhammad Ben Musa al Kwuwarizmi) et le fameux Alchoarismi.
Joannes Sacrobosco, moine ayant étudié à Oxford, est reçu à l'université de la Sorbonne le et élu professeur de Quadrivium peu après. C’est vers cette date qu’il compose De Algorismo[8]. Il est l'un des premiers docteurs du Moyen Âge à utiliser les écrits astronomiques des Arabes, considéré d'ailleurs en Angleterre comme ayant introduit l'usage des « chiffres » (sifer) que le pape Sylvestre II avait tenté en vain de répandre plus tôt.
En 1240, Alexandre de Villedieu écrit son Carmen de Algorismo[9] sur la science des chiffres.
Algoritmie désigne alors aussi ce nouveau système de numération, le système de numération de position avec le zéro[7].
Sous l’influence de l’ancien espagnol algorismo, le mot apparaît aussi en français déjà vers 1230 sous la forme augorisme, puis algorisme au XIIIe siècle, pour désigner le calcul en chiffres, l’arithmétique. La forme moderne du terme reprend le latin médiéval algorithmus, altération influencée par arithmetica et d'autres, du grec ancien arithmos = nombre.
Un algorithme est une méthode générale pour résoudre un type de problèmes. Il est dit correct lorsque, pour chaque instance du problème, il se termine en produisant la bonne sortie, c'est-à-dire qu'il résout le problème posé.
L'efficacité d'un algorithme est mesurée notamment par :
Les ordinateurs sur lesquels s'exécutent ces algorithmes ne sont pas infiniment rapides, car le temps de machine reste une ressource limitée, malgré une augmentation constante des performances des ordinateurs. Un algorithme sera donc dit performant s'il utilise avec parcimonie les ressources dont il dispose, c'est-à-dire le temps CPU, la mémoire vive et (objet de recherches récentes) la consommation électrique. L’analyse de la complexité algorithmique permet de prédire l'évolution en temps calcul nécessaire pour amener un algorithme à son terme, en fonction de la quantité de données à traiter.
L'émergence des langages de niveaux supérieurs pose le problème du temps :
L'algorithme composé de boites peut ainsi être plus ou moins détaillé, précis.
Donald Knuth (1938-) liste, comme prérequis d'un algorithme, cinq propriétés[10] :
George Boolos (1940-1996), philosophe et mathématicien, propose la définition suivante[11] :
Gérard Berry (1948-), chercheur en science informatique, en donne la définition grand public suivante[12] :
Les entrées sont généralement associées à des capteurs et les sorties à des actions, actionneurs ou opérateurs (affichage, moteur, etc.).
Les algorithmes sont des objets historiquement dédiés à la résolution de problèmes arithmétiques, comme la multiplication de deux nombres. Ils ont été formalisés bien plus tard avec l'avènement de la logique mathématique et l'émergence des machines qui permettaient de les mettre en œuvre, à savoir les ordinateurs.
La plupart des algorithmes ne sont pas numériques.
On peut distinguer :
Voir aussi : Liste de sujets généraux sur les algorithmes (en)
L'algorithmique intervient de plus en plus dans la vie quotidienne[14].
Les progrès de ce qu'on appelle l'intelligence artificielle s'appuient sur un algorithmique de plus en plus complexe qui devient l'un des rouages cachés du Web 2.0 et des grands réseaux sociaux.
À partir des années 2000, ce qui est appelé « algorithmique » est un ensemble de « boîtes noires » (autrement dit de processus informatiques dont on ne sait pas ce qu'il y a à l'intérieur) qui exploitent et influencent les comportements inconscients des consommateurs, et des électeurs.[réf. nécessaire]
Dans la vie quotidienne, un glissement de sens s'est opéré, ces dernières années, dans le concept d'« algorithme » qui devient à la fois plus réducteur, puisque ce sont pour l'essentiel des algorithmes de gestion du big data, et d'autre part plus universel en ce sens qu'il intervient dans tous les domaines du comportement quotidien[18][réf. incomplète]. La famille des algorithmes dont il est question effectue des calculs à partir de grandes masses de données (les big data). Ils réalisent des classements, sélectionnent des informations et en déduisent un profil, en général de consommation, qui est ensuite utilisé ou exploité commercialement. Les implications sont nombreuses et touchent les domaines les plus variés[19]. Mais les libertés individuelles et collectives pourraient être finalement mises en péril[20], comme le montre la mathématicienne américaine Cathy O'Neil dans le livre Weapons of Math Destruction, publié en 2016 et sorti en français en 2018 sous le titre Algorithmes : la bombe à retardement (aux éditions Les Arènes).
« Aujourd’hui, les modèles mathématiques et les algorithmes prennent des décisions majeures, servent à classer et catégoriser les personnes et les institutions, influent en profondeur sur le fonctionnement des États sans le moindre contrôle extérieur. Et avec des effets de bords incontrôlables. […] Il s’agit d’un pouvoir utilisé contre les gens. Et pourquoi ça marche ? Parce que les gens ne connaissent pas les maths, parce qu’ils sont intimidés. C’est cette notion de pouvoir et de politique qui m’a fait réaliser que j’avais déjà vu ça quelque part. La seule différence entre les modèles de risque en finances et ce modèle de plus-value en science des données, c’est que, dans le premier cas, en 2008, tout le monde a vu la catastrophe liée à la crise financière. Mais, dans le cas des profs, personne ne voit l’échec. Ça se passe à un niveau individuel. Des gens se font virer en silence, ils se font humilier, ils ont honte d’eux[21]. »
Dans cet ouvrage, l'auteure alerte le lecteur sur les décisions majeures que nous déléguons aujourd'hui aux algorithmes dans des domaines aussi variés que l'éducation, la santé, l'emploi et la justice, sous prétexte qu'ils sont neutres et objectifs, alors que, dans les faits, ils donnent lieu à « des choix éminemment subjectifs, des opinions, voire des préjugés insérés dans des équations mathématiques »[22].
La notion de bulle de filtre (ou filter bubble en anglais), popularisée par Eli Pariser, désigne l’effet des algorithmes de personnalisation utilisés par les plateformes en ligne qui isolent les utilisateurs dans une sorte de bulle en leur proposant des contenus correspondant à leurs préférences et croyances antérieures. En d’autres termes, l’exposition à des informations et opinions diversifiées est limitée, ayant pour conséquence de renforcer les biais cognitifs et les visions préexistantes de la réalité. Les auteurs J. Farchy et S. Tallec ont analysé l’impact de ces bulles de filtre sur la découverte de contenus culturels, tels que les films ou la musique. Leur étude révèle que, dans un environnement où les algorithmes favorisent la personnalisation au détriment de la diversité, la diversité culturelle est menacée[23].
L'opacité des algorithmes est l'une des raisons principales de ces critiques. Une meilleure information sur leur mode de fonctionnement spécifique permettrait de rendre plus clair le « contrat social passé entre les internautes et les calculateurs »[24]. La description pour chaque algorithme de son propre principe de classement de l'information aide l'utilisateur à mieux comprendre les choix proposés par l'algorithme et les résultats obtenus[25].
Les philosophes Wendell Wallach et Colin Allen ont soulevé des questions liées à l'implantation par les programmeurs de règles morales dans les algorithmes d'intelligence artificielle : « Aujourd'hui, les systèmes [automatiques] s'approchent d'un niveau de complexité qui, selon nous, exige qu'ils prennent eux-mêmes des décisions morales […]. Cela va élargir le cercle des agents moraux au-delà des humains à des systèmes artificiellement intelligents, que nous appellerons des agents moraux artificiels »[26]. Dans son livre Faire la morale aux robots : une introduction à l'éthique des algorithmes, Martin Gibert met en évidence le rôle de la programmation dans l'éthique des robots, en traitant plus précisément des enjeux moraux liés à la construction des algorithmes. Il définit un algorithme comme « rien de plus qu'une suite d'instructions – ou de règles – pour parvenir à un objectif donné ». L'éthique des algorithmes poserait donc une question : « Quelles règles implanter dans les robots, et comment le faire ? »[27]. Gibert souligne notamment l'ambiguïté de ces agents moraux artificiels :
« Les agents moraux artificiels (AMA) ne sont pas cependant des agents moraux au sens fort du terme. Contrairement aux humains, ils ne semblent pas imputables [sic] de leurs actes. Ils n'ont toutefois pas besoin de l'être pour prendre des décisions moralement significatives et soulever tout un tas de questions en éthique des algorithmes[27]. »
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.