Você está na página 1de 51

LES PROBLEMES D'ORDONNANCEMENT

GOTHA
INTRODUCTION
1. PRESENTATION DES PROBLEMES D'ORDONNANCEMENT
1.1. DEFINITIONS ET TYPOLOGIE
1.2. MODELISATION PAR RESEAUX DE PETRI
1.3. TECHNOLOGIE DE GROUPE ET ORDONNANCEMENT
2. PROBLEMES CENTRAUX ET METHODES SERIELLES
2.1. LE PROBLEME CENTRAL CLASSIQUE
2.2. LE PROBLEME CENTRAL A RESSOURCES CONSOMMABLES
2.3. LE PROBLEME CENTRAL REPETITIF
2.4. LES METHODES SERIELLES
3. PROBLEMES A RESSOURCE UNIQUE
3.1. PROBLEMES A UNE MACHINE
3.1.1. RESULTATS SUR LE PROBLEME DE BASE
3.1.2. MINIMISATION DE LA SOMME DES RETARDS
3.1.3. MINIMISATION DE LA DUREE TOTALE
3.2. MACHINES A EXEMPLAIRES MULTIPLES
3.2.1. PROBLEMES CLASSIQUES m MACHINES
3.2.2. PROBLEMES D'ORDONNANCEMENT DISTRIBUE
4. PROBLEMES A RESSOURCES MULTIPLES
4.1. PROBLEMES D'ATELIER
4.1.1. LE FLOW-SHOP
4.1.1.1. Le problme de base d'ordonnancement statique de type flow-shop
4.1.1.2. Rappel des travaux de S.M. JOHNSON
4.1.1.3. Influence des ides de S.M. JOHNSON sur la rsolution des problmes d'ordonnancement
de type n/m/F, contraintes diverses/Cmax
4.1.1.4. Conclusion
4.1.2. LE JOB-SHOP
4.1.2.1. Minimisation de la dure totale
4.1.2.2. Minimisation de la somme des retards
4.1.3. L'OPEN-SHOP
4.1.3.1. Variantes et extensions
4.1.3.2. Complexit et algorithmes exacts pour l'open-shop
4.1.3.3. Mthodes approches
4.2. LE PROBLEME DU VOYAGEUR DE COMMERCE
4.2.1. ORDONNANCEMENT ET VOYAGEUR DE COMMERCE
4.2.2. UN APERCU SUR LES METHODES DE RESOLUTION
4.3. PROBLEMES CUMULATIFS
4.3.1. LE PROBLEME CUMULATIF GENERAL
4.3.2. ANALYSE DE PROBLEMES D'ORDONNANCEMENT SOUS CONTRAINTES DE
TEMPS ET DE RESSOURCES
4.3.2.1. Prsentation de la problmatique
4.3.2.2. Principes gnraux de l'analyse sous contraintes
4.3.2.3. Rgles pour l'analyse sous contraintes d'un problme d'ordonnancement
4.3.2.4. Autres dveloppements
5. PROBLEMES D'ORDONNANCEMENT CYCLIQUE
5.1. UN EXEMPLE DE PROBLEME CYCLIQUE AVEC RESSOURCES
5.2. MODELES ET RESULTATS GENERAUX
5.3. PROBLEMES A RESSOURCE UNIQUE
5.4. PROBLEMES A RESSOURCES MULTIPLES
5.4.1. PROBLEMES DE PIPELINES
5.4.2. PROBLEMES D'ATELIER
5.5. CONCLUSION
PRESENTATION DU GROUPE GOTHA
LES PROBLEMES D'ORDONNANCEMENT
GOThA (*)
INTRODUCTION
Le GOThA est un groupe de recherche informel qui a pour but de faire se rencontrer de
chercheurs d'horizons divers travaillant sur les problmes d'ordonnancement. GOThA est un sigle
pour Groupe d'Ordonnancement Thorique et Appliqu. L'ensemble des membres du groupe a non
seulement men des recherches thoriques mais aussi trait de nombreux cas rels.
La somme de nos expriences nous permet de tirer quelques conclusions . Les problmes rels
sont mal rsolus et paraissent a priori trs complexes ; ils peuvent cependant souvent tre rsolus
de faon trs satisfaisante. Ces problmes sont distincts les uns des autres et ne peuvent pas tre
traits efficacement l'aide d'un outil standard. Les dcideurs ignorent souvent l'origine des
difficults de leur rsolution. Une partie au moins de la recherche thorique est proche des cas
rels. Les outils thoriques permettent l'heure actuelle de rsoudre certains problmes de grande
taille (par exemple le job-shop). Les bonnes heuristiques, suffisantes le plus souvent, sont des
sous-produits d'tudes thoriques fines.
Ces conclusions expliquent notre dmarche dans cet article. Notre but n'est pas d'tre exhaustif
mais de sensibiliser le lecteur des problmes dont l'importance chappe de moins en moins aux
informaticiens mais encore trop souvent aux industriels. Nous avons ici quatre motivations
principales. La premire est de prsenter les outils de base que tout praticien du domaine doit
connatre, savoir les mthodes potentiels-tches, les rseaux de Petri temporiss, les mthodes
de circuit critique, les mthodes srielles et les algorithmes de Johnson, de Jackson, de Smith et de
Mac Naughton. Notre deuxime motivation est d'initier le lecteur au vocabulaire qui permet
d'aborder la littrature foisonnante du domaine et la reconnaissance des principaux problmes
tudis (problmes d'ateliers : flow-shop, job-shop et open-shop / problme du voyageur de
commerce / problmes contraintes cumulatives). La troisime motivation est de dcrire les
diffrentes mthodes pour aborder un tel problme. Cet apprentissage se fait en s'appuyant sur un
certain nombre de rsultats des membres du groupe GOThA. On pourra chercher dcomposer le
problme en plusieurs sous-problmes (technologie de groupe, dcomposition spatiale et
temporelle) , chercher une ressource dominante (tude des problmes une et m machines) ,
s'appuyer sur une heuristique robuste comme l'algorithme de JOHNSON , mettre au point des
mthodes exactes de type arborescent (job-shop, par exemple), rechercher des optima locaux, se
restreindre des sous-ensembles dominants ou utiliser des mthodes de descente ou de recuit ... La
dernire motivation est de prsenter les problmes d'ordonnancement rptitifs dont l'tude rcente
est particulirement importante pour les problmes issus de l'informatique.
La premire partie est une prsentation gnrale des problmes d'ordonnancement, de leu
modlisation et de leur simplification par l'approche technologie de groupe. La deuxime partie
dcrit les outils fondamentaux : la mthode des potentiels , bien connue, pour les problmes sans
contraintes de ressource, l'algorithme du dcalage pour les problmes ressources
consommables et la mthode du circuit critique pour le problme central rptitif. Les mthodes
srielles sont prsentes ensuite en tant que techniques gnrales pour obtenir des solutions
approches. La troisime partie traite des problmes d'ordonnancement une et m machines dont
la rsolution est la base de problmes plus gnraux. Pour ces problmes un seul type de
ressource , et dans le cas d'une seule machine , nous mettons surtout l'accent sur quelques rsultats
rcents.
(*) J.Carlier, P.Chrtienne, J.Erschler, C.Hanen, P.Lopez, E.Pinson, M-C.Portmann, C.Prins,
C.Proust, P.Villon.
Nous tudions ensuite les problmes m machines identiques en incluant les derniers travaux sur
les problmes d'ordonnancement distribus pour lesquels la prise en compte de temps de
communication entre machines est de premire importance.La quatrime partie est consacre aux
problmes d'atelier : flow-shop, job-shop, open-shop. Les concepts fondamentaux sur lesquels sont
fonds les algorithmes de rsolution sont analyss et la mthode la plus efficace de rsolution du
problme de job-shop est dcrite en dtails. Nous prsentons galement l'analyse sous contraintes
qui consiste caractriser les solutions admissibles d'un problme d'ordonnancement sans
chercher optimiser un critre particulier. La cinquime et dernire partie traite les problmes
d'ordonnancement rptitifs. On y montre que les rseaux de Petri temporiss constituent un bon
outil de modlisation et l'on y prsente quelques rsultats rcents pour des problmes une
ressource et plusieurs ressources.
1.PRESENTATION DES PROBLEMES D'ORDONNANCEMENT
Le but de cette premire partie est de prsenter les problmes d'ordonnancement. Nous rappelons
d'abord les diffrents paramtres d'un tel problme. Puis nous expliquons comment les rseaux de
Petri temporiss permettent de modliser avec un seul formalisme la plupart de ces problmes: il
s'agit donc d'un excellent outil de simulation. Nous concluons enfin en voquant la technologie de
groupe , ensemble de mthodes structurantes et rductrices qui permettent d'extraire du systme de
production tudi des problmes d'ordonnancement d'une taille raisonnable.
1.1.DEFINITIONS ET TYPOLOGIE
Ordonnancer un ensemble de tches, c'est programmer leur excution en leur allouant le
ressources requises et en fixant leurs dates de dbut. La thorie de l'ordonnancement traite de
modles mathmatiques mais analyse galement des situations relles fort complexes; aussi le
dveloppement de mthodes utiles ne peut-il tre que le fruit de contacts entre la thorie et la
pratique. Les problmes d'ordonnancement apparaissent dans tous les domaines de l'conomie :
l'informatique (les tches sont les programmes ; les ressources sont les processeurs, la mmoire,
...), la construction (suivi de projet), l'industrie (activits des ateliers en gestion de production et
problmes de logistique), l'administration (emplois du temps).
Dans un problme d'ordonnancement interviennent deux notions fondamentales: les tches et les
ressources. Une ressource est un moyen, technique ou humain, dont la disponibilit limite ou non
est connue a priori. Une tche est un travail lmentaire dont la ralisation ncessite un certain
nombre d'units de temps (sa dure) et d'units de chaque ressource.
La rsolution d'un problme d'ordonnancement doit concilier deux objectifs. L'aspect statique
consiste gnrer un plan de ralisation des travaux sur la base de donnes prvisionnelles.
L'aspect dynamique consiste prendre des dcisions en temps rel compte tenu de l'tat des
ressources et de l'avancement dans le temps des diffrentes tches.
Les donnes d'un problme d'ordonnancement sont les tches et leurs caractristiques, l
contraintes potentielles, les ressources, et la fonction conomique. On note en gnral I={1,2,,n}
l'ensemble des tches et p
i
la dure de la tche i si cette dure ne dpend pas des ressources qui lui
sont alloues. Souvent une tche i ne peut commencer son excution avant une date de
disponibilit note r
i
et doit tre acheve

avant une date chue d
i
. Les dates relles de dbut et
de fin d'excution de la tche i sont notes respectivement t
i
et C
i
. Les tches sont souvent lies
entre elles par des relations d'antriorit . Si ce n'est pas le cas on dit qu'elles sont indpendantes .
La contrainte d'antriorit la plus gnrale entre deux tches i et j, appele contrainte potentielle ,
s'crit sous la forme t
j
-t
i
~ a
ij
; elle permet d'exprimer la succession simple (a
ij
=p
i
) et de
nombreuses variantes.
Dans certains cas, une tche, dite morcelable ou encore premptive , peut tre excute pa
morceaux. Des techniques d'optimisation issues des mathmatiques du continu (par exemple la
programmation linaire ) sont alors souvent utiles pour rsoudre ce type de problmes.
On distingue deux types de ressources pouvant tre requises par les tches : les ressources
renouvelables et les ressources consommables . Une ressource est renouvelable si, aprs avoir t
alloue une tche, elle redevient disponible pour les autres. Les ressources renouvelables
usuelles sont les machines, les processeurs, les fichiers, le personnel ... Au contraire, une ressource
est consommable si, aprs avoir t alloue une tche, elle n'est plus disponible pour les tches
restant excuter. C'est le cas pour l'argent, les matires premires... Une ressource peut n'tre
disponible qu' certaines priodes, qu'elle soit consommable ou non. On connat alors a priori sa
courbe de disponibilit.
Certaines contraintes lies la limitation des ressources ncessitent, pour leur formulation
l'introduction d'un choix sur un ensemble d'ingalits de potentiels. Ce choix reprsente la
rsolution d'un conflit pour l'utilisation des ressources renouvelables. L'ensemble des conflits peut
tre modlis par l'intermdiaire d'ensembles minimaux de tches non ralisables simultanment
compte tenu des ressources disponibles. Ces ensembles sont appels ensembles critiques de tches.
Pour rsoudre un tel conflit, il suffit d'ordonner deux tches quelconques de l'ensemble critique
correspondant.
Un cas particulier important est celui o le cardinal d'un ensemble critique est gal deux: on
parle alors de contraintes disjonctives (la paire [i,j] constituant l'ensemble critique est appele paire
de disjonction ). Pour rsoudre le conflit relatif cet ensemble critique, i et j doivent tre
ordonnes dans un sens ou dans l'autre. Ainsi lorsqu'on ne s'intresse qu' la rsolution de conflits
relatifs des ensembles critiques d'ordre deux, on parle de problme disjonctif (utilisation de
robots, de machines-outils...). Dans le cas gnral, c'est--dire en prsence d'ensembles critiques
d'ordre suprieur deux et lorsqu'on s'intresse la rsolution de tous les conflits, on parlera de
problme cumulatif. Par exemple si on dispose de trois maons et que l'on dsire effectuer trois
tches de maonneries ncessitant respectivement deux, un et un maon(s), l'une de ces trois
tches devra ncessairement tre programme avant ou aprs les deux autres.
Dans un problme d'ordonnancement rptitif (encore appel cyclique ), l'ensemble I e
constitu de tches gnriques . La tche gnrique i donne naissance une infinit d'instances.
Il faut alors ordonnancer toutes les instances de l'ensemble des tches gnriques. Ce type de
problme se rencontre pour des productions en srie dans l'industrie mais aussi dans le cas de
calculs rptitifs en informatique, en particulier dans les architectures pipe-line.
Les facteurs les plus importants dans l'valuation d'une solution d'un problme d'ordonnancement
sont l'utilisation efficace des ressources, le dlai global, la minimisation des encours et le respect
des dates chues. Les variables intervenant le plus souvent dans l'expression de la fonction
conomique sont : la date C
i
de fin d'excution de la tche i, le retard T
i
= max (0, C
i
-d
i
) de la
tche i, l'indicateur de retard U
i
(U
i
=0 si C
i
s

d
i
, U
i
=1 sinon). Les critres usuels sont la dure
totale C
max
=Max C
i
, le plus grand retard T
max
= Max T
i
, le retard moyen pondr _w
i
T
i
, ou
les stocks d'encours _w
i
C
i
. Pour un problme d'ordonnancement rptitif, le critre usuel est la
maximisation du dbit, c'est--dire du nombre moyen d'itrations par unit de temps. On peut
remarquer que tous les critres proposs sont des fonctions dcroissantes des variables C
i
: ils sont
appels rguliers .
Le tableau suivant qui propose une typologie des problmes d'ordonnancement en montre
l'extrme diversit:
___________________________________________________________
_
CARACTERISTIQUES CHOIX POSSIBLES (non exclusifs)
___________________________________________________________________
__ Quantit de moyens illimite limite limite
(nature) (renouvelables) (consommables)
___________________________________________________________________
__
Organisation une m machines machines en srie gammes
non
des moyens machine en parallle "flow-shop" "job-shop" linaires
___________________________________________________________________
__
Contraintes de premption chevauchement temps de encours ...
fabrication autorise transit limits
___________________________________________________________________
__
Types de unitaire atelier masse continue
fabrication (petite srie) (grande srie)
___________________________________________________________________
__
Rptition cyclique la commande
des travaux ou rptitif ou non rptitif
___________________________________________________________________
__
Hypothses sur statique dynamique
la demande (connue a priori) (arrive continue en temps rel)
___________________________________________________________________
__
Critres principaux minimisation minimisation minimisation
d'apprciation du cycle des encours des retards
des solutions de fabrication
___________________________________________________________________
__
tableau 1 : typologie des problmes d'ordonnancement.
1.2. MODELISATION PAR RESEAUX DE PETRI
Jusqu' l'introduction rcente des rseaux de Petri temporiss , on ne pouvait pas modliser avec
un seul formalisme les contraintes potentielles et les contraintes de ressources. Les rseaux de
Petri temporiss sont un excellent outil de simulation et permettent d'obtenir des rsultats
analytiques dans le cas des ordonnancements rptitifs.
Rappelons que les rseaux de Petri ordinaires sont utiliss pour modliser le comportement
dynamique de systmes discrets. Ils permettent d'exprimer sur un mme graphe les vnements
gnrateurs des changements d'tat, les conditions ncessaires ces changements d'tat et les
rgles de calcul d'un nouvel tat si l'vnement correspondant se produit. Ils sont composs de
deux types d'objets: les places et les transitions. Les places sont associes aux variables d'tat du
systme; les transitions reprsentent les vnements susceptibles de modifier l'tat du systme.
Lorsqu'un rseau de Petri modlise un problme d'ordonnancement, les places sont associes aux
diffrents types de ressources utilises par les tches et aux contraintes de succession entre tches ;
les transitions seront associes aux tches ; les vnements (franchissement des transitions)
correspondent l'excution des tches.
L'excution d'une tche n'est possible que si elle dispose des ressources ncessaires et si le
tches qui la prcdent sont termines ; ces prconditions l'excution d'une tche se traduiront
par l'existence d'arcs valus par des entiers liant certaines places la transition considre.
Lorsqu'une tche a termin son excution, certaines tches peuvent commencer leur excution,
certaines ressources peuvent tre restitues, d'autres ont pu tre consommes, d'autres encore ont
pu tre produites. Ces post-conditions de terminaison d'une tche se traduiront nouveau par des
arcs valus liant la transition considre un sous-ensemble de places.
Un rseau de Petri ordinaire ne peut traduire la dure d'une tche ; il ne permet pas de reprsenter
la mobilisation d'une ressource durant l'excution d'une tche car l'tat de cette ressource n'est pas
le mme avant, pendant et aprs l'excution de cette tche.
Le modle de base doit donc tre enrichi en introduisant le temps pour tenir compte des dures
d'excution des tches [CHRE 83]. Le franchissement d'une transition est alors compos de deux
actions instantanes dcales d'une priode de temps gale la dure de la tche : le dbut de
franchissement ralise l'allocation des ressources, la fin de franchissement opre la restitution
(ventuelle) des ressources requises par la tche.
Nous prsentons titre d'exemple deux problmes d'ordonnancement modliss par des rseaux
de Petri temporiss.
Exemple 1:
Un ensemble de n tches soumises des contraintes de prcdence doivent tre excutes par une
machine M. La tche i peut, soit consommer la somme d'argent c
i
, soit rapporter cette mme
somme. Il s'agit alors de trouver un squencement des tches sur le processeur qui puisse tre
financ partir d'un capital initial C. Un extrait du rseau de Petri temporis associ est rapport
sur la figure 1.
i j
c
i
c
j
M
C
...... ......
la tche i rapporte c
i
la tche j consomme c
j
la tche i prcde la tche j
Un extrait du rseau de Petri temporis
associ un problme d'ordonnancement.
figure 1
Exemple 2:
On considre l'ensemble des tches {a,b,c,d,e,f,g,h,i,j} dont les dures et les demandes en
ressources de type R
1

