AccueilLicence généraleInformatiqueInformatique

Licence InformatiqueParcours type : Informatique

Objectifs

L’objectif de ce parcours est de donner une solide formation des bases de l’informatique, équilibrée entre les aspects théoriques, fondamentaux, appliqués et techniques. Il permet d'accéder à tout Master d'Informatique, d'entrer dans une école d'ingénieurs sur dossier ou de trouver un travail niveau Bac +3 en informatique.

Formation et recherche

Le parcours Informatique est organisé et enseigné par des enseignants-chercheurs du Laboratoire d’Informatique et Systèmes (LIS). La formation propose certains enseignements optionnels particulièrement orientés vers la recherche en troisième année.

Pré-requis obligatoires

Cette Licence est ouverte de droit à tout titulaire d'un Bac Scientifique ou équivalent (en particulier en provenance de l'étranger). Les étudiants titulaires d'un BTS, d'un DUT d'informatique ou d'un diplôme équivalent, peuvent postuler pour entrer en deuxième ou troisième année (sur dossier). Il est aussi possible d'intégrer cette formation par le biais de la validation des acquis.

Pré-requis recommandés

Un niveau suffisant en informatique, ainsi qu’une appétence pour cette discipline, est recommandé pour réussir ce parcours. Afin de faciliter l’apprentissage en L2, il est conseillé d’avoir suivi l’option d'informatique en L1.

Régimes d'inscription

Cette formation est accessible en

Formation initiale
Formation continue

Compétences visées

  • Identifier, articuler et mettre en œuvre les outils théoriques et techniques de l’informatique les mieux adaptés à la résolution d'un problème informatique complexe.
  • Modéliser un problème, concevoir des solutions techniques et/ou algorithmiques, les mettre en œuvre et les évaluer au regard de critères d'efficacité, de fiabilité et de qualité de conception.
  • Lire et exploiter des documents en français ou en anglais : documentation, texte scientifique et cahier des charges. Présenter oralement ou par écrit les résultats d’un travail avec clarté, concision et rigueur.
  • Utiliser les outils et techniques de gestion de projet informatique : environnement de développement, contrôle de version, automatisation de la production et méthodes de pilotage et de réalisation de projets.
  • Réaliser un projet informatique prenant en compte les besoins d’un client, en étant conscient de l’existence de dimensions non techniques. Être initié aux processus de production, de diffusion et de valorisation des savoirs et technologies.
  • Développer son projet personnel et professionnel. Connaître les problèmes liés à la propriété intellectuelle, notamment les licences de logiciels, et à la protection de la vie privée.
  • Compétence spécifique pour le parcours Informatique : Comprendre le fonctionnement des systèmes informatiques (réseaux, systèmes d’exploitation, architectures, langages de programmation et systèmes de gestions de bases de données), utiliser leurs outils dédiés, concevoir des interfaces.

Métiers visés

Code ROME :

Spécialité de formation (code NSF) :

  • 326m : Informatique, traitement de l'information

Stages et projets encadrés

Ce parcours offre la possibilité d’effectuer un stage ou un projet en troisième année. Le stage donne lieu à un mémoire écrit et à une présentation orale. De plus, des projets tutorés et de nombreux mini-projets sont intégrés dans les enseignements.

Deuxième année parcours Informatique Semestre 3 Informatique : parcours Informatique

