Genetiska Algoritmer

Storlek: px
Starta visningen från sidan:

Download "Genetiska Algoritmer"

Transkript

1 Linköpings Universitet Intutionen för datavetenskap Artificiell Intelligens HKGBB0 HT-2003, oktober Genetiska Algoritmer Som problemlösning Anna Skoglund 0

2 Abstract Genetiska algoritmer är en metod som syftar till att hitta bättre lösningar på svåra problem. Metoden bygger på Darwins evolutionsprincip om att de de individer som är bäst anpassade till omgivningen överlever och reproducerar sig, medan övriga dör ut. GA bland andra system är alltså en artificiell variant av evolution, där det som förändras är olika former av datastrukturer istället för naturliga organismer. En initialt slumpad population med individer som representar olika lösningar på ett problem, utvärderas men hjälp av en utvärderingsfunktion. De individer som är bäst lämpade selekteras för att skapa avkomma, vilken sedan muteras för att få en genetisk spridning i den nya bättre populationen. Algoritmen söker alltså själv efter lösningar, utan att nya indata krävs. Även i stora sökrymder fungerar GA bra utan att fastna i lokala extrempunkter i funktionens sökrymd. Arbetet syftar i huvudsak till att beskriva GA:s funktion, samt beskriva metoden som problemlösning med ett par exempel. 0

3 Innehåll Inledning 1 Darwins evolutionsprincip - från amöbor till människor 1 Den Artificiella Evolutionens historia 1 Genetiska Algoritmer 2 Biologiska begrepp 3 Kodning av kromosomer 3 Sökrymden 4 Den grundläggande genetiska algoritmen 4 Operatorer i GA 5 Selektion 7 Exempel på genetisk algoritm - TSP 8 Jämförelse med andra sökalgoritmer 10 Tillämpningsområden 10 Design av energieffektiva byggnader 10 Övriga tillämpningsområden 12 Diskussion 13 Källförteckning 14 Litteratur 14 Internet 14 Bildreferens 14 0

4 Inledning Darwins evolutionsprincip - från amöbor till människor Redan de gamla grekerna, som Anaximander och Empedokles, antog att människan utvecklats från lägre stående djur i något slags urval. Men det var först på 1800-talet som teorin fick sitt genomslag i och med Charles Darwins utveckling, genom en presentation av det naturliga urvalet som en förklarande mekanim till utvecklingsläran. Evolutionsteorin beskriver hur alla jordens arter har utvecklats från enklare encelliga organismer till komplexa varelser, från amöbor till människor. Teorin bygger på att arvsanlag förs vidare från förälder till barn i en population inom vilken det alltid finns en viss variation av egenskaper. De indivder som har arvsanlag som gör dem bättre anpassade för att klara sig i sin omgivning än andra individer, ger dem eller dess avkomma högre överlevnad, varför dessa arvsanlag kommer att föras vidare. Med andra ord kommer de individer som är bäst anpassade till omgivningen överleva och reproducera sig, medan övriga dör ut, varpå gynnsamma arvsanlag sprids i populationen, en process vilken kallas selektion genom naturligt urval. Att allt växt- och djurliv har uppkommit på detta och att utvecklingen fram till oss människor bygger på evolution och slump är närmast en otroligt fashinerande effekt. Den Artificiella Evolutionens historia Redan i vaggan av AI, fanns tankarna om att den enkla process som naturens biologiska evolution bygger på, även borde fungera för maskinevolution (genetiska algoritmer). Tidiga experiment baserades på den korrekta slutsatsen att man genom att på lämpligt sätt utföra mutationer på ett maskinkodsprogram, borde kunna generara ett program med ett bra utförarande för vilken enkel uppgift som helst. Dock gjordes knappt några framsteg trots tusentals timmar av CPU-tid, vilket i huvudsak kan sägas berodde på bristfälliga representationer. Evolutionära Algoritmer Fram till i dag har metoden utvecklats med bättre representationer på ett framgångsrikt sätt. Evolutionära algoritmer är en form av stochastiska sökmetoder som imiterar naturens biologiska evolution. Med dessa metoder har man lyckats simulera Darwins principer för det naturliga urvalet på datorer. Inom Evolutionära Algoritmer, som är samlingsnamnet för de olika evolutionära metoderna, har olika huvudskolor utvecklats under de senaste 30 åren. Genetiska algoritmer, utvecklades i huvudsak i USA av J.H Holland på 1960-talet. Genetisk programmering utvecklades av Koza, Evolutionära strategier utvecklades av I. Rechenberg och H. P. Schwefel, samt Evolutionär programmering av Fogel. Var och en av metoderna bygger på sin egen approach, men är alltså alla inspirerade av samma principer enligt naturens evolution. 1

5 Genetiska Algoritmer Genetiska algoritmer, syftar till att hitta bättre lösningar på svåra problem, och istället för att en människa programmerar datorn, modifierar programmen sig själva genom dessa algoritmer. GA bland andra system är alltså en artificiell variant av evolution, där det som förändras är olika former av datastrukturer istället för naturliga organismer. De egenskaper man framförallt tagit fasta på när man skapat en artificiell variant av processen, är att evolution ger adaption, d.v.s att evolutionen ger varje art en lämplig "överlevnadsdesign" (t.ex. ett kamouflerande färgmönster hos en art som har nytta av att inte synas alltför väl), att evolution verkar på en population, inom vilken det alltid finns en viss variation av egenskaper, och att evolution uppstår genom samverkan mellan ett fåtal "enkla" processer : Reproduktion, innebär att arvsanlag förs vidare från föräldrar till avkomma. De egenskaper en viss individ har utgör till stor del en kombination av de egenskaper dess föräldrar besitter. Genetisk variation: Inom en population av individer finns en viss egenskapsvariation, det uppstår dessutom alltid ett visst antal mutationer, dvs. slumpmässiga förändringar i den överförda arvsmassan vid reproduktion som helt enkelt beror på fel vid kopieringen av DNA:t. Konkurrens & urval : Det finns begränsade resurser i ett ekosystem, vilket medför att organismerna måste konkurrera sinsemellan för att överleva. Generellt sett får de individer som är bäst anpassade till sin omgivning den största mängden avkomma, de sägs ha högst fitness. Det är här Darwins tes om att de bäst anpassade individerna är de som överlever. I Genetiska Algoritmer används dessa principer för att evolvera lösningar på olika problem. Tanken är att om upprepandet av enkla processer på en population av organismer kan leda till adaption, så borde upprepandet av artificiella motsvarigheter till dessa processer på en population av, t.ex. datorprogram kunna leda till evolution av väl adapterade program. 2

6 Biologiska begrepp Alla celler innehåller en uppsättning kromosomer. Varje kromosom är en lång tråd DNA, en DNA-molekyl på vilken ett antal gener sitter. Varje gen är i sin tur en sekvens av baspar (par av nukleotider) som representerar ett protein. De exakta kombinationerna av gener som finns i arvsmassan avgör vilka protein cellerna kan framställa, vilket bestämmer cellernas egenskaper. En gen är samma sak som arvsanlag, man kan säga att varje gen kodar en viss egenskap, som t.ex. ögonfärg. Bildreferens se källförteckning De beteckningar som används för genetiska algoritmer, är desamma som används inom genetiken, de kan dock ha annorlunda betydelser. I naturen är det skillnad på genotyp som är själva genuppsättningen, och fenotyp som är resultatet av samverkan mellan genotypen och miljön. Genotypen motsvaras i GA av lösningen i kodad form, varpå populationen med de kodade lösningarna kallas genotyp-population. Varje genotyp (kodad lösning) kan översättas till motsvarande lösning i avkodad'' form, då den kallas för en fenotyp, vars populationen därmed kallas fenotyp-population. Vanligtvis skiljer man dock ej på genotypen och fenotypen inom genetiska algoritmer. Genomet är hela genuppsättningen och Locus är själva positionen i strängen. Kodning av kromosomer Även i genetiska algoritmer kodas alltså information i "kromosomer", och istället för naturliga organismer är det datastrukturer som förändras utifrån de spelregler som styr den biologiska evolutionen. Kromosomer är strängar av gener, och en gen består i enkla genetiska algoritmer av ett tecken. De enkla varianterna är vidare haploida, d.v.s. de har inte parvis ordnade kromosomer som t.ex. människan, utan endast ensamma strängar. Exempel på strukturer är binära strängar, finita tillståndsautomater eller datorprogram. En kromosom, d.v.s. en individ, ska på något sätt innehålla information för en lösning som den ska representera. 3