et R
2
sont indiques dans le tableau ci-dessous:
tche a b c d e f g h i j
dure 10 4 2 8 6 5 9 2 7 4
R1 3 3 1 1 1 2 3 2 1 2
R2 0 0 0 1 1 1 0 1 0 0
On dispose de 5 units de la ressource R
1
et d'une unit de R
2
. La tche b n'est pas disponible
avant la date 2 et les contraintes de succession simple entre les tches sont les suivantes : a < d,b <
d, b <e, c < f, d < g, e < g,e < h, f < h, f < j, g < i, h < i.
a,10
D,2
c,2
d,8
b,4
f,5
g,9
h,2
j,4
i,7 e,6
2
2
R2
R1
1
1
figure 2
La figure 2 reprsente le rseau de Petri modlisant ce problme d'ordonnancement ave
ressources; seuls sont rapports : les transitions associes aux tches, les places associes aux
containtes de prcdence, les places associes aux ressources R1 et R2, les arcs associs aux
contraintes de prcdence et ceux associs la rquisition des ressources R1 et R2 par la tche f.
La tche D est une tche fictive permettant de modliser la date de disponibilit de la tche b.
1.3. TECHNOLOGIE DE GROUPE et ORDONNANCEMENT
Une manire de simplifier les problmes d'ordonnancement consiste effectuer d
regroupements de machines et/ou des regroupements de produits.
Les regroupements de produits en familles de produits sont surtout utiliss pour simplifier les
problmes de planification et les problmes d'affectation de charges aux diffrentes machines de
l'atelier. Ils interviennent plutt, dans une gestion de production hirarchise, moyen terme, c'est-
-dire un niveau suprieur par rapport l'ordonnancement dtaill trs court terme qui fait
l'objet de cet article.
Les regroupements des machines sont utiliss moyen terme, mais aussi comme outils de
simplification des ordonnancements dtaills trs court terme.
Pour le regroupement des machines d'un atelier, on distingue en gnral les regroupements par
fonctions (sous-ateliers de prparation, d'usinage, de tournage, de finition,) et les regroupements
lis aux familles de produits.
Dans le regroupement par fonctions, les flux de produits entre les sous-ateliers sont importants.
Dans le deuxime type de regroupement, on cherche constituer des lots de fabrication tels
qu'une famille de produits donne est presque entirement fabrique dans un lot et ne fait appel
qu'exceptionnellement des machines d'autres lots. Ce dcoupage est trs utilis dans la
conception des ateliers flexibles (par exemple [ KUSI 85a, 85b]). Eventuellement, il est possible
de ddoubler certaines machines pour qu'elles soient prsentes dans plusieurs lots de manire
rduire les interconnexions entre les lots.
Cette deuxime catgorie de dcoupage d'un atelier en lots de fabrication, dcoupage physique
ou seulement virtuel, peut tre utilise comme un outil de simplification des algorithmes
d'ordonnancement.
Ces mthodes d'ordonnancement par dcomposition spatiale de l'atelier posent les problmes
suivants: tout d'abord, comment dcomposer l'atelier en lots de fabrication, puis comment,
partir de ces lots, dcomposer le problme d'ordonnancement initial en sous-problmes et, enfin,
comment construire un algorithme qui gre les liens rsiduels entre les lots. Un exemple plus
complet sur un problme de job-shop est prsent au paragraphe 4.1.2.2.
2. PROBLEMES CENTRAUX et METHODES SERIELLES
Le but de cette deuxime partie est de prsenter les outils de base que l'on doit parfaitemen
connatre avant de chercher rsoudre un problme d'ordonnancement. La mthode potentiels-
tches est videmment fondamentale. Nous la rappelons brivement. Nous dcrivons galement
deux de ses extensions : la mthode du dcalage qui permet de grer des ressources consommables
et la mthode du circuit critique qui donne une solution optimale du problme central rptitif.
Nous terminons en rappelant le principe des mthodes srielles qui est la base de trs
nombreuses heuristiques.
2.1. LE PROBLEME CENTRAL CLASSIQUE
Dans le problme central de l'ordonnancement, il s'agit d'ordonnancer, en une dure minimale
des tches soumises des contraintes de succession et de localisation temporelle. Ces contraintes
sont rsumes par un graphe potentiels -tches G=(X,U) o X est l'ensemble des tches complt
par une tche fictive dbut note 0 et une tche fictive fin note *, et U est form des arcs associs
aux contraintes potentielles, l'arc (i,j) valu par a
ij
correspondant la contrainte potentielle t
j
-
t
i
~a
ij
. Un ordonnancement est un ensemble T={t
i
/

i X} de dates de dbut des tches telles que
la date de dbut de la tche fictive 0 soit zro et que, pour tout arc (i,j), t
j
-t
i
~ a
ij
. Un tel
ordonnancement existe si et seulement si G ne contient pas de circuit de valeur strictement
positive.
Dans ce cas, en notant l(i,j) la valeur maximale d'un chemin de G allant de i j, E={e
i
=l(0,i) /
iX} et F={f
i
=(l(0,n+1)-l(i,n+1)) / i X} sont des ordonnancements optimaux dont la dure
minimale l(0,n+1) est la valeur d'un chemin critique. E est l'ordonnancement au plus tt et F
l'ordonnancement au plus tard . La figure 3 rapporte les ordonnancements au plus tt et au plus
tard d'un tel problme.
0/12
1
6 2
8/20
4
24/24
9
15/15
8
8
3
3 3
3
5
3/21
0/15
2
0/0
0
0
0
4
4
4/4
5
5
6
9/9
9/16
9
7
Un nonc du problme central classique:
tches 1,2,3,4,5,6,7,8,9
succession simple: (1,5),(2,5),(2,3),(4,6),(4,9),(5,7),(6,8)
date de disponibilit de la tche 4: 4
6
6/18
*
( ct de chaque tche figure le couple r/f o r est la date au plus tt de la tche et f sa date au
plus tard)
figure 3 : le graphe potentiel associ.
La notion d'ordonnancement au plus tard se gnralise aux ordonnancements de dur
A=l(0,n+1)+o (o~0). Si le graphe G ne contient pas d'arc (i,0) (i X), qui correspondrait une date
chue de la tche i, l'ordonnancement au plus tard F(o) est donn par les formules: f
i
(o)=f
i
+ o,
pour tout i dans X-{0}, et f
0
(o)=0. Il est donc obtenu en dcalant les tches de o.
2.2. LE PROBLEME CENTRAL A RESSOURCES CONSOMMABLES
Des tches lies par des contraintes potentielles doivent tre ordonnances en une dur
minimale. Chaque tche i consomme son dbut a
i
units d'une ressource consommable.
Initialement, la date u
1
=0, b
1
units de cette ressource sont disponibles. Des quantits
additionnelles b
2
,..,b
q
deviennent disponibles aux dates u
2
,...,u
q
. Ce modle reprsente, par
exemple, le financement d'une ralisation.
Un ordonnancement doit donc satisfaire, outre les contraintes de potentiel, la condition associe
la consommation de la ressource que l'on peut rsumer ainsi: la courbe de la demande doit tre
situe en dessous de celle de l'offre. Cette dernire contrainte impose de consommer la ressource
le plus tard possible. On peut donc limiter la recherche d'un ordonnancement optimal aux
ordonnancements aux plus tard F(o). En l'absence de dates chues, on a f
i
(o)=f
i
+o. Il suffit alors
d'appliquer
l'algorithme suivant:
dbut
Calculer l'ordonnancement F.
Dcaler la courbe de la demande D(t) de F de la valeur minimale o* pour qu'elle soit sous la
courbe de l'offre S(t).
Ecrire "F( o *) est un ordonnancement optimal".
fin
Voici un exemple:
0
1
7
4
6
5
9
3
8
2
0
0
i
1
2 3 4
a
i
7 7 7 7
k
1
2 3
u
k
0 5 1 0
b
k
1 0 1 0 1 0
8
figure 4 : un nonc du problme central ressources consommables.
S( t )
D(t )
D(t )
S( t )
3 0
2 8
2 1
2 0
1 4
1 0
7
4
5
8 1 0 1 1
o *
figure 5: courbes de la demande et de l'offre.
La figure 4 rapporte les contraintes potentielles liant les quatre tches 1, 2, 3 et 4 ainsi que
l'chancier. L' algorithme du dcalage calcule l'ordonnancement au plus tard F: f
0
=0, f
1
=4, f
2
=0,
f
3
=8, f
4
=11, f
5
=17. Puis, il dtermine la quantit minimale dont il faut dcaler la courbe de la
demande pour qu'elle soit sous la courbe de l'offre ( figure 5 ). Ici o*=2. Un ordonnancement
optimal est donc: t
0
=0, t
1
=6, t
2
=2, t
3
=10, t
4
=13, t
5
=19.
La mthode que nous venons de proposer se gnralise pour prendre en compte des dates chues
ou d'autres formes de consommation de la ressource [CARL 82a] [CARL 89c].
2.3. LE PROBLEME CENTRAL REPETITIF
On se donne ici un ensemble fini I={1,2,,n} de tches gnriques . La tche gnrique i induit
une infinit d'instances (i,k),k N, toutes de dure p
i
. On appelle k
ime
itration l'ensemble
{(i,k) / iI}. Un ensemble fini de contraintes de prcdence gnriques lie les tches gnriques.
Une telle contrainte est spcifie par un triplet (i,j,h) o i et j sont deux tches gnriques et h est
un entier naturel appel hauteur . Elle signifie que , pour tout entier n, l'instance (j,h+n) ne peut
commencer son excution qu'aprs la fin d'excution de l'instance (i,n). On suppose de plus que les
intervalles d'excutions des instances d'une mme tche gnrique sont disjoints, c'est--dire que,
pour toute tche gnrique i, la contrainte de prcdence gnrique (i,i,1) existe. Remarquons que
si la hauteur d'une contrainte gnrique est nulle, elle induit des contraintes de succession entre
instances d'une mme itration (contraintes dites internes), sinon elle induit des contraintes de
succession entre instances d'itrations distinctes (contraintes dites externes). Le critre
d'optimisation est la maximisation du dbit, c'est--dire de la frquence d'excution des itrations.
La rsolution de ce problme [CHRE 85] est fonde sur l'tude des chemins de valeur maximale
d'un graphe (en fait un multigraphe) appel graphe de prcdence gnralis dont les arcs sont
tiquets par une valeur et une hauteur . Nous prsentons ci-dessous les rsultats concernant le
cas particulier d'un graphe fortement connexe. Les sommets du graphe sont associs aux tches
gnriques. Chaque contrainte de prcdence gnrique (i,j,h) donne lieu un arc d'origine i,
d'extrmit j , de valeur p
i
et de hauteur h. La figure 6 rapporte le graphe bi-valu associ un
nonc du problme central rptitif.
1
4
2 3
(1,0)
(1,1) (1,1)
(1,1)
(1,1)
(1,1)
(1,1)
(1,1)
(1,0)
(1,0)
Donnes du problme central rptitif:
tches gnriques: 1,2,3,4;
contraintes de prcdence gnriques:
(i,i,1) pour i=1,2,3,4
(1,4,0),(2,3,0),(2,1,1),(3,1,0)
(4,3,1),(4,2,1)
dures unitaires
Le circuit critique est le circuit
(2,3,1,4,2), de valeur 4 et de
hauteur 1
la priode de l'ordonnancement
au plus tt est donc r=4,
le facteur de priodicit est K=1.
figure 6 : graphe bivalu associ au problme central rptitif.
Le rsultat fondamental concerne le comportement asymptotique de la suite a
n
(i,j) des valeurs
maximales des chemins de hauteur n de i j dans le graphe doublement valu. Cette suite est K-
priodique , c'est--dire qu'il existe un entier K appel facteur de priodicit et un rel r appel
priode tels qu' partir d'un certain rang N appel dure du rgime transitoire , a
n+K
(i,j)=a
n
(i,j)+r
. Si l'on appelle circuit critique d'un graphe bivalu un circuit dont le rapport valeur sur hauteur
est maximal, la priode r est gale la valeur du circuit critique. On montre que le facteur de
priodicit est le plus petit commun multiple des hauteurs de tous les circuits critiques.
La rsolution du problme central rptitif consiste alors en l'tude de son graphe bi-valu
associ. En effet, la date au plus tt de l'instance (i,p) tant gale a
p
(0,i), l'existence , le calcul et
les proprits de l'ordonnancement au plus tt (en particulier sa K-priodicit) sont induites par les
rsultats gnraux prcdents. La figure 6 rapporte les valeurs de r et K pour l'ordonnancement au
plus tt d'un nonc du problme central rptitif [CHRE 85].
Une extension du problme central rptitif considrant le cas o toutes les instances de tches
sont soumises des deadlines a t tudie dans [CHRE 91]. On y donne les conditions
d'existence d'un ordonnancement au plus tard et l'on calcule cet ordonnancement dans le cas
particulier important o les deadlines sont les dates au plus tt de production des units.
2.4. LES METHODES SERIELLES
La mthode potentiels-tches permet de dterminer la dure minimale d'un ordonnancement en
prsence de contraintes potentielles, mais elle ne prend pas en compte les contraintes de ressource.
Les mthodes srielles ou algorithmes de liste sont fondes sur un ordre de priorit entre tches.
Elles permettent de construire trs rapidement une solution approche en prsence de ressources
renouvelables. Les tches sont ordonnances partir de la date 0 en incrmentant le temps. A la
date t, on affecte parmi les tches disponibles, c'est--dire celles dont tous les prdcesseurs sont
achevs et qui utilisent moins de ressources que les quantits disponibles la date t, la tche de
plus grande priorit. Pour illustrer une telle mthode, considrons un exemple de neuf tches et
deux types de ressource (une machine et cinq units de main d'oeuvre) dont les donnes sont
rsumes dans le tableau ci-dessous.
_______________________________________________________________________________
_
tche 1 2 3 4 5 6 7 8 9
dure voir figure 3
prdcesseur voir figure 3
moyen 1 1 2 4 1 1 2 1 2
machine 1 1 1 1
_______________________________________________________________________________
_
la tche 4 est disponible la date t=4
tableau 2 : donnes d'un problme d'ordonnancement avec ressources.
Nous reprenons le graphe potentiels-tches de la figure 3 ainsi que les dates au plus tt et au plus
tard correspondantes . Les ressources ncessaires sont donnes dans le tableau 2 .
La figure 7 rapporte la solution construite par la mthode srielle lorsqu'on donne priorit la
tche de plus petite date au plus tard.
0 3 6 9 11 17 19 28 30 34
1 4
9
2 3 6
8
5 7
temps
figure 7 : la solution construite.
L'avantage des mthodes srielles est de construire gnralement de bonnes solutions car on
utilise localement les ressources le mieux possible. Son inconvnient est d'carter frquemment la
solution optimale car il est souvent prfrable de laisser libre une ressource pour attendre une
tche urgente. Il en est ainsi dans l'exemple de la figure 7 o il est prfrable de ne pas affecter la
tche 3 la date t=3 afin d'attendre la tche 4 qui est trs prioritaire mais n'est disponible qu' la
date t=4.
La figure 8 rapporte une solution de dure 28, cette solution est optimale car la machine travaille
sans interruption entre les dates 4 et 28.
1
6
7
2
4
9
5
8
temps
3
0 3 4 6 9 15 17 19 23 28
figure 8 : la solution optimale.
3. PROBLEMES A RESSOURCE UNIQUE
Le but de cette partie est de prsenter quelques rsultats de base sur les problmes une et m
machines. Ces problmes peuvent sembler trs spcifiques. Pourtant leur rsolution est la base
de problmes plus gnraux, en particulier, quand il apparat qu'une ressource est dominante. Nous
nous limitons essentiellement deux critres : la dure totale et la somme des retards. La dure
totale est le critre le plus tudi dans la mesure o d'autres critres s'y ramnent. Nous rappelons
la rgle de JACKSON et dcrivons les proprits du problme une machine sur lesquelles sera
fonde la rsolution du job-shop prsente dans la quatrime partie. La minimisation de la somme
des retards nous amne prsenter les mthodes de dcomposition et d'optimisation locale qui
permettent de diminuer le cot des calculs tout en fournissant des solutions approches de bonne
qualit.
3.1. PROBLEMES A UNE MACHINE
3.1.1. RESULTATS SUR LE PROBLEME DE BASE :
Le problme de base consiste dterminer sur la machine un squencement optimal de n tches
disponibles l'instant 0 et de dures p
1
, , p
n
[BAKE 74]. Des algorithmes polynomiaux se
rduisant des tris permettent de rsoudre le problme de base pour les critres minimisation des
encours (l'encours de la tche i tant C
i
ou w
i
C
i
, si on attribue un poids w
i
la tche i) et
minimisation du plus grand retard. Dans le premier cas, on doit ordonner les tches dans le sens
des p
i
/w
i
croissants (rgle de SMITH) ; dans le second, dans le sens des d
i
croissants (rgle de
JACKSON). L'algorithme polynomial de HODGSON permet de minimiser le nombre de tches en
retard, il consiste placer les tches, une par une, dans l'ordre des dates chues croissantes, en
rejetant la tche dj place de plus grande dure la fin de l'ordonnancement si un retard
apparat. Le problme est NP-difficile pour la somme pondre des retards, y compris lorsque tous
les poids sont gaux [DU 90]. On trouve dans la littrature des travaux prsentant des mthodes
exactes (arborescentes [POTT 87] ou de programmation dynamique [SRIN 71]) ou des mthodes
approches rsolvant diffrents problmes une machine drivs du problme de base en ajoutant
des contraintes. En ce qui concerne le critre somme des retards lorsque les tches arrivent des
dates au plus tt diffrentes r
i
, les seules rfrences existantes traitent de la complexit du
problme, nous prsentons ici quelques rsultats rcemment obtenus pour ce problme.
3.1.2. MINIMISATION DE LA SOMME DES RETARDS :
La minimisation de la somme des retards d'un problme une machine dont les tches son
disponibles des instants distincts connus l'avance est un problme NP-difficile [RINN 76].
Dans le cas trs particulier o toutes les dures sont unitaires, la rgle de JACKSON fournit une
solution optimale [JACK 55]. Des algorithmes de rsolution pseudo-polynomiaux existent lorsque
tous les r
i
sont gaux (par exemple [SRIN 71]), mais pas dans le cas contraire.
Nous avons dtermin [CHU 89 et 90] une condition suffisante d'optimalit locale induisant une
nouvelle rgle d'ordonnancement note PRTT (pour Priority Rule for Total Tardiness), qui
gnralise la rgle de SMITH [SMIT 56] au cas o il existe des dates d'arrives diffrentes pour
les tches et permet de construire des mthodes approches ainsi qu'un nouveau sous-ensemble
d'ordonnancements actifs (un ordonnancement est actif si, pour avancer une tche quelconque, on
est oblig de reporter le dbut d'une autre) dominant pour le critre somme des retards: les T-
actifs. Nous prsentons succinctement ces diffrents rsultats.
Nous nous intressons ici deux tches conscutives i et j dans un ordonnancement donn e
nous cherchons quelle condition placer i avant j minimise la somme des retards de ces deux
tches, sachant que la machine est disponible l'instant A. Ce problme est illustr par la figure
suivante. En notant T
i,j
(A) (respectivement T
j,i
(A)) la somme des retards des tches i et j et en
plaant, au plus tt partir de l'instant A, i avant j (resp. j avant i), on cherche quelle condition
l'on a T
i , j
(A) s T
j , i
(A). On a dmontr qu'il
suffisait d'avoir PRTT(i,A)sPRTT(j,A) o PRTT est une fonction de priorit dfinie par la
formule: PRTT(i,A)= max(A,r
i
)+max[max(A,r
i
)+p
i
, d
i
].
On dfinit un ordonnancement T-actif en considrant les ordonnancements actifs tels que si i et
j sont deux tches conscutives avec j qui suit i, alors, soit i est arrive strictement avant j (r
i
<r
j
),
soit i est plus prioritaire que j selon la rgle PRTT applique l'instant o la machine est
disponible avant l'excution de i.
A=11
i j
i j
r =10
r =12
d =15.5 d =17
i j
j i
T (A)=1
i,j
T (A)=1.5
j,i
PRTT(i,A)=max(11,12)+max(max(11,12)+2.4,15.5)=27.5
PRTT(j,A)=max(11,10)+max(max(11,10)+3.6,17)=28
p =3
i
p
j
=4
Figure 9 : Ordonnancement partiel de deux tches
Le sous-ensemble des ordonnancements T-actifs est dominant pour le critre "somme des
retards". En utilisant PRTT, non plus comme une condition suffisante d'optimalit locale de deux
tches, mais comme une rgle de priorit locale entre les tches, on peut construire de nombreux
algorithmes approchs : par exemple, en intgrant PRTT comme premire rgle de choix dans un
gnrateur d'ordonnancements actifs ou sans dlai (la machine n'est jamais laisse inoccupe pour
attendre une tche plus prioritaire si une autre tche est disponible), ou encore en construisant des
algorithmes itratifs de construction d'ordonnancements T-actifs avec phase d'insertion : en dbut
d'itration, on place toujours une des tches non encore places pour lesquelles PRTT est
minimale, puis on insre des tches devant de manire combler le mieux possible et avec les
tches les plus prioritaires possibles l'intervalle de disponibilit existant ventuellement devant la
tche place en dbut d'itration.Des expriences montrent qu'en moyenne, les algorithmes
approchs utilisant PRTT sont meilleurs que les algorithmes approchs utilisant des notions de
marge, la diffrence tant importante lorsque les carts-type des lois des dates d'arrive sont
grands.
3.1.3. MINIMISATION DE LA DUREE TOTALE :
On s'intresse maintenant l'ordonnancement d'un ensemble I de tches indpendantes sur une
machine unique dans le but de minimiser la dure totale. Chaque tche est caractrise par sa date
de disponibilit r
i
, sa dure p
i
et sa dure de latence q
i
( dure sparant la fin d'excution de la
tche i et la fin de l'ordonnancement).
Soit K un sous-ensemble de tches de I et h(K) la quantit dfinie par : h(K) = Min r
i
+_ p
i
+ Min
q
i
.
i K i K i K
Max h(K) est une valuation par dfaut de la dure optimale du problme.
K I
L'ordonnancement de JACKSON se construit par application de l'algorithme de liste associ la
rgle de priorit MWR (Most Work Remaining, ou q
i
maximal). Son principal dfaut, comme tout
algorithme de liste, est qu'il n'intgre pas la possibilit de diffrer l'ordonnancement d'une tche de
manire favoriser le passage d'une tche plus prioritaire. Nanmoins, il possde les proprits
suivantes dmontres dans [CARL 82c]:
Si f
o
est la dure de l'ordonnancement de JACKSON, et f* la dure minimale d'u
ordonnancement, alors il existe un sous-ensemble J I tel que: soit h(J)=f
o
(auquel cas
l'ordonnancement de JACKSON est optimal), soit h(J)+p
c
>f
o
pour une opration c de I-J (J et c
sont appels respectivement ensemble et tche critiques). De plus on a : f*-h(J) s p
c
-1.
BAKER et SU proposrent une relaxation de la contrainte de non premption pour le problme
une machine, obtenant ainsi une version premptive de l'algorithme de JACKSON : une tche peut
tre interrompue si une autre tche plus prioritaire devient disponible.
L'intrt de la solution premptive rside principalement dans le fait que sa dure est gale
V=Max h(K), donc minimale.
K I
CARLIER a propos dans [CARL 82c] une mthode arborescente pour le problme non
premptif base sur ces rsultats et dont le principe est le suivant. Partant de la solution de
JACKSON relative au problme une machine, il dtermine l'ensemble et le couple critiques
associs. Si cette solution n'est pas optimale, il cre, conformment au rsultat ci-dessus, deux
sous-problmes, le premier dans lequel la tche c est ordonnance avant toutes les tches de
l'ensemble critique J, le second dans lequel la tche c passe aprs toutes ces tches. Ces deux sous-
ensembles de solutions sont alors valus en calculant la solution de JACKSON premptive.
Nous allons maintenant introduire pour ce problme la notion d'arbitrage trivial. Cette notion
est trs utile pour rsoudre des problmes disjonctifs. Nous l'utilisons de manire intensive pour le
job-shop. Elle permet d'obtenir une limitation efficace des arbres de recherche associs des
techniques d'numration implicite. Nous nous intressons ici au positionnement d'une tche c I
par rapport un sous-ensemble de tches J I-{c}. Considrons les conditions (C1) (C2) (C3)
suivantes :
(C1) r
c
+p
c
+ _ p
j
+ Min q
j
> f ;
j J j J
(C2) Min r
j
+ _ p
j
+p
c
+q
c
> f ;
j J j J
(C3) Min r
j
+ _ p
j
+ Min q
j
+ p
c
> f .
j J j J j J
Si nous appelons solution tout ordonnancement de dure infrieure ou gale f, nous avons les
rsultats suivants :
- si (C3) est vrifie, alors, dans toute solution, la tche c est excute, soit avant ,soit aprs
toutes les tches de J.
- si (C1) et (C3) sont vrifies, alors dans toute solution, la tche c est excute aprs toutes
les tches de J. Nous aurons un arbitrage trivial de type primal .
- si (C2) et (C3) sont vrifies, alors dans toute solution, la tche c est excute avant toutes
les tches de J. Nous aurons un arbitrage trivial de type dual .
On constate aisment que l'ensemble des rsultats pour les arbitrages triviaux de type dual se
dduisent de ceux pour le type primal du fait du rle symtrique jou par les dates de disponibilit
et les dures de latence.
Si (C1) et (C3) sont vrifies, alors dans toute solution : t
c
-t
o
~ Max ( Min r
i
+ _ p
i
) = b
Jc
.
J'J i J' i J'
Si b
Jc
est strictement plus grand que r
c
, nous pouvons augmenter r
c
en posant r
c
= b
Jc
.
Dans la recherche des arbitrages triviaux relatifs une machine, il est possible de se limiter aux
arbitrages dits efficaces, c'est--dire gnrant, soit au moins un arc disjonctif dans le graphe
conjonctif courant, soit une minoration de r
c
. Ce problme peut alors se reformuler de la manire
suivante :
Une tche c I tant fixe, rechercher un arbitrage trivial (c,J) (s'il existe) conduisant la plus
grande augmentation de r
c
.
Nous avons montr dans [PINS 88] que la dtermination de J peut se faire de manire implicite en
recherchant seulement un sur-ensemble J d'un ensemble J* de tches maximisant b
Jc
. Un
algorithme permet galement la dtermination de tous les arbitrages triviaux efficaces d'une clique
et est gnralis au job-shop par construction parallle des ordonnancements premptifs associs
chacune des machines, intgrant la dtection des arbitrages triviaux.
3.2. MACHINES A EXEMPLAIRES MULTIPLES
3.2.1. PROBLEMES CLASSIQUES A m MACHINES :
On suppose ici que chaque tche requiert une machine et que l'on dispose de m exemplaire
identiques de cette machine. On considre dans toute cette section le critre de minimisation de la
dure totale. Dans le cadre de l'informatique on peut ainsi modliser les m processeurs d'une
machine parallle. Ces problmes sont presque toujours NP-difficiles. Seuls les cas particuliers de
dures unitaires et deux machines [COFF 76] ou de dure unitaire et arbre de prcdence [HU
XX] donnent lieu des algorithmes de listes optimaux.
Les tudes thoriques ont surtout port sur la recherche d'algorithmes approchs avec garantie de
performance. Dans le cas de tches indpendantes , GRAHAM a montr que la liste des tches
ordonnes par dures dcroissantes impliquait une erreur relative majore par 1/3-1/3m. D'autres
bornes, en gnral trs difficiles prouver mathmatiquement, ont t obtenues pour d'autres
listes, souvent en liaison avec des tudes sur le problme de bin-packing [COFF 76].
Dans le cas de tches premptives, les problmes sont plus simples. L'algorithme le plus connu
concerne des tches indpendantes et fournit un ordonnancement de dure minimale gale
B=Max{Maxp
i
,_p
i
/m} avec au plus m-1 premptions pour une complexit O(n) ( algorithme de
Mc NAUGHTON): on place les tches progressivement sur chaque machine dans l'intervalle de
temps [0,B].
Si la tche i doit tre excute dans l'intervalle [r
i
,d
i
], on rsoud polynomialement le problme en
le modlisant par une recherche de flot maximal dans un rseau de transport biparti. Un arc de
capacit unit lie la tche i chacune des units de temps de l'intervalle [r
i
,d
i
], le flux entrant dans
la tche i doit tre gal p
i
et le flux sortant d'une unit de temps doit tre infrieur m. Lorsque
les tches sont indpendantes et que leur dure dpend de la machine qui leur est alloue (p
ik
est
la dure de la tche i sur la machine k), le problme est rsolu en dterminant d'abord la solution
optimale d'un programme linaire qui fournit les dures globales de passage de chaque tche sur
les machines, puis en calculant le dcoupage en morceaux et l'ordonnancement par un algorithme
itratif fond sur un calcul de flot canalis chaque itration [SLOW 79].
De nombreuses approches heuristiques ont t envisages avec divers critres pour le problme
non premptif, dont celles de PARKER & al.,[PARK 77], de DOGRAMACI & SURKIS, [DOGR
79], ou de SUMICHRAST & BAKER, [SUMI 87], par exemple, que nous citons pour leurs
potentialits de gnralisation.
3.2.2. PROBLEMES D'ORDONNANCEMENT DISTRIBUES :
Dans un problme d'ordonnancement distribu, une contrainte de succession est associe un
transfert entre les machines qui excutent les deux tches. Dans les applications informatiques par
exemple, il peut s'agir d'un transfert de donnes entre les deux tches. La dure de ce transfert
dpend des deux tches mais aussi de la "distance" entre les deux machines. Ces problmes sont
bien sr plus difficiles que les problmes d'ordonnancement classiques machines exemplaires
multiples puisqu'ils les contiennent comme cas particuliers.
Les recherches thoriques ont d'abord port sur le problme que l'on peut qualifier de "problme
central distribu" o le nombre de processeurs n'est pas limit et les distances entre les machines
sont gales. Si la tche i est un prdcesseur immdiat de la tche j,

le temps du tranfert de la tche
i la tche j est nul si ces deux tches sont excutes sur la mme machine, sinon il est strictement
positif et on le note c
ij
.Nous nous limiterons dans la suite du paragraphe ce problme et
certains de ses cas particuliers .
Un paramtre important des problmes d'ordonnancement distribus est la possibilit ou non de
dupliquer les tches de manire raliser un plus grand nombre de transferts sur une mme
machine et de s'affranchir ainsi le plus possible des dlais de communication. Dans les problmes
issus de la production, cette hypothse n'est pas raliste. Par contre dans les applications
informatiques o les tches reprsentent des programmes excuter sur un rseau de processeurs,
elle peut tre tout fait pertinente dans la mesure o on ne surcharge pas trop les processeurs. La
figure 10 montre sur un exemple le gain qui peut rsulter de l'hypothse de duplication.
1
2
3
1
4
3
3
2
1 2
3
P1
P2
Ordonnancement optimal sans duplication
1 2
1 3
P1
P2
Ordonnancement optimal avec duplication
0 1 4 5
0 1 3 5 6
figure 10
Considrons d'abord le cas o la duplication est interdite. Le problme central distribu est NP-
difficile mme pour des graphes de prcdence dont la structure est assez simple [CHRE 88]. Par
contre si les temps de communication sont infrieurs aux temps d'excution des tches, le
problme est rsolu par un algorithme de complexit O(n
2
) fond sur la programmation
dynamique [CHRE 89] dans le cas d'une arborescence. Pour un graphe quelconque et des temps de
communication infrieurs aux temps d'excution, la complexit du problme demeure une
question ouverte.
Si la duplication est autorise, le problme central distribu est NP-difficile mme dans le
cas d'une anti-arborescence de profondeur deux [CHRE 90]. Par contre si les dures de transfert
sont infrieures aux temps d'excution des tches, le problme est rsolu par un algorithme de
complexit O(n
2
) [COLI 90] que nous prsentons schmatiquement maintenant et qui est illustr
par l'exemple des figures 11, 12, 13.
1
2
3
4
5
6
7
8
9
2
3
1
2
5
2
3
2
2
6
2
7
4
5
7
6
4
2
1
0
8
5
17
5
7 0
19
0
15
( ct de chaque tche figure sa dure d'excution et sa date au plus tt - encadre-)
( ct de chaque arc figure le temps de communication)
figure 11
1
2
3
4
5
6
7
8
9
figure 12
P1
P2
P3
P4
1 4
1 5 7
2
3 6
8 9
0 4 5 11 12 17
19 20
5 1 P0
7 8 15
21
figure 13
La premire phase de l'algorithme calcule, en balayant les sommets du graphe de prcdence
selon une liste topologique, une borne infrieure b
i
de la date de dbut d'excution de toute copie
de la tche i . Si P(i) dsigne l'ensemble des prdcesseurs immdiats de la tche i, les bornes b
i
sont calcules comme suit : soit une tche s de P(i) telle que b
s
+p
s
+c
si
soit maximal, alors b
i
est la
plus grande des deux valeurs b
s
+p
s
et Max{b
k
+p
k
+c
ki
/ k dans P(i)-{s}}. La figure 11 contient
ces bornes pour notre exemple.
La deuxime phase de l'algorithme construit le graphe critique des arcs de prcdence (i,j)
tels que b
i
+p
i
+c
ij
>b
j
. Il est clair alors que, s'il existe un ordonnancement pour lequel toutes les
copies dbutent leur excution leur borne infrieure, alors une copie de j et sa copie de i
"fournisseur " doivent tre sur la mme machine. Le graphe critique est une famille
d'arborescences. Pour notre exemple, il est donn sur la figure 12.
La troisime phase construit un ordonnancement au plus tt pour lequel chaque copie e
excute sa borne infrieure calcule lors de la premire phase. Cet ordonnancement utilise
autant de processeurs que de feuilles de l'arborescence et le nombre de copies d'une tche i est le
nombre de feuilles de la sous-arborescence de racine i. L'ordonnancement optimal de notre
exemple est reprsent sur la figure 13.
4. PROBLEMES A RESSOURCES MULTIPLES
Les problmes d'ordonnancement contraintes de ressources renouvelables sont souvent appels
problmes d'ateliers car on les rencontre ds qu'il faut grer la production. Toutefois il s'agit de
problmes trs gnraux car ils apparaissent dans d'autres contextes, en particulier en
informatique. Le but de cette partie est de prsenter la classification usuelle de ces problmes
(flow-shop, job-shop et open-shop) et surtout de dcrire les mthodes permettant de les traiter .
Nous dcrivons aussi dans cette partie les problmes d'ordonnancement contraintes cumulatives
et le problme du voyageur de commerce. Les problmes cumulatifs se posent dans les ateliers, en
particulier, quand la main d'oeuvre est en quantit limite. Le problme du voyageur de commerce
surgit ds qu'il y a des rglages d'outils dont les dures sont dpendantes des pices usiner.
4.1. PROBLEMES D'ATELIER
Dans le cas des problmes d'atelier , une tche est une opration, une ressource est une machine et
chaque opration ncessite pour sa ralisation une machine. Dans le modle de base de
l'ordonnancement d'atelier , l'atelier est constitu de m machines, n travaux (jobs), disponibles la
date 0, doivent tre raliss,un travail i est constitu de n
i
oprations, l'opration j du travail i est
note (i,j) avec (i, 1) < (i, 2) < ... < (i, n
i
) si le travail i possde une gamme ( A < B signifie A
prcde B). Une opration (i,j) utilise la machine m
i,j
pendant toute sa dure p
i,j
et ne peut tre
interrompue .
Une classification peut s'oprer selon l'ordre d'utilisation des machines pour fabriquer un produit
(gamme de fabrication ). On rencontre : des ateliers cheminement unique o toutes les gammes
sont identiques (flow-shop),des ateliers cheminements multiples o chaque produit ou famille de
produits possde (job-shop) ou ne possde pas (open-shop) une gamme spcifique.Les dates de
dbut des oprations (i,j) constituent les inconnues du problme et leur dtermination dfinit
l'ordonnancement. Les contraintes sont de type disjonctif ; le choix d'une squence sur une
machine rsoud donc les conflits d'utilisation de la machine.
Le modle de base peut tre tendu de diverses faons en prenant en compte, par exemple
l'existence de dates chues impratives (d
i
), l'interruption possible d'une opration (avec ou sans
mmoire du travail effectu), les temps de prparation, une disponibilit des machines variable
dans le temps, des ressources capacit non unitaire, l'utilisation de plusieurs ressources pour une
opration,... .
4.1.1. LE FLOW-SHOP
4.1.1.1. Le problme de base d'ordonnancement statique de type flow-shop
Nous rappelons que le problme de base du flow-shop est le cas particulier du problme de base
d'ordonnancement d'atelier pour lequel le cheminement est unique : les n travaux utilisent les m
machines dans l'ordre 1,2,...,m . Un ordonnancement de permutation est un ordonnancement qui
conserve le mme ordre des travaux sur toutes les machines. Dans certains cas, les plus simples, le
sous-ensemble des ordonnancements de permutation est dominant pour un critre donn: il
possde au moins un optimum relativement ce critre. Mais dans le cas m machines, ce n'est
pas vrai. Quoiqu'il en soit les tudes abordes ici - sauf spcification contraire - n'utilisent que des
ordonnancements de permutation. Dans le cas contraire, on utilise les techniques pour rsoudre le
problme de job-shop. Notons que cette contrainte ( interdiction de dpassements entre travaux)
peut tre naturelle.
Selon une notation classique, ce problme s'crit n/m/X,
1
,,
k
/o o n est le nombre d
travaux; m, le nombre de machines; X, la nature des gammes ( F pour un flow-shop);
1

k
sont
les contraintes additionnelles au problme de base dfini ci-dessus; o, le critre retenu (par
exemple, minimiser la longueur totale d'achvement ).
4.1.1.2. Rappel des travaux de S.M. JOHNSON
JOHNSON proposa, en 1954, un algorithme optimal pour le n/2/F/C
max
, [JOHN 54]. On y
applique, pas pas, la rgle suivante : "si J
i
et J
j
sont deux travaux de dures respectives (p
i1
,p
i2
)
et (p
j1
,p
j2
) sur les machines M1 et M2, et si min(p
i1
,p
j2
) s min(p
i2
,p
j1
) alors J
i
prcde J
j
".
Appelons J cet algorithme de rsolution du n/2/F/C
max
. On remarquera que cet algorithme tend
placer en tte de l'ordonnancement les travaux ayant des temps opratoires plus faibles sur la
premire machine et, en fin d'ordonnancement, ceux ayant des temps opratoires plus faibles sur la
seconde. Nous retiendrons aussi que J minimise la somme des temps morts, Dn(s), sur la seconde
machine ; si
r r-1
S=(1,2, ... ,n) est l'ordre retenu des travaux, alors : Dn(S) = Max ( _ p
i1
- _ p
i2
).
1srsn i=1 i=1
Une approche de type chemin critique (Mc MAHON 1971) conduit aussi au mme rsultat : on
pourra intervertir, dans S, les deux travaux i et i+1 sans augmenter C
max
si
Max(p
i+1 1
+ p
i1
+ p
i2
, p
i+1 1
+ p
i+1 2
+ p
i2
) s Max(p
i1
+ p
i+1 1
+ p
i+1 2
, p
i1
+ p
i2
+ p
i+1 2
).
En effet, si i prcde i+1 :
C
i+1 2
= Max(C
i-1 1
+ p
i1
+ p
i+1 1
+ p
i+1 2
, C
i-1 1
+ p
i1
+ p
i2
+ p
i+1 2
, C
i-1 2
+ p
i2
+ p
i+1 2
)
et si i+1 prcde i :
C
i2
= Max(C
i-1 1
+ p
i+1 1
+ p
i1
+ p
i2
, C
i-1 1
+ p
i+1 1
+ p
i+1 2
+ p
i2
, C
i-1 2
+ p
i+1 2
+ p
i2
).
En comparant ces deux dates, on tablit l'ingalit ci-dessus, quivalente la condition de
JOHNSON. Ce type d'approche est fondamental pour la comprhension de nombreux travaux de
recherche relatifs ce domaine.
Il proposa galement une rsolution du n/3/F/C
max
grce l'algorithme J': on applique J su
deux machines fictives dont les pseudo-temps d'excution sont respectivement p'
i1
=p
i1
+p
i2
et
p'
i2
=p
i2
+p
i3
, pour chaque travail i. La solution n'est optimale que si min {p
i1
} ou min {p
i3
} ~ Max
{p
i2
}.


