3081

Doctorat en sciences et technologies de l'information

Responsable : Bob-Antoine Jerry Ménélas
Regroupement de programmes : Programme d'études de cycles supérieurs en informatique (Doctorat)
Secrétariat : (418) 545-5011, poste 5629
Coordonnatrice : Justine Lévesque
Coordonnatrice : Stéphanie Girard
Adresse électronique : spcs_informatique-doctorat@uqac.ca
Grade : Philosophiae doctor

Voir les textes des mémoires et thèses en informatique.

Fermé aux admissions. Veuillez vous référer au 3121 Doctorat en informatique.

Objectifs

L'objectif général du programme de Doctorat en sciences et technologies de l'information vise la formation de chercheurs hautement qualifiés, capables de maîtriser les aspects logiciels et matériels des diverses étapes du processus de production, de traitement et de transmission de l'information dans les systèmes informatiques et dans les réseaux de communication.

Les objectifs particuliers du programme visent l'acquisition de connaissances de pointe ainsi que le développement d'aptitudes et d'habiletés en lien avec l'objectif général.

Particulièrement, les études au programme de Doctorat en sciences et technologies de l'information permettront de:

Conditions d'admission

Être titulaire d'une maîtrise en informatique ou en génie informatique ou l'équivalent obtenue avec une moyenne de 3,2 sur 4,3 ou l'équivalent;

ou

être titulaire d'une maîtrise dans un domaine connexe de l'informatique ou du génie informatique, tel le génie électrique, obtenue avec une moyenne de 3,2 sur 4,3 ou l'équivalent et posséder une formation jugée suffisante par le Comité d'admission du programme dans les domaines de l'informatique ou du génie informatique.

Le candidat doit aussi démontrer qu'il possède une connaissance suffisante des langues française et anglaise.

Le candidat doit se soumettre à une entrevue au besoin.

Durée du programme et régime d'études

La durée du programme est de quatre années d'études à temps plein. L'étudiant peut aussi cheminer à temps partiel.

L'étudiant est tenu de s'inscrire à au moins une activité de scolarité de son programme d'études ou de recherche à chaque trimestre sauf dans le cas d'une absence autorisée.

La durée maximale d'un programme de doctorat de quatre-vingt-dix (90) crédits est de quinze (15) trimestres en régime à temps complet et de vingt-quatre (24) trimestres en régime à temps partiel.

Note :

Pour les fins d'inscription et de paiement des frais de scolarité, ce programme est rangé dans la classe B.

Mode de gestion

Ce programme est offert à l'UQAC en vertu d'une entente d'extension avec l'UQO.

Règlement pédagogique particulier

Tout étudiant dont la langue maternelle est autre que le français qui éprouve des difficultés ou qui a une faiblesse en français peut, après avoir avisé la direction de programme, s'inscrire au cours 7FRA419 Français global et actes de paroles II. Ce cours sera hors programme.

Structure du programme

Ce programme comprend quatre-vingt-dix crédits (90 cr.) répartis comme suit:

Plan de formation

Les deux cours obligatoires suivants (six crédits):

INF9073Séminaire en sciences et technologies de l'information
INF9083Lecture dirigée en sciences et technologies de l'information

Deux cours de spécialisation parmi les suivants (six crédits):

INF9093Atelier en photonique et microélectronique
INF9103Atelier en calcul distribué et télécommunications
INF9123Atelier en algorithmique et génie logiciel
INF9143Atelier en traitement de données et intelligence artificielle

Un cours optionnel parmi les suivants (trois crédits):

8INF803Bases de données réparties
8INF804Vision artificielle et traitement des images
8INF808Informatique appliquée et optimisation
8INF840Structures de données avancées et leurs algorithmes
8INF844Systèmes multi-agents
8INF849Interaction 3D et réalité virtuelle
8INF851Génie logiciel
8INF852Métaheuristiques en optimisation
8INF853Architecture des applications d'entreprise
8INF855Intelligence d'affaires: principes et méthodes
8INF856Programmation sur architectures parallèles
8INF857Sécurité informatique
8INF858Systèmes intégrés de gestion d'entreprise
8INF862Gestion de projets informatiques
8INF865Programmation de plateformes mobiles
8INF870Algorithmique
8INF871Principes des moteurs de jeux
8INF874Cryptographie
8INF876Conception et architecture des systèmes d'infonuagique
8INF878Intelligence Artificielle
8INF935Mathématiques et physique pour le jeu vidéo
8INF954Forage de données
8INF956Développement avancé de logiciels : Patrons et Modèles
8INF957Programmation objet avancée
8INF958Spécification, test et vérification
8INF960Principes de conception et de développement de jeux vidéo