7 Binära strängar Det vanligaste kodningssättet är binära strängar, på grund av sin relativt enkla representarion. Strängen består alltså av 1:or och 0:or, där varje bit kan representera en egenskap (en gen) hos lösningen. Två individer kan därmed se ut som nedan. Individ Individ Permutation I permutationskodning, består varje kromosom av en sträng med tal som representerar en position i en sekvens. Kodningen används i planeringsproblem som t.ex. Travelling Salesman Problem. Individ Individ Det finns dock många sätt att koda, vad som är lämpligast beror i huvudsak på hur problemet ser ut. Övriga metoder är t.ex. värde-kodning, där varje kromosom är en sekvens av värden. Värden kan vara reella tal, bokstäver eller något objekt. Även trädstrukturer kan användas som kodning, då varje kromosom är ett träd av ett antal objekt, som t.ex. funktioner eller kommandon i ett programspråk. Träd-struktur-kodning används inom genetisk programmering, för att evolvera program eller andra strukturer. Sökrymden Vid problemlösning, letar man oftast efter den bästa lösningen. Varje punkt i sökrymden representerar en möjlig lösning. Att leta efter en lösning är ofta samma sak som att leta efter extrema värden av en funktion definierad över sökrymden, d.v.s. minimum eller maximum. Vanligtvis är endast ett fåtal punkter kända i sökrymden, men i processen för GA, genereras hela tiden nya möjliga lösningar. Den grundläggande genetiska algoritmen Algoritmen startar med en population av kromosomer (genotyper) som initialt har slumpats fram. Dessa kromosomer representerar ett antal lösningar, som sedan utvärderas med hjälp av en utvärderingsfunktion genom att gå igenom varje individ efter lämplighet som lösning på det aktuella problemet. De individer som är bäst lämpade, d.v.s. som har fått högst lämplighetsvärde, kombineras för att skapa nya individer vilka sedan muteras för att generera en ny population. När den nya populationen är komplett ersätts den gamla. Nya generationer genereras på detta sätt tills det att en individ, d.v.s. en lösning uppfyller ett kriterium, eller till dess att körningen avbryts. Nedan följer algoritmen, varefter stegen i sig förklaras ytterligare. 4

8 1. [Start] Generera en slumpmässig population med n kromosomer. (Lämlpliga lösningar för problemet) 2. [Fitness] Evaluera lämpligheten för varje kromosom i populationen. 3. [New population] Skapa en ny population genom att upprepa följande steg till dess att populationen är komplett. 1. [Selection] Selektera två förälderkromosomer från populationen enligt dess lämplighet. 2. [Crossover] Korsa förälderkromosomerna med en viss sannolikhet för att skapa ny avkomma (barn). Om ingen crossover genomförs kommer avkomman att bli en exakt kopia av föräldrarna 3. [Mutation] Mutera avkomman med en viss sannolikhet på varje locus, d.v.s. position i kromosomen. 4. [Accepting] Placera den nya avkomman i den nya populationen 4. [Replace] Använd den nya genererade populationen för en ny körning av algoritmen. 5. [Test] Om slutvillkoret är uppfyllt, stop, och returnera den bästa lösningen I den aktuella populationen. 6. [Loop] Gå till steg 2 Operatorer i GA För att kunna skapa nya bättre generationer krävs operatorer för reproduktion, motsvarande den sexuella förökningen i den biologiska världen, samt för den genetiska variationen. De två vanligaste operatorerna för GA är crossover och mutation, och de är även de två viktigaste principerna. Utan crossover kommer nya populationen bara att bli så bra som den bästa individen, medan mutation i sin tur genom sin slumpmässiga förändring av avkomman kan skapa bättre förutsättningar för individen, vilket även genom ökningen av den genetiska spridningen av populationen, ökar chansen att hitta den globala extrempunkten. Algoritmens prestation beror alltså till stor del på hur dessa operatorer är utförda, och vilka operatorer som lämpar sig bäst beror på hur problemet ser ut. Hur Crossover Förökningen görs genom att två individer byter alla gener efter en viss slumpvis utvald position i individen, s.k. överkorsning (crossover). Crossover skiljer sig beroende på kodningsstrukturen (binär-, permutation-, värde-, eller trädkodning). De exempel som visas nedan grundar sig på binär kodning. I det algoritmexempel som följer efter stegbeskrivningen, beskrivs även crossover vid permuationskodning. 5

9 Enpunkt crossover Vid enpunktscrossover väljs en punkt i strängen slumpmässigt ut. Därefter får avkomman ärva den första delen fram till punkten av den första föräldern, medan den andra delen tas från den andra föräldern. En sådan överkorsning vid punkt fyra skulle då ge följande avkomma. Föräldrar Avkomma Individ /1010 Æ 1010/0000 Individ /0000 Æ 1111/1010 Tvåpunkts crossover Tvåpunkts-överkorsning bygger på samma princip, där avkomma 1, får första delen av strängen från förälder1, andra delen från förälder 2 och den sista delen från förälder 1, och vice versa för avkomma 2. Nedan visas en överkorsning vi punkterna två och fyra. Föräldrar Avkomma Individ 1 10/10/1010 Æ 10/11/0000 Individ 2 11/11/0000 Æ 11/10/1010 Övriga metoder Bland övriga metoder för överkorsning finns Uniform crossover, där bitar slumpvis kopieras från den första eller den andra föräldern, eller Aritmetisk crossover, där aritmetiska operationer genomförs för att skapa avkomma. Mutation Efter att överkorsningen är genomförd sker mutation på avkomman. Varje lokation (locus) är utsatt för en slumpmässig mutation med en liten oberoende sannolikhet, oftast i storleksordningen 1 promille. Om det blir en mutation förändrar man den delen hos individen. För en binär sträng skulle det kunna se som följer då mutation sker på punkt två Æ Helt enkelt att en 0:a byts ut mot en 1:a. Genom att använda mutation ökar sannolikheten för att hitta den globala maxpunkten, eftersom detta innebär att den genetiska spridningen i populationen ökar. Dock ska man undvika att mutera för ofta, då detta kan leda till att algoritmen aldrig hittar något stabilt maxvärde eftersom de hela tiden måste kompensera för mutationerna som ju oftast gör individerna sämre varför den låga sannolikheten på 1 promille är vanlig. 6