i i i
Ultrieurement CAMPBELL, DUDEK & SMITH s'inspireront de cette faon de procder pour la
rsolution des problmes m machines.
4.1.1.3. Influence des ides de S.M. JOHNSON sur la rsolution des problmes
d'ordonnancement de type n/m/F, contraintes diverses/Cmax
Depuis, des propositions d'algorithmes pour rsoudre le problme de base m machine
paraissent rgulirement dans la littrature spcialise. Diverses variantes intressent aussi les
chercheurs; elles consistent en l'enrichissement des conditions d'application de J ou J' sur les
n/3/F.../C
max
, en la prise en compte par exemple d'une succession sans attente des oprations ou
des temps de transport inter-oprations ou des chevauchements d'oprations ou de l'existence de
temps de montage et de dmontage d'outils chaque opration (dpendant ou non de la succession
des travaux) ou de contraintes de prcdence entre les travaux ou de l'existence de machines
dominantes. D'autres critres furent aussi tudis comme par exemple le retard maximum.
Nous avons entrepris une prsentation des rsultats principaux o l'influence des ides de S.M
JOHNSON est manifeste. Cette tude est rsume dans le tableau 3. Les rfrences prcises des
travaux cits ici se trouvent dans [PROU 89a]. Ceci nous permet d'avancer quelques propositions
et rflexions pour la rsolution du problme d'ordonnancement statique sur m machines, de n
travaux gamme identique, avec temps de montage (S
ij
) et de dmontage (R
i j
) d'outils
indpendants de l'ordre (no sequence dependent) : le n/m/F,S
nsd
,R
nsd
/C
max
[PROU 87, 90].
Pour notre part, nous considrons que les algorithmes heuristiques de rsolution du n/m/F/C
max
relvent de quatre catgories :
- application de l'algorithme J ( justifie de faon optimale ou heuristique, par mise en vidence
d'un indicateur du type Dn(S) ou par extrapolation du comportement de J'),
- gnration d'un indicateur de profil de pente des temps opratoires (c'est une extrapolation du
comportement de J),
- association de ces deux premiers aspects,
- permutation de sous-ensembles de travaux (y compris couplage).
Cette dernire catgorie nous intresse moins ici. Il faut signaler toutefois qu'elle vient souvent en
complment l'une des trois premires.
Nous illustrons les trois premires catgories par quelques exemples:
SULE & HUANG, en 1983, prennent en compte la fois les temps de montage, les temp
opratoires et les temps de dmontage d'outils. Les temps de montage et de dmontage sont
indpendants de l' ordre. Leurs mthodes sont exactes pour deux machines (
n/2/F,S
nsd
,R
nsd
/C
max
) et approches pour trois machines.
Les auteurs dmontrent que :
u u-1 n
C
max
= C
n2
= Max [ _ (S
i1
- S
i2
+ p
i1
)- _ (p
i2
+ R
i2
- R
i1
)] + _ (S
i2
+ p
i2
+ R
i2
).
1susn i=1 i=1 i=1
Ceci ressemble fortement, une constante prs, l'expression Dn(S) tudie dans l
dmonstration d'optimalit de J. La consquence est immdiate : il suffit d'appliquer J deux
machines fictives bien particulires dont les pseudo-temps d'excution seront respectivement
p'
i1
=S
i1
-S
i2
+p
i1
et p'
i2
=p
i2
+R
i2
-R
i1
, pour chaque travail i.
SZWARC, en 1983, dveloppa une heuristique en suivant une voie similaire pour l'tude de
problmes o : C
i k
= Max ( C
i k-1
+ a
i k
, C
i-1 k
) + p
ik
, c'est dire les n/m/F, dcalage
temporel/C
max
(a
ik
est un dlai minimal respecter entre la fin de l'opration k-1 et le dbut de
l'opration k, pour un travail i).
PAGE, en 1961, fournit une analogie entre J et la gnration d'un indicateur de profil de pente
grce au calcul de f(i)= A

/ min (p
i 1
, p
i 2
) , Vi, o A=1 si p
i 2
s p
i1
et A=-1 sinon, et une autre
analogie pour J' avec f(i)= A / min (p
ij
+p
i , j +1
) , Vi, o A=1 si p
i3
s p
i1
et A=-1 sinon; puis il classe
les travaux par f(i) croissant.
1sjs2
En extrapolant les travaux de PAGE au n/m/F/C
max
, GUPTA , en 1971, propose u
heuristique utilisant f(i)= sign { p
i 1
- p
i m
} / min { p
ij
+p
i , j +1
}
,
Vi, o sign { p
i 1
-p
i m
} = -1 si p
i1
< p
i m
et =1 sinon.

