Vous êtes sur la page 1sur 1

p(i) = durée de la tache i

objectif: minimiser la durée totale d'utilisation de la machine


minimiser t(n) + somme(sur i) [ p(i) * u(n,i) ]

Variables
u(k,i) indique si la tache i est en position k
u(k,i) = 1 si oui et = 0 sinon
t(k) = heure de début de la k-eme tâche

c(k) = heure de fin de la k-eme tâche


T(k) = retard de la tache au rang k

Contraintes:
somme(sur i) u(k,i) = 1 pour tout k (une seule tache par rang)
somme(sur k) u(k,i) = 1 pour i (un seul rang par tache)
t(k) >= somme(sur i) [ u(k,i) * r(i) ] pour chaque rang k (une tache n'est effectuée que lorsque est est
disponible)
t(k+1) >= t(k) + somme(sur i) [ p(i) * u(k,i) ]
t(k) >= 0
u(k,i) binaires

c(k) = t(k) + somme(sur i) [ p(i) * u(k,i) ]

T(k) = date de fin de la tache au rang k - date limite de la tache au rang k


T(k) >= c(k) - somme(sur i) [ d(i) * u(k,i) ] (pour tout rang k)
T(k) >= 0

somme(sur i) [ r(i) * u(k,i) ] = durée de disponibilité de la tache au rang k


somme(sur i) [ p(i) * u(k,i) ] = durée de la tache au rang k
s

Vous aimerez peut-être aussi