10 Selektion För att kunna representera den konkurrens och det urval som sker enligt Darwins tes att de bäst anpassade individerna är de som överlever, krävs en utvärderingsfunktion på vilken urvalet kan grundas. Selektionen innebär att individer väljs ut ur populationen för förökning, och principen för detta urval kan variera. Två av de vanligare metoderna är roulette-hjul-selektion och rangordnings-selektion. För att kunna genomföra utvärderingen avkodas först varje genotyp i generation n, och genererar motsvarande fenotyp. Fenotypen/genotypen tilldelas sedan sitt lämplighetsvärde, och ju mer anpassad individen är efter satt kriterium, desto större är chansen att den väljs ut för förökning. Roulette-hjul-selektion I proportionell selektion, eller roulettehjulsselektion som det ibland kallas, är sannolikheten att en individ ska få para sig direkt proportionell mot hur bra individen är. Först beräknas summan av alla individers lämpligheten, för att sedan slumpa fram ett värde fram mellan 0 och denna siffra. Man går sedan igenom individ för individ och summerar deras lämplighet, och när summan är lika med det framslumade värdet, returneras den individ man kommit till. Varje individ kan följaktligen ses som en tårtbit på ett roulettehjul, och när kulan snurrar i hjulet, är chansen störst att den stannar vid de individer med störst lämplighet, eftersom ju högre lämplighet individen har, desto större är dess område. Denna metod har dock problem när skillnaden är stor mellan lämplighetsvärdena. Om t.ex. den bästa individen har ett lämlighetsvärde motsvarande 90% av summan av alla värden, innebär detta att övriga individer har väldigt liten chans att väljas. Rangordnings-selektion För att komma ifrån svagheterna med den proportionella selektionen, kan istället rangordnings-selektion användas. Denna metod innebär att man först rangordnar populationen varefter varje individ tilldelas sitt lämplighetsvärde. Den sämsta individen kommer att få värdet 1, den näst sämsta 2 o.s.v. och den bästa individen kommer att få lämplighetsvärdet n, (antalet individer i populationen). På detta sätt kommer alla individer att ha en chans att väljas, då skillnaden mellan dess värden blir avsevärt mindre. Elitism När en ny population genereras genom överkorsning och mutation, finns det ingen garanti för att den bästa individen kommer att leva vidare. Detta innebär risken att den nya populationen kan bli sämre än den gamla. För att förhindra detta använder man sig av elitism, vilket är en metod som innebär att man kopierar den bästa individen (eller några av de bästa individerna). På så sätt förbättrar man algoritmens prestation avsevärt eftersom man behåller de bästa lösningarna. 7

11 Exempel på genetisk algoritm - TSP Handelsresandeproblemet Det finns städer och givna avstånd mellan dem, men försäljaren vill inte resa mer än nödvändigt. Uppgiften är att hitta en sekvens av städer med minimal resväg. Eftersom antalet möjliga resvägar för N städer skulle innebära N! beräkningar, skulle antalet möjliga resvägar för 30 städer innebära 30! d.v.s *10 32 adderingar (summan av delsträckorna för varje resväg). Anta att man gör en miljard summeringar per sekund, då skulle det ta 8,000,000,000,000,000 år att hitta lösningen. Genom att endast addera ytterligare stad, skulle antalet adderingar öka genom en faktor av 31, vilket uppenbarligen blir omöjligt att lösa. En genetisk algoritm kan användas för att hitta lösningen på mycket kortare tid. Även om den troligtvis inte hittar den bästa lösningen, kan den hitta en lösning nära den optimala på mindre än en minut, med rätt utformning. I detta problem används Permutations-kodning p.g.a. ordningsstrukturen. Varje tal representerar en stad, och kromosomerna beskriver ordningen för städerna i vilken försäljaren ska besöka dem. Exemplet illustreras i liten skala med enklast möjliga operatorer för att ge överblick. 1. Kodning Individ Individ Enpunkts crossover vid punkt 2 Den första individen kopieras fram till den slumpmässigt valda punkten. Men eftersom strängen ej är binär, innebär det risk för kopiering av likadana tal om crossover sker på tidigare illustrerat sätt. Detta kan man lösa genom att den andra individen scannas av, och om talet ännu ej finns hos avkomman, adderas det. Föräldrar Avkomma Individ 1 1 2/ /3 5 4 Individ Samma sak sker alltså för att få fram den andra avkomman Föräldrar Avkomma Individ Individ 2 2 3/ /

12 3. Mutation Mutation kan sedan ske genom att två tal slumpmässigt väljs ut för att kastas om i sin position. Avkomma Æ Muterad avkomma Denna individ motsvarar alltså följande resväg: Vi söker nu en minimal väg i en komplett graf, d.v.s. alla noder är kopplade till varandra, med n antal noder. 1. En population men n antal individer som representerar olika resvägar mellan städerna slumpas fram. 2. Lämplighetsfunktionen går igenom alla individerna för att ge dem ett värde. Denna funktion är i handelsresandens problem relativt enkel, det är helt enkelt den totala geometriska resvägen. Således betyder ett lågt lämplighetsvärde att en individ är bra. 3. En ny population skapas genom att selektera de bästa individerna. I detta fallet är sannolikheten omvänt proportionell mot lämplighetsvärdet-värdet. Genomför crossover samt mutation, för att sedan lägga till individen till den nya populationen. Detta görs tills det att den nya populationen innehåller n individer. 4. Evaluera den nya populationen genom att gå till steg 2. Loopen körs alltså tills ett satt kriterium är nått (t.ex. ett visst antal genererade populationer, eller viss förbättring av den bästa lösningen). 9

13 Jämförelse med andra sökalgoritmer Svårigheten med sökning när det gäller problem med en hög förgreningsfaktor är alltså att det tar lång tid för beräkningarna. Det finns dock likheter mellan GA och informerad sökning, heurestiken i sökningen motsvaras av lämplighetsfunktionen i GA, det är på denna punkt som det avgörs hur programmet ska fortsätta. I sökning är det den nod med lägst kostnad som ska expanderas, medan lämplighetsfunktionen i GA avgör hur hur stor sannolikhet en individ har att överleva till nästa generation. GA innehåller alltså ett slumpmoment som inte finns i sökning. Enligt David Coley (1999) är det alltid möjligt att med hjälp av tillräcklig information om sökrymden, och med rätt heurestik skapa en specifik sökmetod som fungerar bättre än genetiska algoritmer. Men det ligger mycket arbete bakom en sådan process, det måste för varje nytt problem definieras operatorer, start- och måltillstånd, samt heurestik som kan vara svår att komma fram till. Här skiljer sig Genetiska Algoritmer avsevärt på så sätt att den grundläggande algoritmen ser likadan ut för en mängd problem, det enda som skiljer är utvärderingsfunktionen, vilket gör att den är lätt att implementera. Tillämpningsområden Design av energieffektiva byggnader Under designprocessen, ligger det ett oerhört stort värde i att reducera energiåtgången för en byggnad. En viss reducering av energiförbrukningen kan uppnås med relativt enkla individuella mätningar, men när det gäller högre nivåer av effektivitet, krävs samanhängande applikationer av mätningar som tillsammans optimerar effektiviteten av det kompletta byggnadssystemet. Detta gör designen till ett optimaliseringsproblem med flera komponenter, vilket arkitekten kan känna sig dåligt utrustad för, varför detta blir ett allvarligt hinder i avanceringen av högeffektiva designer. Traditionellt utgår arkitekten i designen av en byggnad från estetiken, genom att först rita ett hus för att i efterhand beräkna energieffektiviteten. Om energiåtgången är för hög justeras arkitekturer för att att få ett bättre värde. Detta leder till mycket efterarbete då många justeringar omberäkningar kan krävas för att uppnå ett resultat till belåtenhet. Risken är även stor att designen med denna metod resulterar i stora energiförluster, som att byggnaden till exempel drar mer ström än nödvändigt för att värmas upp. Genom att applicera genetiska algoritmer på detta problem, kan man istället genom evolution låta datorn hitta den design som är mest effektiv ur energisynpunkt. Problemet med detta är dock att designen av en optimalt energieffektiv byggnad sällan går ihop med den estetiska designen. De flesta traditionella optimaliseringstekniker som skulle kunna appliceras på problemet, är begränsade på så sätt att endast ett resultat uppnås, och på grund av svårigheten att ta hänsyn till faktorer som estetik i optimaliseringsprocessen, blir resultatet i dessa fall oftast oacceptabelt. Traditionella metoder har även svårigheter att navigera genom sökrymder med lokala extremer, vilket det är troligt att finnas många av i 10

