Ada Lovelace (2.del): Babbages maskiner

Denne serie handler om Ada Lovelace, der skrev verdens første computerprogram. Vi er her i 2. del nået til hendes møde med videnskabsmanden Charles Babbage. Det er hans avancerede regnemaskiner, der inspirerer Ada til at skrive verdenshistoriens første computerprogram og til at reflektere over maskinernes muligheder. Dette afsnit handler om Babbage og hans maskiner.

Charles Babbage (1791-1871) var en engelsk videnskabsmand, bosat i London. Han var et renæssancemenneske med forstand på matematik, statistik, teknologi, økonomi og meget mere; en Da Vinci-type med rigtig mange gode idéer. Nogle af dem blev til noget.

Men de to maskiner, som han er allermest kendt for, og som har gjort, at han anses for at være far til den programmerbare computer, blev aldrig bygget i hans levetid. Han kaldte dem Differensmaskinen (The Difference Engine) og Den Analytiske Maskine (The Analytical Engine). Alt, hvad han efterlod sig om dem – trods årtiers arbejde – var mange tusind siders noter og tegninger og en lille, simpel model af Differensmaskinen.

Babbage var måske lige som Ada for langt forud for sin tid. For lige som hende blev han hurtigt glemt efter sin død, og hans idéer dukkede først op igen næsten 100 år senere, da den engelske matematiker og grundlægger af datalogien, Alan Turing, omtalte ham i forbindelse med sit arbejde.

Mødet med Ada

Babbage mødte Ada i 1830’ernes London. Den industrielle revolution buldrede afsted, og maskiner var svaret på fremskridt og fremgang. Det var Babbage selvfølgelig påvirket af, og han var opsat på at udvikle maskiner, der kunne producere matematiske tabeller og foretage alle udregninger, som var mulige.

Præcis som maskiner kunne fremstille klæde og madvarer, så skulle hans maskiner altså producere tal.

Charles Babbage havde udviklet tankerne til sin Differensmaskine i 1820’erne og havde ansat ingeniøren Joseph Clement til at konstruere den. Imens at Clement var i færd med det, så var Babbage i fuld gang med at udvikle og at rejse penge til sit næste projekt: Den Analytiske Maskine.

Men hvad var det egentlig for maskiner?

Differensmaskinen

Babbages Differensmaskine er helt kort fortalt en mekanisk regnemaskine.

Differensmaskine nummer 2, udstillet på Computer History Museum, Mountain View, Californien (Wikimedia Commons)

Hans inspiration til at udvikle den var, at man på det tidspunkt lavede hele bøger til at slå op i med logaritmetabeller og trigonnometritabeller. De tabeller var udregnet og skrevet ind af dygtige matematikere, og de blev flittigt brugt inden for mange forskellige områder: Videnskab, ingeniørarbejde, økonomi og navigation. Men selv simple fejl i de tabeller kunne føre til alvorlige katastrofer, som for eksempel at en bro ikke blev konstrueret korrekt og derfor kollapsede, eller at et skib gik på grund.

Og selvfølgelig var der fejl i de tabeller, lige som der let kan opstå stavefejl i en tekst og alt andet, der er lavet af mennesker.

Babbage satte sig for at lave en maskine, der kunne lave fejlfrie tabeller – og endda lave dem meget hurtigere, end et menneske nogensinde ville kunne gøre. Det førte til Differensmaskinen.

Differensmaskinen fik sit navn efter The Method of Difference, som er en matematisk metode til at beregnne polynomier, og som ganske enkelt går ud på at reducere beregninger af polynomier til addition.

Der eksisterede mekaniske regnemaskiner før Babbages Differensmaskine. Mest kendt er den, som Pascal udviklede i 1642. Men i modsætning til Differensmaskinen, så var de simpelthen ikke gode nok til at bruge i praksis.

Differensmaskine kunne lave tabeller ved at blive indstillet på lige præcis den ”opskrift”, som man ville have værdierne af. Derefter drejede man stille og roligt på et håndtag på maskinen, og så ”kørte” den opskriften igennem igen og igen, og hver gang lagde den til (altså plussede) med 1,2,3,4,5 og så videre. Som nævnt udregnede Differensmaskinen altså værdierne udelukkende ved brug af addition.

To Differensmaskiner

Babbage udviklede beskrivelser af to Differensmaskiner. Den ene kaldte han Differensmaskine nummer 1, og den fik han produceret en lille model af i 1833. Modellen skulle hjælpe til med fundraisingen til at bygge maskinen i fuld størrelse; det vil sige adskillige meter i højden og bredden og bestående af 25.000 dele.

Babbage hyrede en dygtig ingeniør – Joseph Clement – til at konstruere maskinen, og han fik 17.000 tusind pund (hvilket svarer til flere millioner i dag) fra den britiske regering til projektet. På den tid skulle alle 25.000 dele til maskinen produceres i hånden, så det var en temmelig stor opgave, han havde sat Clement til. Selvom Clement brugte 10 år på arbejdet, så nåede han ikke særlig langt. Det endte med, at han og Babbage blev uvenner, og regeringen smækkede pengekassen i i 1842. Og så blev projektet skrinlagt for en tid.

