Genetiska algoritmer. Henrik Hansson Rapport, CDT212 Mälardalens Högskola

Storlek: px
Starta visningen från sidan:

Download "Genetiska algoritmer. Henrik Hansson (hhn00001@student.mdh.se) Rapport, CDT212 Mälardalens Högskola"

Transkript

1 Genetiska algoritmer Henrik Hansson Rapport, CDT212 Mälardalens Högskola 1

2 Sammanfattning Genetiska algoritmer har rötter i 60-talet och efterliknar evolutionsteorin på så sätt att lösningsförslag till ett problem representeras som en datasträng som inspirerats av cellernas DNA. Lösningsförslagen kan liknas vid individer i en population av många individer. De bästa individerna korsas med andra individer för att få fram avkomma med datasträngar som kombinerar föräldrarnas gener. För att få in ny information i populationen används mutation. Egenskaperna de genetiska algoritmerna har genom grunderna i evolutionsteorin gör dem väldigt anpassningsbara. De kan användas för att lösa en mängd olika problem och de lämpar sig särskilt bra till att hitta alternativa lösningar till gamla problem. Det är även lätt att integrera genetiska algoritmer med andra AI tekniker som till exempel Neural Networks. För att få bra resultat krävs det dock att problemets och lösningsförlagens definitioner är noggrant framtagna. Till de mer originella användningsområdena hör generering av konstimitationer och spelande av gamla Nintendospel. Inom området datorspel kan man troligen i framtiden få stor nytta av genetiska algoritmer i formen av artificiellt liv som gör spelvärldarna mer trovärdiga. 2

3 Innehållsförteckning Sammanfattning... 2 Innehållsförteckning... 3 Genetiska algoritmer... 3 Hur fungerar de?... 4 Representation (encoding)... 4 Lämplighet (fitness)... 5 Urval (selection)... 5 Korsning (crossover)... 6 Mutation... 6 Stoppvillkor (stop condition)... 6 Vad kan de användas till?... 7 Styrkor... 7 Begränsningar... 7 Exempel... 7 Konst... 7 AI till Nintendospel... 8 Slutsatser... 9 Referenser... 9 Inledning Inom området artificiell intelligens (AI) finns en mängd olika tekniker för att simulera lärande i programvara. Syftet med dessa tekniker är att man låter ett program själv lära sig hur problemet kan lösas istället för att definiera hur ett problem ska lösas och sedan bara använda ett program för att beräkna lösningen. Detta är förstås speciellt intressant för problem man ännu inte har någon lösning till eller för problem där nuvarande lösningar är ineffektiva och man misstänker att det finns bättre. En grupp av dessa tekniker för lärande programvara grundar sig på evolutionsteorin och försöker efterlikna den naturliga evolutionen. Bland dessa är kanske genetiska algoritmer den mest välkända. Enligt [Wikipedia10] användes de första föregångarna till genetiska algoritmer redan på 60-talet och de blev populärare på 70-talet tack vare John Holland på University of Michigan. Denna rapport kommer utreda vad genetiska algoritmer är, hur de fungerar och vad de kan användas till. Genetiska algoritmer Enligt Darwins evolutionsteori som beskrivs i [Engelbrecht07] har individer som har bättre egenskaper än genomsnittet för arten större chans att överleva och fortplanta sig. Med tiden 3

4 ärvs dessa överlägsna egenskaper i allt större utsträckning av nästkommande generationer och till slut är de dominanta för arten. Informationen som styr dessa egenskaper finns som gener i cellernas DNA. Ny information introduceras genom mutation, det vill säga en förändring av den ursprungliga informationen. Med genetiska algoritmer försöker man efterlikna den naturliga evolutionen för att lösa problem genom att använda sig av en population av tänkbara lösningar som var och en har informationen om lösningen lagrat i datasträngar som efterliknar naturens DNA. De bästa individerna i varje generation får föra sin information vidare och kombinera den med andra bra individers information för att skapa nästa generation av tänkbara lösningar. En del av lösningarna muteras innan nästa generation utvärderas. Målet är att man till slut ska komma fram till en användbar eller helst optimal lösning till problemet. Hur fungerar de? En genetisk algoritm kan enligt [Mitchell97] se ut så här i pseudokod: Starta med en framslumpad population Utvärdera lämplighet för varje individ Figur 1: DNA Upprepa dessa steg så länge stoppvillkoret inte uppnåtts: 1. Välj ut några av de bästa från nuvarande generation 2. Välj ut vilka individer som ska korsas för att skapa nya individer 3. Mutera en viss % individer för att tillföra ny information 4. Uppdatera populationen till den nya generations individer 5. Utvärdera lämplighet för varje individ Returnera den bästa individen Hur individerna för nästa generation väljs ut (steg 1-3) kan variera kraftigt. Steg kan tas bort helt och i vissa implementationer läggs extra steg till. Exempel på dessa variationer och förklaringar av begrepp som används inom området genetiska algoritmer tas upp i de nästkommande avsnitten. Representation (encoding) För att en genetisk algoritm ska kunna användas måste problemets lösning kunna representeras som gener för algoritmens individer. Ett antal olika typer av representationer beskrivs i [Obitko98]. Trädrepresentation utelämnas då det hör till området genetisk programmering (en annan AI teknik som bygger på evolutionsteorin) snarare än genetiska algoritmer. 4

5 Individ Individ Tabell 1: Exempel på binär representation. Binär representation är den mest grundläggande typen och var den första som användes. Här beskrivs varje individ av en sträng med 1:or och 0:or som t ex kan representera olika påståenden som antingen är sanna eller falska. Permutationsrepresentation används för turordningsproblem som t ex Travelling salesman problemet (TSP) där en simulerad handelsresande ska besöka ett antal städer och man vill veta i vilken ordning städerna ska besökas för att ge den kortaste resvägen. I denna representation beskrivs varje individ av en sträng heltal som motsvarar ordningen. Individ 1 Individ 2 Vänster, Höger, Hoppa, Skjut, Skjut, Höger, Höger, Hoppa, Tabell 2: Exempel på värderepresentation (instruktioner). Värderepresentation är den mest anpassningsbara typen. Här beskrivs individerna som strängar (eller listor) av värden som kan motsvara nästan vad som helst. Värdena kan t ex vara heltal, reella tal, tecken, instruktioner eller funktionsanrop. Lämplighet (fitness) För att veta hur väl anpassad en individ är vid urvalet för reproduktion eller vid kontrollen om en tillräckligt bra eller optimal lösning hittats måste det finnas något sätt att mäta individernas lämplighet. I de fall där man känner till en optimal lösning bedöms individerna utefter hur nära denna lösning de är. För problem där man inte känner till en optimal lösning eller någon lösning alls bedöms individernas lämplighet relativt de andra individerna med hjälp av ett för problemet utformat poängsystem. [Engelbrecht07] Urval (selection) När man vet hur lämpliga individerna i nuvarande generationen är tillämpas urval för att bestämma vilka individer som får chansen att fortplanta sig eller överleva till nästa generation. Det finns en mängd olika metoder för att göra urval och en del av dem kan kombineras vilket ökar valmöjligheterna ännu mer. Här är de flesta av metoderna som beskrivs i [Marczyk04]: Elitist selection Den bästa eller några av de bästa individerna väljs garanterat ut. Används i kombination med andra metoder. Fitness-proportionate selection De bästa individerna har större chans att väljas ut än andra. Roulette-wheel selection En variant av föregående typ. Man tänker sig ett rouletthjul där varje individ är ett av fälten. Fälten är bredare relativt andra fält ju bättre en individ är så chansen är större att kulan hamnar där. Scaling selection Ju högre genomsnittets lämplighet är desto mer värda är skillnader så urvalet blir mer och mer elitiskt. 5

