• Aucun résultat trouvé

2. Introduction aux problèmes d’ordonnancement de production

2.1. Modélisation des problèmes d’ordonnancement de production

La modélisation d'un problème d'ordonnancement passe par la spécification des tâches et leurs caractéristiques, des ressources et des critères à optimiser. Toutes ces données peuvent être représentées par la notation à trois champs α│β│γ introduite par Graham & al en 1979 [GRA79], et reprise par Blazewicz & al en 1996 [BLA96]. Quelques extensions ont été introduites, dont celles données par Vignier & al en 1999 [VIG99] pour les problèmes de

flowshop hybride et par T'Kindt en 1999 [TKI99] pour les problèmes d'ordonnancement

multicritères.

Le champ α décrit l'environnement machine, c'est-à-dire, la structure de l'atelier. Le champ β représente les contraintes du problème liées aux tâches. Le champ γ décrit le ou les objectifs sous forme de critères à optimiser.

Nous allons dans ce qui suit définir les quatre notions fondamentales qui interviennent dans un problème d’ordonnancement : les tâches (Travaux ou Jobs en anglais), les ressources, les objectifs et les contraintes. Une tâche se définit comme un ensemble d'opérations qui doivent être exécutées. Une ressource est un moyen matériel ou humain à disposition pour la réalisation d'un travail. Les contraintes représentent les limites imposées par l'environnement, tandis que l'objectif est le critère d'optimisation.

2.1.1. Les tâches

Une tâche est le processus le plus élémentaire. Elle est constituée d’un ensemble d’actions à accomplir, dans des conditions fixées, pour obtenir un résultat attendu et identifié, en termes de performances, de coûts et de délais (norme AFNOR NF X50-310).

Dans certains problèmes, les tâches peuvent être exécutées par morceaux. L’entrelacement des différents morceaux permettant de laisser, le moins possible, les ressources inactives. Dans d’autres cas, au contraire, on ne peut pas interrompre une tâche une fois commencée. On parle alors respectivement de problèmes préemptifs et non préemptifs.

Une tâche tij est localisée dans le temps par:

ƒ pij : La durée opératoire de la tâche i sur la machine j;

ƒ rij : La date de début au plutôt ou date de disponibilité de la tâche i sur la machine j ; ƒ dij : La date de fin au plus tard ou «deadline» de la tâche i sur la machine j;

ƒ tij : La date de début d’exécution de la tâche i sur la machine j ; ƒ cij : La date de fin d’exécution de la tâche i sur la machine j ;

ƒ Tij : Le retard vrai de la tâche i sur la machine j / Tij = max (0,cij – dij);

ƒ Uij : L’indice de retard Tel que Uij =1 si la tâche est en retard, 0 sinon;

ƒ gij(u): Le coût attaché à la fin d’exécution de la tâche i sur la machine j, à la date u.

La figure 2.1 illustre les caractéristiques temporelles présentées ci-dessus :

Figure 2.1: Carctéristique d'une tâche.

2.1.2. Les Ressources

Une ressource k est un moyen technique ou humain requis pour la réalisation d’une tâche. Elle est disponible en quantité limitée, et sa capacité est supposée constante.

Plusieurs types de ressources sont à distinguer. Une ressource est renouvelable si après avoir été utilisée par une ou plusieurs tâches, elle est à nouveau disponible en même quantité (les hommes, les machines, l’espace, l’équipement en général, etc.). La quantité de ressources utilisable à chaque instant est limitée. Dans le cas contraire, elle est consommable (matières premières, budget, etc.). La consommation global (ou cumul) au cours du temps est limitée. Par ailleurs, on distingue les ressources disjonctives (ou non partageables) qui ne sont allouées qu’à une tâche à la fois (machine-outil, robot manipulateur) et les ressources

cumulatives (ou partageables) qui peuvent être utilisées par plusieurs tâches simultanément

(équipe d’ouvriers, poste de travail).

tij : début d’exécution de tij cij : fin d’exécution de tij.

lij : retard de tij.

2.1.3. Les critères d’optimisation

