
En informatique, un « algorithme » est défini comme un système de calcul, qui renvoie un résultat basé sur la vérification de la véracité de certaines conditions.
En d’autres termes, l’algorithme peut ainsi être défini comme un traitement de données qui se déroule selon une série d’étapes définies et qui renvoie un résultat unique à un problème.
Si nous devions concevoir un algorithme, nous pourrions penser à un organigramme : l’ordre que nous donnons aux instructions est fondamental pour que le résultat soit conforme aux attentes.
Aujourd’hui, le terme « algorithme » revient sur le devant de la scène car il est fréquemment associé à « l’intelligence artificielle », au « Machine Learning » et à l’automatisation du marketing.
Dans ce dernier cas en particulier, les systèmes non seulement exécutent ce qui est fourni, mais en l’exécutant, ils améliorent et réécrivent l’algorithme lui-même.
Dans ce contexte, il est souvent fait référence à un type particulier d’algorithmes, les algorithmes prédictifs. Ils travaillent et apprennent sur la base des données collectées pour prédire les tendances futures.
Il existe différents types d’algorithmes, mais il existe des caractéristiques communes que nous pouvons identifier dans :
- atomicité – les étapes du diagramme ne doivent pas être décomposables davantage ;
- absence d’ambiguïté – les étapes du régime doivent être interprétables sans ambiguïté ;
- finitude – il doit y avoir un nombre défini d’étapes ;
- terminaison – l’algorithme doit se produire dans un temps défini ;
- efficacité – un seul résultat doit être atteint.
L’algorithme est un concept fondamental de l’informatique et les premières notions et références se trouvent même dans des documents datant du XVIIe siècle avant JC.
Le terme, tel que nous le connaissons aujourd’hui, vient d’une transcription latine du nom d’un mathématicien persan al-Khwarizmi.
La formalisation mathématique la plus célèbre est sans doute celle de la machine de Turing datant des années trente du XXe siècle.