Rapport de Projet Intelligence Artificielle: Glsid [PDF]

  • 0 0 0
  • Gefällt Ihnen dieses papier und der download? Sie können Ihre eigene PDF-Datei in wenigen Minuten kostenlos online veröffentlichen! Anmelden
Datei wird geladen, bitte warten...
Zitiervorschau

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

DÉPARTEMENT MATHÉMATIQUES ET INFORMATIQUE

Rapport de projet intelligence artificielle Filière : « Génie du Logiciel et des Systèmes Informatiques Distribués »

GLSID

Année Universitaire : 2021-2022

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

Sommaire Sommaire

2

Introduction

4

I- Problématique Les métaheuristiques : La différence entre métaheuristique et heuristique: Les métaheuristiques et la génération d'emploi du temps :

5 6 6 6

II - Présentation du projet Contexte: 2. Rédaction du cahier des charges: 2.1 Spécification des besoins: Besoins fonctionnels: Besoins non fonctionnels: 2. 2 L'analyse des contraintes: Contraintes dures : - Contrainte souples : 2.3 Livrable du projet: 2.4 Risque du projet 3. La planification 3.1. Planification avec WBS : 3.2 Gantt: 3.4. Planification des réunions: 4. Démarche de projet: 4.1 Choix de la méthode de gestion du projet: 4.2 Equipe de réalisation du projet :

7 7 7 7 7 8 9 9 9 9 10 11 11 12 13 14 14 15

III. Conception : Conception UML Diagramme de cas d’utilisation Diagramme de classes Conception Merise Choix du logiciel Modèle Conceptuel des Données Modèle Logique des Données Modèle Physique des Données

16 16 16 17 19 19 19 20 22

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

IV- Réalisation du projet 1. Langage et choix d'outils utilisés: 2. Le choix de l'algorithme 2.1 Algorithme génétique 3. Implémentation de l'algorithme 4. Les interfaces graphique Page d’accueil: Page des enseignants: Page des salles: Page de temps de session: Page des cours: Page des départements: Page des sections: Génération du calendrier:

23 23 24 24 26 28 28 29 30 31 31 32 33 34

Conclusion

35

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

Introduction L’intelligence artificielle est le domaine qui consiste à mettre en œuvre un certain nombre de techniques visant à permettre aux machines d'imiter une forme d'intelligence réelle. L'intelligence artificielle se retrouve implémentée dans un nombre grandissant de domaines d'application. Une branche de l’intelligence artificielle est la métaheuristique, qui est définie comme étant un ensemble d’algorithmes d’optimisation visant à résoudre des problèmes d’optimisation difficiles pour lesquels on ne connaît pas de méthode classique la plus efficace. Et étant donné des élèves ingénieure en informatique filière Génie des Logiciels et des Systèmes Informatiques Distribuées à l’Ecole Normale Supérieur d’Enseignement Technique de Mohammedia, et dans le cadre de mieux développer nos compétences informatiques et explorer nos acquis dans le module de l’intelligence artificielle, nous sommes amenés à réaliser un projet en métaheuristique. L’idée de notre projet a été mise en place puisque nous savions bien le degré d’importance de la notion du temps dans notre domaine. Donc nous avons réalisé une application web qui a comme but de mettre à la disposition de toute personne, un système de planification et de gestion d’emplois. Le projet est intitulé Calendrier-Enset, et il se base sur l’algorithme génétique. Ce rapport sert alors à représenter une description détaillée de notre idée, de mettre l’éclat sur la raison du choix du projet. Également, il va permettre de mettre en évidence les outils utilisés pour la réalisation du projet, de mettre en exergue l’évaluation du projet, et finalement de présenter la réalisation du projet.

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

I- Problématique Dans de nombreux domaines de la vie professionnelle, nous nous trouvons confrontés au problème de la planification d'horaires de travail. Cette dernière consiste à allouer des ressources données à des objets dans un intervalle de temps, de façon à satisfaire un ensemble des besoins tels que l'amélioration de la qualité de service et l'amélioration des conditions de travail. Chaque année, les responsables pédagogiques de la direction des études ont pour mission de concevoir les emplois du temps des différentes filières, et parmi la vaste famille des problèmes de planification d'horaire, nous trouvons celui de la confection d'emplois du temps dans les établissements éducatifs, notamment dans les universités qui consomment de nombreuses ressources humaines et donc financières. Ce problème est très important. En effet, un mauvais emploi du temps influe directement et négativement sur le niveau de l'acquisition des étudiants. Le problème de l' emploi du temps est un problème ardu dont la réalisation à la main est une tâche difficile qui peut mobiliser plusieurs personnes plusieurs jours de travail. Sans oublier, que toute modification des données du problème peut complètement remettre en cause la solution trouvée. Nous avons essayé de résoudre ce problème en exploitant nos connaissances en ce qui concerne les métaheuristiques.

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

