Le parcours AIDN du Master Informatique de l'UBS a pour objectif de former des informaticiens de haut niveau dans les domaines de l'interaction homme-machine, la simulation 3D, la capture de mouvement, le traitement des données massives et l'apprentissage.
Les enseignements se déroulent sur deux années, chacune divisée en deux semestres. La 1re année comporte des unités d'enseignement permettant de consolider les connaissances généralistes en informatique. La 2e année propose des cours plus spécialisés. Le dernier semestre est constitué par un stage de six mois dans une entreprise ou dans un laboratoire de recherche.
Plusieurs perspectives de travail sont offertes aux étudiants de la formation à lʼissue de leur diplôme : Ingénieur de développement de systèmes informatiques de traitement de données, dans le secteur du Big Data, de lʼimage et de lʼaudiovisuel (publicité, design, cinéma, jeux vidéo, architecture...), dévelopeur/chef de projet dans une ESN, Ingénieur R&D...
M1 - Semestre 1 | |
---|---|
INF2160 | Concurrence dans les systèmes |
INF2162 | Programmation multi-paradigmes |
INF2169 | Introduction à l’IA |
INF2164 | Veille technologique |
INF2110 | Introduction à l'informatique graphique |
UE 6 | Culture Générale (Anglais, Droit) |
M1 - Semestre 2 | |
---|---|
INF2244 | Programmation Web |
INF2245 | Calcul haute performance pour le Big Data |
INF2204 | Systèmes d'information décisionnels et entrepôt de données |
INF2212 | Projet tutoré |
INF2251 | Apprentissage automatique |
UE 6 | Culture Générale (Anglais, Communication) |
M2 Semestre 1 | |
---|---|
INF3005 | Traitement Automatique du Langage et de la Parole |
INF3001 | Simulation et applications interactives |
INF3002 | Mouvement et intelligence artificielle |
MIS2320 | Deep Learning |
INF3004 | Science des données et fouille du Web |
INF3006 | Outils Méthodologiques pour la Recherche et l'Entreprise |
M2 Semestre 2 | |
---|---|
UE 1 | Stage |
Depuis 2011, lʼUBS proposait un master dʼInformatique Web, Multimedia, Réseau (Master WMR). Ce master WMR fait place au master dʼInformatique (parcours AIDN et SAIM) à partir de lʼannée universitaire 2017/2018. Le changement dʼenseignements se fait progressivement : en septembre 2017 (année 2017/2018) pour le M1 et en septembre 2018 (année 2018/2019) pour le M2 SAIM et le M2 AIDN.
Autrement dit, en 2017/2018 :
Ce cours est une introduction aux applications concurrentes. Il s’agit de comprendre les mécanismes qui permettent qu’une machine exécute plusieurs tâches en quasi-simultanéité, et d’acquérir les compétences permettant d’écrire des applications concurrentes. Le cours présente les différents concepts théoriques de la concurrence en s’appuyant sur le système Linux.
Prérequis : Programmation C et Java
L’objet de ce cours est d'étudier les mécanismes de programmation multi-paradigmes, qui exploitent de façon conjointe la programmation impérative, déclarative ou fonctionnelle. Le support d’exécution sur lequel s’appuie le cours est Scala, langage dont la conception a été guidée dès l’origine par la possibilité de faire cohabiter de manière cohérente ces différents paradigmes, tout en conservant une compatibilité optimale avec le code Java.
Cette unité d’enseignement s’intéresse à la représentation et au traitement des données numériques.
Les cours sont associés à des travaux pratiques en Python.
Dans ce cours, nous proposerons une introduction aux concepts fondamentaux informatiques de l’intelligence artificielle. Nous aborderons les questions suivantes :
La partie pratique et les projets associés seront en python.
Ce cours constitue une initiation à la veille technologique. L’objectif est de comprendre les enjeux de cet exercice (que ce soit à titre individuel ou au sein d’une entreprise), et d’acquérir les compétences permettant de réaliser une veille ciblée et efficace sur des technologies précises.
Au cours du semestre les étudiants s’exerceront à la veille sur des sujets de leurs choix ou sur des sujets imposés, et restitueront le fruit de cette veille sous la forme de comptes-rendus écrits ou de présentations orales.
Cours : 21H ; TP : 21H
Ce cours est une introduction à l’informatique graphique. Il s’agit de comprendre comment dessiner des primitives 2D à l’écran, puis comment modéliser et transformer une scène 3D pour l’afficher sur un écran 2D. Une fois les bases posées, nous verrons comment modéliser des objets plus complexes et comment leur associer des matériaux afin de leur donner un aspect plus ou moins métallique et de les colorer. Ces notions seront mises en pratique avec OpenGL et GLSL.
Ce cours constitue une introduction aux systèmes distribués, vus sous l’angle de la programmation. Après une définition de ce qu’est un système distribué, et la présentation des différents concepts et modèles s’y appliquant, on étudiera plusieurs techniques de bases permettant le développement d’applications en Java : la communication à travers les sockets TCP/UDP, l’appel de méthodes à distance (RMI) et la communication via un intergiciel orienté messages (JMS).
Ce cours concerne l’étude et la pratique de la pile Javascript en développement Web Client et Serveur (full stack) : Javascript, node.js, jQuery, Ajax, HTML 5, express, Pug (Jade), Angular ainsi que les bases de données noSQL MongoDB.
Ce cours aborde la problématique du traitement des masses de données d’un point de vue matériel, algorithmique et programmation. Après une présentation des métriques pertinentes pour les applications Big Data, en terme de quantité de calculs, de mémoire et d’entrées/sortie, plusieurs techniques de parallélisation sont étudiées. Les principaux paradigmes de calcul haute performance sont ensuite comparés à travers leurs mise en œuvre avec les outils de programmation phares du domaine : Hadoop et sa galaxie (HDFS, HBase, Hive, Spark, Pig), Cuda, OpenCL...
Trois supports matériels du parallélisme sont expérimentés en TP : les instructions SSE des micro-processeurs, les cartes graphiques et les clusters de serveurs.
Cours : 21H ; TD : 21H
En informatique décisionnelle, on est amené à traiter de grands ensembles de données, provenant de sources hétérogènes diffuses internes ou externes à l’entreprise. Ces données sont stockées dans des entrepôts, organisées par ‘métiers’ et décrites suivant des dimensions ou axes d’analyse. Cet enseignement a pour but d’apporter les éléments pour :
Pré-requis : Connaissance en système d’information et d’un SGBD [INF2105].
Bibliographie :
Ce cours est orienté vers les théories et modèles de la science de l’interaction. Il présente également le domaine de l’expérience utilisateur, du design graphique et de l’évaluation ergonomique. Enfin, il développe, dans un contexte historique, les différents paradigmes d’interaction avec une vision prospective sur les évolutions futures.
Cette unité d’enseignement est une introduction aux fondamentaux de l’analyse de données et du machine learning.
Cette unité d’enseignement est une introduction aux fondamentaux de l’analyse de données et du machine learning.
Les projets ont pour objectif d’apporter aux étudiants une expérience pratique dans la réalisation d’un projet en groupe (répartition des tâches, gestion des sources) dans une relation maîtrise d’ouvrage (représentée par un chercheur en informatique qui porte le projet) - maîtrise d’oeuvre (représentée par le groupe d’étudiants).
Face à un besoin exprimé par le chercheur, le groupe projet doit, dans un premier temps, proposer une solution et l’organisation à mettre en oeuvre pour la réaliser puis, une fois la proposition validée par le chercheur, la réaliser. Un soin particulier est apporté pour former les étudiants aux meilleures pratiques du monde de l’entreprise en particulier sur la communication maîtrise d’oeuvre - maîtrise d’ouvrage ainsi que sur le respect des engagements pris. Les projets sont en général l’occasion pour les étudiants de réaliser un projet de sa phase d’analyse à sa réception et d’approfondir ou découvrir les méthodes et technologies nécessaires à la réalisation du projet.
L’évaluation est faite sur la qualité des livrables et la gestion du projet.
Ce cours constitue une initiation à l’administration d’un parc d’équipements informatiques. Tout au long du semestre les étudiants sont amenés à assurer collectivement l’administration d’un ensemble de machines dans une salle dédiée.
Prérequis : Notions de bases en système d’exploitation, programmation de scripts shell, bonne compréhension de TCP/IP
Cours : 21H ; TP : 21H
Objectifs :
Contenu :
Bases de l’apprentissage par ordinateur (classification supervisée et non-supervisée), langage de programmation scientifique (python).
Ce cours porte sur l’interaction humain machine dans un contexte de mobilité. Il aborde en particulier la conception d’interface pour les dispositifs tactiles et les objets connectés. Il prolonge le cours interaction avancée de master 1.
Mots-clés : IHM, human centered computing, interaction tactile, interaction vocale, interaction vestimentaire, assistant, réalité augmentée, mobile design, persuasion design.
Cours : 21H ; TD : 21H
Cours : 21H ; TP : 21H
Ce cours est un cours avancé d’informatique graphique qui se focalise sur l’animation et la simulation de phénomènes 3D en temps-réel. Ces simulations sont couplées à des techniques de capture du mouvement (UE Mouvement et Intelligence Artificielle) pour créer des applications interactives contrôlées par l’humain. Nous verrons aussi comment valider / améliorer les couplages et les applications réalisées à l’aide d’études perceptuelles.
La partie pratique de ce cours est un projet sur lequel les étudiants travaillent en petits groupes pendant toute la durée du semestre dans notre laboratoire dédié, le VirtualLab, et expérimentent avec des capteurs et des dispositifs de rendu innovants tels que le Leap Motion, le Myo Armband, l’Open BCI, l'Hololens ou encore l’HTC Vive et l'Oculus Quest.
Cours : 21H ; TD : 21H
Ce cours explore les modèles, technologies et applications liées à l’ingénierie du mouvement, en intégrant l’acquisition, la détection et la reconnaissance de gestes, la reconstruction et la génération du mouvement, à partir de modèles d’apprentissage automatique. L’interaction basée mouvement appliquée à des systèmes simulés (visualisation 3D ou sonification) est ensuite étudiée et mise en œuvre à travers un projet commun avec l’UE Simulation et Applications Interactives.
Des travaux pratiques illustrent chaque partie du cours. Le projet réalisé à mi-parcours permet de manipuler les dispositifs innovants du studio de capture de mouvement et de l’atelier VirtualLab (OpenBCI, caméras Leap, casques de réalité virtuelle ou augmentée).
Cette UE a pour but de developper les connaissances du monde de l'entreprise et du monde de la recherche à travers des conférences de nature variée et l'organisation de séminaires.
Cours : 21H ; TD : 21H
Cette unité d’enseignement permet d’appréhender les méthodes et outils informatiques avancés (algorithmes d’indexation et de recherche, machine learning, search engine) pour la recherche, le filtrage et la classification d’information dans les masses d’information semi-structurées multimédia (paradigme No SQL). Une application au web-mining est mise en œuvre tout au long du semestre dans le cadre d’une pédagogie orientée projet.
Cette UE a pour but de developper les connaissances du monde de l'entreprise et du monde de la recherche à travers des conférences de nature variée et l'organisation de séminaires.