LICENCE (LMD) - INFORMATIQUE



L1 MI

BCC Compétences scientifiques S1

Introduction à l'Informatique

Crédits ECTS : 5.5
Semestre d'enseignement : S1
Volumes horaires : CM : 18, TP : 24
Descriptif :
Ce cours propose une introduction générale à l'Informatique. Il a pour but en particulier :
  • de présenter les différents domaines de l'informatique (architecture, réseau & Web, traîtement des données, algorithmique, langages de programmation, conception d'application interactives)
  • de fournir une initiation à l'utilisation des systèmes Unix et des outils associés (ligne de commande, concepts de bases)
  • de donner des bases de programmation en Python
Objectifs d'enseignement :
  • Notion de bases de l'informatique (ordinateur, réseaux, systèmes, programmes)
  • Bases du langage Python
Organisation de l'UE :
L'UE s'organise en cours accompagnés de séances de TP. L'évaluation sera faite par contrôle continu (rendus de TPs, QCM, interro).
Pré-requis :
Aucun

Introduction à la Programmation Impérative

Crédits ECTS : 6
Semestre d'enseignement : S1
Volumes horaires : CM : 18, TP : 24
Descriptif :
Le contenu de l'UE se décompose comme suit:
  • Introduction à la programmation impérative (en C++): variables, types, conditionnelles, boucles, fonctions, tableaux (1D et 2D), chaînes de caractères, fichiers, compilation séparée.
  • Bonnes pratiques de programmation: tests, documentation, débogage, programmation modulaire.

Responsable : Nicolas Thiéry
 
Objectifs d'enseignement :
Introduction à la programmation impérative (en C++)
Organisation de l'UE :
L’enseignement s’effectue sous la forme d'amphi (???, ~100 étudiants) et de séances de TD+TP (1h45+2h) en petits groupes (~25-35 étudiants). Les premières séances s'appuient sur des feuilles de travail interactives (Jupyter) permettant d'aborder les premières notions dans un environnement web simple. Par la suite est introduite la compilation. Les dernières semaines sont consacrées à un projet de programmation (traitement d'image, analyse de données libres, jeu 2048, ...). Tout du long, les étudiants ont à leur disposition des exercices en ligne (PL) pour s'entraîner et s'auto-évaluer.   Ces enseignements sont complétés par une ou deux conférences invitées sur les grands enjeux sociétaux de l'informatique.
Pré-requis :
Aucun

Calculus

Crédits ECTS : 7.5
Semestre d'enseignement :
Volumes horaires : CM : 24, TD : 42
Descriptif :
1- Fonctions usuelles et leurs réciproques (trigonométriques, exp, log)
2- Suites numériques: définition et opération sur les limites, suites adjacentes, Théorème Bolzano Weierstass.
3- Fonctions d'une variable réelle:
Continuité, TVI, théorème de la bijection
Dérivabilité, TAF, Taylor à l'ordre n
Dérivée d'une composée, de réciproques
Développements limités, calcul de limites
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

Algébre et géométrie

Crédits ECTS : 4
Semestre d'enseignement :
Volumes horaires : CM : 18, TD : 24
Descriptif :
1- Solution d'équations linéaires, pivot de Gauss
2- Espaces vectoriels
Familles libres et génératrices
Théorème de la base incomplète
Théorème de la dimension
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

BCC Compétences scientifiques S2

Programmation Modulaire

Crédits ECTS : 5.5
Semestre d'enseignement : S2
Volumes horaires : CM : 18, TP : 24
Descriptif :
Le but de ce cours est de comprendre les difficultés rencontrés dès que l'on veut écrire un logiciel dépassant quelques centaines de lignes de code. Pour ceci, il faut:
  • organiser et structurer les données en contrôlant les droits et responsabilités;
  • décomposer le programme en composants indépendants que l'on pourra développer, tester et réutiliser séparément
Nous aborderons les notions suivantes:
  • modélisation informatique, analyse descendante, modularisation
  • notions de structure de classe et d'objet
  • interface et implémentation, principe d'encapsulation, données privées
  • bibliothèque logicielle et compilation séparée
  • tests unitaires
L'objectif pratique de ce cours est la réalisation d'une simulation, d'un jeu avec des agents (personnage, ...) évoluant dans un monde selon des règles précises de comportement.

Responsable : Florent Hivert
Objectifs d'enseignement :
initiation aux notions de structure et d'objet ainsi qu'au génie logiciel
Organisation de l'UE :
CM + TP + Projet
Pré-requis :
Maîtrise des notions de base de programmation impérative (variables, boucles, conditions, fonctions).
 

Algorithmique et Structures de données

Crédits ECTS : 6
Semestre d'enseignement :
Volumes horaires :
Descriptif :
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

Calcul intégral

Crédits ECTS : 7.5
Semestre d'enseignement :
Volumes horaires :
Descriptif :
1- Intégration
Définition, sommes de Riemann,
Théorème fondamental d'analyse,
Techniques de calcul: IPP, changement de variables
Primitives usuelles
2- Equations différentielles:
linéaires d'ordre 1 et 2
A variables séparées, équation de Ricatti, d'Euler.
3- Nombres complexes: Exponentielle complexe, racines de l'unité
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

Algèbre linéaire 1

Crédits ECTS : 4
Semestre d'enseignement :
Volumes horaires :
Descriptif :
1- Applications linéaires: Noyau, Image, Théorème du rang

2- Représentation matricielle d'une application linéaire

3- Changement de base
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

BCC Transverse

UEs obligatoires

Lang - Anglais 1b

Crédits ECTS : 2.5
Semestre d'enseignement :
Volumes horaires :
Descriptif :
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

PPEI 1 Explorer un Environnement Professionnel

Crédits ECTS :
Semestre d'enseignement :
Volumes horaires :
Descriptif :
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

PPEI 2 Comprendre l'Entreprise 1ère partie

Crédits ECTS :
Semestre d'enseignement :
Volumes horaires :
Descriptif :
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

SPOC Vérités et contre-vérités

Crédits ECTS :
Semestre d'enseignement :
Volumes horaires :
Descriptif :
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

Introduction à la Science des données 1

Crédits ECTS : 4
Semestre d'enseignement : S2
Volumes horaires : CM : 14, TP : 14
Descriptif :
La "science des données" occupe une place centrale dans ce que nous appelons de nos jours "intelligence artificielle" car les "machine intelligentes" modernes sont douées d'apprentissage par l'exemple. Donc il n'y a pas de machine intelligente sans beaucoup de données et sans bonnes données. Ce cours vous donnera un aperçu de toute la chaîne de traitement des données à partir d'un exemple simple de vision par ordinateur, depuis l'acquisition des données jusqu'à l'évaluation des performances de la "machine qui apprend" en passant par la visualisation des données, le pré-traitements, l'extraction de caractéristiques pertinentes, et la construction d'un modèle prédictif. Nous explorerons aussi la notion de biais dans les données. Au cours de trois TPs, vous pourrez vous familiariser avec les outils informatiques en Python qui sont les plus utilisés (numpy, pandas, scikit-learn). Vous vous lancerez alors (en binômes) dans un projet qui vous permettra d'approfondir un des aspects de la chaîne de traitement. Le plus avancés pourront choisir d'essayer des méthodes de deep-learning (apprentissage profond basé sur des modèles simplifiés de réseaux de neurones). A l'issue de ce cours, nous espérons avoir éveillé votre curiosité et vous pourrez alors aborder en L2 des projets de plus grande envergure et résoudre des mini-challenges tels que la recommandation de films ou de restaurants, la reconnaissance des images d'animaux, de plantes, d'objets ou de personnes, le dépistage des maladies ou l'évaluation de l'efficacité de médicaments, l'identification des bons ou des mauvais payeurs, de clients potentiels, ou de fraudeurs, etc. Voir les projets des années précédentes: http://saclay.chalearn.org/   Responsables: Isabelle Guyon
Objectifs d'enseignement :
  • Familiarisation avec la Science des Données
  • Programmation Python dans un cadre appliqué et ludique
Organisation de l'UE :
Un cours chaque semaine de 2h, suivi de 2h de TPs à partir de la deuxième semaine. Les TP 1, 2, et 3 seront commencés en classe, finis à la maison, et notés (par correction automatique) 1. Introduction: Qu'est-ce que la science des données? + TP1 2. Visualisation et analyse exploratoire de données réelles, variance des résultats. + TP2 3. Overvue de la chaîne de traitement. Présentation des projets. + TP3 4. Dépendances, corrélation et sélection de variables + TP4 = retour sur proposition de projet 5. Méthodes de classification multi-variées + TP5 = programmation du projet 6. Biais dans les données et dans les modèles + TP6 = analyse des résultats du projet 7. Apprentissage profond (réseaux de neurones) + TP7 = préparation du rapport de projet et d'une video (3 min)
 
Pré-requis :
Notions d'algèbre linéaire et de géométrie (vecteur, coordonnées, points, droites, équations de droite). Notions de probabilités (tirages aléatoires, moyenne, variance), notions de programmation en Python.

1 UE au choix S1

Réussir

Crédits ECTS :
Semestre d'enseignement :
Volumes horaires :
Descriptif :
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

Remédiation

Crédits ECTS :
Semestre d'enseignement :
Volumes horaires :
Descriptif :
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

Introduction à l'Informatique Graphique

Crédits ECTS : 2.5
Semestre d'enseignement : S1
Volumes horaires : CM : 6, TP : 15
Descriptif :
Ce cours permet de découvrir une bibliothèque graphique à deux dimensions, les fonctions de dessin et la notion de contexte graphique dans un système interactif fenêtré. Nous abordons le dessin vectoriel (formes géométriques) et le dessin matriciel (pixel par pixel), la composition additives des couleurs (RGB et HSB) et la notion de transparence des pixels (canal alpha). L’interaction avec le système est abordée au travers de la souris et du clavier qui peuvent contrôler les nombreux paramètres graphiques abordées dans ce cours. Ce cours est illustré par de nombreux exercices graphiques qui permettent de comprendre visuellement l'intérêt de notions de géométrie (trigonométrie, topologie, algèbre des vecteurs, etc.) ainsi que certains algorithmes informatiques.

Responsable : Frédéric Vernier
Objectifs d'enseignement :
Familiarisation avec une bibliothèque d'affichage et compétences de mise en œuvre d'algorithme de dessin.
Organisation de l'UE :
L'UE se découpe classiment en cours et TPs.
Pré-requis :
Aucun

Option de Mathématiques

Crédits ECTS :
Semestre d'enseignement :
Volumes horaires :
Descriptif :
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

(trans)-Média, Sources, Ethique

