Hvad er datalogi egentlig for noget?

Denne artikel skrev jeg efter invitation til Scient. De naturvidenskabsstuderendes blad på Københavns Universitet. Da den blev bragt i bladet januar 2007, var det imidlertid i en beskåret version. Her er så den samlede artikel.

Hvorfor er det ikke nok at kunne taste sine data ind i programpakker, hvis man vil lave noget alvorlig naturvidenskab? Svarene på de to spørgsmål hænger sammen.

Computere er en fantastisk gave til naturvidenskab.

Man kan lære om datalogi på forskellige niveauer.

I følge min egen definition er datalogi læren om hvordan man på samme måde den ene gang efter den anden kan danne rækker af tal og bogstaver ud fra eksisterende rækker af tal og bogstaver. Rækker af tal og bogstaver kan repræsentere måleresultater, digitale billeder, MP3-filer eller alle de hårdt optjente goder i et multiplayer rollespil. Faktisk alle de former for data som vi kan behandle maskinelt. Når vi behandler dem, betyder det derfor helt konkret, at vores program styrer dannelsen af nye rækker af tal og bogstaver ud fra eksisterende rækker af tal og bogstaver.

Det er princippet i Turing-maskinen, hvor Alan Turing allerede i 1936 præsenterede det teoretiske grundlag for vore dages computere. Der var blot den lille forskel, at hans maskine kun kunne håndtere en enkelt række af tal og bogstaver som selv styrede hvordan maskinen skulle ændre eller skrive til den. Rækken af tal og bogstaver var altså på samme tid program og data.

Turing-maskinen var et rent tankeeksperiment, men siden har vi udviklet computere som meget hurtigt kan danne rækker af tal og bogstaver ud fra eksisterende rækker af tal og bogstaver, og som kan gøre det uden at lave fejl.

Det er praktisk indenfor naturvidenskaben, hvor man ofte har brug for at skulle bearbejde en hel masse data - altså stykker af en række med tal og bogstaver ­ på præcis samme måde. Det er en proces som minder lidt om guldgravere som gennemsøger store mængder sand og grus for at finde et enkelt guldkorn. Først skal man have samlet alle sine data, og derefter skal man have udvundet de guldklumper som man kan konkludere ud fra. Det kan helt enkelt ske ved at man udregner gennemsnittet af tallene fra hvert af sine forsøg, i stedet for at prøve at regne videre på samtlige tal fra alle forsøgene.

Andre gange er man nødt til at frasortere alle de data som ikke har noget at gøre med det problem, som man vil undersøge. Det kræver nogle gange at man laver nogle visualiseringer, så man lettere kan se hvor guldklumperne gemmer sig. Ofte vil man i dag slutte med at lave en model af virkeligheden som er baseret på ens data, og som skal vise om man faktisk har fundet guld eller bare nogle ideer der glimter.

Computere er en fantastisk gave til naturvidenskab.

Hvis omformningen af en række tal og bogstaver til en anden række af tal og bogstaver skal foregå med håndkraft, er det næsten lige så slidsomt som at stå i en iskold flod med vand op til knæene og bøje sig ned den ene gang efter den anden efter sand og grus som man sigter i håbet om at finde en lille klump guld. Mens man ved at en enkelt fejl eller et lille øjebliks uopmærksomhed kan betyde at man overser en guldklump.

Der er bare et problem. Hvor beregninger med håndkraft er lige så fleksible som en guldgraver med sin hakke og sigte, er de rækker af tal og bogstaver som vi kalder programmer lavet til nogle begrænsede formål. Det betyder, at man ofte kommer i den situation, at man ikke lige kan finde et program som kan bruges til at udvinde guldklumperne fra netop det bjerg af data som man er i gang med at gennemsøge. Derfor er naturvidenskabelig forskning i dag ofte afhængig af at man kan udvikle programmer, som kan lave netop de omdannelser af rækker af tal og bogstaver som man har brug for. Eller i hvert fald at man kan beskrive hvad man har brug for så præcist, at andre kan udvikle det. På præcis samme måde som meget naturvidenskabelig forskning de sidste tre hundrede år har været afhængig af hvem der havde de bedste instrumenter.