6 Tournament selection Två eller fler individer väljs ut och tävlar med varandra för att få fram en individ som väljs ut. Rank selection Varje individ får ett värde baserat på sin lämplighet relativt de andra individerna. Sedan används detta värde som utgångspunkt i någon av de andra metoderna. Hierarchical selection Flera rundor av urval utförs och de bästa från varje runda går vidare tills det slutliga urvalet av en eller flera individer är gjort. I de tidiga rundorna används lämplighetsberäkning med lägre precision som är beräkningsmässigt billigare för att spara tid och datorkapacitet. I [Engelbrecht07] beskrivs också bland annat denna metod: Hall of Fame En lista där de bästa individerna från alla generationer sparas. Från denna lista kan föräldrar för fortplantning hämtas. När sedan målet uppnåtts eller den övre gränsen för antal generationer som ska beräknas nåtts finns den bästa lösningen som hittades i toppen på denna lista. Korsning (crossover) Individerna som genom urval får chansen att fortplanta sig korsas med varandra genom att deras information kombineras. Den vanligaste metoden är att en eller flera korsningspunkter väljs ut och informationen på olika sidor om dessa hämtas från olika föräldrar. Förälder A Förälder C Förälder B Förälder D Barn AB Barn CD Tabell 3: Korsning med en(vänster) och två(höger) korsningspunkter För representationer som till exempel en sträng med reella tal kan istället värdena i varje gen kombineras. Ett sett att göra detta på som kallas för aritmetisk korsning innebär att barnet får medelvärdet av föräldrarnas värden. [Engelbrecht07] Mutation För att tillföra ny information i populationen behövs det mutation. Normalt är det inte önskvärt med allt för stor chans att mutation sker eftersom det i de flesta fall har negativ verkan. Precis som för korsning finns det olika sätt att utföra mutation på beroende på vad för typ av representation individerna har. Det enklaste fallet är binär representation där värdet i en gen som ska muteras helt enkelt inverteras. Original Muterad Tabell 4: Mutation av en binärt representerad individ Vid värderepresentation muteras den utvalda genen till ett närliggande värde och vid permutationsrepresentation byter två gener plats. [Engelbrecht07] Stoppvillkor (stop condition) De vanligaste stoppvillkoren tas upp i [Engelbrecht07] och de är: Ingen förbättring har observerats på ett visst antal generationer. 6

7 Ingen förändring sker i populationen. En acceptabel lösning har hittats. I de flesta fall begränsar man även hur många generationer som får köras maximalt. Vad kan de användas till? Genetiska algoritmer kan användas till att lösa en mängd olika problem. På [Wikipedia10] finns närmare 60 olika applikationer listade. Det handlar till exempel om automatiserad design av olika slag, dechiffrerande, felsökning i hårdvara, schemaläggande, styrning av robotar och upplärning av AI system som Neural Networks och Fuzzy Systems. De nästkommande avsnitten kommer att gå igenom styrkorna och begränsningarna hos genetiska algoritmer för att ge en uppfattning om vilka typer av problem de lämpar sig för och vilka typer av problem någon annan AI teknik bör användas för. Sedan följer en närmare beskrivning av ett par exempel på applikationer. Styrkor Den största fördelen genetiska algoritmer har över de flesta andra algoritmerna för problemlösning är parallellism. Till skillnad mot algoritmer som endast undersöker en möjlig lösning åt gången kan de genetiska algoritmerna undersöka en stor mängd olika tänkbara lösningar åt gången. Tack vare detta är det avsevärt mindre risk att de ska fastna i ett lokalt maximum, dvs sluta söka efter andra lösningar när den hittar en lösning som ser bra ut jämfört med närliggande (lokalt maximum) men kanske inte är den bästa lösningen (globalt maximum) på problemet. Den egenskapen är speciellt viktig för komplicerade problem, till exempel problem i en dynamisk miljö där den optimala lösningen inte förblir densamma utan förändras med tiden. En svår avvägning för problemlösande algoritmer är balansen mellan utforskande av nya lösningar och förbättrande av kända lösningar. Utforskande av nya lösningar leder vanligtvis till försämrade resultat, åtminstone på kort sikt. Att bara försöka förbättra en redan känd lösning däremot kan leda till att bättre lösningar förblir oupptäckta. Genetiska algoritmer klarar denna balans på ett bra sätt. [Marczyk04] Begränsningar För att en genetisk algoritm ska fungera bra krävs att en bra representation väljs. Även valet av metoder för urval, korsning och mutation samt hur lämplighet beräknas är viktiga. Finns det brister i förberedelserna är det stor risk att den genetiska algoritmen inte producerar någon användbar lösning. Ett problem som är välkänt hos genetiska algoritmer är att om en relativt bra lösning hittas väldigt tidigt finns det risk att den snabbt blir dominant. Det kan leda till att algoritmen fastnar i ett lokalt maximum. Valet av urvalsmetoder kan minska risken för detta. Till slut rekommenderar flera forskare mot att använda genetiska algoritmer för problem som går att lösa med analytiska metoder. Att tillämpa genetiska algoritmer på sådana problem är väldigt ineffektivt. [Marczyk04] 7

8 Exempel Här följer en närmare beskrivning av ett par exempel på applikationer av genetiska algoritmer. Konst Roger Alsing har gjort en implementation av genetisk programmering som klarar av att imitera färdiga bilder. Huvudexemplet han använder i sin beskrivning är den kända målningen Mona Lisa. Exemplet är med i rapporten eftersom det lika gärna hade kunnat göras med en genetisk algoritm. Mer detaljer och bilder finns i hans blogg [Alsin08] där man på FAQ sidan även kan komma åt källkoden. Figur 2: Mona Lisa genereras av Roger Alsings program. Filnamnen under bilderna visar vilken generation de visar. Varje individ representeras av ett antal polygoner som har ett antal punkter, en färg och är delvis transparenta. En individs lämplighet bestämdes genom att pixel för pixel räkna ut skillnaden i färg från originalbilden och summera dessa. Hela processen från start till färdig bild tog ungefär 3 timmar på datorn han använde. Genereringen av en Mona Lisa variant som faktiskt använder en genetisk algoritm finns att se på YouTube [Youtube10]. Beskrivning saknas men källkoden för denna finns att få tag på om man följer länken i videons info. Om detta är riktig konst eller inte är öppet för debatt. AI till Nintendospel Ett annat exempel som är intressant även om det kanske inte har så stor praktisk nytta är Paul Kuliniewicz program Wallace som klarar av att spela gamla Nintendospel som t ex Megaman 2 och Dr. Mario. Wallace, som finns beskrivet i Pauls blogg [Kuliniewicz09], använder sig av en genetisk algoritm där varje individ representeras av en lista med instruktioner som motsvarar de kommandon en spelare kan ge till spelet via handkontrollen. 8 Figur 3: Megaman 2. Bossen Airman (vänster).