1. Les métaheuristiques : Les métaheuristiques sont des stratégies qui guident le processus de recherche. L'objectif est d'explorer efficacement l'espace de recherche afin de trouver des solutions quasi optimales. Les algorithmes métaheuristiques sont des paradigmes d'intelligence computationnelle spécialement utilisés pour résoudre des problèmes d'optimisation sophistiqués. 2. La différence entre métaheuristique et heuristique: Tout d'abord, l'heuristique est une méthode de résolution d'un problème particulier (elle peut bénéficier des propriétés du problème résolu). Par contre, la métaheuristique est une méthode de résolution généralisée comme GA (Algorithme génétiques). Les algorithmes heuristiques sont utilisés pour résoudre les problèmes NP et diminuer la complexité temporelle des problèmes en donnant des solutions rapides. Il est couramment utilisé dans les problèmes d'intelligence artificielle. Un exemple est la recherche informée, où des informations supplémentaires sont disponibles pour déterminer la prochaine étape vers la recherche de la solution. 3. Les métaheuristiques et la génération d'emploi du temps : Il sera nécessaire de trouver une solution afin d'optimiser la génération des emplois du temps, et pour ce faire nous avons déjà réalisé des études comparatives durant notre formation en intelligence artificielle qui nous amène, comme résultats, à utiliser des algorithme de métaheuristiques plutôt que les algorithme heuristiques et cela dépend les différents avantages assurée par les algorithme métaheuristiques. Cela d'une part. D'autre part, l'existence d’un horaire respectant toutes les contraintes peut être garantie par algorithme génétique. En réalité, il s’agit de trouver un horaire aussi bon que possible dans un temps de calcul raisonnable tout en tolérant la présence de conflits ce qui peut être assurée par les méthodes de métaheuristique.

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

II - Présentation du projet 1. Contexte: Ce projet est un fruit de notre persévérance en travail ou nous avons exploité tout ce que nous avons acquis durant les cours du module de l'intelligence artificielle et précisément les métaheuristiques. Ce projet est une opportunité d'appliquer les notions et les termes techniques liés aux métaheuristiques.

2. Rédaction du cahier des charges: Notre cahier des charges va permettre de fixer les limites du projet. Aucune difficulté particulière n’a été rencontrée pour la rédaction de ce cahier car une étude préalable a été réalisée et les besoins ont été clairement définis au début du projet.

2.1 Spécification des besoins: Le projet doit utiliser un des algorithmes de métaheuristique pour satisfaire les contraintes liées à la planification des horaires. Nous avons deux types de contraintes. Tout d'abord il y a les contraintes «humaines» qui sont généralement représentées par des enseignants et des étudiants, les contraintes pédagogiques imposées par la progression des enseignements et en tenant compte des contraintes «physiques » liées aux ressources matérielles (les salles, les équipements, etc.) Pour pallier à ce problème, les besoins principals étaient de : -

Besoins fonctionnels:

Avant d’imposer une solution, il faut se tourner vers le demandeur, pour aboutir de manière structurée à la solution. En effet, le but du projet est de satisfaire le besoin. Il faut exprimer clairement les objectifs à atteindre du projet, afin d'éviter toute confusion entre nous et le demandeur.

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

Le futur système doit permettre à l’utilisateur de gérer un ensemble de modules, dont on trouve : ​

-

La gestion des élèves La gestion des classes La gestion les enseignants La gestion des salles

Notre application doit utiliser un algorithme d'optimisation afin d'effectuer la génération automatique des emplois du temps et de garantir la consultation et suivi des emplois du temps et comme conséquence, l'application va permettre de gagner du temps au quotidien -

Besoins non fonctionnels:

Les besoins non fonctionnels décrivent les objectifs liés aux performances du système et aux contraintes de son environnement. Ses exigences techniques sont souvent exprimées sous forme d’objectifs spécifiques que doit atteindre le système. ➔ La maintenabilité: le code doit être compréhensible par simple lecture, notamment en respectant les règles de gestion et les normes de développement. ➔ Exploitabilité: les impacts en termes de performances doivent être pris en compte lors de développement, ainsi que la consommation des ressources (CPU, mémoire, etc.) qui doit être minimisée. ➔ Capacité fonctionnelle et convivialité: les composants développés doivent respecter les spécifications fournies par notre encadrante. Le système doit être facilement utilisable et disposer d’interfaces conviviales, notamment par le respect des règles d’ergonomie. ➔ Sécurité: Chaque utilisateur utilise un mot de passe de 8 caractères, fort, qui sera utilisé pour accéder à son compte et ses informations personnelles. Les données doivent aussi être vérifiées et validées avant leur enregistrement dans la base de données.

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

2. 2 L'analyse des contraintes: Le programme satisfait les contraintes suivantes : -

Contraintes dures :

-

Le nombre des étudiants d'un cours doit être inférieur au nombre des places dans une salle. Deux classes n'ont pas la même salle en même temps. L'emploi du temps de chaque enseignant est unique. Les enseignants sont affectés à leur cours.

- Contrainte souples :

-

Les classes sont attribuées selon les exigences de la section. Tous les cours sont liés à leur département. Même répartition de section par semaine.

2.3 Livrable du projet: Phase

Livrable

Etude des besoins

Cahier de charges

Planification

WBS et le diagramme GANTT

Analyse et conception

Diagrammes UML et modèles MERISE

Choix de l'algorithme

L'implémentation de l'algorithme

Codage et tests

Site web pour l’emploi du temps

Documentation

Rapport de projet

Tab.3 : Livrables du projet

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia

ENSET

Université Hassan II de Casablanca

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

2.4 Risque du projet Les risques

Le type

Impact

Cahier des charges

Risque non bloquant

Créer une ambigüité ce qui pourra générer un retard qui influencera probablement la date de livraison.

Les pannes inattendues du matériel

Risque non bloquant

Ralentissement des travaux

Risque non bloquant Tab.4 : risques du projet

Ralentissement des travaux

Absence ou maladie

Actions correctives Prévoir des réunions et des points de validation avec l’encadrant au fur et à mesure de l’avancement du projet. Utiliser les autres matériaux disponibles. Recours à une réparation rapide. Doubler l'effort et travailler un temps extra

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

3. La planification 3.1. Planification avec WBS :

Pour que nous puissions planifier notre projet et structurer les phases de la réalisation nous avons réalisé le WBS qui est une technique couramment utilisée en management de projet, elle repose sur une décomposition du travail. -

-

-

La phase avant propos où nous avons réalisé une réunion afin d’analyser les besoins et définir le cahier de charge et déterminer le délai estimé. La planification : la deuxième phase consiste à la répartition des tâches et faire une conception par la méthode Merise ainsi que la modélisation uml et préparer l’environnement en installant les logiciels requises. La troisième phase: la réalisation comprend l'implémentation de l'algorithme génétique et le développement d’interface graphique avec django et la construction des formulaires en liaison avec la base de données et de fournir des tests. Finalement capitalisation: comparaison entre le résultat au cahier des charges

Cette structure hiérarchique du projet nous a aidé comme équipe à mieux cerner les dépendances entre les différentes tâches. Il constitue un prérequis pour planifier nos activités et permet d’envisager facilement la totalité du travail à fournir, et ainsi d’éviter d’être pris au dépourvu lors de l’avancement du projet. ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

3.2 Gantt: Nous avons choisi ainsi comme outil pour la planification de notre projet Gantt Project qui est un logiciel de gestion de projet. Gantt Project permet de planifier les projets et les ressources, et d’assurer le suivi des projets durant leur réalisation. Cet outil permet ainsi au chef de projet d’assurer une gestion de projet professionnelle, conforme à l’état de l’art, et ainsi garantir le respect des délais. Le diagramme de Gantt est l'un des outils les plus efficaces pour représenter visuellement l'état d'avancement des différentes activités (tâches) qui constituent un projet. Ce diagramme permet donc de visualiser d'un seul coup d'œil : ➔ ➔ ➔ ➔ ➔