Ou tout autre cours de cycles supérieurs en informatique approuvé par le responsable de programme.

RECHERCHE (soixante-quinze crédits):

L'examen prédoctoral suivant (six crédits):

INF9006Examen de synthèse 6.0 cr.

Les deux activités de recherche, de rédaction et de présentation suivantes (soixante-neuf crédits):

INF9009Projet de thèse 9.0 cr.
INF9060Thèse 0.0 cr.

Dès l'inscription du sujet de recherche, et pour tous les trimestres subséquents, l'étudiant doit être inscrit à l'activité INF9060.

DESCRIPTION DES COURS

8INF803 Bases de données réparties

Approfondir les concepts de modélisation et d'implantation d'une base de donnée répartie et hétérogène selon les approches traditionnelles, actuelles et futures. Initier l'étudiant aux fonctionnalités et aux applications des bases de données spatiales, temporelles et déductives ainsi qu'au concept des entrepôts de données.

Modélisation, justification et implantation d'un cas complexe selon les approches réseau, relationnel et objet dans un environnement réparti hétérogène en considérant une stratégie de répartition choisie en fonction d'une topologie donnée. Application des contraintes de clients sur l'architecture technologique. Application des concepts de la réplication manuelle et automatisée et utilisation des mécanismes d'interconnexion de SGBD hétérogènes en accès lecture (Ingres Net, Ingres Star, Oracle, Access, lien odbc, tcp/ip), réplication et mise à jour (ex. snapshot, trigger, commit à 2 phase, réplicateur,...). Étude de cas sur les bases de données multimédia (stratégies, impact réseau, création, chargement), spatiales (ex. Oracle Spatial), déductives (ex. Datalog), temporelles (ex. TSQL, Oracle Time Series) et sur les entrepôts de données (ex. Oracle Data Warehousing).

En plus de cours magistraux, la méthode d'enseignement sera basée sur la lecture et la recherche personnelle, les rencontres individuelles et les discussions de groupe. Plusieurs concepts seront mis en pratique par l'élaboration d'un cas pratique complexe implanté dans un environnement hétérogène.

Formule pédagogique : Cours Magistral

(04/2023)

8INF804 Vision artificielle et traitement des images

Introduire les différentes méthodes utilisées en vision artificielle et en imagerie numérique. Vise l'apprentissage des fondements de ce domaine. Comprendre en profondeur des notions utilisées dans le traitement numérique des images et la vision artificielle, tant du point de vue algorithmique que mathématique.

Langage de programmation Python; Installation et utilisation des modules spécialisés pour la vision artificielle et le traitement des images: NumPy, OpenCV, scikit-image, scikit-learn, tensorflow, keras; Manipulation et transformation des images; Filtrage; Espaces de couleurs; Segmentation; Observation des caractéristiques des images; Extraction des caractéristiques; Application de l'apprentissage machine classique et profond; Réalisation d'une étude complète : hypothèses, choix des outils, validation, présentation des résultats.

Formule pédagogique : Cours Magistral

(04/2023)

8INF808 Informatique appliquée et optimisation

Acquérir une vue d'ensemble de la démarche à suivre en vue de résoudre un problème d'optimisation donné. Familiariser l'étudiant aux différentes méthodes utilisées ainsi que leurs justifications pour la résolution de problèmes d'optimisation combinatoire.

Approches de résolution de problèmes d'optimisation combinatoire: méthodes énumératives (Branch and Bound, CSP, ...), programmation mathématique, réseaux, heuristiques, métaheuristiques, simulation, etc.

Formule pédagogique : Cours Magistral

(04/2023)

8INF840 Structures de données avancées et leurs algorithmes

Acquérir les fondements théoriques et pratiques des structures de données et leurs algorithmes dans le but de comprendre comment les justifier, les utiliser et les incorporer dans la résolution des problèmes. L'accent sera mis sur les propriétés fondamentales de ces structures et l'étude de leur complexité (spatiale et temporelle : pire cas, cas moyen et amortie), sans toutefois négliger les aspects reliés à leurs implantations et leurs applications.

