Outils pour utilisateurs

Outils du site


formations:masters:ue:m2:psy9

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
formations:masters:ue:m2:psy9 [2023/04/21 09:17] – supprimée - modification externe (Unknown date) 127.0.0.1formations:masters:ue:m2:psy9 [2023/04/21 09:17] (Version actuelle) – ↷ Page déplacée de formations:masters:cours:m2:psy9 à formations:masters:ue:m2:psy9 treinen
Ligne 1: Ligne 1:
 +~~NOTOC~~
 +----
 +
 +====== Programmation synchrone ======
 +
 +===== Description =====
 +
 +Ce module offre une introduction à la programmation de systèmes informatiques en
 +interaction continue avec un environnement extérieur, les systèmes réactifs, par
 +le biais de langages de programmation spécialisés, les langages synchrones.
 +
 +Le cours utilise comme véhicule le langage Heptagon, variante libre du logiciel
 +SCADE utilisé dans l'industrie pour la réalisation de systèmes réactifs dans un
 +contexte critique. Heptagon est utilisé pour les séances de travaux pratiques et
 +la réalisation d'un projet.
 +
 +À la fin du module, vous :
 +  * saurez reconnaı̂tre les systèmes réactifs qui vous environnent,
 +  * connaı̂trez les principaux problèmes soulevés par la conception et réalisation de systèmes réactifs,
 +  * saurez écrire des programmes synchrones capable de contrôler des dispositifs non triviaux,
 +  * serez familiarisés avec les mathématiques des systèmes réactifs, y compris des rudiments d’automatique appliquée,
 +  * aurez une idée du fonctionnement général d’un compilateur de langage synchrone.
 +
 +===== Syllabus =====
 +
 +==== Sujets centraux ====
 +
 +  * Introduction aux systèmes réactifs
 +  * Le langage synchrone Heptagon
 +    - Programmation flots de données, programmes causaux et non causaux
 +    - Structures de contrôle et automates hiérarchiques
 +    - Structures de données, tableaux, ordre supérieur
 +  * Applications
 +    - Traitement audio en temps réel
 +    - Automatique élémentaire (pendule inversé)
 +  * Implémentation des langages synchrones
 +    - Analyse de causalité
 +    - Génération de code en boucle simple
 +
 +==== Sujets potentiellement traités ====
 +
 +  * Introduction aux systèmes hybrides (temps discret/continu)
 +
 +===== Pré-requis =====
 +
 +  * Le module suppose une familiarité avec la programmation en général et le développement sous environnement UNIX en particulier.
 +  * La connaissance d’un langage fonctionnel comme OCaml ou Haskell est la bienvenue, sans être obligatoire.
 +