Kunstigt liv. Bachelorprojekt 21. juni Mikkel Boje Datalogisk Institut Københavns Universitet

Størrelse: px
Starte visningen fra side:

Download "Kunstigt liv. Bachelorprojekt 21. juni 2005. Mikkel Boje mikkel@diku.dk. Datalogisk Institut Københavns Universitet"

Transkript

1 Kunstigt liv Bachelorprojekt 21. juni 2005 Mikkel Boje Datalogisk Institut Københavns Universitet

2 Forord Denne rapport er resultatet af et bachelorprojekt udført ved Datalogisk Institut ved Københavns Universitet, foråret Målgruppen for rapporten er personer, der er vant til et teknisk sprog, og der forekommer således længere passager af matematisk karakter. Desuden forudsættes en forståelse af basale datalogiske begreber. Der indgår en del biologiske referencer, men disse er forsøgt forklaret første gang de benyttes, og det burde derfor ikke være nødvendigt med biologiske kundskaber forud for en læsning af rapporten. Rapportens opbygning: Afsnit 1 Indeholder en præsentation af opgavens problemformulering: kan egenskaber ved liv overføres til et logisk medie? Første afsnit begynder imidlertid med at analysere, hvilke egenskaber liv egentlig består af. Herefter gennemgås udvalgte modeller og metoder til analyse af egenskaber ved liv. Gennemgangen leder frem til et forskningsfelt, denne opgave må placeres indenfor, idet feltets metode netop består i at overføre egenskaber ved liv til et logisk medie. Afsnit 2 Dette afsnit beskriver det vigtige valg af hvilke egenskaber, jeg ønsker at overføre til det logiske medie. Egenskaberne er delt op i to grupper: de der eksplicit overføres, og de der ønskes observeret. Afsnit 3 Handler om hvad, to af de valgte egenskaber, selv-reproduktion og især evolution dækker over. Desuden gås der i detaljer med hvilke problemstillinger, der findes ved selve overførelsen af netop selv-reproduktion og evolution. Afsnit 4 Dette afsnit beskriver en alternativ måde at analysere liv på. I stedet for at diskutere velkendte biologiske begreber som evolution, undersøges det, hvordan den statistiske mekaniks metode kan bruges til at beskrive levende systemer. Sidst i afsnittet fremlægges en egenskab ved liv, der er formuleret i den statistiske mekaniks terminologi og som ønskes observeret efter overførelsen af de i afsnit 3 beskrevne egenskaber. Afsnit 5 Her gennemgås de opnåede resultater på baggrund af forsøgsbeskrivelser. Desuden diskuteres det, hvorvidt de valgte egenskaber fra afsnit 2 er succesfuldt overført. Afsnit 6 Indeholder konklusionen. Det diskuteres hvorvidt problemformuleringens målsætning er nået. Desuden indeholder bilagene A-D en oversigt over et instruktionssæt fra det system der udarbejdes, forsøgspopulationernes forfader, programkørsler og kildekode. Jeg håber spændingen og intensiteten ved udarbejdelsen af projektet til tider skinner igennem ved læsning af rapporten. Mikkel Boje 21. juni 2005

3 Indhold Forord iii 1 Indledning Automatteori Kunstigt liv Syntese af kunstigt liv i software Motivation Problemformulering Afgrænsning Biologiske egenskaber i DigiLiv 6 3 Evolution i DigiLiv Åben evolution DigiLiv CPU en Kernen Hukommelsen Termodynamik i DigiLiv Statistisk mekanik Entropi DigiLiv - et komplekst system Termodynamisk definition i DigiLiv Beskrivelse af termodynamisk forsøg Resultater Evolutionsforsøg i DigiLiv Indstillinger og forventede resultater Resultater Åben evolution i DigiLiv Termodynamisk forsøg i DigiLiv Emergens i DigiLiv Konklusion 26 A Instruktionsæt 29 B Første proces 32 C Programkørsler 34 C.1 Evolutionsforsøg C.1.1 Selvreproduktion C.1.2 Drægtighed C.1.3 Størrelsesselektion D Kildekode 44 D.1 digiliv D.1.1 AdvancedToString.java D.1.2 DataWriter.java D.1.3 DigiLiv.java

4 INDHOLD iv D.1.4 EntropyDataWriter.java D.1.5 IllegalAddressException.java D.1.6 IllegalExecutionAddressException.java D.1.7 IllegalReadAddressException.java D.1.8 IllegalWriteAddressException.java D.1.9 InstructionI.java D.1.10 InstructionPcbI.java D.1.11 Kernel.java D.1.12 KernelError.java D.1.13 KernelI.java D.1.14 KernelPcbI.java D.1.15 Memory.java D.1.16 MemoryI.java D.1.17 MemoryOverflowException.java D.1.18 ModuleKernelI.java D.1.19 Mutator.java D.1.20 MutatorException.java D.1.21 MutatorI.java D.1.22 NoSearchResultException.java D.1.23 ObserverPcbI.java D.1.24 OS.java D.1.25 OSView.java D.1.26 Pcb.java D.1.27 PcbI.java D.1.28 SysCallModule.java D.1.29 UnallocatedAddressException.java D.2 instructionset D.2.1 Add.java D.2.2 Call.java D.2.3 Dec.java D.2.4 IfNEq.java D.2.5 Inc.java D.2.6 Jump.java D.2.7 JumpB.java D.2.8 JumpF.java D.2.9 Nand.java D.2.10 Nop0.java D.2.11 Nop1.java D.2.12 Nop2.java D.2.13 Pop.java D.2.14 Push.java D.2.15 Ret.java D.2.16 Set0Instruction.java D.2.17 Set0InstructionMutator.java D.2.18 ShiftL.java D.2.19 ShiftR.java D.2.20 Sub.java D.2.21 SwitchStack.java D.2.22 SysCall.java D.2.23 Zero.java

5 1 Indledning Denne rapport handler om, hvorvidt mennesket kan skabe liv. Når mennesket indtræder i en rolle, som ikke fuldt ud er accepteret af samfundet benyttes ofte tillægsordet kunstig. Derfor handler denne rapport med andre ord om kunstigt liv. Mere konkret ønsker jeg at udpege nogle centrale egenskaber ved liv kendt fra den fysisk/kemiske verden og derpå overføre disse egenskaber til et logisk medie. Dermed bliver en nærliggende begyndelse på rapporten at stille et af de mest basale spørgsmål, vi mennesker kan stille os, nemlig Hvad er liv?. Man kunne med rimelighed forvente, at en bestemt videnskabsgren, nemlig biologien ville være i stand til at give os dette svar. Biologi betyder direkte oversat læren om liv. Når ord som biologi og biologiske benyttes fremover i teksten, er konteksten underforstået til at være den fysisk/kemiske verden, vi forbinder med naturen, altså biologi i klassisk forstand. Et oplagt mål for biologien må naturligvis være at finde en tilfredsstillende definition på liv. For at forstå problematikken kan det være en god ide selv at reflektere over, hvad man forstår ved liv og derefter prøve at give en beskrivelse. Er beskrivelsen præcis nok til at afgøre, hvorvidt en nyplukket blomst er levende eller død? Hvad hvis blomsten er plukket for nogle timer (måske dage) siden. Hvordan kategoriseres bakterieceller i hvilestadie? Virus? Det viser sig hurtigt, at det ikke er så nemt, og at der findes utallige grænsetilfælde i naturen. På grund af vigtigheden af en definition er flere forsøg gjort, og her er en liste med de vigtigste (Adami i [9] side 5 og Emmeche i [1] side 43): Fysiologisk def.: Fokuserer på organismers funktioner såsom evnen til at flytte sig, ånde og vokse. Problemet med definitionen er, at den ikke omfatter alt levende (planter flytter sig begrænset), og at den omfatter ikke-levende objekter (biler flytter sig). Metabolsk def.: Definerer liv som et afgrænset system, der udveksler stof med omverdenen uden at ændre sine generelle egenskaber. Igen virker definitionen ikke præcis nok. Er et frø eksempelvis levende, selvom det ikke har udvekslet stof med sine omgivelser i nogle tusinde år (og måske aldrig kommer til det)? Ligeledes kan eksempler på ikke-levende objekter, der medtages af definitionen findes. Biokemisk def.: Forsøger at definere liv ud fra dets evne til at gemme nedarvet information ved hjælp af nukleinsyrer 1. Denne definition er præcis, men tager tydeligvis udgangspunkt i den ene form for liv, vi har fundet her på jorden. Virus ligger som et eksempel i et grænseområde ifølge definitionen, da vira ikke er i stand til selvstændigt at reproducere sig selv (det nedarvelige aspekt er med andre ord tvivlsomt i dette tilfælde). Genetisk def.: Fokuserer på evolutionære processer såsom replikation, mutation og selektion. Definitionen er bredere end den biokemiske (dog stadig præcis), idet den ikke foreskriver, at informationen i levende systemer skal kodes ved hjælp af nukleinsyrer. Termodynamisk def.: Definerer liv som en egenskab ved en samling enheder, der deler information kodet i et fysisk substrat. Samlingen kan på trods af støj vedligeholde en entropi 2, der er under systemets maksimale entropi i meget længere tid, end det ville være forventet af substratets (og dermed også informationen kodet i substratet) henfaldstid. Denne definition er endnu mere generel end den genetiske, idet den ikke beskriver, hvordan livets information vedligeholdes. Der indvendes imidlertid imod definitionen, at den er for generel. På trods af stor interesse for en klar definition, er der blandt forskere ikke enighed om en endegyldig definition. Det kan måske undre, at en definition på liv ikke er fundet i en tidsalder, hvor mange føler, at naturvidenskaben kan give dem en forklaring på snart ethvert naturfænomen. 1 Nukleinsyrer er en fællesbetegnelse for DNA og RNA. 2 En præcis definition af entropi følger senere i rapporten; indtil videre kan det forstås som uorden i et system.

6 1.1 Automatteori INDLEDNING 2 Biologi er - måske en anelse overraskende - en relativ ny videnskab med en historie på omkring 150 år. 3 De fleste vil dog nok mene, at de største fremskridt indenfor naturvidenskaben netop er sket de sidste 150 år, og årsagen til den manglende definition på liv synes ikke at skulle findes i biologiens umodenhed. En anden mere plausibel forklaring er, at liv tilsyneladende ikke lader sig undersøge tilfredsstillende vha. den - ellers så succesfulde og benyttede - reduktionistiske metode kendt fra fysikken og kemien. Det er som om, liv først opstår, når dets delkomponenter er samlet og straks forsvinder igen, når det skilles ad (Adami i [9] side 4). I erkendelse af at en definition af liv endnu ikke er opnået, fokuserer man i stedet på vigtige egenskaber ved liv. Disse egenskaber er som regel hentet på tværs af de foreslåede definitioner (Ray i [21] side 180 og Emmeche i [1] side 47). Egenskaberne undersøges i en række relativt opdelte modeller eller metoder: automatsystemer evolutionære systemer selvorganiserende (kritiske) systemer komplekse systemer med statistisk mekanisk beskrivelse ikke-lineære dynamiske systemer Listen er længere og med en smule kendskab til begreberne, er det tydeligt, at man forsøger at anskue liv fra vidt forskellige vinkler. Dette er et udtryk for, at ingen enkel anskuelse er slået afgørende igennem, at der mangler overblik og dybdegående kendskab til liv, og måske at liv faktisk lader sig analysere på mange forskellige måder. Flere af modellerne er relativt nye 4, hvilket måske kan forklare den manglende forståelse af sammenhængen mellem modellerne. Med en erkendelse af at et klart billede af, hvad liv er, endnu ikke eksisterer, vil vi nu gå videre. En af de metoder, der benyttes til at undersøge liv, er simulering eller overførsel af egenskaber ved liv til et logisk medie. Det er netop denne metode denne opgave vil benytte sig af, og metoden vil derfor i de følgende afsnit blive gennemgået i et historisk perspektiv. 1.1 Automatteori Automatteorien forsøger at beskrive såvel biologiske som kunstige automater i et matematisk og logisk sprog (Burks i [15] side XV og 21 og von Neumann i samme side 91). Et yndet emne indenfor automatteorien er den universelle selv-reproducerende automat inspireret af Turings universelle maskine og formuleret af von Neumann (Adami i [9] side 22). Von Neumann som videreudviklede automatteorien i slutningen af 1940 erne og begyndelsen af 1950 erne, var tilhænger af en ny metode til at udvikle modeller og hypoteser. Hvor man hidtil havde fundet eksperimentelle data ved at udføre traditionelle forsøg i laboratoriet, mente von Neumann, at man også skulle benytte sig af de nye regnemaskiner (som han selv var med til at udvikle og beskrive) (Burks i [15] side 3). Von Neumann forsøgte med andre ord at skabe eksperimentelle data eller blot inspiration til videreudvikling af hypoteser på nye måder. Denne fokusering fik i begyndelsen af 1950 erne von Neumann til at udvikle de cellulære automater sammen med Ulam (Burks i [15] side 94). De cellulære automater gjorde i teorien en realisering af den universelle selv-reproducerende automat mulig i et logisk miljø, der kunne simuleres af computere, imens automaten ikke var mulig at konstruere i den fysiske verden i laboratoriet (et traditionelt forsøg var umuligt). Målet med realiseringen var at afdække nogle problemer eller karakteristika ved selv-reproducerende automater (nye eksperimentelle data). En cellulær automat er defineret som et gitter af felter, hvor hvert felt kan befinde sig i en af flere tilstande. Felternes skift til en ny tilstand afhænger af feltets aktuelle tilstand og de tilstødende felters 3 Citat af Foucault i [8] side 23 4 Eksempelvis selvorganiserende kritikalitet som første gang blev introduceret i 1987 i [25].