14 ett sådant problem. Genom att använda GA på problemet kan man istället ta fram ett antal byggnader som ligger nära den optimala lösningen. Givet det antal individuella attribut som kombineras för att skapa en byggnad, ger detta otroligt många möjliga designer. I sitt arbete kring detta, beskriver Coley (2002) ett förslag av en kombination av en modell för byggnadens värmekarakteristik och en genetisk algoritm för att utforska byggnadsrymden. Med hjälp av energisimulatorn Excalibur har energiförutsägningar gjorts för individuella byggnader över ett helt år. Dels för att se hur de klarar sig i olika väder, men även för att ta hänsyn till solstyrkan från olika riktningar. Modellen bygger på att ett större mängd parametrar klumpas ihop, och i detta fall bildar fem stycken helt okända och sinsemellan olinjära variabler. Denna förenkling av varialber sammanfattas till en okänd generell parameter. GA skall sedan komma fram med förslag baserat på dessa deskriptiva parametrar. Fördelen med denna förenklade modell är snabbheten som medger att många simuleringar av konstruktioner kan prövas med relativt enkel maskinvara. Dessa variabler räknas ut från husets konstruktion, och innefattar information om hur bra huset lagrar värme samt hur snabbt det förlorar värme. För att huset ska bli så energieffektivt som möjligt, vill man hitta en balans mellan att absorbera solvärme snabbt och samtidigt inte förlora den absorberade värmen så fort. Naturligtvis måste man när man skapar eller manipulerar individerna ta hänsyn till vilka dimensioner avde olika delarna som finns på marknaden. Eftersom man vill få fram flera designer är det viktigt att behålla en genetisk spridning i populationen, d.v.s. man vill utöver den globala maxpunkten även hitta de olika lokala maxpunkterna. För att lösa detta använder man dels selektion och mutation. Men för att förstärka dessa metoder och ytterligare minska konvergering och öka sannolikheten för att även få med lokala maxpunkter i sökrymden, kan man även t.ex. förbjuda två individer i en populaiton att vara identiska. Programmet för att utveckla designen för dessa byggnader består av följande delar: 1. Skapa en initial slumpad population med N individer, där varje individ motsvarar en design. 2. Räkna ut de fem variablerna för varje individ 3. Räkna ut den årliga energiförbrukningen för varje design i populationen. 4. Använd GA för att skapa nya designer genom selektion, rekombination och mutation 5. Upprepa punkt 2 till 5 tills ett slutkriterium är nått. 6. Filtrera från de bästa individera ut de byggnader som stämmer överens med en estetiskt tilltalande design. Med hjälp av genetiska algoritmer erbjuds arkitekten ett urval av optimerade, kompletta byggnadspaket, från vilka ett urval kan göras. 11

15 Övriga tillämpningsområden I nuläget finns en mängd användningsområden för genetiska algoritmer, från bild processering inom medicin till modellering av rörnätverk. Intresset växer också inom byggnadsbranchen (Coley, 2002). Här följer ett urval av de användningsområden som finns i dag. Ickelinjära dynamiska system förutsägningar, data analyser Robotik Utveckling av LISP-program (genetisk programmering) Design av neurala nätverk, både vad gäller arkitektur och vikter Strategi-planering Sekvens-schema-läggning Bildbehandling Biokemi (modell bl.a. immunsystem, ekosystem och evolutionen) Beräkning av banor för rymdfarkoster m.m. 12

16 Diskussion Det faktum att genetiska algoritmer bygger på evolutionsprincipen är en oerhört spännande tanke i sig. Att männsikan med hjälp av samma principer som hon själv har kommit till på, kan lösa problem i sin omgivning. Och att man i sin tur genom att endast sätta begränsningarna, kan låta datorn utveckla lösningarna är verkligt lockande. Man möter också en stor optimism inom området vilken är svårt att säga om den beror på metodens verkliga prestationer, eller tilltron till den princip som metoden bygger på. Den stora fördelen med Genetiska Algorimter är dess parallellism. Genetiska algoritmer går igenom sökrymden med fler individer, detta gör att GA utsätts för en mindre risk än andra algoritmer att hamna fastna i en lokal extrem (max- eller minpunkt). Algoritmerna är även enkla att implementera, endast utvärderingsfunktionen behöver skrivas om för att lösa ett nytt problem. Dock kan svårigheten för vissa komplexa problem ligga just i att välja och implementera kodningen och utvärderings-funktionen. En annan nackdel med Genetiska Algoritmer kan vara dess beräkningstid. GA kan vara långsammare än andra metoder. Men med tanke på att beräkningen kan avslutas när så önskas, behöver den längre körningen inte vara ett stort problem. Men detta är även ett till synes resurskrävande problem som borde förbättras med snabbare datorer med mer minne. GA är självinducerande på så sätt att den själv skapar nya data för att hitta den bästa lösningen, varför den kan jämföras med induktiv inlärningsmetod. Trots att metoderna för algoritmerna är relativt enkla, har man lyckats lösa väldigt komplexa problem, och att det dessutom rör sig om så vitt skilda domäner som biokemi och byggnadsbranchen gör metoden mycket attraktiv. Mycket arbete kvarstår dock för att identifiera de förutsättningar under vilka gentiska algoritmer presterar bra, men sannolikheten för att metoden skall fortsätta att utvecklas upplevs dock som förhållandevis stor, efter att ha fått en inblick i området, och än så länge är optimismen inte motbevisad. 13

17 Källförteckning Litteratur Low-energy design: combining computer-based optimisation and human judgement, David A. Coley, Stefan Schukat, 2002 An Introduction to Genetic Algorithms for scientists and Engineers, David A. Coley, University of Exeter, World Scientific Publishing, 1999 Internet hitchhikers guide to genetic algorithms: Bildreferens

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

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

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

Genetiska algoritmer. Henrik Hansson (hhn00001@student.mdh.se) Rapport, CDT212 Mälardalens Högskola Genetiska algoritmer Henrik Hansson (hhn00001@student.mdh.se) Rapport, CDT212 Mälardalens Högskola 1 Sammanfattning Genetiska algoritmer har rötter i 60-talet och efterliknar evolutionsteorin på så sätt

Läs mer

Genetik en sammanfattning

Genetik en sammanfattning Genetik en sammanfattning Pär Leijonhufvud $\ BY: 3 februari 2015 C Innehåll Inledning 2 Klassisk genentik 2 Gregor Mendel munken som upptäckte ärftlighetens lagar....... 2 Korsningsrutor, ett sätt att

Läs mer

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

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

Genetisk variation är livsviktig för vitaliteten och ganska snabbt även en förutsättning för överlevnaden hos en art.

Genetisk variation är livsviktig för vitaliteten och ganska snabbt även en förutsättning för överlevnaden hos en art. Naturens behov av genetisk variation Genetisk variation är livsviktig för vitaliteten och ganska snabbt även en förutsättning för överlevnaden hos en art. Då vi benämner en art i naturen som utrotningshotad

Läs mer

Område: Ekologi. Innehåll: Examinationsform: Livets mångfald (sid. 14-31) I atomernas värld (sid.32-45) Ekologi (sid. 46-77)

Område: Ekologi. Innehåll: Examinationsform: Livets mångfald (sid. 14-31) I atomernas värld (sid.32-45) Ekologi (sid. 46-77) Område: Ekologi Innehåll: Livets mångfald (sid. 14-31) I atomernas värld (sid.32-45) Ekologi (sid. 46-77) Undervisningen i kursen ska behandla följande centrala innehåll: Frågor om hållbar utveckling:

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

Heterogen miljö en omgivning som varierar i tid eller rum - kan bidra till att mellanartskonkurrensen inte hinner få full effekt.