1sjsm-1
BONNEY & GUNDRY, en 1976, btissent un algorithme approch en particularisant, par une
mesure simple, les profils de chaque travail lorsqu'on les considre individuellement et que leurs
oprations se succdent sans attente. Ainsi ils dfinissent, par travail, deux indices de pente en
calculant les rgressions linaires, d'une part entre les points reprsentatifs des dates de dbut de
chaque opration, d'autre part entre les points reprsentatifs des dates de fin de chaque opration.
Ils se souviennent eux aussi , comme PALMER, du comportement de l'algorithme J. Nous
prsentons ci-dessous cet algorithme.
$: % Algorithme BONNEY2 : n/m/F/C
max
%
0) lire les donnes.
1) calculer les indices de pente de dbut : start-slope
i
, Vi=1...n, et construire le vecteur des
pseudo-temps d'excution sur une machine fictive 1 par :
p'
i1
= start-slope
i
Vi=1...n.
2) calculer les indices de pente de fin : end-slope
i
, Vi=1...n, et construire le vecteur de
pseudo-temps d'excution sur une machine fictive 2 par :
p'
i2
= end-slope
i
Vi=1...n .
3) appliquer l'algorithme J-INVERSE :
3-1: trouver la valeur maximale des p'
ij
pour l'ensemble des trava
ordonnancer. Initialement les n travaux sont concerns.
3-2: s'il s'agit de p'
k1
placer le travail k en dbut de l'ordonnancement;
s'il s'agit de p'
k2
placer le travail k en fin de l'ordonnancement (idem en cas d'galit).
3-3: rayer le travail k de l'ensemble des travaux encore placer et aller en 3-1.
:$ %fin%
CAMPBELL, DUDEK & SMITH, en 1970, fournissent une solution approche au problm
n/m/F/C
max
. En fait ils crent m-1 sous-problmes fictifs deux machines, rsolvent chacun
d'entre eux grce J et conservent le meilleur ordonnancement parmi les m-1, comme solution du
problme originel. Cette heuristique se rvla extrmement fiable dans les annes qui suivirent.
PROUST & al., dans une synthse de ces travaux et de ceux de SULE & HUANG, ont propos un
algorithme approch pour la rsolution du n/m/F,S
nsd
,R
nsd
/C
max
: les pseudo-temps opratoires,
pour chaque
k m
sous-problme k, sont respectivement p'
i1
k
= _ p
ij
- S
i,m-k+1
+ S
i1
et p'
i2
k
= _ t
ij
+ R
im
- R
ik
,

j=1 j=m-k+1
pour chaque travail i. Cette approche fournit de meilleurs rsultats que celle qui consiste tenter
de gnrer des indicateurs de profil de pente ou que d'autres qui adoptent une dmarche de
sparation et d'valuation progressive base sur des considrations de borne infrieure du C
max
,
telles que les heuristiques de SZWARC (1983) ou de TOWNSEND (1977).
4.1.1.4. Conclusion
On peut remarquer que les cases vides dans le tableau 3 sont nombreuses ! De plus ce tableau doit
certainement encore tre tendu en ligne et en colonne : par exemple une exploration des tudes du
n/m/F o l'on cherche une borne infrieure de C
max
reste faire. On connat l'importance de ces
bornes infrieures pour l'aide la mise au point de bonnes heuristiques.
D'autres problmes de cette famille ncessiteraient une plus grande attention comme l
n/m/F,d
i
~0,S
nsd
,R
nsd
/T
max
ou le n/m/F,S
ns d
,R
nsd
, succession sans attente/C
max
ou le
n/m/F,S
nsd
,R
nsd
, contraintes de prcdence sries-parallles/C
max
ou le n/m/F,S
sd
, succession
sans attente, d
i
~0/T
max
vu son intrt industriel dans l'agro-alimentaire en particulier.
Des tudes fines sur ces sujets nous paraissent fondamentales mme s'il est vraisemblable que,
dans la ralit des ateliers, les algorithmes rsultants ne seront que des briques de base de logiciels
plus vastes, interactifs d'aide la dcision. En effet, on peut constater, [PROU 89b], que beaucoup
de problmes rels, s'ils sont effectivement globalement de type flow-shop, prsentent bien
souvent, tage par tage, des structures locales de type "machines exemplaires multiples" (cf.
3.2.). Enfin, la mise au point d'heuristiques robustes ncessite que l'on dispose d'un logiciel ouvert
offrant la dfinition des plans d'exprience, la possibilit de programmation des algorithmes dans
le langage de son choix, la visualisation et les tests de validation des rsultats. Il faut alors intgrer
gestionnaires d'crans, diteur, compilateurs, logiciels de statistiques et d'Analyse des Donnes,
grapheur ... . Nous disposons maintenant de ce "logiciel de logiciels" [PROU 91].
4.1.2. LE JOB-SHOP
Les premiers rsultats thoriques concernant le job-shop datent des annes cinquante avec la
rsolution du problme 2 machines et d'un cas particulier du problme 3 machines. On trouve
sa dfinition formelle dans l'ouvrage "Industrial Scheduling" de MUTH et THOMPSON, paru en
1963, o trois exemples de job-shop, considrs depuis comme donnes tests sont proposs. Les
deux premiers ont t rsolus dans les annes soixante-dix . En revanche, il a fallu attendre les
annes quatre-vingt pour le troisime, l'optimalit de la meilleure solution connue , de
LAGEWEG , n'ayant t prouve qu'en 1986 [CARL 89]. Aussi, depuis vingt cinq ans, les
recherches sur ce problme sont-elles nombreuses (cf., par exemple, [PINS 88]).
Le job-shop est NP-difficile au sens fort. Aussi, la plupart des mthodes proposes pour sa
rsolution sont-elles du type procdures arborescentes bases sur une modlisation par un graphe
disjonctif. Nanmoins, d'autres modlisations ont t proposes, parmi lesquelles la
programmation linaire en nombres entiers, la gnration d'ordonnancements actifs, les approches
gomtriques. On a utilis aussi rcemment les approches polydrales, les mthodes tabou et de
recuit simul. Contrairement au cas particulier du flow-shop, le job-shop se prte d'autre part mal
des caractrisations analytiques.
4.1.2.1. Minimisation de la dure totale Cmax :
Dans le problme de base de type job-shop, n travaux ou jobs doivent tre excuts sur m
machines, sous des hypothses quasi-identiques celles du flow-shop. La seule diffrence - et elle
est de taille ! - est que maintenant les squences opratoires relatives aux diffrents travaux
peuvent tre distinctes.
Nous ne considrerons, dans le cadre de cet expos, que le critre "dure totale". Le
squencements des oprations sur les diffrentes machines doivent tre dtermins dans le but de
minimiser cette dure.
Deux cas particuliers fondamentaux du problme de job-shop sont rsolus polynomialement : le
cas de 2 machines et le cas de 2 jobs.
Job-Shop 2 machines :
Cet algorithme, d JACKSON, constitue une extension de celui de JOHNSON pour la
rsolution d'un problme de flow-shop n'utilisant que deux machines (n/2/F/Cmax). Il traite de
plus le cas o certains jobs peuvent n'avoir passer que sur une des deux machines. Notant M1 et
M2 les deux machines, on peut alors partitionner l'ensemble des jobs en 4 classes : C1 : ensemble
des jobs ne passant que sur M1, C2 : ensemble des jobs ne passant que sur M2, C12 : ensemble
des jobs passant sur M1 puis sur M2, C21 : ensemble des jobs passant sur M2 puis sur M1.
On montre alors qu'un ordonnancement optimal peut tre dtermin en adoptant le
squencements :
- sur M1 : C12-C1-C21
- sur M2 : C21-C2-C12
o les jobs de C12 et C21 sont ordonnancs par la rgle de JOHNSON.
Job-Shop 2 travaux :
Historiquement, c'est en 1955 qu'ACKERS et FRIEDMAN montrrent que, pour le problme 2
jobs, une condition ncessaire et suffisante pour qu'un squencement ralisable soit
potentiellement optimal est que ce squencement ne gnre aucun temps mort 'machine'.
En 1956, ACKERS proposa une solution graphique du problme en exprimant tou
ordonnancement ralisable comme un chemin dans un rectangle du plan (xOy), puis SZWARC, en
1960, prsenta une mthode de programmation dynamique pour dterminer un chemin optimal.
Des tudes thoriques sur la base de cette approche graphique ont t galement ralises en 1963
par HARDGRAVE & NEMHAUSER pour le problme gnral. En 1973, SHANKAR &
TURKSEN proposrent une dcomposition de ce mme problme en C
2
n
problmes deux jobs,
formalisant ces derniers l'aide d'un systme d'quations boolennes qui permet de restreindre la
dtermination d'un ordonnancement optimal celle d'ordonnancements dominants. Plus
rcemment, BRUCKER , reprenant cette approche graphique, proposa un algorithme de
complexit O(n
1
n
2
log(n
1
n
2
)) (n
1
et n
2
dsignant respectivement le nombre d'oprations des jobs
J1 et J2) permettant la rsolution du 2/n/J/Cmax. Comme ACKERS, il montre que le problme
peut tre formalis comme la recherche d'un plus court chemin dans le plan (xOy) sur lequel sont
disposs des obstacles infranchissables, mais contournables, figurant l'excution simultane des 2
jobs sur la mme machine, et organiss dans l'ordre dans lequel ces oprations doivent tre
excutes. Nous reproduisons (figure 14) un exemple propos dans la littrature pour lequel les
jobs J1 et J2 ont respectivement n
1
=4 et n
2
=3 oprations.
Un ordonnancement ralisable correspond alors un chemin de O F et possde les proprits
suivantes :
1/ Les segments constitutifs de ce chemin sont soit parallles l'un des axes (cas o un seul
des deux jobs est excut) soit diagonaux (cas o les deux jobs sont excuts en parallle).
2/ Les obstacles sont infranchissables, une machine ne pouvant excuter plus d'une opration
la fois et la premption tant interdite. En contrepartie, ils sont contournables.
BRUCKER propose alors la transformation de ce problme en la recherche d'un plus cour
chemin dans un rseau appropri. Il est alors rsolu en temps O(plogp) si p est le nombre
d'obstacles en utilisant une structure d'arbre quilibr. Des travaux visant l'extension de ce
principe au problme gnral sont en cours.
M 2
M 3
M 1
J 2
M 1
M 2
M 1
M 3
J 1
.
O
( 0, 0)
(a,b)
.
F
a=
_
p
1k
k=1
n1
b=_ p
2k
n2
k=1
figure 14
Rsolution exacte du job-shop gnral :
Les mthodes ayant donn les rsultats les plus probants jusqu' maintenant sont celles utilisant
une modlisation par graphe disjonctif. On peut attribuer ROY et BALAS les premires
applications de ce type de modlisation aux problmes de job-shop.
Le principe en est le suivant : deux oprations utilisant une mme ressource ne peuvent tre
excutes simultanment et sont dites en disjonction. Le problme peut alors tre modlis par un
graphe disjonctif G'=(G,D) o :
- G=(X,U) est le graphe correspondant la partie "conjonctive" du graphe G'. X est l'ensemble
des oprations des travaux ordonnancer, auquel on adjoint une source o et un puits not *, U est
un ensemble d'arcs tel que si i et j sont deux oprations conscutives de la squence opratoire
relative un job, alors l'arc (i,j)U.
- D est un ensemble de disjonctions : si i et j sont deux oprations en disjonction, on leur associe
la paire d'arcs "disjonctifs" [i,j]= {(i,j);(j,i)}
La figure 15 montre un exemple de graphe disjonctif associ un problme de job-shop
comportant deux travaux et deux machines.
1,2
o
1,1
2,2 2,1
*
2
6
5
4
0
U={(11,12),(22,21),
(o,11),(o,22),
(12,*),(21,*)}
D={((11,21),(21,11)),
((22,12),(12,22))}
figure 15
( l'opration (a,b) correspond l'excution du job a sur la machine b)
En notant p
i
la dure de la tche reprsente par le sommet i, nous pouvons, partir de cette
modlisation, dfinir un ordonnancement sur le graphe disjonctif G' comme un systme de
potentiels T= {t
i
/ i X} tel que :
- les contraintes conjonctives soient satisfaites :
V(i,j) U, t
j
-t
i
~ p
i
,
- les contraintes disjonctives soient satisfaites :
V[i,j] D, t
j
-t
i
~ p
i
ou t
i
-t
j
~ p
j
.
Pour construire un ordonnancement, il est ncessaire d'"arbitrer" les contraintes disjonctives
c'est--dire de choisir, pour chaque disjonction (i,j) si i passera avant ou aprs j sur la machine
correspondante, de manire dterminer un squencement sur chacune des machines.
Un arbitrage A est un ensemble d'arcs disjonctifs tel que si (i,j)A, alors (j,i)A, l'appartenance
de l'arc (i,j) A imposant l'excution de la tche i avant la tche j. On associe le graphe conjonctif
G
A
=(X,U U A) tout arbitrage A. Un arbitrage A est dit complet si toutes les disjonctions de D
sont arbitres. Un arbitrage A est dit compatible si le graphe conjonctif associ est sans circuit.
Un ordonnancement correspond un arbitrage complet compatible. Sa dure est alors gale la
valeur d'un plus long chemin dans le graphe conjonctif associ. Un arbitrage complet compatible
pour le problme de la figure 15 est {(11,21) , (22,12)}. La dure de l'ordonnancement
correspondant est 11.
Utilisant cette formalisation, BERTIER & ROY proposrent une mthode de rsolution de type
PSEP utilisant un principe de pnalits pour le choix de la disjonction arbitrer. Soit [i,j] une
disjonction non arbitre. f
j
et f
i
dsignant les dates au plus tard associes aux tches i et j dans le
graphe conjonctif courant, les quantits
ij
=max(0,t
i
+p
i
- f
j
) et
ji
=max(0,t
j
+ p
j
- f
i
)
correspondent aux augmentations d'un plus long chemin du graphe, suivant qu'on choisisse
d'excuter i avant j ou j avant i. Comme de toute manire un des deux choix devra tre fait, ils
associent la disjonction [i,j] la pnalit k
ij
=min(
ij
,
ji
) correspondant l'augmentation
minimale d'un chemin critique, et paralllement la quantit r
i j
=
i j
-
ji
(~0) correspondant au
"regret" obtenu quand on ne choisit pas l'arc (i,j) correspondant au min(
ij
,
ji
). La disjonction
sparer au noeud courant sera donc celle de r
ij
maximal et, en cas d'galit, celle de k
ij
maximal.
BALAS proposa galement en 1969 une mthode arborescente pour le problme disjonctif. Cette
mthode est base sur les deux rsultats suivants :
- soit G un graphe conjonctif associ un arbitrage complet compatible, et c un chemin critique
dans G. Tout graphe conjonctif G' obtenu partir de G par inversion d'un arc disjonctif de c est
encore ralisable.
- soit G un graphe conjonctif de chemin critique de valeur c. Dans tout graphe conjonctif G' de
chemin critique de valeur c' < c, au moins un arc disjonctif d'un des chemins critique de G est
invers .
BALAS propose alors la procdure suivante d'numration implicite de graphes ralisables. Soit
G
A
un graphe conjonctif ralisable associ l'arbitrage complet compatible A , et c un chemin
critique dans G
A
. Si c ne contient aucun arc disjonctif de A alors, en vertu des rsultats
prcdents, aucun graphe G
A'
correspondant un ordonnancement de dure infrieure ne peut tre
gnr par inversion d'un arc disjonctif de A dans A'. Dans le cas contraire, l'inversion d'un arc
disjonctif de A dans A' gnre un graphe conjonctif lui-mme ralisable.
BALAS dfinit ainsi pour chacune des disjonctions de c potentiellement inversibles une pnalit
base sur une valuation par dfaut du chemin critique associ l'inversion, et permettant de
guider le branchement chaque noeud de l'arbre de recherche. Cette procdure gnre alors une
arborescence de rseaux ralisables, conduisant un ordonnancement optimal. Pratiquement, cette
mthode, pionnire dans le domaine avec celle de BERTIER & ROY, donne des rsultats assez
loigns des optima pour les benchmarks de MUTH &THOMPSON, bien que des arborescences
atteignant 200.000 noeuds aient t dveloppes.
CARLIER, en 1975 , puis CARLIER & PINSON partir de 1986 [CARL 89b], reprirent et
amliorrent cette approche de modlisation pour les problmes disjonctifs, introduisant de plus la
notion d'arbitrages triviaux. Leurs mthodes sont bases sur une relaxation du problme de job-
shop m problmes une machine. Ils montrent que si un ensemble de conditions sont satisfaites
pour un sous-ensemble de tches utilisant la mme machine, alors l'une de ces tches peut tre
positionne par rapport toutes les autres dans tout squencement ralisable, permettant ainsi
l'arbitrage "trivial" des contraintes disjonctives associes (cf. le problme une machine). Ils
utilisrent cet outil dans plusieurs procdures arborescentes de type PSES dont le schma de
sparation est bas, pour la dernire, sur l'arbitrage de sous-ensembles de tches dits critiques, i.e.
d'valuation par dfaut locale maximale. Cette valuation est, quant elle, base sur celle des
problmes une machine associs. Ces mthodes fournissent des rsultats trs satisfaisants pour
des problmes de taille relativement importante, et ont de plus rsolu de faon optimale le clbre
problme 10 jobs / 10 machines propos par MUTH & THOMPSON en 1963. Notons enfin que
BRUCKER et son quipe travaillent maintenant sur une procdure arborescente utilisant le
concept d'arbitrage trivial et un schma de sparation inspir de celui propos par GRABOWSKI
pour le problme de flow-shop.
Mthodes approches de rsolution :
De nombreuses tentatives de rsolution du cas gnral par algorithme de liste utilisant des rgles
de priorit ont t proposes depuis 1950. Le principe gnral de ces algorithmes de listes est le
suivant : on ordonnance chaque instant t - o une machine et au moins une tche sont disponibles
- la tche de priorit maximale conformment la rgle de priorit retenue. Parmi les diffrentes
rgles de priorit testes, on peut citer :
-FIFO: slection de l'opration disponible le plus tt,
-SPT: slection de l'opration de plus petit temps opratoire,
-LPT: slection de l'opration de plus grand temps opratoire,
-MTR: slection de l'opration ayant le plus grand nombre de tches restant excuter dans sa
squence opratoire,
-MWKR: slection de l'opration correspondant la plus grande quantit de travail restant
excuter.
Parmi les travaux raliss dans ce sens, on peut citer LAWRENCE (cf. (PINS 88)), et une
synthse comparative de ADAMS,BALAS & ZAWACK, montrant que le dnominateur commun
de ces heuristiques est leur absence de stabilit, c'est--dire la fluctuation de leur performance en
fonction des jeux de donnes tests.
Plus rcemment, ces derniers proposrent une mthode approche de rsolution de ce mme
problme,"The Shifting bottleneck Procedure" [ADAM 88], dont les rsultats sont trs
satisfaisants mme sur des problmes de taille importante. Le principe de cette mthode est le
suivant : partant du problme global, ils ordonnancent localement les machines une une, chacune
de manire optimale (en utilisant la mthode arborescente propose par CARLIER en 1982). Ils
propagent pour chaque nouveau squencement les contraintes rsultantes l'aide du graphe
conjonctif associ au problme global. L'ordre dans lequel les machines seront squences dpend
d'une valuation des goulets d'tranglement associs chacune d'entre elles. Chaque fois qu'une
nouvelle machine est ordonnance, ils roptimisent le squencement de toute machine dj
ordonnance dont l'ordre induit peut tre amlior. Dans la mthode arborescente associe,
chaque noeud correspond donc un sous-ensemble de machines ordonnances. Dans le but de
limiter la taille de l'arborescence gnre, une fonction de pnalit, calcule en chaque noeud,
mesurant sa dviation par rapport au goulet d'tranglement, et pondre en fonction de son niveau
dans l'arbre de recherche, est utilise.
4.1.2.2. Minimisation de la somme des retards _Ti :
La mthode prsente ici s'inspire de la technologie de groupe.
Dcomposition d'un atelier en lots de fabrication .
L'objectif de la dcomposition spatiale d'un atelier est de regrouper les machines en lots de
fabrication et les produits en familles de telle sorte que :
- il y ait autant d'lots de fabrication que de familles de produits,
- les lots et les familles de produits soient mis en correspondance biunivoque,
- tout produit d'une famille soit trait essentiellement sur les machines de l'lot associ et
rarement sur celles d'autres lots.
C'est un problme de classification croise que l'on peut prsenter brivement de la faon
suivante: tant donne une matrice A, dont l'lment a
i,j
vaut 1 si le produit i utilise la machine j et
0 sinon, il s'agit de permuter les lignes et les colonnes de la matrice A de telle sorte que les lignes
et les colonnes des mmes familles soient regroupes ; les blocs diagonaux correspondent alors
aux machines et aux produits de la mme famille, le critre maximiser est gal la somme du
nombre de 1 des blocs diagonaux et du nombre de 0 l'extrieur des blocs diagonaux.Cette
dcomposition est illustre par la figure 16.
blocs diagonaux
contenant un
maximum de 1
p
r
o
d
u
i
t
s