Les différentes tâches à envisager . La date de début et la date de fin de chaque tâche . La durée escomptée de chaque tâche . Le chevauchement éventuel des tâches, et la durée de ce chevauchement La date de début et la date de fin du projet dans son ensemble .

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

3.4. Planification des réunions:

Pour que nous puissions bien communiquer et prendre des décisions concernant notre projet ensemble, nous avons utilisé Google Meet qui offre une communication facilitée avec la possibilité d'interagir, de partager des documents et de présenter. Nous n'avons pas rencontré de difficultés à ce niveau là.

Voici les dates des huits réunions que nous avons fait sur meet et leurs objectifs: 1. 2. 3. 4. 5. 6. 7. 8. 9.

Le choix du projet: (01/05/2022 - 30 min) Mettre en place le cahier des charges. (05/05/2022 - 2h) Planification et précision des tâches et répartition. (07/05/2022 - 30 min) Conception de Merise. (10/05/2020 - 3h) Modélisation UML. (13/05/2021 - 2h) Choix de l’algorithme génétique et implémentation. (14/05/2021 - 3h) Implémentation et développement du logiciel. (20/05/2021 - 3h 30 min) Coordination de la réalisation du projet. (25/05/2021 - 4h) Préparation pour la présentation (26/05/2021 - 2h)

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia

ENSET

Université Hassan II de Casablanca

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

4. Démarche de projet: 4.1 Choix de la méthode de gestion du projet: Nous avons vu que c’est nécessaire de préciser les besoins du client, ainsi que les besoins fonctionnels et non fonctionnels du futur site web, de préciser les livrables et les risques les plus critiques du projet et de décrire la conduite du projet. Il présente dans un premier lieu le choix de sa démarche, puis le principe de cette démarche, les rôles du SCRUM, et enfin l’organisation du projet. Scrum définit seulement 3 rôles : ➔ Le Product Owner : qui porte la vision du produit à réaliser et travaille en interaction avec l’équipe de développement. Il s’agit généralement d’un expert du domaine métier du projet. ➔ L'Équipe de Développement : qui est chargée de transformer les besoins exprimés par le Product Owner en fonctionnalités utilisables. ➔ Le Scrum Master : qui doit maîtriser SCRUM et s’assurer que ce dernier est correctement appliqué. Cette partie a pour objectif de présenter la manière dont nous avons géré le projet. Nous allons présenter dans un premier temps comment le projet a été découpé en tâches afin d’assurer son bon déroulement. Pendant la première semaine, nous avons pris connaissance du sujet, établi les fonctions nécessaires pour remplir les besoins, fait des recherches sur les technologies que nous pourrions utiliser et déterminer les tâches à accomplir. Nom et prénom

Fonction

ZARGUAN Hajar SABRI Wissale

Équipe de développement

ROCHDI Rabab DREF Meriam CHAKRANE Ahlam ZARGUAN Hajar Pr. Fatiha Akef

Scrum Master Product Owner

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

4.2 Equipe de réalisation du projet : ➔ Équipe de développement : ◆ ◆ ◆ ◆

Élaboration du dossier de gestion de projet. Réalisation de la spécification détaillée. Codage de l’application. Effectuation des tests unitaires.

➔ Scrum master: ◆ ◆ ◆ ◆ ◆

Valide le dossier des spécifications fonctionnelles. Valide le codage. Présente les besoins fonctionnels du projet. Valide les livrables. Contrôle le respect des demandes.

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

III. Conception : Pour bien conduire le déroulement de notre projet et pour une meilleure maîtrise de ce dernier et assurer l’achèvement des différentes phases, il est important de suivre une méthodologie rigoureuse. La démarche adoptée dans ce projet est la méthodologie de conception et de développement UML, et nous avons choisi STARUML comme logiciel pour réaliser cette partie. Nous avons choisi PowerAMC pour réaliser les différents modèles.

1.

Conception UML

Unified Modeling Language est une notation permettant de modéliser un problème de façon standard. Ce langage est né de la fusion de plusieurs méthodes existantes auparavant, et est devenu désormais la référence en termes de modélisation objet, à un tel point que sa connaissance est souvent nécessaire pour obtenir un poste de développeur objet.

1.1.

Diagramme de cas d’utilisation