Heterogen miljö en omgivning som varierar i tid eller rum - kan bidra till att mellanartskonkurrensen inte hinner få full effekt. SAMHÄLLSEKOLOGI: SAMEVOLUTION, MELLANARTSKONKURRENS & MUTUALISM Organismer har inte bara anpassats till olika abiotiska miljöfaktorer, utan har också utvecklats med och gentemot biotiska faktorer i form

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

Tensta Gymnasium Per Anderhag 2005 Biologi A Naturligt urval Selektionstryck på Björkmätare 1

Tensta Gymnasium Per Anderhag 2005 Biologi A Naturligt urval Selektionstryck på Björkmätare 1 Naturligt urval Selektionstryck på Björkmätare 1 Laborationen bygger på den evolution som skett på nattfjärilen björkmätare (Biston betularia) i England. Fjärilen sitter på trädstammar och finns i två

Läs mer

Föreläsning 3.1: Datastrukturer, en översikt

Föreläsning 3.1: Datastrukturer, en översikt Föreläsning.: Datastrukturer, en översikt Hittills har vi i kursen lagt mycket fokus på algoritmiskt tänkande. Vi har inte egentligen ägna så mycket uppmärksamhet åt det andra som datorprogram också består,

Läs mer

Information om SKK:s index för HD och ED

Information om SKK:s index för HD och ED Information om SKK:s index för HD och ED Text: Sofia Malm Höft- och armbågsledsdysplasi (HD och ED) är vanligt förekommande i många, framförallt storvuxna, hundraser. Trots mångåriga hälsoprogram orsakar

Läs mer

Genetisk testning av medicinska skäl

Genetisk testning av medicinska skäl Genetisk testning av medicinska skäl NÄR KAN DET VARA AKTUELLT MED GENETISK TESTNING? PROFESSIONELL GENETISK RÅDGIVNING VAD LETAR MAN EFTER VID GENETISK TESTNING? DITT BESLUT Genetisk testning av medicinska

Läs mer

Nymfkakaduans färgvariationer och mutationer

Nymfkakaduans färgvariationer och mutationer Nymfkakaduans färgvariationer och mutationer Fjädrarnas pigment skapar fåglarnas färger genom att reflektera eller absorbera ljus. Papegojfåglar är kända för att ha många vackra färger, men kakaduorna

Läs mer

Simulering av evolutionär anpassing En studie om hur arters anpassningsförmåga varierar med mutationsfrekvens.

Simulering av evolutionär anpassing En studie om hur arters anpassningsförmåga varierar med mutationsfrekvens. Simulering av evolutionär anpassing En studie om hur arters anpassningsförmåga varierar med mutationsfrekvens. Christian Lie NV3C Polhemsgymnasiet Göteborg 1 Innehållsförteckning: Sammanfattning Inledning

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

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

Crafoordpriset i biovetenskaper 2015

Crafoordpriset i biovetenskaper 2015 RAFOORDPRISE I BIOVEENSKAPER 2015 POPULÄRVEENSKAPLI INFORMAION rafoordpriset i biovetenskaper 2015 rafoordpriset i biovetenskaper 2015 går till genetikerna Richard Lewontin, USA, och omoko Ohta, Japan,

Läs mer

Provmoment: Ladokkod: Tentamen ges för: tentamen TX091X TNBAS12. Namn: (Ifylles av student) Personnummer: (Ifylles av student)

Provmoment: Ladokkod: Tentamen ges för: tentamen TX091X TNBAS12. Namn: (Ifylles av student) Personnummer: (Ifylles av student) Biologi A basår Provmoment: Ladokkod: Tentamen ges för: tentamen TX091X TNBAS12 7,5 högskolepoäng Namn: (Ifylles av student) Personnummer: (Ifylles av student) Tentamensdatum: on 24 oktober 2012 Tid: 9.00-13.00

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

Objektorienterad programmering

Objektorienterad programmering Objektorienterad programmering Emil Ahlqvist (c10eat@cs.umu.se) Didrik Püschel (dv11dpl@cs.umu.se) Johan Hammarström (c08jhm@cs.umu.se) Hannes Frimmel Moström (c10hml@cs.umu.se) 1 1. Introduktion 1.1 Objektorienterad

Läs mer

Information om index för HD och ED

Information om index för HD och ED www.skk.se/uppfödning 1 januari 2013 Information om index för HD och ED Höft- och armbågsledsdysplasi (HD och ED) är vanligt förekommande hos många hundraser. För ett effektivare avelsarbete för bättre

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

Föreläsning 6: Introduktion av listor

Föreläsning 6: Introduktion av listor Föreläsning 6: Introduktion av listor Med hjälp av pekare kan man bygga upp datastrukturer på olika sätt. Bland annat kan man bygga upp listor bestående av någon typ av data. Begreppet lista bör förklaras.

Läs mer

Arv + miljö = diabetes?

Arv + miljö = diabetes? Arv + miljö = diabetes? Kristina Lejon universitetslektor, immunologi, Institutionen för klinisk mikrobiologi Vad är det som gör att vi får diabetes? Anna Möllsten var nyss inne på den frågan och visade

Läs mer

Föreläsning 4: Kombinatorisk sökning

Föreläsning 4: Kombinatorisk sökning DD2458, Problemlösning och programmering under press Föreläsning 4: Kombinatorisk sökning Datum: 2009-09-25 Skribent(er): Kristina Nylander, Dennis Ekblom, Marcus Öman Föreläsare: Fredrik Niemelä 1 Introduktion

Läs mer

LPP Nervsystemet, hormoner och genetik

LPP Nervsystemet, hormoner och genetik LPP Nervsystemet, hormoner och genetik Det är bara hormonerna och han är full av hormoner är två vanliga uttryck med ordet hormon, men vad är egentligen hormoner och hur påverkar de kroppen? Vi har ett

Läs mer

Utländska företag: Nej till euron ger lägre investeringar

Utländska företag: Nej till euron ger lägre investeringar Utländska företag: Nej till euron ger lägre investeringar Jonas Frycklund Juni, 23 TEMO-undersökning om utlandsägda företags syn på eurons effekter 1 Innehåll Sid Sammanfattning 2 Inledning 3 Konsekvenser

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

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

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

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

UPPGIFT 1 KANINER. Håkan Strömberg 1 Pär Söderhjelm

UPPGIFT 1 KANINER. Håkan Strömberg 1 Pär Söderhjelm UPPGIFT 1 KANINER Kaniner är bra på att föröka sig. I den här uppgiften tänker vi oss att det finns obegränsat med hannar och att inga kaniner dör. Vi ska försöka simulera hur många kaninhonor det finns

Läs mer

UMEÅ UNIVERSITET 26 april 2002 Instutionen för datavetenskap. Grafproblem. Laboration 4, Datastrukturer och Algoritmer VT02

UMEÅ UNIVERSITET 26 april 2002 Instutionen för datavetenskap. Grafproblem. Laboration 4, Datastrukturer och Algoritmer VT02 UMEÅ UNIVERSITET 26 april 2002 Instutionen för datavetenskap Grafproblem Laboration 4, Datastrukturer och Algoritmer VT02 Laboration 4 - grafproblem Förpackningsdatum: Denna lab-spec är senast ändrad:

Läs mer

Chapter 3: Using Classes and Objects

Chapter 3: Using Classes and Objects Chapter 3: Using Classes and Objects I dessa uppgifter kommer du att lära dig om hur man använder klasser och metoder från java biblioteket. Du kommer inte att förstå allt som händer bakom metod anrop

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

Tärna Folkhögskola 2010-06-03 IT-pedagogutbildningen Individuellt fördjupningsarbete Vt 2010 2010-06-03 IT I FÖRSKOLAN. Författare:Tove Andersson

