Conception d'un système pour l'emploi du temps universitaire

La page est créée Mickaël Vasseur
 
CONTINUER À LIRE
Conception d’un système pour l’emploi du temps universitaire

 Mme Mallem Zouina              Pr Kholladi Mohamed-                Melle Sahraoui
   zmallem@hotmail.fr                Khireddine1                      Sabrina1
                                    kholladi@yahoo.fr             sahraouipgs@yahoo.fr

                               Département d’informatique
                            Faculté des sciences de l’ingénieur
                             Université Mentouri Constantine
                                    Laboratoire MISC
Résumé
De nos jours, les chercheurs tentent de construire des systèmes informatiques capables
de concevoir des emplois du temps d’employés. Pour avoir ces systèmes, plusieurs
méthodes et algorithmes ont été proposés. Les algorithmes conçus qui sont mis en
œuvre se divisent en deux groupes : les algorithmes de consistance, c'est-à-dire des
algorithmes de prétraitement qui améliorent le travail des algorithmes de recherche et
les algorithmes de recherche ; à savoir les algorithmes à retour arrière (backtracking
algorithmes) et les algorithmes d’amélioration itérative (iterative improvement
algorithms). L’objectif de ce papier est de montrer les étapes importantes de
construction d’un système de prétraitement et de recherche pour la génération des
emplois du temps universitaires.
Mots clés : Problème de satisfaction de contraintes, problème de génération
d’emplois du temps universitaire.

Abstract
Today, researchers are trying to build computer systems capable of designing
employee timetabling. For these systems, several methods and algorithms have been
proposed. The designed algorithms that are implemented are divided into two groups:
The consistency algorithms, i.e. pre-processing algorithms that improve the work of
the search algorithms and the search algorithms (Backtracking algorithms and
iterative improvement algorithms). The objective of this paper is to show the
important steps of a pretreatment and the search system for generating university
timetabling.
Key words: constraint satisfaction problem, university timetabling problem.

1- Introduction
Les problèmes de l’emploi du temps des employés (ETP pour employee timetabling
problems) sont des problèmes très varies. Basiquement, ces problèmes concernent
l’assignation de taches aux membres d’une équipe en tenant compte des contraintes
(qualités, contraintes et préférences des employés) et d’objectifs (régulation globale
de l’organisation, réduction du coût global, division équitable du travail entre les
employés, etc.). Depuis près de quarante ans, ce type de problème a attire l’attention
de la communauté scientifique de plusieurs disciplines, dont l’intelligence artificielle
et l’optimisation ; et l’intérêt pour ce champ s’est accru lors des dix dernières années.
Ce problème se modélise généralement par un réseau de contraintes, encore appelé
problème de satisfaction de contraintes (CSP pour Constraint Satisfaction Problem).
La résolution d’un CSP consiste à trouver l’assignation consistante de valeurs à des
variables prenant leurs valeurs dans des domaines discrets et finis. Un ETP formalise
par un CSP peut être résolu de multiples façons : approche multicritère, algorithme

                                            1
génétique, heuristique spécifique, etc. Il est à noter que notre méthode est optimale
malgré la complexité NP-difficile de l’ETP.

2- Problème de l’emploi du temps
La gestion des emplois du temps consiste à affecter les enseignants et les salles à des
cours dans l’espace de temps en satisfaisant un ensemble de contraintes.

3- Formulation du problème
La formulation du problème ETP est la suivante [1]:
Problème= {Enseignants, Salles, Cours, Horaires, Contraintes} ;
Enseignants= {E1,….Ei,…..Ee} est l’ensemble des e enseignants ;
Salles= {S1,….Sj,…..Ss} est l’ensemble des s salles ;
Cours= {C1,….Cl,…..Cc} est l’ensemble des c cours ;
Horaires= {H1,….Hk,…..Hh} est l’ensemble des h horaires ;

Les contraintes sont un ensemble de contraintes.
Un enseignant Ei peut donner au plus un cours pendant l’horaire Hk dans une salle Sj:
        ∑ ∑ x [Ei, Sj, Cl, Hk] ≤ 1 ;        Ei, Hk
         Sj Cl
Une salle Sj peut contenir au plus un cours Cl donne par un seul enseignant pendant
l’horaire Hk :
         ∑ ∑ ∑ x [Ei, Sj, Cl, Hk] ≤ 1 ;     Sj
        Ej Cl Hk

