Education

LabJogos offers 6 courses in the Specialization on Games at Técnico Lisboa and holds several Master Thesis and research projects in the fields of Games and Interactive Experiences.

It also promotes the creation of multidisciplinary teams. To do so it has an old connection (2013) with Belas-Artes (ULisboa Art School), allowing projects with greater quality by mixing the programmers and artists from these two institutions. More recently (2019), bonds with the Bachelor’s Degree in Industrial Engineering and Management were made, allowing not only the creation of a game but also of the exploration of its impact in the market.

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

Towards a Cooperative Agent for Human-Agent Interaction for Geometry Friends

  • Ana Rita de Castro Plácido Salta
  • Rui Prada (Advisor)
  • Francisco António Chaves Saraiva de Melo (Advisor)
  • 2017
  • Finished
  • geometry-friends
  • artificial-agent
  • rapidly-exploring-random-trees
  • replanning
  • human-agent-cooperation

Cooperative Artificial Intelligence (AI) in Human-Agent interaction is a complex but interesting subject that has not yet reached the necessary behavior to be considered satisfactory. In this document, we present how we achieved our goal of creating an artificial players capable of effectively solving Geometry Friends levels, using a promising previous approach, that uses the Rapidly-Exploring Random Trees (RRT). Starting on this solution, we developed our agents by adding new strategies to the algorithm, replanning, and a new controller. When our agents proved capable of solving single-player levels a step was taken towards an initial approach for cooperation with human players. Our final solution is a pair of agents that can not only solve most of the presented challenges of single-player levels, with some current limitations, but also play with human players in simple cooperation levels. After a user testing session, the most human players affirmed the experience was positive and that our agents presented capabilities of cooperation and adaptation.

Cooperation through Reinforcement Learning in a Collaborative Game

  • Pedro Vargas Nobre de Gusmão
  • Rui Prada (Advisor)
  • Francisco António Chaves Saraiva de Melo (Advisor)
  • 2015
  • Finished
  • geometry-friends
  • reinforcement-learning
  • agents
  • cooperation
  • ad-hoc-teams

This work has the objective of creating agents that are able to work together with other previously unknown teammates and without any a priori coordination for the collaborative game Geometry Friends. Starting with an agent for the circle character that uses a reinforcement learning approach, this work continues its development to further improve its behavior and performance. This process goes through various stages, analyzing the agent's various components and adjusting their behavior when necessary and possible to improve the agent's performance. These mechanisms are then extrapolated for the other character of the game, the square, adapting the components whenever necessary for the specific problems the square character faces. After both agents are completed, the work focuses on problems of coordination between the agents and the difficulties that the implementation brings to the extension of the agents for the cooperative problems. During the various phases of development, the agents are tested determine the impact that each change has on their performance. The tests suggest that the internal functionalities result in some incompatibilities with the intended behavior, since it limits the behaviors that can be added to the agents. While there is an improvement of the circle agent, the square and cooperative performances are below expectation.