📄 faq_fr.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML><HEAD> <META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=iso-8859-1"> <TITLE></TITLE> <META NAME="GENERATOR" CONTENT="OpenOffice.org 1.1.3 (Linux)"> <META NAME="AUTHOR" CONTENT="Liviu Lalescu"> <META NAME="CREATED" CONTENT="20050616;21010400"> <META NAME="CHANGEDBY" CONTENT="Liviu Lalescu"> <META NAME="CHANGED" CONTENT="20050616;21031800"></HEAD><BODY LANG="en-US" DIR="LTR"><H1>FAQ - Foire aux Question</H1><P STYLE="margin-bottom: 0in">dimanche 27 février 2005. </P><P> </P><H2><A HREF="mailto:fetfr@free.fr">Jérôme DURAND</A></H2><P><BR><BR></P><P>Cette FAQ est en cours de traduction. L’original (enanglais) est disponible dans le répertoire doc des sources deFET. </P><P>Q : Quelle est la structure des données en entréede FET ? </P><P>R : Etudiants - organisés en ensembles (despromotions, contenant des groupes, contenant des sous-groupes) </P><P>Enseignants </P><P>Matières ( nom des enseignements dispensés, parexemple Maths, physique, etc...) </P><P>Activités : l’association d’un ouplusieurs enseignants, d’une matière et d’un ouplusieurs ensembles d’étudiants. Ceci correspond auxcours, travaux dirigés, travaux pratiques ... </P><P>Contraintes : elles peuvent être de deux types soittemporelles (liées au jour ou à l’heure devantêtre alloués), soit de salles (liées àl’allocation de salles particulières). Elles peuventégalement être obligatoires ou non. </P><P>ConstraintBasicCompulsoryTime et ConstraintBasicCompulsorySpacesont deux contraintes implicites pour tous les emplois du temps.Elles sont ajoutées automatiquement. Autre contrainte ajoutéeautomatiquement, ConstraintActivityPreferredTime, quand une nouvelleactivité est insérée. </P><P>Chaque contrainte a un poids, les contraintes implicites ont lavaleur par défaut de 1.0. Vous pouvez modifier le poids desautres contraintes, et vous êtes encouragés àjouer sur ces valeurs. Comment calculer le facteur de conflit d’unecontrainte ? Simplement, c’est le nombre de conflits,multiplié par 1 pour les activités bihebdomadaires etpar 2 pour les activités hebdomadaires, le tout multipliépar le poids de la contrainte. </P><P>PS : il est conseillé de travailler avec des poidsentiers pour l’instant (entre 1 et 100). </P><P>Nouveau : les données de FET peuvent aussi contenirune liste d’équipements. </P><P>Q : Comment fonctionne FET ? </P><P>R : Un algorithme génétique simple. Vous pouvezlire mes articles ( sur mon site web http://lalescu.ro/liviu/fet ) àce sujet. </P><P>Pour l’essentiel (allocation des heures) : chaqueemploi du temps possible est représenté par un tableau,disons times[i], où i varie de 0 au nombre d’activitésmoins un. L’emplacement times[i] contient l’heure allouéepour l’activité i. </P><P>Ensuite, on applique un algoithme génétique(utilisant des notions comme la sélection, le croisement, lamutation etc...) pour obtenir (on l’espère) une solutionproche de la solution optimale. </P><P>Q : Comment obtenir un emploi du temps optimal et pourquoiobtient-on des résultats différents chaque fois ? </P><P>R : La génération de l’emploi du tempsest un processus aléatoire ; si les résultats nesont pas satisfaisants, veuillez redémarrer et réessayer.Vous pouvez aussi augmenter le nombre de chromosomes (populationnumber : quitter FET, modifier le fichier input/fet.ini etrelancer FET). Pour l’instant, le nombre de chromosomes estlimité à 8192 mais, si vous avez suffisamment de RAM,vous pouvez l’augmenter (8192 égale environ 180 Mo).Cette variable est stockée dans le fichiersrc/engine/genetictimetable_defs.h et s’appelleMAX_POPULATION_NUMBER. </P><P>Q : Je DETESTE l’interface ! </P><P>R : La structure et l’organisation des donnéesde FET ont beaucoup de potentiel ; malheureusement, je n’aipas eu le temps de concevoir l’interface utilisateurcorrespondante. J’espère que, dans l’avenir, moiou quelqu’un d’autre aura le temps d’y remédier.</P><P>Q : Quelle est l’organisation des étudiants queFET peut prendre en compte ? </P><P>R : FET a été conçu pour pouvoir prendreen compte n’importe quelle structure scolaire : </P><P>sous-groupes indépendants (sans recouvrement) </P><P>groupes se recouvrant (plusieurs sous-groupes), promotions(niveaux) se recouvrant (plusieurs groupes). </P><P>Q : Comment travaille-t-on avec des groupes d’étudiantsse recouvrant ? </P><P>R : Si vous avez des groupes se recouvrant, vous devezdéfinir les plus petits sous-groupes indépendants, quine se recouvrent pas avec un autre groupe. </P><P>Exemple : vous avez un groupe, matière sport (garçonset filles séparés) et une matière optionnelle,sciences physiques, qu’une partie seulement des étudiantsa choisi de suivre (oui, FET peut gérer des matièresoptionnelles). Il faut alors définir les sous-groupessuivants : garçons qui veulent des sciences physiques,garçons qui ne veulent pas des sciences physiques, filles quiveulent des sciences physiques, filles qui ne veulent pas dessciences physiques. Ensuite, il suffit de définir : </P><P>groupe garçons = sous-groupes garçons qui veulentdes sciences physique + garçons qui ne veulent pas dessciences physiques </P><P>groupe filles = sous-groupes filles qui veulent des sciencesphysiques, filles qui ne veulent pas des sciences physiques </P><P>groupe sciences physiques = sous-groupes garçons quiveulent des sciences physiques + filles qui veulent des sciencesphysiques. </P><P>Vous pouvez alors ajouter des activités pour les groupesainsi définis : </P><P>Activité 1 : enseignant A, groupe filles, matièresport ; </P><P>Activité 2 : enseignant B, groupe garçons,matière sport ; </P><P>Activité 3 : enseignant C, groupe sciences physiques,matière sciences physiques. </P><P>Q : Peut-on ajouter plusieurs groupes d’étudiantset plusieurs enseignants à une même activité ?</P><P>R : Oui, vous pouvez créer des activitéscomportant plusieurs enseignants et plusieurs groupes d’étudiants(promotions, groupes ou sous-groupes). </P><P>Q : Que représente le poids des contraintes ? </P><P>R : C’est l’importance des contraintes, les unespar rapport aux autres. Pour l’instant, essayez de n’utiliserque des poids entiers. Je n’ai jamais eu à utiliser devaleurs différentes de 1, mais vous pourriez en avoir besoin. </P><P>Q : Comment puis-je augmenter la puissance de recherche ?</P><P>A : Il faut augmenter le nombre de chromosomes (populationnumber). </P><P>Q : Que signifie activité bihebdomadaire ? </P><P>R : C’est une activité qui a lieu toutes lesdeux semaines (ce concept n’est peu-être pas commun, maisje l’ai implémenté dès le débutparce que ma faculté en avait besoin). (NdT : ce conceptest très utilisé dans les établissementssecondaires en France pour tenir compte de volumes horairesnon-entiers) </P><P>Q : Pourquoi les conflits sont-ils indiqués avec uneimportance double ? </P><P>R : Parce que ces conflits font référence àdes activités hebdomadaires. Pour les activitésbihebdomadaires, les conflits sont indiqués avec uneimportance simple. </P><P>Q : Comment puis-je contribuer à FET ? </P><P>R : Veuillez lire le fichier TODO. Vous pouvez aussi envoyervos commentaires/suggestions à l’auteur. FET est unlogiciel libre et toute donation serait appréciée.Veuillez contacter l’auteur à ce sujet. </P><P>Q : Quel est l’algorithme de FET ? </P><P>R : Un algorithme génétique simple, appliquésur un modèle de données simple. </P><P>Dans l’avenir, j’espère pouvoir mettre ici unevraie description de l’algorithme. En attendant, voici quelquestrucs nécessaires pour comprendre le programme : </P><P>L’algorithme génétique et la représentationdes données qui sont derrière le programme m’ontl’air vraiment simple maintenant et je pense pouvoirl’expliquer au maximum en deux heures. Le moteur lui-mêmen’est pas non plus très compliqué àcomprendre. Le cauchemar est dans l’interface graphique, lamodélisation, la sauvegarde et le chargement des données.</P><P>L’allocation du temps (heures) et de l’espace (salles)sont deux phases similaires. Vous pouvez lire mes articles pourcomprendre pourquoi il faut d’abord allouer les heures etensuite les salles. </P><P>J’utilise une liste QPtrList pour les enseignants, lesmatières, les étudiants (promotions, groupes,sous-groupes), les activités et les contraintes. Avant decommencer la simulation, ces informations sont copiées dansdes tableaux pour accélérer les calculs. La simulationfonctionne alors en utilisant l’index de ces nouveaux tableauxpour chaque enseignant, matière et activité. Les
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -