SubjectsSubjects(version: 830)
Course, academic year 2017/2018
   Login via CAS
Human-like Artificial Agents - NAIL068
Title in English: Umělé bytosti
Guaranteed by: Department of Software and Computer Science Education (32-KSVI)
Faculty: Faculty of Mathematics and Physics
Actual: from 2015
Semester: summer
E-Credits: 6
Hours per week, examination: summer s.:2/2 C+Ex [hours/week]
Capacity: unlimited
Min. number of students: unlimited
State of the course: taught
Language: Czech, English
Teaching methods: full-time
Note: course can be enrolled in outside the study plan
enabled for web enrollment
Guarantor: Mgr. Cyril Brom, Ph.D.
Class: Informatika Mgr. - Teoretická informatika
Classification: Informatics > Informatics, Software Applications, Computer Graphics and Geometry, Database Systems, Didactics of Informatics, Discrete Mathematics, External Subjects, General Subjects, Computer and Formal Linguistics, Optimalization, Programming, Software Engineering, Theoretical Computer Science, Programming, Software Engineering, Theoretical Computer Science
Annotation -
Last update: T_KSVI (13.05.2015)

In this course, we will study human-like artificial agents, that is autonomous intelligent agents situated in a virtual environment similar to real world that act like humans. The course gives an overview of types of such agents and their architectures with the emphasis on the problem of action selection. The course also focuses on solving practical issues related to real-time and partially observable environments.
Aim of the course -
Last update: Mgr. Jakub Gemrot, Ph.D. (07.08.2018)

To give the student an overview about artificial beings as embodied intelligent agents, whose decision-making is subject to the bounded rationality.

Course completion requirements -
Last update: Mgr. Jakub Gemrot, Ph.D. (07.08.2018)

To complete the course, a student has to receive a credit from labs by solving assignments and then pass the practical examination.

Literature -
Last update: Mgr. Jakub Gemrot, Ph.D. (07.08.2018)

Bratman, M. (1999). Intention, plans, and practical reason. Center for the Study of Language and Information.

Brooks, A. R.: Intelligence without reason. In: Proceedings of the 1991 International Joint Conference on Artificial Intelligence, Sydney (1991) 569-595

Bryson, J.: Hierarchy and sequence vs. full parallelism in reactive action selection architecture. In: From Animals to Animats (SAB00). MA. MIT Press, Cambridge (2000) 147-156

Černý, M., Plch, T., Marko, M., Ondráček, P., & Brom, C. (2014). Smart Areas: A Modular Approach to Simulation of Daily Life in an Open World Video Game. 6th International Conference on Agents and Artificial Intelligence (ICAART 2014), 703–708.

Edelstein-Keshet, L: Mathematical Models in Biology. SIAM (2005) (Ch. 4.1, 4.2, 6.1 - 6.3)

Fu, D., & Houlette, R. (2004). The Ultimate Guide to FSMs in Games. In S. Rabin (Ed.), AI Game Programming Wisdom (First, Vol. 2, pp. 283–302). Massachusetts, USA: Charles River Media.

Grand, S., Cliff, D., Malhotra, A.: Creatures: Artificial life autonomous software-agents for home entertainment. In: Lewis Johnson, W. (eds.): Proceedings of the First International Conference on Autonomou Agents. ACM press (1997) 22-29

Hindriks KV, (2009). Programming Rational Agents in GOAL, Multi-Agent Programming: Languages and Tools and Applications, Springer US, pages:119-157, isbn: 978-0-387-89298-6

Huber, M. J.: JAM: A BDI-theoretic mobile agent architecture. In: Proceedings of the Third International Conference on Autonomous Agents (Agents'99). Seatle (1999) 236-243

Champandard, A. J. (2008). Behavior Trees for Next-Gen Game AI [Video]. Retrieved from [17.5.2017]

Kokko, H.: Modelling for Field Biologists and Other Interesting People. Cambridge University Press (2007)

Laird, J. E., Newell, A., Rosenbloom, P.S.: SOAR: An Architecture for General Intelligence. In: Artificial Intelligence, 33(1) (1987) 1-64

Mateas, M.: Interactive Drama, Art and Artificial Intelligence. Ph.D. Dissertation. Department Computer Science, Carnegie Mellon University (2002) viz též:

Orkin, J. (2006). Three States and a Plan: The AI of F.E.A.R. In Proceedings of the Game Developers Conference (GDC).

Rao, A. S., & Georgeff, M. P. (1995). BDI Agents: From Theory to Practice. Proceedings of the First International Conference on Multi-Agent Systems (ICMAS-95), San Francisco, USA, 1995, 312--319.

Rabin, S. (ed.): AI Game Programming Wisdom I - IV, Charles River Media (2002 - 8)

Steve Rabin (ed.). Game AI Pro : collected wisdom of game AI professionals, 2013 (Ch. 6)

Tyrrell, T.: Computational Mechanisms for Action Selection. Ph.D. Dissertation. Centre for Cognitive Science, University of Edinburgh (1993)

Teaching methods -
Last update: Mgr. Jakub Gemrot, Ph.D. (07.08.2018)

Frontal teaching during lectures, solving practical problems during labs.

Syllabus -
Last update: Mgr. Jakub Gemrot, Ph.D. (07.08.2018)

Lecture topics:

1. Taxonomy of artificial beings and their applications: learning simulations, video games, serious games, virtual storytelling, interactive drama, computational ethology.

2. Symbolic approaches to action selection: reactive planning, deliberative methods; if-then rules, finite-state machnies, behavioral trees, subsumption, Belief-Desire-Intention architecture, multi-layered architetures.

3. Connectionist approaches to action selection: free-flow hierarchies (Tyrrell), neural networks (Creatures, Black&White), approaches to agent learning.

4. Introduction to ethology: Psychohydraulic model of Konrad Lorenz, models of population dynamics.

5. Path-planning: steering rules, A*, HPA*.

6. Environment representation: affordances, smart objects, nav-mesh, way-points, sensory versimilitude.

7. Memory: psychological classification, short-term memory & episodic memory for the agents.

8. Unified theories of cognition: SOAR, ACT-R

Practical lessons are carried out in virtual environments of two different video games: Unreal Tournament 2004 (UT2004) and NOTA.

Practical lesson topics in UT2004:

1. Revisiting Java (sytax, collections, lists, sets, maps, iterators, lazy initialization, observer pattern and its problems, weak references), Maven basics

2. Introduction to the Pogamut platform and virtual environment of UT2004

3. Events and objects in Pogamut, listeners, annotations.

4. BOD methodology for the behavior design of virtual agents; if-then rules, finite state machines, behavior breakdown

5. Steerings and low-level movement of bots

6. Navigation in UT2004

7. Visibility in UT2004, non-trivial use of A*

Practical lesson topics in NOTA:

1. Introduction to Lua scripting language

2. Behavior trees

3. Behavior patterns in behavior trees

4. Controlling groups of bots using behavior trees

Charles University | Information system of Charles University |