[ détails ]

  • Anglais scientifique 2 (3 crédits)

    Code : S04AN3M1Langue : Anglais.

    Contenu : Les cours se déroulent en anglais et reposent sur l'interaction entre étudiants, sollicitée et guidée par les enseignants. Les thèmes étudiés sont abordés par le biais de documents écrits, audio et vidéo variés, récents et authentiques accessibles sur la plateforme AMeTICE et la mise en activité des étudiants vise à renforcer leurs compétences par la pratique. Des supports numériques de soutien et d'approfondissement sont mis à disposition des étudiants pour leur auto-apprentissage.

    Volume horaire : 18h de TD

    Plus d'informations

  • Programmation 2 (6 crédits)

    Code : S04IN3A1Langue : Français.

    Contenu : Cet enseignement consiste en un approfondissement des principes et concepts liés à la programmation. Il est basé sur le langage de programmation Java, et donc aborde en particulier les concepts de la programmation orientée objet mais aussi les aspects fonctionnels. L'accent sera mis sur la méthodologie et les bonnes pratiques à adopter pour programmer proprement. Polymorphisme : interfaces, classes abstraites, extension Programmation au niveau de la fonction : patron de méthode, branchements, boucles, collections, streams Interface génériques : consommateur, producteur, conteneur, interfaces fonctionnelles Principes de base de conception : Don't repeat yourself , Single responsability principle , refactoring Méthodologie : spécification, documentation, tests, gestion de version

    Volume horaire : 18h de CM - 18h de TD - 24h de TP

    Plus d'informations

  • Structures discrètes (6 crédits)

    Code : S04IN3A2Langue : Français.

    Contenu : Apprendre à raisonner sur les structures algorithmiques de bases, à les utiliser et à les programmer : tableaux, structures séquentielles (listes, mots, files), arbres et graphes. Outils d'analyse des algorithmes (20%) : analyse d'algorithmes et complexité asymptotique, preuve de terminaison, preuve de correction, invariants, préconditions et postconditions Vecteurs et matrices (15%) : recherche dichotomique, produits scalaire et matriciel, tableaux Listes et séquences finies (25%) : monoïde libre, sous-séquences, facteurs, concaténation, listes chainées, doublement chainées, implémentation par tableau, structures abstraites de listes, files, piles Arbres (25%) : induction, dépendances entre arité, nombre de nœuds et hauteur, parcours d'arbres Graphes (15%) : lemme des poignées de mains, théorème de caractérisation des arbres, représentation matricielle, fermeture transitive

    Volume horaire : 18h de CM - 18h de TD - 24h de TP

    Plus d'informations

  • Bases de données relationnelles (6 crédits)

    Code : S04IN3A3Langue : Français.

    Contenu : Cet enseignement donne les bases nécessaires pour concevoir et mettre en œuvre un système de bases de données relationnelles : Introduction au modèle relationnel Algèbre relationnelle Langage SQL : requêtes, création, mise à jour ; contraintes de création ; vérifications, vues Théorie de la conception : décomposition (DF, DMV), normalisation (1NF, 2NF, 3NF, BCNF, 4NF), algorithmes de conception Mise en œuvre de la conception Modèle entité/association, modèle Merise (MCD) Dérivation vers le relationnel

    Volume horaire : 18h de CM - 18h de TD - 24h de TP

    Plus d'informations

  • Automates finis (3 crédits)

    Code : S04IN3A4Langue : Français.

    Contenu : Ce cours permet d'appréhender les bases théoriques de l'informatique en définissant la notion d'automate. Automates finis déterministes et non-déterministes (AFD-AFN) et leur utilisation en modélisation. Produit cartésien d'automates Déterminisation d'automates finis non-déterministes Clôture booléenne des AFN (union, intersection, complémentaire) Minimisation d'automates finis Test du vide et équivalence/inclusion de langages réguliers Recherche de motif (automate de Simon)

    Volume horaire : 9h de CM - 15h de TD - 6h de TP

    Plus d'informations

  • Architecture des ordinateurs (3 crédits)

    Code : S04IN3A5Langue : Français.

    Contenu : Ce cours présente les fonctionnements et la conception des circuits des bases d'un ordinateur. Fonctionnement d'un ordinateur (30%) : circuits combinatoires, séquentiels, mémoire, flux de données et instructions Machine de Mealy (30%) : passage d'un programme à une machine Assembleur (40%) : jeux d'instruction, registres, principe de codage

    Volume horaire : 9h de CM - 9h de TD - 12h de TP

    Plus d'informations

  • Probabilités pour l'informatique (3 crédits)

    Code : S04IN3A6Langue : Français.

    Contenu : Ce cours représente un premier contact avec les probabilités et aborde les outils essentiels à leur utilisation en informatique. Les étudiants étudieront des notions élémentaires telles que les variables aléatoires, les distributions de probabilités, etc. avec des exercices sous la forme de travaux dirigés. À l'issue de ce cours, les étudiants seront à même de formuler des solutions probabilistes à des problèmes concrets, ce qui leur permettra de maîtriser l'utilisation des probabilités dans des cours plus avancés (algorithmes randomisés, machine learning , etc.) Analyse combinatoire et axiomes (16,7%) : Principe fondamental du dénombrement, permutations, combinaisons, définition axiomatique de la probabilité Probabilité conditionnelle et indépendance (16,7%) : probabilité conditionnelle, formule de Bayes, événements indépendants, fonctions de probabilité conditionnelles Variables aléatoires discrètes (16,7%) : variables aléatoires discrètes, fonctions de répartition, espérance et variance, principales distributions discrètes (Bernoulli, Poisson, …), Exemple : processus de Markov Variables aléatoires continues (16,7%) : espérance et variance, distribution uniforme, distribution normale, distribution exponentielle, Exemple : processus de Poisson Théorème limite (16,6%) : loi faible de grands nombre, théorème central limite, loi forte des grandes nombres Probabilité et information (16,6%) : introduction à la théorie de l'information, entropie de Shannon, codage de l'information, Exemple : cryptographie

    Volume horaire : 9h de CM - 21h de TD

    Plus d'informations

Deuxième année parcours Informatique Semestre 4 Informatique : parcours Informatique