r
e
g
r
o
u
p

s

e
n

f
a
m
i
l
l
e
s
machines regroupes en lots de fabrication
minimum de 1
reprsentant
des oprations
effectues
hors lot
figure 16
Plusieurs algorithmes approchs ont t dvelopps pour minimiser ce critre, en particulier
([GARC 85, 86]).
Utilisation des lots de fabrication pour ordonnancer
Plusieurs mthodes ont t proposes dans [PORT 88], en particulier une mthode dite d
dcomposition spatiale et une mthode dite de dcomposition spatiale et temporelle.
Ces deux mthodes demandent une dcomposition a priori de l'atelier en lots de fabrication
partir du carnet de commandes correspondant aux produits ordonnancer (ordonnancement de
type job-shop non priodique). Elles ont toutes deux t conues dans l'optique de minimiser la
somme des retards des travaux par rapport aux dates chues, mais on pourrait construire des
mthodes analogues pour d'autres critres. Dans les deux mthodes, on remplace un produit dont
la gamme de fabrication utilise des machines de plusieurs lots par une suite de sous-produits
auxquels on attribue des caractristiques identiques celles des produits (en particulier, une date
de disponibilit et une date chue, calcules artificiellement en partageant la marge du produit
entre les diffrents sous-produits qui le composent).
Dans la mthode de dcomposition spatiale: on ordonnance une premire fois indpendamment
dans chaque lot les produits et les sous-produits correspondants ; on regarde produit par produit si
l'ordonnancement propos est ralisable (dans le cas contraire, il existe un chevauchement entre
deux sous-produits, la suite de la gamme dans l'lot suivant commenant avant la fin des
oprations du mme produit programmes en retard dans l'lot prcdent) ; on modifie de manire
plus ou moins importante les dates chues d'un ou plusieurs produits concerns par un
chevauchement (selon les variantes de la mthode) ; on rordonnance les lots concerns ; on itre
sur les trois dernires phases jusqu' convergence de la mthode.
Dans la mthode de dcomposition spatiale et temporelle, on ordonnance chaque itration
uniquement des sous-produits "accessibles" d'un des lots (c'est--dire les produits ou les sous-
produits dont le dbut de gamme est dj ordonnanc sur un autre lot), en figeant les oprations
termines avant l'instant t, en introduisant les sous-produits accessibles disponibles avant l'instant
t+A et en les ordonnanant de manire optimale conjointement avec les oprations non termines
l'instant t en ignorant les autres sous-produits. (On n'a jamais de chevauchements car on impose
des dates de fin imprative aux sous-produits pour lesquels les oprations suivantes sont dj
ordonnances sur un autre lot). Les choix de t et de t+A sont faits de telle sorte que l'on ne
construise que des ordonnancements actifs (il n'existe pas dans les ordonnancements actifs
d'intervalle o une machine est disponible et o une opration pourrait tre avance sans dplacer
d'autres oprations). D'une itration l'autre, on tourne sur les diffrents lots en sautant ceux qui
entre t et t+A n'ont pas de nouveaux produits accessibles introduire, puis t progresse t+A
Ces deux mthodes par dcomposition sont des mthodes approches. La seconde mthode
consomme moins de temps pour des performances moyennes comparables. On ne peut apprcier
la qualit relle de la solution trouve que sur des petits exemples pour lesquels il est possible
d'obtenir une solution optimale (procdure arborescente). Pour ces petits exemples, l'cart
l'optimum est relativement peu important pour des gains en temps de calcul considrables. Les
mthodes par dcomposition sont d'autant meilleures que la dcomposition en lots laissent moins
de liens rsiduels (ou encore qu'il y a peu de produits dcomposs en sous-produits). Une srie
d'expriences a montr un gain d'environ 30% sur la valeur moyenne du critre somme des retards
en faveur des mthodes de dcomposition compare la meilleure solution obtenue par une srie
d'heuristiques utilisant des rgles de priorit.
4.1.3. L'OPEN-SHOP
C'est un modle d'atelier moins contraint que le job-shop et le flow-shop, car l'ordre d'excution
des tches d'un travail y est libre.Comme prcdemment, m machines sont disponibles pour traiter
n travaux. Chaque travail comprend m tches. La tche j du travail i doit tre traite par la machine
j, en une dure p
ij
. Si une machine est inutile pour un travail i, on convient alors que p
ij
= 0.
L'open-shop modlise des problmes courants, comme l'organisation d'examens mdicaux dans
un hpital ou la planification d'un atelier de rparation automobile. Dans ces deux exemples, les
travaux sont respectivement les patients et les voitures, les tches sont les examens mdicaux et les
rparations effectuer, les machines tant les salles ou appareils d'examen (radio, endoscopie)
et les postes de travail (graissage, lavage, etc).
Des problmes d'open-shop des chelles de temps de l'ordre de la milliseconde surviennent aussi
en tlcommunications, notamment dans les systmes par satellite fonctionnant par paquets
[CARL 88b].
On peut remarquer que le problme de l'open-shop peut tre interprt comme un problme
tches indpendantes dans lequel chaque tche ncessite simultanment deux ressources : le travail
et la machine. Ces deux ressources introduisent chacune des contraintes disjonctives. Il en rsulte
une certaine symtrie entre les travaux et les machines, comme cela apparat par exemple ci-aprs
pour l'interruption des tches.
4.1.3.1. Variantes et extensions :
Interruption des tches :
Lorsque les oprations sont morcelables, les problmes d'open-shop sont plus faciles. Un noyau
dur est constitu des problmes premptifs o une tche dmarre pour un travail doit tre
compltement termine avant d'en lancer une autre du mme travail. Ces problmes modlisent
des cas o les machines sont mutuellement loignes : un objet usiner peut tre dpos prs
d'une machine pour tre repris ultrieurement, mais il est trop coteux de le transporter pendant les
pauses sur une machine distante.
Les problmes d'open-shop non premptifs ( tches non morcelables) sont nettement plus
difficiles. Certains d'entre eux, dits sans attente, obligent traiter sans interruption un travail une
fois dmarr : de tels cas sont frquents dans le traitement chaud des mtaux.
Interruption des tches et premption:
Compte tenu de la symtrie entre travail et machine qui rsulte de l'absence
d'ordre entre les tches d'un mme travail, l'interruption d'une tche,
lorsqu'elle est possible, peut tre utilise soit pour la premption du travail,
soit pour la premption de la machine, soit pour les deux la fois.
L'interdiction de la premption du travail peut tre justifie par des cots de
transport trop levs entre machines. L'interdiction de la premption de la
machine peut tre justifie par des cots de reconfiguration de la machine
trop levs pour passer d'un type de travail un autre.
Lorsque les deux types de premption sont autoriss les problmes d'open-
shop sont plus faciles. Par contre ds que la premption est totalement ou
partiellement interdite ces problmes sont nettement plus difficiles (voir
4.3.1.2.). Certains d'entre eux, dits sans attente, obligent traiter sans
interruption un travail, une fois dmarr : de tels cas sont frquents dans le
traitement chaud des mtaux.
Disponibilit temporelle limite pour les tches :
L'open-shop se complique quand les travaux ne peuvent tre excuts qu'entre des dates de
disponibilit et des dates chues donnes. Dans le cas d'un garage automobile, par exemple, la
plupart des clients ne peuvent laisser leur voiture que pendant une fentre horaire limite.
Ressources supplmentaires :
Une gnralisation naturelle de l'open-shop est de considrer des ressources additionnelles
renouvelables ou consommables, tels que des outils complmentaires pour usiner une pice sur
une machine, du personnel spcialis en quantit limite,
4.1.3.2. Complexit et algorithmes exacts pour l'open-shop :
La thorie de la complexit a permis de montrer que la plupart des variantes de l'open-shop sont
NP-difficiles. Nous insistons donc sur ces rsultats de complexit, puisqu'il n'existe que peu de cas
o on dispose d'algorithmes polynomiaux.
La minimisation de la dure totale est le cas le plus courant, tudi par GONZALEZ & SAHNI
ds 1976 [GONZ 76]. Ces auteurs ont montr que le problme de minimisation de C
max
est NP-
difficile, dans le cas non premptif, partir de m = 3 (pour m = 2, ils ont propos un algorithme en
O(n)).
Dans le cas premptif sans restriction, ils ont trouv un algorithme en O(r
2
) (r tant le
nombre de tches non nulles), bas sur des calculs successifs de couplages dans un graphe biparti
dcrivant les relations travaux-machines. Cet algorithme est optimal car il trouve un
ordonnancement de dure gale la borne infrieure B suivante, dans laquelle les deux termes
caractrisent respectivement le plus long travail et la machine la plus charge :
m n
B = MAX ( MAX _ p
ij
, MAX _ p
ij
)
i=1, n j=1 j=1, m i=1
Comme l'ont montr CHO et SAHNI, le problme premptif devient NP-difficile partir de m=3,
lorsque seule la premption de la machine est autorise c'est--dire si toute
tche d'un travail doit tre compltement termine avant d'en dmarrer une autre [CHO 81]. Ces
mmes auteurs ont montr que le problme d'existence d'un ordonnancement admissible en
prsence de dates de disponibilit ou chues est NP-difficile dans le cas non premptif,mme si m
= 2. Dans le cas premptif, ils proposent un algorithme polynomial, assez lourd car bas sur un
programme linaire. Deux cas particuliers sont cependant rsolus plus rapidement : en O(n) si m
= 2, et en O(n
3
+ m
4
) si les dates chues ne prennent que deux valeurs.
La formulation de CHO & SAHNI en terme de programme linaire s'applique aussi la
minimisation du retard maximal, toujours dans le cas premptif. LAWLER & al., en 1981, ont
propos un algorithme de complexit linaire pour m = 2. Ils ont aussi prouv que minimiser le
nombre de travaux en retard est par contre NP-difficile, mme si m = 2.
La minimisation premptive de la dure moyenne est NP-difficile pour m non fix, mme si les
p
ij
ne prennent que deux valeurs 0 et 1 (GONZALEZ 82). LIU & BULFIN, en 1985, l'ont
confirm pour le cas m = 3, ainsi que pour le cas m = 2 avec dates chues.
L'introduction de ressources supplmentaires complique l'open-shop dans le cas non premptif
Cependant, pour 2 machines, des tches de dure 1, et des ressources renouvelables, on peut
minimiser la dure totale en 0(n
2,5
) par une mthode de couplage (BLAZEWICZ & al. 83).
Le cas premptif est traitable par la "mthode des deux phases", qui s'applique aussi aux
problmes machines parallles (voir par exemple SLOWINSKI 79). Cette mthode peut traiter
des contraintes de ressources trs varies, minimiser des fonctions conomiques incorporant des
cots sur les ressources, etc.
4.1.3.3. Mthodes approches :
La plupart des variantes de l'open-shop tant NP-difficiles, elles relvent de mthodes approches
ds que les problmes rsoudre en pratique sont un peu gros. Ces heuristiques appartiennent
deux principaux groupes : les mthodes de liste (ou srielles), et les techniques de couplage.
Dans les mthodes de liste, des priorits sont dfinies sur les tches. Un ordonnancement est
construit itrativement, en considrant chaque tape la premire machine libre et en lui affectant
la tche disponible de plus grande priorit. Les priorits peuvent tre calcules une fois pour
toutes, ou ajustes dynamiquement en cours d'algorithme. Ces mthodes sont trs flexibles et
peuvent traiter facilement des contraintes de ressources. Elles s'appliquent avec succs aux
tlcommunications par satellite [PRIN 88], o l'on a pu vrifier a posteriori qu'elles donnent en
moyenne des rsultats 1 ou 2 % de l'optimum.
Les techniques de couplage de CAMERINI consistent construire des "tranches" successives
d'ordonnancement. Une tranche consiste en un ensemble de m tches pouvant s'excuter
simultanment; elle se calcule par recherche d'un couplage max-min ou de poids maximal dans le
graphe biparti de participation des machines aux travaux (un arc reprsentant une tche).
L'ordonnancement final peut souvent tre amlior par tassement ou insertion de tches dans les
"trous" d'inactivit des machines, quand cela ne cre pas de conflits avec d'autres tches.
4.2. PROBLEME DU VOYAGEUR DE COMMERCE (PVC)
Le problme du voyageur de commerce (PVC) est l'un des problmes d'optimisatio
combinatoire les plus tudis depuis fort longtemps . On peut citer , comme rfrence historique,
le problme du tour du cavalier sur l'chiquier qui a t tudi notamment par EULER en 1759 et
par VANDERMONDE en 1771 . A l'heure actuelle , on sait qu'il s'agit d'un problme NP-difficile
. L'ouvrage le plus complet sur ce sujet est le livre de E.L.LAWLER & al. [LAWL 86].
Rappelons brivement l'nonc du PVC : tant donn un graphe valu G=(X,U,v) , simple
connexe on cherche un circuit Hamiltonien de cot minimal (le cot d'un circuit est la somme des
valuations des arcs constituant ce circuit) . Dans la suite, on appellera tour tout circuit
Hamiltonien de G . Dans le cas des problmes de routage ou de tournes , par exemple , la matrice
des valuations est positive et souvent symtrique . Cet nonc se ramne immdiatement la
recherche d'un "ordre de parcours" des N sommets du graphe , c'est--dire trouver une
permutation de N lments qui corresponde un tour de cot minimal . Si le graphe est complet ,
toute permutation correspond un tour . Sinon , il peut ne pas y avoir de solution .
4.2.1. ORDONNANCEMENT ET PROBLEME DU VOYAGEUR DE COMMERCE :
Dans les problmes d'ordonnancement , bien souvent on est conduit optimiser un ordre de
squencement de N tches , donc chercher une permutation de ces N tches minimisant une
fonction cot . On voit donc immdiatement apparatre un rapport avec le PVC . Afin de prciser
cette ide , nous allons voquer deux exemples classiques .
Le premier exemple est un problme sur une machine avec temps de rglage . On doit fabriquer n
pices . La fabrication de la pice i est assure par la tche i et elle dure p
i
. La dure de rglage de
la machine entre la tche i et la tche j est r
ij
. Minimiser le temps total des oprations consiste
trouver une permutation

n-1
de n lments telle que _ r
(i) (i+1)


soit minimale . On est donc ramen un PVC .
i=1
Le deuxime exemple est le problme d'atelier de type flow-shop sans attente . On dispose de m
machines et l'on doit usiner n pices . La dure de l'usinage de la pice i sur la machine j est p
ij
.
On impose , de plus , que ces usinages s'effectuent sans attente , c'est--dire , que la pice i doit
passer de la machine j la machine j+1 sans temps d'immobilisation . Le problme consiste
minimiser le temps total d'usinage . Dans la figure 17, on a reprsent une solution ralisable avec
m=3 et n= 3.
Pice 2
Pice 1
Pice 3
figure 17
Le temps est dans le sens du dfilement horizontal et les trois bandes reprsentent les trois
machines. L'ordre de passage choisi ici est (1,2,3) et la quantit minimiser est la somme des
temps morts sur la premire machine augmente de la dure totale du travail plac en dernire
position.. On se ramne un problme du type PVC avec une dmarche analogue celle du
premier exemple [GILM 64] .
4.2.2. UN APERCU SUR LES METHODES DE RESOLUTION DU PVC :
Etant donn l'tendue des travaux dj publis sur le sujet, cet expos ne peut tre exhaustif.
Les mthodes exactes :
A l'instar de bon nombre de problmes d'optimisation combinatoire , le PVC peut se mettre sous
forme d'un programme linaire en nombres entiers , mais le nombre exponentiel des contraintes de
tour rend la rsolution trs difficile . Pour une formulation complte , voir par exemple [LAWL
86] . Plusieurs procdures par sparation et valuation ont t proposes pour rsoudre ce
problme comme, par exemple, l'algorithme bien connu de Little. En 1986 , M. PADBERG & G.
RINALDI [PADB 86] ont prsent un algorithme bas sur des mthodes polyhdrales associes
une procdure du type branch and cut . Cette mthode a permis de rsoudre un problme 532
villes et , plus rcemment , 4x532 villes . Cependant , il faut savoir que cette mthode est lourde
mettre en oeuvre et ncessite une trs bonne initialisation . De plus , la procdure n'atteint pas
toujours l'optimum, si on limite son temps d'excution.
Les mthodes heuristiques :
Comme nous venons de le voir , une mthode heuristique fournissant une solution sous-optimale
est indispensable , mme dans le cas o l'on veut atteindre l'optimum . Il en existe deux grandes
familles: les heuristiques du type glouton et les mthodes du type amliorations successives .
Nous ne citerons que deux mthodes de type glouton . La premire est l'heuristique des plus
proches voisins qui donne , en gnral , des rsultats trs moyens ; elle est donc rserve soit
l'initialisation d'autres techniques , soit aux cas peu exigeants ou de petite taille . La deuxime
heuristique gloutonne est la mthode de l'lastique due B. ANGENIOL & al. [Rapport Thomson
CSF 87] . On se place dans le plan Euclidien , les noeuds sont donc des points du plan et la
matrice des valuations est celle des distances Euclidiennes entre les noeuds . L'lastique est une
ligne polygonale ferme dont les sommets sont proches des noeuds du parcours . Le principe est
d'tirer l'lastique passant dj prs de p noeuds de faon ce qu'il se trouve maintenant prs de
p+1 noeuds parmi les N donns . A la fin de l'algorithme , aprs un certain nombre d'itrations de
cette procdure, on obtient un tour de cot proche de l'optimum . Associe un recuit simul cette
mthode donne d'assez bons rsultats .
Les heuristiques du type amliorations successives sont les plus utilises et sont , en gnral
assez efficaces. Le principe de base est le suivant : partant d'un tour T
0
, on fabrique l'aide d'une
procdure de descente P, une suite de tours T
n
tels que T
n+1
=P(T
n
) et cot(T
n+1
)scot(T
n
). Les
critres d'arrt sont , bien entendu , lis la dtection d'un minimum local .
Le meilleur exemple est la procdure OPT-k invente par LIN & KERNINGHAM [LIN 71]
celle-ci consiste effectuer des changes dans l'ordre de parcours du tour . La complexit
(exprimentale) est de l'ordre de O(N
2,2
) . Le problme des minima locaux est central dans ce
genre de mthode et il y a plusieurs moyens de le contourner . On peut faire varier l'initialisation
T
0
, ce qui permet d'explorer plusieurs minima locaux . On peut aussi utiliser plusieurs procdures
P diffrentes et les faire fonctionner en cascade , ou bloquer certains arcs (mthodes tabou ) . Le
recuit simul qui autorise alatoirement une dgradation de la fonction cot) semble tre une
alternative intressante [E.BONOMI , thse ORSAY 85].
Nous noterons enfin que les rseaux neuronaux qui s'apparentent aux mthodes par "amliorations
successives" sont galement appliques ce problme. On pourra consulter ce sujet les actes de
Neuro Nmes 1989.
4.3. PROBLEMES CUMULATIFS : MODELISATION - ANALYSE SOUS
CONTRAINTES
4.3.1. LE PROBLEME CUMULATIF GENERAL : MODELISATION DES
CONTRAINTES DE RESSOURCES
Les problmes d'ordonnancement d'atelier se caractrisent par des contraintes de ressource
particulirement fortes lies l'utilisation de ressources renouvelables (machines, oprateurs, ...).
Ainsi, la rsolution de ces problmes ne peut que faiblement s'appuyer sur la rsolution des
problmes centraux vus prcdemment. On considre ici le cas plus gnral o
chaque tche ncessite des ressources renouvelables disponibles en quantit
limite. L'accent est mis sur la modlisation des conflits pour l'utilisation de
ces ressources, le cas disjonctif apparaissant comme un cas particluer.
L'exploitation de ce modle, pour la caractrisation des ordonnancements
respectant la fois les contraintes sur le temps et les ressources, est ensuite
prsente.
*************************** A DEPLACER *************************************
L'utilisation de ressources renouvelables introduit gnralement deux types de dcision :
- dcision d'affectation qui consiste choisir la ressource (en nature et en quantit) qui sera utilise
pour raliser la tche (la dure de la tche est, en gnral, dpendante de cette dcision),
- dcision de squencement directement lie l'ordonnancement, qui consiste choisir l'ordre de
ralisation de tches en conflit pour l'utilisation d'une ressource disponible en quantit insuffisante.
Bien que trs lis, ces deux problmes de dcision sont souvent dissocis, le problme
d'affectation tant rsolu :
- soit a priori, en ralisant l'affectation avant de s'intresser l'ordonnancement de faon, par
exemple, quilibrer la charge des diffrentes ressources utilisables ;
- soit a posteriori, en banalisant, pour l'ordonnancement, les ressources diffrentes, l'affectation
dtaille des tches ces ressources tant ralise aprs que l'ordonnancement agrg ait t
obtenu.
Le problme d'affectation est donc considr ici comme rsolu a priori ou a posteriori, c'est--dire
que l'on connat, pour chaque tche, les ressources qu'elle utilise (en nature et en quantit) ainsi
que sa dure.
*****************************************************************************
On suppose que :
- chaque tche O
i
est caractrise par sa dure p
i
, par l'ensemble K
i
de ressources qu'elle utilise et
par les quantits instantanes q
i
k
de ressource k (k K
i
) qu'elle ncessite tout au long de sa
ralisation ;
- chaque ressource k est disponible en permanence en une quantit instantane limite et gale
Q
k
.
Les contraintes rsultant de la limitation de la valeur instantane de ressource k disponible, sont
souvent appeles contraintes cumulatives car elles impliquent tout instant la limitation de la
quantit cumule de ressource utilise par les tches en cours de ralisation. La modlisation de
ces contraintes peut s'appuyer utilement sur le concept d'ensemble critique de tches [NABE 73].
Un ensemble critique de tches I
c
est un ensemble minimal de tches dont la ralisation
simultane ncessite une quantit d'une ressource suprieure la quantit disponible. Pour qu'un
ordonnancement respecte l'ensemble des contraintes cumulatives, il faut et il suffit que deux tches
soient ordonnes au sein de chaque ensemble critique. La rsolution du conflit associ un
ensemble critique peut tre reprsente par un ensemble non conjonctif d'ingalits de potentiels
(relies entre elles par un OU) :
H(I
c
)={t
j
- t
i
~ p
i
/ (i, j) I
c
2
, i = j}
Les ensembles H(I
c
) reprsentent l'ensemble des contraintes cumulatives. Cette reprsentation
permet de ramener la prise en compte des ressources un problme de squencement modlis par
un graphe potentiels-tches non conjonctif [ROY 70], ce qui permet de s'appuyer sur certains
rsultats lis la rsolution du problme central (paragraphe 2.1) [ERSC 79]. La construction
d'une squence satisfaisant les contraintes de ressources consiste choisir une ingalit de
potentiels dans chaque ensemble H(I
c
), c'est--dire ordonner deux tches dans chaque ensemble
I
c
pour rsoudre le conflit associ.
Dans le cas gnral, la recherche des ensembles critiques peut s'avrer complexe (voir pa
exemple [ESQU 87]). Des informations sur les potentiels limites associs chaque tche peuvent
rduire cette recherche en la limitant aux ensembles critiques de tches effectivement en conflit
dans le temps [ERSC 79]. Dans le cas particulier o q
i
k
=1 et o Q
k
=m (voir 3.2.1.), tout
ensemble de m+1 tches utilisant la ressource k constitue un ensemble critique de tches. Ainsi
dans le cas o q
i
k
=Q
k
=1, H(I
c
) est une paire de disjonction modlisant une contrainte
disjonctive (voir 4.1.2.1.).
b
pb
a
pa
ou
++
+ a
b
+
=
paire de disjonction
a
b
c
pa
pb
pa
pc
pc
pb
ou
+ +
+
+
+
+
+
pc
ou
a b
c
d
pb
pa
pb
pc
pa
pd
pc
pa
pd
pa
pb
|I
c
|=4 |I
c
|=3 |I
c
|=2
figure 18 : exemples d'ensembles critiques et de groupes d'arcs non conjonctifs associs.
On peut noter que dans le cas o il existe des contraintes disjonctives et cumulatives, il est
gnralement intressant de traiter en priorit les contraintes disjonctives qui sont les plus
structurantes pour l'ordonnancement. Dans tous les cas, le OU qui apparat dans le graphe
potentiels-tches introduit dans le problme un caractre fortement combinatoire qui ncessite,
sauf cas particuliers, de faire appel des mthodes d'numration implicite ou des procdures
heuristiques.
4.3.2. ANALYSE DE PROBLEMES D'ORDONNANCEMENT SOUS CONTRAINTES DE
TEMPS ET DE RESSOURCES
4.3.2.1. Prsentation de la problmatique
Indpendamment de toute fonction conomique, il peut tre intressant d'analyser un problme
d'ordonnancement dfini exclusivement en termes de contraintes. Les contraintes pouvant tre
prises en compte sont les suivantes : contraintes potentielles entre tches, contraintes de dates
limites (dbut au plus tt, fin au plus tard) associes certaines tches, contraintes cumulatives
associes aux ressources. Une telle analyse peut conduire :
- tudier l'existence d'ordonnancements admissibles,
- caractriser l'ensemble des ordonnancements admissibles,
- gnrer un ou plusieurs ordonnancements admissibles.
Le problme important est celui de la caractrisation des ordonnancements admissibles. La
caractrisation peut en effet aider aussi bien tudier l'existence de solutions (cohrence des
caractristiques), qu' gnrer des solutions admissibles (satisfaction des caractristiques). La
caractrisation des ordonnancements admissibles tend expliciter les degrs de libert disponibles
pour l'ordonnancement compte tenu des contraintes prises en compte. Notons qu'en l'absence de
contraintes de ressources, les notions de marges et de dates de dbut au plus tt et au plus tard
constituent une caractrisation des ordonnancements admissibles en prsence de contraintes de
temps allou (la notion de chemin critique permet de trouver la contrainte maximale admissible).
Les informations issues d'une telle analyse sous contraintes peuvent tre utilises comme aide
la dcision pour l'ordonnancement dynamique de tches ou peuvent aider gnrer des
ordonnancements respectant les contraintes et prenant en compte ventuellement d'autres
connaissances sur le problme.
Cette approche a donn lieu un ensemble de travaux ([ERSC 76a, 79, 76b, 80], [ESQU 87] et
les thses de V. THOMAS-1980 et A. LE GALL-1989).
4.3.2.2. Principes gnraux de l'analyse sous contraintes
L'analyse sous contraintes peut s'appuyer sur la reprsentation du problme d'ordonnancemen
par un graphe potentiels-tches non conjonctif G. Les groupes d'arcs non conjonctifs reprsentent
les conflits associs aux ensembles critiques de tches (cf. 4.3.1.) issus des contraintes de
ressources. Les conditions d'admissibilit (caractristiques des ordonnancements admissibles) sont
obtenues en interdisant les circuits de longueur strictement positive sur le graphe. Ces circuits
peuvent tre recherchs en s'appuyant sur les bornes infrieures et suprieures des potentiels
obtenues en considrant la partie conjonctive du graphe. L'interdiction de ces circuits se traduit par
l'adjonction de nouveaux groupes d'arcs non conjonctifs qui expriment des conditions ncessaires
de squencement entre tches, rsultant de l'interaction entre les contraintes temporelles et les
contraintes de ressources. Certains de ces groupes d'arcs (qui peuvent se rduire un seul arc)
permettent d'affiner les bornes des potentiels (dates limites associes aux tches) qui constituent
une caractrisation temporelle des ordonnancements admissibles. Il est possible d'itrer des
transformations du graphe et d'affiner ainsi alternativement la caractrisation squentielle et
temporelle des ordonnancements admissibles. On peut montrer ([ERSC 79]) que cette procdure
converge vers un graphe limite G
*
dans lequel tout circuit de longueur strictement positive est
interdit et qui caractrise donc l'ensemble (suppos non vide) des ordonnancements admissibles.
Les bornes des potentiels reprsentent les caractristiques temporelles alors que les groupes d'arcs
non conjonctifs ainsi que les arcs de la partie conjonctive issus de tels groupes reprsentent les
caractristiques squentielles (conditions sur la rsolution des conflits d'utilisation des ressources).
Ces caractristiques constituent des conditions ncessaires et suffisantes d'admissibilit.
La recherche de G
*
se heurte dans le cas gnral la barrire de la complexit, mme si, pour des
problmes trs contraints, l'interaction temps/squence permet des rsultats spectaculaires [ERSC
76b]. Nanmoins, si on tronque la procdure de caractrisation, on obtient des conditions
ncessaires d'admissibilit qui constituent des informations utiles pour l'ordonnancement. Cette
procdure d'analyse a donn lieu des rsultats et des dveloppements spcifiques dans le cas o
les contraintes de ressources sont de type disjonctif [ERSC 76b, 80]. Elle a t mise en oeuvre
sous la forme d'un processus d'infrence utilisant des rgles de squencement et d'actualisation de
dates limites permettant d'affiner alternativement les caractristiques squentielles et temporelles
des ordonnancements admissibles [ESQU 87]. Cette approche est dtaille ci-aprs.
4.3.2.3. Rgles pour l'analyse sous contraintes d'un problme d'ordonnancement
Les donnes du problme sont celles dfinies en 4.3.1.
Trois types de contraintes sont prises en compte :
- contraintes de ressource : chaque ressource k est disponible en quantit limite Q
k
,
- contraintes de cohrence technologique reprsentables par une conjonction d'ingalits de
potentiels portant sur les dates de dbut des tches,
- contraintes de dates limites : les travaux doivent tre raliss dans une fentre temporelle dfinie
par une date de dbut au plus tt et une date de fin au plus tard. On suppose ainsi que pour toute
opration O
i
on connat une borne infrieure de la date de dbut au plus tt S
i
et une borne
suprieure de la date de fin au plus tard F
i
. Ces bornes peuvent tre obtenues initialement en
propageant les dates limites des travaux travers le graphe conjonctif des contraintes
technologiques.
On suppose par ailleurs que l'on connat les ensembles critiques de tches (cf 4.3.1.). L'analyse
sous contraintes du problme peut s'effectuer travers des rgles de squencement et
d'actualisation des dates limites S
i
, F
i
qui permettent d'affiner la caractrisation des
ordonnancements admissibles. Ds qu'une date limite est actualise, il convient de propager cette
actualisation travers le graphe conjonctif des contraintes de potentiels. Le processus d'analyse
s'arrte lorsqu'il n'est plus possible de dduire de nouveaux faits (squentiels ou temporels) par
application d'une rgle, ou lorsqu'une incohrence apparat, mettant ainsi en vidence l'absence
d'ordonnancement admissible. Les principales rgles sont prsentes ci-aprs.
Rgles lmentaires dans le cas disjonctif
Soit {O
i
, O
j
} un ensemble critique d'oprations (utilisant par exemple la mme machine). On
peut tablir la rgle de squencement suivante :
Rgle 1 : Si (F
i
S
j
) < p
i
+ p
j
Alors O
i
prcde O
j
.
Rciproquement, si une condition essentielle de prcdence telle que "O
i
prcde O
j
" a t tablie,
on peut chercher appliquer les rgles d'actualisation suivantes :
Rgle 2a : Si O
i
prcde O
j
et S
i
+ p
i
> S
j
Alors S
j
peut tre actualise la valeur S
i
+ p
i
.
Rgle 2b : Si O
i
prcde O
j
et F
j
p
j
< F
i
Alors F
i
peut tre actualise la valeur F
j
p
j
.
Rgles gnrales dans le cas disjonctif
On peut gnraliser les rgles prcdentes une clique de disjonctions. Soit O un ensemble
d'oprations tel que toute paire d'oprations constitue un ensemble critique (clique de disjonctions)
et soit O
i
une opration de O. Les rgles de squencement suivantes gnralisent le cas prcdent
(U reprsente le OU logique):
Rgle 3a : Si
max
O
j
O, O
j
=O
i
(F
j
) S
i
<
_
O
p