9 Ett av exemplen som visas upp i bloggen är en video där Wallace försöker besegra bossen Airman i spelet Megaman 2. Redan efter 10 generationer lyckas den bästa individen med målet. Efterföljande generationer gör det med mer och mer hälsa kvar. Som utvärderingsfunktion användes Airmans hälsa minus Megamans hälsa när någon av dem vunnit. Slutsatser Genetiska algoritmer kan användas inom en stor mängd områden. Deras egenskaper gör dem särskilt lämpliga för att utforska nya, originella lösningar på redan utforskade problem. För komplicerade problem är de även ofta effektivare än andra typer av algoritmer vilket gör att de är attraktivare att tillämpa till sådana. Det är också lätt att använda genetiska algoritmer som hjälp till andra AI tekniker som till exempel Neural Networks och Fuzzy Systems. För att de ska vara användbara krävs dock att problemet och lösningsförslagen (individerna) definieras på ett robust sätt. Slarvas det i de stegen är det väldigt liten chans att en bra lösning hittas av algoritmen. Detta gäller säkert de flesta andra typer av algoritmer också, men för genetiska algoritmer är det kanske extra viktigt eftersom det inte är lika lätt att kontrollera vad man får för resultat från dem. Grunderna i evolutionsteorin gör att genetiska algoritmer är särskilt intressanta för simuleringar av liv. Artificiellt liv kommer troligen spela en stor roll i framtidens datorspel. Idag lider många spel av att det tydligt märks att människor, djur och andra varelser man träffar på i spelen är konstgjorda. Med realistiskt artificiellt liv skulle spelvärldarna bli mer trovärdiga och spelupplevelsen höjas avsevärt. Referenser [Alsin08] Roger Alsin, Genetic Programming: Evolution of Mona Lisa, < (4 mars 2010) [Engelbrecht07] Andries P. Engelbrecht, Computational Intelligence: An Introduction, Second Edition, John Wiley & Sons, ISBN , 2007 [Kuliniewicz09] Paul Kuliniewicz, Paul Kuliniewicz >> Wallace, < (4 mars 2010) [Marczyk04] Adam Marczyk, Genetic Algorithms and Evolutionary Computation, < (4 mars 2010) [Mitchell97] Tom M. Mitchell, Machine Learning, McGraw-Hill, ISBN , 1997 [Obitko98] Marek Obitko, Encoding Introduction to Genetic Algorithms, < (4 mars 2010) [Wikipedia10] Wikipedia Genetic algorithm, < (5 mars 2010) [Youtube10] YouTube, Mona Lisa Genetic Algorithm Test 1, < (4 mars 2010) 9

Genetiska Algoritmer. 10 mars 2014

Genetiska Algoritmer. 10 mars 2014 Genetiska Algoritmer Johan Sandberg Jsg11008@student.mdh.se 10 mars 2014 Niklas Strömberg Nsg11001@student.mdh.se 1 SAMMANFATTNING Genetiska algoritmer är en sorts sökalgoritm som är till för att söka

Läs mer

genetiska algoritmer

genetiska algoritmer Introduktion till genetiska algoritmer CT3620 Vetenskapsmetodik 2005-10-21 Ylva egerfeldt ydt01001@student.mdh.se SAMMANFATTNING enna rapport är tänkt som en introduktion till genetiska algoritmer. Först

Läs mer

Grundläggande Idéer Algoritmens komponenter Numerisk optimering Genetisk Programmering. Genetiska Algoritmer

Grundläggande Idéer Algoritmens komponenter Numerisk optimering Genetisk Programmering. Genetiska Algoritmer Genetiska Algoritmer 1 Grundläggande Idéer 2 3 4 Exempel Parallell optimering inspirerad av biologisk evolution Parallell optimering inspirerad av biologisk evolution Population av hypoteser Urvalprocess

Läs mer

Genetiska Algoritmer

Genetiska Algoritmer Linköpings Universitet Intutionen för datavetenskap Artificiell Intelligens HKGBB0 HT-2003, oktober Genetiska Algoritmer Som problemlösning Anna Skoglund annsk334@student.liu.se 0 Abstract Genetiska algoritmer

Läs mer

Regression med Genetiska Algoritmer

Regression med Genetiska Algoritmer Regression med Genetiska Algoritmer Projektarbete, Artificiell intelligens, 729G43 Jimmy Eriksson, jimer336 770529-5991 2014 Inledning Hur många kramar finns det i världen givet? Att kunna estimera givet

Läs mer

Genetisk programmering i Othello

Genetisk programmering i Othello LINKÖPINGS UNIVERSITET Första versionen Fördjupningsuppgift i kursen 729G11 2009-10-09 Genetisk programmering i Othello Kerstin Johansson kerjo104@student.liu.se Innehållsförteckning 1. Inledning... 1

Läs mer

Genetiska algoritmer. vem raggar på vem? Petter Bergqvist, kogvet 2

Genetiska algoritmer. vem raggar på vem? Petter Bergqvist, kogvet 2 Genetiska algoritmer vem raggar på vem?, kogvet 2 petbe082@student.liu.se petbe082@student.liu.se 2(13) Jag har valt att skriva om genetiska algoritmer för att jag finner metoden ytterst intressant, att

Läs mer

Genetiska algoritmer

Genetiska algoritmer GA Genetiska algoritmer Warwick Tucker Matematiska institutionen Uppsala universitet warwick@math.uu.se 1 Reseproblem Reseproblem Du önskar att resa inom Europa genom att besöka London, Paris, Rom, Stockholm

Läs mer

Mångfald inom en art. Genotyp. Genpool. Olika populationer. Fig En art definieras som

Mångfald inom en art. Genotyp. Genpool. Olika populationer. Fig En art definieras som Mångfald inom en art Population och art. Vad är skillnaden? Vad är en art? Genetisk variation Genetiskt olika populationer Tillämpningar av genetisk variation Etiska problem En art En art definieras som

Läs mer

GenJam En musikalisk genetisk algoritm?

GenJam En musikalisk genetisk algoritm? GenJam En musikalisk genetisk algoritm? Kognitionsvetenskapliga programmet Abstract GenJam är en modell av en jazzmusiker som lär sig att improvisera. Det är en interaktiv genetisk algoritm som interagerar

Läs mer

Fördjupningsuppgift 729G43 Linköpings Universitet alelo408. Genetisk börshandel. Att hitta mönster i börsmarknaden med genetiska algoritmer

Fördjupningsuppgift 729G43 Linköpings Universitet alelo408. Genetisk börshandel. Att hitta mönster i börsmarknaden med genetiska algoritmer Genetisk börshandel Att hitta mönster i börsmarknaden med genetiska algoritmer Alexander Löfstrand HT 2017 1. Inledning 1.1. Bakgrund Börsmarknaden är full av möjligheter att tjäna pengar, men även på

Läs mer

Mångfald inom en art. Genotyp. Genpool. Olika populationer. Fig En art definieras som

Mångfald inom en art. Genotyp. Genpool. Olika populationer. Fig En art definieras som Mångfald inom en art Population och art. Vad är skillnaden? Vad är en art? Genetisk variation Genetiskt olika populationer Tillämpningar av genetisk variation Etiska problem En art En art definieras som