Introduction à la complexité algorithmique: pire cas, cas moyen et cas amorti. Recherche en table et chaînes de caractères. Listes, piles, files et applications. Arbres : de recherche, AVL, rouge et noir, B-arbres, tas et files de priorité, splay, binomial, Fibonacci, etc. Ensembles disjoints. Graphes: algorithmes de parcours, de cheminement, de flots et géométriques.

Formule pédagogique : Cours Magistral

(04/2023)

8INF844 Systèmes multi-agents

Introduire l'étudiant à un nouveau paragdime de résolution collective de problèmes qui est celui de l'intelligence artificielle distribuée. Comprendre l'évolution possible de l'approche orientée objet au travers de la technologie agent. S'initier à la problématique de recherche dans le domaine des systèmes multi-agents.

Résolution distribuée de problèmes et fondements des systèmes multi-agents. Concepts de base des agents. Représentation de connaissances et logiques du savoir et des croyances. Logique de description. Théorie de l'action. Communication et théorie des actes de langages. Coopération et coordination dans une société d'agents. Génie logiciel orienté agent.

Formule pédagogique : Cours Magistral

(04/2023)

8INF849 Interaction 3D et réalité virtuelle

Offrir les bases nécessaires pour la compréhension, la conception et le développement de systèmes exploitant les technologies de la réalité virtuelle. Aquérir un ensemble de connaissances théoriques et pratiques qui permettra d'exploiter efficacement les technologies de la Réalité Virtuelle dans des applications relevant de l'éducations ou encore visant les troubles mentaux.

Principales caractéristiques des technologies de la Réalité Virtuelle et facteurs. Techniques d'interaction 3D. Usage des technologies de la Réalité Virtuelle en éducation. Usage des technologies de la Réalité Virtuelle dans le divertissement. Usage des technologies de la Réalité Virtuelle dans les troubles mentaux. Évaluation des applications de Réalité Virtuelle.

Formule pédagogique : Cours Magistral

(04/2023)

8INF851 Génie logiciel

Permettre à l'étudiant d'approfondir ses connaissances du processus de développement de logiciel et de décompostion modulaire. Permettre à l'étudiant d'analyser les différentes méthodes et les outils qui améliorent la qualité et diminuent le coût de développement et de gestion de systèmes logiciels.

Rappel sur les différentes phases de développement de logiciel. Méthodes de développement de logiciels (classiques, itératives, spirales et agiles). Processus unifié (RUP): concept et modèle. Spécification des exigences selon une norme standard. Approche du développement par modèles : cas d'utilisation, modèles en langage UML. Décomposition et composition modulaires des applications. Réutilisation, évolution et maintenance du logiciel. Développement des applications avec les patrons de conception et l'architecture orientée modèle (MDA: Model Driven Architecture). Techniques de développement orientées objet, aspect et composant (programmation orientée objet, programmation par aspect, programmation par sujet, programmation par vue). Norme de qualité (ISO9000). Système qualité. Vérification et validation des logiciels.

Formule pédagogique : Cours Magistral

(04/2023)

8INF852 Métaheuristiques en optimisation

Familiariser les étudiants aux outils d'optimisation permettant la résolution de problématiques théoriques ou pratiques complexes. Donner aux étudiants les bases techniques et théoriques nécessaires pour concevoir, analyser et évaluer les heuristiques qu'ils doivent développer dans le cadre de leurs travaux de recherche.

Méthodes d'intelligence artificielle (métaheuristiques) telles que l'algorithme du recuit simulé, l'algorithme génétique, la recherche avec tabous et l'optimisation par colonie de fourmis. L'apprentissage d'une démarche scientifique pour aborder des problèmes d'optimisation, les résoudre et présenter les résultats obtenus est également visé.

Formule pédagogique : Cours Magistral

(04/2023)

8INF853 Architecture des applications d'entreprise

Amener l'étudiant à approfondir les concepts liés au développement et à l'architecture des applications d'entreprises. Amener l'étudiant à acquérir des compétences à travailler dans un environnement de programmation ayant des composantes complexes. L'étudiant sera exposé à la technologie Java, aux modèles objets et aux services orientés architecture. Enfin,l'étudiant se familiarisera avec certaines technologies touchant les aspects d'infrastructure de développement et de déploiement d'applications d'entreprises.