7 1.2 Kunstigt liv INDLEDNING 3 tilstande. Hvilke felter der fungerer som tilstødende vælges frit ved oprettelsen af den cellulære automat, dog spiller gitterets dimension oftest en rolle. Det lykkedes ikke von Neumann at færdiggøre en realisering af en universel selv-reproducerende automat før sin død. Men de cellulære automater fortsatte som en ramme til - på et abstrakt logisk niveau - at realisere forskellige fænomener, og selve ideen med at realisere/simulere modeller til at opnå ny viden viste sig vigtig. De cellulære automater blev eksempelvis brugt til at undersøge kompleksitet og kaos (Adami i [9] side 28). 1.2 Kunstigt liv Den første det lykkedes at konstruere en selv-reproducerende automat ved hjælp af cellulære automater, var Codd i 1968 (Adami i [9] side 27). Selvom automaten var simplere end den, von Neumann havde arbejdet på, var den stadig så kompleks, at den var svær at ræsonnere om. Der gik helt indtil 1984 før Langton viste, at en meget simpel selv-reproduktiv cellulær automat kunne konstrueres (Langton i [26]). Langtons opdagelse satte gang i et nyt forskningsfelt 5, hvor man efter von Neumanns forbillede forsøger at realisere modeller af liv for på den måde at opnå nye eksperimentelle data og ny viden om liv. Forskningsfeltet kunstigt liv (Artificial Life, AL) er i dag et aktivt felt, hvor man udøver frontforskning indenfor simulering af liv i helhed eller aspekter af liv. Langton som var - og stadig er - en ledende figur i feltet bygger sin definition af kunstigt liv på von Neumanns mål med den selvreproducerende automat: to abstract from the natural self-reproduction problem its logical form. ved at udvide denne sætning med biologiske aspekter i stedet for self-reproduction (Langton i [7] side XV og citat i [8] af Helmreich side 115). Navnet kunstigt liv sætter forskningsfeltet i kontrast til biologien. Hvor biologien beskæftiger sig med liv i den fysisk/kemiske verden, vi kender fra naturen, er mediet (med få undtagelser) for kunstigt liv et andet (oftest et logisk), og det kunstige liv er menneskeskabt. Simuleringerne af kunstigt liv foregår i tre afgrænsede områder (Taylor og Jefferson i [23] side 2): Wetware: Foregår på molekylært niveau. Forskningen omhandler oftest DNA og RNA-molekyler, som enten forsøges konstrueret ud fra nogle simple molekyler (aminosyrer mm.) eller som udvikler andre egenskaber end dem, de begyndte med. En relativ ny forskningsgruppes projekt blev beskrevet i Weekendavisen[34], hvor der benyttes andre byggesten (PNA) end DNA og RNA. 6 Hardware: Er ofte implementering af biologiske systemer på organismeniveau. Der fokuseres bl.a. på at modellere naturens avancerede sensoriske apparat. Det er svært i denne gren af kunstigt liv at undersøge de vigtige evolutionære mekanismer kendt fra biologien. Software: I denne del af forskningsfeltet hører bl.a. de cellulære automater, som vi stiftede bekendtskab med i 1.1. Desuden undersøges hele populationer af simplificerede organismer. Ved mange af disse populationssimuleringer har forskerne undersøgt de evolutionære mekanismer i en population. Disse tre kategorier kan så igen hver især opdeles i to afdelinger, hvoraf den ene forsøger at simulere hele levende systemer eller blot aspekter heraf, og den anden forsøger at syntetisere liv. Vi skal fra nu af beskæftige os med syntese af liv i et logisk miljø, konkretiseret i et softwaremiljø Syntese af kunstigt liv i software Ved syntese af liv, stilles spørgsmålet, hvorvidt en given simulering faktisk er i live. Langtons selvreproducerende cellulære automat vil nok af de færreste blive betegnet som levende. En pendant til selv- 5 Der snarere var en samling af forskellig forskning, der allerede var i gang, men som alligevel ofte dateres til feltets første konference afholdt i Los Alamos, 1987 (Emmeche i [1] side 25) 6 Med hensyn til feltets alder, kan det nævnes, at de første forsøg med syntese af organiske stoffer ud fra simplere stoffer tilskrives Stanley L. Miller allerede i 1953 (Fenchel i [2] side 37).