Läs mer

EVOLUTIONENS DRIVKRAFTER ARTBILDNING

EVOLUTIONENS DRIVKRAFTER ARTBILDNING EVOLUTIONENS DRIVKRAFTER ARTBILDNING Evolutionen på 60 sek https://www.youtube.com/watch?v=oiwde6opvz U Vad är evolutionen (8 min)? https://www.youtube.com/watch?v=ghhojc4oxh8 Hur fungerar evolutionen

Läs mer

Symboler och abstrakta system

Symboler och abstrakta system Symboler och abstrakta system Warwick Tucker Matematiska institutionen Uppsala universitet warwick@math.uu.se Warwick Tucker, Matematiska institutionen, Uppsala universitet 1 Vad är ett komplext system?

Läs mer

Evolution. Hur arter uppstår, lever och försvinner

Evolution. Hur arter uppstår, lever och försvinner Evolution Hur arter uppstår, lever och försvinner Aristoteles 384-322 f.kr Idéhistoria Carl von Linné 1707-1778 Georges de Buffon 1707-1788 Jean Babtiste Lamarck 1744-1829 Idéhistoria Cuvier Malthus Lyell

Läs mer

Evolution. Hur arter uppstår, lever och försvinner

Evolution. Hur arter uppstår, lever och försvinner Evolution Hur arter uppstår, lever och försvinner Aristoteles 384-322 f.kr Idéhistoria Carl von Linné 1707-1778 Georges de Buffon 1707-1788 Jean Babtiste Lamarck 1744-1829 De fem rikena Växter Djur Svampar

Läs mer

Sammanfattning Arv och Evolution

Sammanfattning Arv och Evolution Sammanfattning Arv och Evolution Genetik Ärftlighetslära Gen Information om ärftliga egenskaper. Från föräldrar till av komma. Tillverkar proteiner. DNA (deoxiribonukleinsyra) - DNA kan liknas ett recept

Läs mer

Vi skall under ett antal veckor jobba med evolutionsundervisning. Arbetet kommer att se lite olika ut.

Vi skall under ett antal veckor jobba med evolutionsundervisning. Arbetet kommer att se lite olika ut. Evolution åk9 ht 13 Evolution i åk9 ht13 Vi skall under ett antal veckor jobba med evolutionsundervisning. Arbetet kommer att se lite olika ut. Du kommer att få lyssna till din lärare som föreläser om

Läs mer

Evolution. Hur arter uppstår, lever och försvinner

Evolution. Hur arter uppstår, lever och försvinner Evolution Hur arter uppstår, lever och försvinner Aristoteles 384-322 f.kr Idéhistoria Carl von Linné 1707-1778 Georges de Buffon 1707-1788 Jean Babtiste Lamarck 1744-1829 1. Eukaryoter Tre domäner 2.

Läs mer

Kapitel 13. Genetiska algoritmer

Kapitel 13. Genetiska algoritmer Kapitel 13. Genetiska algoritmer Som vi tidigare sett, är det i allmänhet svårt att finna det globala minimet för en funktion av många variabler. Det betyder också att det inte är lätt att hitta på en

Läs mer

FARLIGA TANKAR EVOLUTIONEN

FARLIGA TANKAR EVOLUTIONEN FARLIGA TANKAR EVOLUTIONEN Charles Darwin (1809-1882) NÄR VI ÄR KLARA MED DETTA AVSNITT SKALL DU KUNNA: Ge en beskrivning av hur evolutionsteorin växt fram Visa skillnader och likheter mellan riktat och

Läs mer

HKGBB0, Artificiell intelligens

HKGBB0, Artificiell intelligens HKGBB0, Artificiell intelligens Kortfattade lösningsförslag till tentan 3 november 2005 Arne Jönsson 1. Vad karaktäriserar dagens AI-forskning jämfört med den AI-forskning som bedrevs perioden 1960-1985.

Läs mer

Ekvivalensrelationer

Ekvivalensrelationer Abstrakt datatyp för disjunkta mängder Vi skall presentera en abstrakt datatyp för att representera disjunkta mängder Kan bl.a. användas för att lösa ekvivalensproblemet avgör om två godtyckliga element

Läs mer

Grundläggande programmering med matematikdidaktisk inriktning för lärare som undervisar i gy eller komvux gy nivå, 7,5 hp

Grundläggande programmering med matematikdidaktisk inriktning för lärare som undervisar i gy eller komvux gy nivå, 7,5 hp Grundläggande programmering med matematikdidaktisk inriktning för lärare som undervisar i gy eller komvux gy nivå, 7,5 hp Dag Wedelin, bitr professor, och K V S Prasad, docent Institutionen för data- och

Läs mer

0XVLNVNDSDQGHJHQRP *HQHWLVN 3URJUDPPHULQJ

0XVLNVNDSDQGHJHQRP *HQHWLVN 3URJUDPPHULQJ 0XVLNVNDSDQGHJHQRP *HQHWLVN 3URJUDPPHULQJ ) UGMXSQLQJVDUEHWHL$, 0XVLNVNDSDQGHRFK*HQHWLVN3URJUDPPHULQJ 6DPPDQIDWWQLQJ I detta arbete har jag valt att undersöka hur musik kan skapas genom ett system grundat

Läs mer

FUZZY LOGIC. Christopher Palm chrpa087

FUZZY LOGIC. Christopher Palm chrpa087 FUZZY LOGIC 900223-1554 Innehållsförteckning INLEDNING...2 HUR DET FUNGERAR...3 Crisp Sets och Fuzzy Sets...3 Operatorer...5 IF THEN regler...7 FUZZY INFERENCE...7 Fuzzification...8 Regelsättning...8

Läs mer

Genetik, Gen-etik och Genteknik

Genetik, Gen-etik och Genteknik Genetik, Gen-etik och Genteknik Syfte och innehåll Att utveckla kunskap om det genetiska arvet och genteknikens möjligheter. Arbetssätt Vi kommer att varva föreläsningar, diskussioner, arbetsuppgifter

Läs mer

Den evolutionära scenen

Den evolutionära scenen Den evolutionära scenen Det finns en del att förklara Där allt händer Skapande Evolutionsteorin Gibboner Orangutang Gorilla Människa Schimpans Bonobo Naturligt urval Artbildning Livet har en historia Gemensamt

Läs mer

Uppdelning av ett artificiellt neuralt nätverk

Uppdelning av ett artificiellt neuralt nätverk Uppdelning av ett artificiellt neuralt nätverk Kandidatarbete utfört av: Björn Eklund Spelprogrammering årskurs 2009 Blekinge Tekniska Högskolan bjorneklund86@gmail.com Handledare: Stefan Johansson Blekinge

Läs mer

Använda kunskaper i biologi för att granska information, kommunicera och ta ställning i frågor som rör hälsa, naturbruk och ekologisk hållbarhet.

Använda kunskaper i biologi för att granska information, kommunicera och ta ställning i frågor som rör hälsa, naturbruk och ekologisk hållbarhet. Arvet och DNA Lokal pedagogisk planering årkurs 9 Syfte Naturvetenskapen har sitt ursprung i människans nyfikenhet och behov av att veta mer om sig själv och om sin omvärld. Kunskaper i biologi har stor