[ détails ]

  • Anglais scientifique 3 (3 crédits)

    Code : S04AN4M1Langue : Anglais.

    Contenu : Les cours se déroulent en anglais et reposent sur l'interaction entre étudiants, sollicitée et guidée par les enseignants. Les thèmes étudiés sont abordés par le biais de documents écrits, audio et video variés, récents et authentiques accessibles sur la plateforme AMeTICE et la mise en activité des étudiants vise à renforcer leurs compétences par la pratique. Des supports numériques de soutien et d'approfondissement sont mis à disposition des étudiants pour leur auto-apprentissage.

    Volume horaire : 18h de TD

    Plus d'informations

  • Algorithmique 1 (6 crédits)

    Code : S04IN4A2Langue : Français.

    Contenu : L'objectif de cette unité est d'introduire les structures de données et les techniques de conception de bases de l'algorithmique, et d'étudier les outils d'analyse et de preuve de corrections des algorithmes. Notions de bases pour l'analyse des algorithmes ; algorithmes de tris Algorithmes de tris, optimalité asymptotique (notamment preuve de borne inférieure) ; tris linéaires Tas binaire ; tri par tas binaire Dictionnaire ; arbre binaire de recherche non-équilibré, insertion et suppression de clés Équilibrage des arbres binaires de recherche ; files de priorité (hors tas binaire) Tables de hachage, chainage simple ; nombre de collisions ; extension : filtre de Bloom ou table coucou Énumération et algorithmes par rebroussement (SAT, sac-à-dos, problèmes logiques) Programmation dynamique, principe et exemples (ordonnancement sur une machine, sous-séquence monotone la plus longue) Graphes et représentation par liste d'incidences ; plus court chemins, algorithme de Dijkstra Algorithmes de plus courts chemins : Bellman-Ford et Floyd-Warshall Arbres couvrants de poids minimum, algorithmes de Prim, de Kruskal ; structure d'union-find.

    Volume horaire : 18h de CM - 18h de TD - 24h de TP

    Plus d'informations

  • Projet : initiation génie logiciel (3 crédits)

    Code : S04IN4A3Langue : Français.

    Contenu : Cet enseignement consiste en un projet permettant de sensibiliser les étudiants à un certain nombre de concepts importants de génie logiciel : Outils de gestion de version Moteur de production Tests unitaires Méthodologie de gestion de projet (méthode agile) Modularité de code Sensibilisation à la conception

    Volume horaire : 6h de CM - 24h de TP

    Plus d'informations

  • Langages formels (3 crédits)

    Code : S04IN4A4Langue : Français.

    Contenu : Expressions régulières, langages rationnels Clôture rationnelle des AFN (concaténation, étoile de Kleene) Théorème de Kleene Résiduels, automate canonique et lemme de l'étoile Grammaire algébrique (modélisation des expressions arithmétiques) - algorithme CYK Automates à pile Evocation de la hiérarchie de Chomsky

    Volume horaire : 9h de CM - 15h de TD - 6h de TP

    Plus d'informations

  • Programmation C et système (6 crédits)

    Code : S04IN4I1Langue : Français.

    Contenu : Cet enseignement donne les bases de la programmation en C et de l'utilisation du système via des programmes : structure d'un programme : syntaxe générale, déclaration vs définition de variable/fonction, fichier d'entête (.h), fichier source (.c), compilation séparée, binaires de source (.o), édition de lien, makefile types structurés : définition d'une structure, alias de type (typedef), opérateur d’accès de champ, fonctions manipulant une structure par valeur (en argument et en retour) pointeurs : pointeurs typés, opérateur de référencement et d'indirection, opérateur d'accès au champ d'une structure pointée, pointeur générique non-typé, pointeurs et tableaux, arithmétique de pointeurs, argument de fonction passé par adresse (type simple, tableau, structure), arguments en ligne de commande, pointeurs sur fonction, allocation dynamique de mémoire entrée-sortie : flux, entrée et sortie standard, sortie d'erreur, fonctions de flux orientées caractères, fonctions de status de flux, fonctions d'ouverture/fermeture de fichier, fonction de formatage sur les chaînes, fonctions de flux binaires entrée de répertoire POSIX : types répertoire et entité de répertoire, fonction d'ouverture/lecture/fermeture gestion de processus : pid d'un processus et de son parent, création d'un processus par duplication, recouvrement d'un processus par une image, attente d'un processus enfant, envoi et réception d'un signal manipulation de descripteur de fichiers : descripteur de fichier, lecture/écriture sans tampon, duplication de descripteur, tubes anonymes, descripteurs avec stdio

    Volume horaire : 18h de CM - 18h de TD - 24h de TP

    Plus d'informations

  • Option (S4) (6 crédits)
    • MIAGE (6 crédits)

      Code : S04FE4A1Langue : Français.

      Contenu : non disponible.

      Volume horaire : 27h de CM - 33h de TD

      Plus d'informations

    • Web (6 crédits)

      Code : S04IN4A6Langue : Français.

      Contenu : Cours sur l'histoire d'internet et du web : protocoles (tcp, url, DNS), … Notions réseau : adresse internet, numéro de port, client/serveur. Rudiments de http : syntaxe générale requête et réponse, méthodes principales GET/POST, erreurs 4xx et 5xx ; protocole stateless, notion de cookie, session et session_id Langages : html5, css3, sélecteurs css, php Notions de sécurité : bonne gestion de formulaire, les différentes responsabilités en matière de sécurité Utilisation de frameworks : exemples coté serveur et coté client, intérêt des frameworks pour la sécurité

      Volume horaire : 16h de CM - 10h de TD - 34h de TP

      Plus d'informations

  • PPPE 2 ou ProMEEF 1 (3 crédits)
    • Pro-MEEF 1 : Enseigner, éduquer, former : des métiers complexes. Semestre 4 (3 crédits)

      Code : PROMEEF1S4Langue : Français.

      Contenu : non disponible.

      Volume horaire : 24h de TD

      Plus d'informations

    • Projet personnel et professionnel de l'étudiant 2 (3 crédits)

      Code : S04PP4M1Langue : Français.

      Contenu : L'objectif de cet enseignement est de faire découvrir les milieux professionnels afin de favoriser les choix d'orientation à l'issue de la licence. Présentation de l'UE et du projet de groupe “découverte de structures professionnelles” constitution des groupes de travail, conseils pour alimenter le dossier “preuve de compétences” (e-portfolio) Présentations collectives du secteur professionnel en commun Bilan sur le test talentoday réalisé en inter-séances bilan des projets individuels des étudiants (poursuite d'études et insertion professionnelle)

      Volume horaire : 4h de CM - 12h de TD - 4h de TP

      Plus d'informations

Troisième année parcours Informatique Semestre 5 Informatique : parcours Informatique

[ détails ]

  • Anglais scientifique 4 (3 crédits)

    Code : S04AN5M1Langue : Français.

    Contenu : non disponible.

    Volume horaire : 18h de TD

    Plus d'informations

  • Programmation et conception (6 crédits)

    Code : S04IN5A1Langue : Français.

    Contenu : La conception consiste à donner à un projet de programmation une organisation souple mais structurante. Une telle organisation permettra de garder un code clair au cours des différentes évolutions que le code subira. Ces évolutions devront pouvoir être faites facilement, et le code pourra à tout moment être testé facilement. La modularité intelligente est une clé de voûte de la conception. Les principes de cette modularité sont énoncés dans les principes SOLID. Le savoir-faire de cette modularité est résumé dans les patrons de conceptions qui permettent d'éviter les pièges habituels de conception en suivant des modèles sous la forme de diagrammes UML. Documentation, spécification, automatisation des tests (20%) Principes SOLID : SRP, OCP, LSP, ISP, DIP (20%) Diagramme de classes UML (20%) Présentation et utilisation de patrons de conceptions sur des exemples concrets (40%)

    Volume horaire : 18h de CM - 18h de TD - 24h de TP

    Plus d'informations

  • Algorithmique 2 (6 crédits)

    Code : S04IN5A2Langue : Français.

    Contenu : Cet enseignement prolonge celui d'Algorithmique 1, en accentuant les aspects de conception des algorithmes à partir de techniques générales. Parcours de graphes, propriétés des parcours de graphes Application des parcours de graphes (notamment tri topologique, composantes fortement connexes) Flots maximum dans un graphe, coupe minimum, algorithme de chemins augmentants Flots de coût minimum Programmation dynamique, principes et exemples (alignement de séquences, distance d'édition, plus court chemin dans un graphe acyclique,…) Diviser-pour-régner, utilisation du master theorem pour le calcul de complexité (on ne démontre pas le théorème) Algorithmes gloutons et algorithmes d'approximation. On montrera des algorithmes gloutons optimaux, non-optimaux, et des algorithmes gloutons trouvant des solutions à ratio d'approximation constant Algorithmes randomisés (sélection, quicksort, collectionneur de vignettes) Recherche de motifs Analyse amortie (exemples : itérateur sur un arbre, incrément binaire, algorithme de Knuth-Morris-Pratt) Géométrie algorithmique (algorithmes par balayage, algorithmes incrémentaux)

    Volume horaire : 18h de CM - 24h de TD - 18h de TP

    Plus d'informations

  • Bases de données relationnelles : approfondissement (3 crédits)

    Code : S04IN5A3Langue : Français.

    Contenu : Requêtes complexes : imbriquées, récursives, hiérarchiques,… Notions de transaction et de concurrence Traitement et optimisation de requêtes, implémentations des opérateurs Gestion des droits Extension du relationnel aux objets (SQL3)

    Volume horaire : 9h de CM - 9h de TD - 12h de TP

    Plus d'informations

  • Systèmes d'exploitation (3 crédits)

    Code : S04IN5A4Langue : Français.

    Contenu : Ce cours présente les principes généraux qui sont à la base des systèmes d'exploitation (SE) modernes tels que la notation de processus, interruptions, ordonnancement, gestion de mémoire et de fichiers. Introduction et historique (10%) : définition d'un SE, historique, différents types de SE Architecture, Interruptions et Processus (10%) : description d'une machine du point de vue SE, concepts et mécanismes d'interruptions, définition et caractérisation de processus Ordonnancement des processus (20%) : définition et mesures de performance, algorithmes simples, ordonnancement sur UNIX, Linux et Windows Outils de synchronisation (20%) : section critique, exclusion mutuelle, attente active, attente passive Gestion de la mémoire (20%) : mémoire vive, mémoire virtuelle Système de gestion de fichiers (20%) : organisation physique et logique des fichiers et disques

    Volume horaire : 9h de CM - 6h de TD - 15h de TP

    Plus d'informations

  • Logique (6 crédits)

    Code : S04IN5A5Langue : Français.

    Contenu : Cette unité d'enseignement a pour objectif de raisonner sur les formalismes logiques au cœur des mathématiques et de l'informatique. Des systèmes formels de déduction sont étudiés, tant pour aider à mieux prouver manuellement des théorèmes que pour comprendre comment automatiser les preuves. Calcul propositionnel syntaxe et sémantique modélisation par SAT et algorithmes pour SAT (et ses variantes) preuves formelles : séquents, résolution, déduction naturelle compacité Calcul des prédicats syntaxe et sémantique modélisation formes normales, skolémisation preuves formelles : séquents, résolution

    Volume horaire : 20h de CM - 30h de TD - 10h de TP

    Plus d'informations

  • PPPE 3 ou ProMEEF 2 (3 crédits)
    • Pro-MEEF 2 : Observer des situations d'enseignement, d'éducation et de formation. Semestre 5 (3 crédits)

      Code : PROMEEF2Langue : Français.

      Contenu : non disponible.

      Volume horaire : 24h de TD

      Plus d'informations

    • Projet personnel et professionnel de l'étudiant 3 (3 crédits)

      Code : S04PP5M1Langue : Français.

      Contenu : L'objectif de cet enseignement est d'accompagner le choix argumenté d'un parcours de formation post-licence de l'étudiant en vue de sa professionnalisation et de lui donner des outils d'insertion professionnelle. Présentation de l’UE et objectifs. Présentation des masters AMU Présentation orale des formations post-licences envisagées par chaque étudiant. Régulation e-portfolio Bilan des connaissances : savoir, savoir-faire et savoir-être Bilan personnel lié aux expériences professionnelles Formation TRE (CV, lettre de motivation, entretien, outils numériques). Simulation d'entretiens de recrutement (Mise en situation). Validation des projets personnels et e-portfolio

      Volume horaire : 4h de CM - 6h de TD - 4h de TP

      Plus d'informations

