Courses
Artificial Intelligence in Games
Understand the differences between traditional AI and AI applied to game development, where other factors such as playability are more relevant that the oponent’s intelligence level. Be familiar with the practical problems when developing AI for video games, and with the several techniques applied in comercial video games. Know how to design and build an AI system for a video game independently of its genre (action, sport, strategy, narrative).
Autonomous Agents and Multi-Agent Systems
To acquire general notions about agents and multi-agent systems; knowing how to identify and classify agents and environments, according to different properties. Knowing how to develop complex systems and systems from different application areas, using an agent-oriented methodology. Knowing how to define a society of agents in order to solve a specific problem. Being able to design agents with reactive, deliberative and hybrid architectures. Being able to create societies of agents that communicate, in a practical way, using suitable languages and platforms.
Computer Graphics for Games
This course covers both theory and practice of game engine software development. It delves into the different engine subsystems including, but not limited to, rendering, character animation, and physics, and details the articulation required to support gameplay development. By the end of this course, students should understand how modern game engines work, and be able to design and develop their own game engines.
Game Design
This course grants the students the opportunity to develop their skills on experience design and prototyping for games. The learning process is sustained in the discussion of what is a game, what are its components and what is its relation to the players (having in mind their differences). It is expected that the student develop design documents and prototypes to support his/her work on the course.
Game Development Methodology
Present a vision of the different methodologies and technologies involved in the development of digital games discussing the main features and issues in each one. Grant students with conceptual tools and techniques to develop user interfaces for games with special emphasis on player controls. Develop the ability to reflect and test the player experience and gameplay. Discuss the role of conceptual modelling and user testing. Highlight the importance to take a user centred approach in the exploration of the player experience.
Multimedia Content Production
Know the different types of multimédia information and how to manipulate them to poduce multimedia content. To understand the technological constraints that affect Production. To understand critical factors affect the success of a production, namely in aspects such as capture, encoding, processing and visualization of the different media. To know the different kinds of available authoring tools. To create Multimedia contents; To identify the different contexts in which multimedia can be consumed, with emphasys on online and network issues (evaluate bandwidth, latency, synchronization, etc.) and mobile devices. Introduce some advanged multimedia usages such as procedural modelling, generative art augmented reality. Apply efficient methods of multimedia content retrieval.
Thesis
Synthetic Characters for Creative Child-Computer Interaction
Creativity is known as an ability that can be developed and improved. Since creative abilities are desired in most modern societies, it becomes important to develop activities that stimulate creativity at a very young age. It seems, however, there is a lack of tools to support creative activities for children. We present Cubus, a tool that uses autonomous synthetic characters to stimulate idea generation in groups of children during a storytelling activity. With Cubus, children can invent a story and use the stop-motion technique to create a movie depicting it. This work yielded a useful methodology that we consider can aid the design of tools which assist users in their task. This methodology consists in an iterative development where several user studies are carried out to inform and validate design choices during a tool's different development stages. Additionally, a methodology to evaluate the different aspects of creativity is also presented and implemented during our creativity evaluation with Cubus. To evaluate how Cubus supports creativity, we investigated the number of ideas generated by groups of children during their creative process of creating and recording a story and the creativity of the product this process originated, a stop-motion movie. Results showed that the embodied synthetic characters with autonomous behavior of Cubus contributed to the generation of more ideas in children, a key aspect of creativity. Regarding the creative product, results suggest that Cubus agents' autonomous behaviors were unable to influence children's creative products, the stop-motion movies.
A Reinforcement learning approach for the circle agent of Geometry Friends
Geometry Friends (GF) is a physics-based platform game, which was part of the Artificial Intelligence (AI) competitions of the IEEE CIG Conference in 2013 and 2014. On GF there are two different characters, a circle and a rectangle, whose goal is to catch all the diamond-shaped collectibles available on each level of the game. In this work, a novel approach to the GF problem for the circle agent is proposed. This approach is based on learning algorithms, is character-agnostic and circumvents the excessive specialization to the public levels observed in the agents submitted to the 2014 competition. The solution uses a Divide-and-Conquer strategy that partitions the problem of solving a GF level into a series of three sub-problems: solving one platform (SP1), deciding the next platform (SP2) and moving from one platform to another (SP3). This method uses reinforcement learning to solve SP1 and SP3 and a depth-first search to solve SP2. To measure the quality of the developed agent, its results on the levels of the 2014 Competition are measured against the performance of that competition contestants, CIBot and KUAS-IS Lab The results show that despite having a worse performance overall, the agent successfully avoided becoming over-specialized to a specific sub-set of levels.