Využití hierarchických konečných automatů pro popis vzorů chování
Using hierarchical finite automata for behavior-description
bachelor thesis (DEFENDED)
![Document thumbnail](/bitstream/handle/20.500.11956/37138/thumbnail.png?sequence=8&isAllowed=y)
View/ Open
Permanent link
http://hdl.handle.net/20.500.11956/37138Identifiers
Study Information System: 79561
Collections
- Kvalifikační práce [11266]
Author
Advisor
Referee
Holan, Tomáš
Faculty / Institute
Faculty of Mathematics and Physics
Discipline
General Computer Science
Department
Department of Software and Computer Science Education
Date of defense
10. 2. 2011
Publisher
Univerzita Karlova, Matematicko-fyzikální fakultaLanguage
Czech
Grade
Good
Keywords (Czech)
konečné automaty, umělá inteligence, autonomní agenti, strategie chováníKeywords (English)
finite state machines, artificial intelligence, autonomous agents, behavioral patternV předložené práci zavádíme a studujeme hierarchické konečné automaty jako model umělé inteligence autonomních agentů v obecných virtuálních prostředích a systémech. Formálně definujeme pojem hierarchického automatu, analyzujeme jeho výpočetní sílu srovnáním se známými druhy automatů a poukazujeme na možnosti jejího zvýšení. Poté uvádíme nejběžnější přístupy k simulaci inteligentního chování, rozlišujeme přímý a nepřímý popis vzorů chování a představujeme výhody hierarchických automatů coby nástroje pro popis přímý. Zároveň předkládáme knihovnu interpretující tyto automaty vytvořenou jako součást této práce. Demonstrací jejího použití na ukázkovém robotu pro prostředí Robocode ukazujeme, že jsou obecným a použitelným řešením pro takováto nasazení.
In the present work we introduce and study the hierarchical finite state machines as a model of artificial intelligence of autonomous agents in various virtual environments and systems. We define the concept of hierarchical finite state machine formally, analyze its computational power compared to common types of automata and point out the possibilities of increasing it. Then we list the usual methods of artificial intelligence simulation, tell apart the direct and indirect behavioral pattern description and present advantages of hierarchical finite state machines as a tool for the direct form. We propose a library interpreting these automata, created as a part of this work. By demonstrating its usage for controlling an example robot within the Robocode environment, we show that they are generic and viable solution for this kind of settings.