Tärna Folkhögskola 2010-06-03 IT-pedagogutbildningen Individuellt fördjupningsarbete Vt 2010 2010-06-03 IT I FÖRSKOLAN. Författare:Tove Andersson Tärna Folkhögskola 2010-06-03 IT-pedagogutbildningen Individuellt fördjupningsarbete Vt 2010 2010-06-03 IT I FÖRSKOLAN Författare:Tove Andersson Innehåll Inledning:... 2 Syfte:... 2 Frågeställningar:...

Läs mer

Nödrop från Expedition C3: skicka fler tekniker!

Nödrop från Expedition C3: skicka fler tekniker! Nödrop från Expedition C3: skicka fler tekniker! Detta har hänt: Expeditionen lättade i maj 2008 efter noggranna förberedelser. Motstånd och faror lurade överallt, men vi litade på vårt trumfkort helautomatisk

Läs mer

Föreläsning 4: Giriga algoritmer. Giriga algoritmer

Föreläsning 4: Giriga algoritmer. Giriga algoritmer Föreläsning 4: Giriga algoritmer Giriga algoritmer Denna typ av algoritmer arbetar efter följande princip: Gör i varje situation det som är lokalt optimalt, d.v.s. bäst för stunden. Några exempel vi redan

Läs mer

Effektivare avel för jaktegenskaper hos engelsk setter

Effektivare avel för jaktegenskaper hos engelsk setter Effektivare avel för jaktegenskaper hos engelsk setter av Per Arvelius En hunduppfödare strävar efter att välja de avelsdjur som nedärver önsvärda egenskaper till valparna. Eftersom många egenskaper påverkas

Läs mer

Innehåll. Föreläsning 11. Organisation av Trie. Trie Ytterligare en variant av träd. Vi har tidigare sett: Informell specifikation

Innehåll. Föreläsning 11. Organisation av Trie. Trie Ytterligare en variant av träd. Vi har tidigare sett: Informell specifikation Innehåll Föreläsning 11 Trie Sökträd Trie och Sökträd 356 357 Trie Ytterligare en variant av träd. Vi har tidigare sett: Oordnat träd där barnen till en nod bildar en mängd Ordnat träd där barnen till

Läs mer

Programmering A C# VT 2010. Ett kompendie över Programmering A (50p) i c# Stefan Fredriksson 2010 02 08

Programmering A C# VT 2010. Ett kompendie över Programmering A (50p) i c# Stefan Fredriksson 2010 02 08 Programmering A C# VT 2010 Ett kompendie över Programmering A (50p) i c# Stefan Fredriksson 2010 02 08 Innehåll Hjälp och referenser... 3 Kap 1 Introduktion... 3 Steg för steg... 3 Kapitel 2 Variabler...

Läs mer

Naturorienterande ämnen

Naturorienterande ämnen OLOGI Naturorienterande ämnen 3.9 OLOGI 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

Läs mer

Genetik II. Jessica Abbott

Genetik II. Jessica Abbott Genetik II Jessica Abbott Nukleosid Sockergrupp + kvävebas Kvävebaser: Puriner (adenin, guanin) Pyrimidiner (cytosin, thymin i DNA, uracil i RNA) Basparning A=T G C Packning av DNA i eukaryot cellkärna

Läs mer

Problem: BOW Bowling. Regler för Bowling. swedish. BOI 2015, dag 1. Tillgängligt minne: 256 MB. 30.04.2015

Problem: BOW Bowling. Regler för Bowling. swedish. BOI 2015, dag 1. Tillgängligt minne: 256 MB. 30.04.2015 Problem: BOW Bowling swedish BOI 0, dag. Tillgängligt minne: 6 MB. 30.04.0 Byteasar tycker om både bowling och statistik. Han har skrivit ner resultatet från några tidigare bowlingspel. Tyvärr är några

Läs mer

Tentaupplägg denna gång

Tentaupplägg denna gång Några tips på vägen kanske kan vara bra. Tentaupplägg denna gång TIPS 1: Läs igenom ALLA uppgifterna och välj den du känner att det är den lättaste först. Det kan gärna ta 10-20 minuter. Försök skriva

Läs mer

TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER

TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER Matematiska institutionen Optimeringslära TENTAMEN TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER Datum: 28 maj 2014 Tid: 14.00-19.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering Anteckningar

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

GENETIK - Läran om arvet

GENETIK - Läran om arvet GENETIK - Läran om arvet Kroppens minsta levande enheter är cellerna I cellkärnorna finns vår arvsmassa - DNA (DNA - Deoxiribonukleinsyra) Proteiner Transportproteiner Strukturproteiner Enzymer Reglerande

Läs mer

Lära känna skrivbordet

Lära känna skrivbordet Är det första gången du använder Windows 7? Den här versionen har mycket gemensamt med tidigare versioner av Windows, men du kan behöva hjälp med att få upp farten. Den här guiden innehåller praktisk information

Läs mer

Objektorienterad Programkonstruktion, DD1346 FACIT. Tentamen 20150613, kl. 9.00-12.00

Objektorienterad Programkonstruktion, DD1346 FACIT. Tentamen 20150613, kl. 9.00-12.00 Skolan för datavetenskap och kommunikation Objektorienterad Programkonstruktion, DD1346 FACIT Tentamen 20150613, kl. 9.00-12.00 Tillåtna hjälpmedel: Papper, penna och radergummi. Notera: Frågorna i del

Läs mer

Träd. Sats. Grafer. Definition. En fullständig graf har en båge mellan varje par av noder. Definition

Träd. Sats. Grafer. Definition. En fullständig graf har en båge mellan varje par av noder. Definition Grafdefinitioner Träd N = {i}: noder (hörn) = {(i, )}, i N, N: bågar (kanter) Graf: G = (N, ) efinitioner Väg: Sekvens av angränsande bågar. ykel: Väg som startar och slutar i samma nod. En enkel väg innehåller

Läs mer

Tänk i mindre banor och förbättra byggandet, miljön och klimatet.

Tänk i mindre banor och förbättra byggandet, miljön och klimatet. Tänk i mindre banor och förbättra byggandet, miljön och klimatet. Think Less. Vi förenklar byggandet Hur kan det löna sig att tänka i mindre banor? För att mindre är mer. Speciellt när du använder Lindabs

Läs mer

SBR SV / Lotta Fabricius Kristiansen Drottningodling för nybörjare

SBR SV / Lotta Fabricius Kristiansen Drottningodling för nybörjare Drottningodling för nybörjare Introduktion till drottningodling -kursöversikt Biologin bakom drottningodlingen Förädling och avel Utrustning Metoder till husbehov och yrkesmässigt Parning och drönarsamhällen

Läs mer

Tidiga erfarenheter av arvets mysterier

Tidiga erfarenheter av arvets mysterier Cellens genetik Cellen Växtcellen Växtcellen Tidiga erfarenheter av arvets mysterier Artförädling genom riktad avel Religiösa förbud mot syskongiftemål Redan de gamla grekerna.. Aristoteles ~350 år före

Läs mer

Fortsättningskurs i programmering F 2. Algoritmer i Programutveckling Hugo Quisbert 20130122. Problemexempel 1

Fortsättningskurs i programmering F 2. Algoritmer i Programutveckling Hugo Quisbert 20130122. Problemexempel 1 Fortsättningskurs i programmering F 2 Algoritmer i Programutveckling Hugo Quisbert 20130122 1 Exempel 1 Problemexempel 1 En souvenirbutik behöver ett datorprogram som omvandlar ett pris i svenska kronor

Läs mer

Sammanställning över enkätsvar från föräldrar till förskolebarn i Nynäshamns kommun, 2016.

Sammanställning över enkätsvar från föräldrar till förskolebarn i Nynäshamns kommun, 2016. 2016-05-22 Sammanställning över enkätsvar från föräldrar till förskolebarn i Nynäshamns kommun, 2016. Enkäten avser Språksatsningens bokpåsar. 101 föräldrar har svarat på enkäten. 1. Har du och ditt barn

