diff --git a/tp/question2.tex b/tp/question2.tex index 05abb7d..60280f0 100644 --- a/tp/question2.tex +++ b/tp/question2.tex @@ -24,7 +24,7 @@ On définit aussi ces constantes pour simplifier les calculs. \begin{itemize} \item $MAX_{PERIODE} = MAX_H-MIN_{PERIODE}-1$ = Nombre minimal de période dans le bloc de travail précédant et suivant la pause -\item $MAX_{PERIODE_REPOS} = MAX_{PERIODE}-MIN_H-1$ = Nombre minimal de période dans le bloc de repos débutant ou terminant la journée +\item $MAX_{PERIODE\_REPOS} = MAX_{PERIODE}-MIN_H-1$ = Nombre minimal de période dans le bloc de repos débutant ou terminant la journée \end{itemize} \subsection{Variables} @@ -58,17 +58,17 @@ La contrainte du nombre d'employés requis s'énonce comme suit: pour chaque pé \subsubsection{Motif de la journée de travail} \label{sec:q2automatefini} -Afin de représenter le motif correspondant à une journée de travail alternant les périodes de travail et celles de repos, on utilisera une contrainte \texttt{REGULAR} qui est paramétrée par un automate fini, c'est à dire une chaîne de caractère formant une expression régulière qui valide plusieurs contraintes définies par l'énoncé du problème. +Afin de représenter le motif correspondant à une journée de travail alternant les périodes de travail et celles de repos, on utilisera une contrainte de type \texttt{REGULAR} qui est paramétrée par un automate fini, c'est à dire une chaîne de caractère formant une expression régulière qui valide plusieurs contraintes définies par l'énoncé du problème. Dans Choco 4, la contrainte \texttt{model.regular} prend en paramètre une séquence de variables entières à valider, et un automate fini défini par la classe \texttt{FiniteAutomaton}. Pour construire une instance de cette classe, on doit construire l'expression régulière en n'utilisant que des nombres comme valeurs. Comme nous avons choisi de représenter les différents états d'un employé par une variable boolenne, cette condition est satisfaite. Voici comment nous avons construit l'expression: \begin{itemize} -\item On débute par 0 ou plusieurs périodes de repos, allant jusqu'à $MAX_{PERIODE_REPOS}$ +\item On débute par 0 ou plusieurs périodes de repos, allant jusqu'à $MAX_{PERIODE\_REPOS}$ \item On a ensuite une période de travail d'au moins $MIN_{PERIODE}$ et au plus $MAX_{PERIODE}$ -\item On a ensuite une pause +\item On a ensuite une pause d'une durée d'une période \item On a ensuite une période de travail d'au moins $MIN_{PERIODE}$ et au plus $MAX_{PERIODE}$ -\item On termine par 0 ou plusieurs périodes de repos, allant jusqu'à $MAX_{PERIODE_REPOS}$ +\item On termine par 0 ou plusieurs périodes de repos, allant jusqu'à $MAX_{PERIODE\_REPOS}$ \end{itemize} \subsection{Paramètres}