Crédits ECTS :
Semestre d'enseignement :
Volumes horaires :
Descriptif :
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

L2 Informatique

BCC Identification d'une solution informatique 1

Mathématiques pour l'Informatique

Crédits ECTS : 5
Semestre d'enseignement : S3
Volumes horaires : CM : 18, TD : 24
Descriptif :
Ce cours introduit le langage propositionel et les propriétés fondamentales qui s'y appliquent. On en déduit la construction des ensembles et leurs propriétés. Les notions de surjectivité, injectivité et bijectivité sont introduites. Toutes ces notions debouchent naturellement sur la notion de dénombrement des ensembles. On rappelle des notions de probabilités discrètes, conditionnement et indépendance des évenements.
Le cours s'achève avec les lois de probabilités, et quelques notions pour caractériser des distributions discrètes ou continues (moments d'une loi). On introduit également quelques bases de statistiques, en complément. Cette partie consitue une formalisation et une suite de info 114.   Selon les besoins, des rappels d'algèbre sont prodigués.

Responsable: François Landes
Objectifs d'enseignement :
Introduction au langage et aux méthodes mathématiques propres à l'informatique. D'une part, le langage propositionel et ce qui en découle d'une part, qui sont nécessaires pour aborder plus tard les preuves de programmes ou certaines méthodes pour les graphes. On insiste en particulier sur la rigueur des démonstrations. D'autre part, les probabilités et statistiques, qui sont indispensables en science des données.
Organisation de l'UE :
L'UE s'organise en cours accompagnés de séances de TD. L'évaluation se fait en partie par devoirs maisons (DM) c.a.d. contrôle continu, et d'examens écrits en temps limités (un partiel et un examen final). Il peut y avoir une occasionnelle séance de TP (python), et certains des DM peuvent être des mini-projets (python) à rendre. Responsable: François Landes
Pré-requis :
Introduction à la Science des Données #1 (info 114), notions de base d'algèbre, notions de base de calcul (sommes, intégrales, fonctions, dérivées) notions de base de python.

Introduction Programmation Fonctionnelle

Crédits ECTS : 3
Semestre d'enseignement : S3
Volumes horaires : CM : 9, TP : 12
Descriptif :
La programmation fonctionnelle est l'un des grands paradigmes de programmation. À l'inverse de la programmation impérative, axée sur la modification de valeurs en mémoire, la programmation fonctionnelle mets l'accent sur la notion de calcul (qui renvoie un résultat). L'UE aborde les concepts suivant :
  • Introduction au langagae OCaml
  • Programmation récursive sur les entiers
  • Types structurés (types algébriques, enregistrements) pour la modélisation de problèmes
  • Structure de listes persistantes et récursion structurelle
  • Polymorphisme
  • Iterateurs génériques sur les listes
Objectifs d'enseignement :
Introduction du paradigme de programmation fonctionnelle. Ce cours donne les bases de la programmation applicative (sans effets de bords) et récursive. Il met en avant la notion de fonction, en tant qu'objet de premirère classe du langage (au même titre que les entiers, les chaînes de caractères, …). Le cours propose aussi une introduction au langage OCaml.
Organisation de l'UE :
L'UE s'organise en cours accompagnés de séances de TD ou TP. L'évaluation se fait par des épreuves de contrôle continu (interrogations écrites, TP notés, devoirs) et un examen terminal écrit.
Pré-requis :
Notions de bases de programmation. Connaîssance des structures de liste chaînées et algorithmes associés (parcours, insertion, tris, …)

Outils Logiques et Algorithmiques

Crédits ECTS : 5
Semestre d'enseignement : S4
Volumes horaires : CM : 18, TD : 24
Descriptif :
Introduction de structures mathématiques utiles en informatique, leur utilisation pour modéliser un problème à résoudre, techniques de raisonnement et algorithmes associés.
  • Graphes (chemins, parcours, connexité, coloration)
  • Arbres (exploration, arbres de recherche)
  • Définitions par clôture (définition et raisonnement par récurrence)
  • Termes (manipulation symbolique de formules ou de programmes)
  • Relations d’équivalence (classes, union-find)
  • Relations d’ordres (terminaison, treillis, point fixe)
Le cours insiste sur l’utilisation rigoureuse des outils de modélisation et de raisonnement. Il fait également le lien avec la manipulation concrète de ces outils pour la résolution d’un problème donné, et contient pour cela une petite dose de programmation en OCaml.

Responsable : Thibaut Balabonski
Objectifs d'enseignement :
Étudier des structures permettant de modéliser et résoudre des problèmes informatiques, et apprendre à raisonner sur ces structures. Le cours mélange des aspects mathématiques et algorithmiques, et vise à la fois à découvrir des structures de données et algorithmes fondamentaux en informatique et à affûter ses capacités de raisonnement.
Organisation de l'UE :
L’UE s’organise en cours accompagnés de TD ou TP. L’évaluation se fait par des épreuves de contrôle continu (interrogations ou TP notés) et deux épreuves écrites (partiel et examen terminal).  
Pré-requis :
notions de bases de logique, d’ensembles, d’algèbre (mathématiques pour l’informatique), introduction à la programmation récursive.

Principes d'Interprétation des Langages

Crédits ECTS : 4.5
Semestre d'enseignement : S4
Volumes horaires : CM : 18, TP : 10, TD : 14
Descriptif :
  1. Généralités sur la compilation, l'analyse lexicale, syntaxique, sémantique. Notion de langage formel et lien avec les langages informatiques (de description, de programmation).
  2. Langages rationnels et analyse lexicale
    1. Expressions rationnelles et rationnelles étendues
    2. Automates finis et langages reconnaissables, théorème de Kleene (sans démonstration), automates déterministes, algorithme de déterminisation
    3. Bases de l'analyse lexicale
    4. Bases de lex et applications en TP
  3. Grammaires et analyse syntaxique
    1. Notion générale de grammaire.
    2. Grammaires algébriques (ou hors-contexte) et langages algébriques ; arbres de dérivation ambiguïté, syntaxe abstraite, priorité
    3. Analyse syntaxique : algorithme CYK, analyse LL(1)
    4. Bases de yacc et applications en TP
  4. Analyse sémantique et génération de code
    1. Définitions dirigées par la syntaxe (grammaires attribuées)
    2. Génération de code intermédiaire (code à trois adresses)
Responsable : Alain Denise  
Objectifs d'enseignement :
Compréhension des bases de l'analyse lexicale, syntaxique, sémantique et de certains outils de leur réalisation.
Organisation de l'UE :
Cours TD, TP. Un TP noté, un examen final sur table.
Pré-requis :
Notions de base en algorithmique, programmation basique en langage C

BCC Analyse de problèmes, données et systèmes 1

Architecture des Ordinateurs

