Regular Courses

Virtual Environments (T-626-VIEN and T-723-VIEN)

This is a comprehensive course in both the theory and practice of Virtual Environments (VEs). Virtual Environments are simulations that engage the senses of users through real-time 3D graphics, audio and interaction to create an experience of presence within an artificial world. VEs are used in a variety of settings, including training, education, health, online collaboration, scientific visualization and entertainment. Their use is becoming more and more pervasive as hardware gets more capable of simulating reality in real-time (including graphics, physics and intelligent behavior). As part of the theoretical overview, the course will introduce the history of VEs, what kind of problems VEs have proven to be best at addressing, what are their shown limitations, what models of human-computer interaction apply to VEs and how these models are evolving and pushing the state-of-the-art in interactivity. The technical portion of the course will lead students through the construction and population of VEs in a very hands-on manner, covering topics such as world representation, real-time graphics and simulation issues, networked environments, avatars and interactive characters, event scripting and AI control, special real-time visual and aural effects and intuitive user interfaces.
Course Pages: [Fall 2010] [Spring 2009] [Spring 2008] [Spring 2007]

Natural Language Processing (T-538-MALV and T-725-MALV)
with Hrafn Loftsson

One of the most important goals of Human Language Technology, as a field within Computer Science, is to make it possible for people to interact with computer systems using their own natural manner of communication through language. Human Language Technology is an interdisciplinary field that for example relies on knowledge from linguistics, statistics, psychology, engineering and classic computer science. This course focuses on the fundamentals of Natural Language Processing (NLP), an important subfield of Human Language Technology, and introduces state-of-the-art research in the field with particular regard to the Icelandic language. Students will gain understanding of the various stages in language processing, for example morphological analysis, part-of-speech tagging, syntactic analysis, semantic analysis, discourse analysis and dialog control. Students will get a chance to explore these techniques through programming assignments and an independent project.
Course Pages: [Fall 2010] [Fall 2009] [Fall 2008] [Fall 2007]

Introduction to Artificial Intelligence (T-622-ARTI)
sometimes with other members of CADIA

Artificial intelligence (AI) is devoted to the computational study of intelligent behavior, including areas such as problem solving, knowledge representation, reasoning, planning and scheduling, machine learning, perception and communication. This course gives an overview of the aforementioned AI subfields from computer science perspective and introduces fundamental solution techniques for addressing them. The course is divided into two parts. The first part gives a thorough overview of classical AI topics whereas the second part is a hands-on in-depth study of a selected specialized topic.
Course Pages: [Spring 2011] [Spring 2009] [Spring 2008] [Spring 2007]

Supervised Theses

M.Sc. Palli Thráinsson :
Dynamic Planning For Agents in Games using Social Norms and Emotions
(Graduated Spring 2011 - 60 ECTS)

As environments in games have become more and more realistic graphically, a new big challenge has emerged for gaming companies. Both the computer controlled agents and player controlled avatars now also need to act in a believable manner so that the illusion of reality created by exquisite graphics and physics is not broken. There is a requirement for agents to react to the environment around them as well as to act in a certain manner when introduced to social situations. For agents to be life-like they need to have basic human traits like emotions and the ability to make decisions. In this thesis we describe a way of tackling this challenge using a three pronged solution. We have incorporated a social norms model into the agents using social rules. These rules tell the agents how to act when engaged in social situations. Secondly we added an emotional model which affects the agents' emotional state and gives them the ability to vary their responses to situations in the environment. Both these models reside in an appraisal module that is based on emotional appraisal theory. The appraisal module will appraise how events triggered in the environment affect the agents both emotionally and socially and will give the agent instructions on how he might cope with that situation. To complete the cycle a planner will make the decisions on what can be done, what should be done and how it should be done. The resulting system provides the illusion that the agents are human-like individuals that can act differently to similar situations depending on what they think is important to them at that time.

M.Sc. Raffaele Gaito :
Automating the Idle Gaze of Virtual Humans in Waiting Situations
(Graduated Spring 2010 - 30 ECTS)