Der er et andet problem. Som forsker er man afhængig af at programmerne ikke regner forkert, præcis ligesom man er afhængig af at ens instrumenter viser rigtigt. Derfor er man nødt til at vide hvordan man sikrer at programmerne danner rækker af tal og bogstaver på den måde som man forventer, så de epokegørende sammenfald man har opdaget, ikke skyldes at en variabel et sted er blevet erstattet af en konstant. Her har det traditionelt stået dårligt til. Forskere, som gør meget for at sikre sig at deres instrumenter måler rigtigt, har ikke altid set behovet for at sikre at deres software regnede rigtigt, eller lært hvordan de skulle dokumentere det.

Til gengæld kan man som forsker gøre det som en guldgraver normalt kun vil drømme om i en brandert. Man kan lave modeller og simuleringer af virkeligheden. Man kan skabe sit eget bjerg, som man derefter kan finde guldklumper i, og hvis man er utilfreds med udbyttet, kan man endda ryste bjerget en smule og se om der kommer mere guld til syne. Man kan afprøve sine teorier ved at lave modeller og se om deres opførsel passer med virkeligheden, og man kan bruge modellerne til at simulere forsøg som det vil være tidskrævende, umuligt eller direkte umoralsk at lave i virkeligheden. Det er en væsentlig del af det der kaldes eScience.

Man kan for eksempel lave en model af hvordan kemiske stoffer påvirker mennesker, og bruge modellen til at afprøve virkningen af et stort antal stoffer, som man aldrig kunne få lov til at fodre en gruppe mennesker med. Her har man i princippet en række af tal og bogstaver som repræsenterer en model af stoffernes virkning og nogle andre rækker af tal og bogstaver som repræsenterer de enkelte stoffers egenskaber. Dem bruger man så til at styre hvordan man ud fra modellen skaber nye rækker af tal og bogstaver som repræsenterer det enkelte stofs virkning.

Man kan lære om datalogi på forskellige niveauer.

Det enkleste niveau svarer til et PC-kørekort hvor man kan skrive sine egne rapporter på en computer og lave beregninger i et regneark. På næste niveau kan man anvende en database eller et standardværktøj til behandling af sine data eller til opstilling af modeller. Det niveau svarer til et videregående laboratoriekursus, og det vil i fremtiden nok være nødvendigt for de fleste naturvidenskabelige studerende. Derefter kommer det niveau hvor man selv kan definere kravene til et nyt program og kontrollere at det fungerer korrekt. Det er nødvendigt for dem der skal lede projekter og være ansvarlige for den software som anvendes i dem.

Endelig er der dem på det højeste niveau, som selv kan analysere problemstillinger og designe software til at løse dem, og som selv kan programmere og teste softwaren. Det er en uvurderlig fordel på de områder hvor en del af forskningen består i at man hele tiden udvikler og afprøver nye modeller, men ikke har prioriteret at ansætte en programmør til at lave den software som man har brug for. Eller i de tilfælde hvor det kan være langt hurtigere selv at eksperimentere sig frem, i stedet for at skulle forklare en anden hvordan hver ny version af softwaren skal laves.

von der neuen herbst / winter - kollektion 2012 buttero präsentieren wir die hoch oben tanino sneaker.es kommt zur neuen saison in leder und velours - optionen.NIKE AIR ZOOM VOMERO 12auf diese schuhe sehen sie die handwerkliche qualität und all die schönen details, komm mit.NIKE FLYKNIT RACER HERRENwährend die beiden alle leder - versionen sehen fantastisch aus, aber die wildleder hohem sneaker mit pflanzlichen gegerbtes leder der gap ist unser favorit.NIKE ZOOM WINFLO 4alle drei turnschuhe sind jetzt in aktien tres bien.Adidas Yeezy Boost 350 V2levi & # 8217;Nike Air Zoom Elite 9 s auch weiterhin fr die eröffnung seines jngsten flagship - store in paris ber die berhmten champs - elys es.nachdem arbeitete fr die eröffnung mit pedro winter ed banger records und james murphy, sie haben jetzt gemeinsam mit graffiti - knstler shepard fairey zu produzieren und andre eine limited edition trucker jeans und jacken.Basketball Shoesähnlich wie die jacken, die wir gesehen haben,Adidas NMD bereits im vergangenen jahr fr die & # 8216;Nike Air Jordan kunst auf der straße und # 8217;NIKE LUNAREPIC LOW FLYKNIT 2 ausstellung im moca in los angeles, die klassische jeans und jacken von levi & # 8217; s custom stickereien auf den rcken.zum preis von 190 euro (235 dollar) die akten veröffentlichen am 14.Adidas Yeezy 350 Boos juni, die ausschließlich den neuen levi & # 8217; s paris laden.