Le diagramme de cas d’utilisation présente les différentes fonctions offertes aux différents utilisateurs de l’application. Les cas d’utilisation aident à formaliser la façon dont une application sera exploitée par ses futurs utilisateurs, à identifier ces derniers, et à préciser comment les différents utilisateurs utiliseront l’application. Pour illustrer les cas d’utilisation de notre système on vous présente l’acteur qui intervient dans notre application (Acteur).

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

Ci-dessous le diagramme de cas d’utilisation de notre projet :

1.2.

Diagramme de classes

Diagramme de classes est un schéma utilisé qui présente les classes et les interfaces des systèmes ainsi que les différentes relations entre celles-ci. Ce diagramme fait partie de la partie statique d'UML car il fait abstraction des aspects temporels et dynamiques. Une classe décrit les responsabilités, le comportement et le type d'un ensemble d'objets. Les éléments de cet ensemble sont les instances de la classe. Une classe est un ensemble de fonctions et de données (attributs) qui sont liées ensemble par un champ sémantique. Les classes sont utilisées dans la programmation orientée objet. Elles permettent de modéliser un programme et ainsi de découper une tâche complexe en plusieurs petits travaux simples. ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

Les classes peuvent être liées entre elles grâce au mécanisme d'héritage qui permet de mettre en évidence des relations de parenté. D'autres relations sont possibles entre des classes, chacune de ces relations est représentée par un arc spécifique dans le diagramme de classes. Elles sont finalement instanciées pour créer des objets (une classe est un moule à objet : elle décrit les caractéristiques des objets, les objets contiennent leurs valeurs propres pour chacune de ces caractéristiques lorsqu'ils sont instanciés). Ci-dessous le diagramme de classes de notre projet :

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

2.

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

Conception Merise

La méthode MERISE c’est une méthode d’analyse élaborée pour l’informatisation des systèmes d’information ainsi que cette méthode est basée sur la séparation des données et des traitements à effectuer en plusieurs modèles conceptuels et physiques. 2.1.

Choix du logiciel

POWERAMC est un logiciel de modélisation permettant de modéliser les traitements informatiques et leurs bases de données associées.

2.2.

Modèle Conceptuel des Données

Le modèle conceptuel des données a pour but de représenter de façon structurée les données qui seront utilisées par le système d’information. Le modèle conceptuel des données décrit la sémantique c'est-à-dire le sens attaché à ces données.

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

2.3.

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

Modèle Logique des Données

Le Modèle logique de données consiste à décrire la structure de données utilisée sans faire référence à un langage de programmation. Il s’agit donc de préciser le type des données utilisées lors des traitements.

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

Tout simplement le MLD ajoute au MCD la notion d’organisation.

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

2.4.

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

Modèle Physique des Données

L’étape de création du MPD est presque une formalité comparée à la création du MCD. En s’appuyant sur des règles simples (et qui fonctionnent à tous les coups), l’analyste fait évoluer sa modélisation de haut niveau pour la transformer en un schéma plus proche des contraintes des logiciels de bases de données. Il s’agit de préparer l’implémentation dans un SGBDR.

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

IV- Réalisation du projet Nous avons l’opportunité d’appliquer des nouveaux savoir-faire et pour une meilleure compréhension des tâches que nous avons pu effectuer, il apparaît approprié de traiter en premier lieu des outils qui étaient mis à notre disposition, puis de traiter de manière détaillée les tâches que nous avons effectuées.

1. Langage et choix d'outils utilisés: Choisir des langages très utilisés permet de bénéficier d’un meilleur support au moment du codage de l’application, et donc de développer une application plus rapide.

Python est le langage de programmation open source le plus employé par les informaticiens. Ce langage s’est propulsé en tête de la gestion d’infrastructure, d’analyse de données ou dans le domaine du développement de logiciels. En effet, parmi ses qualités, Python permet notamment aux développeurs de se concentrer sur ce qu’ils font plutôt que sur la manière dont ils le font. Il a libéré les développeurs des contraintes de formes qui occupaient leur temps avec les langages plus anciens. Ainsi, développer du code avec Python est plus rapide qu’avec d’autres langages. Django est un framework Python de haut niveau, permettant un développement rapide de sites internet, sécurisés, et maintenables. Créé par des développeurs expérimentés, Django prend en charge la plupart des tracas du développement web, vous pouvez donc vous concentrer sur l'écriture de votre application sans avoir besoin de réinventer la roue. Il est gratuit, open source, et il a une communauté active, une bonne documentation, et plusieurs options pour du support gratuit ou non. SQLite est un système de base de données ou une bibliothèque proposant un moteur de base de données relationnelles. Il repose sur une écriture en C, un langage de programmation impératif, et sur une accessibilité via le langage SQL (Structured Query Language).

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

2. Le choix de l'algorithme Nous avons choisi l'algorithme génétique qui est une méthode de résolution de problèmes d'optimisation qui est basée sur le processus qui conduit l'évolution biologique. L’algorithme génétique commence par créer une population aléatoire d'horaires suivis de leur évaluation selon des critères définis pour sélectionner les parents (horaires) pour la prochaine génération qui devrait produire de meilleurs horaires par le biais de croisements et de mutations.

2.1 Algorithme génétique Les algorithmes génétiques (AG) sont probablement les algorithmes évolutionnaires les plus populaires avec une gamme variée d'applications. Une grande majorité des problèmes d'optimisation bien connus ont été résolus par des algorithmes génétiques. De plus, les algorithmes génétiques sont basés sur la population et de nombreux algorithmes évolutionnaires modernes sont directement basés sur des algorithmes génétiques ou présentent de fortes similitudes avec eux. Les algorithmes génétiques, développés par John Holland et ses collaborateurs dans les années 1960 et 1970, sont un modèle ou une abstraction de l'évolution biologique basée sur la théorie de la sélection naturelle de Charles Darwin. Holland a été le premier à utiliser le croisement, la recombinaison, la mutation et la sélection dans l'étude des systèmes adaptatifs et artificiels. Ces opérateurs génétiques sont les composants essentiels des algorithmes génétiques en tant que stratégie de résolution de problèmes. Depuis lors, de nombreuses variantes d'algorithmes génétiques ont été développées et appliquées à un large éventail de problèmes d'optimisation, de la coloration de graphes à la reconnaissance de formes, des systèmes discrets (comme le problème du voyageur de commerce) aux systèmes continus (par exemple, la conception efficace de profils aérodynamiques). en ingénierie aérospatiale), et des marchés financiers à l'optimisation de l'ingénierie multiobjectif. L'algorithme génétique a modifié à plusieurs reprises une population de solutions individuelles. À chaque étape, l'algorithme génétique sélectionne des individus de la population actuelle comme parents et les utilise pour produire les enfants de la génération suivante. Au fil des générations successives, la population ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