Every avatar and agent in a social game environment needs to show social intelligence by reacting spontaneously to the social environment and situation. This work focuses on one specific behavior in a specific situation: gaze behavior of people waiting for a bus. This work makes use of field studies of subjects that are idling alone at a bus stop to minimize the external factors influencing the behavior. "Alone" here refers to people surrounded by other persons but not in communications with them. Data collected during field studies was used to derive computational models that then were added to automated reactive behavior in the CADIA Populus social simulation environment.

M.Sc. Claudio Pedica :
Spontaneous Avatar Behaviour for Social Territoriality
(Graduated Spring 2009 - 60 ECTS)

Avatars and agents in a realistic virtual environment must exhibit a certain degree of presence and awareness of the surrounding, reacting consistently to unexpected contingencies and contextual social situations. Unconscious reactions serve as evidence of life, and can also signal social availability and spatial awareness to others. These behaviours get lost when avatar motion requires explicit user control. This thesis presents new AI technology for generating believable social behaviour in avatars. The focus is on human territorial behaviours during social interactions, such as during conversations, gatherings and when standing in line. Driven by theories on human face-to-face interaction and territoriality, we combine principles from the field of crowd simulators with a steering behaviours architecture to define a reactive framework which supports avatar group dynamics during social interaction. [PDF]

M.Sc. Angelo Cafaro :
Simulating the Idle Gaze Behavior of Pedestrians in Motion
(Graduated Spring 2009 - 30 ECTS)

Gaze patterns are one of the most expressive aspects of human outward behavior, giving clues to personality, emotion and inner thoughts. Multimodal communication and, generally, natural social behaviors are one of the main branches that Sociology deals with. “Virtualization” of some aspects of life through realistic looking interactive environments is one of the most fervent activity that Computer Science deals with. When games wish to use avatars to represent players in virtual environments, all the animated behaviors that normally support and exhibit social interaction become important. Since player cannot be tasked with micro-management of behavior, the avatars themselves have to exhibit a certain level of social intelligence. The purpose of this avatar AI is infact twofold: to give players helpful cues about the social situation and to ensure that the whole scene appears believable and consistent with the level of game world realism.The goal of this thesis is to automate the production of naturally looking idle-gaze behavior in avatars, using data from targeted video studies. The focus is on people walking alone down a shopping street. [PDF]

Supervised Independent Studies

Davíđ Hermann Brandt:
Open Source Technology for Massively-Multiplayer Games. A Case Study (Fall 2009)

Free-and-open-source-software (FOSS) promises an attractive alternative to the ever-increasing costs of commercial middleware, which threatens the profitability of modern game development. As MMO development is typically an order of magnitude more expensive than classical game development, this promise seems even more attractive within this sub segment of the industry. There is however little evidence of widespread FOSS usage within the gaming industry. This paper attempts to shed light on some of the underlying reasons through performing an in-depth evaluation of the OGRE open-source rendering engine from the perspective of an MMO developer. The author shows that there are great savings to be had when using the engine as a foundation when compared to building a proprietary rendering engine from scratch, but it does not actually offer significant cost advantages over commercial alternatives in the context of MMO development. The engine also comes with the added risk that it is virtually unproven in the field of high-end gaming, although a number of low-end and mid-range games based on the engine have shown great promise. Furthermore, while OGRE is highly praised by industry professionals it is however uncompetitive in high-performance gaming due to its lack of parallelism. The author concludes that while using OGRE as a rendering engine in a high-end MMO is almost certainly doable, unquestioning commitment to the engine would be folly. [PDF]

Birna Íris Jónsdóttir:
Behavior Modelling in Virtual Creatures (Spring 2009)

Behavior of living beings can be viewed as an abstraction of complex biological processes that we do not completeley understand yet. Behavioral drives, that is the forces that drive creatures to behave can be viewed in several ways. The Ethological perspective deals with the issues of relevance, coherance and adaption along with a simple non-cognitive explanations of behavior (Blumberg, 1996). Another way to view the behavioral drives is by Maslow’s hierarchy of needs, with the physiological forces (such as hunger and thirst) at the bottom level working upto the self-transcendence (such as helping others to find self-fulfillment) on the top (Huitt, 2004). Yet another way to view behavioral drives is from the perspective of Chaos and Complexity theories, where creatures “ . . . as a complex dynamical system self-organize their lives both in order to survive and to find or make meaning. . . ” (Pryor & Bright, 2007). In this independant study the student will study the the behavioral models mentioned above and implement a model of one selected behavior model with the creatures displayed as birds living on a cliff.