Läs mer

Lokal pedagogisk planering för arbetsområdet genetik i årskurs 9

Lokal pedagogisk planering för arbetsområdet genetik i årskurs 9 Lokal pedagogisk planering för arbetsområdet genetik i årskurs 9 Syfte: Använda biologins begrepp, modeller och teorier för att beskriva och förklara biologiska samband i människokroppen och samhället.

Läs mer

Vad händer i ett genetiskt laboratorium?

Vad händer i ett genetiskt laboratorium? 12 utveckla nya metoder eller låta sådana prover delta i kvalitetskontrollprogram, såvida inte patienten har uttryckt att man inte vill att ens prov ska vara del av sådan verksamhet. Som alla andra sparade

Läs mer

Upplägg. Binära träd. Träd. Binära träd. Binära träd. Antal löv på ett träd. Binära träd (9) Binära sökträd (10.1)

Upplägg. Binära träd. Träd. Binära träd. Binära träd. Antal löv på ett träd. Binära träd (9) Binära sökträd (10.1) Binära träd Algoritmer och Datastrukturer Markus Saers markus.saers@lingfil.uu.se Upplägg Binära träd (9) Binära sökträd (0.) Träd Många botaniska termer Träd, rot, löv, gren, Trädets rot kan ha ett antal

Läs mer

Mälardalens högskola

Mälardalens högskola Teknisk rapportskrivning - en kortfattad handledning (Version 1.2) Mälardalens högskola Institutionen för datateknik (IDt) Thomas Larsson 10 september 1998 Västerås Sammanfattning En mycket viktig del

Läs mer

Föreläsning 11. Giriga algoritmer

Föreläsning 11. Giriga algoritmer Föreläsning 11 Giriga algoritmer Föreläsning 11 Giriga algoritmer Användning Växelproblemet Kappsäcksproblemet Schemaläggning Färgläggning Handelsresandeproblemet Giriga algoritmer (Greedy algorithms)

Läs mer

Vinjetter TDDC91 Datastrukturer och algoritmer

Vinjetter TDDC91 Datastrukturer och algoritmer Vinjetter TDDC91 Datastrukturer och algoritmer 17 augusti 2015 2 Scenario 1 Man har inom Posten Logistik AB skrivit programvara för sortering av kundinformation och vill standardisera användningen av sorteringsalgoritmer.

Läs mer

DYNAMISK SVÅRIGHETSGRAD MED GENETISK ALGORITM. En jämförelse mellan två tekniker för att snabba upp processen

DYNAMISK SVÅRIGHETSGRAD MED GENETISK ALGORITM. En jämförelse mellan två tekniker för att snabba upp processen DYNAMISK SVÅRIGHETSGRAD MED GENETISK ALGORITM En jämförelse mellan två tekniker för att snabba upp processen Examensarbete inom huvudområdet Datalogi Grundnivå 30 högskolepoäng Vårtermin 2012 Jesper Larsson

Läs mer

Anpassningar: i variabla miljöer & Livshistorier och evolutionär fitness Kap. 9&10

Anpassningar: i variabla miljöer & Livshistorier och evolutionär fitness Kap. 9&10 Anpassningar: i variabla miljöer & Livshistorier och evolutionär fitness Kap. 9&10 Jätte-stora röda sammetskvalstret Förutsättningar för naturligt urval som leder till evolution: * Avkommeproduktion >

Läs mer

Artificiell Musik? AI som kompositör 2001-10-18

Artificiell Musik? AI som kompositör 2001-10-18 Artificiell Intelligens HKGBB0 Kognitionsvetenskapliga programmet, HT 2001 Institutionen för Datavetenskap, Linköpings universitet Artificiell Musik? AI som kompositör 2001-10-18 "Musik ska byggas utav

Läs mer

GENETISK PROGRAMMERAD MUSIK OCH

GENETISK PROGRAMMERAD MUSIK OCH GENETISK PROGRAMMERAD MUSIK OCH UTVECKLINGEN AV AUTO FITNESS RATERS Abstract Kan datorer skapa egen musik? Kan datorer lära sig vad som är bra musik? Med hjälp av Genetisk programmering och neurala nät

Läs mer

Totalt finns det alltså 20 individer i denna population. Hälften, dvs 50%, av dem är svarta.

Totalt finns det alltså 20 individer i denna population. Hälften, dvs 50%, av dem är svarta. EVOLUTION Tänk dig att det på en liten ö i skärgården finns 10 st honor av den trevliga insekten långvingad muslus. Fem av dessa är gula med svarta fläckar och fem är helsvarta. Det är samma art, bara

Läs mer

34% 34% 13.5% 68% 13.5% 2.35% 95% 2.35% 0.15% 99.7% 0.15% -3 SD -2 SD -1 SD M +1 SD +2 SD +3 SD

34% 34% 13.5% 68% 13.5% 2.35% 95% 2.35% 0.15% 99.7% 0.15% -3 SD -2 SD -1 SD M +1 SD +2 SD +3 SD 6.4 Att dra slutsatser på basis av statistisk analys en kort inledning - Man har ett stickprov, men man vill med hjälp av det få veta något om hela populationen => för att kunna dra slutsatser som gäller

Läs mer

EVOLUTIONEN = LIVETS UTVECKLING. Utveckling pågår

EVOLUTIONEN = LIVETS UTVECKLING. Utveckling pågår EVOLUTIONEN = LIVETS UTVECKLING Utveckling pågår ALLT LEVANDE PÅ JORDEN HAR ETT GEMENSAMT URSPRUNG. DET BETYDER ATT ALLA ORGANISMER BAKTERIER, SVAMPAR, VÄXTER OCH DJUR ÄR SLÄKT MED VARANDRA. ORGANISMER

Läs mer

de var svåra att implementera och var väldigt ineffektiva.

de var svåra att implementera och var väldigt ineffektiva. OBS! För flervalsfrågorna gäller att flera alternativ eller inget alternativ kan vara korrekt. På flervalsfrågorna kan man bara ha rätt eller fel, dvs frågan måste vara helt korrekt besvarad. Totalt kan

Läs mer

använda kunskaper i biologi för att granska information, kommunicera och ta ställning i frågor som rör hälsa, naturbruk och ekologisk hållbarhet,

använda kunskaper i biologi för att granska information, kommunicera och ta ställning i frågor som rör hälsa, naturbruk och ekologisk hållbarhet, Arbetsområde: Huvudsakligt ämne: Biologi åk 7-9 Läsår: Tidsomfattning: Ämnets syfte Undervisning i ämnet biologi syftar till: länk Följande syftesförmågor för ämnet ska utvecklas: använda kunskaper i biologi

Läs mer

Registerforskning Oktober 2018, Stockholm City Conference Centre. Möjligheter med Artificiell Intelligens inom registerforskningen

Registerforskning Oktober 2018, Stockholm City Conference Centre. Möjligheter med Artificiell Intelligens inom registerforskningen Registerforskning 2018 17 Oktober 2018, Stockholm City Conference Centre Möjligheter med Artificiell Intelligens inom registerforskningen Peter Funk Mälardalens Högskola Vem är Peter Funk? Artificiell

Läs mer

Uppsala Universitet Matematiska Institutionen Thomas Erlandsson