Un cours Cl peut être donné au plus par un unique enseignant Ei dans une salle Sj à un
certain horaire Hk:
          x [Ei, Sj, Cl, Hk] = 1    Cl

4- Présentation de notre méthode
4-1- Structure des données du problème
Vœux [n, 5] veut dire un tableau des jours de préférences des enseignants, celui-ci
remplace les fiches de vœux, où n représente le nombre d’enseignants et 5 représente
le nombre de jours de travail des enseignants dans la semaine.

ETP [5,6] veut dire un tableau global de l’emploi du temps, où 5 représente le nombre
de jours de travail des enseignants dans la semaine et 6 représente le nombre de
créneaux horaires par jour.

           8h            9h30’         11h           12h30’       14h         15h30’       17h
Dimanche         cours      TD ou TP    TD ou TP          cours    TD ou TP     TD ou TP
Lundi              ˝             ˝           ˝              ˝           ˝         ˝
Mardi              ˝             ˝           ˝              ˝           ˝         ˝
Mercredi           ˝             ˝           ˝              ˝           ˝         ˝
Jeudi              ˝             ˝           ˝              ˝           ˝         ˝

Les créneaux horaires des cours sont : 8h---9h30’ et 12h30’---14h
Un cours ou séance d’un module est composé de trois champs :
          Type            Module          Groupe
      Type :       C:     Cours
                                                 2
TD : Travaux Diriges
               TP : Travaux Pratiques
      Module : PL : Paradigmes des langages
                RO : Recherche Opérationnelle
                RF : Reconnaissance des formes
                MR : Méthodologie de recherches
                  .
                  .
                 etc.
      Groupe : G1 : Premier Groupe de la section
                  G2 : Deuxième Groupe de la section
                  G3 : Troisième Groupe de la section
                  .
                  .
                 etc.

Salle [5,6] : tableau d’enregistrements des salles libres,

                        A            D           P

           A : indice courant de l’amphi libre.
           D : indice courant de la salle de TD libre.
           P : indice courant de la salle de TP libre.

4-2- Description de l’algorithme
Pour la solution du problème préconisé, nous avons essayé de construire les emplois
du temps des enseignants et de la section. Les différentes étapes principales de notre
algorithme sont :

a) Etape du prétraitement
- Chaque enseignant fixe ses journées de travail par ordre de préférences,
- Choisir les enseignants au hasard et donner la priorité aux cours, et ceci pour ne
   pas avantager un enseignant par rapport aux autres.

b) Algorithme
Les étapes de l’algorithme d’une section sont les suivantes :
       Début
               Initialiser le tableau Vœux [n, 5] par les informations des fiches de
               vœux ;
               Créer le tableau Salle [5,6] par les indices des listes des amphis, salles
               de TD et salles de TP ;
               Déclarer un tableau global pour la conception de l’emploi du temps :
               ETP [5,6];
               pour chaque enseignant faire
                     pour chaque séance faire
                            Trouver un créneau horaire libre
                            Chercher une salle libre
                            Affecter la séance et la salle à ce créneau horaire
                     fin pour
               fin pour
                                            3
Fin

c) Etape d’affichage des resultats
 -Emplois du temps des enseignants.
 -Emploi du temps de la section.

4-3- Application
Pour mieux comprendre l’algorithme, prenons l’application réelle suivante :
Soient :
 Une section de deux groupes (G1 et G2) de la deuxième année mastère académique
    de l’institut d’informatique de Skikda,
 Un ensemble d’enseignants (E1, E2, E3, E4, E5, E6 et E7) de cette section.

Toutes les informations de la section sont récapitulées dans le tableau suivant :

Enseignant   Module       Cours          TDG1        TDG2         TPG1        TPG2
    E1       Option          x              x           x
    E1       PL              x              x           x
    E2       RF              x              x           x             x             x
    E3       RO              x              x           x             x             x
    E4       MR              x
    E5       Archi           x              x             x
    E6       Simula          x              x             x           x             x
    E7       Anglais         x

Archi : Architecture des systèmes experts.
Simula : Simulation et modélisation des systèmes complexes.

Les vœux des enseignants sont regroupés dans le tableau suivant :