8 1.2 Kunstigt liv INDLEDNING 4 reproducerende automater i computere er computervirus 7. Computervirus mangler dog evnen til at udvikle sig uden hjælp fra programmører, hvilket vi normalt tænker på som en vigtig egenskab ved liv. Denne mangel blev der rådet bod på i programmet Coreworld (Rasmussen i [28]), som implementerer kerneelementerne i en computer (processor og hukommelse) virtuelt 8. Instruktionssættet for den virtuelle computer var stærkt simplificeret, og et program i Coreworld bestod af en sekvens assembler 9. Ved at lade kopieringsinstruktionen fejle en gang i mellem, gav man de virus-programmer, der udfyldte den virtuelle hukommelse en mulighed for at udvikle sig. Det er nu ikke kun selv-reproduktion, der bliver simuleret, men faktisk det evolutionære aspekt af liv, hvormed simuleringerne opfylder den genetiske definition af liv (jf. afsnit 1). Problemet med Coreworld var imidlertid, at systemet ikke var robust nok. Virusprogrammerne der kunne konstrueres var alt for skrøbelige og overlevede som regel ikke en mutation (fejlkopiering af en instruktion under selv-reproduktion). Langtons selv-reproducerende cellulære automat betegnes af mange som en milepæl i kunstig livs historie. Den næste store opdagelse må nok siges at være Thomas Rays Tierra 10, der var en videreudvikling af Coreworld (Adami i [9]). Ray indså, at Coreworlds skrøbelighed lå i den snævre kobling mellem instruktioner og operander. I stedet for at samle instruktioner og operander, delte Ray dem op og implementerede mønsterbaseret adressering. Det mest imponerende ved Tierra er de spændende resultater, der fås ved kørsel af programmet. Ray oplevede med det samme, at computerprogrammerne, der reproducerede sig og fyldte den virtuelle hukommelse op begyndte at mutere. Pludselig fandt Ray programmer, der var langt mindre end det første program, han havde lagt ind i hukommelsen til at begynde med. Efter længere tid fandt Ray programmer, der var under den teoretiske størrelse for succesfuld selv-reproduktion og ved nærmere undersøgelse fandt han, at de repræsenterede, hvad man indenfor biologien ville betegne som parasitter. Altså programmer der snyltede på andre programmers instruktionssekvens for selv at fuldende deres livscyklus (med en reproduktion). Er Rays programmer (eller digitale organismer, som han kalder dem) levende? Da Ray fremlagde sine resultater ved den anden konference for kunstigt liv blev forskerne delt i to lejre omkring dette spørgsmål (Helmreich i [8] side 5)). Systemet indeholdt mange af de karakteristika, som de fleste netop forbinder med liv. Det nye og meget essentielle var den overbevisende implementering af evolutionære processer, som bevirkede de emergente fænomener som parasitter, og hvormed - som før skrevet - systemet opfylder den genetiske definition på liv. Svaret på om systemet var levende er selvfølgelig, at det ikke er muligt at afgøre, da der mangler en klar defintion på liv, som vi så i 1. Ikke desto mindre skabte systemet påny debat om, hvilke egenskaber der er essentielle ved liv. Kan liv eksistere i andre former end i den velkendte carbonbaserede, vi kender? Forskningen i syntese af liv i softwareform fortsætter både ved at implementere nye Tierra-systemer 11 og ved at undersøge, hvilke kendetegn fra liv der forefindes (og ikke forefindes) i softwaresystemerne 12. For at se hvilke kendetegn, der eksisterer i systemet benyttes nogle gange andre modeller/anskuelser (jf. afsnit 1), som så lægges ned over det kunstige system. Med andre ord tester man om modeller, der ser ud til at være rigtige for biologiske systemer, også passer med de kunstige systemer En diskussion af hvorvidt virus kan betegnes som en kunstig form for liv kan findes i [24] af Spafford. 8 Coreworld var inspireret af computerspillet Core War, som blev udviklet i midten af 1980 erne (Adami i [9] side 43). 9 Assembler er maskininstruktioner i et symbolsk sprog, der gør det nemmere for mennesker at læse. 10 For mere uddybende information og for eventuelle referencer til Tierra her i teksten henvises der til Rays afgørende artikel [20]. 11 Eksempler er Avida (Adami i [9], Amoeba (Adami i [9] side 53), Physis ( og Cosmos (Taylor i [29]). 12 Som eksempelvis vist af Adami i [9]. 13 Selvfølgelig må systemerne ikke være bygget efter at passe ind i en bestemt model.

9 1.3 Motivation INDLEDNING Motivation Målet har indtil videre været først at komme nærmere, hvad liv er, dernæst at introducere et forskningsfelt, hvor egenskaber ved liv overføres til et logisk medie. Det var von Neumann, der var den første, som for alvor satte gang i simuleringen af aspekter ved liv (selv-reproduktion) i et logisk medie. Med Codd og især Langton kunne selv-reproduktion studeres i en anden form end den sædvanlige carbon-form, nemlig i de cellulære automater. I midten af 1980 erne skiftede man medie til computere (som jo også er et logisk medie) og simulerede tillige evolution og skabte nogle simuleringer, som nogle forskere stadig vil påstå er levende. Disse systemer har for mange ændret opfattelsen for, hvad liv er, og de giver en ekceptionel god platform til at undersøge biologiske aspekter såsom artsdannelse (Bonabeau i [22] side 315). Deres gode muligheder for at undersøge biologiske modeller, giver omvendt også en mulighed for at teste systemerne, hvis man har en model, man er sikker på er korrekt, og som er essentiel for liv. Simuleringerne - såfremt de faktisk repræsenterer en ny form for liv - giver også håb om endelig at kunne studere en komparativ biologi. Flere biologer mener nemlig, at vor forståelse af liv kraftigt er hæmmet af, at vi kun har set et eksempel (Ray i [21]). Mere kommercielt forudser Ray i [21], at de digitale organismer vil kunne avles til at løse komplicerede opgaver. Personligt finder jeg simuleringer af liv, hvor man implementerer vigtige egenskaber ved liv, og derefter eventuelt tester simuleringerne for overensstemmelse med modeller for biologiske systemer enormt interessant. Der er ingen tvivl om, at mit syn på hvad liv er, og hvad det ikke er, er blevet langt mere nuanceret igennem projektet. Projektet giver uden tvivl inspiration til nye simuleringer, der undersøger andre aspekter af levende systemer. 1.4 Problemformulering Målet med dette projekt er at konstruere et softwaresystem (fra nu af benævnt DigiLiv) og herefter observere essentielle egenskaber ved liv i systemet. DigiLiv vil blive konstrueret til netop at simulere egenskaber ved liv. Samlet kan opgavens mål formuleres i dette spørgsmål: Kan man overføre en eller flere af livs egenskaber eller kendetegn til et logisk miljø, konkretiseret i et softwaresystem og følgende observere egenskaberne i systemet. Jeg vil begynde med at vælge nogle vigtige egenskaber ved liv. Derpå eksplicit implementere en delmængde af de valgte egenskaber og til sidst observere den samlede mængde egenskaber i systemet. Det er hermed underforstået, at det er muligt at observere fænomener i systemet, som ikke eksplicit er blevet implementeret. 1.5 Afgrænsning Det vil kun være en udvalgt serie af egenskaber, som vil forsøges implementeret og analyseret. Der vil dog blive argumenteret for valget, selvom det kan vise sig svært at gøre fyldestgørende. DigiLiv vil blive konstrueret med et minimum af funktionalitet efter de krav, der bliver stillet ved analyse af de valgte egenskaber. DigiLiv vil være stærkt inspireret af Rays simulering, Tierra. Der vil dog blive foretaget forsimplinger i forhold til Tierra og lignende allerede eksisterende programmer på bekostning af fleksibilitet i DigiLiv. Sidste afgrænsning vil fokusere rapporten og er desuden nødvendig af tidsmæssige hensyn.

10 2 Biologiske egenskaber i DigiLiv Som det fremgår af problemformuleringen (afsnit 1.4) er målet at implementere og observere nogle essentielle egenskaber ved liv i et softwaresystem. Der vil derfor i nærværende og følgende afsnit blive gennemgået og analyseret en række egenskaber, som ønskes implementeret eller observeret i DigiLiv. Valget for hvilke egenskaber et kunstigt system skal indeholde, og hvorvidt de eksplicit skal implementeres er svært. Nogle forskere anser da også netop denne del af metoden som den kreative eller kunstneriske del i arbejdet med kunstigt liv (Helmreich i [8] side 112). Thomas Ray, som vel må anses for at være tilhænger af den genetiske definition af liv, argumenterer for blot at vælge selv-reproduktion og åben evolution i Tierra. I [20] er der dog ingen egentlige argumenter for valget. I [21] erkender Ray sværhedsgraden af at vælge de rette egenskaber og argumenterer for, at man i stedet for at implementere flest mulige egenskaber kendt fra biologisk liv hellere skal fokusere på en enkelt eller få egenskaber og implementere disse så ægte som muligt (Ray i [21] afsnit 2). Baggrunden for denne argumentation lader til at være en trang til at udvide rammerne for, hvad liv er. Ray giver hermed i forlængelse et eksempel med en maskine, der består Turing-testen (Turing i [27]), men som hverken er selv-reproduktiv eller har evolutionære muligheder. Liv for Ray behøver dermed ikke at indeholde alle kendetegn fra biologisk liv. Jeg er ikke enig i denne betragtning, eftersom det for mig er mest logisk, at et system, der indeholder mange kendetegn fra biologiske systemer er mere levende end et system med få kendetegn. Brugen af mere levende afspejler den manglende definition på liv, og jeg forudser, at denne brug vil blive endnu mere relevant i fremtiden, hvor flere typer for liv vil være til stede. Jeg vil påstå, at det er nemmere at argumentere for, at et meget levende system er levende i forhold til et mindre levende som eksempelvis maskinen, der bestod Turing-testen. Hvordan kan maskinen eksempelvis være levende, når det er stærkt diskutabelt, hvorvidt den overhovedet kan dø 14? Vil vi kalde noget levende, hvori det ikke er indbygget, at der igennem reproduktion kan foregå en udvikling? Jeg har imidlertid - ligesom Ray - valgt eksplicit at implementere selv-reproduktion og åben evolution i DigiLiv. Det bør her bemærkes, at den genetiske definition af liv (jf. afsnit 1) dermed er dækket ind. Min motivation og tilgang er dog ikke den samme som Rays. Dermed vil jeg ikke som Ray nøjes med eksplicit at implementere to egenskaber så ægte som muligt, men derudover forsøge at observere endnu en egenskab, der ikke er blevet implementeret eksplicit i DigiLiv. Denne egenskab anser stadig flere for at være en del af de krav, der bør stilles til et system, før det kan kaldes levende. Egenskaben jeg har valgt at forsøge at observere er evnen til at opretholde orden, som skal vise sig at dække den termodynamiske definition af liv, se afsnit 1. Et fænomen, der for mange også kendetegner liv er emergens, som i forskellige sammenhænge vil blive analyseret og diskuteret, hvorvidt det forefindes i DigiLiv. I de følgende afsnit vil hver af de valgte egenskaber blive analyseret. Analysen kan muligvis til tider virke omvendt og programnær, da den ofte vil referere til et system (eller flere systemer), der vil minde meget om det system, der ønskes udviklet (DigiLiv), og som analysen dermed også bør lede op til. Dette er en konsekvens af, at en løsning af opgavens problem allerede eksisterer. En interessant analyse må derfor nødvendigvis forholde sig til tidligere løsninger. 14 Mange vil nok mene, at liv bl.a. er defineret ud fra dets modsætning døden, som menneskeheden tydeligvis heller ikke har en klar forståelse af.

11 3 Evolution i DigiLiv Jeg har som skrevet valgt at implementere selv-reproduktion og evolution eksplicit i DigiLiv. Dette valg er foretaget primært af to årsager. For det første har systemer, der har implementeret netop disse to egenskaber, haft gode resultater. For det andet bliver den genetiske definition af liv dermed dækket ind, hvilken jeg anser for den mest generelle definition samtidig med, at den også er konkret og præcis i sin beskrivelse af liv. For at vide hvordan de to egenskaber implementeres i et datalogisk system, er det nødvendigt først at forstå, hvad de to egenskaber dækker over. Evolution betyder egentlig bare udvikling (Thomsen i [4]). I biologien er begrebet imidlertid mere præcist defineret. Ved evolution forstås dermed ikke en udvikling i løbet af en enkelt organismes livscyklus, men derimod udvikling igennem generationer af afkom: evolution er afkom med modifikationer (Futuyma i [13] side 4). Darwin formulerede kravene til evolution på følgende måde: selv-reproduktion i et endeligt miljø med arvelig genetisk variation 15 Det forstås hermed, at selv-reproduktion i biologien er en integreret del af det evolutionære begreb. Det ses ligeledes, at variation eller modifikationer er en nødvendig del af evolution. Der er i dag bred enighed om, at al variation i biologiske organismer stammer fra mutationer i det genetiske materiale (Futuyma i [13] side 4). En mutation er defineret som enhver permanent ændring i det arvelige materiale (Rasmussen i [6]). Det genetiske eller det arvelige materiale kan for biologiske organismer forstås som en beskrivelse af organismen kodet i en nukleotidsekvens (som regel DNA). Denne beskrivelse er i Tierra (og DigiLiv) kodet i assembler-sekvenser. Fra nu af vil af vil det genetiske materiale for både biologiske og digitale organismer blive omtalt som organismens genom. Mutationer kan forekomme på flere forskellige måder, deriblandt ved replikation af genomet og påvirkning af mutationsfremmende stoffer/processer (mutagener), såsom kemiske stoffer eller kosmisk stråling. Evolution dækker samlet over et samspil af følgende elementer: Selv-reproduktion Genom Mutation (eller variation) Darwins krav om at omgivelserne eller miljøet, evolutionen udspiller sig i, er endelige bevirker, at ressourcerne i omgivelserne er begrænsede, og at en kamp om disse vil opstå. Da der ved selv-reproduktionen til stadighed vil komme nye organismer til, er en naturlig konsekvens, at nogle organismer må gå til i denne kamp. Implicit ligger der altså i kraft af selv-reproduktionen og det endelige miljø eliminationen af visse organismer. Dermed kan man stille spørgsmålet om, hvordan fordelingen af nedarvelige beskrivelser vil udvikle sig. Der er to processer, som begge forsøger at forudsige og beskrive denne fordeling. Der er tale om naturlig selektion og genetisk drift, som sammen med de tre ovenstående elementer er med til at definere begrebet evolution. Det vil nu være behændigt at indføre begrebet fitness, som (biologisk) er defineret til at være en kombineret overlevelsesværdi og reproduktiv evne (Rasmussen i [6]). Den naturlige selektion forudsiger, at kampen om ressourcerne er vigtig, og at de organismer, der vil forekomme flest af, vil være dem, der klarer sig bedst i kampen med andre organismer, og som efterlader flest afkom. Fordelingen af genomer vil altså være skæv med de organismer, der har den højeste fitness som mest udbredte. Den genetiske drift forudsiger, at det ikke altid er fitness, der er bestemmende for, hvilke genomer der er mest udbredte. Således kan man forestille sig eksempelvis natur-katastrofer, hvor tilfældig udvalgte organismer overlever og bagefter udbreder sig. Fordelingen af genomer vil i dette tilfælde også være skæv, men det vil være helt tilfældige beskrivelser, der vil være mest udbredte. I naturen er det et samspil mellem disse to processer, der bestemmer evolutionen af liv Oversat citat fra Ray i [21] som oprindeligt stammer fra Darwins On the origin of species by means of natural selection or the preservation of favored races in the struggle for life, Processernes betydning i forhold til hinanden er stadig under debat, se Futuyma i [13] side 320.

12 3.1 Åben evolution EVOLUTION I DIGILIV Åben evolution Før vi fortsætter til den mere konkrete analyse af, hvordan evolution implementeres i DigiLiv, bør en bemærkning om åben evolution falde. Det blev nemlig nævnt i afsnit 2, at det var åben evolution, der eksplicit ønskes implementeret i DigiLiv. Med åben evolution menes der en evolution, der ikke er begrænset på nogen måde. En evolution hvor alle niveauer af kompleksitet er mulige, og hvor alle former for organismer i teorien kan udvikles. Det virker intuitivt, at biologisk liv ikke kun undergår evolution, men en åben evolution. For at syntetisere liv er det derfor vigtigt at holde sig for øje, at den evolution, systemet udstyres med, er åben. Hvad man normalt fokuserer på for at opnå et ubegrænset system er universel beregnelighed og et ikke-afgrænset fitness-landskab. Med den universelle beregnelighed kan et hvilket som helst niveau af kompleksitet teoretisk set nås (Ray i [20] side 372). Et fitness-landskab kan forstås som en funktion, der ud fra en given position i landskabet (eksempelvis en organismes genom) giver positionens tilhørende fitnessværdi (Adami i [9] side 200). Er fitness-landskabet statisk, vil evolutionen nødvendigvis gå i stå, når landskabets højdepunkt er nået. Skal evolutionen derfor være åben (ubegrænset) må fitness-landskabet være dynamisk eller uendeligt (her taler man ofte om fraktale landskaber Adami i [9] side 209). Ved interaktion imellem organismerne indgår organismerne i fitness-landskabet og evolutionen af organismerne er med til at forme fitness-landskabet, der dermed bliver dynamisk. 3.2 DigiLiv Vi skal nu kigge på, hvordan evolution konkret kan implementeres i et computersystem. Analysen vil tage udgangspunkt i Tierra (Ray i [20]) og Avida (Adami i [9]), og eventuelle henvisninger i det følgende vil være til disse to tekster samt Tierras tekniske manual [12] og Avidas tekniske manual [10] med mindre andet er angivet. Når flere muligheder opstår, vil de generelle retningslinier for valg være at fremme et så simpelt system som muligt og respektere mediet så meget som muligt. Med sidstnævnte menes der, at de biologiske analogier og ideer skal gøres så abstrakte som muligt og derpå overføres på en måde, der er så naturlig som muligt for computeren. Denne tankegang er inspireret af Ray s opfordring og virker for mig logisk (Ray i [21] afsnit 4), idet man dermed må opnå maksimal udnyttelse af computerens potentiale. Modsat både Tierra og Avida vil de digitale organismer ikke blive sammenlignet med CPU er, men derimod processer. Dermed må det samlede system betegnes som en simuleret SISD (single instruction single data) maskine med multiprogrammering modsat en parallel computer af typen MIMD (multiple instruction multiple data) (Ray i [20] side 375 og Adami i [9] side 301). Argumentet for en MIMDarkitektur er meget nærliggende, nemlig at biologiske organismer fungerer samtidigt. Det er dog ikke trivielt at overføre denne samtidighed til computere, som i deres natur er sekventielle. Ideelt ville man benytte et kompliceret MIMD-system, der bestod af flere hardware-processorer. Da disse systemer ikke er almindelige, og DigiLiv med stor sandsynlighed kun vil blive kørt på computere med SISD-arkitektur, anser jeg det for mest naturligt at simulere samtidigheden ved hjælp af et multiprogrammeringssystem. Man kunne desuden også argumentere for, at en software-simulering som eksempelvis Tierra af et MIMD-system på en SISD-maskine egentlig er et multiprogrammeringsoperativsystem på en SISD-maskine, hvor man har valgt nogle passende processkift- og dataintegritetskonventioner. Kigger man på Tierras organisme-strukturer rent programmeringsmæssigt har disse da også mere tilfælles med proces-kontrol-blokke (PCB) end CPU er (Ray i [20] appendix A). Systemet vil derfor i teorien komme til at bestå af en enkelt CPU, en kerne/operativsystem som implementerer multiprogrammering, et lager og nogle processer. Udformningen af og adskillelsen imellem disse komponenter vil først og fremmest afhænge af programnære overvejelser. Man kan nu beskrive, hvorledes en evolution ville foregå i DigiLiv med systemets overordnede struktur og begreberne fra definitionen af evolution. Processerne i DigiLiv svarer til de biologiske organismer. De biologiske organismers genom vil svare til processernes programkode, som er en assembler-sekvens placeret i lageret. Selv-reproduktion består for processerne i, at de kopierer hele deres genom (assembler-sekvens) til et andet sted i lageret, og at en ny selvstændig proces derpå oprettes. Mutationer i DigiLiv giver sig til kende ved, at kopieringsprocessen er fejlbehæftet ganske som for biologiske organismer. Mutationer ved

13 3.2 DigiLiv EVOLUTION I DIGILIV 9 kosmisk stråling kan også implementeres ved at lade lageret undergå sjældne forandringer. Da lageret er endeligt vil der opstå en kamp om plads til udbredelse. Her vil naturlig selektion spille en rolle, idet de processer, der kopierer sig selv hurtigst, vil have en fordel. Desuden vil processer, der klarer sig bedst ved interaktion med andre processer blive fremmet. Den genetiske drift kan implementeres ved at lade katastrofer forekomme, eksempelvis tilfældig drab af et givent antal processer CPU en CPU en i DigiLiv svarer til en almindelig CPU blot forsimplet og med et stærkt reduceret instruktionssæt. Arkitektur af CPU en Der er foretaget en del forsimplinger i forhold til normale CPU er, idet antallet af registre er reduceret, og et egentlig lager ikke kan indgå til mellemberegninger. I stedet er implementeret to stakke til at gemme delresultater ved beregninger. Dette valg er en forsimpling, da man dermed undgår omstændig allokering og adressering til værdier i lageret. Stakkene er variable i størrelsen, men endelige. To stakke er implementeret for at gøre arkitekturen Turing-fuldstændig (Adami i [9] side 228). Antallet af registre er som skrevet kraftigt reduceret, således at kun 3 registre er til rådighed for processerne til almindelige beregninger. Oprindeligt blev Tierra konstrueret med 4 registre, men det fjerde viste sig unødvendigt, og antallet er også 3 i Avida. Dette antal giver god mening, da det netop sikrer mulighed for ombytning af værdier mellem to registre, hvorfor jeg også vælger at benytte 3 registre. Derudover er et stakpeger-register og et instruktionspeger-register (eller program counter, pc som fra nu af foretrækkes) implementeret. Instruktionssæt En meget vigtig del af DigiLiv er valget af instruktionssættet, altså de assemblerinstruktioner processerne kan benytte sig af. For at evolution kan foregå, indså Ray, at robustheden af sættet er meget vigtig. Instruktionssæt til normale computere er enorme, hvis man til hver instruktion medtager operander eller argumenter 17. Sådanne sæt er ekstremt sårbare overfor mutationer, hvilket bl.a. blev vist i 2002 af Adami og andre i [30], hvor det nævnes, at i et normalt sæt med indlejrede argumenter er 99,7% af alle mutationer skadelige. Derfor er en væsentlig pointe at konstruere et meget simpelt instruktionssæt. Tre ændringer gjorde Tierra i stand til at undvære argumenter i instruktionerne: I stedet for at anvende de tal-adresser (offset), som benyttes i maskininstruktioner, videreudviklede Ray en form for etikettebaseret relativ adressering kendt fra assemblerkode. For igen at holde instruktionssættet så simpelt som muligt, valgte Ray kun at tillade to bogstaver i etikettealfabetet. Da genomet kun består af assembler-instruktioner og intet andet, er det ikke muligt at angive etiketter som ved almindelig assemblerkode. Derfor lod Ray en etikette definere ved en sekvens af de to etikettebogstavsinstruktioner. De to instruktioner har kun til formål at fungere som etikettebogstaver og blev derfor døbt nops (no-operation). Ved et hop til etiketten eller adressen nop0 nop1, ville man indikere dette med det komplementære mønster nop1 nop0 efter den aktuelle hop-instruktion (og derved undgå at medgive et etiketteargument). I [30] viser Adami og andre, at komplementaritet ikke er nødvendig, og at et instruktionssæt med ens mønsteradressering faktisk er stærkere, hvorfor jeg vil vælge denne form for adressering. Eliminering af talkonstanter. Dermed må man benytte registerværdier i stedet, som kun kan konstrueres ved hjælp af instruktionssekvenser (eksempelvis zero inc inc for at opnå værdien 2). Avida har en instruktion (som dog ikke er med i standard-sættet), hvor en registerværdi kan angives ved hjælp af et efterfølgende nop-mønster. Denne sidste metode vil dog ikke forfølges i DigiLiv. Hvilke registre der skal benyttes til en given instruktion angives alternativt. I Tierra er der implementeret flere ens instruktioner (eksempelvis inc-a og inc-b for henholdsvis register a og b). I Avida har man udvidet brugen af nops, således at mønsteret efter en instruktion angiver, hvilket 17 Se eventuelt et eksempel på et MIPS-instruktionssæt i [16] af Patterson side 310.

14 3.2 DigiLiv EVOLUTION I DIGILIV 10 register der skal benyttes som argument. Herved bliver det bekvemt at indføre 3 nop-instruktioner, en for hvert register. Avidas metode og antal af nops vil jeg også forsøge at implementere i DigiLiv. Her følger en gennemgang og diskussion af de instruktioner, der synes nødvendige og derfor vil blive implementeret i DigiLiv. Nop-instruktioner Som før skrevet vil jeg vælge at implementere 3 nop-instruktioner, nop0, nop1 og nop2. Aritmetiske instruktioner Generelt er der foretaget lidt forskning i forskellen mellem instruktionssæt og især med hensyn til aritmetiske instruktioner synes valget af være afgjort af tilfældigheder og erfaringer. Jeg vil derfor holde mig til et udvalg af instruktioner, man har erfaring med, og som sikrer Turing-fuldstændighed. Af operatorer med en operand fås hermed zero, shiftl, inc, dec kendt fra både Tierra og Avida og shiftr kendt fra Avida. Af operatorer med to operander fås sub kendt fra begge systemer og add og nand kendt fra Avida. nand giver organismerne mulighed for at konstruere alle former for logiske operationer (Adami i [31]). Stak-instruktioner Til at benytte de to stakke er tre instruktioner nødvendige, switchstack som skifter imellem de to stakke og push og pop som henholdsvis lægger en værdi på stakken og tager en af. Flow-instruktioner To elementære flow-instruktioner implementeres: jumpf og jumpb. Hver af dem flytter pc en (program counter) til et nop-mønster, der svarer til det mønster, der umiddelbart følger jump-instruktionen i henholdsvis forlæns og baglæns retning. Hvis ingen nop-instruktioner følger hoppes til en absolut adresse angivet i et passende register. Disse to jump-instruktioner er kendt fra både Tierra og Avida. Desuden er call, der har samme effekt, men derudover lægger værdien af pc en på stakken og return, der returnerer til en pc-værdi, der hentes fra stakken implementeret i begge systemer. call og return tilføjer intet essentielt til instruktionssættet, og spørgsmålet er derfor om de egentlig er nødvendige. Dette spørgsmål afspejles i det faktum, at kun jump-instruktionerne ser ud til at være implementeret i tidlige versioner af Avida (se den tekniske manual for Avida fra 1995, [11]). Man har imidlertid senere implementeret både return og call. Selvom der ikke findes dokumentation for deres virkning, ser jeg deres tilstedeværelse i nyere udgaver af Avida som et tegn på, at erfaringen tilråder dem og vælger derfor også at medtage dem i DigiLiv. Betingelses-instruktioner Mindst en betingelsesinstruktion er nødvendig for at holde den virtuelle computer Turing-fuldstændig. Der findes imidlertid ingen dokumentation for, hvilken udformning der sikrer de bedste vilkår for evolution. Dog viser [30], at det ikke hjælper at implementere flere redundante instruktioner. Derfor er mit valg faldet delvist tilfældigt på en enkelt betingelsesinstruktion fra Avida, nemlig ifneq som udfører den efterfølgende instruktion, hvis to angivne registre ikke er ens og ellers fortsætter med nummer to instruktion efter ifneq. Specielle instruktioner I Avida og Tierra findes en række avancerede og utraditionelle instruktioner, der for mig mest af alt minder om systemkald. Det drejer sig om tre reproduktive instruktioner kendt fra både Avida og Tierra, alloc, copy og fork 18, der henholdsvis allokerer en mængde hukommelse til den nye proces, kopierer en instruktion fra et sted i lageret til et andet, og som opretter en selvstændig datter-proces med egen instruktionspeger og proces-kontrol-blok. Derudover er to sensoriske instruktioner nødvendige, searchf og searchb, der søger henholdsvis forlæns og baglæns efter et nopmønster, der svarer til det, der efterfølger hver instruktion. Den absolutte adresse på det fundne mønster og mønsterets størrelse gemmes i to passende registre til brug for processen. Disse to sensoriske instruktioner er nødvendige, da absolutte adresser ikke helt kan undværes. Således vil en absolut adresseværdi blive returneret ved allokering af en mængde hukommelse (nemlig startadressen på allokeringen). For at kunne beregne størrelser af genomer er det også nødvendigt 18 fork instruktionen kaldes i de fleste andre tekster for divide, men jeg mener her igen, at man bør overtage de begreber, vi kender fra datalogien, idet vi jo beskæftiger os med computer-mediet.

15 3.2 DigiLiv EVOLUTION I DIGILIV 11 for processerne at kunne arbejde med absolutte adresser. Da genomets størrelse indgår i den mest oplagte måde for en proces at kopiere sig på (jf. bilag B), er de to adresseinstruktioner foruden i Tierra og Avida også valgt implementeret i DigiLiv. For at holde de to sensoriske instruktioner så simple og robuste som muligt, vil de kun søge i den aktuelle proces genom. Dette har imidlertid den konsekvens, at lokalisering af andre processers genomer og kodestumper i mange tilfælde bliver besværliggjort og i visse tilfælde umuliggjort. Da jeg som sagt anser samtlige ovenstående instruktioner for at gå under kategorien systemkald i normal datalogisk forståelse, vil jeg her gøre noget nyt i forhold til hidtidige syntetiske systemer og implementere en såkaldt syscall-instruktion. Den vil benytte første register til at bestemme en kaldkode og derefter udføre en bestemt avanceret funktion, der tilsvarer kaldkoden. Dette valg understreger mit forsøg på at respektere mediet og lade DigiLiv inspirere så meget som muligt af computeres virkemåde. Generelt gælder det, at alle instruktioner skal opføre sig så robust som muligt. Hvis en proces eksempelvis udfører pop fra en tom stak, skal CPU en ikke gå ned, men blot fortsætte med næste instruktion i processens genom. En oversigt og detaljeret beskrivelse af hver instruktion findes i bilag A. Fejlrater og mutationer I Tierra var en del instruktioner fejlbehæftede, således at inc eksempelvis kunne tælle et register 2 op eller slet ikke tælle op i stedet for at tælle værdien af registeret op med 1. Jeg mener imidlertid ikke, at dette er at respektere mediets natur, som må siges at have en ekstrem lav fejlrate. Mutationer, der muliggør variation, må imidlertid indføres ved at konstruere en fejlrate på nøje udvalgte instruktioner: enten copy-instruktionen eller fork-instruktionen. De for evolution vigtige mutationer forekommer ved reproduktion (jf. afsnit 3). Da fork-instruktionen netop indikerer et generationsskifte, har jeg valgt at lade fork-instruktionen stå for den genetiske mutation. I Avida kan insertions og deletions (henholdsvis indsætning og sletning af genetisk materiale i genomet) forekomme i vilkårlige længder ved hjælp af fork-instruktionen. Disse to typer for mutationer sker i naturen klart oftest ved fejlagtige overkrydsninger (Hartwell i [17] side 378). Overkrydsninger kan strengt taget kun foregå ved en form for kønnet formering, som må forventes at være opstået senere i den biologiske evolution som en avanceret fornyelse. Derfor vil jeg i stedet kun lade tilføjelser og sletninger forekomme i størrelser af en enkelt instruktion, som kan sammenlignes med fejl i biologiske replikationsapparater (Hartwell i [17] side 376) Kernen Kernen eller operativsystemet (fra nu af kernen) har tre vigtige opgaver i den virtuelle computer. For det første skal en skeduleringsalgoritme vælges og konstrueres (ligesom for almindelige computer-systemer). For det andet skal processerne aktivt dræbes, da de ikke vil terminere af sig selv, og fordi evolution (og den endelige plads) kræver, at organismer dør og nye - måske modificerede - kommer til. Sidst skal kernen kunne udføre evetuelle systemkald foretaget af processerne. Skedulering Det er klart, at der ønskes en algoritme, der simulerer samtidighed så godt som muligt. Konsekvensen af dette er, at hver proces kun udfører en instruktion, før der skiftes til næste proces. En sådan skedulering viser sig imidlertid at selektere kraftigt for små genomer (Ray i [20] side 379). Vil man give organismerne mulighed for at vokse i genomstørrelse og udvikle kompleksitet, er det derfor nødvendigt i skeduleringen at tage højde for genomernes størrelse. Dette gøres på en fornuftig måde i Avida ved at indføre en merit til hvert individ. Meritten beregnes på baggrund af organismens størrelse og eventuelle bonusser. For at styre ophobningen af junk-instruktioner kan man indføre en konstant, α der afgør størrelsens betydning for meritværdien. Ønsker man at selektere for små genomer, angives en værdi mindre end 1. Modsat angives en værdi større end 1 for at selektere for voksende genomer. Meritten for

16 3.2 DigiLiv EVOLUTION I DIGILIV 12 hver organisme kan nu udtrykkes ved følgende ligning: M = α genomestørrelse (1) idet jeg ikke medtager såkaldte bonusser i beregningen. Bonusser benyttes i Avida til at foretage mere genetisk algoritmisk orienterede forsøg, hvor specifikke opgaver ønskes belønnet. For at holde tidsskivestørrelsen, ts uafhængig af processernes meritter og dermed størrelser, kan man normalisere processernes tidsskiver omkring den maksimale merit i populationen og en fastlagt maksimal tidsskivestørrelse: ts = ts max (M/M max ) (2) Det viser sig imidlertid, at selvom tidsskiverne er normaliserede, er det ikke trivielt at integrere tidsskivestørrelserne i skeduleringen. Man kan vælge blok-skedulering, hvor en hel tidsskive for en given proces udføres i et hug; dette sker så på bekostning af samtidighed. En anden mulighed er at ændre tidsskiven til en tilfældig størrelse på enten 0 eller 1, dog med en sandsynlighed, der stemmer overens med den oprindelige tidsskives størrelse; dette sløver imidlertid systemet på grund af mange genereringer af tilfældige tal (Adami i [9] side 307). Sidst er muligheden for at konstruere en algoritme, således at kun en instruktion udføres ad gangen, men at det samlede antal instruktioner udført pr. runde eller update er lig med størrelsen af processens tidsskive. Sidste skeduleringsmetode, som er standard i Avida, er den, jeg har valgt. Rundebegrebet i DigiLiv skal vise sig at være nyttigt, hvorfor det nu klart defineres som udførelsen af alle organismers tidsskive netop en gang. Procesterminering Det er som nævnt nødvendigt for kernen at terminere processerne eller organismerne aktivt, da de ikke selv vil gå til. I Tierra er en såkaldt reaper-kø implementeret, som dræber processer, så forbruget af lager aldrig overstiger 80% af den samlede kapacitet. I Avida er der flere muligheder. Jeg vælger den simpleste model, hvor processer blot dræbes efter alder, så antallet af individer holdes på et fastlagt antal. Det bør bemærkes, at dette valg afhænger af skeduleringsalgoritmen. Hvis skeduleringsalgoritmen ikke tog højde for processernes merit (proportional til processernes genomlængde), ville en procestermineringsalgoritme, der blot dræbte de ældste processer gøre det ekstra svært for processerne at vokse i genomstørrelse. Med andre ord er det nødvendigt at tage højde for procesmerit enten ved skedulering eller ved procesterminering (eller begge steder). Det bør her bemærkes at en hensynstagen til meritter strengt taget ikke kendes fra naturen. Det giver imidlertid en mulighed for, at kompleksitet har større mulighed for at udvikles. Man kan forsvare denne hensynstagen med, at der i et system som DigiLiv er et konstant højt selektionspres modsat et skiftende selektionspres i naturen. Man taler således om perioder i den biologiske evolution, hvor tomme økologiske nicher 19 opstår og giver mulighed for en udvikling af nye adaptioner og kompleksitet (Futuyma i [13] side 715). Disse nye nicher har svært ved at opstå i DigiLiv (og til dels også i naturen) på grund af de simple omgivelser (sammenlign eksempelvis størrelsen af DigiLivs miljø med naturens) og organismernes enkelthed. Meritkorrektionen kan derfor ses som en kompensation for det simple miljø og en hjælp til at kick-starte kompleksitet i simple organismer Hukommelsen Hukommelsens form og virkemåde er særdeles vigtig - måske lige så vigtig som kernen og CPU en. Der skal vælges en form på hukommelsen, og det skal bestemmes, hvorledes integritet sikres samtidig med, at eventuel kommunikation via hukommelsen kan opnås. Udformning Hukommelsen bliver som før beskrevet kun brugt til genomer og ikke data benyttet ved beregninger. De fleste Tierra-lignende programmer inklusive Avida har valgt at implementere et todimensionelt miljø i stedet for Tierras oprindelige en-dimensionale. Igen vil jeg foretrække at holde mig til 19 Økologisk niche kan defineres som et multidimensionalt rum, en organsime optager i et økosystem, inkluderende energiressourcer og konkurrencevilkår, Rasmussen i [6].

17 3.2 DigiLiv EVOLUTION I DIGILIV 13 Adgangsområde Læsbar Udførbar Skrivbar Eget genom x x x Forælder/barns genom x x x Andres genomer x - - Tabel 1: Processers rettigheder computerens hidtidige udformning, nemlig med en hukommelse i en dimension. Konsekvenserne er bl.a., at der ingen euklidiske afstande er imellem organismerne. Som i andre systemer (Coreworld, Tierra og Avida) vil jeg dog forfølge en cirkulær form for hukommelse, idet adresseringsværdier til brug ved flow-instruktioner som jump og call vil blive regnet modulo hukommelsens størrelse. På trods af en sådan sikring ikke findes i almindelige computere, anser jeg det for en fordel, at systemet på denne måde gøres mere robust. En biologisk videreførelse som jeg anser for nødvendig er hvert genoms cirkulære form (kendt fra især bakterier og virus), der sikrer, at pc en ikke forlader genomet. Vil en proces udføre andet kode end dens eget, er det derfor nødvendigt aktivt at flytte pc en, eksempelvis ved et hop til en bestemt lokation udenfor genomet (såfremt dette tillades). Hukommelsespolitikker En vigtig del af den virtuelle computer er dens hukommelsespolitikker. I Tierra kunne organismer læse og udføre instruktioner i andre organismers genomer, men havde ikke skriverettigheder. I Avida følte man det vigtigere at overholde opfattelsen af processerne som celler med afgrænsede membraner og gjorde derfor genomerne cirkulære, så pc en aldrig kan forlade et givent genom. Dog er en udvidet hop-instruktion implementeret, hvor en proces aktivt kan flytte pc en til en nærliggende organisme eller celle i den to-dimensionale hukommelse. Behovet for adgang til andre genomer udspringer klart af ønsket om en form for kommunikation eller interaktion imellem processerne. Således er et af de mest fascinerende fænomener i både Tierra og Avida parasitisme, som kun kan lade sig gøre ved adgang til andre genomer. I naturen er den nok mest drastiske interaktion imellem to organismer optagelse af den ene. Det er imidlertid ikke oplagt, hvordan dette fænomen direkte kan overføres til computermediet. I stedet bør vi kigge på, hvordan processer normalt kommunikerer og interagerer. Her er der tydeligvis to måder at interagere nemlig enten igennem hukommelsen eller ved kommunikationskanaler. Kommunikationskanaler er bestemt interessante 20, men er en forholdsvis specialiseret form for kommunikation, der må forventes kun at kunne indgå ved samarbejdende processer, hvilket organismerne i DigiLiv ikke kan forventes at være, i hvert fald ikke i begyndelsen. Derfor vælger jeg at lade processerne kommunikere udelukkende via hukommelsen. Ser man på normale kerner og operativsystemer er det kendetegnende, at der er flere rettigheder imellem et forælder-barn par af processer end imellem andre par. Dette virker som en logisk og fornuftig politik at overføre til organismerne i DigiLiv. En politik kunne dermed være, at et forælder-barn par af processer har læse- og udførerettigheder hos hinanden, og alle andre procespar kun har læserettigheder hos hinanden. Denne politik leder interessant nok op til en positiv interageren imellem processerne, nemlig mellem barn og forælder. Parasitisme og andre negative interaktioner er dog sværere at forestille sig. Afhængig af den intimitet af samarbejdet mellem forælder og barn, der udvikles i systemet, vil interaktionen eventuelt kunne betegnes som en form for multicellularitet. Da hukommelsespolitikker har vidtrækkende (og i stor udstrækning uforudsigelige) følger for udformningen af organismernes fitnesslandskab, vil jeg gøre disse regler konfigurerbare, så det bliver muligt at prøve sig frem. Et skema over konfigurationen med en given politik angivet er vist i tabel De bør i fremtidige projekter forsøges implementeret eksempelvis ved hjælp af systemkald.

18 4 Termodynamik i DigiLiv Vedligeholdelse af lav entropi er en anden egenskab DigiLiv forventes at indeholde. Denne egenskab bliver ikke implementeret eksplicit, og målet er derfor - efter systemet er konstrueret - at teste, om egenskaben kan observeres i DigiLiv. Mere præcist ønskes belæg for, at den termodynamiske definition af liv er opfyldt af systemet. Denne forudsiger netop, at liv vedligeholder en lav uorden i sine omgivelser. For at forstå hvad dette indebærer, er det en god ide at kigge på, hvilke tanker den termodynamiske definition udspringer af. 4.1 Statistisk mekanik Den termodynamiske definition af liv kommer af sammenligningen af liv med statistisk mekaniske systemer. Statistisk mekanik forsøger at beskrive en samling af objekter ud fra nogle statistiske sandsynlighedsberegninger, hvor kun de lokale kræfter og regler der påvirker hver enkelt objekt er kendte (i modsætning til det samlede systems tilstand). Termodynamiske modeller er derfor oplagte til at beskrive komplekse systemer, hvor antallet af objekter er så stort, at det praktisk er umuligt at beskrive systemets samlede tilstand deterministisk. I statistisk mekanik beskriver man makrotilstande for systemer indeholdende objekter med en række attributter som i systemer med atomer kunne være position, p (defineret ved tre koordinater x, y og z) og atomets impuls, i (produkt af atomets hastighed og masse beskrevet som en vektor igen med tre variable). Man forestiller sig et såkaldt faserum, der har samme antal dimensioner, som der er frie uafhængige variabler (frihedsgrader) i systemet, altså 6 dimensioner for tilfældet med systmet bestående af et enkelt atom (3 dimensioner for dets position og yderligere 3 for dets momentum) (se [4] for en definition). Atomets eller mere generelt partiklens tilstand i form af position og impuls udgør dermed et enkelt punkt i faserummet, og partiklens udvikling i tid kan så visualiseres som en banekurve i faserummet. Studeres et system med to partikler fås et faserum med 12 dimensioner. Et punkt i dette 12-dimensionale faserum angiver dermed bestemte værdier for begge partiklers positioner og impulser. Selvom der i alt nu er 12 frihedsgrader, benævnes hvert punkt kun med de to typer af frihedsgrader, der arbejdes med: (p, i). Det er klart, at faserum for rigtige systemer med eksempelvis partikler som atomer er af enormt mange dimensioner. Stadigvæk vil hvert punkt i et sådant faserum angive det samlede systems tilstand præcist. Det kunne være interessant, hvis man kunne forudsige, hvornår og hvor ofte systemet befinder sig i en bestemt tilstand. Dette kunne i teorien lade sig gøre ved at følge de kurvebaner, der viser sig ved at betragte systemet over tid. En sådan analyse ville dog kræve, at man beregnede interaktionen mellem hver partikel, hvilket praktisk er umuligt. Opgiver man at bestemme, hvornår systemet befinder sig i en bestemt tilstand, kan det imidlertid lade sig gøre at bestemme, hvor ofte systemet vil befinde sig i et bestemt område af faserummet. Dette gøres ved at bestemme en statistisk distributionsfunktion, ρ(p, i) (hvor p og i som sagt dækker over alle frie variabler i systemet), som beskriver densiteten af punkter i faserummet i området (p + p, i + i) (Adami i [9] side 88). Som navnet antyder, er denne funktion ikke af deterministisk natur, men i stedet statistisk. ρ kan bruges til at definere sandsynligheden, φ(p, i) for at systemet befinder sig i en bestemt tilstand. Ved at vide hvor ofte en tilstand optræder, kan man faktisk beregne makroskopiske karakteristika (opførsel af det samlede system), såsom gennemsnitlig energi (Adami i [9] side 90). Man bør bemærke, at siden vi har forladt tanken om kurvebaner i faserummet og i stedet koncentrerer os om sandsynligheder for tilstande, er der ingen afhængighed af tidligere tilstande (især begyndelsestilstanden) også kaldet historisk afhængighed. Denne negligering af historie i systemet er kun legal, sålænge det kan antages, at alle tilstande før eller siden optræder. Konsekvensen af dette er, at kun en kurvebane må eksisterer, hvormed systemet i så fald kaldes ergoditisk (engelsk ergodic) (Adami i [9] side 91) Entropi Entropien af et fysisk system kan forstås som graden af uorden i systemet. Entropi-begrebet kendes også fra informationsteorien, hvor det dækker over graden af usikkerhed. Denne usikkerhed beskrives ofte som det

19 4.1 Statistisk mekanik TERMODYNAMIK I DIGILIV 15 gennemsnitlige antal ja/nej-spørgsmål, der skal stilles før værdien eller tilstanden af en given stokastisk variabel kan afgøres ([4] under information). Det kan være gavnligt at forstå sammenhængen mellem informationsteoriens og fysikkens entropi. Således kan man også i fysiske systemer definere entropien som usikkerheden af tilstanden af systemet. Entropien af et fysisk system bliver dermed koblet til antallet af mulige tilstande og sandsynligheden for at befinde sig i hver af disse tilstande. Fysisk entropi er defineret som n S = φ(j) log ( φ(j) ) (3) j=1 hvor φ(j) er sandsynligheden for at befinde sig i tilstand j (j dækker i atom-systemet fra afsnit 4.1 over p og i) i et system med n tilstande. Det bør her bemærkes, at hvis alle tilstande er nøjagtig lige sandsynlige, φ(j) = 1 n reduceres ligning (3) til systemets maksimale entropi-værdi S max = = n j=1 n j=1 1 n log( 1 ) n 1 n log( n ) S max = log ( n ) (4) hvor n igen angiver antallet af tilstande. Sidst kan det udledes, at entropien for et system bestående af delsystemer med delentropier, kan bestemmes som S = n S j hvor delsystemernes entropi er indbyrdes uafhængige (5) j=1 hvilket skyldes brugen af logaritmefunktionen i entropidefinitionen 21. Entropi er på trods af dets tilsyneladende meget præcise definition et meget omdiskuteret begreb. Min erfaring er, at det er meget svært at forklare, hvad entropi er, og at en forståelse først opstår, når man arbejder med begrebet. Dette er højst sandsynligt en afspejling af, at entropi (i hvert fald Shannons informationsteoretiske) er en definition konstrueret ud fra nogle axiomer eller ønskede egenskaber, og entropi udspringer dermed ikke fra noget fysisk fænomen eller eksempel. Jeg vil her ikke gå yderligere ind i en analyse af begrebet, hverken i informationsteoretiske eller termodynamiske henseender, da ovenstående korte introduktion og ligninger er tilstrækkelige til den videre analyse i opgaven DigiLiv - et komplekst system I DigiLiv er antallet af objekter så stort samtidig med, at tilfældighed spiller ind i form af mutationer, at et forløb begyndende med en enkelt organisme ikke kan forudsiges. DigiLiv må derfor betegnes som et komplekst system, og det er derfor naturligt at forsøge at benytte den statistisk mekaniske model på systemet. Genotype betyder egentlig bare en organismes totale sum af gener (Rasmussen i [6]), men vil i denne opgave få den mere specifikke betydning som en klassebetegnelse indenfor genomer, således at en bestemt genotype betegner en mængde ens genomer. Første skridt ved sammenligningen af de to systemer er konstruktionen af et såkaldt genotyperum lignende det føromtalte faserum, hvor hele genotypen (alle basepar eller instruktioner) angiver et punkt i genotyperummet. Genotyperummet er ikke ergoditisk og dermed ikke uafhængig af begyndelsestilstanden og dets historie. Med nogle få mellemregninger indses det let, at hele det biologiske genotyperum ikke kan nå at 21 Sidstnævnte additive egenskab ved entropi var faktisk med til at give den informationsteoretiske definition af entropi, hvor logaritme-funktionen indgår (Hankerson og andre i [19] side 41 og 31).

20 4.1 Statistisk mekanik TERMODYNAMIK I DIGILIV 16 besøges i universets levetid (antaget at genomerne er af rimelig længde, 10 9 basepar, hvilket er en rimelig antagelse) (Adami i [9] side 91). Dermed skal man være påpasselig med, hvorledes man benytter den statistiske metode på genotyperummet, da vores statistiske distributionsfunktion, ρ ikke længere er troværdig. I stedet begrænser vi vores genotyperum til kun at omfatte en population af genomer. Entropi Med et sådant genotyperum får vi N g forskellige tilstande, hvor N g angiver antallet af forskellige genotyper i populationen (Adami i [9] side 98). Den maksimale entropi, hvor vi ikke kender hver tilstands sandsynlighed må derfor blive (sammenlign ligning (4) fra afsnit 4.1.1): S max = log ( N g ) (6) Betegner vi antallet af individer i populationen, N og antallet af individer der har genotype j med n j kan vi betegne hver genotypes sandsynlighed med φ(j) = n j /N. Disse genotypesandsynligheder svarer til sandsynligheden for hver tilstand i det begrænsede genotyperum, som populationen kan antage (Adami i [9] side 98). Vi har derfor, at systemets faktiske entropi mere præcist kan bestemmes med ligning (3) fra afsnit 4.1.1: N g S = φ(j) log ( φ(j) ) (7) j=1 Energi Udover entropibegrebet kan andre størrelser fra den statistiske mekanik også overføres til DigiLiv. Heriblandt energibegrebet som oftest associeres med den CPU-tid hver organisme får tildelt pr. runde. Denne energi bliver selvfølgelig umiddelbart benyttet til at reproducere organismen, men som før beskrevet kan mutationer forekomme under reproduktionen. Dermed får CPU-energien mulighed for at transformere sig. Evnen til at reproducere sig pr. tidsenhed er et mål for fitness og benævnes for genotype j, r j. Definerer vi nu en underlegenhed for hver genotype set i forhold til genotypen med højeste r i populationen U j = r bedste r j (8) ser vi at en genotypes underlegenhed kan tolkes som en form for kemisk energi. Underlegne genotyper vil dermed med tiden henfalde fra at have en høj energi til at have en lavere energi, når de bliver erstattet af genotyper med højere fitness eller replikationsrater, r. Organismernes energimæssige grundstadie er når U er 0, hvilket den kun er, når genomet tilhører den mest succesfulde genotype i populationen på det aktuelle tidspunkt. Temperatur Sidst bør det nævnes, at man også har fundet en pendant til temperaturen fra fysiske systemer. Intuitivt kan vi ud fra entropidefinitionen for DigiLiv se, at mutationer vil øge systemets entropi. Da temperatur netop har den effekt i statistisk mekaniske systemer, er det nærlæggende at drage den konklusion, at temperaturs modstykke i DigiLiv er mutationer. Det kan faktisk også vises, at der gælder, at populationens gennemsnitlige underlegenhed, U gensnit (som jo svarede til energien) ca. er lig med muationsraten, hvilket svarer til Equipartitionsteoremet kendt fra fysisk statistiske systemer (Adami i [9] side 101) Termodynamisk definition i DigiLiv Det er nu lykkes at overføre den statistisk mekaniske metodes begreber til DigiLiv, og det bliver dermed muligt at beskrive, hvorledes den termodynamiske definition af liv kan tolkes i forhold til DigiLiv. Før vi gennemgår detaljerne, bør vi lige genkalde den præcise definition fra afsnit 1: Liv er en egenskab ved en samling enheder, der deler information kodet i et fysisk substrat. Samlingen kan på trods af støj vedligeholde en entropi, der er under systemets maksimale entropi i meget længere tid, end det ville være forventet af substratets (og dermed også informationen kodet i substratet) henfaldstid.

Kapitel 1. statusseminar HERE GOES TEXT

Kapitel 1. statusseminar HERE GOES TEXT Kapitel 1 statusseminar HERE GOES TEXT 1 Kapitel Problemanalyse.1 Indledning I mange år har evolutionsteorien været centrum for en stærk debat. De som er enige om en evolution, er dog ikke altid enige

Læs mere

Hvad er formel logik?

Hvad er formel logik? Kapitel 1 Hvad er formel logik? Hvad er logik? I daglig tale betyder logisk tænkning den rationelt overbevisende tænkning. Og logik kan tilsvarende defineres som den rationelle tænknings videnskab. Betragt

Læs mere

Indhold. Maskinstruktur... 3. Kapitel 1. Assemblersprog...3. 1.1 Indledning...3 1.2 Hop-instruktioner... 7 1.3 Input og output...

Indhold. Maskinstruktur... 3. Kapitel 1. Assemblersprog...3. 1.1 Indledning...3 1.2 Hop-instruktioner... 7 1.3 Input og output... Indhold Maskinstruktur... 3 Kapitel 1. Assemblersprog...3 1.1 Indledning...3 1.2 Hop-instruktioner... 7 1.3 Input og output... 9 Kapitel 2. Maskinkode... 13 2.1 Den fysiske maskine... 13 2.2 Assemblerens

Læs mere

Computeren repræsenterer en teknologi, som er tæt knyttet til den naturvidenskabelige tilgang.

Computeren repræsenterer en teknologi, som er tæt knyttet til den naturvidenskabelige tilgang. Den tekniske platform Af redaktionen Computeren repræsenterer en teknologi, som er tæt knyttet til den naturvidenskabelige tilgang. Teknologisk udvikling går således hånd i hånd med videnskabelig udvikling.

Læs mere

Funktionsterminologi

Funktionsterminologi Funktionsterminologi Frank Nasser 12. april 2011 c 2008-2011. Dette dokument må kun anvendes til undervisning i klasser som abonnerer på MatBog.dk. Se yderligere betingelser for brug her. Bemærk: Dette

Læs mere

Trekanter. Frank Villa. 8. november 2012

Trekanter. Frank Villa. 8. november 2012 Trekanter Frank Villa 8. november 2012 Dette dokument er en del af MatBog.dk 2008-2012. IT Teaching Tools. ISBN-13: 978-87-92775-00-9. Se yderligere betingelser for brug her. Indhold 1 Introduktion 1 1.1

Læs mere

Seminaropgave: Præsentation af idé

Seminaropgave: Præsentation af idé Seminaropgave: Præsentation af idé Erik Gahner Larsen Kausalanalyse i offentlig politik Dagsorden Opsamling på kausalmodeller Seminaropgaven: Praktisk info Præsentation Seminaropgaven: Ideer og råd Kausalmodeller

Læs mere

Modeller og simulering af kunstig liv

Modeller og simulering af kunstig liv Modeller og simulering af kunstig liv Carsten Svaneborg, Lektor Center for Fundamental Levende Teknologi (FLinT) Institut for Fysik, Kemi og Farmaci Syddansk Universitetet Campusvej 55, 5320 Odense M zqex@sdu.dk

Læs mere

Funktionsterminologi

Funktionsterminologi Funktionsterminologi Frank Villa 17. januar 2014 Dette dokument er en del af MatBog.dk 2008-2012. IT Teaching Tools. ISBN-13: 978-87-92775-00-9. Se yderligere betingelser for brug her. Indhold 1 Introduktion

Læs mere

Pointen med Funktioner

Pointen med Funktioner Pointen med Funktioner Frank Nasser 0. april 0 c 0080. Dette dokument må kun anvendes til undervisning i klasser som abonnerer på MatBog.dk. Se yderligere betingelser for brug her. Bemærk: Dette er en

Læs mere

Vildledning er mere end bare er løgn

Vildledning er mere end bare er løgn Vildledning er mere end bare er løgn Fake News, alternative fakta, det postfaktuelle samfund. Vildledning, snyd og bedrag fylder mere og mere i nyhedsbilledet. Både i form af decideret falske nyhedshistorier

Læs mere

EA3 eller EA Cube rammeværktøjet fremstilles visuelt som en 3-dimensionel terning:

EA3 eller EA Cube rammeværktøjet fremstilles visuelt som en 3-dimensionel terning: Introduktion til EA3 Mit navn er Marc de Oliveira. Jeg er systemanalytiker og datalog fra Københavns Universitet og denne artikel hører til min artikelserie, Forsimpling (som også er et podcast), hvor

Læs mere

Fraktaler Mandelbrots Mængde

Fraktaler Mandelbrots Mængde Fraktaler Mandelbrots Mængde Foredragsnoter Af Jonas Lindstrøm Jensen Institut For Matematiske Fag Århus Universitet Indhold Indhold 1 1 Indledning 3 2 Komplekse tal 5 2.1 Definition.......................................

Læs mere

Cresta Asah Fysik rapport 16 oktober 2005. Einsteins relativitetsteori

Cresta Asah Fysik rapport 16 oktober 2005. Einsteins relativitetsteori Einsteins relativitetsteori 1 Formål Formålet med denne rapport er at få større kendskab til Einstein og hans indflydelse og bidrag til fysikken. Dette indebærer at forstå den specielle relativitetsteori

Læs mere

Mange professionelle i det psykosociale

Mange professionelle i det psykosociale 12 ROLLESPIL Af Line Meiling og Katrine Boesen Mange professionelle i det psykosociale arbejdsfelt oplever, at de ikke altid kan gøre nok i forhold til de problemer, de arbejder med. Derfor efterlyser

Læs mere

Sider og segmenter. dopsys 1

Sider og segmenter. dopsys 1 Sider og segmenter dopsys 1 Lokal vs global sideallokering (1) Med (a) som udgangspunkt giver (b) lokal hhv. (c) global allokering forskellige resultater dopsys 2 Lokal vs global sideallokering (2) Den

Læs mere

Akademisk tænkning en introduktion

Akademisk tænkning en introduktion Akademisk tænkning en introduktion v. Pia Borlund Agenda: Hvad er akademisk tænkning? Skriftlig formidling og formelle krav (jf. Studieordningen) De kritiske spørgsmål Gode råd m.m. 1 Hvad er akademisk

Læs mere

Forberedelse. Forberedelse. Forberedelse

Forberedelse. Forberedelse. Forberedelse Formidlingsopgave AT er i høj grad en formidlingsopgave. I mange tilfælde vil du vide mere om emnet end din lærer og din censor. Det betyder at du skal formidle den viden som du er kommet i besiddelse

Læs mere

Sikre Beregninger. Kryptologi ved Datalogisk Institut, Aarhus Universitet

Sikre Beregninger. Kryptologi ved Datalogisk Institut, Aarhus Universitet Sikre Beregninger Kryptologi ved Datalogisk Institut, Aarhus Universitet 1 Introduktion I denne note skal vi kigge på hvordan man kan regne på data med maksimal sikkerhed, dvs. uden at kigge på de tal

Læs mere

Computerstøttet beregning

Computerstøttet beregning CSB 2009 p. 1/16 Computerstøttet beregning Lektion 1. Introduktion Martin Qvist qvist@math.aau.dk Det Ingeniør-, Natur-, og Sundhedsvidenskabelige Basisår, Aalborg Universitet, 3. februar 2009 people.math.aau.dk/

Læs mere

Sider og segmenter. dopsys 1

Sider og segmenter. dopsys 1 Sider og segmenter dopsys 1 Lokal vs global sideallokering (1) Med (a) som udgangspunkt giver (b) lokal hhv. (c) global allokering forskellige resultater dopsys 2 Lokal vs global sideallokering (2) Den

Læs mere

Individer er ikke selv ansvarlige for deres livsstilssygdomme

Individer er ikke selv ansvarlige for deres livsstilssygdomme Individer er ikke selv ansvarlige for deres livsstilssygdomme Baggrunden Både i akademisk litteratur og i offentligheden bliver spørgsmål om eget ansvar for sundhed stadig mere diskuteret. I takt med,

Læs mere

Løsning af simple Ligninger

Løsning af simple Ligninger Løsning af simple Ligninger Frank Nasser 19. april 2011 c 2008-2011. Dette dokument må kun anvendes til undervisning i klasser som abonnerer på MatBog.dk. Se yderligere betingelser for brug her. Bemærk:

Læs mere

Analyse af PISA data fra 2006.

Analyse af PISA data fra 2006. Analyse af PISA data fra 2006. Svend Kreiner Indledning PISA undersøgelsernes gennemføres for OECD og de har det primære formål er at undersøge, herunder rangordne, en voksende række af lande med hensyn

Læs mere

Dansk forord ved Steen Hildebrandt...15 Forord...19 Tak...23

Dansk forord ved Steen Hildebrandt...15 Forord...19 Tak...23 INDHOLD Dansk forord ved Steen Hildebrandt....15 Forord...19 Tak...23 Indledning. Paradigmer i naturvidenskab og samfund...25 Den naturvidenskabelige metode...26 Videnskabelige og samfundsmæssige paradigmer...27

Læs mere

Mandags Chancen. En optimal spilstrategi. Erik Vestergaard

Mandags Chancen. En optimal spilstrategi. Erik Vestergaard Mandags Chancen En optimal spilstrategi Erik Vestergaard Spilleregler denne note skal vi studere en optimal spilstrategi i det spil, som i fjernsynet går under navnet Mandags Chancen. Spillets regler er

Læs mere

Dansk-historieopgaven (DHO) skrivevejledning

Dansk-historieopgaven (DHO) skrivevejledning Dansk-historieopgaven (DHO) skrivevejledning Indhold Formalia, opsætning og indhold... Faser i opgaveskrivningen... Første fase: Idéfasen... Anden fase: Indsamlingsfasen... Tredje fase: Læse- og bearbejdningsfasen...

Læs mere

Skriftlig Eksamen Kombinatorik, sandsynlighed og randomiserede algoritmer (DM528)

Skriftlig Eksamen Kombinatorik, sandsynlighed og randomiserede algoritmer (DM528) Skriftlig Eksamen Kombinatorik, sandsynlighed og randomiserede algoritmer (DM58) Institut for Matematik & Datalogi Syddansk Universitet Torsdag den 7 Januar 010, kl. 9 13 Alle sædvanlige hjælpemidler (lærebøger,

Læs mere

Rasmus Rønlev, ph.d.-stipendiat og cand.mag. i retorik Institut for Medier, Erkendelse og Formidling

Rasmus Rønlev, ph.d.-stipendiat og cand.mag. i retorik Institut for Medier, Erkendelse og Formidling Rasmus Rønlev, ph.d.-stipendiat og cand.mag. i retorik Institut for Medier, Erkendelse og Formidling Rasmus Rønlev CV i uddrag 2008: Cand.mag. i retorik fra Københavns Universitet 2008-2009: Skrivekonsulent

Læs mere

Påstand: Et foster er ikke et menneske

Påstand: Et foster er ikke et menneske Påstand: Et foster er ikke et menneske Hvad svarer vi, når vi møder denne påstand? Af Agnete Maltha Winther, studerende på The Animation Workshop, Viborg Som abortmodstandere hører vi ofte dette udsagn.

Læs mere

1. Hvad er kræft, og hvorfor opstår sygdommen?

1. Hvad er kræft, og hvorfor opstår sygdommen? 1. Hvad er kræft, og hvorfor opstår sygdommen? Dette kapitel fortæller om, cellen, kroppens byggesten hvad der sker i cellen, når kræft opstår? årsager til kræft Alle levende organismer består af celler.

Læs mere

Hjerner i et kar - Hilary Putnam. noter af Mogens Lilleør, 1996

Hjerner i et kar - Hilary Putnam. noter af Mogens Lilleør, 1996 Hjerner i et kar - Hilary Putnam noter af Mogens Lilleør, 1996 Historien om 'hjerner i et kar' tjener til: 1) at rejse det klassiske, skepticistiske problem om den ydre verden og 2) at diskutere forholdet

Læs mere

Kompetencemål for Biologi

Kompetencemål for Biologi Kompetencemål for Biologi Biologi omhandler levende organismer og deres omgivende miljø, naturfaglige arbejdsmåder, tankegange og viden om miljø, evolution, sundhed, den praktiske anvendelse af biologi,

Læs mere

Archimedes Princip. Frank Nasser. 12. april 2011

Archimedes Princip. Frank Nasser. 12. april 2011 Archimedes Princip Frank Nasser 12. april 2011 c 2008-2011. Dette dokument må kun anvendes til undervisning i klasser som abonnerer på MatBog.dk. Se yderligere betingelser for brug her. Bemærk: Dette er

Læs mere

Rolf Fagerberg. Forår 2012

Rolf Fagerberg. Forår 2012 Forår 2012 Mål for i dag Dagens program: 1 2 3 4 5 6 Forudsætninger: DM502 og DM503 Timer: 50% forelæsninger, 50% øvelser Forudsætninger: DM502 og DM503 Eksamenform: Skriftlig eksamen: Timer: 50% forelæsninger,

Læs mere

Historien om HS og kræft

Historien om HS og kræft Forskningsnyheder om Huntingtons Sygdom På hverdagssprog Skrevet af forskere. Til det globale HS-fællesskab Hvad er sammenhængen mellem Huntingtons Sygdom og kræft? HS-patienter har mindre risiko for at

Læs mere

Tue Tjur: Hvad er tilfældighed?

Tue Tjur: Hvad er tilfældighed? Tue Tjur: Hvad er tilfældighed? 16. 19. september 1999 afholdtes i netværkets regi en konference på RUC om sandsynlighedsregningens filosofi og historie. Som ikke specielt historisk interesseret, men nok

Læs mere

dcomnet-nr. 8 Simpel aritmetik på maskinniveau Computere og Netværk (dcomnet)

dcomnet-nr. 8 Simpel aritmetik på maskinniveau Computere og Netværk (dcomnet) dcomnet-nr. 8 Simpel aritmetik på maskinniveau Computere og Netværk (dcomnet) Efterår 2009 1 Simpel aritmetik på maskinniveau I SCO, appendix A, er det beskrevet, hvordan man adderer ikke-negative heltal

Læs mere

Villa Venire Biblioteket. Af Marie Martinussen, Forsker ved Aalborg Universitet for Læring og Filosofi. Vidensamarbejde

Villa Venire Biblioteket. Af Marie Martinussen, Forsker ved Aalborg Universitet for Læring og Filosofi. Vidensamarbejde Af Marie Martinussen, Forsker ved Aalborg Universitet for Læring og Filosofi Vidensamarbejde - Når universitet og konsulenthus laver ting sammen 1 Mødet Det var ved et tilfælde da jeg vinteren 2014 åbnede

Læs mere

Appendiks 6: Universet som en matematisk struktur

Appendiks 6: Universet som en matematisk struktur Appendiks 6: Universet som en matematisk struktur En matematisk struktur er et meget abstrakt dyr, der kan defineres på følgende måde: En mængde, S, af elementer {s 1, s 2,,s n }, mellem hvilke der findes

Læs mere

Disposition. Intro Hvad er evolution? Eksempel på nogle beviser Livets design Spørgsmål

Disposition. Intro Hvad er evolution? Eksempel på nogle beviser Livets design Spørgsmål Islam og Evolution Disposition Intro Hvad er evolution? Eksempel på nogle beviser Livets design Spørgsmål Ayat føre til erkendelsen af Allah Sandlig i skabelsen af himlene og jorden (Universet) og i vekslenen

Læs mere

Svar nummer 2: Meningen med livet skaber du selv 27. Svar nummer 3: Meningen med livet er at føre slægten videre 41

Svar nummer 2: Meningen med livet skaber du selv 27. Svar nummer 3: Meningen med livet er at føre slægten videre 41 Indhold Hvorfor? Om hvorfor det giver mening at skrive en bog om livets mening 7 Svar nummer 1: Meningen med livet er nydelse 13 Svar nummer 2: Meningen med livet skaber du selv 27 Svar nummer 3: Meningen

Læs mere

Kompetenceprofil for Kandidatuddannelsen i ingeniørvidenskab, Akvatisk Videnskab og Teknologi

Kompetenceprofil for Kandidatuddannelsen i ingeniørvidenskab, Akvatisk Videnskab og Teknologi Kompetenceprofil for Kandidatuddannelsen i ingeniørvidenskab, Akvatisk Videnskab og Teknologi Profil kandidatuddannelsen i ingeniørvidenskab (cand.polyt.) En civilingeniør fra DTU har en forskningsbaseret

Læs mere

6 FOREDRAG AF JES DIETRICH.

6 FOREDRAG AF JES DIETRICH. 6 FOREDRAG AF JES DIETRICH. Dette er en oversigt over de foredrag som jeg tilbyder. Der er for tiden 6 foredrag, og de er alle baseret på min bog Menneskehedens Udviklingscyklus, og på www.menneskeogudvikling.dk

Læs mere

Reproduktion Dødelighed Tommelfingerregler... 2

Reproduktion Dødelighed Tommelfingerregler... 2 Mårhund: Biologi, bestandsudvikling og bekæmpelse Indhold Mårhund: Biologi, bestandsudvikling og bekæmpelse... 1 Konklusioner... 1 Hvad afgør mårhundebestandens størrelse?... 1 Reproduktion... 2 Dødelighed...

Læs mere

Ordbog Biologi Samfundsfag Kemi: Se bilag 1 Matematik: Se bilag 2

Ordbog Biologi Samfundsfag Kemi: Se bilag 1 Matematik: Se bilag 2 Fremstillingsformer Fremstillingsformer Vurdere Konkludere Fortolke/tolke Diskutere Ordbog Biologi Samfundsfag Kemi: Se bilag 1 Matematik: Se bilag 2 Udtrykke eller Vurder: bestemme På baggrund af biologisk

Læs mere

Afstande, skæringer og vinkler i rummet

Afstande, skæringer og vinkler i rummet Afstande, skæringer og vinkler i rummet Frank Nasser 9. april 20 c 2008-20. Dette dokument må kun anvendes til undervisning i klasser som abonnerer på MatBog.dk. Se yderligere betingelser for brug her.

Læs mere

It-sikkerhedstekst ST9

It-sikkerhedstekst ST9 It-sikkerhedstekst ST9 Single Sign-On og log-ud Denne tekst må kopieres i sin helhed med kildeangivelse. Dokumentnavn: ST9 Version 1 Juli 2015 Single Sign-On og log-ud Betegnelsen Single Sign-On (SSO)

Læs mere

Bevidsthed, reduktion og (kunstig) intelligens.

Bevidsthed, reduktion og (kunstig) intelligens. Bevidsthed, reduktion og (kunstig) intelligens. Forbemærkning om den aktuelle situation Min baggrund: Forfatterskaberne: Marx Leontjev Kierkegaard Rorty Cassirer Searle Empirisk baggrund: Kul & Koks: Modellering

Læs mere

Klasse 1.4 Michael Jokil 03-05-2010

Klasse 1.4 Michael Jokil 03-05-2010 HTX I ROSKILDE Afsluttende opgave Kommunikation og IT Klasse 1.4 Michael Jokil 03-05-2010 Indholdsfortegnelse Indledning... 3 Formål... 3 Planlægning... 4 Kommunikationsplan... 4 Kanylemodellen... 4 Teknisk

Læs mere

Nyhedsbrev. Kurser i VækstModellen

Nyhedsbrev. Kurser i VækstModellen MG- U D V I K L I N G - C e n t e r f o r s a m t a l e r, d e r v i r k e r E - m a i l : v r. m g u @ v i r k e r. d k w w w. v i r k e r. d k Nyhedsbrev N u m m e r 5 D e c e m b e r 2 0 1 2 Velkommen

Læs mere

Skabelon for læreplan

Skabelon for læreplan Kompetencer Færdigheder Viden Skabelon for læreplan 1. Identitet og formål 1.1 Identitet 1.2 Formål 2. Faglige mål og fagligt indhold 2.1 Faglige mål Undervisningen på introducerende niveau tilrettelægges

Læs mere

Læseplan for faget biologi

Læseplan for faget biologi Læseplan for faget biologi Undervisningen i biologi bygger bl.a. på de kundskaber og færdigheder, som eleverne har erhvervet sig i natur/teknik. De centrale kundskabs- og færdighedsområder er: De levende

Læs mere

Forberedelse. Forberedelse. Forberedelse

Forberedelse. Forberedelse. Forberedelse Formidlingsopgave AT er i høj grad en formidlingsopgave. I mange tilfælde vil du vide mere om emnet end din lærer og din censor. Dæng dem til med fakta! Det betyder at du skal formidle den viden som du

Læs mere

Den sproglige vending i filosofien

Den sproglige vending i filosofien ge til forståelsen af de begreber, med hvilke man udtrykte og talte om denne viden. Det blev kimen til en afgørende ændring af forståelsen af forholdet mellem empirisk videnskab og filosofisk refleksion,

Læs mere

Arbejdsrum - hva' nyt er der egentlig i det?

Arbejdsrum - hva' nyt er der egentlig i det? Arbejdsrum - hva' nyt er der egentlig i det? Et arbejdsrum har vel til alle tider været en form for installation, som kunne omkranse en undervisning? Et rum indeholder muligheder - f.eks. døre, som kan

Læs mere

Elementær Matematik. Mængder og udsagn

Elementær Matematik. Mængder og udsagn Elementær Matematik Mængder og udsagn Ole Witt-Hansen 2011 Indhold 1. Mængder...1 1.1 Intervaller...4 2. Matematisk Logik. Udsagnslogik...5 3. Åbne udsagn...9 Mængder og Udsagn 1 1. Mængder En mængde er

Læs mere

KOMMENTARSKABELON. Høring af CCS Informationsstruktur. Foreningen af Rådgivende Ingeniører, FRI og DANSKE ARK ime@frinet.dk pd@danskeark.

KOMMENTARSKABELON. Høring af CCS Informationsstruktur. Foreningen af Rådgivende Ingeniører, FRI og DANSKE ARK ime@frinet.dk pd@danskeark. KOMMENTARSKABELON Dato Dokument Høring af CCS Informationsstruktur Udfyldt af: E- mail: Foreningen af Rådgivende Ingeniører, FRI og DANSKE ARK ime@frinet.dk pd@danskeark.dk Navn på er Inge Ebbensgaard

Læs mere

Biologiske signaler i graviditeten - Genetisk information

Biologiske signaler i graviditeten - Genetisk information Biologiske signaler i graviditeten - Genetisk information 2 I forbindelse med vores studie af graviditeten ønsker vi at foretage undersøgelser af arvematerialet (DNA og RNA). Disse genetiske undersøgelser

Læs mere

Almen studieforberedelse. - Synopsiseksamen 2015

Almen studieforberedelse. - Synopsiseksamen 2015 Almen studieforberedelse - Synopsiseksamen 2015 - En vejledning Thisted Gymnasium - stx og hf Ringvej 32, 7700 Thisted www.thisted-gymnasium.dk post@thisted-gymnasium.dk tlf. 97923488 - fax 97911352 REGLERNE

Læs mere

AT 2016 M E T O D E R I B I O L O G I

AT 2016 M E T O D E R I B I O L O G I AT 2016 M E T O D E R I B I O L O G I BEGRUNDE DIT VALG AF FAG, METODE OG MATERIALE Fagene skal være relevante i forhold til emnet Hvorfor vælge de to fag? Begrunde dit valg af metode Hvorfor de to metoder

Læs mere

TEST-skjal til at vísa stødd, snið v.m.

TEST-skjal til at vísa stødd, snið v.m. TEST-skjal til at vísa stødd, snið v.m. Vejledning i projektskrivning Vejledning i rapportskrivning En hjælp til et lettere liv for studerende og undervisere Heini Havreki Verkætlanarfrágreiðing Skeið

Læs mere

Forberedelse. Forberedelse. Forberedelse

Forberedelse. Forberedelse. Forberedelse Formidlingsopgave AT er i høj grad en formidlingsopgave. I mange tilfælde vil du vide mere om emnet end din lærer og din censor. Det betyder at du skal formidle den viden som du er kommet i besiddelse

Læs mere

Mørk energi Anja C. Andersen, Dark Cosmology Centre, Niels Bohr Institutet, Københavns Universitet

Mørk energi Anja C. Andersen, Dark Cosmology Centre, Niels Bohr Institutet, Københavns Universitet Mørk energi Anja C. Andersen, Dark Cosmology Centre, Niels Bohr Institutet, Københavns Universitet En af de mest opsigtsvækkende opdagelser inden for astronomien er, at Universet udvider sig. Det var den

Læs mere

Dato: Præsenteret af: e-stimate international. Powered by e-stimate

Dato: Præsenteret af: e-stimate international. Powered by e-stimate IQ test Navn: Nihil Nomen Dato: 17.10.2019 Præsenteret af: e-stimate international Powered by e-stimate Indholdsfortegnelse Forside Side 01 Indholdsfortegnelse Side 02 Tolkning Side 03 Forklaring Side

Læs mere

Hvorfor skal vi bruge objekt orienteret databaser?

Hvorfor skal vi bruge objekt orienteret databaser? OODBMS Vs. RDBMS 1 Indholdsfortegnelse Hvorfor skal vi bruge objekt orienteret databaser?... 3 OODBMS i erhvervslivet... 4 Bagsiden af medaljen... 5 OODBMS i praksis... 6 Konklusion... 8 2 Hvorfor skal

Læs mere

Gruppeteori. Michael Knudsen. 8. marts For at motivere indførelsen af gruppebegrebet begynder vi med et eksempel.

Gruppeteori. Michael Knudsen. 8. marts For at motivere indførelsen af gruppebegrebet begynder vi med et eksempel. Gruppeteori Michael Knudsen 8. marts 2005 1 Motivation For at motivere indførelsen af gruppebegrebet begynder vi med et eksempel. Eksempel 1.1. Lad Z betegne mængden af de hele tal, Z = {..., 2, 1, 0,

Læs mere

Mobning på arbejdspladsen. En undersøgelse af oplevelser med mobning blandt STEM-ansatte

Mobning på arbejdspladsen. En undersøgelse af oplevelser med mobning blandt STEM-ansatte Mobning på arbejdspladsen En undersøgelse af oplevelser med mobning blandt STEM-ansatte September 2018 Mobning på arbejdspladsen Resumé Inden for STEM (Science, Technology, Engineering & Math) var der

Læs mere

Didaktik i børnehaven

Didaktik i børnehaven Didaktik i børnehaven Planer, principper og praksis Stig Broström og Hans Vejleskov Indhold Forord...................................................................... 5 Kapitel 1 Børnehaven i historisk

Læs mere

Det Rene Videnregnskab

Det Rene Videnregnskab Det Rene Videnregnskab Visualize your knowledge Det rene videnregnskab er et værktøj der gør det muligt at redegøre for virksomheders viden. Modellen gør det muligt at illustrere hvordan viden bliver skabt,

Læs mere

Abstrakte datatyper C#-version

Abstrakte datatyper C#-version Note til Programmeringsteknologi Akademiuddannelsen i Informationsteknologi Abstrakte datatyper C#-version Finn Nordbjerg 1/9 Abstrakte Datatyper Denne note introducerer kort begrebet abstrakt datatype

Læs mere

Eksempel på den aksiomatisk deduktive metode

Eksempel på den aksiomatisk deduktive metode Eksempel på den aksiomatisk deduktive metode Et rigtig godt eksempel på et aksiomatisk deduktivt system er Euklids Elementer. Euklid var græker og skrev Elemeterne omkring 300 f.kr. Værket består af 13

Læs mere

a. Find ud af mere om sprogteknologi på internettet. Hvad er nogle typiske anvendelser? Hvor mange af dem bruger du i din hverdag?

a. Find ud af mere om sprogteknologi på internettet. Hvad er nogle typiske anvendelser? Hvor mange af dem bruger du i din hverdag? En computer forstår umiddelbart ikke de sprog vi mennesker taler og skriver. Inden for sprogteknologien (på engelsk: Natural Language Processing eller NLP), der er en gren af kunstig intelligens, beskæftiger

Læs mere

Andengradsligninger. Frank Nasser. 12. april 2011

Andengradsligninger. Frank Nasser. 12. april 2011 Andengradsligninger Frank Nasser 12. april 2011 c 2008-2011. Dette dokument må kun anvendes til undervisning i klasser som abonnerer på MatBog.dk. Se yderligere betingelser for brug her. Bemærk: Dette

Læs mere

Michael Jokil 11-05-2012

Michael Jokil 11-05-2012 HTX, RTG Det skrå kast Informationsteknologi B Michael Jokil 11-05-2012 Indholdsfortegnelse Indledning... 3 Teori... 3 Kravspecifikationer... 4 Design... 4 Funktionalitet... 4 Brugerflade... 4 Implementering...

Læs mere

IDENTITETSDANNELSE. - en pædagogisk udfordring

IDENTITETSDANNELSE. - en pædagogisk udfordring IDENTITETSDANNELSE - en pædagogisk udfordring DAGENS PROGRAM I. Identitet i et systemisk og narrativt perspektiv II. III. Vigtigheden af at forholde sig til identitet i en pædagogisk kontekst Identitetsopbyggende

Læs mere

VisiRegn: En e-bro mellem regning og algebra

VisiRegn: En e-bro mellem regning og algebra Artikel i Matematik nr. 2 marts 2001 VisiRegn: En e-bro mellem regning og algebra Inge B. Larsen Siden midten af 80 erne har vi i INFA-projektet arbejdet med at udvikle regne(arks)programmer til skolens

Læs mere

Brugervejledning til Højkvalitetsdokumentationen og Dialogforummet på Danmarks Statistiks hjemmeside

Brugervejledning til Højkvalitetsdokumentationen og Dialogforummet på Danmarks Statistiks hjemmeside Brugervejledning til Højkvalitetsdokumentationen og Dialogforummet på Danmarks Statistiks hjemmeside Forord Denne vejledning beskriver baggrunden for begreber og sammenhænge i Danmarks Statistiks dokumentationssystem

Læs mere

Rolf Fagerberg. Forår 2013

Rolf Fagerberg. Forår 2013 Forår 2013 Mål for i dag Dagens program: 1 2 3 4 5 6 Forudsætninger: DM536 og DM537 Timer: 50% forelæsninger, 50% øvelser Forudsætninger: DM536 og DM537 Eksamenform: Skriftlig eksamen: Timer: 50% forelæsninger,

Læs mere

Forskningsprojekt og akademisk formidling - 18. Den videnskabelige artikel

Forskningsprojekt og akademisk formidling - 18. Den videnskabelige artikel + Forskningsprojekt og akademisk formidling - 18 Den videnskabelige artikel + Læringsmål Definere en videnskabelig artikel Redegøre for de vigtigste indholdselementer i en videnskabelig artikel Vurdere

Læs mere

Årsplan for Biologi i 7. klasse

Årsplan for Biologi i 7. klasse Årsplan for Biologi i 7. klasse Undervisningen i biologi i 7. klasse, er bygget op som en blanding af klasseundervisning, gruppearbejde og individuel arbejde. Elevernes er medspiller og undervisningen

Læs mere

Auto Illustrator Digital æstetik: Analyse Skriveøvelse 1

Auto Illustrator Digital æstetik: Analyse Skriveøvelse 1 Auto Illustrator Digital æstetik: Analyse Skriveøvelse 1 Marie Louise Juul Søndergaard, DD2010 Studienr. 20104622 Anslag: 11.917 Indholdsfortegnelse INDLEDNING 2 AUTO ILLUSTRATOR 2 METAFORER OG METONYMIER

Læs mere

Naturvidenskab. En fællesbetegnelse for videnskaberne om naturen, dvs. astronomi, fysik, kemi, biologi, naturgeografi, biofysik, meteorologi, osv

Naturvidenskab. En fællesbetegnelse for videnskaberne om naturen, dvs. astronomi, fysik, kemi, biologi, naturgeografi, biofysik, meteorologi, osv Naturvidenskab En fællesbetegnelse for videnskaberne om naturen, dvs. astronomi, fysik, kemi, biologi, naturgeografi, biofysik, meteorologi, osv Naturvidenskab defineres som menneskelige aktiviteter, hvor

Læs mere

Simulering af stokastiske fænomener med Excel

Simulering af stokastiske fænomener med Excel Simulering af stokastiske fænomener med Excel John Andersen, Læreruddannelsen i Aarhus, VIA Det kan være en ret krævende læreproces at udvikle fornemmelse for mange begreber fra sandsynlighedsregningen

Læs mere

DM517:Supplerende noter om uafgørlighedsbeviser:

DM517:Supplerende noter om uafgørlighedsbeviser: DM517:Supplerende noter om uafgørlighedsbeviser: Jørgen Bang-Jensen October 9, 2013 Abstract Formålet med denne note er at give en form for kogebogsopskrift på, hvorledes man bygger et uafgørlighedsbevis

Læs mere

Et oplæg til dokumentation og evaluering

Et oplæg til dokumentation og evaluering Et oplæg til dokumentation og evaluering Grundlæggende teori Side 1 af 11 Teoretisk grundlag for metode og dokumentation: )...3 Indsamling af data:...4 Forskellige måder at angribe undersøgelsen på:...6

Læs mere

-et værktøj du kan bruge

-et værktøj du kan bruge Æblet falder ikke langt fra stammen...? Af Mette Hegnhøj Mortensen Ønsket om at ville bryde den negative sociale arv har været en vigtig begrundelse for at indføre pædagogiske læreplaner i danske daginstitutioner.

Læs mere

Gennem de sidste par årtier er en digital revolution fejet ind over vores tidligere så analoge samfund.

Gennem de sidste par årtier er en digital revolution fejet ind over vores tidligere så analoge samfund. Den digitale verden et barn af oplysningstiden Af redaktionen Gennem de sidste par årtier er en digital revolution fejet ind over vores tidligere så analoge samfund. Den elektroniske computer er blevet

Læs mere

HVAD GØR RØGEN VED KROPPEN?

HVAD GØR RØGEN VED KROPPEN? 42 www.op-i-røg.dk GÅ OP I RØG Kræftens Bekæmpelse KAPITEL 5: HVAD GØR RØGEN VED KROPPEN? www.op-i-røg.dk 43 Kapitel 5: Indhold Dette kapitel tager udgangspunkt i, hvad der sker med røgen i kroppen på

Læs mere

Parallelisering/Distribuering af Genetiske Algoritmer

Parallelisering/Distribuering af Genetiske Algoritmer Parallelisering/Distribuering af Genetiske Algoritmer Hvorfor parallelisere/distribuere? Standard GA algoritme Modeller Embarassing parallel Global (fitness evaluering) Island (subpopulation) Grid/Cellular

Læs mere

Objektorientering. Programkvalitet

Objektorientering. Programkvalitet 1 PROSA-Bladet nr. 4 1993 Objektorientering = Programkvalitet? Af Finn Nordbjerg, adjunkt ved Datamatikeruddannelsen, Aalborg Handelskole 1. Indledning Objektorientering er blevet et edb-fagets mest udbredte

Læs mere

Noter til Perspektiver i Matematikken

Noter til Perspektiver i Matematikken Noter til Perspektiver i Matematikken Henrik Stetkær 25. august 2003 1 Indledning I dette kursus (Perspektiver i Matematikken) skal vi studere de hele tal og deres egenskaber. Vi lader Z betegne mængden

Læs mere

Lidt biologisk historik

Lidt biologisk historik Lidt biologisk historik Som indledning til AT-forløbet om Tro og viden forsøger jeg mig med en oversigt over vigtige begivenheder inden for biologien sit i historisk lys det følger nedenfor Men først lidt

Læs mere

Afstande, skæringer og vinkler i rummet

Afstande, skæringer og vinkler i rummet Afstande, skæringer og vinkler i rummet Frank Villa 2. maj 202 c 2008-20. Dette dokument må kun anvendes til undervisning i klasser som abonnerer på MatBog.dk. Se yderligere betingelser for brug her. Indhold

Læs mere

IT opgave. Informationsteknologi B. Vejleder: Karl. Navn: Devran Kücükyildiz. Klasse: 2,4

IT opgave. Informationsteknologi B. Vejleder: Karl. Navn: Devran Kücükyildiz. Klasse: 2,4 IT opgave Informationsteknologi B Vejleder: Karl Navn: Devran Kücükyildiz Klasse: 2,4 Dato:03-03-2009 1 Indholdsfortegnelse 1. Indledning... 3 2. Planlægning... 3 Kommunikationsplanlægning... 3 Problemstillingen...

Læs mere

Formål & Mål. Ingeniør- og naturvidenskabelig. Metodelære. Kursusgang 1 Målsætning. Kursusindhold. Introduktion til Metodelære. Indhold Kursusgang 1

Formål & Mål. Ingeniør- og naturvidenskabelig. Metodelære. Kursusgang 1 Målsætning. Kursusindhold. Introduktion til Metodelære. Indhold Kursusgang 1 Ingeniør- og naturvidenskabelig metodelære Dette kursusmateriale er udviklet af: Jesper H. Larsen Institut for Produktion Aalborg Universitet Kursusholder: Lars Peter Jensen Formål & Mål Formål: At støtte

Læs mere