Uppsala Universitet Matematiska Institutionen Thomas Erlandsson Uppsala Universitet Matematiska Institutionen Thomas Erlandsson LÄSANVISNINGAR VECKA 36 VERSION 1. ARITMETIK FÖR RATIONELLA OCH REELLA TAL, OLIKHETER, ABSOLUTBELOPP ADAMS P.1 Real Numbers and the Real

Läs mer

Projektrapport. Till Projektet Bluetoothstyrd bil

Projektrapport. Till Projektet Bluetoothstyrd bil Till Projektet Bluetoothstyrd bil Av Erik Olsson Fornling Handledare: Fredrik Johansson n söndagen den 18 mars 2012 Sidan 1 (7) Sammanfattning Jag har byggt om en gammal radiostyrd bil och bytt ut all

Läs mer

Föreläsning 11. Giriga algoritmer

Föreläsning 11. Giriga algoritmer Föreläsning 11 Giriga algoritmer Föreläsning 11 Giriga algoritmer Användning Växelproblemet Kappsäcksproblemet Schemaläggning Färgläggning Handelsresandeproblemet Uppgifter Giriga algoritmer (Greedy algorithms)

Läs mer

Pressrelease Artes Industriambassadör 031115. Mer realistiska skuggor i datorspel och virtual reality-applikationer

Pressrelease Artes Industriambassadör 031115. Mer realistiska skuggor i datorspel och virtual reality-applikationer Anita Andler Pressrelease Artes Industriambassadör 031115 Mer realistiska skuggor i datorspel och virtual reality-applikationer Ulf Assarsson, doktorand vid Chalmers tekniska högskola lade den 10 oktober

Läs mer

Evolution, del 1: Evolution och naturlig selektion. Jessica Abbott Forskare Evolutionär Ekologi

Evolution, del 1: Evolution och naturlig selektion. Jessica Abbott Forskare Evolutionär Ekologi Evolution, del 1: Evolution och naturlig selektion Jessica Abbott Forskare Evolutionär Ekologi Kanada Peterborough liftlocks Johnson Hall University of Guelph Lund Ekologihuset Erik Svensson Ischnura elegans

Läs mer

Programmering i matematik

Programmering i matematik Matematik Grundskola åk 7-9 Modul: Matematikundervisning med digitala verktyg II Del 4: Programmering i matematik Programmering i matematik Ola Helenius, NCM, Morten Misfeldt, Aalborg universitet och Lennart

Läs mer

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

PROGRAMMERING. Ämnets syfte. Kurser i ämnet PROGRAMMERING Ämnet programmering behandlar programmeringens roll i informationstekniska sammanhang som datorsimulering, animerad grafik, praktisk datoriserad problemlösning och användaranpassad konfiguration

Läs mer

NEUROEVOLUTION MED TÄVLINGSINRIKTAD SAMEVOLUTION I FLERA MILJÖER MED ÖKANDE KOMPLEXITET

NEUROEVOLUTION MED TÄVLINGSINRIKTAD SAMEVOLUTION I FLERA MILJÖER MED ÖKANDE KOMPLEXITET M a l sk ap a d a v H e nr ik NEUROEVOLUTION MED TÄVLINGSINRIKTAD SAMEVOLUTION I FLERA MILJÖER MED ÖKANDE KOMPLEXITET NEUROEVOLUTION WITH COMPETITIVE COEVOLUTION IN MULTIPLE SCENES OF INCREASING COMPLEXITY

Läs mer

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

PROGRAMMERING. Ämnets syfte. Kurser i ämnet PROGRAMMERING Ämnet programmering behandlar programmeringens roll i informationstekniska sammanhang som datorsimulering, animerad grafik, praktisk datoriserad problemlösning och användaranpassad konfiguration

Läs mer

TENTAMEN. Programmering Grundkurs (HI1900) Skrivtid 13:15-18:15. Tisdagen 26 april Tentamen består av 8 sidor

TENTAMEN. Programmering Grundkurs (HI1900) Skrivtid 13:15-18:15. Tisdagen 26 april Tentamen består av 8 sidor TENTAMEN Programmering Grundkurs (HI1900) Skrivtid 13:15-18:15 Tisdagen 26 april 2011 Tentamen består av 8 sidor Hjälpmedel Förutom dator med installerad Code::Blocks, Utforskaren, Acrobat reader och Notepad

Läs mer

Föreläsning 1. Introduktion. Vad är en algoritm?

Föreläsning 1. Introduktion. Vad är en algoritm? Några exempel på algoritmer. Föreläsning 1. Introduktion Vad är en algoritm? 1. Häll 1 dl havregryn och ett kryddmått salt i 2 1 2 dl kallt vatten. Koka upp och kocka gröten ca 3minuter. Rör om då och

Läs mer

Olika sätt att lösa ekvationer

Olika sätt att lösa ekvationer Modul: Algebra Del 5: Algebra som språk Olika sätt att lösa ekvationer Cecilia Kilhamn, Göteborgs Universitet och Lucian Olteanu, Linnéuniversitetet Att lösa ekvationer är en central del av algebran, det

Läs mer

MinMax Algoritmen Implementation och optimering. Joakim Östlund 15 juni 2004

MinMax Algoritmen Implementation och optimering. Joakim Östlund 15 juni 2004 MinMax Algoritmen Implementation och optimering Joakim Östlund 15 juni 2004 1 Samanfattning MinMax är en algoritm som kan användas i turbaserade spel för att skapa en virituell motståndare. Algoritmen

Läs mer

Matematisk modellering - Projekt. djurförflyttningar. Viktor Griph Anders Jonsson

Matematisk modellering - Projekt. djurförflyttningar. Viktor Griph Anders Jonsson Matematisk modellering - Projekt djurförflyttningar Viktor Griph Anders Jonsson juni Bakgrund Detta projekt är tänkt att simulera hur en population djur förflyttar sig över ett geografiskt område beroende

Läs mer

Beräkning med ord. -hur en dator hanterar perception. Linköpings universitet Artificiell intelligens 2 2010-10-03 Erik Claesson 880816-1692

Beräkning med ord. -hur en dator hanterar perception. Linköpings universitet Artificiell intelligens 2 2010-10-03 Erik Claesson 880816-1692 Beräkning med ord -hur en dator hanterar perception 2010-10-03 Erik Claesson 880816-1692 Innehåll Inledning... 3 Syfte... 3 Kan datorer hantera perception?... 4 Naturligt språk... 4 Fuzzy Granulation...

Läs mer

Förslag den 25 september Biologi

Förslag den 25 september Biologi Biologi Naturvetenskapen har sitt ursprung i människans nyfikenhet och behov av att veta mer om sig själv och sin omvärld. Kunskaper i biologi har stor betydelse för samhällsutvecklingen inom så skilda

Läs mer

Vad man bör tänka på när man har en liten ras? Erling Strandberg, professor vid institutionen för husdjursgenetik, SLU, Uppsala

Vad man bör tänka på när man har en liten ras? Erling Strandberg, professor vid institutionen för husdjursgenetik, SLU, Uppsala Vad man bör tänka på när man har en liten ras? Erling Strandberg, professor vid institutionen för husdjursgenetik, SLU, Uppsala Norsk Buhund är en ganska liten ras i Sverige. För en liten ras finns det