Läs mer

Biologi Kunskapens användning

Biologi Kunskapens användning Delmål Delmål 2010-06-14 Biologi Kunskapens användning utvecklar omsorg om naturen och ansvar vid dess nyttjande. utvecklar förmågan att diskutera frågor om hälsa och samlevnad utifrån relevant biologisk

Läs mer

HD-index. ett nytt verktyg i avelsarbetet för bättre ledhälsa. Text: Sofia Malm, Foto: Åsa Lindholm

HD-index. ett nytt verktyg i avelsarbetet för bättre ledhälsa. Text: Sofia Malm, Foto: Åsa Lindholm HD-index ett nytt verktyg i avelsarbetet för bättre ledhälsa Text: Sofia Malm, Foto: Åsa Lindholm HD, eller höftledsdysplasi som förkortningen står för, är ett alltför vanligt problem i många storvuxna

Läs mer

Tentamen'i'TMA321'Matematisk'Statistik,'Chalmers'Tekniska'Högskola.''

Tentamen'i'TMA321'Matematisk'Statistik,'Chalmers'Tekniska'Högskola.'' Tentamen'i'TMA321'Matematisk'Statistik,'Chalmers'Tekniska'Högskola.'' Hjälpmedel:'Valfri'räknare,'egenhändigt'handskriven'formelsamling'(4''A4Esidor'på'2'blad)' och'till'skrivningen'medhörande'tabeller.''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

Läs mer

Tentamen: Programutveckling ht 2015

Tentamen: Programutveckling ht 2015 Tentamen: Programutveckling ht 2015 Datum: 2015-11-04 Tid: 09:00-13:00 Sal: Ansvarig: Resultat: Hjälpmedel: Maxpoäng: Betygsgränser: Anslås inom 3 veckor. Inga 40 p 20 p för G, 32 p för VG. Iakttag följande:

Läs mer

Nordline. Monteringsanvisning Garageport. Lertagsgatan 7 69434 Hallsberg 019-125580

Nordline. Monteringsanvisning Garageport. Lertagsgatan 7 69434 Hallsberg 019-125580 Nordline Monteringsanvisning Garageport Lertagsgatan 7 69434 Hallsberg 019-125580 Byggmå& på din port A: ÖppningsmåC skall vara samma som angiven portbredd. Portbladen är några cm bredare. B: ÖppningsmåC

Läs mer

Exempeluppgift i Logikstyrning. 1 Inledning. 2 Insignaler och utsignaler

Exempeluppgift i Logikstyrning. 1 Inledning. 2 Insignaler och utsignaler Exempeluppgift i Logikstyrning Inledning Idén med detta papper är att ge en allmän beskrivning av labbutrustningen och tips för hur man kan lösa olika praktiska problem i samband med laborationen. Läs

Läs mer

Praktisk användning av Parasol & LCC-kalkyl

Praktisk användning av Parasol & LCC-kalkyl Praktisk användning av Parasol & LCC-kalkyl Påvisande av ekonomiska & miljömässiga vinster vid solskyddsinvestering (Arbetet är en del i kursen Diplomerad Solskyddstekniker) Christian Westberg & Jim Eriksson

Läs mer

FAQ om LED. Nedan följer lite frågor och svar om LED: Vad är fördelarna med LED jämfört med andra ljuskällor? Svar:

FAQ om LED. Nedan följer lite frågor och svar om LED: Vad är fördelarna med LED jämfört med andra ljuskällor? Svar: FAQ om LED Den nya moderna ljuskällan LED, är en energieffektiv och långlivad ljuskälla. Den utvecklas ständigt och förväntningarna på den är stora och ryktena många. Det som är intressant med LED, är

Läs mer

Studieresa till James B. Hunt Jr. Library, North Carolina State University

Studieresa till James B. Hunt Jr. Library, North Carolina State University Studieresa till James B. Hunt Jr. Library, North Carolina State University Madelene Hartwig Högskolebiblioteket i Jönköping 1 Bakgrund I somras hamnade jag av en slump på en sida på nätet som listade de

Läs mer

Det första steget blir att titta i Svensk MeSH för att se om vi kan hitta några bra engelska termer att ha med oss på sökresan.

Det första steget blir att titta i Svensk MeSH för att se om vi kan hitta några bra engelska termer att ha med oss på sökresan. Sökexempel - Hälsovägledare Hälsovägledning med inriktning mot olika folkhälsoproblem som t ex rökning, tips på hur man går tillväga för att göra en datasökning och hur man även kontrollerar om artiklarna

Läs mer

Grafer. 1 Grafer. Grunder i matematik och logik (2015) 1.1 Oriktade grafer. Marco Kuhlmann

Grafer. 1 Grafer. Grunder i matematik och logik (2015) 1.1 Oriktade grafer. Marco Kuhlmann Marco Kuhlmann 1 En graf är en struktur av prickar förbundna med streck. Ett tidsenligt exempel på en sådan struktur är ett social nätverk, där prickarna motsvarar personer och en streck mellan två prickar

Läs mer

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

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 8 Jonas Lindgren, Institutionen för Datavetenskap, LiU TDDC30 Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 8 Jonas Lindgren, Institutionen för Datavetenskap, LiU På denna föreläsning: Träd Traversering Insättning, borttagning

Läs mer

Arkitektoniskt historieberättande En undersökning av narrativets funktioner och verktyg

Arkitektoniskt historieberättande En undersökning av narrativets funktioner och verktyg Arkitektoniskt historieberättande En undersökning av narrativets funktioner och verktyg Förberedelse av examensarbete i arkitektur HT14 Mattias Hambraeus Victorson KTH-A 2014-05-15 Innehåll: 1. Sammanfattning

Läs mer

Evolution, del 3: Arter och artbildning. Jessica Abbott Forskare Evolutionär Ekologi

Evolution, del 3: Arter och artbildning. Jessica Abbott Forskare Evolutionär Ekologi Evolution, del 3: Arter och artbildning Jessica Abbott Forskare Evolutionär Ekologi Vad är en art? Linné: endast klassificering Darwin: finns arter på riktigt när en art kan ändras med tiden? Artbegrepp

Läs mer

Planeringsspelets mysterier, del 1

Planeringsspelets mysterier, del 1 Peter Lindberg Computer Programmer, Oops AB mailto:peter@oops.se http://oops.se/ 28 februari 2002 Planeringsspelets mysterier, del 1 Om jag ska spela ett sällskapsspel för första gången så vill jag att

Läs mer

Tillväxt och klimatmål - ett räkneexempel

Tillväxt och klimatmål - ett räkneexempel Tillväxt och klimatmål - ett räkneexempel 2012-02-07 Detta dokument är ett räkneexempel som har tagits fram som stöd i argumentationen för en motion till Naturskyddsföreningens riksstämma år 2012. Motionen

Läs mer

Våtflugefiske. Bottenstrukturen toppen för fisket

Våtflugefiske. Bottenstrukturen toppen för fisket Våtflugefiske Det traditionella våtflugefisket har under senare år alltmer kommit i skymundan. Torrflugefiske och nymffiske har brett ut sig i stället. Ibland kan dock våtflugan med sitt ofta mjuka hackel

Läs mer

Högskolebiblioteket vid Mälardalens högskola

Högskolebiblioteket vid Mälardalens högskola Högskolebiblioteket vid Mälardalens högskola Biblioteksenkät 2009 1 Innehåll Innehåll... 2 Inledning... 3 Metod... 3 Redovisningen... 3 Antal svar... 4 Förhållandet mellan orterna... 4 Användarkategorier...

Läs mer

Visionen om att lära eleverna engelska under mattelektionen hur fungerar den i verkligheten?

Visionen om att lära eleverna engelska under mattelektionen hur fungerar den i verkligheten? Visionen om att lära eleverna engelska under mattelektionen hur fungerar den i verkligheten? Liss Kerstin Sylvén, fil.dr i engelska I Sverige talar de flesta av oss svenska. Svenskan är ett litet språk.

Läs mer

Tentaupplägg denna gång

Tentaupplägg denna gång Några tips på vägen kanske kan vara bra. Tentaupplägg denna gång TIPS 1: Läs igenom ALLA uppgifterna och välj den du känner att det är den lättaste först. Det kan gärna ta 10-20 minuter. Försök skriva

Läs mer

SLALOMINGÅNGAR hur svårt kan det vara?

SLALOMINGÅNGAR hur svårt kan det vara? SLALOMINGÅNGAR hur svårt kan det vara? Av Marie Hansson Ju mer man börjar tänka på vad en slalomingång innebär, desto mer komplicerat blir det! Det är inte lite vi begär att hundarna ska lära sig och hålla

Läs mer

Lägre intresse att engagera sig i styrelsen i BRF

Lägre intresse att engagera sig i styrelsen i BRF Lägre intresse att engagera sig i styrelsen i BRF Fastighetsägarna Stockholms bostadsrättspanel, april 2011 Webbundersökningen är genomförd med Fastighetsägarna Stockholms bostadsrättspanel som består

Läs mer

Concept Selection Chaper 7

Concept Selection Chaper 7 Akademin för Innovation, Design och Teknik Concept Selection Chaper 7 KPP306 Produkt och processutveckling Grupp 2 Johannes Carlem Daniel Nordin Tommie Olsson 2012 02 28 Handledare: Rolf Lövgren Inledning

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

Antagning till högre utbildning höstterminen 2016

Antagning till högre utbildning höstterminen 2016 Avdelningen för analys, främjande och tillträdesfrågor Föredragande Torbjörn Lindquist Utredare 010-4700390 torbjorn.lindquist@uhr.se RAPPORT Datum 2016-04-22 Diarienummer Dnr 1.1.1-382-16 Postadress Box

Läs mer

52101 Utforska siffror

52101 Utforska siffror 52101 Utforska siffror Innehåll: 1 uppsättning brickor, numrerade från 1 till 24 1 uppsättning räknebrickor 1 uppsättning med 30 stora siffror plastdjur 4 blanka brickor en låda med lock kopieringsbara

Läs mer

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

ELEMENTÄR - SVÅRARE FÄRGGENETIK. Del 4 ELEMENTÄR - SVÅRARE FÄRGGENETIK Del 4 av Maria Grönkvist Hur fungerar ärftlighetslagarna när det är två genpar med i leken? Slumpens rutmönster utökas då till 16 rutor, dvs det finns 16 olika möjligheter

Läs mer

Instruktioner för dig som ska söka till Mattekollo 2016

Instruktioner för dig som ska söka till Mattekollo 2016 Instruktioner för dig som ska söka till Mattekollo 2016 Matematik är KUL men Mattekollo 2016 har tyvärr ett begränsat antal platser, nämligen 40 stycken. Det blir även ett roligare kollo om de som kommer

Läs mer

Del 11 Indexbevis. Strukturakademin. Strukturakademin. Strukturinvest Fondkommission

Del 11 Indexbevis. Strukturakademin. Strukturakademin. Strukturinvest Fondkommission Del 11 Indexbevis 1 Innehåll 1. Grundpositionerna 1.1 Köpt köpoption 1.2 Såld köpoption 1.3 Köpt säljoption 1.4 Såld säljoption 2. Konstruktion av indexbevis 3. Avkastningsanalys 4. Knock-in optioner 5.

Läs mer

http://www.leidenhed.se Senaste revideringen av kapitlet gjordes 2014-05-08, efter att ett fel upptäckts.

http://www.leidenhed.se Senaste revideringen av kapitlet gjordes 2014-05-08, efter att ett fel upptäckts. Dokumentet är från sajtsidan Matematik: som ingår i min sajt: http://www.leidenhed.se/matte.html http://www.leidenhed.se Minst och störst Senaste revideringen av kapitlet gjordes 2014-05-08, efter att

Läs mer

Inför nationella proven i Biologi

Inför nationella proven i Biologi Inför nationella proven i Biologi Natur och samhälle Hur människan påverkar naturen lokalt och globalt: t.ex. växthuseffekt, nedskräpning miljöfarliga ämnen, övergödning, försurning Under sommaren drabbas

Läs mer

Aldrig mer krångliga system

Aldrig mer krångliga system Whitepaper Aldrig mer krångliga system När du investerar i ett nytt system är det viktigt att ställa rätt krav på användbarhet. Bra användbarhet ökar produktiviteten och arbetsglädjen. Läs mer på www.visma.se/commerce

Läs mer

8-4 Ekvationer. Namn:..

8-4 Ekvationer. Namn:.. 8-4 Ekvationer. Namn:.. Inledning Kalle är 1,3 gånger så gammal som Pelle, och tillsammans är de 27,6 år. Hur gamla är Kalle och Pelle? Klarar du att lösa den uppgiften direkt? Inte så enkelt! Ofta resulterar

Läs mer

FIRST LEGO League. Stockholm 7-9 2012

FIRST LEGO League. Stockholm 7-9 2012 FIRST LEGO League Stockholm 7-9 2012 Presentasjon av laget Unicorns Vi kommer fra Djursholm Snittalderen på våre deltakere er 14 år Laget består av 4 jenter og 0 gutter. Vi representerer VRS Type lag:

Läs mer

1. Inledning. 1. Inledning

1. Inledning. 1. Inledning För de flesta människor är ett relativt okänt begrepp trots att var och en i det dagliga livet ständigt kommer i kontakt med och t.o.m. själv utövar. Reglerteknik är varje rationell metod att styra eller

Läs mer

Grunderna i stegkodsprogrammering

Grunderna i stegkodsprogrammering Kapitel 1 Grunderna i stegkodsprogrammering Följande bilaga innehåller grunderna i stegkodsprogrammering i den form som används under kursen. Vi kommer att kort diskutera olika datatyper, villkor, operationer

Läs mer

Arjeplogs framtid. - en uppmaning till gemensamma krafttag. Populärversion

Arjeplogs framtid. - en uppmaning till gemensamma krafttag. Populärversion Arjeplogs framtid - en uppmaning till gemensamma krafttag Populärversion Förord Utvecklingen i Arjeplog präglas av två, relativt motstående, tendenser. Dels utvecklas delar av näringslivet, främst biltestverksamheten

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

Gameplay. Föreläsning 6. Logiska, inferens och latterala. Olika typer av utmaningar

Gameplay. Föreläsning 6. Logiska, inferens och latterala. Olika typer av utmaningar Föreläsning 6 Schema, nästa föreläsning handlar om genre sedan AI+grafik och sist etik Gameplay Olika typer av Spelbalans Sätt att skapa balans Verktyg för balans Gameplay Svårt att sätta fingret på det

Läs mer

Lektion 1: Fördelningar och deskriptiv analys

Lektion 1: Fördelningar och deskriptiv analys Density Lektion 1: Fördelningar och deskriptiv analys 1.,3 Uniform; Lower=1; Upper=6,3,2,2,1,, 1 2 3 X 4 6 7 Figuren ovan visar täthetsfunktionen för en likformig fördelning. Kurvan antar värdet.2 över

Läs mer

En ideal op-förstärkare har oändlig inimedans, noll utimpedans och oändlig förstärkning.

En ideal op-förstärkare har oändlig inimedans, noll utimpedans och oändlig förstärkning. F5 LE1460 Analog elektronik 2005-11-23 kl 08.15 12.00 Alfa En ideal op-förstärkare har oändlig inimedans, noll utimpedans och oändlig förstärkning. ( Impedans är inte samma sak som resistans. Impedans

Läs mer