Algoritmernes oprindelse

En side fra Muhammad al-Khwarizmis bog al-Kitāb al-mukhtaṣar fī ḥisāb al-jabr wa-l-muqābala
En side fra Muhammad al-Khwarizmis bog al-Kitāb al-mukhtaṣar fī ḥisāb al-jabr wa-l-muqābala

For 1400 år siden skrev persiske Muhammad ibn Musa al-Khwarizmi en bog, der har en ret direkte indflydelse på hvilken musik du hører, hvilken vej du kører og hvem du knalder med.

Bogens titel er al-Kitāb al-mukhtaṣar fī ḥisāb al-jabr wa-l-muqābala. Den beskriver iblandt andet decimaltalsystemet og hvordan man systematisk løser og arbejder med ligninger. Godt trehundrede år senere blev bogen oversat til latin og det samme blev Al-Khwārizmīs navn, som blev til Algoritmi. Lad os bare holde det kort og sige, at Al-Khwārizmīs introduktion af decimalsystemet hurtigt gjorde romertal lidt gammeldags i Europa.

Den latinske udgave af hans navn har givet os ordene algebra og algoritme. Sidstnævnte er i sin essens en skridt for skridt beskrivelse af hvordan en opgave skal løses. Så banal er den oprindelige definition af algoritme. Men gennem analoge computere, Ada Lovelace og ikke mindst Alan Turing, er der godt nok kommet kød på den krop.

En computer er i vores tid en maskine, der løser opgaver gennem algoritmer. I gamle dage var computere analoge. Forstået sådan, at de var skabt til at løse en specifik opgave. F.eks. at regne ud hvornår tidevandet kom. Her er f.eks. en analog computer, der kan regne tidevandets bevægelser ud for et år på kun fire timer. Til gengæld kan den intet andet. Deraf navnet. Den er analog med sin opgave.

Tide predicting machine, by Sir William Thomson in 1876. Location: Science Museum, London. Photo: William M. Connolley, 2005/02

Indtil man byggede dette apparat skulle man regne tidevandet ud gennem manuel matematik. Det var ikke umuligt, men det krævede en bunke udregninger, som lige så vel kunne sættes på formel og med det rette mekaniske apparat også udregnes automatisk. Tidevandscomputeren var en revolution, der løste en bunke arbejdsopgaver, der tidligere havde været manuelle.

Men der foregik allerede langt mere spændende tanker i den Londonbaserede Charles Babbages hovede. Han havde udtænkt og bygget dele af hans såkaldte Difference Engine, der kunne løse specifikke, men endnu mere komplekse opgaver. The Difference Engine bliver betragtet som verdens første mekaniske computer. Deraf Babbages tilnavn, som "computerens fader". Men han stoppede ikke der. Han havde større visioner.

The Analytical Engine has no pretensions whatever to originate anything. It can only do whatever we know how to order it to perform.

Babbage designede The Analytical Engine, som ikke var specifik i sin kunnen og havde samme opbygning, som en moderne computer. Den kunne programmeres med hulkort, en feature, som Babbage blev inspireret til af den tids moderne Jacquard vævemaskiner, der kunne programmeres til at lave særlige mønstre gennem hulkort. Babbages maskine havde en printer og endda, hvad der i dag ville svare til 16,6 kilobyte hukommelse.

Men tiden var ikke moden. På grund af den krævede præcision i metalarbejdet for at få maskinerne til at virke, blev de aldrig bygget i Charles Babbages livstid. Maskinerne ville blive for dyre. Derfor fik han aldrig set sin vision på andet end papir, men en udgave af The Difference Machine blev bygget i 1991 af London Science Museum og den virker upåklageligt.

Ada Lovelace var det eneste barn født i ægteskabet mellem digteren Lord Byron og Lady Byron. Hun mødte aldrig sin berømte far, fordi han forlod Lady Byron kort efter Adas fødsel. Men han forgudede Ada på afstand indtil han døde, da hun var kun 8 år gammel.

Lady Byron tilgav ham aldrig for at forlade hende og Ada - eller for de andre børn, som han havde udenfor ægteskabet. På sin vis blev det eftertidens held. For Lady Byron ønskede at Ada fik en solid uddannelse og lærte at tænke logisk, så hun kunne tænke selv og frit. I en tid, hvor det meste piger lærte, var hvordan de passede et hjem og var en god partner for deres mænd. Ada skrev som voksen:

Mathematical Science shows what is. It is the language of the unseen relations between things. But to use & apply that language we must be able fully to appreciate, to feel, to seize, the unseen, the unconscious.