Läs mer

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Felsökning. Datatyper. Referenstyper. Metoder / funktioner

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Felsökning. Datatyper. Referenstyper. Metoder / funktioner 732G11 Linköpings universitet 2011-01-21 1 2 3 4 5 6 Skapa program Kompilera: Källkod Kompilator bytekod Köra: Bytekod Virtuell maskin Ett riktigt program Hej.java class Hej { public static void main (

Läs mer

EXJOBBSOPPOSITION. Rapportförfattare: Hanif Farahmand Mokarremi Ashkan Jahanbakhsh

EXJOBBSOPPOSITION. Rapportförfattare: Hanif Farahmand Mokarremi Ashkan Jahanbakhsh EXJOBBSOPPOSITION Rapportförfattare: Hanif Farahmand Mokarremi Ashkan Jahanbakhsh Rapportens titel: Domän-Webb-Applikations-Fuzzer(DWAP) introduktion och implementation Opponent: Viktor Gummesson Var det

Läs mer

Datorlaboration 4. Pedigree-analys

Datorlaboration 4. Pedigree-analys Datorlaboration 4 Pedigree-analys 2. BESKRIVNING AV DATORPROGRAM FÖR DATORLABORATION, PEDIGREE- ANALYS De program som används under denna laboration är inte särskilt användarvänliga (de har tagits fram

Läs mer

Datastrukturer och algoritmer. Föreläsning 15 Inför tentamen

Datastrukturer och algoritmer. Föreläsning 15 Inför tentamen Datastrukturer och algoritmer Föreläsning 15 Inför tentamen 1 Innehåll Kursvärdering Vi behöver granskare! Repetition Genomgång av gammal tenta 2 Första föreläsningen: målsättningar Alla ska höja sig ett

Läs mer

Problem: FIL File Paths

Problem: FIL File Paths Problem: FIL File Paths swedish BOI 2015, dag 2. Tillgängligt minne: 256 MB. 1.05.2015 Byteasar tycker om att leva farligt. Han springer med saxar, skickar in lösningar på tävlingsproblem utan att testa

Läs mer

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 9 Jonas Lindgren, Institutionen för Datavetenskap, LiU

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 9 Jonas Lindgren, Institutionen för Datavetenskap, LiU TDDC30 Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 9 Jonas Lindgren, Institutionen för Datavetenskap, LiU På denna föreläsning: Prioritetskö Heap Representation som

Läs mer

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

PROGRAMMERING. Ämnets syfte. Kurser i ämnet PROGRAMMERING Ämnet programmering behandlar programmeringens roll i informationstekniska sammanhang som datorsimulering, animerad grafik, praktisk datoriserad problemlösning och användaranpassad konfiguration

Läs mer

Datatyper och kontrollstrukturer. Skansholm: Kapitel 2) De åtta primitiva typerna. Typ Innehåll Defaultvärde Storlek

Datatyper och kontrollstrukturer. Skansholm: Kapitel 2) De åtta primitiva typerna. Typ Innehåll Defaultvärde Storlek De åtta primitiva typerna Java, datatyper, kontrollstrukturer Skansholm: Kapitel 2) Uppsala Universitet 11 mars 2005 Typ Innehåll Defaultvärde Storlek boolean true, false false 1 bit char Tecken \u000

Läs mer

ELEMENTÄR - SVÅRARE FÄRGGENETIK. Del 5

ELEMENTÄR - SVÅRARE FÄRGGENETIK. Del 5 ELEMENTÄR - SVÅRARE FÄRGGENETIK Del 5 av Maria Grönkvist Det har blivit dags för den sista delen av min artikelserie. Denna gång tänkte jag delge er läsare mina funderingar angående en del färger, ge ett

Läs mer

En typisk medianmorot

En typisk medianmorot Karin Landtblom En typisk medianmorot I artikeln Läget? Tja det beror på variablerna! i Nämnaren 1:1 beskrivs en del av problematiken kring lägesmått och variabler med några vanliga missförstånd som lätt

Läs mer

Kommentarer till behandlingen av data som ligger till grund för den statistiska utvärderingen av Genetisk Analys av Svenska Vorstehklubbens Jaktprov.

Kommentarer till behandlingen av data som ligger till grund för den statistiska utvärderingen av Genetisk Analys av Svenska Vorstehklubbens Jaktprov. Kommentarer till behandlingen av data som ligger till grund för den statistiska utvärderingen av Genetisk Analys av Svenska Vorstehklubbens Jaktprov. Rolf Bergman Gammelhöjdas Kennel I examensarbetet Genetisk

Läs mer

It s through mistakes that you actually can grow. You have to get bad in order to get good.

It s through mistakes that you actually can grow. You have to get bad in order to get good. It s through mistakes that you actually can grow. You have to get bad in order to get good. Design Paula Scher Design 115 Stina Nilimaa Wickström Stina Nilimaa Wickström är designchef för Volvo-koncernen.

Läs mer

729G11 Artificiell Intelligens Marcus Johansson Marjo581. Fuzzy logic. Marcus Johansson Marjo581

729G11 Artificiell Intelligens Marcus Johansson Marjo581. Fuzzy logic. Marcus Johansson Marjo581 Fuzzy logic 880328-2535 Innehåll Fuzzy logic... 1 1. Inledning... 4 2. Jämförelse mellan fuzzy logic och tvåvärdeslogik.... 4 3. Fuzzy sets.... 4 4. Linvistiska variabler... 5 5. Operatorer... 5 6. If-

Läs mer

Introduktion till programmering SMD180. Föreläsning 8: Listor

Introduktion till programmering SMD180. Föreläsning 8: Listor Introduktion till programmering Föreläsning 8: Listor 1 1 Listor = generaliserade strängar Strängar = sekvenser av tecken Listor = sekvenser av vad som helst Exempel: [10, 20, 30, 40] # en lista av heltal

Läs mer

Programmeringsuppgift Game of Life

Programmeringsuppgift Game of Life CTH/GU STUDIO TMV06a - 0/0 Matematiska vetenskaper Programmeringsuppgift Game of Life Analys och Linär Algebra, del A, K/Kf/Bt Inledning En cellulär automat är en dynamisk metod som beskriver hur komplicerade

Läs mer

Programmera ett övergångsställe

Programmera ett övergångsställe Programmera ett övergångsställe I lektionen programmeras en algoritm för att styra trafikljus i en korsning. Eleverna får skapa en praktisk applikation och lära sig att skapa och modifiera algoritmer.

Läs mer

EVOLUTIONÄR LEVELDESIGN LEVELDESIGN MED GENETISKA ALGORITMER

EVOLUTIONÄR LEVELDESIGN LEVELDESIGN MED GENETISKA ALGORITMER EVOLUTIONÄR LEVELDESIGN LEVELDESIGN MED GENETISKA ALGORITMER Examensarbete Systemarkitekturutbildningen Daniel Johansson Rasmus Nygren 2012:KSAI02 Systemarkitekturutbildningen är en kandidatutbildning

Läs mer

HI1024 Programmering, grundkurs TEN

HI1024 Programmering, grundkurs TEN HI1024 Programmering, grundkurs TEN2 2016-12-22 KTH STH Flemingsberg 8.15-13.00 Tillåtna hjälpmedel: Kursboken C PROGRAMMING A Modern Approach K. N. King helt utan anteckningar Alternativt C från början

