Dr Diego Perez-LiebanaSenior LecturerEmail: diego.perez@qmul.ac.ukRoom Number: Peter Landin, CS 301Twitter: @diego_pliebanaOffice Hours: Tuesday 09:00-11:00ProfileTeachingResearchProfileBorn in Madrid (Spain) in 1983 and living in London (United Kingdom). I am a Senior Lecturer in Computer Games and Artificial Intelligence at Queen Mary University of London (UK). I hold a Ph.D in Computer Science from the University of Essex (2015) and a Master degree in Computer Science from University Carlos III (Madrid, Spain; 2007). My research is centred in the application of Artificial Intelligence to games, Tree Search and Evolutionary Computation. I am especially interested on the application of Statsitical Forward Planning methods (such as Monte Carlo Tree Search and Rolling Horizon Evolutionary Algorithms) to modern games, and also on General Video Game Playing, which involves the creation of content and agents that play any real-time game that is given to it. I am author of more than 90 papers in the field of Game AI, published in the main conferences of the field of Computational Intelligence in Games and Evolutionary Computation, and I was once general chair of IEEE CoG 2020. I have publications in highly respected journals such as IEEE TCIAIG (the top journal on the Game AI field) and IEEE TEC (which counts with one of highest impact factors in Computer Science). I have also organised international competitions for the Game AI research community, such as the Physical Travelling Salesman Competition, and the General Video Game AI Competition, held in IEEE (WCCI, CIG) and ACM (GECCO) International Conferences. I also experience in the videogames industry as a game programmer (Revistronic; Madrid, Spain), with titles published for both PC and consoles. I worked as a software engineer (Game Brains; Dublin, Ireland), where I was in charge of developing AI tools that can be applied to the latest industry videogames. As a lecturer I teach modules related to game development and the application of Artificial Intelligence to Games.TeachingAdvanced Game Development (Postgraduate) This module covers games programming in C++, assuming the student has experience with object-oriented programming. The module introduces the C++ language and uses it to explores a range of topics in games programming, including 2D and 3D graphics, OpenGL, physics, input systems, and the use of C++ in modern game engines. It emphasises a practical approach to programming, with the students developing playable games for the final assessment. Artificial Intelligence in Games (Postgraduate) This module covers a range of Artificial Intelligence techniques employed in games, and teaches how games are and can be used for research in Artificial Intelligence. This module has a strong programming component. The module explores algorithms for creating agents that play classical board games (such as chess or checkers) and real-time games (Mario or PacMan), including single agents able to play multiple games. The module gives an overview of multiple techniques, such as Monte Carlo Tree Search, Evolutionary Computation, Deep and Machine Learning applied to games. Game Development (Postgraduate) This module provides a practical foundation in the development of video games, covering modern technical approaches and development practices. It is delivered in two intensive blocks. Part 1 introduces programming games within an industry standard game engine, focusing on core topics such as game logic, player interaction, NPC behaviour, and the use of prototyping and playtesting during development. Part 2 explores a range of advanced topics, such as applications of machine learning and AI in game development, procedural content generation, and interaction technologies. Each part is assessed separately, with students working in groups to develop playable digital prototypes. Multi-platform Game Development (Undergraduate) This module covers the fundamentals of game development in a multi-platform (consoles, PC, Web and mobile devices) environment. The course focuses on development of 3D games, covering all aspects of game development: the game loop, math, physics, audio, graphics, input, animations, particle systems and artificial intelligence. This module has a strong programming content, required for laboratories and assignments. The practical aspects will be taught using a popular game development platform. The main assignment of this module consists of the development of a full 3D game at the student's choice. Multi-platform Game Development (Postgraduate) This module covers the fundamentals of game development in a multi-platform (consoles, PC, Web and mobile devices) environment). The course focuses on development of 3D games, covering all aspects of game development: the game loop, math, physics, audio, graphics, input, animations, particle systems and artificial intelligence. This module has a strong programming content, required for laboratories and assignments. The practical aspects will be taught using a popular game development platform. The main assignment of this module consists of the development of a full 3D game at the student's choice.ResearchResearch Interests:See Diego Perez-Liebana’s research profile pages including details of research interests, publications, and live grants.