je veu un program prolog à ce sujet SVP avant vendredi

redman167

Nouveau membre
Problème : Emploi du temps

Nous avons un ensemble d’enseignant [e1,e2,e3] , un ensemble de groupe [g1,g2,g3] ,un ensemble de jours [j1,j2] , et des créneaux d’horaires [8h-10h, 10h-12h, 14h-16h, 16h-18h]


Supposant le problème comme suit :
1. l'on manipule des créneaux horaires de 2h : 8h-10h, 10h-12h, 14h-16h, 16h-18h
2. l'on doit trouver un emploi du temps sur deux jours : j1, j2.
Soit le scénario (contraintes) suivant :

Trois enseignants e1, e2 et e3 enseignent chacun une matière spécifique et leurs
impossibilités d'enseignement sont les suivantes :
1. e1 ne peut enseigner le jour j1 de 16h à 18h et le jour j2 de 14h à 16h.
2. e2 ne peut enseigner le jour j2 de 10h à 12h et le jour j1 de 16h à 18h.
3. e3 ne peut enseigner le jour j1 de 14h à 16h et le jour j2 de 8h à 10h.

On considère trois groupes d'étudiants g1, g2 et g3. Chacun d'eux doit suivre, sur
ces deux jours, deux enseignements de 2h effectues par chacun des enseignants e1, e2 et e3 (soit, pour chaque groupe, 12h d'enseignement au total).

On suppose que trois salles s1, s2 et s3 sont disponibles. Seules les salles s1 et s2
sont munies d'un rétroprojecteur. La salle s1 n'est pas disponible le jour j1 de 10h
à 12h. La salle s2 n'est pas disponible le jour j2 de 16h à 18h et de 8h à 10h. La
salle s3 n'est pas disponible le jour j2 de 16h à 18h et le jour j1 de 14h à 16h.

Vous pouvez dans un premier temps relâcher la contrainte de salles en supposant que chaque groupe à une salle attitrée toute équipée.

 

KangOl

Grand Maître
tu veux pas non plus que je range ta chambre ??

on est pas la pour faire tes devoirs, fait le toi meme et si tu as des problème on peux t'aider a les résoudre !
 

xam

Grand Maître
[citation=7789,0,4][nom]KangOl a écrit[/nom]il a dit en prolog pas en java :o[/citation]de toutes facons le java ca pu. :o
 

redman167

Nouveau membre
"xam" "kamgol" je veu k'un exemple de program prolog du meme type ( avec des contrainte et des liste )pour resoudre le probleme avec la notion de recursivité

mais au niveau de la modelisation c'est fait

NB: je suis en stage de fin d'etudes et mon sujet de stage ça n'a rien àvoir avec ça
alors paresse !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!?
 

KangOl

Grand Maître
1/ evite d'ecorcher mon pseudo :o
2/ explique toi un peu alors. là, tu a juste copier/coller l'enoncé qu'on t'a donné :o
 

redman167

Nouveau membre
non mec ,

l'enoncé ça n 'a rien à voir regarde

Realisation d'un emploi du temps
1 Presentation du probleme
Une ecole souhaite realiser, en debut d'annee, l'emploi du temps d'une formation.
Les contraintes portent sur les enseignants, les groupes d'etudiants et les salles.
Enseignant
Un enseignant possede des contraintes portant sur
des disponibilites (jour de la semaine, tranche horaire)
des competences (enseignements dispenses)
des besoins materiels (retroprojecteur, videoprojecteur, salle de TP)
Groupe d'etudiants
Un groupe d'etudiants doit suivre une liste d'enseignements dont chacun possede un
volume horaire propre (exemple: 2 creneaux (de 2h) de la matiere 1, 6 creneaux de la
matiere 2, etc.)
Salle
Une salle possede
des disponibilites (jour de la semaine, tranche horaire)
des equipements (retroprojecteur, videoprojecteur, salle de TP)
Le probleme a resoudre consiste a concilier un maximum de ces contraintes pour proposer
un emploi du temps sur une certainte duree.
2 Travail demande
Proposez un systeme capable d'etablir un emploi du temps qui respecterai un maximum
de contraintes en s'inspirant des techniques presentees en cours.
 

redman167

Nouveau membre
"kangol" l'algorithme le voila :
tant_que non(vide(a_explorer)) faire
e<- extraire_etat(a_explorer)
si (e) est solution
alors retourner (e)
fin_si
succ<-générer_successeurs(e)
incorporer( a_explorer, succ)
fin_tant_que
retourner (pas de solution)

Les opérations « extraire_etat » et « incorporer » correspondent respectivement à « dépiler »
et « empiler ».
 

KangOl

Grand Maître
bha on va pas te faire un cours non plus !!
recherche des tutos sur le net...

et explique vraiment ce que tu veux aussi !
 

redman167

Nouveau membre
j'ai fais des testes sur un program prolog du meme type ça n'a rien donnée
Exemple: zebre.pl( problem des mainson)
 

Bernybon

Nouveau membre
moi j'ai un petit problème, je dois faire un système s'emblable et je débute en prolog...

voici ce que je fais:

horaire(Employe, Day, Begin, End) :-
timeToDos([A,B]),
tous_differents([A,B]),
timeWeekDayDispo(Employe, Day, Begin, End),
timeDone(A, Day, Begin, End).

% résultat:

Employe = alain
Day = lundi
Begin = 2
End = 4 ;

Employe = alain
Day = mardi
Begin = 2
End = 4 ;

Employe = nancy
Day = mardi
Begin = 2
End = 4 ;

mais ce n'est pas ce que je veux.

j'aimerais plutot qu'il m'affiche en une seule fois par exemple:

Employe = alain
Day = lundi
Begin = 2
End = 4
Employe = nancy
Day = mardi
Begin = 2
End = 4 ;

ce résultat proviendrait du fait que j'ai 2 temps d'horaire: A et B qui s'associerait au seul temps d'employé possible pour les satisfaire tous les 2.

Je ne sais pas si c'est assez clair ?

merci beaucoup
 

KangOl

Grand Maître
merci mais après deux ans et demi, tu pouvais laisser le sujet mourir tout seul :D
 
Vous devez vous inscrire ou vous connecter pour répondre ici.
Derniers messages publiés
Statistiques globales
Discussions
730 098
Messages
6 717 106
Membres
1 586 287
Dernier membre
lucilleguffey
Partager cette page
Haut