Troisième année parcours Informatique Semestre 6 Informatique ; parcours Informatique

[ détails ]

  • Anglais scientifique 5 (3 crédits)

    Code : S04AN6M1Langue : Français.

    Contenu : non disponible.

    Volume horaire : 18h de TD

    Plus d'informations

  • Compilation (6 crédits)

    Code : S04IN6A4Langue : Français.

    Contenu : Ce cours aborde toutes les étapes de la compilation, de l'analyse d'un langage source jusqu'à la génération d'un langage cible, en passant par l'analyse lexicale, l'analyse syntaxique, la représentation intermédiaire, la génération de code et l'interface avec le système d'exploitation et les ressources. Il s'agit d'un cours à la fois pratique , avec l'implémentation d'un compilateur de A à Z sous la forme d'un projet, mais aussi théorique , fondé sur des notions formelles et nécessitant beaucoup de rigueur pour manipuler des structures complexes. Forts d'une compréhension profonde de ce processus essentiel à l'informatique, les étudiants apprennent à mieux se servir d'un compilateur, à ne pas le considérer comme une boîte noire et, ainsi, à mieux programmer. De plus, les techniques décrites dans le cadre de la compilation peuvent être utilisées pour tout processus de traduction non trivial entre deux types de structures. Finalement, ce cours permet la mise en pratique de concepts de gestion de projet, afin d'organiser le développement d'un projet logiciel important. introduction (10%) : architecture d'un compilateur, étapes d'analyse, étapes de génération, notions élémentaires (langage source, langage cible, représentation intermédiaire, table des symboles, etc.) analyse lexicale (10%) : rappel expressions régulières, rappel automates finis, unités lexicales, identificateurs, écriture d'analyseurs lexicaux avec (f)lex analyse syntaxique (20%) : rappel grammaires hors contexte, arbre de dérivation, ambiguïté, récursivité gauche/droite, factorisation, écriture de grammaires, rappel automates à pile, algorithmes d'analyse syntaxique (LL, LR, etc.) analyse sémantique (10%) : table des symboles, typage, vérifications de types, conversion/coercition de types grammaires attribuées (20%) : actions sémantiques, système d'attributs synthétisés/hérités, construction de l'arbre abstrait langage machine (10%) : rappel architecture des ordinateurs (processeur, registres, mémoire, etc.), jeu d'instructions assembler (transfert de données, opérations arithmétiques/logiques, instructions de contrôle, etc.), interface avec système d'exploitation, pile du système génération de code (20%) : allocation de ressources (mémoire, registres, etc.), génération d'instructions, appels de fonction, trame de pile, allocation et portée de variables, passage d'arguments par valeur/référence

    Volume horaire : 20h de CM - 20h de TD - 20h de TP

    Plus d'informations

  • Calculabilité (3 crédits)

    Code : S04IN6A5Langue : Français.

    Contenu : Cette unité d'enseignement a pour objectif d'étudier la théorie de la calculabilité pour distinguer les problèmes qu'on peut résoudre en informatique, de ceux qu'on ne peut pas résoudre. Machine de Turing : déterministe (équivalence non-déterministe et multi-ruban) Décider et calculer : langage récursif et récursivement énumérable, fonction calculable et semi-calculable. Propriétés de clotûre des langages récursifs et r.e. Existence de fonctions non calculables par dénombrement (diagonale de Cantor) Problème de l'arrêt Réduction : many-one-réduction Turing Théorème de Rice Universalité et complétude Thèse de Church Turing λ-calcul : termes, beta-réduction, forme normale, terminaison… P, NP, NP-difficile : parler de certificats et montrer des exemples de problèmes NP-difficiles avec le genre de réduction que cela implique (pas un acquis attendu en fin de cours)

    Volume horaire : 9h de CM - 21h de TD

    Plus d'informations

  • Applications réseaux (6 crédits)

    Code : S04IN6A6Langue : Français.

    Contenu : Introduction : contexte, couches, IPv4/IPv6, DNS Programmation Socket : API, fonctionnement, utilisation en TCP et UDP, indépendance langage de programmation/protocole réseau I/O asynchrone : problématique, solutions utilisant un pool de threads et monothread Programmation distribuée en passage de messages : notions, applications (clavardage/gazouillis/DHT/…) en mode étoile et P2P Serveurs Unix : rôle, exemples des serveurs webs apache et nginx, notions de service réseaux Unix, administration, optimisation

    Volume horaire : 20h de CM - 14h de TD - 26h de TP

    Plus d'informations

  • Projet ou stage (6 crédits)
    • Stage (6 crédits)

      Code : S04IN6A2Langue : Français.

      Contenu : Le but de cet enseignement est de permettre à l'étudiant de préciser son projet de formation et le projet professionnel par le biais d'un stage court au sein d'une entreprise ou d'un laboratoire. Au cours du stage, l'étudiant met en application ses connaissances, développe ses aptitudes, réalise des travaux qui contribuent à sa formation et prépare son insertion professionnelle.

      Plus d'informations

    • Projet (6 crédits)

      Code : S04IN6A3Langue : Français.

      Contenu : L'objectif de cet enseignement est la réalisation d'un projet d'informatique appliquée portant sur un sujet proposé ou validé par un enseignant. Le projet sera réalisé par une équipe de 4 à 6 étudiants et l'accent sera donc mis sur les compétences nécessaires à la réalisation d'un projet en équipe. Rédaction de cahiers des charges : étude de l'existant, étude des besoins, étude de faisabilité, analyse préalable Rédaction de manuels d'utilisation et d'exploitation Analyse et conception : Merise, UML Mise en œuvre des interfaces : Php-MySql, Java Jeux de tests : Junit, MySql Test Framework Organisation et planification de projet : diagramme de Gantt, PERT, Scrum Travail en équipe : outils de partage de documents (git, cloud)

      Volume horaire : 6h de CM

      Plus d'informations

  • Options (6 crédits au choix)
    • Pro-MEEF 3 : Analyser des pratiques d'enseignements, d'éducation et de formation. Semestre 6 (3 crédits)

      Code : PROMEEF3Langue : Français.

      Contenu : non disponible.

      Volume horaire : 24h de TD

      Plus d'informations

    • Développement jeux android (3 crédits)

      Code : S04IN6A8Langue : Français.

      Contenu : Ce cours est une introduction au développement Android en java avec le SDK natif et Android Studio. Le but est d'apprendre les bases du développement d'une interface graphique utilisateur avec un outil professionnel, de comprendre comment s'organise le code et d'utiliser l'API. Les notions de programmation événementielle et de patron de conception MVC seront abordées, ainsi que de courbes de Bézier et de transformations géométriques, dans le but de réaliser un jeu de plateau en 2D sous la forme d'un projet.

      Volume horaire : 9h de CM - 9h de TD - 12h de TP

      Plus d'informations

    • Application web (3 crédits)

      Code : S04IN6A9Langue : Français.

      Contenu : Cette unité d'enseignement forme les étudiants à concevoir une application web riche et/ou application mobile connectée avec une interface utilisateur réactive à l'aide d’un framework. Ils utiliseront des outils standards de l'industrie et une méthodologie appropriée afin de concevoir lors d'ateliers pratiques une petite application web complète multi-utilisateurs. Développement côté client : technologies web, HTML, javascript… Développement côté serveur : bases de données, gestion des sessions, sécurité… Interface de communication entre le serveur et les clients : ajax, web sockets

      Volume horaire : 9h de CM - 21h de TP

      Plus d'informations

    • Intelligence artificielle (3 crédits)

      Code : S04IN6M1Langue : Français.

      Contenu : Cette UE est une introduction à l'intelligence artificielle. Elle s'intéresse principalement à la modélisation des problèmes et aux aspects algorithmiques qui permettent de raisonner une fois les problèmes modélisés. Ces différentes notions sont illustrées à travers le formalisme des graphes d'états et la théorie des jeux. Introduction (20%) : présentation générale de l'IA, définition, contexte, … Graphes d'états (40%) : formalisme, modélisation de problèmes, résolution (recherche arborescente, A*, …) Théorie des jeux (40%) : formalisme, modélisation de jeux à deux joueurs, principes Minimax et Negamax, résolution (minimax, alpha-beta, SSS*, …), étude de certains jeux.

      Volume horaire : 10h de CM - 10h de TD - 10h de TP

      Plus d'informations

    • Traitement automatique des langues (3 crédits)

      Code : S04IN6M2Langue : Français.

      Contenu : L'objectif de cette UE est de présenter le domaine du traitement automatique des langues. Il s'agit d'un domaine porteur qui permet de développer des applications innovantes pour traiter le langage humain, telles que les assistants personnels, agents conversationnels, traducteurs automatiques. Chaque module du cours abordera une famille de modèles et/ou applications permettant de résoudre un problème concret du traitement automatique des langues. Analyse morphologique et syntaxique (16,7%) : notions élémentaires de linguistique, ambiguïtés, automates finis et grammaires hors contexte pour l'analyse du langage naturel Représentation et manipulation de textes (16,7%) : encodage de caractères, segmentation de phrases, tokénisation, loi de Zipf, vocabulaire, TTR. Recherche d'informations et classification de textes (16,7%) : vecteurs de co-occurrences, similarité du cosinus, classification de textes, algorithme des k plus proches voisins Dictionnaires électroniques (16,7%) : représentation d'informations lexicales, valence verbale, sens des mots, sémantique lexicale Analyse morphosyntaxique probabiliste (16,6%) : parties du discours, probabilité conditionnelle, n-grammes, probabilité de séquences, modèle d'étiquetage en parties du discours Grammaires logiques (16,6%) : variables, définition de grammaires logiques, unification

      Volume horaire : 9h de CM - 9h de TD - 12h de TP

      Plus d'informations

    • Modélisation algorithmique (3 crédits)

      Code : S04IN6M3Langue : Français.

      Contenu : Cette unité d'enseignement a pour objectif d'initier les étudiants à la modélisation de situations réelles sous la forme de problèmes algorithmiques connus. Les domaines d'applications abordés seront les suivants : ordonnancement et planification localisation, transport et mobilité énergie réseaux bio-informatique Les modèles que nous allons utilisés pour la formalisation des problèmes réels sont les problèmes de graphes (plus court chemin, arbre couvrant, coloration, couplage, flot, etc), les programmes linéaires et les formules propositionnelles. Les algorithmes et méthodes utilisés pour résoudre les problèmes issus de ces domaines d'applications seront les suivants : algorithmes dédiés programmation dynamique heuristiques (algorithme glouton, recherche locale, …) utilisation de solveurs (programmation linéaire, SAT, …)

      Volume horaire : 5h de CM - 10h de TD - 15h de TP

      Plus d'informations

    • Introduction à la vérification (3 crédits)

      Code : S04IN6M4Langue : Français.

      Contenu : L’objectif de cette UE sera d’aborder le thème de la vérification de programmes critiques, à l’aide de méthodes formelles comme le model-checking. Le cours présentera les outils permettant de modéliser de façon formelle le logiciel à vérifier, ainsi que les propriétés étudiées. Les algorithmes de vérification associés seront ensuite présentés, et illustrés au travers d’outils logiciels. Une approche qui pourra par exemple être présentée est la vérification de propriétés linéaires LTL via les automates de mots finis et infinis. Cette approche sera illustrée à l’aide de l’outil SPIN.

      Volume horaire : 9h de CM - 10h de TD - 10h de TP

      Plus d'informations

    • Modélisation 3D (3 crédits)

      Code : S04IN6M5Langue : Français.

      Contenu : Ce module d’option a pour but d’initier les étudiants à l’Informatique Graphique et plus particulièrement aux notions liées aux modèles géométriques. Il proposera un tour d’horizon de différents thèmes : manipulation de modèles 3D, génération de maillages, animation et rendu d’objets, analyse de données 3D complexes. L’utilisation de ces structures et algorithmes sera abordée dans les contextes du jeu vidéo, du film d’animation et de la conception assistée par ordinateur. Chaque thème sera illustré par une mise en pratique en utilisant un logiciel de modélisation 3D et en développant dans son environnement associé. Introduction à l’informatique graphique, à la modélisation 3D, aux maillages (15%) Objets et surfaces (15%) : Génération d’objets 3D, Constructive Solid Geometry (CSG), courbes et surfaces à pôles Analyse de maillages (15%) : calcul de courbures, caractéristiques sur les maillages, segmentation de zones dans les maillages, simplification de maillages Notions de géométrie discrète (15%) : voxels, morpho-math, squelettes, Voronoï, Delaunay, enveloppes convexes Introduction au rendu et à l’animation (20%) Introduction à la réalité virtuelle et à la réalité augmentée (20%)

      Volume horaire : 15h de CM - 15h de TP

      Plus d'informations

    • Introduction à l’informatique quantique (3 crédits)

      Code : S04IN6M6Langue : Français.

      Contenu : Fondamentaux du calcul quantique I : linéarité de la théorie, espace de Hilbert, q-bit, super-position, intrication ; Fondamentaux du calcul quantique II : principales portes logiques quantiques, SWAP, C-NOT, C-phase, Hadamard Circuits quantiques : circuit réversibles Algorithme quantiques I : algorithme de Grover Algorithme quantiques II : algorithme de Shor Éléments d'information quantique : entropie de Von Neumann et Entropie d'intrication

      Volume horaire : 18h de CM - 6h de TD

      Plus d'informations

    • Apprentissage automatique (3 crédits)

      Code : S04IN6M7Langue : Français.

      Contenu : Cette UE propose la découverte de l’Apprentissage Automatique, domaine au coeur du renouveau actuel pour l’Intelligence Artificielle. Le cours vise à introduire les grands principes de l’apprentissage par la machine, les étapes de la mise en place d’un processus d’apprentissage, les méthodes d’évaluation de ses résultats. Quelques algorithmes d’apprentissage sont ainsi présentés. Le coeur du travail des étudiants consiste en la mise en pratique de ces points, via un projet. Exemples de projets possibles : classification automatique d’images (base de google image), système de recommandation (base de amazon ou allociné), adversaire virtuel pour des jeux (base de alphaGo, chifoumi), … Introduction : les grand principes de l’Apprentissage Automatique (6,5%) Exemples d’algorithmes d’apprentissage (28,5%) Mise en place d’un processus d’apprentissage (35%) Validation et visualisation d’un apprentissage (30%)

      Volume horaire : 10h de CM - 10h de TD - 10h de TP

      Plus d'informations

    • Signal et image (3 crédits)

      Code : S04IN6M8Langue : Français.

      Contenu : Dans cette UE les étudiants seront sensibilisés aux aspects théoriques et aussi pratiques du traitement des signaux et des images. On abordera des notions comme les filtres, les bases de la morphologie mathématique ou la transformée de Fourier rapide (qui se base sur des approches bien connues de type “diviser pour régner”). Introduction au traitement d'images (20%) : rehaussement, couleur Traitements locaux (20%) : filtrage et base de morphologie mathématique Base de la segmentation (30%) : approches régions, contours Compression d'images (30%) : transformée de Fourier, transformée en cosinus, compression JPG

      Volume horaire : 12h de CM - 18h de TP

      Plus d'informations

    • Robotique distribuée (3 crédits)

      Code : S04IN6M9Langue : Français.

      Contenu : L'objectif de cette option est d'aborder l'algorithmique distribuée dans un contexte d'essaims de robots mobiles. La mise en oeuvre se fera tant d'un point de vue algorithmique (dans un simulateur) que d'un point de vue expérimental avec des mini-véhicules robotisés dotés de capteurs, d'émetteurs et de moyens de communication. On étudiera le modèle d'agents mobiles, ses motivations, et les problèmes fondamentaux, en particulier, les problèmes d'exploration (2D et dans un graphe), de rendez-vous et de formation de motifs. On abordera également la programmation réactive de robot individuel (boucles de contrôle, capteurs, actuateurs, communication et temps-réel avec une API haut-niveau) avant de programmer des essaims.

      Volume horaire : 10h de CM - 6h de TD - 14h de TP

      Plus d'informations