Peter Holzkorn :
Simulating Group Behavior in Avatar-based Virtual Environments (Spring 2009)

The study focus is twofold: (1) study human behaviour in groups in which some form of social interaction is taking place, as much as it is relevant for creating a convincing model of such behaviour and (2) consider existing theoretical models and
implementations of the mentioned phenomena and getting familiar with ways of designing agent behaviour in virtual environments.
In addition to the general understanding of the problems and methods in this field, example situations of group behaviour using the existing CADIAPopulus social simulation framework will also be implemented. Such a situation could be a group of avatars forming a queue (and possibly starting conversations within the queue) or a conversation forming in the immediate proximity of obstacles such as furniture or within a larger gathering of avatars.

Bjarni Þór Árnason:
TERRAble - Building and Performance Tuning a Real-time Nature Rendering Framework with Shaders (Spring 2008)

TERRAble is an independent study project done at Reykjavik University. The purpose of the project is to increase the student’s knowledge and experience in computer graphics and related matters, beyond that what the basic computer graphics course teaches. The project focuses on 3 main objectives; 1) creating an OpenGL framework to use for development, 2) research and implementation of performance optimization techniques and comparisons and 3) research and implementation of programmable real-time shaders.

Ágúst Karlsson:
Procedural Content Creation (Fall 2007)

The Procedural Content Creation (PCC) software is a helper tool for the complete automation of 3D model creation. It’s intended purpose is to help create dynamic content for the “Secrets of Rigel” computer game where players compete against AI opponents for dominance of star systems in the galaxy. The game is meant as a test-bed for various AI projects and experiments. The PCC program will be used to dynamically generate planet models in the game as well as terrain models (valley tunnels or generic terrains). The tool is a simple command line program and will therefore not run in a normal window. Instead it is meant to be called by another program or human through a command line interface, with parameters defining it’s input, affecting it’s output.

Árni Arent Guðlaugsson:
Leitaraðferðir á leiðum í tölvuleikjum (Spring 2007)

Tölvuleikir og sýndarheimar eru flókin fyrirbæri, slíkur hugbúnaður notast við margskonar flókin reiknirit til að bæði geta birt hluti á skjá og ekki síst að koma hreyfingu á þá hluti sem eru í slíkum leikjaheimi. Ein tegund af slíkum reikniritum eru leitarreiknirit (e. Pathfinding algorithms), en þau eru fengin af láni frá netafræði. Leitarreiknit flokkast sem gervigreind í tölvuleikjum, en hlutverk þeirra er að finna leið milli upphafsstaðs og áfangastaðs, sem einhver hlutur í tölvuleiknum getur svo ferðast um. Hér er einmitt fjallað um hvernig hlutir, t.d. bílar, skrímsli, hermenn o.fl sem finna má í almennum tölvuleikjum, ferðast um í tölvuheiminum sem þeir eru í. En vandamálið við að láta einhvern slíkan hlut ferðast frá A til B getur verið margþætt, t.d. geta verið hindranir á leiðinni, s.s. vötn, fjöll, hæðir, veggir og ár, sem þarf að komast fram hjá.

Claudio Pedica:
Coupling Autonomy and User Control in Avatar Based Online Interaction (Spring 2007)

In this independent study, the student learned about two fields of study that together form an important backbone for further enquiry into avatar based online communication and collaboration. The first is the science of human face-to-face communication, which describes the ideal case for a collaborative setting, and explains how various subtle nonverbal behaviors contribute to a successful interaction. The second is the science of coupling between human and autonomous control in socially behaving embodied agents. The student learned to formalize procedures from the former and apply those formalizations in a system based on the latter. Furthermore, the student learned to build a simple multi-user online environment using python and Panda 3D.