Le mot « algorithme » apparaît de plus en plus souvent dans nos conversations quotidiennes. On parle de l’algorithme de Google, Instagram ou Netflix, on en parle souvent dans l’actualité liée à la technologie et à la société, des films documentaires sont produits, l’importance qu’ils ont dans nos vies et le contrôle qu’ils peuvent exercer sur nos décisions sont remis en cause… Mais sait-on vraiment ce qu’est un algorithme ? Depuis quand existent-ils et comment nous affectent-ils ?
Un algorithme est un ensemble de règles ou d’instructions qui servent à résoudre un problème en un nombre fini d’étapes. Cela signifie que nous vivons entourés d’algorithmes, au-delà des ordinateurs et des écrans, car il y a de nombreuses activités que nous faisons quotidiennement et sont également un ensemble d’étapes qui nous permettent d’effectuer des tâches telles que cuisiner en suivant une recette ou utiliser une machine à laver en tenant compte ses instructions et programmes. Cependant, généralement, lorsque nous y pensons, nous ne relions les algorithmes qu’à la programmation informatique et surtout aux mathématiques, domaine dans lequel ils sont présents depuis l’antiquité, bien qu’encore ils ne s’appelaient pas ainsi.
Les Égyptiens et les Babyloniens utilisaient déjà des algorithmes pour résoudre des opérations mathématiques telles que les racines carrées ou les multiplications, même s’ils l’ont fait sans vraiment s’en rendre compte parce qu’il n’y avait pas de théorie sur les algorithmes. Le terme vient de la traduction latine d’Al-Khwārizmī, le nom d’un mathématicien et astronome arabe qui a écrit des livres sur le système numérique indien et sur l’algèbre. Au XVIIIe siècle, le terme a commencé à être utilisé tel que nous le connaissons aujourd’hui et la mathématicienne Ada Lovelace a été la première personne à écrire un algorithme informatique en 1842, c’est pourquoi elle est considérée comme la première programmeuse informatique.
Il existe différents types d’algorithmes, mais ils comportent tous trois parties : l’entrée, c’est-à-dire les informations qu’on lui donne, le processus de ces informations, qui sont les calculs nécessaires pour obtenir une solution finale, et la sortie ou le résultat de l’opération. Les machines algorithmiques, comme les ordinateurs, peuvent lire des algorithmes qui ont été codés dans un langage qu’ils peuvent comprendre. En utilisant les langages de programmation, nous pouvons transformer les algorithmes en un ensemble d’instructions, c’est-à-dire les programmer dans l’ordinateur correspondant afin qu’il puisse les déchiffrer et effectuer les différentes tâches pour lesquelles il a été programmé.
Les algorithmes de Google, Netflix ou Instagram, que nous avons cités en exemple dans le premier paragraphe, sont capables de collecter beaucoup d’informations sur les utilisateurs, de les traiter en effectuant de nombreuses opérations prédéterminées et enfin de les utiliser pour différentes tâches (obtenir un résultat à partir des informations collectées), soit afficher les résultats d’une recherche, soit recommander un contenu spécifique à un utilisateur.