Concepts fondamentaux d'interfaces usagers. Études de cas avec Java (Swing). Développement et déploiement d'applications d'entreprises (Enterprise applications). Technologie Java. EJB, Java Beans et architecture client-serveur RMI-Java. Modèles orientés architectures. Modèle (MDA). Architecture orientée service (SOA).

Formule pédagogique : Cours Magistral

(04/2023)

8INF855 Intelligence d'affaires: principes et méthodes

Permettre à l'étudiant de comprendre et de maîtriser les concepts et l'utilité de l'intelligence d'affaires. Présenter les différentes technologies utilisées en intelligence d'affaires. Donner un aperçu des méthodologies et techniques liées à la mise en place d'une solution d'intelligence d'affaires.

Intelligence d'affaires: définition, caractéristiques, tendances, enjeux, impact au niveau de la prise de décision. Bénéfices tangibles des solutions d'intelligence d'affaires. Exemples d'application dans des entreprises. Entrepôt de données: différence entre entrepôt de données (datawarehouse) et magasin de données (datamart), approche Kimball versus approche Inmon, stratégie de mise en oeuvre des entrepôts de données, gestion d'un projet d'entrepôt de données, modélisation d'un entrepôts de données. Tableaux de bord de gestion: tableau de bord prospectif (Balanced Scorecard) de Kaplan et Norton, défis - enjeux liés à l'établissement des indicateurs de gestion tableau de bord de la gestion de la performance organisationnelle. Forage des données et vues multidimensionnelles (OLAP, ROLAP, MOLAP). Le forage des données: pré-requis et applications potentielles. Intégration des données et la gestion qualitative des données. Survol des outils d'intelligence d'affaires et critères de choix.

Formule pédagogique : Cours Magistral

(04/2023)

8INF856 Programmation sur architectures parallèles

Développer les capacités d'identifier le parallélisme potentiel d'une application informatique; connaître les différents modèles (abstraits et réels) d'ordinateurs parallèles; développer les capacités de concevoir des algorithmes efficaces en utilisant le parallélisme.

Modèles d'ordinateurs parallèles: Systèmes parallèles et distribués; Algorithmes parallèles; Langages de programmation et parallélisme; Programmation sur ordinateurs à mémoire partagée. Multithreads (e.g. POSIX, OpenMP); Programmation sur ordinateurs distribués (e.g. MPI).

Formule pédagogique : Cours Magistral

(04/2023)

8INF857 Sécurité informatique

S'initier aux différents aspects liés à la sécurité des organisations, des systèmes et des réseaux informatiques.

Concepts de base de sécurité informatique. Propriétés fondamentales : confidentialité, intégrité et disponibilité. Vulnérabilité des systèmes informatiques. Mécanismes de contrôle d'accès et sécurisation des applications d'entreprises. Analyse de risque au niveau organisationnel. Cadres de références en sécurité informatique.

Formule pédagogique : Cours Magistral

(04/2023)

8INF858 Systèmes intégrés de gestion d'entreprise

Permettre à l'étudiant d'approfondir ses connaissances sur la définition et l'importance des progiciels de gestion d'entreprise (ERP). Maîtriser la démarche de modélisation de processus dans un projet d'implémentation d'un progiciel de gestion d'entreprise. Comprendre les facteurs de succès et les risques dans une démarche d'implémentation d'un progiciel de gestion d'entreprise.

Rappel sur les différentes fonctions de l'entreprise. Les systèmes d'information et les ERP. L'apport des ERP pour l'entreprise: gains, limites et risques. La sélection d'un ERP: fonction, technologie, marché et budgets. Les principaux intervenants: éditeurs, intégrateurs et consultants. Les différentes étapes pour l'implémentation d'un ERP dans une démarche de gestion de projet: phases, livrables, gestion du changement et processus d'amélioration continue. L'utilisation d'un logiciel (SAP) pour en comprendre son fonctionnement et l'intérêt de son utilisation par l'entreprise. Les liens avec d'autres domaines tels la gestion intégrée de la chaîne logistique et le e-commerce.

Formule pédagogique : Cours Magistral

(04/2023)

8INF862 Gestion de projets informatiques

Apprendre à gérer des projets de développement en informatique et en jeu vidéo. Maîtriser les principes et les pratiques actuelles de la gestion de projets, et ce, tant avec les approches de gestion dites prédictives qu'avec les méthodes de gestion dites adaptatives.