Läs mer

Personifierad Netflix

Personifierad Netflix Linköpings universitet Personifierad Netflix Lisa Rönnqvist 2016-08-24 Sammanfattning INNEHÅLLSFÖRTECKNING 1. Inledning... 1 1.1 Bakgrund... 1 1.2 Syfte... 2 2. Netflix... Fel! Bokmärket är inte definierat.

Läs mer

Artbildning och utdöende

Artbildning och utdöende Artbildning och utdöende Arter Vad är en art? Enkla svaret: Två individer ur olika arter, kan inte få fertil avkomma Lite mer komplicerat: "Art" är en människans definition. Det finns exempel på arter

Läs mer

Lennart Rolandsson, Uppsala universitet, Ulrica Dahlberg och Ola Helenius, NCM

Lennart Rolandsson, Uppsala universitet, Ulrica Dahlberg och Ola Helenius, NCM Matematik Gymnasieskola Modul: Matematikundervisning med digitala verktyg II Del 1: Om programmering Aktiviteter Del 1 Lennart Rolandsson, Uppsala universitet, Ulrica Dahlberg och Ola Helenius, NCM Ni

Läs mer

Programmeringsolympiaden 2018

Programmeringsolympiaden 2018 Programmeringsolympiaden 2018 TÄVLINGSREGLER FÖR SKOLKVALET Tävlingen äger rum på av skolan bestämt datum under fyra timmar. Ingen förlängning ges för lunch eller raster. Eleven ska i förväg komma överens

Läs mer

CSI - Katte DNA-fingerprinting Välkänt från polisarbete. Metoden föddes 1985 i England. Från början krävdes stora mängder DNA, men nu funkar även mycket små mängder. DNA-sekvens Användning Metoden

Läs mer

Språket Python - Del 1 Grundkurs i programmering med Python

Språket Python - Del 1 Grundkurs i programmering med Python Hösten 2009 Dagens lektion Ett programmeringsspråks byggstenar Några inbyggda datatyper Styra instruktionsflödet Modulen sys 2 Ett programmeringsspråks byggstenar 3 ETT PROGRAMMERINGSSPRÅKS BYGGSTENAR

Läs mer

använda kunskaper i biologi för att granska information, kommunicera och ta ställning i frågor som rör hälsa, naturbruk och ekologisk hållbarhet,

använda kunskaper i biologi för att granska information, kommunicera och ta ställning i frågor som rör hälsa, naturbruk och ekologisk hållbarhet, Arbetsområde: Huvudsakligt ämne: Biologi åk 7-9 Läsår: Tidsomfattning: Ämnets syfte Undervisning i ämnet biologi syftar till: länk Följande syftesförmågor för ämnet ska utvecklas: använda kunskaper i biologi

Läs mer

Ärftliga sjukdomar och egenskaper hos hund

Ärftliga sjukdomar och egenskaper hos hund Engelsk bulldog Tibetansk terrier Västgötaspets Dvärgpinscher Chow chow Foto: Pleple2000 Foto: Flickr user skaty222 Foto: Sören T Eriksson Foto: Entheta Foto:Jurriaan Schulman Alla bilder Wikimedia commons

Läs mer

Vad är en designprocess?

Vad är en designprocess? Vad är en designprocess? En designprocess är organisation och ledning av människor och den information och kunskap de tar fram vid utvecklingen av en produkt Vilka variabler kan vi kontrollera? Hur mäter

Läs mer

Delprov 3 Vetenskaplig artikel

Delprov 3 Vetenskaplig artikel Delprov 3 Vetenskaplig artikel # of Questions: 15 Question #: 1 I denna uppgift ska du läsa en vetenskaplig artikel (CHCHD2 mutations in autosomal dominant late-onset Parkinson s disease: a genome-wide

Läs mer

1 Mätdata och statistik

1 Mätdata och statistik Matematikcentrum Matematik NF Mätdata och statistik Betrakta frågeställningen Hur mycket väger en nyfödd bebis?. Frågan verkar naturlig, men samtidigt mycket svår att besvara. För att ge ett fullständigt

Läs mer

efact Sök Sök/Rapporter (2008-04-18)

efact Sök Sök/Rapporter (2008-04-18) efact Sök Sök/Rapporter (2008-04-18) Sök För att söka efter fakturor, tryck Alt + Ö eller klicka på Sök i den övre menyraden. Man kan söka på tre olika typer av värden; 1. Fakturavärden. Information knutet

Läs mer

ENKEL Programmering 3

ENKEL Programmering 3 ENKEL Programmering 3 Figurer i långa rader Titta på de olika figurerna i de olika raderna. Kan du se att de olika figurerna i varje rad är placerade enligt ett visst mönster? Kan du lista ut vilken figur

Läs mer

Evolution, del 2: Evolutionsprocesser och förändringar i det genetiska materialet. Jessica Abbott Forskare Evolutionär Ekologi

Evolution, del 2: Evolutionsprocesser och förändringar i det genetiska materialet. Jessica Abbott Forskare Evolutionär Ekologi Evolution, del 2: Evolutionsprocesser och förändringar i det genetiska materialet Jessica Abbott Forskare Evolutionär Ekologi Naturlig selektion Alleler som ger bättre överlevnad och/eller reproduktionsförmåga

Läs mer

TDDD92 Artificiell intelligens -- projekt

TDDD92 Artificiell intelligens -- projekt jonas.kvarnstrom@liu.se 2018 TDDD92 Artificiell intelligens -- projekt Individuella uppgifter UPG2: Individuell skriftlig rapport 2 Vad? Läsa och förstå vetenskaplig litteratur Varför? Framtiden: Inte

Läs mer

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

PROGRAMMERING. Ämnets syfte. Kurser i ämnet PROGRAMMERING Ämnet programmering behandlar hur mjukvaror skapas, anpassas och utvecklas samt programmeringens roll i informationstekniska sammanhang som datorsimulering och praktisk datoriserad problemlösning.

Läs mer

Tentaupplägg denna gång

Tentaupplägg denna gång Tentaupplägg denna gång Denna tenta är uppdelad i två olika varianter. Det är helt ok att använda vilken variant ni vill. Det är ok att byta mitt under tentan om man så vill också. Variant 1: Uppgift 1,

Läs mer

Medicinsk genetik del 4: Tolka genetiska släkttavlor (pedigreen) Niklas Dahrén

Medicinsk genetik del 4: Tolka genetiska släkttavlor (pedigreen) Niklas Dahrén Medicinsk genetik del 4: Tolka genetiska släkttavlor (pedigreen) Niklas Dahrén Vad är en genetisk släkttavla (pedigree)? ü ü En genetisk släkttavla visar förekomsten av en specifik egenskap eller sjukdom

Läs mer

Cancer som en ämnesomsättningssjukdom del 1

Cancer som en ämnesomsättningssjukdom del 1 Cancer som en ämnesomsättningssjukdom del 1 Artiklarna skrivna av Dr Georgia Ede (översättning S E Nordin) Thomas Seyfried PhD, en hjärncancerforskare med över 25 års erfarenhet inom området, gav en banbrytande

Läs mer