Noget af den lyriske åre fra hendes far kom med i Adas syn på verden. Hun har selv beskrevet sin tilgang til videnskab, som poetisk. Hvilket også er eftertidens held. Hvor Babbage kun så en meget kompleks udregner i sin Analytical Engine, så Ada Lovelace holistisk flere muligheder i maskinen og skrev verdens første computerprogram til den, som et bevis på alt det den ville kunne.

Så der har vi den altså. Inspirationen til den forståelse af computere, som vi har i dag. Med rejsen fra de første udregnere, der var analoge med deres specifikke opgave til en maskine, der ville kunne regne alt ud. Også alt det, der ikke er matematik.

Men vi mangler stadig en person på rejsen fra at skrive skridt for skridt opskrifter på hvordan man løser problemer, til at skabe maskiner, der passer 1:1 til problemløsningen og derfra skabe maskinen, der kan løse alle udfordringer, som den bliver givet. Han hedder Alan Turing.

Der er desværre ikke nogen ukompliceret måde, at gengive Alan Turings liv og levned på. På den ene side gennemskuede han krypteret tysk kode under anden verdenskrig og reddede på den måde millioner af liv. På den anden side var han homoseksuel på et tidspunkt, hvor det var forbudt i England. I 1952 blev han dømt for "stor uanstændighed" og skulle gennem 12 måneders "hormonbehandling". Dommen gjorde, at han ikke længere kunne arbejde med statens hemmelige projekter. Turing blev fundet død i sin seng af cyanidforgiftning i 1954. Inden da havde han sat kæmpe spor i sin egen tid og al tid derfra.

Turing forstod det samme som Lovelace. Hvis noget kunne brydes ned til en algoritme, så kunne en veludviklet regnemaskine give svaret på spørgsmålet. Turing så, at hvis vi kunne bevæge os fra maskinen, der var analog med det den skulle løse og frem til at bruge matematikken, det digitale, så kunne vi løse alt. Hvis det hele var nul og et, ville du kunne bruge computeren til at udregne alle svar, hvis du kunne formulere dem, så computeren forstod spørgsmålet. Ada Lovelace havde allerede leveret svaret på hvordan man gør det. Gennem algoritmer.

Turing manglede kun en ting, nemlig den maskine som ikke bare regner den ud, men regner alt ud, hvis den bliver spurgt på den rigtige måde.

Alan Turing byggede ovenpå andres vilde tanker og videre på sine egne, mens han arbejdede på det hemmelige kodebryderprogram Ultra, der knækkede tyskernes Enigmakodemaskiner. Det foregik en times kørsel nord for London og i dybeste hemmelighed.

Bletchley Park hedder stedet og det var så hemmeligt, at ingen talte offentligt om det, før 30 år efter krigens slutning. Selv de, der havde arbejdet der. Derfor kendte kun ganske få Turing og holdet omkring, og dermed deres reelle påvirkning af krigen, som af nogle bliver vurderet til at forkorte den med op til to år.

Bletchley Park rummede efter tidens standard en masse computerkraft, men den arbejdede udelukkende på at knække Enigmamaskinernes kodede beskeder. Alan Turing havde et meget større billede af mulighederne for at udnytte computerkraft. Efter krigen folder han det ud i computeren Pilot Ace, som han er med til at bygge, inden han forlader projektet på grund af utålmodighed. Med eller ej, da maskinen står færdig har England den første computer, som er skabt til at løse alle former for opgaver.

Sikke en udvikling. Før computeren blev en maskine, var en computer benævnelsen for et menneske, der løste regnestykker eller dele af regnestykker. Deraf navnet. Udregner. Så kom de analoge computere, der kunne opfylde et formål og endelig de digitale computere. Uden at ændre den fysisk kan moderne computeren programmeres til at løse alle opgaver, den bliver bedt om. Opgavebeskrivelsen er defineret i en algoritme. Du skal ikke dreje på en eneste skrue, trække i håndtag eller justere gear for at spille Minecraft. Sikke en tid, at være i live!


I næsten alt vi foretager os digitalt er der en algoritme indblandet. Det sætter store spor, både på hvad vi taler om og hvordan. Læs om algoritmen mellem os her:

Algoritmen mellem os
Spørgsmålet er om du, som bruger, har algoritmens respekt? Hvis Google af en eller anden årsag ikke kan lide min side, vil du aldrig kunne finde dette skriv. Selvom du søgte efter det! Det vil forsvinde fordi vores relation ikke er direkte, men har en algoritme mellem os.
Patrick Damsted

Patrick Damsted

Nysgerrigt undersøger og beskriver Patrick vores menneskelige erfaringer og indsigter - og de blinde vinkler, som påvirker vores hverdag og livskvalitet.