Planification de projet avec approche prédictive de gestion de projets. Structure et découpe de projet (WBS). Estimation des coûts à l'aide d'approches basées sur l'historique ainsi qu'avec des méthodes s'appuyant sur le consensus d'experts. Optimisation des ressources. Gestion de risques. Assurance de la qualité et du suivi du projet. Gestion du changement, résistance aux changements et gestion des conflits. Gestion d'une équipe. Planification de projet avec approche adaptative de gestion de projets. Artéfacts du Scrum (Incrément, Backlog de produit, Backlog de Sprint). Rôles et responsabilités des différents acteurs (Scrum Master, Development Team, Product Owner). Événements du processus Scrum. Processus d'inspection et d'adaptation. Découpe de projet par histoires utilisateurs. Estimation des histoires utilisateurs avec méthode du Planning Poker (point d'histoire et vélocité). Logiciels utilisés en entreprise pour la gestion de projets. Enjeux de la gestion de projets avec des équipes virtuelles en télétravail.

Formule pédagogique : Magistral et/ou formation à distance

(04/2023)

8INF865 Programmation de plateformes mobiles

Comprendre les différents modèles et principes qui permettent de concevoir des applications mobiles intuitives. Maitriser les contraintes relatives à la programmation sur plateformes mobiles.

Principes de conception d'une app, Informatique ubiquitaire et applications mobiles, Intégration d'éléments de persuasion dans une app; Environnement de développement; Composants d'une app (activités, services, broadcast, content provider); Réalisation d'une interface utilisateur ergonomique; Différents types de vue, fragments; Gérer efficacement les notifications; Reconnaissance de gestes; Gestion efficace de la mémoire; Sauvegarde de données; Avantage de base de données NoSQL, utilisation de services web.

Formule pédagogique : Magistral et/ou formation à distance

(04/2023)

8INF870 Algorithmique

Introduire l'étudiant à l'algorithmique avancée et à ses applications, en mettant l'accent sur le domaine des jeux vidéo.

Revue des notions fondamentales de l'algorithmique: Algorithmes voraces, méthode diviser-pour-régner, programmation dynamique, algorithmes probabilistes et parallèles. Théorie de la NP-complétude. Principales classes de complexité. Mesures de complexité : temps et espace mémoire.

Applications: Détection de collision en temps réel: géométrie algorithmique, volumes englobants, hiérarchies de volumes, partitionnement spatial en 2D et en 3D, arbres BSP, méthodes basées sur la convexité, optimisation par utilisation de caches, etc. Algorithme sur les graphes: recherche de chemins optimaux, A*, aide à la décision, etc.

Formule pédagogique : Cours Magistral

(04/2023)

8INF871 Principes des moteurs de jeux

Introduire les principes fondamentaux de la programmation des moteurs de jeux.

Rôles d'un moteur de jeux. Architectures orientées données. Aperçu des systèmes principaux d'un jeu: Rappel des notions de physique et de mécanique. Différents types de rendus (graphique, animation, textuel, sonore), communication réseau. Intégration de langages de scripts. Régionalisation. Modules d'extension (plugin) et logiciels médiateurs (middleware). Outils et éditeurs de niveau.

Formule pédagogique : Cours Magistral

(04/2023)

8INF874 Cryptographie

S'initier aux concepts fondamentaux liés au domaine de la cryptologie.

Histoire de la cryptologie. Cryptographie classique mono-alphabétique et poly-alphabétique. Cryptographie moderne symétrique et asymétrique (DES, AES, RSA, courbes elliptiques, etc.). Fonctions de hachages et leurs applications. Protocoles cryptographiques, Infrastructure à clé publique Principes de cryptanalyse. Application de la cryptographie. Techniques d'attaques physiques des cartes à puce.

Formule pédagogique : Cours Magistral

(04/2023)

8INF876 Conception et architecture des systèmes d'infonuagique

Permettre d'acquérir les connaissances nécessaires pour mettre en œuvre des applications réparties capables d'exploiter des ressources distantes ou de répartir la charge de calcul sur plusieurs ordinateurs dans un souci d'amélioration de performances et de tolérance aux pannes.