Alors
U
O
j
O, O
j
=O
i
(O
j
prcde O
i
).
Rgle 3b : Si F
i

min
O
j
O, O
j
=O
i
(S
j
) <
_
O
p

Alors
U
O
j
O, O
j
=O
i
(O
i
prcde O
j
).
Les conditions de squencement issues de l'application des rgles 2a et 2b signifient qu'une
opration au moins parmi celles de l'ensemble {O O
i
} doit prcder (ou tre prcde par)
l'opration O
i
. Pour simplifier, ces conditions seront notes :
U{O O
i
} prcde O
i
et O
i
prcde U{O O
i
}.
Lorsque de telles conditions sont tablies, on peut appliquer les rgles d'actualisation suivantes :
Rgle 4a : Si U{O O
i
} prcde O
i
et
min
O
j
{O O
i
}
(S
j
+ p
j
) > S
i
Alors S
i
peut tre actualise la valeur
min
O
j
{O O
i
}
(S
j
+ p
j
).
Rgle 4b : Si O
i
prcde U{O O
i
} et
max
O
j
{O O
i
}
(F
j
p
j
) < F
i
Alors F
i
peut tre actualise la valeur
max
O
j
{O O
i
}
(F
j
p
j
).
Rgles dans le cas cumulatif
On considre prsent le cas o deux tches ne sont pas forcment ordonnes, c'est--dire qu'il
est possible de raliser plusieurs tches simultanment. Soit I un ensemble critique d'oprations
tel que | I | > 2 et soit O
i
une opration appartenant I. Les rgles de squencement suivantes
peuvent tre tablies :
Rgle 5a : Si V (O
j
, O
k
) {I O
i
}
2
avec O
j
= O
k
, on a F
k
S
j
< p
k
+ p
j
et Si V O
j
{I O
i
}, on a F
j
S
i
< p
j
+ p
i
Alors U{I O
i
} prcde O
i
.
Rgle 5b : Si V (O
j
, O
k
) {I O
i
}
2
avec O
j
= O
k
, on a F
k
S
j
< p
k
+ p
j
et Si V O
j
{I O
i
}, on a F
i
S
j
< p
i
+ p
j
Alors O
i
prcde U{I O
i
}.
Lorsque de telles conditions de squencement ont t obtenues, on peut chercher appliquer les
rgles d'actualisation 4a et 4b (cf. Rgles gnrales).
Exemple : Soient O = {O
1
, O
4
} et I = {O
2
, O
3
, O
4
} deux ensembles critiques d'oprations dont
les caractristiques sont donnes dans le tableau ci-dessous.
O
i
S
i
F
i
p
i
O
1
8 15 4
O
2
0 13 6
O
3
3 13 6
O
4
3 13 6
R1 : (13 18 < 6 + 4) = O
4
prcde O
1
.
R2a : O
4
prcde O
1
et 3 + 6 > 8 = S
1
est actualise 9.
R2b : O
4
prcde O
1
et 15 4 < 13 = F
4
est actualise 11.
R5b : (13 3 < 6 + 6 et 13 3 < 6 + 6) et (13 3 < 6 + 6 et 13 3 < 6 + 6)
= O
2
prcde (O
3
ou O
4
).
R4b : O
2
prcde (O
3
ou O
4
) et max(13 6, 13 6) < 13 = F
2
est actualise 7.
Ces actualisations tant enregistres, on peut alors dclencher la rgle 5a :
R5a : (11 0 < 6 + 6 et 7 3 < 6 + 6) et (11 3 < 6 + 6 et 7 3 < 6 + 6)
= (O
2
ou O
4
) prcde O
3
.
R4a : (O
2
ou O
4
) prcde O
3
et min(0 + 6, 3 + 6) > 3 alors S
3
est actualise 6.
Le tableau suivant donne les caractristiques des tches aprs actualisations :
O
i
S
i
F
i
p
i
O
1
9 15 4
O
2
0 7 6
O
3
6 13 6
O
4
3 11 6
Exceptes ces informations numriques, l'analyse dduit galement des
caractristiques squentielles entre les tches :
i) O
4
prcde O
1
;
de plus par traitement logique de "O
2
prcde (O
3
ou O
4
)" et "(O
2
ou O
4
)
prcde O
3
", on obtient la contrainte de succession simple :
ii) O
2
prcde O
3
,
nouvelle relation qui n'entrane pas d'actualisation supplmentaire.
4.3.2.4. Autres dveloppements
Le processus d'analyse sous contraintes peut tre tendu et enrichi en utilisant le concept d'nergie
qui lie la consommation du temps et des ressources [ERSC 91]. Une autre approximation de
l'analyse sous contraintes peut consister rechercher des conditions suffisantes d'admissibilit en
caractrisant compltement un sous-ensemble particulier d'ordonnancements admissibles (cf.
Thses de V. THOMAS et A. LE GALL). Le choix de l'approximation (conditions suffisantes ou
conditions ncessaires prsentes en 4.3.2.3.) peut dpendre du taux de contraintes du problme.
Enfin, un concept de dominance vis--vis de l'admissibilit peut tre dfini : un ordonnancement
en domine un autre si son admissibilit implique celle de l'autre, pour un corps d'hypothses
donn. Pour certains problmes contraintes disjonctives et pour un corps d'hypothses
relativement faible (ordre relatif des dates limites connu), une caractrisation intressante des
ordonnancements dominants a pu tre tablie ([ERSC 83] et thses de C. COUZINET-MERCE-
1979 et G. FONTAN-1980). Lorsqu'il existe des ordonnancements admissibles, les
ordonnancements dominants sont ceux qui satisfont le plus largement les contraintes (flexibilit
maximale). Les caractristiques des ordonnancements dominants peuvent tre galement utilises
pour amliorer les performances de procdures arborescentes d'optimisation vis--vis de certains
critres (thse de G. FONTAN).
5. PROBLEMES D'ORDONNANCEMENT CYCLIQUES
Les problmes d'ordonnancement cycliques ont de nombreuses applications tant
informatiques (calculs rptitifs sur architectures parallles) que dans le domaine de la production
(job-shops rptitifs) ou de la planification (affectation priodique de ressources). Jusqu'
maintenant, la plupart des travaux qui leur sont consacrs sont trs proches de leurs applications
respectives et concernent surtout des heuristiques permettant une rsolution approche rapide.
Cependant, de plus en plus d'auteurs s'intressent l'tude thorique des problmes sous-jacents,
avec toutefois un partage regrettable des chercheurs selon le domaine d'application d'origine de
leur problme. Nous tentons, dans cet article, un dbut de synthse qui demande tre poursuivie.
5.1. UN EXEMPLE DE PROBLEME CYCLIQUE AVEC RESSOURCES
Nous prsentons comme exemple une application informatique des problmes cycliques: la
microprogrammation de boucles vectorielles sur des super-calculateurs. Les architectures
correspondantes comportent des modules spcialiss pour le calcul vectoriel, qui sont des pipelines
microprogrammables. Le module vectoriel du CRAY2, par exemple, peut tre vu comme l'indique
la figure19
BM
REG
U1
l=1, d=2
U3
l=1, d=1
U4
l=1, d=1
UNITE VECTORIELLE DU CRAY 2
8 registres
LOAD
STORE
U2
l=1, d=1
ADD
MULT
Figure 19
Il comporte quatre oprateurs spcialiss parallles, communiquant via un banc de huit
registres: un additionneur, un multiplieur, une unit de lecture et une unit d'criture sur un banc
mmoire (BM). Chaque oprateur est caractris par sa dure (d) et sa latence (l) qui mesure
l'intervalle de temps minimum entre deux activations successives. Le contrle est assur au moyen
d'un microprogramme dont chaque instruction gre le fonctionnement complet de la machine
durant une unit de temps.
Sur une telle architecture, proposons-nous de dterminer un microprogramme pour coder la
boucle vectorielle suivante :
Pour I=1 N faire
A(I+2) = (A(I)+B(I))*B(I)
fin faire
Le calcul d'une itration est dcompos en 5 tches :
Tche 1 -lire A(i)- est excute par U1 ;
Tche 2 - lire B(i) - est excute par U1 ;
Tche 3 - additionner A(i) et B(i) - est excute par U3;
Tche 4 - multiplier le rsultat de T2 par B(i) - est excute par U4;
Tche 5 - crire le rsultat de T3 sur A(i+2) est excute par U2.
La smantique du calcul induit des contraintes qui sont celles d'un problme central rptitif,
et qui sont reprsentes dans le graphe potentiel gnralis de la figure 20.
Tche 1
Tche 2
Tche 5
Tche 4
Tche 3
(2,0)
(2,0)
(2,0)
(2,0)
(1,0)
(1,0)
(1,2)
Figure 20
Lorsque le nombre d'itrations de la boucle est grand, on peut le supposer infini. Les
instances des tches gnriques doivent alors tre ordonnances de faon maximiser le dbit de
la machine, c'est--dire le nombre moyen d'itrations calcules par unit de temps.Il faut alors
veiller ce que les oprateurs soient utiliss sans conflits, et aussi dans ce cas dterminer une
affectation priodique des huit registres de la machine pour stocker les rsultats intermdiaires des
instances de tches.
5.2. MODELES ET RESULTATS GENERAUX
Trois modles gnraux, qui induisent des techniques de rsolution particulires ont t
proposs pour les problmes cycliques.
Rseaux de Petri temporiss :
Le premier d'entre eux, celui qui a jusqu' prsent donn le plus de rsultats, est le modle
des rseaux de Petri temporiss (cf. 1.2.) [CARL88a]. Chaque transition modlise une tche
gnrique, et les contraintes de prcdence internes, externes et les contraintes de ressource sont
reprsentes par les places et les arcs qui les relient aux transitions.La figure 21 reprsente le
rseau de Petri associ l'exemple prcdent. Lorsque le rseau de Petri est un graphe
d'vnements, le problme d'ordonnancement associ est un nonc du problme central rptitif (
cf. 2.3.)
U1
T1
T2
U3
U4
U2
T3 T4
T5
REG
ed
: transitions de dure nulle (TAR)
Figure 21
Par ailleurs, J.CARLIER et P. CHRETIENNE ont consacr une tude gnrale aux
ordonnancements infinis d'un rseau de Petri temporis quelconque. Ils ont montr que lorsque
une squence priodique de franchissement de transitions est fixe, il existe un ordonnancement au
plus tt qui est K-priodique et se calcule polynmialement.De plus ces ordonnancements sont
dominants. Ils ont construit un graphe d'tat, appel graphe au plus tt du rseau, dont les chemins
correspondent aux ordonnancements au plus tt des squences de franchissement. Le problme de
la maximisation du dbit est alors exprim comme un programme linaire dont les contraintes sont
construites partir de l'ensemble des circuits lmentaires du graphe au plus tt.
Dioides :
Une tude algbrique du dioide ( R R
+
, +,max) a permis indpendamment la rsolution du
problme central rptitif [COH85]. A titre de comparaison, la frquence d'excution des tches, qui
est associe aux circuits critiques du graphe d'vnement, correspond dans ce modle aux valeurs
propres de certaines matrices. Les dioides ont l'avantage d'offrir un cadre rigoureux gnral pour
l'tude des problmes cycliques. Cependant, ce modle semble jusqu' prsent difficile utiliser en
prsence de contraintes de ressource.
Modle distances cycliques limites :
Plus rcemment [SER89], deux auteurs ont propos un modle gnral pour des problmes
cycliques un peu diffrents de ceux induits par les modles prcdents. Il s'agit, partir d'un
ensemble de tches gnriques, d'ordonnancer leurs instances de manire 1-priodique : les suites
de dates d'excution d'une mme tche forment une progression arithmtique de priode T donne.
De ce fait dans toute priode de temps de longueur T, une et une seule instance de chaque tche
gnrique est calcule. Les contraintes considres sont des contraintes de localisation dans le
temps et des contraintes de ressources trs gnrales. Les contraintes de localisation ont une forme
particulire :
Pour deux tches i et j, on impose que dans toute priode de longueur T, la
diffrence entre les dates de dbut des instances des tches i et j excutes durant cette priode
appartiennent, modulo T, un intervalle de temps donn. Il faut remarquer qu'une telle contrainte
porte sur des instances de tches indpendamment des itrations auxquelles elles appartiennent. Ce
ne sont donc pas des contraintes de prcdence au mme titre que celles du problme central
rptitif.
Les auteurs, aprs avoir tabli la NP-difficult du problme comportant uniquement des
contraintes de localisation temporelle, proposent un algorithme fond sur une recherche exhaustive
l'aide d'une arborescence de solutions.
Le lien de ce modle avec celui des rseaux des Petri temporiss n'est pas immdiat.
Cependant, il semble que les contraintes du problme central rptitif se reprsentent comme des
contraintes de ressource dans ce modle, alors que certaines contraintes de ressource reprsentes
dans un rseau de Petri temporiss, comme par exemple les contraintes disjonctives, peuvent tre
modlises par des contraintes de localisation temporelle.
5.3. PROBLEMES A RESSOURCE UNIQUE
Un petit nombre d'tudes ont t consacres aux problmes rptitifs gamme unitaire
[AIK88],[MUN90]. Il s'agit, considrant un problme central rptitif, d'en excuter les tches sur
des machines identiques.
CTTRON, partant d'une application informatique, s'est intress au problme avec une
infinit de processeurs mais en imposant que toutes les tches d'une mme itration soient
excutes par la mme machine. Il s'agit alors de dterminer un ordre total sur les tches
gnriques et un dcalage constant minimal entre les itrations de faon respecter les contraintes
de prcdence externes. Il a tabli la NP-difficult du problme, et dtermin des heuristiques
inspires par l'algorithme de Hu, fondes sur une dcomposition par niveau du graphe des
contraintes.
Concernant le problme m processeurs, AIKEN et NICOLAU ont propos des heuristiques
dont le principe est le suivant: les itrations sont droules, c'est--dire que les tches gnriques
sont dupliques un certain nombre de fois, puis on dtermine une liste de priorits base sur
l'excution au plus tt sans contraintes de ressources, enfin on utilise un algorithme de liste.
L'ordonnancement est alors rarrang au besoin pour lui donner une structure priodique .
Enfin, A. MUNIER, dans des rsultats paratre, a montr la NP-difficult du problme, et a
tabli un certain nombre de sous-cas polynomiaux selon la structure du graphe des contraintes de
prcdence. Elle a dtermin en particulier des algorithmes efficaces lorsque ce graphe est rduit
un circuit, ou encore lorsqu'il n'y a pas de contraintes externes .
5.4. PROBLEMES A RESSOURCES MULTIPLES
Les problmes cycliques ressouces multiples ont t tudis indpendamment selon deu
principales directions : les ordonnancement de pipelines et les versions cycliques de problmes
d'atelier (flow-shop et job-shop). Cependant les problmes sous-jacents sont trs voisins et
mriteraient d'tre abords en commun.
5.4.1 PROBLEMES DE PIPELINES :
Les pipelines sont des machines composes de processeurs parallles spcialiss appels
units fonctionnelles qui changent des donnes au travers de registres plus ou moins partags.
Leur contrle est assur au moyen d'un microprogramme, dont chaque instruction gre l'activation
des units fonctionnelles ainsi que les chemins de donnes pendant une unit de temps. Le
module vectoriel du CRAY2 prsent plus haut en est un exemple. L'utilisation de tels pipelines
pour excuter des instructions de haut niveau pose des problmes d'ordonnancement complexes,
qui ont beaucoup de points communs avec les job-shops et les flow-shops. Ils sont en gnral
traits au moyen d'algorithmes de liste.
Le cas des calculs rptitifs (boucles vectorielles avec ou sans rcurrences) mrite une
attention particulire. En effet, comme dans notre exemple, le calcul d'une itration de la boucle
est associ un ensemble de tches gnriques, excutables par les processeurs. Du fait de leur
spcialisation, l'allocation des tches aux processeurs est fixe. Aux transferts de donnes entre les
tches sont associes des contraintes de prcdence de mme nature que celles du problme
central rptitif. Cependant, la prsence d'un nombre limit de registres pour assurer ces transferts
de donnes induit des contraintes de ressource qui sont rarement prises en compte dans les
approches classiques.
Tables de rservation
Le problme de la maximisation du dbit de pipelines a tout d'abord t trait [KOGG 81]
pour les pipelines classiques et les boucles vectorielles non rcurrentes ( itrations
indpendantes), ce qui implique l'absence de contraintes externes dans le problme central rptitif
sous-jacent. Une table de rservation, dtermine au moyen d'heuristiques, reprsente l'allocation
des ressources, unit par unit, pendant la dure de l'ordonnancement gnrique. La recherche de
circuits dans un graphe d'tat fournit un ordonnancement priodique optimal pour cette table. Cette
approche ne permet notamment pas de reprsenter le partage de ressources de mme type, comme
les registres d'un mme banc. Les solutions obtenues peuvent en consquence tre loignes de
l'optimum. Ce type de technique a t rcemment gnralis [HANE90] pour tenir compte de
dpendances entre les itrations et de contraintes cumulatives. Il est noter que la complexit de
ce problme est toujours inconnue.
Certains auteurs ont cherch dterminer un ordonnancement gnrique optimal. Les
algorithmes d'insertion de dlai fournissent une solution exacte en un temps polynomial dans un
cadre trs restreint : les tches sont de dure unitaire et ni les registres ni les prcdences externes
ne sont pris en compte. Ces algorithmes servent de base heuristique aux mthodes dveloppes
ces dernires annes [LAM 87],[EISE 88], qui calculent un ordonnancement global fond sur un
'bon' ordonnancement gnrique pour les boucles rcurrentes. Le principe de ces heuristiques est le
suivant : on se donne une liste de priorits pour les tches gnriques, correspondant en gnral
une date au plus tt dans le problme sans contraintes de ressource. Puis, pour une valeur du dbit
fixe, estime bonne, de la forme 1/o avec o entier, on utilise la liste de priorits pour construire
un ordonnancement des tches gnriques de telle sorte que la rptition de cet ordonnancement
toutes les o units de temps n'engendre pas de conflit.Si l'on choue on recommence avec un dbit
1/(o+1). Cependant dans toutes ces techniques les registres sont toujours supposs en nombre
suffisant, ce qui peut amener des solutions non ralisables.
Etude gnrale
Par ailleurs, il a t montr [HANE 87] que les ordonnancements rptitifs fonds sur un
ordonnancement gnrique fix ne sont pas ncessairement dominants lorsque toutes les
contraintes sont prises en compte. L'tude du problme global a t effectue grce une
modlisation en termes de rseaux de Petri temporiss. Le principal rsultat en est un algorithme
exact (non polynomial) fournissant un ordonnancement K-priodique optimal, fond sur la
recherche de circuits critiques dans un graphe d'tat.
5.4.2. PROBLEMES D'ATELIER :
Dans un domaine d'application diffrent, les problmes d'atelier, certains auteurs se sont
intresss des problmes de flowshop rptitifs. MATSUO a trait des problmes deux
machines en se ramenant pour l'un d'entre eux un sous-problme polynomial de voyageur de
commerce. ROUNDY s'est pench sur le problme d'un seul job rptitif en cherchant non
seulement maximiser le dbit, mais aussi minimiser la dure d'une occurrence du job, ce qui
correspond, en termes informatiques, la dure d'une itration [ROUN 88]. Il a tabli la NP-
difficult de son problme et a trs finement tudi la structure des solutions ralisables. Il a
montr que certaines solutions pouvaient tre regroupes en un noeud d'un treillis, chaque noeud
tant associ un graphe partiel du graphe des contraintes. Il en dduit un algorithme exact, qui
consiste parcourir le treillis au moyen de transformations locales du graphe.
Par ailleurs, HILLION et PROTH [HILL 89] ont utilis les rsultats sur le problme central
rptitif pour certains problmes de job-shop rptitifs. En fixant l'ordre de passage des jobs sur
les machines, ils ont dmontr qu'il tait toujours possible de saturer la machine la plus charge et
ils obtiennent des rsultats sur la minimisation des en-cours.
5.5. CONCLUSION
Ce tour d'horizon des problmes rptitifs montre que leurs applications pratiques sont
varies. La plupart des approches qui ont t proposes pour rsoudre les problmes avec
contraintes de ressource soit sont de nature heuristique, soit utilisent des recherches dans des
graphes d'tat dont le nombre de sommets ne permet pas de traiter de grands problmes. Il est
certain qu' l'avenir, des approches numratives efficaces du type mthode arborescente ou
programmation dynamique devront tre dfinies. D'autre part une tude de l'efficacit numrique
des heuristiques proposes reste faire. En particulier il serait intressant d'valuer l'efficacit des
algorithmes de liste sur des problmes rptitifs, comme cela a pu tre ralis pour des problmes
d'ordonnancement plus classiques.
Enfin, la complexit des problmes d'ordonnancement rptitifs reste en partie ouverte. S'il
est vraisemblable que la plupart de ceux comportant des contraintes de ressource sont NP-
difficiles, on peut noter que contrairement aux problmes classiques ce n'est pas toujours le cas.
De nouveaux rsultats devraient cependant pouvoir tre drivs de travaux rcents sur des
problmes rptitifs d'atelier, illustrant la ncessit d'une synthse entre les diffrents domaines
d'application jusqu' prsent trs cloisonns.
_______________________________________________________________________________________________
_
PRESENTATION DU GROUPE GOTHA
Jacques CARLIER Professeur l'Universit Technologique de Compigne,
Laboratoire HEUDIASYC (CNRS)
Philippe CHRETIENNE Professeur l'Universit P. et M. Curie,
Laboratoire MASI (CNRS)
Jacques ERSCHLER Professeur l'INSA de Toulouse,
Laboratoire LAAS (CNRS)
Claire HANEN Matre de Confrences l'Universit Paris-Val de Marne,
Laboratoire MASI (CNRS)
Pierre LOPEZ Chercheur au Laboratoire LAAS (CNRS) Toulouse
Attach Temporaire d'Enseignement et de
Recherche l'ENSEEIHT-INP
Laboratoire LAAS (CNRS)
Eric PINSON Matre de Confrences l'Institut de Math. Appl. d'Angers,
Laboratoire CREAM
Marie-Claude PORTMANN Professeur l'Ecole des Mines de Nancy,
Projet SAGEP (INRIA-Lorraine)
Christian PRINS Matre de Confrences l'Institut de Math. Appl. d'Angers,
Laboratoire CREAM
Christian PROUST Matre de Confrences l'Universit de Tours,
Laboratoire d'Informatique
Pierre VILLON Enseignant-Chercheur l'Universit Technologique de
Compigne,
Laboratoire HEUDIASYC (CNRS)
BIBLIOGRAPHIE
[ADAM 88] J.ADAMS, E.BALAS, D.ZAWACK, "The shifting bottleneck procedure for job
[AIKE 88] A. AIKEN, A. NICOLAU. Optimal loop parallelization . Proc. of the SIGPLAN'88
Conf. on Prog. Language Design an Implementation, Atlanta, USA, June 1988 pp.
308-317.
[BAKE 74] K.R. BAKER.Introduction to sequencing and scheduling.John Wiley, 1974.
[BELL 82] R. BELLMAN, A.O. ESOGBUE, I. NABESHIMA, "Mathematical
aspects of
scheduling and applications", Pergamon Press, Oxford, 1982.
[BLAZ 86] J. BLAZEWICZ, CELLARY, R.SLOWINSKI, J.WEGLARZ ."Scheduling under
[BRAT 75] P.BRATLEY, M.FLORIAN, P.ROBILLARD . "Scheduling with earliest start and
[BRUC 81] P.BRUCKER ."Minimizing maximum lateness in a two-machine unit-time job
shop ". Computing 27, 367-370 . 1981.
[CARL 75] J.CARLIER, "Disjonctions dans les Ordonnancements", RAIRO, volume 2, 83-
100, juin 1975.
[CARL 78] J.CARLIER, "Ordonnancements Contraintes Disjonctives", RAIRO, volume 12,
[CARL 82a] J.CARLIER, A.H.G.RINNOOY KAN, "Financing and Scheduling", Oper. Res.
[CARL 82b] J.CARLIER, P.CHRETIENNE, "Les Problmes d'Ordonnancement: un domaine
trs ouvert", RAIRO, 175-217, aot 1982.
[CARL 82c] J.CARLIER, "The One Machine Problem", European Journal of Operational
[CARL 84] J.CARLIER, P.CHRETIENNE, C.GIRAULT, "Modelling Scheduling problems
[CARL 87] J.CARLIER, "Scheduling Jobs with Release Dates and Tails on Identical Machines
to minimize Makespan", European journal of Operational Research, Volume 29, 3,
[CARL 88a] J. CARLIER, P.CHRETIENNE. Les problemes d'ordonnancements.Masson ,
[CARL 88b] J.CARLIER, C.PRINS, "Optimisation des Plans de Trame dans le Systme
[CARL 89a] J.CARLIER, P.CHRETIENNE, "Timed Petri Nets Schedules", Advances in Petri
[CARL 89b] J.CARLIER, E.PINSON, "A Branch and Bound Method for Solving the Job Shop
[CARL 89c] J.CARLIER, "Scheduling under Financial Constraints" , in "Advances in Project
[CARL 90a] J.CARLIER, E.PINSON, "The Use of the Jackson Preemptive Schedule for
Solving the Job Shop Problem" A paratre dans Annals of Operations Research en 1990.
[CARL 90b] J.CARLIER, P.VILLON, "a New Heuristic for the Traveling Salesman Problem",
10 pages, RAIRO en 1990.
[CHO 81] Y.CHO,S.SAHNI, Preemptive scheduling of independent jobs with release and due
dates on open, flow and job shops, Oper. Res. 29, n 3, 1981, p. 511-522.
[CHRE 83] P.CHRETIENNE . Les rseaux de Petri temporiss. Thse d'tat, Universit P.et
[CHRE 85] P.CHRETIENNE, Analyse des rgimes transitoire et permanent d'un graphe
d'Evnements temporis, TSI, vol 4,n1,127-142.
[CHRE 89a] P.CHRETIENNE, The Basic Cyclic Scheduling Problem with Deadlines, Disc.
App. Math., 1989.
[CHRE 89b] P.CHRETIENNE, A Polynomial Algorithm to Optimally Schedule Tasks on
aVirtual Distributed System under Tree-like Precedence Constraints. Eur. Jour. on
Oper. Res, 43,1989,225-230.
[CHRE 90a] P.CHRETIENNE,Task Scheduling with Interprocessor Communication delays,
Eur. Jour.on Oper. Res., paratre en 1990.
[CHRE 90b] P.CHRETIENNE, Complexity of Tree Scheduling with Interprocessor
Communication Delays. Rapport M.A.S.I.,90.5,Fev 90.
[CHRE 91] P.CHRETIENNE. The basic cyclic scheduling problem with deadlines. To be
[CHU 89] C. CHU, M.C. PORTMANN Minimisation de la somme des retards pour les
[CHU 90] C. CHU, M.C. PORTMANN ."Some New Efficient Methods to Solve the
n/1/r
i
/_T
i
Scheduling Problem ".European Journal of Operational Research to appear .
[COFF 76] E.G.COFFMAN, Computer and Job-Shop Scheduling, Wiley, New York,1976
[COHE 85] G.COHEN,D.DUBOIS,J.P.QUADRAT,M.VIOT, A Linear System Theoretic
View of Discrete Event Processes and its Use for Performance Evaluation in
Manufacturing. I.E.E.E. Trans. on Automatic Control, vol 30,210-220.
[COLI 90] J.Y.COLIN,P.CHRETIENNE, C.P.M. Scheduling with Small Interprocessor
Communication Times. Operations research, paratre en 1990.
[CONW 67] R.W.CONWAY, W.L.MAXWELL, L.W.MILLER."Theory of scheduling".
[CYTR 84] R. CYTRON. Compile-time Scheduling and optimization for Asynchronous
[DEME 90] E.DEMEULEMEESTER, W.HERROELEN."A branch and bound procedure for
the multiple constrained resource project scheduling problem". EURO WG-PMS
[DEMP 82] M.A.H.DEMPSTER, J.K.LENSTRA, A.H.G. RINNOOY KAN."Deterministic and
Stochastic scheduling".Reidel Dordrecht. 1982.
[DOGR 79] A.DOGRAMACI et J.SURKIS, 1979, Evaluation of a heuristic for scheduling
[DU 90] J. DU, J.Y.T. LEUNG, 1990, Minimizing total tardiness on one machine is N.P.
[ELMA 74] S.E.ELMAGHRABY, S.H.PARK . "Scheduling jobs on a number of identical
[EISE 88] C. EISENBEIS. Optimization of Horizontal microcode generation for Loop
[ERSC 76a] J. ERSCHLER, Analyse sous contraintes et aide la dcision pour certains
problmes d'ordonnancement, Thse de Doctorat d'tat, Universit Paul Sabatier, Toulouse,
[ERSC 76b] J. ERSCHLER, F. ROUBELLAT and J.P. VERNHES, Finding some essential
[ERSC 79] J. ERSCHLER, G. FONTAN, F. ROUBELLAT, Potentiels sur un graphe non
[ERSC 80] J. ERSCHLER, F. ROUBELLAT and J.P. VERNHES, Characterizing the set of
[ERSC 83] J. ERSCHLER, G. FONTAN, C. MERCE, F. ROUBELLAT, A new dominance
[ERSC 91] J. ERSCHLER, P. LOPEZ, C. THURIOT, Raisonnement temporel
sous
contraintes de ressource et problmes d'ordonnancement".
Revue d'intelligence
artificielle, vol.5, n