Crédits ECTS : 5
Semestre d'enseignement : S3
Volumes horaires : CM : 18, TP : 24
Descriptif :
Ce cours a pour but d'introduire les mécanismes à l'oeuvre au sein d'un ordinateur, aussi bien à un niveau logiciel (programmation assembleur) qu'à un niveau plus fondamental sur le fonctionnement des circuits logiques et de l'algèbre booléenne. On verra en particulier
  • la représentation de l'information (nombres entiers, flottants, caractères) ainsi que les opérations arithmétiques en binaire.
  • une architecture logicielle MIPS32 : un jeu d'instruction RISC et la réalisation des fonctions essentielles d'un langage de haut niveau impératif.
  • les circuits combinatoires et séquentielles (fonctions élémentaires à l'aide de circuits, bits de mémoire)
  • une micro-architectuer non-pipelinée
  • une introduction au concept de pipeline
  La première partie du cours aura pour but de se familiariser avec le binaire, la représentation de l'information et le codage de fonctions de haut niveau en assembleur. La seconde partie aborde les circuits combinatoires et séquentielles ainsi que la micro-architecture.

Responsable : Aurélien Decelle
Objectifs d'enseignement :
comprehénsion des mécanismes fondamentaux d'un ordinateurs et comment ceux-ci interviennent dans le développement de haut-niveau
Organisation de l'UE :
L'UE s'organise en cours accompagnés de séances de TD et de TP. L'évaluation sera faite par contrôle continu (rendus de TPs, interro) ainsi qu'un partiel à mi-semestre et un examen.
Pré-requis :
Aucun

Réseaux

Crédits ECTS : 5
Semestre d'enseignement : S3
Volumes horaires : CM : 18, TP : 24
Descriptif :
L’UE détaille les principes et protocoles de l’architecture TCP/IP, plus particulièrement des couches réseau et transport. Le contenu du cours est le suivant : - Généralités sur les réseaux informatiques, architecture en couches OSI - Commutation en mode circuit et en mode datagramme - Protocoles de routage dans un réseau : les algorithmes de routage - Couche réseau IP : communication et nommage, adressage IPv4 et IPv6, masques et préfixes, structure des entêtes et services de la couche réseau, NAT, DHCP, ARP et NDP, gestion des erreurs : protocole ICMP. - Couche Transport : TCP et UDP, services et fonctionnalités, TCP : contrôle de flux et fenêtre glissante, contrôle de congestion et ses évolutions, évolutions de TCP. - Programmation sockets pour implémenter le fonctionnement des protocoles TCP et UDP.
Responsable : Lila Boukhatem
Objectifs d'enseignement :
Comprendre et maitriser les différents mécanismes et protocoles de communication des réseaux informatiques.
Organisation de l'UE :
  L'UE se sompose de cours, travaux dirigés et des travaux pratiques. Le contrôle continu comprend un partiel et un TP noté. L'épreuve terminale est un examen écrit.  
Pré-requis :
Programmation en C

Bases de données 1

Crédits ECTS : 5
Semestre d'enseignement : S4
Volumes horaires : CM : 18, TP : 24
Descriptif :
Le contenu du cours est le suivant : 1. L'introduction apporte une vision globale du développement des SGBSs ainsi que des grandes fonctionnalités de ceux-ci. 2. Conception d’un schéma relationnel. Il s’agit de savoir définir un schéma relationnel complet et correct, comprenant des tables, des contraintes, des vues. 3. Langages d’interrogation et de manipulation. L’accent est mis sur SQL et ses fondements.

Responsable : Nicole Bidoit
Objectifs d'enseignement :
Étude des principes des Systèmes de Gestion de Bases de Données (SGBD) relationnels et mise en pratique de ces principes
Organisation de l'UE :
Des travaux dirigés et des travaux pratiques avec un SGBD (PostgreSQL ou ORACLE) permettent de mettre en oeuvre les techniques étudiées en cours. Les étudiants développeront une mini-application permettant d'intégrer les différents concepts de bout en bout.   Contrôle continu : partiel (QCM avancé) + TP noté
Épreuve terminale : examen écrit
Pré-requis :
  • Programmation
  • Architecture des ordinateurs

Introduction à la Science des données 2

Crédits ECTS : 2.5
Semestre d'enseignement : S4
Volumes horaires : TP : 24
Descriptif :
La "science des données" occupe une place centrale dans ce que nous appelons de nos jours "intelligence artificielle" car les "machine intelligentes" modernes sont douées d'apprentissage par l'exemple. Cet enseignement sous forme de projet vous permettra d'approfondir les notions acquise en L1 (Introduction à la Science des Données #1). Les étudiants de master vous auront préparé des projets juste pour vous, sous forme de mini-challenges, sur des sujets très variés: recommandation de films ou de restaurants, la reconnaissance des images d'animaux, de plantes, d'objets ou de personnes, le dépistage des maladies ou l'évaluation de l'efficacité de médicaments, l'identification des bons ou des mauvais payeurs, de clients potentiels, ou de fraudeurs, etc. Votre mission sera de résoudre ces challenges en utilisant des outils Python tels que scikit-learn et keras. Vous travaillerez pas groupes de 6, comportant 3 binômes, chacun en charge d'un aspect du projet: visualisation, preprocessing, ou prédiction (classification ou regression).

Responsable : Isabelle Guyon
Objectifs d'enseignement :
L'objectif de ce cours est de se familiariser avec la Science des Données et la programmation en Python en s'amusant.
Organisation de l'UE :
L'UE est constitué de séances de TP. L'évaluation se fait par du contrôle continu et d'une note de projet.
Organisation de l'UE :
Pré-requis :
Introduction à la Science des Données 1

BCC Mise en œuvre des méthodes et outils informatiques 1

Introduction Programmation Objet

Crédits ECTS : 5
Semestre d'enseignement : S3
Volumes horaires : CM : 18, TP : 24
Descriptif :
Objectifs d'enseignement :
Principes de la programmation orientée objet, utilisation standard du langage java, notions d'environnements de développement
Organisation de l'UE :
Cours magistraux et TP encadrés, mini projet partiellement encadré. Évaluation : partiel, mini projet et examen final
Pré-requis :
Fondamentaux de la programmation impérative et des structures de données, notion de modularité  

Introduction à l'Interaction Humain-Machine

Crédits ECTS : 2.5
Semestre d'enseignement : S3
Volumes horaires : CM : 9, TP : 12
Descriptif :
Ce cours débute par un bref panorama du domaine de l'interaction humain-machine et introduit les concepts de base de l'interaction du point de vue de l'utilisateur humain et du point de vue de l'ordinateur. Il aborde ensuite la conception et l'évaluation d'interfaces utilisateur par l'intermédiaire d'un ensemble d'exercices permettant à l'étudiant de développer son sens critique et de mettre en pratique un ensemble de techniques de base pour concevoir des interfaces plus adaptées aux besoins et caractéristiques des utilisateurs. Le module met l'accent sur les techniques de prototypage rapide, qui ne nécessitent pas de développement logiciel et qui pourront être appliquées avec profit dans d'autres modules nécessitant le développement d'interfaces utilisateurs. Plan du cours : Bref historique de l'Interaction Humain-Machine Panorama des styles et techniques d'interaction
  • Eléments de psychologie humaine (perception / action / cognition)
  • Architecture logicielle des systèmes interactifs
  • Analyse critique d'interfaces
  • Conception et prototypage rapide
  • Evaluation qualitative et quantitative des interfaces
Responsable : Michel Beaudouin-Lafon
Objectifs d'enseignement :
Comprendre et mettre en pratique les principes de base de la conception et de l'évaluation des systèmes interactifs
Organisation de l'UE :
Le module est organisé en 6 séances d'1h ½ de cours et 6 séances de 2h de TD/TPs. L'évaluation consiste en un contrôle continu (questionnaires en ligne, rendus de TD/TPs) et un examen de fin de module.
Pré-requis :
Aucun

Programmation Objet et Génie Logiciel

Crédits ECTS : 5
Semestre d'enseignement :
Volumes horaires : CM : 18, TP : 24
Descriptif :
Ce cours pratique un aller-retour permanent entre des aspects de programmation objet (PO) et d’ingénierie du logiciel (GL). Thèmes abordés en programmation Java :
  • Classes, interfaces, classes paramétrées
  • Héritage et liaison dynamique
  • Itérateurs et lambda-expressions
  • Exceptions
  • Interface utilisateur
Thèmes abordés en génie logiciel :
  • Analyse et modélisation des besoins d’un système
  • Conception d’une architecture logicielle et d’une organisation de classes pour réaliser un système
  • Langage de modélisation graphique UML
  • Spécification d’un composant ou d’une opération
  • Validation et test d’un composant
 
Objectifs d'enseignement :
Approfondissement des concepts de la programmation objet, avec utilisation avancée du langage Java. Connaissance du cycle de vie des logiciels et des processus de développement. Outils de modélisation de systèmes logiciels et de support au développement à grande échelle. On vise à la fois la virtuosité dans la programmation d’un composant donné et la capacité à insérer ce composant dans un projet plus large. À la fin, l’étudiant doit être capable de produire du code Java lisible, robuste et réutilisable, ainsi que de lire le code source de projets réels.
Organisation de l'UE :
l’UE s’organise en cours accompagnés de TD ou TP. L’évaluation se fait par des épreuves de contrôle continu (TP notés ou mini-projets) et deux épreuves écrites (partiel et examen terminal).
Pré-requis :
S4

Informatique Graphique pour la Science des Données

Crédits ECTS : 4.5
Semestre d'enseignement : S4
Volumes horaires : CM : 18, TP : 24
Descriptif :
Ce cours aborde les aspects 2D et 3D du graphisme qui permettent de construire des visualisations interactives de données. Sans aborder les problèmes de réalisme ce cours s'attache à comprendre le pipeline graphique et comment l'utiliser pour faire passer à l'échelle un système de visualisation de grandes quantités de données. Par ailleurs le besoin de rendre les systèmes interactifs implique également de mettre en oeuvre des graphismes performants qui permettent l'exploration des données sans attendre le système.

Responsable : Frédéric Vernier
Objectifs d'enseignement :
acquisition des compétences particulières de la mise en place d'un affichage 3D. Maîtrise de l'ensemble du pipeline graphique des données jusqu'à l'affichage sur GPU.
Organisation de l'UE :
6CM sur le pipeline graphique performant et l'algorithmique graphique et 6CM sur la mise en œuvre dans un environnement concret. 4 TD sur l'algorithme graphique et 6 séance sur un mini projet.
Pré-requis :
Introduction au Graphisme et aux Systèmes Interactifs

BCC Transverse

UEs obligatoires

SPOC Enjeux de la transition écologique (2 ECTS)

Crédits ECTS :
Semestre d'enseignement :
Volumes horaires :
Descriptif :
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

Lang - Anglais 2a

Crédits ECTS : 2
Semestre d'enseignement :
Volumes horaires : TD : 25
Descriptif :
ANGLAIS GÉNÉRAL. Cette UE s'inscrit dans la continuité de l'UE Langue-Anglais1 : on prolongera notamment le travail sur la prononciation ainsi que l'approche actionnelle dans les 5 compétences à partir de thèmes choisis (interaction à travers de documents écrits et/ou audiovisuels centrés sur une problématique et un scénario de communication). Le travail se fera par groupes de niveau.
Objectifs d'enseignement :
Attendus de l'UE Langue-Anglais2 : Niveau B1 minimum dans les 5 compétences linguistiques
Organisation de l'UE :
Pré-requis :

Lang - Anglais 3a

Crédits ECTS : 2
Semestre d'enseignement :
Volumes horaires : TD : 25
Descriptif :
ANGLAIS DE SPÉCIALITÉ. Cette UE s'inscrit dans la continuité de l'UE Langue-Anglais2 tout en introduisant un travail sur la langue de spécialité : on prolongera l'approche actionnelle dans les 5 compétences (compréhension orale et écrite, expression écrite, expression orale en continu et en interaction) à partir de thèmes choisis (interaction à travers de documents écrits et/ou audiovisuels centrés sur une problématique et un scénario de communication) tels que Science et Technologie, Médias et Réseaux sociaux, Études et Formation... Le travail se fera par groupes de niveau.
Objectifs d'enseignement :
Attendus de l'UE Langue-Anglais3 : Niveau B2 minimum dans les 5 compétences linguistiques.
Organisation de l'UE :
Organisation de l'UE :
Pré-requis :

1 UE au choix

Arts et Culture

Crédits ECTS : 2.5
Semestre d'enseignement :
Volumes horaires : TD : 25, all : 25
Descriptif :
Listes des ateliers culturels proposés en UE libres.
Chaque atelier est par semestre. Il dure 25 heures et donne droit à 2,5 crédits ECTS :
- Afreubo (orchestre harmonique),
- orchestre symphonique,
- musique assistée par ordinateur,
- théâtre Aztec,
- théâtre classique,
- théâtre d'impro TIPS,
- théâtre et éloquence (uniquement au 1er semestre),
- écriture créative,
- arts visuels et dessin,
- photo,
- ikebana,
- initiation à l'oenologie,
- game design (uniquement au 1er semestre).

Pour en savoir plus : http://www.u-psud.fr/fr/vie-etudiante/culture.html
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

Activités Physiques Sportives et Artistiques

Crédits ECTS : 2.5
Semestre d'enseignement :
Volumes horaires : TD : 24, homeWork : 5
Descriptif :
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

Introduction à l'Économie

Crédits ECTS : 2.5
Semestre d'enseignement :
Volumes horaires :
Descriptif :
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

L3 Informatique

BCC dentification d'une solution informatique 2

Algorithmique Générale

Crédits ECTS : 5
Semestre d'enseignement : S5
Volumes horaires : CM : 18, TD : 24
Descriptif :
  1. Petits programmes (puissance(x,n) (ardu: en itératif de complexité log), Hanoï, Ackermann...) et complexités (linéaires, quadratiques, logarithmiques, exponentielles par "effet Fibonacci", etc.)
  2. Programmes sur les listes pile (type listes chainées). Itératif, récursif, récursif terminal. Paramètres in, inout et out (calculs depuis la tête et le fond de liste, exemple ardu: "EstPalindrome" en une passe sur listes simplement chainées). Diviser pour régner (exemple ardu: générer par récursivité et DPR la liste des permutations de [1..n])
  3. Pointeurs, listes chaînées, pointeurs de pointeurs.
  4. Tableaux. Sélections. Parcours (exemple: détecter si un mot donné par tableau est sans carré, en cubique puis, ardu, en quadratique). Dichotomie. Tris simples, rapide, par tas, fusion. Hachage.
  5. Arbres. Programmes sur les arbres. Informations ascendantes et descendantes. (Ardu: donnez une demi-douzaine de façons de faire "EstComplet(A)" en temps linéaire). Parcours et notations préfixe infixe postfixe d'expressions. ABR simples puis équilibrés.
  6. Algo avancée, diviser pour régner (Multiplier deux nombres en mieux que quadratique). Programmation dynamique. (Distance d'édition de deux textes). Backtracking. -Sous réserve de temps-
  Responsable : Laurent Rosaz
Objectifs d'enseignement :
Programmer proprement et efficacement : Programmation, Algos, Structures de données, Complexités.
Organisation de l'UE :
Cours, TD. et projet C. Evaluation par partiel et examen terminal écrit.
Pré-requis :
Premières expériences en algorithmique, programmation et complexité (en L1 et L2)

Logique pour l'informatique

Crédits ECTS : 5
Semestre d'enseignement : S5
Volumes horaires : CM : 18, TD : 24
Descriptif :
Le programme du cours est le suivant :
  • Langage logique (calul propositionnel et calcul des prédicats), modélisation à l'aide de la logique
  • Systèmes de règles logiques pour construire des preuves
  • Termes : signature, preuve par récurrence structurelle, définition récursive de fonctions
  • Calcul des prédicats : syntaxe, variables libres et liées, sémantique, équivalence
  • Modèle, modèle de Herbrand
  • Exemples de théories
  • Démonstration automatique, formes normales, résolution, séquents
Responsable : Christine Paulin
Objectifs d'enseignement :
L’objectif du cours est de se familiariser avec le formalisme de la logique du premier ordre. La logique est utilisée pour modéliser des problèmes informatiques et comme outil de spécification de contraintes sur des objets informatiques comme des bases de données ou des programmes. Ce cours aborde les notions de démonstration, de validité, le lien entre les objets physiques (syntaxe) et le sens qu'on leur donne (sémantique). Il présente plusieurs techniques de démonstration automatique comme le calcul des séquents et la résolution. Il met en pratique un certain nombre d’outils mathématiques utilisés en informatique, comme les définitions récursives de fonctions, les preuves par récurrence structurelle ou les définitions par règle d'inférence.
Organisation de l'UE :
UE est organisée de manière classique avec des séances de cours et exercices en classe entière suivies de séance de TD. Quelques activités d'apprentissage autonome en ligne sont proposées. L'évaluation repose sur un partiel et un examen final.
Pré-requis :
les bases du calcul propositionnel (tables de vérité des connecteurs logiques). Les bases du raisonnement mathématique (définitions, énoncé, preuves).

Langages Formels

Crédits ECTS : 5
Semestre d'enseignement : S6
Volumes horaires : CM : 18, TP : 2, TD : 22
Descriptif :
Le cours se développe comme suit:
  1. Automates finis : non déterminisme, expression rationnelle, preuve du théorème de Kleene (système d'équations associé à un automate), minimisation, résiduels, construction directe de l'automate minimal, lemme de l'étoile, pompage, propriétés de clôture, lien avec l'analyse lexicale.
  2. Grammaires : hiérarchie de Chomsky, grammaire régulière, grammaires hors contexte, Lemme de la double étoile pour les langages algébriques, propriétés de clôture Illustration avec des grammaire de vrai langage de programmation, arbre de syntaxe abstraite
  3. Automates à pile : fonctionnement non-déterministe, terminaison, lien avec les langages algébrique.
  4. Analyse syntaxique ascendante: calcul des tables d'analyse LR(0), SLR(1), gestion des conflits, le cas général LR(1), le cas utilisé en pratique LALR(1).
  5. Calculabilité: Machines de Turing , langage/problèmes indécidables. Le probléme de l'arrêt. Introduction aux classes de complexité, P, NP, problème NP-complet.
Responsable : Frédéric Gruau
Objectifs d'enseignement :
Notions théoriques sur les langages formels, techniques de preuve, principe de l'analyse syntaxique ascendante, notions élémentaires de calculabilité.
Organisation de l'UE :
Le cours prépare aux TDs, lequels font digérer le cours. L'UE se termine par un TP d'analyse syntaxique. La note de Controle Continu comprends un devoir et/ou mini projet.
Pré-requis :
Automates d'état fini, expressions rationnelles.

BCC Analyse de problèmes, données et systèmes 2

Systèmes d'Exploitation et Programmation Concurrente

Crédits ECTS : 5
Semestre d'enseignement :
Volumes horaires :
Descriptif :
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

Réseaux Avancés

Crédits ECTS : 5
Semestre d'enseignement :
Volumes horaires :
Descriptif :
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

Bases de données 2

Crédits ECTS : 2.5
Semestre d'enseignement : S6
Volumes horaires : CM : 7.5, TP : 13.5
Descriptif :
  • Etude des problèmes de bases de données ci-dessus, avec la partie du langage SQL pour les traiter.
  • Bases du langage PL/SQL : procédures stockées, curseurs, gestion des transactions, triggers.
  • Initiation à l'accès à une base depuis un langage généraliste (PHP) : modifications, requêtes select et curseurs, appels de fonctions et procédures stockées.
Responsable : Emmanuel Waller
Objectifs d'enseignement :
Etre capable de programmer, en SQL, PL/SQL et PHP, une application de base de données relationnelle complète gérant en particulier les contraintes d'intégrité, la confidentialité, l'indépendance des niveaux, la reprise sur panne, et le contrôle de concurrence.
Organisation de l'UE :
L'UE s'organise en cours accompagnés de séances de TD/TP.
Pré-requis :
conception d'un schéma relationnel, décompositions SPI, manipulations et interrogations de données en SQL.

BCC Mise en œuvre des méthodes et outils informatiques 2

Génie Logiciel Avancé

Crédits ECTS : 5
Semestre d'enseignement : S5
Volumes horaires : CM : 18, TD : 24
Descriptif :
L'enseignement portera sur les techniques suivantes:
  • Approfondir les techniques de modélisation en UML avec des annotations formelles
  • Test de boite-noire à partir d'une spécification
  • Sequence-Test boite-noire à partir d'une spécification State-Chart
  • Test de boite-noire de sécurité
  • Test de boite-blanche à partir de programmes
  • Fuzz-Testing
  • Vérification à base des methodes deductives preuves formelles
Responsable: Burkhart Wolff
Objectifs d'enseignement :
Dans le génie logiciel, on distingue plusieurs phases dans le processus de développement de logiciels: L'analyse, la conception, le codage, l'intégration, la validation et vérification des composants ou des systèmes entiers. Le cours se concentre sur les deux dernières phases dans du processus de développement, en traitant en profondeur l'aspect modélisation lors de l'analyse, sous l'aspect des méthodes automatisées et des outils. Afin de vérifier un systeme grâce à la génération de tests, par exemple, on a besoin de modèles suffisamment précis.
Organisation de l'UE :
l'UE est organisée de manière classique avec des séances de cours et exercices en classe entière suivies de séance de TD ou TP. Quelques activités d'apprentissage autonome en ligne sont proposées. L'évaluation repose sur un partiel et un examen final.  
Pré-requis :
Programmation en Java, bases en modelisation UML, notions en logique (les pré-requis suivent le cours "Eléments de Logique" en parallele)

Programmation Fonctionnelle Avancée

Crédits ECTS : 5
Semestre d'enseignement :
Volumes horaires :
Descriptif :
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

Introduction Apprentissage Statistique

Crédits ECTS : 5
Semestre d'enseignement : S6
Volumes horaires : CM : 18, TP : 24
Descriptif :
Ce cours a pour but d'introduire les concepts de bases de l'apprentissage statistique en les illustrant sur des réseaux de neurones simples et en les appliquants à la reconnaissance de caractères, et ensuite en analysant les résultats obtenus. Dans un second temps, on s'intéressera à l'apprentissage par renforcement consistant à guider l'apprentissage d'un agent autonome en interaction avec un environnement à partir d'expérience. Le cours se abordera les points suivants
  • La notion de gradient et d'optimisation de fonction de coût
  • le perceptron multiclasse, et multicouche
  • les ensembles pour valider l'apprentissage
  • la notion d'agent en interaction avec un environnement
  • les équations de Bellman permettan d'évaluer la politique de mouvement pour l'agent
  • l'apprentissage Q-learning et SARSA
Responsable : Aurélien Decelle
Objectifs d'enseignement :
concepts fondamentaux de l'apprentissage automatique/statistique
et application à des exemples simples.
Organisation de l'UE :
L'UE s'organise en cours accompagnés de séances de (quelques) TD et de (nombreux) TP.
Pré-requis :
introduction à l'informatique et python, introduction à la programmation impérative, Calculus 1-2, Algèbvre linéaire 1-2, Combi Proba  

BCC Transverse

UEs obligatoires

Lang - Anglais 4b

Crédits ECTS : 2.5
Semestre d'enseignement :
Volumes horaires : TD : 25
Descriptif :
ANGLAIS DE SPÉCIALITÉ. Cette UE s'inscrit dans la continuité de l'UE Langue-Anglais3 et le travail sur la langue de spécialité (scientifique et/ou à visée professionnelle) : on prolongera l'approche actionnelle dans les 5 compétences et on s'attachera à la préparation de l'étudiant aux différentes tâches liées à son activité scientifique telles que la rédaction d'un compte rendu d'expérience, le commentaire d'un graphique, la desciption d'un processus mais aussi à son insertion dans le monde professionnel : rédaction d'un CV ou d'une lettre de motivation en vue d'un stage... On proposera une initiation au débat ainsi qu'un entraînement à la certification CLES 2. Le travail se fera par groupes de niveau.
Objectifs d'enseignement :
Attendus de l'UE Langue-Anglais4 : Niveau B2+/C1 dans les 5 compétences linguistiques.
Organisation de l'UE :
Pré-requis :

Projet

Crédits ECTS : 5
Semestre d'enseignement :
Volumes horaires :
Descriptif :
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

1 UE au choix S5

Introduction à l'optimisation combinatoire

Crédits ECTS : 5
Semestre d'enseignement : S5
Volumes horaires : CM : 18, TD : 24
Descriptif :
De nombreux problèmes réels sont intrinsèquement des problèmes d'optimisation combinatoire. L'idée de cette unité d'enseignement est d'aborder les problèmes classiques d'optimisation ainsi que ses techniques de résolution en partant d'applications que l'on retrouvent dans le monde réel (réseaux, Internet des Objets, traitement des données, gestion des stocks).

Responsable : Dominique Quadri
Objectifs d'enseignement :
Partir de problèmes réels pour proposer des formulations mathématiques (modélisation sous forme de programmes mathématiques et graphes) traitées par des techniques d'optimisation combinatoire exactes et approchées.Une mise en œuvre informatique des méthodes sera réalisée.
Organisation de l'UE :
Cours, TD, TP. Évaluation par controle continu (Partiel, interrogation, projets, …) et examen terminal écrit.
Pré-requis :
Notions de base de l'algèbre linéaire, bases de la programmation

Analyse Informatique de données biologiques

Crédits ECTS : 5
Semestre d'enseignement : S5
Volumes horaires : CM : 14, TP : 28
Descriptif :
Introduction à la bioinformatique et à la biologie moléculaire. Deux mini projets encadrés représentatifs des analyses de données bioinformatiques.
  1. Interrogation de bases de données biologiques réelles et mise en évidence des caractéristiques fortes (massives, hétérogènes) de ces données; Conception et implémentation d’une base de données biologique fonctionnelle depuis des données réelles (format XML), développement d'un parseur en python pour le remplissage de la base, interfacage de la base en PHP pour son interrogation via des formulaires.
  2. Analyse de données phylogénétiques. Introduction à la phylogénie, algorithmes de contruction d'arbres phylogénétiques, Implémentation d’un pipeline d’analyse phylogénétique.

Responsable: Sarah Cohen-Boulakia
Objectifs d'enseignement :
Introduction aux problématiques de Bioinformatique. Mise en application des compétences acquises en bases de données et en programmation sur des projets impliquant des données massives et hétérogènes réelles de biologie moléculaire.
Organisation de l'UE :
L'UE comporte des séances de cours en classe entière dédiée aux spécificités des données bioinformatique et des traitements algorithmiques sur ces données. Des exercices de mise en application en TD/TP suivent systématiquement. Les projets sont effectués à moitié sur les heures encadrés et à moitié sur le temps étudiants (hors présence enseignant).
Pré-requis :
Savoir développer dans un langage de programmation impératif ou objet; savoir développer en SQL (création de schémas, remplissage simple d'une base de données, interrogation simple).

Programmation d'Interfaces Interactives

Crédits ECTS : 5
Semestre d'enseignement :
Volumes horaires :
Descriptif :
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

1 UE au choix S6

Informatique Théorique

Crédits ECTS : 5
Semestre d'enseignement : S6
Volumes horaires : CM : 18, TD : 24
Descriptif :
Introduction rapide aux automates. Machines de Turing déterministes. Variantes. Indécidabilité. Problème de l'arrêt. Réductions. Rice. Post. Machines de Turing non-déterministes. NP. Certificats et vérifications. Réductions polynomiales. NPcomplétude. SAT. Cliques. Hamiltonien. 3Coloriages. SacADos. Algos d'approximation. Ardu : Autres classes: Hiérarchies, L, NL, PSPACE.

Responsable : Laurent Rosaz
Objectifs d'enseignement :
Connaitre les limites théoriques de l'algorithmique et comprendre pourquoi et à quel point certains problèmes sont intrinsèquement difficiles.
Organisation de l'UE :
Cours et TD. Évaluation par un partiel et un examen terminal écrit.
Pré-requis :
Avoir des notions d'algorithmique, distinguer le polynomial de l'exponentiel. Etre capable de faire des raisonnements (preuves par l'absurde, preuves parfois abstraites) et avoir un certain sens combinatoire.

Introduction IA

Crédits ECTS : 5
Semestre d'enseignement : S6
Volumes horaires : CM : 17, TP : 13, TD : 12
Descriptif :
Le cours aborde différents cadres de formalisation.
  • La première partie étudie celui des jeux avec adversaires (e.g. Echecs, Dames, Othello, …). Elle présente la notion de stratégie de jeu, des techniques d'estimation de configuration, le principe d'une recherche Minimax et présente différents algorithmes permettant, à partir d'une simple description des règles d'un jeu, d'explorer efficacement l'ensemble des parties possibles (e.g. AlphaBeta, NegEchecAlphaBeta, MTDf,...).
  • La seconde partie s'intéresse aux problèmes pouvant se formaliser en termes d’états et d’opérateurs de changements d’états. Leur résolution s'apparente alors à la recherche d'un chemin solution dans un graphe. Différents algorithmes d'exploration sont présentés et comparés. Certains d'entre eux exploitent des informations heuristiques sur les états pour les guider plus efficacement vers le but à atteindre.
  • Le cours introduit également quelques notions de représentation de connaissance et de raisonnement, centrales en Intelligence Artificielle, par le bais des systèmes à bases de connaissances. Differents niveaux de langages sont illustrés et les principes de base des moteurs d'inférences (chaînage avant, arrière ou mixte) permettant de raisonner efficacement sur des bases de connaissances sont introduits.
Responsable: Philippe Chatalic
Objectifs d'enseignement :
Ce cours permet de se familiariser avec quelques cadres génériques de résolution de problèmes, dans le but de concevoir des agents intelligents. L'accent est mis sur des algorithmes de recherche permettant d'explorer efficacement des espaces de recherche (modélisés par des arbres et/ou des graphes) généralement de trop grande taille pour pouvoir être représentés exhaustivement.
Organisation de l'UE :
Le cours équilibre les dimensions théoriques et pratiques. Les techniques présentées sont mise en oeuvre au travers d'un ou plusieurs projets, comme par exemple la réalisation de joueurs intelligents s'affrontant au travers d'un tournoi. Le langage de programmation utilisé est Java.
Pré-requis :
Concept de base en langage Java (Classes, Héritage, Interfaces),
Algorithmique et structures de données de base (séquences, arbres, graphes)

Mise en situation professionnelle

Crédits ECTS : 5
Semestre d'enseignement :
Volumes horaires :
Descriptif :
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

Programmation Web

Crédits ECTS : 5
Semestre d'enseignement :
Volumes horaires :
Descriptif :
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

L3 Miage

BCC Identification et mise en œuvre d'une solution informatique

Génie Logiciel Avancé

Crédits ECTS : 5
Semestre d'enseignement : S5
Volumes horaires : CM : 18, TD : 24
Descriptif :
L'enseignement portera sur les techniques suivantes:
  • Approfondir les techniques de modélisation en UML avec des annotations formelles
  • Test de boite-noire à partir d'une spécification
  • Sequence-Test boite-noire à partir d'une spécification State-Chart
  • Test de boite-noire de sécurité
  • Test de boite-blanche à partir de programmes
  • Fuzz-Testing
  • Vérification à base des methodes deductives preuves formelles
Responsable: Burkhart Wolff
Objectifs d'enseignement :
Dans le génie logiciel, on distingue plusieurs phases dans le processus de développement de logiciels: L'analyse, la conception, le codage, l'intégration, la validation et vérification des composants ou des systèmes entiers. Le cours se concentre sur les deux dernières phases dans du processus de développement, en traitant en profondeur l'aspect modélisation lors de l'analyse, sous l'aspect des méthodes automatisées et des outils. Afin de vérifier un systeme grâce à la génération de tests, par exemple, on a besoin de modèles suffisamment précis.
Organisation de l'UE :
l'UE est organisée de manière classique avec des séances de cours et exercices en classe entière suivies de séance de TD ou TP. Quelques activités d'apprentissage autonome en ligne sont proposées. L'évaluation repose sur un partiel et un examen final.  
Pré-requis :
Programmation en Java, bases en modelisation UML, notions en logique (les pré-requis suivent le cours "Eléments de Logique" en parallele)

Réseaux Avancés

Crédits ECTS : 5
Semestre d'enseignement :
Volumes horaires :
Descriptif :
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

Bases de données 2

Crédits ECTS : 2.5
Semestre d'enseignement : S6
Volumes horaires : CM : 7.5, TP : 13.5
Descriptif :
  • Etude des problèmes de bases de données ci-dessus, avec la partie du langage SQL pour les traiter.
  • Bases du langage PL/SQL : procédures stockées, curseurs, gestion des transactions, triggers.
  • Initiation à l'accès à une base depuis un langage généraliste (PHP) : modifications, requêtes select et curseurs, appels de fonctions et procédures stockées.
Responsable : Emmanuel Waller
Objectifs d'enseignement :
Etre capable de programmer, en SQL, PL/SQL et PHP, une application de base de données relationnelle complète gérant en particulier les contraintes d'intégrité, la confidentialité, l'indépendance des niveaux, la reprise sur panne, et le contrôle de concurrence.
Organisation de l'UE :
L'UE s'organise en cours accompagnés de séances de TD/TP.
Pré-requis :
conception d'un schéma relationnel, décompositions SPI, manipulations et interrogations de données en SQL.

Bases de données 2 Miage

Crédits ECTS : 2
Semestre d'enseignement : S6
Volumes horaires : CM : 10, TP : 15
Descriptif :
  • Approfondissement de PL/SQL : SQL dynamique, gestion des exceptions et des erreurs base de données, ref curseurs.
  • Mécanismes d'accès à une application de base de données depuis un programme Java : interface, connexion, appels SQL, curseurs, appels de procédures et fonctions stockées PL/SQL (dont ref curseurs), gestions des erreurs BD, SQL dynamique, gestion des transactions.
Responsable : Emmanuel Waller
Objectifs d'enseignement :
Etre capable, depuis un langage de programmation généraliste (Java), d'interagir avec la partie d'une application de base de données relationnelle qui est écrite en SQL et PL/SQL. Ce cours approfondit et se déroule en parallèle avec le cours BD2.
Organisation de l'UE :
L'UE s'organise en cours accompagnés de séances de TD/TP.
Pré-requis :
L'UE BD1 de L2. Le suivi en parallèle de l'UE BD2.

BCC Gestion des organisations

Probabilités

Crédits ECTS : 3
Semestre d'enseignement : S5
Volumes horaires : CM : 18, TD : 24
Descriptif :
Cette UE aborde les concepts suivants:
  • phénomènes aléatoires
  • événements et probabilités
  • probabilités sur des ensembles finis ou dénombrables
  • probabilités totales et inconditionnelles; indépendance ; variables aléatoires dicrètes et continues
  • les principales lois ; théorème de la limite centrée ; inégalité de Bienaymé - Tchebichev
Responsable : Abdel Lisser
Objectifs d'enseignement :
Concepts fondamentaux utilisés en probabilités, et connaissance sur les applications de ces concepts à des problèmes d'économie et de gestion
Organisation de l'UE :
Ce cours s'appuiera sur des exercices et des applications en économie et gestion. Il est organisé en cours et en TDs.
Pré-requis :
Niveau méthématiques de L2 ou DUT

Environnement Économique et juridique

Crédits ECTS : 4
Semestre d'enseignement : S5
Volumes horaires : CM : 18, TD : 24
Descriptif :
Ce cours propose une introduction générale à l'analyse économique et juridique de l'entreprise. Il a pour but en particulier :
  • de présenter les différents modèles permettant de décrire l'environnement économique d'une entreprise, notamment l'économie industrielle.et son environnement concurrentiel ;
  • de présenter le cadre règlementaire et juridique dont doivent tenir compte les entreprises pour mener à bien leurs activités, comme le droit du travail et le droit des sociétés
Responsable : Serge Édouard
Objectifs d'enseignement :
Comprendre l'entreprise dans son environnement économique et juridique, et être capable de saisir les enjeux qui conditionnent ses activités et son développement  
Organisation de l'UE :
L'UE se structure en deux modules :
  1. Le module analyse économique de l'entreprise : environnement macro-économique, géographie économique, jeu concurrentiel des marchés, concurrence imparfaite, modèle d'affaires de l'entreprise, la chaîne de valeur de l'entreprise et son système de valeur.
  2. Le module Environnement juridique : droit des sociétés, droit commercial et des contrats, droit du travail, droit de l'informatique
Pré-requis :
Aucun

Outils et techniques de gestion

Crédits ECTS : 4
Semestre d'enseignement : S5
Volumes horaires : CM : 18, TD : 24
Descriptif :
Cette UE concerne la comptabilité générale et l'analyse financière. Elle vise à faire acquérir aux étudiants les concepts et les principes de base de la comptabilité générale; à leur présenter les concepts et les techniques utilisés pour mesurer la performance financière des entreprises. Les étudiants seront à même de comprendre et d'analyser les documents comptables synthétiques que sont le bilan et le compte de résulta; d'analyser la situation financière des entreprises à travers les soldes intermédiaires de gestion (SIG), le bilan fonctionnel et ses grandeurs financières (fonds de roulement, besoin en fonds de roulement, trésorerie nette), ainsi que leur rentabilité. Responsable: Jean Gilles Mbianga
Objectifs d'enseignement :
Appréhender les outils et les techniques nécessaires à la bonne gestion financière des entreprises  
Organisation de l'UE :
Cette UE comprend deux modules:
  1. Comptabilité générale : principes généraux de la comptabilité générale, comptabilisation en partie double, documents comptables (grand-livre, journal) et documents comptables de synthèse (bilan, compte de résultat, annexe)
  2. Analyse financière : il s'agit d'apprécier la santé financière de l'entreprise à partir des documents comptables de référence au travers du calcul des Soldes Intermédiaires de Gestion (SIG), d'une analyse de la rentabilité d'exploitation, de l'équilibre financier du bilan fonctionnel (fonds de roulement, besoin en fonds de roulement et trésorerie nette)
Pré-requis :
Aucun

Outils pour le management

Crédits ECTS : 4
Semestre d'enseignement : S6
Volumes horaires : CM : 18, TD : 24
Descriptif :
Le but de cet enseignement est de développer l’usage des technologies de l'information et la compréhension des enjeux des systèmes d'information, dont le système d'information comptable, comme outil d’aide à la prise de décision.
Responsable : Mondher Feki
Objectifs d'enseignement :
Mobiliser des techniques de management et de pilotage dans le cadre de projets, notamment en systèmes d'information  
Organisation de l'UE :
Cette UE s'organise en deux modules:
  1. Une introduction au management des SI : présentation des composantes, des dimensions et des différents types de SI ainsi que leurs fonctions dans l'organisation: présentation du cadre d'analyse des SI, fonctions des SI, différents types de SI (opérationnel, managérial, décisionnel...) et leur articulation, les principales applications SI (ERP, CRM, SCM ...)
  2. Le pilotage par les coûts : présentation des principales méthodes de calcul des coûts (coûts complets, coûts partiels), calcul du coût de revient et du résultat analytique d’une activité ou d’un processus, étude de rentabilité, calcul et analyse d'écarts, etc.
Pré-requis :
outils et techniques de gestion

Mise en Situation Professionnelle

Crédits ECTS : 4
Semestre d'enseignement : S6
Volumes horaires : CM : 18, TD : 24
Descriptif :
Ce cours propose d'étudier, dans une première partie, la chaîne de valeur d'une entreprise et sa stratégie marketing (policy mix, marketing digital, gestion de la relation client, politique de marque...). Il s'appuyera, dans une seconde partie, sur un projet tutoré par équipe,soit au travers d'un business game, soit avec un projet de création d'entreprise.
  Responsable: Frédérique Blondel
Objectifs d'enseignement :
Prendre des décisions sur les différentes facettes de l'entreprise (production, ventes, prix, etc.)
Organisation de l'UE :
Cette UE comprend deux modules :
  1. Marketing stratégique : démarche marketing (marché, marque, segmentation, ciblage et positionnement) et élaboration d'un lan marketing, le B to C versus le B to B, la place du marketing digital et le marketing international (internationalisation, modes d'implantation à l'étranger).
  2. Un projet tutoré permettant aux étudiants d'élaborer des décisions stratégiques sur la base de leur analyse financière, concurrentielle, commerciale, productive de leur entreprise. Cela pourra pendre la forme d'un business game en équipe, ou d'un projet de création d'entreprise avec l'élaboration d'un business plan.
 
Pré-requis :
Environnement économique et juridique de l'entreprise, outils et techniques de gestion

BCC Analyse de problèmes, données et systèmes 2

Algorithmique Générale

Crédits ECTS : 5
Semestre d'enseignement : S5
Volumes horaires : CM : 18, TD : 24
Descriptif :
  1. Petits programmes (puissance(x,n) (ardu: en itératif de complexité log), Hanoï, Ackermann...) et complexités (linéaires, quadratiques, logarithmiques, exponentielles par "effet Fibonacci", etc.)
  2. Programmes sur les listes pile (type listes chainées). Itératif, récursif, récursif terminal. Paramètres in, inout et out (calculs depuis la tête et le fond de liste, exemple ardu: "EstPalindrome" en une passe sur listes simplement chainées). Diviser pour régner (exemple ardu: générer par récursivité et DPR la liste des permutations de [1..n])
  3. Pointeurs, listes chaînées, pointeurs de pointeurs.
  4. Tableaux. Sélections. Parcours (exemple: détecter si un mot donné par tableau est sans carré, en cubique puis, ardu, en quadratique). Dichotomie. Tris simples, rapide, par tas, fusion. Hachage.
  5. Arbres. Programmes sur les arbres. Informations ascendantes et descendantes. (Ardu: donnez une demi-douzaine de façons de faire "EstComplet(A)" en temps linéaire). Parcours et notations préfixe infixe postfixe d'expressions. ABR simples puis équilibrés.
  6. Algo avancée, diviser pour régner (Multiplier deux nombres en mieux que quadratique). Programmation dynamique. (Distance d'édition de deux textes). Backtracking. -Sous réserve de temps-
  Responsable : Laurent Rosaz
Objectifs d'enseignement :
Programmer proprement et efficacement : Programmation, Algos, Structures de données, Complexités.
Organisation de l'UE :
Cours, TD. et projet C. Evaluation par partiel et examen terminal écrit.
Pré-requis :
Premières expériences en algorithmique, programmation et complexité (en L1 et L2)

Introduction Apprentissage Statistique

Crédits ECTS : 5
Semestre d'enseignement : S6
Volumes horaires : CM : 18, TP : 24
Descriptif :
Ce cours a pour but d'introduire les concepts de bases de l'apprentissage statistique en les illustrant sur des réseaux de neurones simples et en les appliquants à la reconnaissance de caractères, et ensuite en analysant les résultats obtenus. Dans un second temps, on s'intéressera à l'apprentissage par renforcement consistant à guider l'apprentissage d'un agent autonome en interaction avec un environnement à partir d'expérience. Le cours se abordera les points suivants
  • La notion de gradient et d'optimisation de fonction de coût
  • le perceptron multiclasse, et multicouche
  • les ensembles pour valider l'apprentissage
  • la notion d'agent en interaction avec un environnement
  • les équations de Bellman permettan d'évaluer la politique de mouvement pour l'agent
  • l'apprentissage Q-learning et SARSA
Responsable : Aurélien Decelle
Objectifs d'enseignement :
concepts fondamentaux de l'apprentissage automatique/statistique
et application à des exemples simples.
Organisation de l'UE :
L'UE s'organise en cours accompagnés de séances de (quelques) TD et de (nombreux) TP.
Pré-requis :
introduction à l'informatique et python, introduction à la programmation impérative, Calculus 1-2, Algèbvre linéaire 1-2, Combi Proba  

Logique pour L'Informatique

Crédits ECTS : 4
Semestre d'enseignement :
Volumes horaires :
Descriptif :
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

BCC Transverse

UEs obligatoires

Lang - Anglais 4b

Crédits ECTS : 2.5
Semestre d'enseignement :
Volumes horaires : TD : 25
Descriptif :
ANGLAIS DE SPÉCIALITÉ. Cette UE s'inscrit dans la continuité de l'UE Langue-Anglais3 et le travail sur la langue de spécialité (scientifique et/ou à visée professionnelle) : on prolongera l'approche actionnelle dans les 5 compétences et on s'attachera à la préparation de l'étudiant aux différentes tâches liées à son activité scientifique telles que la rédaction d'un compte rendu d'expérience, le commentaire d'un graphique, la desciption d'un processus mais aussi à son insertion dans le monde professionnel : rédaction d'un CV ou d'une lettre de motivation en vue d'un stage... On proposera une initiation au débat ainsi qu'un entraînement à la certification CLES 2. Le travail se fera par groupes de niveau.
Objectifs d'enseignement :
Attendus de l'UE Langue-Anglais4 : Niveau B2+/C1 dans les 5 compétences linguistiques.
Organisation de l'UE :
Pré-requis :

Projet

Crédits ECTS : 5
Semestre d'enseignement :
Volumes horaires :
Descriptif :
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

1 UE au choix S6

Informatique Théorique

Crédits ECTS : 5
Semestre d'enseignement : S6
Volumes horaires : CM : 18, TD : 24
Descriptif :
Introduction rapide aux automates. Machines de Turing déterministes. Variantes. Indécidabilité. Problème de l'arrêt. Réductions. Rice. Post. Machines de Turing non-déterministes. NP. Certificats et vérifications. Réductions polynomiales. NPcomplétude. SAT. Cliques. Hamiltonien. 3Coloriages. SacADos. Algos d'approximation. Ardu : Autres classes: Hiérarchies, L, NL, PSPACE.

Responsable : Laurent Rosaz
Objectifs d'enseignement :
Connaitre les limites théoriques de l'algorithmique et comprendre pourquoi et à quel point certains problèmes sont intrinsèquement difficiles.
Organisation de l'UE :
Cours et TD. Évaluation par un partiel et un examen terminal écrit.
Pré-requis :
Avoir des notions d'algorithmique, distinguer le polynomial de l'exponentiel. Etre capable de faire des raisonnements (preuves par l'absurde, preuves parfois abstraites) et avoir un certain sens combinatoire.

Introduction IA

Crédits ECTS : 5
Semestre d'enseignement : S6
Volumes horaires : CM : 17, TP : 13, TD : 12
Descriptif :
Le cours aborde différents cadres de formalisation.
  • La première partie étudie celui des jeux avec adversaires (e.g. Echecs, Dames, Othello, …). Elle présente la notion de stratégie de jeu, des techniques d'estimation de configuration, le principe d'une recherche Minimax et présente différents algorithmes permettant, à partir d'une simple description des règles d'un jeu, d'explorer efficacement l'ensemble des parties possibles (e.g. AlphaBeta, NegEchecAlphaBeta, MTDf,...).
  • La seconde partie s'intéresse aux problèmes pouvant se formaliser en termes d’états et d’opérateurs de changements d’états. Leur résolution s'apparente alors à la recherche d'un chemin solution dans un graphe. Différents algorithmes d'exploration sont présentés et comparés. Certains d'entre eux exploitent des informations heuristiques sur les états pour les guider plus efficacement vers le but à atteindre.
  • Le cours introduit également quelques notions de représentation de connaissance et de raisonnement, centrales en Intelligence Artificielle, par le bais des systèmes à bases de connaissances. Differents niveaux de langages sont illustrés et les principes de base des moteurs d'inférences (chaînage avant, arrière ou mixte) permettant de raisonner efficacement sur des bases de connaissances sont introduits.
Responsable: Philippe Chatalic
Objectifs d'enseignement :
Ce cours permet de se familiariser avec quelques cadres génériques de résolution de problèmes, dans le but de concevoir des agents intelligents. L'accent est mis sur des algorithmes de recherche permettant d'explorer efficacement des espaces de recherche (modélisés par des arbres et/ou des graphes) généralement de trop grande taille pour pouvoir être représentés exhaustivement.
Organisation de l'UE :
Le cours équilibre les dimensions théoriques et pratiques. Les techniques présentées sont mise en oeuvre au travers d'un ou plusieurs projets, comme par exemple la réalisation de joueurs intelligents s'affrontant au travers d'un tournoi. Le langage de programmation utilisé est Java.
Pré-requis :
Concept de base en langage Java (Classes, Héritage, Interfaces),
Algorithmique et structures de données de base (séquences, arbres, graphes)

Programmation Web

Crédits ECTS : 5
Semestre d'enseignement :
Volumes horaires :
Descriptif :
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

L3 Miage apprentis

BCC Identification et mise en œuvre d'une solution informatique

Génie Logiciel Avancé

Crédits ECTS : 5
Semestre d'enseignement : S5
Volumes horaires : CM : 18, TD : 24
Descriptif :
L'enseignement portera sur les techniques suivantes:
  • Approfondir les techniques de modélisation en UML avec des annotations formelles
  • Test de boite-noire à partir d'une spécification
  • Sequence-Test boite-noire à partir d'une spécification State-Chart
  • Test de boite-noire de sécurité
  • Test de boite-blanche à partir de programmes
  • Fuzz-Testing
  • Vérification à base des methodes deductives preuves formelles
Responsable: Burkhart Wolff
Objectifs d'enseignement :
Dans le génie logiciel, on distingue plusieurs phases dans le processus de développement de logiciels: L'analyse, la conception, le codage, l'intégration, la validation et vérification des composants ou des systèmes entiers. Le cours se concentre sur les deux dernières phases dans du processus de développement, en traitant en profondeur l'aspect modélisation lors de l'analyse, sous l'aspect des méthodes automatisées et des outils. Afin de vérifier un systeme grâce à la génération de tests, par exemple, on a besoin de modèles suffisamment précis.
Organisation de l'UE :
l'UE est organisée de manière classique avec des séances de cours et exercices en classe entière suivies de séance de TD ou TP. Quelques activités d'apprentissage autonome en ligne sont proposées. L'évaluation repose sur un partiel et un examen final.  
Pré-requis :
Programmation en Java, bases en modelisation UML, notions en logique (les pré-requis suivent le cours "Eléments de Logique" en parallele)

Réseaux Avancés

Crédits ECTS : 5
Semestre d'enseignement :
Volumes horaires :
Descriptif :
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

Bases de données 2

Crédits ECTS : 2.5
Semestre d'enseignement : S6
Volumes horaires : CM : 7.5, TP : 13.5
Descriptif :
  • Etude des problèmes de bases de données ci-dessus, avec la partie du langage SQL pour les traiter.
  • Bases du langage PL/SQL : procédures stockées, curseurs, gestion des transactions, triggers.
  • Initiation à l'accès à une base depuis un langage généraliste (PHP) : modifications, requêtes select et curseurs, appels de fonctions et procédures stockées.
Responsable : Emmanuel Waller
Objectifs d'enseignement :
Etre capable de programmer, en SQL, PL/SQL et PHP, une application de base de données relationnelle complète gérant en particulier les contraintes d'intégrité, la confidentialité, l'indépendance des niveaux, la reprise sur panne, et le contrôle de concurrence.
Organisation de l'UE :
L'UE s'organise en cours accompagnés de séances de TD/TP.
Pré-requis :
conception d'un schéma relationnel, décompositions SPI, manipulations et interrogations de données en SQL.

Bases de données 2 Miage

Crédits ECTS : 2
Semestre d'enseignement : S6
Volumes horaires : CM : 10, TP : 15
Descriptif :
  • Approfondissement de PL/SQL : SQL dynamique, gestion des exceptions et des erreurs base de données, ref curseurs.
  • Mécanismes d'accès à une application de base de données depuis un programme Java : interface, connexion, appels SQL, curseurs, appels de procédures et fonctions stockées PL/SQL (dont ref curseurs), gestions des erreurs BD, SQL dynamique, gestion des transactions.
Responsable : Emmanuel Waller
Objectifs d'enseignement :
Etre capable, depuis un langage de programmation généraliste (Java), d'interagir avec la partie d'une application de base de données relationnelle qui est écrite en SQL et PL/SQL. Ce cours approfondit et se déroule en parallèle avec le cours BD2.
Organisation de l'UE :
L'UE s'organise en cours accompagnés de séances de TD/TP.
Pré-requis :
L'UE BD1 de L2. Le suivi en parallèle de l'UE BD2.

BCC Gestion des organisations

Probabilités

Crédits ECTS : 3
Semestre d'enseignement : S5
Volumes horaires : CM : 18, TD : 24
Descriptif :
Cette UE aborde les concepts suivants:
  • phénomènes aléatoires
  • événements et probabilités
  • probabilités sur des ensembles finis ou dénombrables
  • probabilités totales et inconditionnelles; indépendance ; variables aléatoires dicrètes et continues
  • les principales lois ; théorème de la limite centrée ; inégalité de Bienaymé - Tchebichev
Responsable : Abdel Lisser
Objectifs d'enseignement :
Concepts fondamentaux utilisés en probabilités, et connaissance sur les applications de ces concepts à des problèmes d'économie et de gestion
Organisation de l'UE :
Ce cours s'appuiera sur des exercices et des applications en économie et gestion. Il est organisé en cours et en TDs.
Pré-requis :
Niveau méthématiques de L2 ou DUT

Environnement Économique et juridique

Crédits ECTS : 4
Semestre d'enseignement : S5
Volumes horaires : CM : 18, TD : 24
Descriptif :
Ce cours propose une introduction générale à l'analyse économique et juridique de l'entreprise. Il a pour but en particulier :
  • de présenter les différents modèles permettant de décrire l'environnement économique d'une entreprise, notamment l'économie industrielle.et son environnement concurrentiel ;
  • de présenter le cadre règlementaire et juridique dont doivent tenir compte les entreprises pour mener à bien leurs activités, comme le droit du travail et le droit des sociétés
Responsable : Serge Édouard
Objectifs d'enseignement :
Comprendre l'entreprise dans son environnement économique et juridique, et être capable de saisir les enjeux qui conditionnent ses activités et son développement  
Organisation de l'UE :
L'UE se structure en deux modules :
  1. Le module analyse économique de l'entreprise : environnement macro-économique, géographie économique, jeu concurrentiel des marchés, concurrence imparfaite, modèle d'affaires de l'entreprise, la chaîne de valeur de l'entreprise et son système de valeur.
  2. Le module Environnement juridique : droit des sociétés, droit commercial et des contrats, droit du travail, droit de l'informatique
Pré-requis :
Aucun

Outils et techniques de gestion

Crédits ECTS : 4
Semestre d'enseignement : S5
Volumes horaires : CM : 18, TD : 24
Descriptif :
Cette UE concerne la comptabilité générale et l'analyse financière. Elle vise à faire acquérir aux étudiants les concepts et les principes de base de la comptabilité générale; à leur présenter les concepts et les techniques utilisés pour mesurer la performance financière des entreprises. Les étudiants seront à même de comprendre et d'analyser les documents comptables synthétiques que sont le bilan et le compte de résulta; d'analyser la situation financière des entreprises à travers les soldes intermédiaires de gestion (SIG), le bilan fonctionnel et ses grandeurs financières (fonds de roulement, besoin en fonds de roulement, trésorerie nette), ainsi que leur rentabilité. Responsable: Jean Gilles Mbianga
Objectifs d'enseignement :
Appréhender les outils et les techniques nécessaires à la bonne gestion financière des entreprises  
Organisation de l'UE :
Cette UE comprend deux modules:
  1. Comptabilité générale : principes généraux de la comptabilité générale, comptabilisation en partie double, documents comptables (grand-livre, journal) et documents comptables de synthèse (bilan, compte de résultat, annexe)
  2. Analyse financière : il s'agit d'apprécier la santé financière de l'entreprise à partir des documents comptables de référence au travers du calcul des Soldes Intermédiaires de Gestion (SIG), d'une analyse de la rentabilité d'exploitation, de l'équilibre financier du bilan fonctionnel (fonds de roulement, besoin en fonds de roulement et trésorerie nette)
Pré-requis :
Aucun

Outils pour le management

Crédits ECTS : 4
Semestre d'enseignement : S6
Volumes horaires : CM : 18, TD : 24
Descriptif :
Le but de cet enseignement est de développer l’usage des technologies de l'information et la compréhension des enjeux des systèmes d'information, dont le système d'information comptable, comme outil d’aide à la prise de décision.
Responsable : Mondher Feki
Objectifs d'enseignement :
Mobiliser des techniques de management et de pilotage dans le cadre de projets, notamment en systèmes d'information  
Organisation de l'UE :
Cette UE s'organise en deux modules:
  1. Une introduction au management des SI : présentation des composantes, des dimensions et des différents types de SI ainsi que leurs fonctions dans l'organisation: présentation du cadre d'analyse des SI, fonctions des SI, différents types de SI (opérationnel, managérial, décisionnel...) et leur articulation, les principales applications SI (ERP, CRM, SCM ...)
  2. Le pilotage par les coûts : présentation des principales méthodes de calcul des coûts (coûts complets, coûts partiels), calcul du coût de revient et du résultat analytique d’une activité ou d’un processus, étude de rentabilité, calcul et analyse d'écarts, etc.
Pré-requis :
outils et techniques de gestion

Mise en Situation Professionnelle

Crédits ECTS : 4
Semestre d'enseignement : S6
Volumes horaires : CM : 18, TD : 24
Descriptif :
Ce cours propose d'étudier, dans une première partie, la chaîne de valeur d'une entreprise et sa stratégie marketing (policy mix, marketing digital, gestion de la relation client, politique de marque...). Il s'appuyera, dans une seconde partie, sur un projet tutoré par équipe,soit au travers d'un business game, soit avec un projet de création d'entreprise.
  Responsable: Frédérique Blondel
Objectifs d'enseignement :
Prendre des décisions sur les différentes facettes de l'entreprise (production, ventes, prix, etc.)
Organisation de l'UE :
Cette UE comprend deux modules :
  1. Marketing stratégique : démarche marketing (marché, marque, segmentation, ciblage et positionnement) et élaboration d'un lan marketing, le B to C versus le B to B, la place du marketing digital et le marketing international (internationalisation, modes d'implantation à l'étranger).
  2. Un projet tutoré permettant aux étudiants d'élaborer des décisions stratégiques sur la base de leur analyse financière, concurrentielle, commerciale, productive de leur entreprise. Cela pourra pendre la forme d'un business game en équipe, ou d'un projet de création d'entreprise avec l'élaboration d'un business plan.
 
Pré-requis :
Environnement économique et juridique de l'entreprise, outils et techniques de gestion

BCC Analyse de problèmes, données et systèmes 2

Algorithmique Générale

Crédits ECTS : 5
Semestre d'enseignement : S5
Volumes horaires : CM : 18, TD : 24
Descriptif :
  1. Petits programmes (puissance(x,n) (ardu: en itératif de complexité log), Hanoï, Ackermann...) et complexités (linéaires, quadratiques, logarithmiques, exponentielles par "effet Fibonacci", etc.)
  2. Programmes sur les listes pile (type listes chainées). Itératif, récursif, récursif terminal. Paramètres in, inout et out (calculs depuis la tête et le fond de liste, exemple ardu: "EstPalindrome" en une passe sur listes simplement chainées). Diviser pour régner (exemple ardu: générer par récursivité et DPR la liste des permutations de [1..n])
  3. Pointeurs, listes chaînées, pointeurs de pointeurs.
  4. Tableaux. Sélections. Parcours (exemple: détecter si un mot donné par tableau est sans carré, en cubique puis, ardu, en quadratique). Dichotomie. Tris simples, rapide, par tas, fusion. Hachage.
  5. Arbres. Programmes sur les arbres. Informations ascendantes et descendantes. (Ardu: donnez une demi-douzaine de façons de faire "EstComplet(A)" en temps linéaire). Parcours et notations préfixe infixe postfixe d'expressions. ABR simples puis équilibrés.
  6. Algo avancée, diviser pour régner (Multiplier deux nombres en mieux que quadratique). Programmation dynamique. (Distance d'édition de deux textes). Backtracking. -Sous réserve de temps-
  Responsable : Laurent Rosaz
Objectifs d'enseignement :
Programmer proprement et efficacement : Programmation, Algos, Structures de données, Complexités.
Organisation de l'UE :
Cours, TD. et projet C. Evaluation par partiel et examen terminal écrit.
Pré-requis :
Premières expériences en algorithmique, programmation et complexité (en L1 et L2)

Introduction Apprentissage Statistique

Crédits ECTS : 5
Semestre d'enseignement : S6
Volumes horaires : CM : 18, TP : 24
Descriptif :
Ce cours a pour but d'introduire les concepts de bases de l'apprentissage statistique en les illustrant sur des réseaux de neurones simples et en les appliquants à la reconnaissance de caractères, et ensuite en analysant les résultats obtenus. Dans un second temps, on s'intéressera à l'apprentissage par renforcement consistant à guider l'apprentissage d'un agent autonome en interaction avec un environnement à partir d'expérience. Le cours se abordera les points suivants
  • La notion de gradient et d'optimisation de fonction de coût
  • le perceptron multiclasse, et multicouche
  • les ensembles pour valider l'apprentissage
  • la notion d'agent en interaction avec un environnement
  • les équations de Bellman permettan d'évaluer la politique de mouvement pour l'agent
  • l'apprentissage Q-learning et SARSA
Responsable : Aurélien Decelle
Objectifs d'enseignement :
concepts fondamentaux de l'apprentissage automatique/statistique
et application à des exemples simples.
Organisation de l'UE :
L'UE s'organise en cours accompagnés de séances de (quelques) TD et de (nombreux) TP.
Pré-requis :
introduction à l'informatique et python, introduction à la programmation impérative, Calculus 1-2, Algèbvre linéaire 1-2, Combi Proba  

Logique pour L'Informatique

Crédits ECTS : 4
Semestre d'enseignement :
Volumes horaires :
Descriptif :
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

BCC Transverse

UEs obligatoires

Lang - Anglais 4b

Crédits ECTS : 2.5
Semestre d'enseignement :
Volumes horaires : TD : 25
Descriptif :
ANGLAIS DE SPÉCIALITÉ. Cette UE s'inscrit dans la continuité de l'UE Langue-Anglais3 et le travail sur la langue de spécialité (scientifique et/ou à visée professionnelle) : on prolongera l'approche actionnelle dans les 5 compétences et on s'attachera à la préparation de l'étudiant aux différentes tâches liées à son activité scientifique telles que la rédaction d'un compte rendu d'expérience, le commentaire d'un graphique, la desciption d'un processus mais aussi à son insertion dans le monde professionnel : rédaction d'un CV ou d'une lettre de motivation en vue d'un stage... On proposera une initiation au débat ainsi qu'un entraînement à la certification CLES 2. Le travail se fera par groupes de niveau.
Objectifs d'enseignement :
Attendus de l'UE Langue-Anglais4 : Niveau B2+/C1 dans les 5 compétences linguistiques.
Organisation de l'UE :
Pré-requis :

CFA

Crédits ECTS : 5
Semestre d'enseignement :
Volumes horaires :
Descriptif :
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :

1 UE au choix S6

Informatique Théorique

Crédits ECTS : 5
Semestre d'enseignement : S6
Volumes horaires : CM : 18, TD : 24
Descriptif :
Introduction rapide aux automates. Machines de Turing déterministes. Variantes. Indécidabilité. Problème de l'arrêt. Réductions. Rice. Post. Machines de Turing non-déterministes. NP. Certificats et vérifications. Réductions polynomiales. NPcomplétude. SAT. Cliques. Hamiltonien. 3Coloriages. SacADos. Algos d'approximation. Ardu : Autres classes: Hiérarchies, L, NL, PSPACE.

Responsable : Laurent Rosaz
Objectifs d'enseignement :
Connaitre les limites théoriques de l'algorithmique et comprendre pourquoi et à quel point certains problèmes sont intrinsèquement difficiles.
Organisation de l'UE :
Cours et TD. Évaluation par un partiel et un examen terminal écrit.
Pré-requis :
Avoir des notions d'algorithmique, distinguer le polynomial de l'exponentiel. Etre capable de faire des raisonnements (preuves par l'absurde, preuves parfois abstraites) et avoir un certain sens combinatoire.

Introduction IA

Crédits ECTS : 5
Semestre d'enseignement : S6
Volumes horaires : CM : 17, TP : 13, TD : 12
Descriptif :
Le cours aborde différents cadres de formalisation.
  • La première partie étudie celui des jeux avec adversaires (e.g. Echecs, Dames, Othello, …). Elle présente la notion de stratégie de jeu, des techniques d'estimation de configuration, le principe d'une recherche Minimax et présente différents algorithmes permettant, à partir d'une simple description des règles d'un jeu, d'explorer efficacement l'ensemble des parties possibles (e.g. AlphaBeta, NegEchecAlphaBeta, MTDf,...).
  • La seconde partie s'intéresse aux problèmes pouvant se formaliser en termes d’états et d’opérateurs de changements d’états. Leur résolution s'apparente alors à la recherche d'un chemin solution dans un graphe. Différents algorithmes d'exploration sont présentés et comparés. Certains d'entre eux exploitent des informations heuristiques sur les états pour les guider plus efficacement vers le but à atteindre.
  • Le cours introduit également quelques notions de représentation de connaissance et de raisonnement, centrales en Intelligence Artificielle, par le bais des systèmes à bases de connaissances. Differents niveaux de langages sont illustrés et les principes de base des moteurs d'inférences (chaînage avant, arrière ou mixte) permettant de raisonner efficacement sur des bases de connaissances sont introduits.
Responsable: Philippe Chatalic
Objectifs d'enseignement :
Ce cours permet de se familiariser avec quelques cadres génériques de résolution de problèmes, dans le but de concevoir des agents intelligents. L'accent est mis sur des algorithmes de recherche permettant d'explorer efficacement des espaces de recherche (modélisés par des arbres et/ou des graphes) généralement de trop grande taille pour pouvoir être représentés exhaustivement.
Organisation de l'UE :
Le cours équilibre les dimensions théoriques et pratiques. Les techniques présentées sont mise en oeuvre au travers d'un ou plusieurs projets, comme par exemple la réalisation de joueurs intelligents s'affrontant au travers d'un tournoi. Le langage de programmation utilisé est Java.
Pré-requis :
Concept de base en langage Java (Classes, Héritage, Interfaces),
Algorithmique et structures de données de base (séquences, arbres, graphes)

Programmation Web

Crédits ECTS : 5
Semestre d'enseignement :
Volumes horaires :
Descriptif :
Objectifs d'enseignement :
Organisation de l'UE :
Pré-requis :