đźš§ Under Construction đźš§

This website is being updated for the 2026-27 academic year.
All information presented here may be outdated and is subject to change.

IGD - Interaction, Graphics & Design Track

Master of Computer Science - IP Paris


Interaction

CSC_4IG02_TP Interactive Application Development: Desktop, Mobile, Web
2,5 ECTS Cycle Ingé TP
Simon Perrault, Daniel Medeiros, Mickael Bouhier
This course presents tools for developing 2D interactive applications: Qt GUI toolkit (in C++), Android user interfaces on mobile devices, Web interface basics.
See also: CSC_0EL10_TP (Web development), CSC_0EL11_TP (Paradigms of Programming/C++), CSC_4IG05 (Human-Computer Interaction).
HSS_4EL42_TP Quant UX - Quantitative analysis of User Experience Data
2,5 ECTS Cycle Inge TP
Panos Mavros
Quant UX, or Quantitative User Experience (research) is an emerging field with strong industry applications, that applies quantitative methodologies (statistics, data-science) to understand how users interact with digital systems, to find bottlenecks and make better decisions. The increasing integration of a digital layer in all facets of everyday life, from professional to personal, makes it essential to consider how diverse groups of end-users are interacting with digital systems. The majority of digital systems from websites to apps, are registering data on user-interactions which can be analyzed systematically to understand how users interact with an interface, where they encounter bottlenecks, and where there are opportunities for improvement. These include surveys, A/B testing, analysis of data logs, as well as psychophysiological methods like eye-tracking and others. Importantly, the aim of these methods is not stop at analysis, but needs to be linked with actionable insights and innovations.
HSS_5ID22_TP Making Physical Representations of Data
2,5 ECTS M1 Recherche en Design, Paris Saclay HCI
Nathalie Bressa, Vanessa Peña-Araya
Physical representations of data pre-exist with the invention of the written language. While our contemporary notion of data did not yet exist, early humans externalized their memory by encoding quantitative or qualitative values into physical objects. Over the following millennia, physical data representations allowed people to record, reflect, reason, and decide about the world in new and profound ways. Creating data objects is far from a lost art, and an explosion of new fabrication technologies also introduced an ever-wider array of physical tools to support thinking and communication. We are now in an era where data is an increasingly visible part of our everyday existence, a growing number of artists, designers, makers, and everyday people are actively exploring the possibilities of making data physical. This class will provide the student the occasion to reflect on how data could be encoded and manipulated in physical objects. This class will cover first a short historical introduction, second some snapshots of the practices used by contemporary designers, and some design considerations. The main focus of the class will be to create a physical object to either encode data during a collective action or to represent an existing dataset. This class will be based on the recently published book “Making with Data” (https://makingwithdata.org/).
CSC_4IG07_TP Visualization
2,5 ECTS Cycle Ingé TP, MS Big Data TP, MS IA TP
James Eagan
The goals of this course are: To introduce the fundamental principles of visualization; To give an overview of existing visualization techniques and systems; To understand how to critique visualization techniques for a particular kind of data for a particular task; To learn how to evaluate visualization systems; To provide the foundation necessary to create new visualization tools.
HCI-922 Mobile and Gestural Interation
2,5 ECTS
Brian Ravenet
The goal of this course is to learn how to use gestures as an effective input modality in interfaces including small-screens, touch screens, mobile devices and interactive systems based on expressive nonverbal whole-body communication. This course presents some techniques for capture, recognition and interpretation of gestures.
CSC_52085_EP Real-time AI in video games: decisive & collaborative actions
5,0 ECTS
David Bilemdjian, Axel Buendia
PrerequisiteC++ Programming, Windows laptop.
Notestrict capacity constraints apply
This class will propose an in-depth presentation of the main approaches used in current video games to handle decision making of autonomous, and possibly, collaborating agents . The course will cover the “classical” algorithmic-based AI approaches with a general focus on interactive and real-time constraints , ranging from decision and behavior tree, rules based methods and inference system, as well as hierarchical system for distributed communication and cooperative behaviors. Note: This course is heavily oriented toward application and programming, much more than its theory. Lab classes are used for a collaborative project developed in C++ with the Starcarft API. Good skills in C++ are required. Warning: Strict numerus clausus to be respected depending on the number of place left. Please contact the professors and your tutor before confirming your enrolment.
CSC_5ID02_PS Fundamentals of HCI
2,5 ECTS Master HCI, Paris-Saclay
Michel Beaudouin-Lafon
Notestrict capacity constraints apply
Human-Computer Interaction addresses the design, development and evaluation of interactive systems. This area is critical to how we experience the digital world as the number and diversity of users, devices, on-line services and available information increases. This course introduces students to the foundations of Human-Computer Interaction (HCI), emphasizing its multi-disciplinary aspect. The course gives an overview of the field of human-computer interaction, including a review of interaction styles, basic elements of psychology for HCI, the design process of interactive systems, and an in-depth analysis of graphical interaction and the notion of conceptual modeling.
CSC_5ID03_PS Advanced Topics in HCI
2,5 ECTS Master HCI, Paris-Saclay
Michel Beaudouin-Lafon
PrerequisiteCSC_5ID02_PS (Fundamentals of HCI)
Notestrict capacity constraints apply
This course extends the Fundamentals of Human-Computer Interaction course with selected topics, which are mainly research-oriented but are also of interest for practical applications. The course starts with a brief history of HCI and then presents three in-depth studies of interaction at various levels, including pointing (the most basic and most common interaction in graphical user interfaces), instrumental interaction (an extension to direct manipulation based on human's ability to create and use tools), and collaborative computing (as an introduction to the elective of the same name). The course then provides a wide overview of models, theories and frameworks used in HCI, rooted in psychology, cognitive science, software engineering, and HCI itself.
CSC_5ID32_PS Generative Theories of Interaction
2,5 ECTS Master HCI, Paris-Saclay
Michel Beaudouin-Lafon
PrerequisiteCSC_5ID02_PS and CSC_5ID03_PS
Notestrict capacity constraints apply
Generative Theories of Interaction are inspired by existing theories of human cognition and behavior and applied to interaction design. They include concepts specific to Human-Computer Interaction (HCI) that are transformed into actionable principles for designing interactive systems. These generative theories offer both researchers and User Experience (UX) designers the opportunity to design truly novel forms of interaction that are both simpler to use and provide greater power of expression. This course presents two generative theories of interaction — instrumental interaction and co-adaptation — and illustrates how to apply them to the redesign of an existing system. Students will first analyze the system according to the design principles, then critique it, and then create a new design based on these principles. The best student projects will be added to the Interaction.Museum.
CSC_5ID33_PS Designing Human-Centered AI
2,5 ECTS Master HCI, Paris-Saclay
Janin Koch
PrerequisiteIntroduction to HCI (CSC_4IG06_TP) or Design User Experience (HSS_5ID30_TP).
NoteStrict capacity constraints apply.
NoteThis is a difficult course.
This course uses the Design of Interactive Systems course methodology to design and evaluate interactions with human-centered AI systems. It introduces advanced theories from HCI, cognitive science, communication, and design research to better understand human-AI collaborative behavior, as well as reflections on how to design such behavior in the context of social, legal, and sustainability concerns. Along with these lectures, students will work in groups of three or four to design, and evaluate an intelligent interactive system, which will be represented as video prototypes. The goal is to design human-AI systems in a more human-centered way, utilizing user feedback to address real user needs and understandings. Students will learn a variety of advanced techniques, such as co-adaptive instruments, generative walkthroughs, structured observation, and alternative methods for developing and evaluating novel approaches with no existing comparisons. All in-class and homework exercises are required to complete the final project, so attendance and participation are critical. Grades are based on in-class and homework exercises, as well as the presentation of each project's final video prototype to an external jury for evaluation.
CSC_5ID17_PS Evaluation of Interactive Systems
2,5 ECTS Master HCI, Paris-Saclay
Notestrict capacity constraints apply.
This class is an introduction to the different methods for evaluating interactive systems. By the end of this class, students should be able to identify the right evaluation method to consider depending on the type of users, the type of the system and the design stage of the system.
CSC_5ID34_PS Collaborative Computing
2,5 ECTS Master HCI, Paris-Saclay
PrerequisiteM2 only, CSC_4IG06_TP (Introduction to Human-Computer Interaction) or CSC_5ID02_PS (Fundamentals of HCI)
Notestrict capacity constraints apply.
This course presents computer-supported collaborative systems, which allow groups of people, whether they are collocated or not, to work together while sharing computer artifacts. The course covers groupware and mediated interaction, including a state-of-the-art of interactive systems for coordination, communication and collaboration among groups of users across time and space. The course also covers Collaborative Virtual Environments, a research area at the intersection of Virtual Reality, Augmented Reality, teleoperation, high-bandwidth communication, human-computer interaction and collaborative teleworking. Finally it covers recent developments such as social networks and crowdsourcing.
CSC_5ID35_PS Motivational and Persuasive Interaction
2,5 ECTS Master HCI, Paris-Saclay
PrerequisiteM2 only
Social and motivational interactions are becoming increasingly important in Human-Computer Interactions in response to societal needs for healthy behavior change. Many systems involve for example virtual characters endowed with social interaction capabilities and the possibility to display non verbal expressions such as facial expressions, gaze and gestures (video games, virtual worlds, virtual e-coaches for health applications, animation, digital arts, pedagogical agents, on-line assistants, virtual patients for training doctors). This module presents research in modeling, animating, and rendering realistic and expressive autonomous virtual humans. It introduces the theoretical foundations of motivation and multimodal communication in relation with theories and models from Psychology that are adapted to inform the design of computational models of mobile applications and interactive and expressive virtual humans. This includes theories, models and software architectures for managing motivation, emotions, personality, facial expressions, gestures and bodily interactions. Design frameworks, software architectures and integration of these social and motivational dimensions in HCI design are presented. Applications in relevant fields of multimodal and social interaction are presented as use cases: virtual coaches and motivational / persuasive technologies for sport, physical activities, nutrition, stress management, personal and corporate well being ; pedagogical agents for training social skills. On-going PhD theses are presented.
CSC_5ID08_TP Advanced Programming of Interactive Systems
5,0 ECTS
James Eagan
PrerequisiteJava programming experience, UI programming experience (such as from CSC_4IG01_TP or CSC_0EL11_TP)
Advanced user interface programming techniques, architecture and algorithmic underpinnings of UI toolkits, how to create user interfaces, including how to extend standard widgets and move beyond WIMP to off-the-desktop contexts.

Graphics

CSC_4IG01_TP Introduction to Computer Graphics
2,5 ECTS Cycle Ingé TP
Kiwon Um
PrerequisiteC/C++ programming
ConflictCSC_52084_EP (Image Synthesis)
Introduction to computer graphics for 3D application development: basics of the rendering pipeline, transformations, camera models, shading models, and graphics programming using OpenGL and C/C++
CSC_51073_EP Image Analysis & Computer Vision
5,0 ECTS
Mathieu Brédif
PrerequisiteGeneral programming skills
Introduction to image processing and computer vision: image representation, edge detection, segmentation, retargeting, filtering, etc. This course presents classical approaches of computer vision and object detection: feature extractions, classification; as well as an introduction to recent classification methods based on deep convolutional networks.
Programming language: Python.
CSC_51074_EP Digital représentation and analysis of shapes
5,0 ECTS
Mathieu Desbrun, Pooran Memari
PrerequisiteGeneral programming skills
ConflictCSC_5IM23_SU (Advanced Computer Graphics)
This course will introduce the fundamental concepts for creating and analyzing shapes on the computer. We will start with generating and representing smooth curves in 2d using splines and Bézier curves. We will then move to various techniques for shape representation in 3d with special emphasis on triangle meshes and associated methods. At the same time, we will introduce methods for shape *analysis* and in particular defining and computing similarity between shapes, and shape matching (establishing correspondences between points on shapes).
Programming language: C++.
CSC_51085_EP Computer Animation
5,0 ECTS
PrerequisiteC++ programming, a foundational computer graphics course (such as CSC_4IG03_TP or CSC_51074_EP)
ConflictCSC_5IM23_SU (Advanced Computer Graphics)
Course presenting 3D computer Animation and Simulation methods for real-time and interactive Graphics applications. Topics: Virtual character animation, Physically-based simulation to interact with solid and deformable objects: Collision and interaction between elastic and plastic shapes, cloth simulation, fluid simulation.
CSC_52062_EP Computational Geometry
5,0 ECTS
Luca Castelli Aleardi, Pooran Memari
PrerequisiteGeneral programming and geometric background.
This course is a walk through computational geometry problems: a young discipline of computer science that studies from a combinatorial and algorithmic point of view the properties of geometric objects such as point clouds, arrangements, geometric graphs, or even triangulation. Examples of such problems are convex envelopes, Delaunay triangulation, point cloud reconstruction, approximation of NP-complete geometric, or the efficient location of points in large dimensions.
Programming language: C++.
CSC_52084_EP Image Synthesis
5,0 ECTS
PrerequisiteC++ programming
ConflictCSC_5IM23_SU (Advanced Computer Graphics)
This course presents the principles, algorithms and techniques of image synthesis. It deals in particular with digital models of shape, appearance, lighting and sensors present in a 3D scene. The rendering equation, as well as standard illumination, shading and reflectance models are presented. Various rendering algorithms based on these models are detailed, including rasterization (projective rendering) and ray tracing. Real-time rendering, GPU programming and hierarchical spatial data structures are also covered. Finally, an opening towards global illumination concludes the course.
Programming language: C++.
CSC_53433_EP Smart models for 3D creation and animation
2,5 ECTS
Marie-Paule Cani
PrerequisiteC++ programming, basis of computer graphics and computer animation, basis of machine learning
This course presents recent advances in 3D computer graphics, and more particularly in the subfields on modeling and animation, which rely on artificial intelligence. We'll cover first user-centered creative AI (also called "Expressive modeling and animation"), i.e. intelligent 3D models helping users in their creative tasks ; and second, the use of AI for training characters able to navigate and locomote autonomously in 3D environments.

Lab programming language: C# with Unity. Labs based on project mixing machine learning with graphics in Unity.
CSC_5IM23_SU Advanced Computer Graphics
6,0 ECTS
Kiwon Um, Amal Dev Parakkat, Jonathan Fabrizio
Prerequisitea foundational computer graphics course (such as CSC_4IG03_TP, CSC_51074_EP, or equivalent)
ConflictCSC_52084_EP, CSC_51085_EP, CSC_51074_EP
Advanced areas of 3D computer graphics with particular emphasis on geometric modeling with 3D surface meshes, realistic image synthesis, real-time rendering for video games, and simulations for special effects (e.g., deformable objects and fluids).
CSC_4IG03_TP Fundamentals of Computer Graphics
5,0 ECTS Cycle Ingé TP
Amal Dev Parakkat, Kiwon Um
Theoretical and practical concepts of 3D computer graphics and its applications: shape modeling, image synthesis, geometric processing and analysis, computational geometry, computer animation and simulation, interactive 3D applications

Design

HSS_5ID30_TP Critical UX
2,5 ECTS M1 Recherche en Design
Panos Mavros
Notecapacity constraints apply
The integration of a user-centred reflection at the heart of the approach is a key element for the success of design projects. To improve the relevance and effectiveness of new products and services, it is necessary to take into account the contexts of use, social acceptability and appropriation of new technologies that are at the heart of innovation. This course will aim to familiarize you with different concepts related to the user experience, with design criteria, as well as with different user integration approaches, developed in design ergonomics.
HSS_5DE14_TP Workshop Visualization of the Futures ( Workshop Research Design + Informatics)
2,5 ECTS M2 Recherche en Design
Pauline Gourlet, Nathalie Bressa
Contemporary projections on possible futures are paradoxical, on one side transhumanism, on the other side collapsology, between the two climate changes. On the one hand, there is an injunction to the energy transition, on the other hand, an injunction to the ecological transition, and between the two, a questioning of their compatibility. How can we study and graphically represent all the scenarios that make up our future projections?

Mixed Reality

CSC_5IG01_TP Human-Computer Interaction for Mixed Reality
2,5 ECTS
Daniel Medeiros
This UE presents an introduction to Augmented/Virtual and Mixed Reality challenges from an Human-Computer Interaction Perspective. The class covers an introduction to fundamental concepts of AR/VR/MR and presents methods and techniques allowing to design and implement interactive applications. The class is accompanied by a practical hands-on implementation and evaluation of a Virtual Reality application developed in Unity3D.

The class covers the following topics: History of AR/VR, Current technology enabling AR/VR and Human Perception, Challenge of Input, Challenge of Haptics, Interaction Design for AR/VR, Application Scenarios for AR/VR, Current Research Problems and Challenges from CHI, UIST, IEEE VR, ISMAR, SIGGRAPH.

Multimodal/Robotics/Learning

CSC_51054_EP Machine and Deep Learning
5,0 ECTS
Michalis Vazirgiannis, Johannes Lutzeyer
PrerequisitePython programming, Basics of probability and statistics
Introductory level class on Machine Learning on generic data: Supervised Learning, Unsupervised Learning, Kernels, Neural Networks, Basics of Deep learning and Graph neural network.
CSC_52081_EP Reinforcement Learning and Autonomous Agents
5,0 ECTS
Jesse Read
PrerequisiteCSC_51054_EP (Machine and Deep Learning) or equivalent
This course selects a number of advanced topics to explore in machine learning and autonomous agents, in particular: Probabilistic graphicsal models (Bayesian networks), Multi-output and structured-output prediction problems, deep-learning architectures, Methods of search and optimization, Sequential prediction and decision making, Reinforcement learning.
CSC_5IA05_TA Learning for Robotics
2,5 ECTS
Mai Nguyen
This course will present some basic learning algorithms for robots : reinforcement learning and imitation learning. Students will have the chance to implement and try some of these algorithms on simple examples. Very wide application fields in cognitive robotics and social robotics will be presented.

Programming

CSC_0EL10_TP-EN Web Development
2,5 ECTS Cycle Ingé TP
James Eagan
This course presents methods and techniques for developing dynamic, modern, robust, safe websites. Topics: Internet and the Web, basic Web languages (HTML, CSS, JavaScript), rich dynamic content, server-side programming and frameworks, client-side and AJAX frameworks, website security.
CSC_0EL10_TP-FR Web Development
2,5 ECTS Cycle Ingé TP
James Eagan
This is the French version of CSC_0EL10_TP
CSC_0EL11_TP-EN Programming paradigms: theory and practice
2,5 ECTS
Daniel Medeiros
Presents main concepts, mechanisms and difficulties of current programming languages, which are illustrated in C++11 and Java. Also provides an introduction to Java Swing and event programming. A large part is devoted to practical work. Topics: programming paradigms, object-oriented programming, polymorphism, generic programming, lambdas, memory management, pointers and references, constness, graphical user interfaces, event management, MVC.
CSC_0EL11_TP-FR Programming paradigms: theory and practice
2,5 ECTS
Simon Perrault
This is the French version of CSC_0EL11_TP.
TP-MN912 Audio-Visual Transport
2,5 ECTS
Jean Le Feuvre
Principles, Protocols and advanced techniques for Audio-Visual content delivery. Associated Web Technologies: HTML5 video, Media Source Extension, Encrypted Media Extension, XHR/Fetch

Project

CSC_4IG08_TP HCI/Graphics Project Seminar
2,5 ECTS
Simon Perrault, Kiwon Um
Project in HCI or Graphics (M1)
PRJ_4ID22_TP Guided Research Project
5,0 ECTS
Amal Dev Parakkat
This module allows students to experience and be involved in ongoing research projects inside of teams of IP Paris. It is the students responsibility to contact a researcher in their field of interest beforehand and ask about the possibility and scope of such a project before enrolling in this module! If both agree on a project, the student can enroll in the module and will be provided a grade at the end of the second period.


The goal of the project is to involve students that are interested in research in ongoing research projects of the individual team. This can be in the form of an individual research project of the student in collaboration with a supervisor, or involving the student as part of a contributor inside an already going research project. The ideal goal should be to create or contribute to a scientific publication. However, the type of deliverables at the end of the project (e.g., source code, documentation, data set) will be defined with the supervisor of the project beforehand and can vary from research project and team.


The course ends with a presentation of the students contribution to the research project inside of the individual team (either as part of a research meeting or as a dedicated event). The supervisor of the project is in charge of evaluating the quality of the outcome and providing a grade and its justification to the student in form of a short paragraph, describing the quality of the work and potential fields of improvement for the future.
PRJ_4ID23_TP Guided Research Project
5,0 ECTS
Amal Dev Parakkat
This module allows students to experience and be involved in ongoing research projects inside of teams of IP Paris. It is the students responsibility to contact a researcher in their field of interest beforehand and ask about the possibility and scope of such a project before enrolling in this module! If both agree on a project, the student can enroll in the module and will be provided a grade at the end of the second period.


The goal of the project is to involve students that are interested in research in ongoing research projects of the individual team. This can be in the form of an individual research project of the student in collaboration with a supervisor, or involving the student as part of a contributor inside an already going research project. The ideal goal should be to create or contribute to a scientific publication. However, the type of deliverables at the end of the project (e.g., source code, documentation, data set) will be defined with the supervisor of the project beforehand and can vary from research project and team.


The course ends with a presentation of the students contribution to the research project inside of the individual team (either as part of a research meeting or as a dedicated event). The supervisor of the project is in charge of evaluating the quality of the outcome and providing a grade and its justification to the student in form of a short paragraph, describing the quality of the work and potential fields of improvement for the future.
PRJ_4ID24_TP Guided Research Project
10,0 ECTS
Amal Dev Parakkat
This module allows students to experience and be involved in ongoing research projects inside of teams of IP Paris. It is the students responsibility to contact a researcher in their field of interest beforehand and ask about the possibility and scope of such a project before enrolling in this module! If both agree on a project, the student can enroll in the module and will be provided a grade at the end of the second period.


The goal of the project is to involve students that are interested in research in ongoing research projects of the individual team. This can be in the form of an individual research project of the student in collaboration with a supervisor, or involving the student as part of a contributor inside an already going research project. The ideal goal should be to create or contribute to a scientific publication. However, the type of deliverables at the end of the project (e.g., source code, documentation, data set) will be defined with the supervisor of the project beforehand and can vary from research project and team.


The course ends with a presentation of the students contribution to the research project inside of the individual team (either as part of a research meeting or as a dedicated event). The supervisor of the project is in charge of evaluating the quality of the outcome and providing a grade and its justification to the student in form of a short paragraph, describing the quality of the work and potential fields of improvement for the future.