Machine analytique
La machine analytique (analytical engine en anglais) est une calculatrice mécanique programmable imaginée en 1834 par le mathématicien anglais Charles Babbage. Il ne la réalisera jamais (sauf pour un prototype inachevé), mais il passera le reste de sa vie à la concevoir dans les moindres détails. Le plus jeune de ses fils, Henry Prevost Babbage (en), en construira l'unité centrale (le moulin) et l'imprimante de 1880 à 1910.
C'est pendant le développement d'une machine à calculer destinée au calcul et à l'impression de tables mathématiques (machine à différences) que Babbage eut l'idée d'y incorporer des cartes du métier Jacquard, dont la lecture séquentielle donnerait des instructions et des données à sa machine, et donc imagina, malgré des différences notables de fonctionnement (elle fonctionnait à la vapeur avec des roues et engrenages mécaniques), l'ancêtre des ordinateurs modernes.
C'est au cours du développement de cette machine qu'Ada Lovelace formalise les idées de Babbage et développe le premier algorithme de programmation de l'histoire, devenant la première informaticienne de l'humanité.
Description et fonctionnement
modifierLa machine comprend les différentes parties que l'on retrouve dans un ordinateur d'aujourd'hui : périphérique d'entrée des programmes et données (clavier ou mémoire de masse), unité de commande (microprocesseur), unité de calcul (une partie du microprocesseur), mémoire (disque dur), et périphérique de sortie (imprimante).
- un dispositif d'entrée comporte deux lecteurs de cartes perforées (instructions et données) ; ces cartes sont issues des techniques du métier à tisser.
- un organe de commande gère le transfert des nombres et leur mise en ordre pour le traitement ;
- un moulin est chargé d'exécuter les opérations sur les nombres ;
- un magasin permet de stocker les résultats intermédiaires ou finaux ;
- trois types d'imprimantes sont prévus.
Programmation
modifierLa succession des instructions est l'équivalent d'un programme informatique ou logiciel.
La célèbre Ada Lovelace a initié leur écriture et formalisé les idées de Babbage dans un ouvrage qui fait d'elle la première programmeuse. Elle écrit :
« La machine analytique n'a nullement la prétention de créer quelque chose par elle-même. Elle peut exécuter tout ce que nous saurons lui ordonner d'exécuter […] Son rôle est de nous aider à effectuer ce que nous savons déjà dominer. »
Elle se montre remarquable visionnaire en comprenant que la vocation de cette machine va bien au-delà des simples calculs numériques : le traitement des symboles et des équations symboliques lui est aussi grand ouvert[1] :
« De nombreuses personnes qui connaissent mal les études mathématiques pensent que parce que le travail de la machine est de donner des résultats en notation numérique, la nature du processus doit forcément être arithmétique et numérique, plutôt qu'algébrique et analytique. C'est une erreur… La machine peut produire trois types de résultats : […] symboliques […] ; numériques […] ; et algébriques en notation littérale. »
— Notes à Luigi Federico Menabrea pour son ouvrage sur Babbage
Histoire
modifierLa machine analytique n'était pas le premier essai de Babbage qui avait déjà inventé une machine à différences commandée par le gouvernement britannique pour établir des tables de calcul sans erreur. Cette machine à différences fut construite partiellement de 1822 à 1833 par Joseph Clement, l'un des meilleurs outilleurs britanniques de son temps.
Babbage commença le développement de sa machine analytique en 1834, réalisant qu'il pouvait simplifier sa machine à différences grâce à cette nouvelle machine programmable. Le parlement anglais refusa ce changement de direction et arrêta officiellement son soutien financier en 1842. La machine ne fut jamais achevée. On estime aujourd'hui que la machine complète aurait constitué un enchevêtrement de roues et d'engrenages mus par la vapeur et occupant la place d'une locomotive.
Babbage utilisa les principes découverts pendant le développement de la machine analytique pour créer une machine à différences no 2 qui ne fut construite que cent ans après, validant la justesse de ses vues.
Le plus jeune fils de Babbage développa une partie de la machine analytique pour prouver le bien-fondé des idées de son père. Il commença en 1880 mais abandonna en 1888 après une erreur de calcul durant la démonstration du calcul et de l'impression de la table des quarante premiers multiples de π avec vingt-neuf décimales. Il reprit le développement en 1906 et donna une démonstration réussie de ce calcul devant l’académie royale anglaise d'astronomie. Henry Babbage fit don de cette machine au Musée des Sciences de Londres en 1910[2].
Héritage : l'ancêtre des ordinateurs
modifierMalgré d'évidentes différences de technologie, la machine analytique est considérée comme l'ancêtre des ordinateurs modernes.
Notes et références
modifier- L'original en Anglais : « Many persons who are not conversant with mathematical studies, imagine that because the business of the engine is to give its results in numerical notation, the nature of its processes must consequently be arithmetical and numerical, rather than algebraic and analytic. This is an error… The engine might develop three sets of results : […] symbolic results […] ; numerical results […] ; and algebraical results in literal notation. »
- Robert Ligonnière, p. 109 (1987).
Sources
modifier- Robert Ligonnière, Préhistoire et histoire des ordinateurs : des origines du calcul aux premiers calculateurs électroniques, Paris, Robert Laffont, , 356 p. (ISBN 978-2-221-05261-7)
- (en) Philip Morrison et Emily Morrison, Charles Babbage and his calculating engines, New York, Dover publications Inc.,
Voir aussi
modifierArticles connexes
modifierLiens externes
modifier- (en) Résumé d'un article parus dans les IEEE Annals of the History of Computing
- Histoire de la bureautique sur le site de l'École polytechnique fédérale de Lausanne
- (en) The Analytical Engine at Fourmilab, comprend des documents historiques et des simulations en ligne.
- "Notions sur la machine analytique de M. Charles Babbage", compte-rendu (1842) de Menabrea, en ligne et commenté sur BibNum.
- L. F. Menabrea, Ada Augusta, (en) Sketch of the Analytical Engine, Bibliothèque Universelle de Genève, numéro 82,
- Image du (en) General Plan of Babbage's great calculating engine (1840) (version en cache du ), accompagnée d'une description moderne des caractéristiques opérationnelles et de programmation (section d'un site de l'université Stanford intitulé (en) « Precursor to Modern Computing: Charles Babbage and His Calculating Engines » (version en cache du ; les images semblent indisponibles))
- Image d'un plan ultérieur de Machine Analytique avec quadrillage dessiné (1858)
- Randell, Brian, (en) From Analytical Engine to Electronic Digital Computer: The Contributions of Ludgate, Torres, and Bush, Annals of the History of Computing, volume 4, numéro 4,
- (en) Premier « tonneau » de Babbage fonctionnant vraiment assemblé, vers 2005, démontrant sa faisabilité pour enregistrer et accéder à un micro-programme (les processeurs modernes dépendent toujours d'une capacité analogue)
- (en) Special Issue, IEEE Annals of the History of Computing, volume 22, numéro 4, octobre–