One of the main purposes of the fields of Robotics and Artificial Intelligence is to develop solutions that can autonomously solve problems. An important part of this is synthesising behaviours of robots. Behaviour Trees are a tree structure that enables combining existing lower level behaviours into a high level behaviour through task switching. However, designing appropriate Behaviour Trees can be prohibitive due to time and knowledge requirements. One way of automating the creation of Behaviour Trees is through Genetic Programming, which evolves solutions through mutations and combinations akin to biological evolution. This Masters thesis explores how Genetic Programming can be used to generate Behaviour Trees in an automatic fashion. More specifically, whether so-called Quality Diversity can be used to improve the search. Quality Diversity describes a field of algorithms that combine both performance and novelty of behaviour to evaluate solutions. By including a novelty aspect the search space is more thoroughly explored, and deceptive local optima may be more easily avoided. In this thesis three Quality Diversity algorithms are implemented and evaluated in different settings: Novelty Search, Novelty Search with Local Competition, and Multi-dimensional Archive of Phenotypic Elites. The results show that Quality Diversity has potential to both increase the speed at which solutions are found and decrease the likelihood of premature convergence due to local optima. However, we also find that care must be taken in how behaviours are defined, and how some common techniques of Genetic Programming need to be adapted for Quality Diversity algorithms. / Ett av huvudsyftena med robotik och artificiell intelligens är att skapa system som självständigt kan lösa problem. En viktig del av detta är att skapa robotars beteenden. Beteendeträd är en trädstruktur som gör det möjligt att kombinera befintliga beteenden på lägre nivå till ett beteende på hög nivå. Att utforma lämpliga beteendeträd kan dock kräva både mycket tid och kunskap. Ett sätt att automatisera skapandet av beteendeträd är genom genetisk programmering, som utvecklar lösningar genom mutationer och kombinationer i likhet med biologisk evolution. Detta examensarbete undersöker hur genetisk programmering kan användas för att automatiskt generera beteendeträd. Mer specifikt undersöks om kvalitetsmångfald (Quality Diversity) kan användas för att förbättra sökningen. Kvalitetsmångfald beskriver en familj av algoritmer som kombinerar både prestanda och innovation i en lösnings beteende för att utvärdera lösningar. Genom att inkludera en innovationsaspekt blir sökområdet mer noggrant utforskat och vilseledande lokala optima kan lättare undvikas. I detta examensarbete implementeras och utvärderas tre kvalitetsmångfaldsalgoritmer i olika miljöer: Novelty Search, Novelty Search with Local Competition, och Multi-dimensional Archive of Phenotypic Elites. Resultaten visar att kvalitetsmångfald har potential att både öka hastigheten med vilken lösningar hittas och minska sannolikheten för tidig konvergens på grund av lokala optima. Vi konstaterar dock också att man måste vara försiktig med hur beteenden definieras och hur vissa vanliga tekniker för genetisk programmering måste anpassas för algoritmer med kvalitetsmångfald. / Eén van de belangrijkste doelstellingen van het vakgebied Robotica en Kunstmatige Intelligentie is het ontwikkelen van oplossingen die autonoom problemen kunnen oplossen. Een belangrijk onderdeel hiervan is het synthetiseren van gedragingen van robots. Gedragsbomen zijn een boomstructuur waarmee bestaande gedragingen van een lager niveau kunnen worden gecombineerd tot een gedrag van een hoger niveau door middel van taakwisseling. Het ontwerpen van geschikte gedragsbomen is echter soms niet haalbaar haalbaar vanwege de benodigde tijd en kennis. Een manier om het maken van gedragsbomen te automatiseren is door middel van genetisch programmeren, dat oplossingen ontwikkelt door mutaties en combinaties, vergelijkbaar met biologische evolutie. Deze masterproef onderzoekt hoe genetische programmering kan worden gebruikt om automatisch gedragsbomen te genereren. Meer specifiek of kwaliteitsdiversiteit (Quality Diversity) kan worden gebruikt om het zoeken te verbeteren. Kwaliteitsdiversiteit beschrijft een gebied van algoritmen die zowel prestaties als nieuwheid van een oplossingsgedrag combineren om oplossingen te evalueren. Door een nieuwheidsaspect te introduceren wordt de zoekruimte grondiger verkend en kunnen bedrieglijke lokale optima gemakkelijker worden vermeden. In deze masterproef worden drie algoritmen voor kwaliteitsdiversiteit toegepast en geëvalueerd in verschillende omgevingen: Novelty Search, Novelty Search with Local Competition en Multi-dimensional Archive of Phenotypic Elites. De resultaten tonen aan dat kwaliteitsdiversiteit het potentieel heeft om zowel de snelheid waarmee oplossingen worden gevonden te verhogen als de kans op voortijdige convergentie als gevolg van lokale optima te verminderen. Wij stellen echter ook vast dat zorgvuldigheid geboden is bij de definitie van gedragingen en dat sommige gebruikelijke technieken van genetisch programmeren moeten worden aangepast voor algoritmen met kwaliteitsdiversiteit.
Identifer | oai:union.ndltd.org:UPSALLA1/oai:DiVA.org:kth-337053 |
Date | January 2023 |
Creators | Willemsen, Alexander |
Publisher | KTH, Skolan för elektroteknik och datavetenskap (EECS) |
Source Sets | DiVA Archive at Upsalla University |
Language | English |
Detected Language | Swedish |
Type | Student thesis, info:eu-repo/semantics/bachelorThesis, text |
Format | application/pdf |
Rights | info:eu-repo/semantics/openAccess |
Relation | TRITA-EECS-EX ; 2023:631 |
Page generated in 0.0027 seconds