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_TPQuant UX - Quantitative analysis of User Experience Data
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_TPMaking Physical Representations of Data
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/).
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.
CSC_5ID02_PSFundamentals of HCI
2,5 ECTS Master HCI, Paris-Saclay
Michel Beaudouin-Lafon
P1 Wednesday 09/09-21/10 13h30-17h00
Notestrict capacity constraints apply
PUIO B108 (Paris-Saclay)
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_PSAdvanced Topics in HCI
2,5 ECTS Master HCI, Paris-Saclay
Michel Beaudouin-Lafon
P2 Thursday 05/11-17/12 13h30-17h00
PrerequisiteCSC_5ID02_PS (Fundamentals of HCI)
Notestrict capacity constraints apply
In PUIO C205 (Paris-Saclay)
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_PSGenerative Theories of Interaction
2,5 ECTS Master HCI, Paris-Saclay
Michel Beaudouin-Lafon
P3 Thursday 07/01-25/02 9h00-12h30
PrerequisiteCSC_5ID02_PS and CSC_5ID03_PS
Notestrict capacity constraints apply
In PUIO E107 (Paris-Saclay)
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_PSDesigning Human-Centered AI
2,5 ECTS Master HCI, Paris-Saclay
Janin Koch
P3 Thursday 07/01-11/02 13h30-17h00
PrerequisiteIntroduction to HCI (CSC_4IG06_TP) or Design User Experience (HSS_5ID30_TP).
NoteStrict capacity constraints apply.
NoteThis is a difficult course.
In PUIO E212 (Paris-Saclay)
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_PSEvaluation of Interactive Systems
2,5 ECTS Master HCI, Paris-Saclay
P2 Wednesday 04/11-16/12 13h30-17h00
Notestrict capacity constraints apply.
In PUIO E105 (Paris-Saclay)
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_PSCollaborative Computing
2,5 ECTS Master HCI, Paris-Saclay
P3 Wednesday 06/01-24/02 13h30-17h00
PrerequisiteM2 only, CSC_4IG06_TP (Introduction to Human-Computer Interaction) or CSC_5ID02_PS (Fundamentals of HCI)
Notestrict capacity constraints apply.
In PUIO E105 (Paris-Saclay)
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_PSMotivational and Persuasive Interaction
2,5 ECTS Master HCI, Paris-Saclay
P3 Monday 04/01-22/02 13h30-17h00
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_4IG05_TPIntroduction to Human-Computer Interaction
This course presents methods and techniques for designing efficient, user-friendly user interfaces. The course focuses on both software engineering aspects (software design, advanced programming, toolkits...) and on human factors (user-centered design, evaluation, ergonomics ...). It also includes an introduction to new interactive techniques (gestural interaction, augmented reality, tangible interfaces, wearable computing ...)
Topics covered include User-centered design, brainstorming, design and prototyping, user evaluation; Ergonomic principles, perception, action, pointing, Web ergonomics; Software design, development tools; Advanced Interfaces (courses extending 4IG02): Statecharts, graphical models, performance, internationalization, SVG, animations ...; 2D and 3D gestural interaction, multitouch, command selection, text entry; Emerging techniques (augmented reality, tangible interfaces, mobile interaction, wearable computing, groupware, etc.)
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++
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.
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.
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++.
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++.
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).
P2 Monday 23nov to 1feb 8h30-11h45 AND Wednesday 25nov-03feb 13h30-16h45 — Calendar
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
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_TPWorkshop Visualization of the Futures ( Workshop Research Design + Informatics)
2,5 ECTS M2 Recherche en Design
Pauline Gourlet, Nathalie Bressa
P2 Week 4jan-8jan 9:00-18:00
Notestrict capacity constraints apply
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?
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.
PrerequisitePython programming, Basics of probability and statistics.
Capacity limits apply.
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_EPReinforcement Learning and Autonomous Agents
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.
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.
NoteThis class is offered in French in P2 and in English in P4.
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.
NoteThis class is offered in French in P2 and in English in P4.
This is the French version of CSC_0EL10_TP
CSC_4EL11_TP-ENProgramming paradigms: theory and practice
2,5 ECTS
Daniel Medeiros
P2 Tuesday 24/11 to 02/02 13h30-16h45 — Calendar
NoteThis class is offered in French on Fridays or in English on Tuesdays.
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.
Principles, Protocols and advanced techniques for Audio-Visual content delivery. Associated Web Technologies: HTML5 video, Media Source Extension, Encrypted Media Extension, XHR/Fetch
CSC_5ID08_TPAdvanced Programming of Interactive Systems
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.
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_TPGuided 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.