Rappel des protocoles de communication ; Concepts fondamentaux comme les modèles, les types et les architectures des systèmes distribués (client-serveur, Peer-to-Peer, hybride); Divers moyens de communication (synchrone, asynchrone, persistant, transitoire, discrète, et streaming), le passage et l'identification des objets/messages/service/ressource (socket, sérialisation, Marshaling, références d'objets distants), l'ouverture, la mise à l'échelle, la fiabilité, et le partage des ressources. Architectures des systèmes répartis contemporains en termes de services et protocoles de communication et de problèmes d'interconnexion de systèmes hétérogènes, indépendamment de la plate-forme matérielle et logicielle, et du langage de programmation : Technologies et Frameworks standards comme NodeJS, CORBA, JEE-EJB (Java Enterprise Edition), Servlets et JSP, Services Web (REST, GraphQL, SOAP).

Formule pédagogique : Magistral et/ou formation à distance

(04/2023)

8INF878 Intelligence Artificielle

Introduire la discipline de l'intelligence artificielle et faire une brève introduction aux différentes problématiques et techniques qui y sont liées. Comprendre les techniques qui permettent de créer un agent intelligent.

Histoire et philosophie de l'intelligence artificielle en tant que science. Résolution de problèmes à l'aide d'exploration non-informée, informée, locale et adverse. Planification logique, dordre partiel et planification probabiliste. Systèmes experts, agent intelligent logique et probabiliste. Introduction à la perception et aux actions dans un agent intelligent par la vision artificielle, les mouvements d'actionneurs robotiques et l'analyse sonore. Principes des agents apprenants à base de statistiques et/ou renforcement

Formule pédagogique : Cours Magistral

(04/2023)

8INF935 Mathématiques et physique pour le jeu vidéo

Comprendre les notions mathématiques et physiques utilisées dans les moteurs de jeux.

Rappel théorique des éléments de l'algèbre linéaire. Cinématique linéaire et rotationnelle. Dynamique linéaire et rotationnelle. Détection de collision. Réalisation d'un mini moteur de jeux.

Formule pédagogique : Cours Magistral

(04/2023)

8INF954 Forage de données

Ingénierie de la connaissance. Processus et tâches du forage de données. Entrepôt de données. Méthodes descriptives et prédictives pour l'extraction de connaissances. Reconnaissances des formes. Ontologies et organisation automatique de connaissances.

Formule pédagogique : Cours Magistral

(04/2023)

8INF956 Développement avancé de logiciels : Patrons et Modèles

Concepts avancés de logiciels. Réutilisation de composants logiciels (patrons, modèles, librairies, plateformes). Concept de patrons. Patrons dans les étapes de développement de logiciels : patrons d'analyse, patrons d'architecture, patrons de conception et patrons de programmation. Autres formes de patrons: patrons ressources (Réflection, Plugin, Sérialisation, etc.), les patrons à distance (Remoting patterns: pooling, leasing, Lookup, etc.), etc.

Développement orienté (MDA): modèle, architecture et plateforme. Types de modèles: Computation Independent Model (CIM), Platform-Independent Model (PIM), Platform-specific model (PSM) et un modèle de composants (Platform model-PM).

Formule pédagogique : Cours Magistral

(04/2023)

8INF957 Programmation objet avancée

Principes objet avancés: typage statique, héritage et méta programmation. Fondements: objets, classes, types et sous-types, interface, spécialisation, héritage, propriétés, polymorphismes, envoi de message, généricité, collections, types d'applications Java, assertions, exceptions et programmation événementielle.

Héritage multiple et variations : conflits de propriétés, techniques de linéarisation et héritage d'interface. Méta-programmation : méta-modélisation, introspection, réflexivité. Programmation par contrat, aspect, objet et composant. Objets distribués, entrées/sorties, XML et Java.

Formule pédagogique : Cours Magistral

(04/2023)

8INF958 Spécification, test et vérification

Méthodes de spécification formelle

Méthodes de spécification formelle: automates, expressions régulières, logiques classiques et temporelles, notation B, Z et CCS. Génération automatique de tests, notions de couverture, exécution symbolique dynamique. Le monitoring et l'analyse de traces: exemples, algorithme. Outils de monitoring: Java-MOP, BeepBeep. Le modèle checking et la vérification statique: exemples, algorithmes. Méthodes de réduction de l'espace d'état, abstraction et raffinement. Outils de vérification: Concurrency Workbench, Java Pathfinder, SPIN et NuSMV.

Formule pédagogique : Cours Magistral

(04/2023)