Lors de la résolution d’un problème d’ordonnancement, on peut distinguer entre deux types de stratégies, visant respectivement à l’optimalité des solutions par rapport à un ou plusieurs critères, ou à leur admissibilité vis-à-vis des contraintes. L’approche par optimisation suppose que les solutions candidates à un problème puissent être ordonnées de manière rationnelle selon un ou plusieurs critères d’évaluation numérique permettant d’apprécier la qualité des solutions. On cherchera à minimiser ou maximiser de tels critères. Les critères les plus utilisés sont donnés en le tableau 2.1.

Tableau 2.1: Critères d'optimisation

Une caractéristique intéressante pour un critère est sa régularité. Un critère est dit régulier si pour deux ordonnancements différents O1 et O2 : si le fait que chaque tâche de O1 se termine

au plus tard ou en même temps que la tâche correspondante dans O2, entraîne que la valeur du

critère d’optimisation pour O1,est inférieur ou égale à la valeur du critère pour O2.

Nous terminerons ce paragraphe par la définition de trois classes d’ordonnancement, qui sont les ordonnancements actifs, semi-actifs et sans délai [BAK74]:

- un ordonnancement est dit semi-actif (ou calé à gauche) si aucune tâche ne peut être exécutée plus tôt sans changer l’ordre d’exécution sur les ressources ou violer de contrainte ;

- un ordonnancement est dit actif si aucune tâche ne peut être exécutée plus tôt sans violer de contrainte ou retarder une autre tâche ;

- un ordonnancement est dit sans délai si à tout instant t, les ressources ne sont pas présentes en quantité suffisante pour pouvoir commencer une tâche disponible et exécutée plus tard dans l’ordonnancement.

Il a été démontré que pour tout critère régulier, les ensembles des ordonnancements semi- actifs et actifs sont dominants, c’est à dire qu’ils contiennent au moins une solution optimale [CHU95].

Dans la figure 2.2, on considère le problème d’ordonnancement à une machine de deux tâches T1 et T2 avec p1=2, p2=1, r1=1 et r2=0. L’ordonnancement représenté dans la figure 2.2.a est

semi-actif mais n’est ni actif ni sans délai alors que l’ordonnancement représenté dans la figure 2.2.b est à la fois semi-actif, actif et sans délai.

a) b)

Figure 2.2: Exemples d'ordonnancements semi-actifs et sans délai

Dans la figure 2.3, on considère le problème d’ordonnancement à machines parallèles (m=2) de trois tâches T1, T2 et T3 avec p1=2, p2=2, p3=4, r1=1 et r2= r3=0. L’ordonnancement

représenté dans la figure 2.3 est à la fois semi-actif et actif mais n’est pas sans délai.

Figure 2.3: Exemple d'ordonnancement actif qui n'est pas sans délai

2.1.4. Les contraintes

Une contrainte exprime des restrictions sur les valeurs que peuvent prendre conjointement les variables représentant les relations reliant les tâches et les ressources. On distingue les contraintes temporelles et les contraintes de ressources.

Les contraintes temporelles intègrent:

ƒ les contraintes de temps alloué, issues généralement d’impératifs de gestion et relatives

aux dates limites des tâches (délais de livraison, disponibilité des approvisionnements) ou à la durée totale d’un projet ;

ƒ les contraintes d’antériorité et plus généralement les contraintes de cohérence technologique, qui décrivent le positionnement relatif de certaines tâches par rapport à d’autres ;

ƒ les contraintes de calendrier liées au respect d’horaires de travail, etc.

0 1 3 4 T2 T1 0 1 3 T2 T1 0 1 3 5 T2 T1 T3

Les contraintes de ressources traduisent le fait que les ressources sont disponibles en quantité limitée. On distingue deux types de contraintes de ressources, liées à la nature disjonctive ou cumulative des ressources. Une ressource disjonctive ne peut être utilisée que par une tâche à la fois. Par contre dans une ressource cumulative les ensembles de tâches non réalisables simultanément sont de cardinalité quelconque.

Les problèmes d’ordonnancement sont très différents d’un atelier à l’autre, et il n’existe pas de méthode universelle permettant de résoudre efficacement tous les cas. Dans ce qui suit, nous décrivons les problèmes classiques d’atelier.