Senere udviklede han en mere enkle model, Differensmaskine 2, der ”kun” bestod af 8.000 dele. Den blev først bygget længe efter Babbages død:

Det tog 17 år at bygge Differensmaskinen!

Differensmaskinen blev først konstrueret i 2002, 153 år efter at Babbage designede den. Det var London Science Museum, der besluttede at gå i gang med det kæmpe projekt, og det tog museet 17 år at bygge maskinen.

I dag står Differensmaskinen til udstilling på Science Museum i London, og der er blevet fremstillet en kopi af den, der står på Computer History Museum i Moutain View, Californien.

En sjov detalje er, at Babbages hjerne også er udstillet på Science Museum i London i et glas sprit.

Sådan ser Differensmaskinen ud

Differensmaskinen er et utrolig smukt, mekanisk mesterværk. Den består af 8 lodrette søjler, som hver er cirka 3 meter høje. De er omkranset af 31 rækker af små tandhjul, der hver repræsenterer et tal mellem 0 og 9. De 7 af søjlerne bruges på udregning og den 8. søjle til resultatet.

Maskinen har også to printere: En, der printer resultatet på papir og én, der prikker resultatet ind i en gipsplade. På den måde kunne Babbage vide sig sikker på, at man ville se det rigtige resultat af sine beregninger.

I denne video er der en super god introduktion til, hvordan at Differensmaskinen virker.

Science Museum i London, om Charles Babbage. By Marcin Wichary from San Francisco, U.S.A. (An ingenious inventor, pt. 1) [CC BY 2.0 (http://creativecommons.org/licenses/by/2.0)], via Wikimedia Commons

Den Analytiske Maskine

Allerede mens Joseph Clement var i gang med at bygge Differensmaskinen, var Babbage i fuld gang med at udtænke sit næste projekt: Den Analytiske Maskine, der måske er et af de største mekaniske værker, der nogensinde er udtænkt af et menneske. Det er den maskine, der fører til, at vi i dag husker både Babbage og Ada som pionerer inden for it. Ada bidrager til at udvikle maskinen med mange forslag og spørgsmål i sine breve til Babbage.

Hvad er Den Analytiske Maskine

Babbage havde designet sin Analytiske Maskine til at bruge hulkort. De små hulkort er “operationskortene”, der bestemmer typen af beregninger. De store hulkort er “de variable kort”, der fortæller maskinen, hvilke tal, der skal laves beregninger på. (Wikimedia Commons)

Helt kort fortalt er Den Analytiske Maskine en mekanisk computer, der er drevet af dampkraft.

Man kan også kalde den en programmerbar regnemaskine.

På det tidspunkt under den tidlige industrialisering blev maskiner bygget til at udføre én helt bestemt, nøje afgrænset opgave. Det kunne for eksempel være at slå et søm i et stykke træ. Det ville Babbage altså ændre på med Den Analytiske Maskine: Den skulle være så avanceret, at den kunne udregne alle typer matematiske og logiske opgaver (trække fra, lægge til, dividere og så videre) for at gøre den så effektiv som muligt til at lave tabeller.

Det helt særlige ved den maskine var, at den kunne programmeres med hulkort, præcis som de første computere fra midten af 1900-tallet blev det, og den kunne lagre information.

Lageret og Møllen

Ifølge Babbages tegninger bestod Den Analytiske Maskine af to dele: Det, som vi kender som harddisken i dag kaldte han for ”lageret” (the Store). Her blev de ukendte variabler opbevaret sammen med resultater fra forudgående beregninger. Den anden del var det, som vi kender som en processor. Den kaldte han for ”møllen”(the Mill), og det var her beregningerne blev foretaget.

Den Analytiske Maskine fik sit ”feed” ved to sæt hulkort: Det første sæt kort – operationskortene – bestemte hvilken slags beregninger, som møllen skulle udføre. Det andet sæt kort – de variable kort – fortalte maskinen hvilke ubekendte eller variabler, som operationskortene skulle udføre beregninger på.

Selvom Babbage ikke havde tænkt mere visionære tanker om sin maskine, end at den skulle være rigtig god til at lave alle typer matematiske tabeller, så endte han i praksis med at udtænke det første eksempel i verdenshistorien på en universal-maskine; en computer. For Den Analytiske Maskine kan alt det, som de to sæt hulkort giver af kommandoer.

Hvis Den Analytiske Maskine nogensinde var blevet bygget, ville den være over 5 meter lang og bruge kraften fra en hel dampmaskine. På nuværende tidspunkt fylder den ”kun” mere end 7000 sider noter og flere hundrede tegninger i stort format.

Her kan du se, hvordan den analytiske maskine ville se ud, hvis den var blevet konstrueret.

Engelsk udvikler vil bygge Den Analytiske Maskine

Spændende nyheder er, at den britiske udvikler John Graham-Cumming, som er forfatter til The Geek Atlas og it-chef for Causata, har sat sig for at bygge Babbages Analytiske Maskine! Han håber at den kan stå færdig på 150-året for Babbages død i 2021. Læs alt om projektet her.

I den 3. og sidste del i serien om Ada kan du blandt andet læse om Adas berømte kommentarer til Babbages Analytiske Maskine.