Le terme algorithme provient de l'association des mots "arithmétique" et "algorisme", ce dernier provenant lui-même d'un mathématicien arabe du 9ème siècle avant J-C : Mohammed Ibn Musa Abu Djefar Al-Khwarizmi. Celui-ci rédigea vers 850 avant notre ère chrétienne un ouvrage dont le titre comporte la racine du mot algèbre : "Kitab Al-jabr w'almuqabala". Comme on peut s'en douter, ce mathématicien a fait grosse impression sur les mathématiques "occidentales".

Le premier algorithme connu ne lui appartient cependant pas : Entre 5000 et 3500 avant J-C ont été gravées sur des tablettes des séquences d'instructions qui permettait la résolution systématique d'un problème donnée. La phrase de conclusion de ses gravures indiquait que "Ceci est la procédure". Ces tablettes furent découvertes près de l'ancienne Babylone (vers Bagdad) : à l'époque, les babyloniens utilisaient un système numérique de base soixante (dont nous avons hérité le principe des heures, minutes et secondes), savaient également effectuer leur calculs à l'aide de table (c'est plus facile qu'en base dix). Ces mathématiques furent presque oubliée cependant, tandis qu'elles se développaient en Orient (Les peuples de l'Inde ont inventé le Zéro), avant de revenir sous l'influence des sciences Arabes (Al Khwarizmi, Averroès,... On l' oublie trop souvent, ce fut une période faste pour les sciences en général).

A cette époque cependant, les algorithmes n'incluait que des méthodes non conditionnelle : chaque algorithme ne permettait que de résoudre un seul type de problème et toujours de la même façon. En 300 avant J-C, la mathématicien exprima pour la première fois des structures itératives dans un langage qu'il avait conçu. Son algorithme permettant de trouver le PGCD (le plus grand diviseur commun de deux nombres) comprenait ainsi des structures que l'on retrouve de nos jours dans la plupart des langage informatique : l'itération (boucle Répéter) et la structure conditionnelle Si...alors... fin si. Cet algorithme est le suivant :

Soit X et Y deux entiers ; Soit A une variable temporaire de calcul ; Répéter Si X est inférieur à Y alors A = X ; X = Y ; Y = A ; fin si ; X = X - Y ; Jusqu'a ce que X = 0 ; PGCD = Y ; Fin.

C'est cependant à la fin du 19ème siècle que les algorithme prirent place officiellement au sein des sciences et de la technique : La machine analytique de C. Babbage utilisait ainsi des cartes de variables et des cartes d'opération. C'est sa collaboratrice, Ada Augusta qui créa le principe des cartes et devint ainsi la première personne ayant conçu des programmes. Le langage Ada, fruit d'un projet de langage informatique du département de défense des États-Unis, porte son nom en son honneur.

Ces algorithmes et la suite qu'on leur a donné jusqu'à cette époque constituent certainement les bases nécessaires de la Vie Artificielle, il n 'en fut pourtant jamais question dans les ouvrages des auteurs cités : la visée de ce travail était essentiellement pratique. C'est à Alan Turing (1912-1954) que l'on doit la première tentative de simulation d'une propriété du vivant : l'intelligence. Ces travaux, fondés sur le développement de la logique formelle, l'amenèrent à poser l'ordinateur comme un outil de simulation du réel.

Source : Diverses dont J-C. Heudin (1994) La Vie Artificielle