8INF960 Principes de conception et de développement de jeux vidéo

Initier au processus de conception, de préproduction, de développement et de déploiement d'un jeu vidéo sur diverses plateformes. Se familiariser avec l'architecture logicielle et algorithmique spécifique d'un jeu vidéo. Se sensibiliser aux façons de faire de l'industrie du jeu et à ses particularités. Développer à des jeux de petite envergure en équipes restreintes en utilisant des outils propres à l'industrie.

Conception de jeu vidéo. Méthode d'idéation et de design d'un concept de jeu. Théorie des jeux. Étude sur la jouabilité "Gameplay". Équilibre dans la structure des éléments d'un jeu : pointages, options, défis versus habilités, ajustement dynamique, chances, etc. Ergonomie des interfaces de jeux et développement d'un système d'interaction immersif avec l'usager. Les différents types de jeux, clientèle cible et modèles d'affaires (ex. « free to play »). Architecture logicielle d'un jeu vidéo : boucle de jeu (gameloop) et synchronisation du « frame rate », jetons, états, messages, événements, interface de contrôle utilisateurs, etc. Introduction au processus de développement dans l'industrie du jeu vidéo, usine de développement et initiation au processus de production itératif de type Agile/Scrum. Bibliothèques et langages utilisés en industrie (C++, C # et Blueprints). Introduction aux moteurs de jeux exploités en industrie (Unity 3D et UDK). Formation de base sur un moteur de jeu. Développement d'un premier prototype de jeu de A à Z.

Formule pédagogique : Magistral et/ou formation à distance

(04/2023)

INF9006 Examen de synthèse

Démontrer sa connaissace approfondie du domaine principal de sa recherche et une bonne connaissance d'un domaine secondaire; Faire la preuve de ses capacités de communication à l'écrit et à l'oral.

Attribution d'un programme de lecture pertinent à son domaine principal de recherche et à son domaine secondaire; ces domaines sont choisis parmi les quatre concentrations du programme. Cette activité individuelle comprend une partie écrite et une présentation orale devant un jury.

Formule pédagogique : Atelier et/ou formation à distance

(04/2023)

INF9009 Projet de thèse

Présenter de façon claire et cohérente sa problématique de recherche, ses hypothèses de travail de même que son approche méthodologique.

Règles et principes de l'élaboration et de la présentation d'un projet de thèse. Établissement d'une problématique de recherche. Choix d'hypothèses et d'une méthodologie appropriée. Cette activité individuelle donne lieu à l'établissement d'une entente d'encadrement entre l'étudiant et son directeur de recherche; elle fait aussi l'objet d'une présentation formelle devant un jury.

Formule pédagogique : Atelier et/ou formation à distance

(04/2023)

INF9060 Thèse

Faire la preuve de sa maîtrise d'un sujet de recherche et de sa capacité à mener à terme un travail de recherche de façon autonome. Il s'agit d'un travail écrit d'envergure qui constitue l'activité majeure de formation du programme de doctorat. Les résultats de ce travail doivent apporter une contribution originale et significative à l'avancement des connaissances dans le domaine de recherche initial.

Exposé écrit de l'ensemble de la démarche de recherche et des résultats obtenus. Défense de la thèse à l'oral devant un jury.

Formule pédagogique : Soutenance de thèse et/ou formation à distance

(04/2023)

INF9073 Séminaire en sciences et technologies de l'information

Permettre aux étudiants d'acquérir une vision d'ensemble de l'état de l'art des connaissances et des défis actuels dans le domaine des sciences et des technologies de l'information (STI). Les amener à réaliser une analyse critique d'articles ou d'ouvrages portant sur un sujet particulier qui soit pertinent à leur projet de recherche et à partager leurs points de vue sur ces sujets.

Lecture d'ouvrages et d'articles généraux sur l'état de l'art et les principaux défis technologiques de l'heure en STI. Lecture d'ouvrages et d'articles plus spécifiques pertinents à leur sujet de recherche et dont l'analyse contribuera à l'approfondissement de leurs connaissances ainsi que l'avancement de leur projet de thèse. Au début du trimestre, chacun des étudiants devra établir un plan de lecture avec l'approbation du professeur.

Formule pédagogique : Séminaire et/ou formation à distance

(04/2023)

INF9083 Lecture dirigée en sciences et technologies de l'information