évolue vers une solution optimale. Vous pouvez appliquer l'algorithme génétique pour résoudre une variété de problèmes d'optimisation qui ne sont pas bien adaptés aux algorithmes d'optimisation standard, y compris les problèmes dans lesquels la fonction objectif est discontinue, non différentiable, stochastique ou hautement non linéaire. L'algorithme génétique utilise trois principaux types de règles à chaque étape pour créer la génération suivante à partir de la population actuelle : -

Les règles de sélection sélectionnent les individus, appelés parents, qui contribuent à la population à la génération suivante. La sélection est généralement stochastique et peut dépendre des scores des individus.

-

Les règles de croisement combinent deux parents pour former des enfants pour la prochaine génération.

-

Les règles de mutation appliquent des changements aléatoires aux parents individuels pour former des enfants.

Voici l'algorithme écrit en pseudo code :

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

3. Implémentation de l'algorithme Nous avons développé à l’aide du langage Python un programme permettant l’affectation des enseignants aux séances de cours, en spécifions les salles et afin d'implémenter l'algorithme génétique et de l'adopter à notre problématique nous devons tout d'abord définir les classes suivantes : Classe Data :

Classe Population:

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

Voici les paramètres globales que nous avons précisée:

Voici l'implémentation des différentes méthodes de l'algorithme génétique : - crossover_population et mutate_population - crossover_schedule et mutate_schedule

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

4. Les interfaces graphique a. Page d’accueil: En ouvrant l’application au départ vous allez avoir la page d’accueil contenant différentes pages à accéder sur la barre en haut de la page notamment : la page d’ajout d’enseignant , celle pour l’ajout d’une salle, celle pour l’ajout d’un temps de session, une autre pour l’ajout des cours, l’ajout des départements et finalement l’ajout de la séance.

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