3, 1991.
[ESQU 87] P. ESQUIROL, Rgles et processus d'infrence pour l'aide l'ordonnancement de
[FREN 82] S.FRENCH. "Sequencing and scheduling: an introduction to the mathematics of
the job shop". Horwood, Chichester. 1982.
[GARC 85] H. GARCIA, J.M. PROTH. Group technology in production management : the
[GARC 86] H. GARCIA , J.M. PROTH. A new cross-decomposition algorithm : the GPM.
[GARE 79] M.R.GAREY, D.S.JOHNSON."Computers and intractability: a guide to the theory
of NP-completeness". Freeman, San Francisco. 1979.
[GILM 64] P.C. GILMORE , R.E. GOMORY . "Sequencing a one-state variable machine: a
[GONZ 76] T.GONZALEZ,S.SAHNI, Open-shop scheduling to minimize finish time,
J.A.C.M., 23, n 4, 1976, p.665-679.
[GRAB 82] J.GRABOWSKI."A new algorithm of solving the flow shop
[GRAH 79] R.L. GRAHAM, E.L. LAWLER, J.K. LENSTRA, A.H.G. RINNOOY
[HANE 87] C. HANEN. Problmes d'ordonnancement des architectures pipelines :
modlisation, optimisation, algorithmes. Thse d'universit, Rapport MASI n 193, Univ. Paris
VI, September 1987.
[HANE 89] C. HANEN. Microprogramming using timed Petri nets.
[HANE 90] C. HANEN. Les tables de rservation numriques : un outil pour la rsolution de
[HILL 89] H.P. HILLION, J.M. PROTH. Performance evaluation of Job-shop Systems using
[JACK 55] J.R. JACKSON. Scheduling a production line to minimize maximum tardiness .
[JOHN 54] S.M.JOHNSON : Optimal two- and three- stage production schedules with setup
[KOGG 81] P. M. KOGGE. The architecture of Pipelined computers. New York, Mc Graw
Hill, 1981.
[KUSI 85a] A. KUSIAK, A. VANNELLI, K.R. KUMAR. Grouping problem in scheduling
[KUSI 85b] A. KUSIAK. The part families problem in flexible manufacturing systems. Annals
of Operation Research, Vol. 3, pp 279-300, 1985
[LAM 87] M. LAM. A systolic array Optimizing compiler. PhD. Dissertation, Carnegie
Mellon University, 1987.
[LAWL 86] The travelling salesman problem ; ouvrage collectif dit par
[LENS 77] J.K.LENSTRA."Sequencing by enumerative methods".Math. Cent. tracts 69.
Centre for mathematical and computer science, Amsterdam.1977.
[LIN 71] S.LIN , B.W. KERNIGHAN . An effective heuristic algorithm for the travelling
[MCMA 75] G.B.MACMAHON, B.FLORIAN."On scheduling with ready times and due dates
to minimize maximum lateness ". Oper Res Soc 14-15. 1969.
[MATS 88] H.MATSUO. "Cyclic sequencing problems in the two-machine permutation flow
[MONM 83] C.L.MONMA, A.H.G. RINNOOY KAN."A concise survey of efficiently solvable
special cases of the permutation flow-shop problem". RAIRO 17, 105-109. 1983.
[MUNI 90] A.MUNIER. Rsolution d'un problme d'ordonnancement cyclique itrations
[PADB 86] M. PADBERG , G. RINALDI . Optimization of a 532-city symmetric travelling
[PARK 77] R.G. PARKER, R.H. DEANE et R.A. HOLMES, 1977, On the case of a vehicle
[PATE 76] J. H. PATEL, E. S. DAVIDSON. "Improving the Throughput of a pipeline by
[PINS 88] E. PINSON, 1988, "Le Problme de Job shop". Thse de doctorat de l'Universit
[PORT 88] M.C. PORTMANN. Mthodes de dcomposition spatiales et temporelles en
[POTT 87] C.N. POTTS, L.N. VAN WASSENHOVE (1987) Dynamic Programming and
[PRIN 88] C. PRINS, Problmes d'optimisation de ressources dans les systmes de
[PROU 87] C. PROUST, M. DROGOU, J-M. FOUCHER et E. FOUCHEYRAND, Une
"Systmes de Production",INRIA(Paris),1987,pp. 125-141.
[PROU 89a] C. PROUST, Influence des ides de S.M. Johnson sur la rsolution de problmes
[PROU 89b] C. PROUST, J-C. BILLAULT, A. LE SAUX et A-M. SALAUN, Un logiciel de
[PROU 90] C. PROUST,J. BIJAOUI et J.N.D. GUPTA, A propos de la rsolution de
problmes d'ordonnancement de type n/m/F,Snsd,Rnsd/Cmax, 2me Colloque International
[PROU 91] C. PROUST, A. FERREIRA et J. BIJAOUI, Le paradoxe de l'Interprogrammation
: la diversit des logiciels au service d'une intgration efficace, 3me Congrs
[RINN 76] A.H.G.RINNOOY KAN. Machine sequencing problems: Classification,
complexity and computation . Nijhoff, The Hague, 1976
[ROUN 88] R. ROUNDY. Cyclic schedules for job shops with identical jobs.
School of Operation research and industrial engineering, Cornell University, T.R.
n 766, July 1988.
[ROY 70] B. ROY, Algbre moderne et thorie des graphes, tome II. Dunod, Paris, 1970.
[SERA 89] P. SERAFINI, W. UKOVICH. A mathematical model for periodic scheduling
[SLOW 82] R. SLOWINSKI, Multiobjective Network Scheduling with Efficient Use of
[SMIT 56] W.E. SMITH.Various optimizers for single-stage production . Nav. Res. Log.
[SRIN 71] V. SRINIVASAN. A hybrid algorithm for the one-machine sequencing problem to
minimize total tardiness. Nav. Res. Log. Quart., Vol. 18, n 3, pp 317-327, 1971
[SUMI 87] R.T. SUMICHRAST et J.R. BAKER , 1987, Scheduling parallel processors : an
[TALB 78] F.B.TALBOT, J.H.PATTERSON." An efficient integer programming with
network cuts for solving resources constrained scheduling problems ".Man. Sc. 245,

Você também pode gostar