E1             dimanche       lundi            mardi          jeudi        mercredi
E2             lundi          mardi            mercredi       jeudi        dimanche
E3             dimanche       lundi            mardi          mercredi     jeudi
E4             mardi          mercredi         jeudi          dimanche     lundi
E5             dimanche       lundi            mardi          jeudi        mercredi
E6             mardi          mercredi         jeudi          lundi        dimanche
E7             lundi          mardi            mercredi       dimanche     jeudi

5- Résultats
Pour chaque section, il faut toujours libérer :
     un amphi (ou une très grande salle) pour les cours,
     un nombre n de salles de TD pour les travaux dirigés,
     un nombre n de salles de TP pour les travaux pratiques.
n : nombre de groupes de la section.

Pour notre application, nous avons besoin d’un amphi (A), de deux salles de TD (S1
et S2) et de deux salles de TP (B1 et B2) comme le montre tableau suivant :

                                           4
Nous supposons que notre système obtenu est un outil d’une grande efficacité pour la
résolution de tout problème de l’emploi du temps qui se formule de la même manière
que le notre, car il :
     minimise le nombre de journées de travail des enseignants,
     respecte les préférences des enseignants,
     évite d’avoir des heures creuses,
     élimine la redondance des séances dans l’espace du temps,
     minimise le nombre de salles utilisées par toutes les sections de l’institut où
        leurs créneaux horaires des cours sont différents
     est flexible, il peut être utilisé par d’autres sections en déplaçant les colonnes
        des créneaux horaires des cours.

Le seul inconvénient de notre système est son temps de calcul qui même s’il apparaît
long, reste dans les limites admissibles vu que nous y manipulons des nombres
limités, tels que : le nombre d’enseignants, de modules, de groupes, de salles (TD et
TP) et d’amphis.

6- Conclusion et perspectives
Plusieurs tests ont été réalisées ont montré l’efficacité de notre méthode. Des
structures de données adéquates, nous ont beaucoup aidés à proposer une méthode qui
aide beaucoup les responsables pédagogiques des universités à faire la gestion des
emplois du temps.

Nous considérons ces résultats préliminaires très encouragent et la méthode pourra
être d’une grande importance pour résoudre beaucoup de problème d’ordonnancement
dans le domaine de l’optimisation ; nous citons quelques uns :
 Planning des soutenances,
 Proposer des prétraitements pour améliorer la méthode itérative:
        o Tenir compte des préférences et des spécialités des enseignants,
        o Eliminer la redondance des informations,
 Planning des surveillances des examens dont les critères sont :
        o Faire éloigner les examens,
        o Plusieurs examens peuvent être dans une même salle,
        o Un examen peut être dispatcher dans plusieurs salles.

Les perspectives de notre travail sont les heuristiques qui donnent plus rapidement des
solutions acceptables.

                                           5
Références
[1] Thierry Moyaux, Brahim Chaib-draa et Sophie D'amours, « Satisfaction distribuée
     de contraintes et son application à la génération d'un emploi du temps
     d'employées» , 5ème Congrès international de Génie Industrial- vile de Québec
     26 au 29 Octobre 2003
[2] Yokoo, M. and K. Hirayama «Algorithms for distributed constraint satisfaction: A
     review. In: Auto-nomous Agents and Multi-Agent Systems», Vol. 3, 2000
[3] Yokoo, M., E. H. Durfee and T. Ishida «The distributed constraint satisfaction
     problem: Formalization and Algorithms». IEEE Trans. on Knowledge and Data
     Eng., Vol. 10, pp. 673-385, 1998.
[4] Burke, E.K and S. Petrovic, « Recent research directions in automated
     timetabling », European journal of Operational Research, accepted for
     publication in 2002.
[5] Meisels, A.schaerf, « Solving timetabling problems using genetic algorithms
     based on minimizing conflict heuristics», Athens, Greece European 2001.
[6] N.Belharet, y.Sadaoui, H.Benmessaoud « La théorie des graphes », Pages bleus de
     Rims, Algérie 2003. http;//www.pagesbleus-rims.com
[7] Meisels, A.schaerf, « Modelling and solving employee timetabling problems »,
     Applied Intelligence, accepted 2001.
[8] R.Faure, B.Lemaire et C.Picouleau, «Précis de recherche opérationnelle :
     Méthodes et exercices d'application», 5eme édition, Dunod, 2000.
[9]      E.Goubaul,      «     Cours      sur    les     algorithmes    génétiques»,
     http://www.eark.polytekhnique.fr/EC/welcome.html

                                         6
Vous pouvez aussi lire