b. Page des enseignants: Dans cette page on aura la possibilité d’ajouter un enseignant en entrant son id (qui peut être sous format string) et son nom, ainsi qu’on peut faire la modification ou la suppression des enseignants qui se trouvent déjà dans la liste.

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

c. Page des salles: Cette page va nous permettre d’ajouter une salle en entrant les informations sur son nombre et la capacité d’étudiants qu’elle peut avoir, ainsi en cliquant sur le bouton « edit Rooms » on peut accéder à la liste des différentes classes et supprimer celle qu’on veut.

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

d. Page de temps de session: On peut sur cette page préciser le temps des sessions en simplement entrant des informations sur celle-ci tels que l’identifiant, le temps qui nous donne la possibilité de choisir dans un intervalle d’une heure ainsi que la jour concerné. En cliquant sur le bouton « Edit Meeting Time » nous allons pouvoir accéder à la liste des jours qu’on a déjà enregistrés et supprimer ceux qu’on souhaite.

e. Page des cours: En accédant à cette page on peut ajouter un cours, ceci peut être possible en saisissant le nombre du cours, le nombre maximum des étudiants qui peuvent assister à ce cours, son nom c’est-à-dire la matière qui sera enseigner et cela ne peut être bien sûr possible qu’à la présence d’un professeur et donc on peut ajouter un des professeurs qu’on enregistrer depuis la page d’ajout des enseignants. On peut également supprimer un cours en accédant depuis le bouton « Edit course » qui va nous afficher la liste des cours qu’on a.

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

f. Page des départements: Sur cette page nous allons pouvoir créer un département en entrant le nom du département ainsi que la liste des cours, c’est-à-dire modules, qu’on va lui associer et bien sûr on peut choisir le nombre qu’on veut des modules. Le bouton « Edit Department » va nous mener vers le tableau qui contient l’ensemble des modules dans le département.

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

g. Page des sections: Une fois qu’on y accède on peut ajouter la section, ceci pourrait se faire en ajoutant l’identifiant de chaque session, le département et combien de classes doivent enseigner par semaine ceci nous aidera également dans la génération de l’emploi.

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

h. Génération du calendrier: Après avoir entré toutes les informations demandées dans les pages au-dessus, il faut maintenant voir l’exécution de notre application. Pour se faire on revient vers notre page d’accueil et on clique sur « Generate Timetable » et ceci va générer le calendrier qui contiendra chaque cours se déroulera dans quelle salle exactement, l’enseignant qui sera responsable de ce cours avec la partie la plus importante qui est le temps qu’on va affecter à chaque classe.

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]

Ecole Normale Supérieure de l’Enseignement Technique Mohammedia Université Hassan II de Casablanca

‫ﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ المحمدية‬ ‫ﺍ‬

ENSET

‫ﺟﺎﻣﻌﺔ ﺍﻟﺤﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ‬

Conclusion Durant la période de recherche de notre projet, nous avons découvert le rôle essentiel que jouent les algorithmes de la métaheuristique pour répondre à des besoins d’optimisation. Dans notre projet, nous avons essayé de montrer nos capacités et puissance de développement, de démontrer l’utilité réelle de l’intelligence artificielle en générale et de la métaheuristique en particulier. Également, nous avons appris comment nous pouvons utiliser l’un des algorithmes les plus célèbres de ce domaine pour développer une application web qui peut réellement répondre à un besoin. La réalisation de ce projet n'était pas facile, à cause de plusieurs contraintes, notamment de temps et d’utilisation de l’algorithme génétique pour atteindre des résultats efficaces. Mais grâce à ce projet, nous avons appris comment nous pouvons développer plus de confiance en nous même pour faire un travail dans des délais limités, s'accrocher à nos idées et ne pas abandonner, et surtout travailler en équipe et réunir nos idées et forces pour surmonter toutes les difficultés. Nous avons pu acquérir de nouvelles connaissances, et nous avons mieux développé des autres notamment au niveau du management de stress et nous avons découvert le monde de l’intelligence artificielle. Finalement, nous pouvons conclure que ce projet a été une vraie occasion pour des acquis énormes.

ENSET, Avenue Hassan II - B.P. 159 - Mohammedia - Maroc 🕾 05 23 32 22 20 / 05 23 32 35 30 – Fax : 05 23 32 25 46 - Site Web: www.enset-media.ac.ma E-Mail : [email protected]