Plan du cours 8INF802 - Hiver 2017 - Groupe 01

Simulation de systèmes

Professeur Sylvain Boivin, Ph.D., local P4-7300, 418-545-5011 poste 5356


Objectifs généraux du cours

Fournir à l'étudiant des connaissances avancées en simulation des systèmes discrets qui pourront lui servir dans tous genres d'applications. Présenter une approche méthodologique pour la conception d'un modèle, sa validation et l'analyse des résultats.

Objectifs spécifiques du cours

Principes de la simulation par ordinateur. Construction et validation de modèles : cueillette et analyse de données, génération de nombres pseudo-aléatoires, vérification et validation de modèles. Langages de simulation à événements discrets. Prise de décision basée sur la simulation. Optimisation par simulation.

Note: Les objectifs, l'horaire et le lieu du cours sont disponibles sur le site web de l'UQAC: 8INF802.

Ce cours est optionnel dans les programmes où il apparaît.

Aperçu du contenu

Le détail du contenu donne un aperçu de l'organisation temporelle des activités d'apprentissage. Il est sujet à changement sans préavis.

Formule pédagogique

Cours magistraux, exercices et travaux pratiques.

Les cours magistraux sont dispensés lors de la période réservée au cours et spécifiée à l’horaire de cours officiel. Des travaux pratiques sont fournis en classe. Ils seront notés et serviront aussi de préparation aux examens. Le cours ne comporte pas de travaux dirigés.

Les travaux pratiques nécessitent de programmer en Python. Notons cependant, que seule une compétence de base en programmation est requise, le Python sera introduit en classe et les travaux pratiques seront faits en équipe.

Évaluation

Dispositions particulières

  1. La préparation et la remise des travaux doivent respecter les règles présentées en classe.
  2. La seule documentation permise aux examens est une feuille 8.5x11 recto verso résumant la matière.
  3. Les seuls outils permis sont: un crayon, un gomme à effacer et une calculatrice simple (non-graphique, non-programmable).
  4. Le travail de lecture dirigée est à faire seul.

Qualité du français écrit

Tout travail remis doit être conforme aux exigences de la politique institutionnelle en matière de maîtrise du français écrit du Manuel de Gestion de l'UQAC, section 3.1.1-012.

Pénalité pour retard

Tout travail remis en retard sans motif valable sera pénalisé de 10%.

Note de passage

La note de passage est fixée à 60 %.

Évaluation du cours

Ce cours sera évalué, conformément à la résolution du Conseil de module, à une date à déterminer entre le milieu et la fin du trimestre.

Utilisation des TI et de la communication dans les salles de cours

Usage permis si non perturbant.

Soutien pédagogique

Le professeur se rendra disponible à son bureau P4-7300 le mercredi pm et sur rendez-vous.

Il est toujours préférable de prendre rendez-vous par courriel à

Références

Voici une partie des références utilisées dans ce cours.

Articles

  1. RNG: good ones are hard to find
  2. Uniform RNG: a review
  3. Tables of linear congruential generators
  4. Software for uniform RNG
  5. How to avoid yourself
  6. Recurrence plots
  7. An opportunity for system dynamics in manufacturing system modelling
  8. Verification and validation of simulation models
  9. Ballistic missile trajectory

Sites web

  1. Wikipedia: Modèle-Vue-Contrôleur
  2. Wikipedia: Méthode de Monte-Carlo
  3. Wikipedia: Random number generation
  4. Wikipedia: System dynamics
  5. Wikipedia: Triangular distribution
  6. Wikipedia: Boids
  7. Wikipedia: Finite-state machine
  8. Wikipedia: Intelligent agent
  9. Wikipedia: Expert system
  10. World-Aluminium.org

Exemples

  1. Déversement (continu)
  2. Prédateur-proie (discret - pas fixe)
  3. Production 3D (discret - événement)
  4. Production 2D et 3D (discret - événement)
  5. Système 3D et statistiques (discret - événement)
  6. Exemple simple de CL en Javascript
  7. Simulation avec Arena
  8. Exemple de problème discret (event based): 1, 2, 3, 4
  9. Exemple de problème discret (flux): 1, 2, 3, 4, 5, 6, 7, 8

Outils logiciels

  1. Site Web officiel de Python
  2. Documentation et tutoriel Python 3
  3. Tkinker introduction
  4. PyLint (incluant pyreverse pour UML)
  5. GraphViz

Livres

  1. "Modeling and Simulation", L.G. Birta and G. Arbez, 2007
  2. "Why Stock Market Crash", D. Sornette, 2003
  3. "Graph Theory", R. Diestel, 2000