L'étudiant devra réaliser une analyse critique d'articles ou d'ouvrages portant sur un sujet spécifique en sciences et technologies de l'information pertinent à son projet de thèse.

Lecture d'ouvrage et d'articles touchant le domaine de recherche de l'étudiant et dont l'analyse contribue à l'approfondissement de ses connaissances et à l'avancement de son projet de thèse. Le professeur soumet un plan de lecture à l'étudiant et détermine avec lui les objectifs visés, le contenu du programme de lectures et les activités.

Formule pédagogique : Séminaire et/ou formation à distance

(04/2023)

INF9093 Atelier en photonique et microélectronique

Approfondir sa connaissance de l'état actuel des développements et des principaux défis dans le domaine de la photonique et de la microélectronique en lien avec le secteur des technologies de l'information. Développer sa connaissance des approches méthodologiques utilisées dans ses travaux de recherche du domaine.

Sujets actuels et méthodologie de la recherche en photonique et microélectronique. Étude de la littérature récente, discussion des principales tendances de recherche. Étude par sous-thématiques particulières par le recours à l'enseignement en équipe, chaque thématique étant couverte par un professeur spécialiste. Développement des aptitudes écrites et orales de l'étudiant: recherche personnelle et documentaire, lectures imposées, préparation de rapports de même que présentation, discussion et critique d'articles. Évaluation des travaux écrits notamment un rapport de trimestre, des rapports de lecture et des présentations orales.

Formule pédagogique : Atelier et/ou formation à distance

(04/2023)

INF9103 Atelier en calcul distribué et télécommunications

Approfondir sa connaissance de l'état actuel des développements et des principaux défis dans le domaine du calcul distribué et des télécommunications. Développer sa connaissance des approches méthodologiques utilisées dans les travaux de recherche du domaine.

Sujets actuels et méthodologies de la recherche en calcul distribué et en télécommunications. Étude de la littérature récente, discussion des principales tendances de recherche. Étude par sous-thématiques particulières par le recours à l'enseignement en équipe, chaque thématique étant couverte par un professeur spécialiste. Développement des aptitudes écrites et orales de l'étudiant: recherche personnelle et documentaire, lectures imposées, préparation de rapports de même que présentation, discussion et critique d'articles. Évaluation des travaux écrits notamment un rapport de trimestre, des rapports de lecture et des présentations orales.

Formule pédagogique : Atelier et/ou formation à distance

(04/2023)

INF9123 Atelier en algorithmique et génie logiciel

Amener l'étudiant à approfondir sa connaissance de l'état actuel des développements et des principaux défis dans le domaine de l'algorithmique et du génie logiciel en lien avec le secteur des technologies de l'information. L'amener à développer sa connaissance des approches méthodologiques utilisées dans ses travaux de recherche du domaine.

Sujets actuels et méthodologie de la recherche en algorithmique et du génie logiciel. Étude de la littérature récente, discussion des principale tendances de recherche. Étude par sous-thématiques particulières par le recours à l'enseignement en équipe, chaque thématique étant couverte par un professeur spécialiste. Développement des aptitudes orales et écrites de l'étudiant: recherche personnelle et documentaire, lectures imposées, préparation de rapports de même que présentation, discussion et critiques d'articles. Évaluation des travaux écrits notamment un rapport de trimestre, des rapports de lecture et des présentations orales.

Formule pédagogique : Atelier et/ou formation à distance

(04/2023)

INF9143 Atelier en traitement de données et intelligence artificielle

p>Amener l'étudiant à approfondir sa connaissance de l'état actuel des développements et des principaux défis dans le domaine du traitement de données et de l'intelligence artificielle en lien avec le secteur des technologies de l'information. L'amener à développer sa connaissance des approches méthodologiques utilisées dans les travaux de recherche du domaine.

Sujets actuels et méthodologies de la recherche en traitement de données et intelligence artificielle. Étude de la littérature récente, discussion des principales tendances de recherche. Étude par sous-thématiques particulières par le recours à l'enseignement en équipe, chaque thématique étant couverte par un spécialiste. Développement des aptitudes écrites et orales de l'étudiant : recherche personnelle et documentaire, lectures imposées, préparation de rapports de même que présentation, discussion et critique d'articles. Évaluation des travaux écrits notamment un rapport de trimestre, des rapports de lecture et des présentations orales.

Formule pédagogique : Atelier et/ou formation à distance

(04/2023)