Ordonnancement des systèmes de production
multi-ressources avec la prise en compte de blocage
Bérénice Camargo Damasceno
To cite this version:
Bérénice Camargo Damasceno. Ordonnancement des systèmes de production multi-ressources avec
la prise en compte de blocage. Autre. Université Paul Verlaine - Metz, 1999. Français. NNT :
1999METZ003S. tel-01775787
HAL Id: tel-01775787
https://hal.univ-lorraine.fr/tel-01775787
Submitted on 24 Apr 2018
HAL is a multi-disciplinary open access
archive for the deposit and dissemination of scientific research documents, whether they are published or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.
L’archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d’enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.
AVERTISSEMENT
Ce document est le fruit d'un long travail approuvé par le jury de
soutenance et mis à disposition de l'ensemble de la
communauté universitaire élargie.
Il est soumis à la propriété intellectuelle de l'auteur. Ceci
implique une obligation de citation et de référencement lors de
l’utilisation de ce document.
D'autre part, toute contrefaçon, plagiat, reproduction
encourt une poursuite pénale.
illicite
Contact : ddoc-theses-contact@univ-lorraine.fr
LIENS
Code de la Propriété Intellectuelle. articles L 122. 4
Code de la Propriété Intellectuelle. articles L 335.2- L 335.10
http://www.cfcopies.com/V2/leg/leg_droi.php
http://www.culture.gouv.fr/culture/infos-pratiques/droits/protection.htm
Année1999
No d'ordre :
THESE
présentée
à
L'UNIVERSITEDE METZ,FACULTEDESSCIENCES
UFRMATHEMATIQUES,INFORMATIQUE,MECANIQUE
pour obtenirle titre de
DOCTEUR
Spécialité: Sciences
de I'Ingénieur
Mention : Automatique
par
BereniceCAMARGO DAMASCENO
ORDONNANCEMENTDES SYSTEMESDE
PRODUCTION MULTI-RESSOURCESAVEC LA
PRISEEN COMPTE DE BLOCAGE
Soutenuele 4 mars 1999,devantle Jury :
M. Christian
PROUST
M. PierreBAPTISTE
M. Stephane
DAUZERE-PERES
M. Jean-Claude
GENTINA
M. XiaolanXIE
M. YvesDALLERY
M. LuisA. PEREIM deOLIVEIM
Président
Professeur
Rapporteur
Professeur
Rapporteur
MaîtreAssist.
à I'EcoledeMines,HDR
Rapporteur
Professeur
Directeur
dethèse:ChargédeRecherche
à I'INRIA,HDR
Examinateur : DirecteurdeRecherche
au CNRS
Examinateur : Professeur
lllllllilllll
illtililltill
ililrililr
illfi
ililtililtil]t
B I B L ] O I H F O UU
EN I V E B S I T A I RDEE M E T Z
Thèsepr,
dustrielet de ProductionMécanique
urs de Metz -
o22 293112 B
!
r u ,| ë
/
/'-l
._\1"
!\
Année1999
No d'ordre :
THESE
présentée
à
L'UNIVERSITE DE METZ,FACULTE DESSCIENCES
UFR MATHEMATIQUES, INFORMATIQUE, MECANIQUE
pour obtenirIe titre de
DOCTEUR
tHllHrvEn$Î#il
43r
BtBLtfirHfl
','iiiTfrg'ffiÏ!"
;iC$[*':::{
"T ;
n"wtl,!Jg33c,l/ t
Spécialité: Sciencesde I'Ingénieur
Mention: Automatique
par
BereniceCAMARGO DAMASCENO
ORDONNANCEMENTDES SYSTEMESDE
PRODUCTIONMULTI.RESSOURCESAVEC LA
PRISEEN COMPTE DE BLOCAGE
Soutenuele 4 mars 1999,devant le Jury :
M. Christian
PROUST
Président
Professeur
M. PierreBAPTISTE
Rapporteur
Professeur
M. Stephane
DAUZERE-PERES Rapporteur
MaîtreAssist.
à I'Ecole
deMines.HDR
M. Jean-Claude
GENTINA
Rapporteur
Professeur
M. XiaolanXIE
Directeur
dethèseChargédeRecherche
à I'INRIA,HDR
M. YvesDALLERY
Examinateur Directeur
deRecherche
auCNRS
M. LuisA. PEREIRAdeOLIVEIRA Examinateur Professeur
Thèsepréparéeau seindu Laboratoirede GénieIndustrielet de ProductionMécanique
- EcoleNationaled'Ingénieursde Metz-
A ma mère
BenedictaCamargo Damasceno
pour son amour et son exisfence
A ma famille
pour sa présence
Remerciements
Les remerciements
ont leur place quand nousso/n/nesentourésde personnesamiesqui
grâce à leur soutien,leurs encouragements,
leur compétence,leur "présence"ont nous permis
d'arriverà la fin de notretravail.C'estexactementmon cas. Je souhaiteremercierchacunet chacune
qui m'ontaidéeà finaliserma thèse.J'espêreque les mots,même s'ils
de I'ensemble
des personnes
pour exprimermes sentiments,
pourrontmontrerque tous et toutesque je vais
sont insuffisants
mentionnerci-dessous(et éventuellement,
les personnesqui, faute de mémoirene seront pas Ià
explicitement)
auronttoujoursuneplacedansmes souvenirs
et dansmoncæur.
D'abord,ie tiensà remercierceuxqui m'ontfaitl'honneurde fairepaftiede monjury de thèse:
t
MonsieurPierre Baptiste,Professeurà l'Universitéde Besançon: qu'iltrouveicitoute ma
reconnaissanced'avoir accepté la lourde tâche d'être rapporteur. Je le remercie
pour lesdlscussions
également
pendantla phasefinalede montravail.
t
MonsieurYvesDallery,Directeurde rechercheau CNRSau Laboratoired'lnformatique
de
Paris6 à I'Université
Fierreet MarieCuie, qui a acceptéde pafticiperà cejury.
.
MonsieurStephaneDauzère-Perez,
MaîtreAssistanfà I'Ecolede Minesde Nantes,qui a
accepté d'être rappofteur.Je le remercie égalementpour son excellenttravait de
recherche,
sa fhèseef ses articles,
quim'ontbeaucoupinspirée
et aidée.
.
MonsieurJean-Claude
Gentina,Directeurde l'EcoleCentralede Lilte,qui a acceptêd'être
rapporteur.
pourle tempsqu'ila pu consacrer
Je le remercie
à cettelourdetâche.
.
MonsieurChristianProust,Professeurde l'lJniversitéde Tourset Directeurde I'Ecole
d'lngénieursen lnformatiquepour l'lndustrieà I'lJniversitéde Tours,qui a acceptéde
présidercejury etje le remerciepour sa genfll/esseet l'intérêtqu'ila portéà mon travait.
Je ne sauraisoublierici MonsieurXiaolanXie,Chargéde Recherche
à t'tNRtAet directeurde
ma thèse Mes remerciementsseront touioursrnsuffisanfs.Je le remerciepour avoir apporté sa
compêtencedans le domaineoÙs'msêrecefte fhèse.Je le remercieégalementpour tout te précieux
tempsqu'ilm'aconsacré,ses consel/s
et sa confiance.Cettethèseestarrivéeâ sa conclus
ion grâceà
sonaideindéniable.Je le remerciebeaucoup.
Je penseaussi â MonsieurJean-MarieProth,Directeurde Rechercheà t'lNRtAqui m'a
accueillieau seindu proietSAGEP.Je penseégalementâ fous ceuxqui ont faitpaftie de ce projetet
ChristelWemmertpour sonamitiéef son soutien.
ie remercietoutpafticulièrement
Je remercieMonsieurPiene Padilla,Directeurde l'Ecole Nationated'lngénieursde Metz
(ENIM),pourm'avoiraccueilliedansson établissement,
pour sonencouragement,
sa présenceef son
extrêmegentfl/esse.
Je remercieégalementMonsieurFrançoisVernadat,Professeur
à I'lJniversité
de Metz,pour
m'avoiraccueillie
au seindu Laboratoire
de Génielndustriel
et Production
(LGtPM)et pour
Mécanique
avoirlue minutieusement
cettefhêse.
Je tiensà remercieraussl/es chercheursdu laboratoireLGIPMet, plusspécialementBrigitte
Finel.
à Madame Marie-Noëlle
Je tiens tout spécialementà exp er toute ma reconnaissance
pour
avoir acceptéde faire des
HonnerT,
Enseignanteà la Facultédes Leffresà l'Universitéde Metz,
correctionsgrammaticalesef ofthographiquesdans cette thèse et pour m'avoir apporté sa
connaissance
de la languefrançaise.
Je remercieaussl /es responsables
de I'Ecole"EscolaTécnicaEstadualRubensde Faria e
Souza" (ETERFS),de le Centre "Centro Estadualde EducaçâoTécnolôgicaPaula Souza"
(CEETEPS)et de le Conseil"ConselhoNacionalde Desenvolvimento
Cientificoe Tecnolôgico"Brésil (CNPq)pour avoirrendu possiblemon séjouren France.
ll existedes personnespafticulièresqui grâce à leur présence,même à distance,nous
soutiennentet nous aidentà continuernotre travail.Pour moi, il y a d'un côté Anirio Sa//esFilho,un
ami qui,mêmes'/ est restéau Brésil,a toujoursété à mes côtés.De l'autreHamidHamouchequi a
étéprésenttoutau longde monséjouren France.
Je réserveune place spécialedans mes remerciements
aux amis, "nonmoinsspéciaux",
Giuseppe
Berio,FabriceChauvet,NevineHaffez,MouniraHazallahet CathyMichelpourleursoutien
et leuramitié.
Je tienstoutspécialement
à exprimerde tendrespenséesà ReginaCéliaFarrabottiet à mon
frèreDeoclécioDamascenopour m'avoirapportéleur aide indispensable
pour rendremon séjourici
posslb/e.
Peu imporiel'ordrede mes remerciemenfs.Ious ceux quej'ai nommé(ef fous ceux que je
n'ai pas pu nommerpar manquede place) m'ontapporté,à un momentou un autre,un soutien
importantet décisif.
TABLE DES MATIERES
CHAPITREI: ORDONNANCEMENTDESSYSTEMESFLEXIBLESDE PRODUCTION:
ETAT DE L'ART
I.I INTRODUCTION AUX PROBIÈrUPS D'ORDONNANCEMENT
l . l . 2 L E s y s r È v pD Ep R o D U C T T.o. .N. . . . . . . . . . . . .
I . 1 . 3L A c E S T r o D
N Ep R o D U C T r o N . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
L l.4 ORDOÏ.TNANCEM
NATp R o D u c r r o N . . . . . . . . . . .
DEEL
I.2 REPRÉSENTATION DES PROBLÈTVTPS
D'ORDONNANCEMENT.................
................4
..................4
. . . . . . . . . . . . . .5. . . . .
. . . . . . . . . . . . . . . . . . . . .g. . . . . .
........,.....II
I . 2 . 1R E P R E S E N T A TnTuopNn o s L È v rp A RL E Sc R A p H EPs o T E N T T E L S - T Â c u r s . . . . . . . . . .
. . . . . . . . . . . . . .I. .I. .
I.2.2 REPRESENTATIoT.{
pARDIAGRAMME
D'u{Ë soLUTIoNDUpRosr-Èr\lE
D'oRDoNNANCEMENT
DEGANTT....l3
L3 COMPLEXITÉ DES PROBLÈMES D'ORDONNANCEIV1ENT..................
.......................
r4
I.4 MÉTHODES DE RÉSOLUTION DES PROBLÈMESD'ORDONNANCEMENT................................I5
r . s T E C H N I Q U E S C L A S S I Q U E SD ' O R D O N N A N C E M E N T . . . . . . . . . . . . . . .
L 5 . l P n o c É n u R EpSA RS É p e n a r r o H
er Eve1ua1oN................
l . S . 2 L e P R o c R A M M A r r oLNr N É A r R E
i.5.3 PRocRAMMATtoN
DyNAMreuE.
I . 5 . 4M É r H o D EH
SE U R r s r r e u E S . . . . . . . . . . . . . . .
1.5.4.1
M é t h o d ep a r M a c h i n eG o u l o t . . . . . .
1.54.2
thodepar Permutation
L 5 . 5 . 1M é t h o d e sd e l a R e l a x a t i oLna g r a n g i e n n e . . . ........ . . . . . .
I 5.5.2Méthodesdu recuit simulé
I553MéthodeTabou...
1.55 4 MéthodesGënétiques...
I . 6 L E S R É S E A U X D E P E T R I E T L E S S Y S T È M E SD E P R O D U C T I O N
I . 6 . 2Q u E L e u E so É p r N r r r o NDs' L . rRND p . . . . . . . . . . . . .
I . 6 . 4L E SR o P r r L E SS y s r È M ED
SEp R o D U C T r o N . . . . . . . . .
I . 7 O R D O N N A N C E M E N T D E S Y S T È M E SD E P R O D U C T I O N . . . . . . . . . . . . . .
..............17
........ll
. . . . . .1. 9
.......20
......................21
. . . . . . . . . . . . .2. 2
...... 23
. . . . . . . . . . . . . .2. .4.
.... .... . 27
.........2g
...... 30
........3I
...........32
....................36
.........38
L7.l JoB-sHoPs
HYBRTDES
AVEcopÉRATToNS
À REssouRcES
MULTIpLES
ETFLEXTBTLTTÉ
ne nrssouncEs.....39
I . 7 . 2O R D o N N A N C E M Es N
T SB L o c A c ED ' u NA T E L T EARU T o M A T T s É . . . . . . . . . . . . . . . . . . .
AN
........40
I . 7 . 3L ' o R D o N N A N c E M EDNETSR É s E A UDXEp E T z up A RR E c H E R c HEEM p r R r e u E . . . . . . . . . . . . . . . . , . .
......40
L 7 . 4 L E L | E NE N T R E
L A R E C H E R CoHPEÉ M T T O N N E LELTEL E SR É s E A UD
x Ep E T R r . . . . . . .
................42
I.7.5 "Holsr scHEDULrNc"
ou oRDoNNANCEMENT
DERoBorsDEMANUTENTToN
ENGALVANopLASïE........43
L 7 . 6 L E Ss y s r È n aseN o Nc y c l t e u E s o u o N - z l r uEr r L E SR D p . . . . . . . . . . . . . .
...................44
] . 7 . 7O R D o N N A N C E M ESN
ATN S
A T T E N TEETS A N S
EN-COURS.....
,.........46
I.7.8 ORDoI.TNANCEMENT
DEsCELLULEs
nosorlsÉEs
..........4j
I.8 DÉTECTION, PRÉVENTION, ÉT,ITT,TIX,tTION
ET CORRECTION DES BLOCAGES ,,..................47
AVEC BLOCAGE: DEFINITIONET
CHAPITREII: JOB-SHOPSMULTI-RESSOURCES
Éruon DELA coMPLEXrrÉ
II.2 JOB-SHOPSMULTI-RESSOURCES
AVEC BLOCAGEET LEURORDONNANCEMENT..........5I
II.3 CLASSIFICATIONDESJOB-SHOPSMULTI-RESSOURCES
AVEC BLOCAGE..........................55
II.4 MODÉLISATIONDES SYSTÈMESINDUSTRIELS
..............59
II.5 ETUDE DE LA COMPLEXTTÉ..............
...............61
II.5.2CoMplexrÉou pnoelÈN4r
D'ORDONNANCEMENT........
IL 5.2.I Castriviaux.
11.5.2.2
Casavecopérations
2R......
......
11.5.2.3
Systèmes
à Ressources
Unitaires
etsqnsopérations
2R................
1L5.2.1
Systèmes
à Ressources
Multiples......
..........63
.......64
.................64
.............69
..................74
CHAPITREIII : ORDONNANCEMENTDESSYSTÈMESÀ RNSSOURCES
UNITAIRES
III.2 REFORMULATION DU PROBLÈME O'ONDONNANCEMENT DES OPÉRATIONS AVEC
III.3 REPRÉSENTATION À L'AIDE DE RDP ET VÉRIFICATION DE BLOCAGE..............................
82
I I I . 3 . l .M o o É L r s e r l o N
D E SS R UÀ L ' A I D E
n e sR o p . . . . . . .
I I l . 3 . 2L e v É n r n r c e r r o N
D EB L o c A c Ep o u Rt r NÉ T A TD o N N É . . . . . . . . . .
I I I . 3 . 3F A r s A e r l r r Éo ' L T N O R D o N N A N C E M E N T o o N N É . . . . . . . . . .
III 3 3 I Cas oit les séquencesd'entréedansles ressourcessont connues
IIL3 3 2 Cas où seulesles datesde débutsont connltes.
rrr.4MÉTHODES DE RÉSOLUTTON..........
I I I . 4 . I P R E S E N T A T IDOENSM E T H O D E
HSE U R I S T I Q U E, S
..........
I I I 4 1 I H e u r i s t i q u 1e . . . . .
III 4 L2 Heuristique2 ...
III.4 I 3 Optimisationde l'ordre des trovatu
I I I 4 2 P R o B L È v pÀs u N T R A V A T L
III 4.2 I Formulation du problème à un travail .
I I I 4 2 2 U n em é t h o d e
p a r r e c h e r c h e x h a u s t i v.e. . .
III.4.2 3 Une méthodePrograntntation
Dynanique.....
Relation entre lesproblèmesde décisionet le problèmeà un lr@ail
Résolutiondesproblèntesde décision
I I I . 4 . 3U N EM É r H o D EH E U R t s r r e uFEo N D ÉsEu RL E Ss y s r È M E sSr M I L E S . . . . . . . .
1 l l . 5 . lP r u s eE Nc o M p r ED E So p É R A r r o N2S
D..........
I I I , 5 . 2P R I S E Nc o M P T ED ' A U T R ECSR I T È R E S ,
l l l 5 . 3G e v r r l E N
s o NL I N É A T R E S
ilr.6 RÉSULTATS NUMÉRTQUES...............,
. . . . . . . . . . . . . .g. 2
....
. . . . . . . . . . . . . . . . . .g. 3. . . .
. .........g7
.. ........ . . 87
.. .. Bg
...............90
. . . . . . .9. 0
. . . .. . . . . . . 9 1
93
. .... . . 93
............94
94
. . . .. . . . . . . . . . . . . . 9 5
. ... . 98
. 100
.........102
. . . . . . . . . . . . .1. 0
. .4
. . . . . . .1. 0 6
. . . . . . . . .I.O
. 7
. . . . . . . . . . . .. . 1 0 7
. . . . . . . . . .r.0. 8
III.7 CONCLUSION........
CHAPITRE IV : ORDONNANCEMENTDES SYSTÈMESÀ RNSSOUNCES
MULTIPLES
IV.2 REFORMULATIONDU PROBLÈMXO'OmONNANCEMENT............
...................120
IV.3 REPRÉSENTATION
À L'AIDE DE RDP ET VÉRIFICATIONDE BLOCAGE................,...........124
IV.3.1MoDELrsATtoN
DEsJoB-sHops
MRBÀ L'nrDE
DES
RDp.......
.....................124
pouRuN Érer oolrNÉ
IV.3.3Le vÉzuHceloNDEBLocAcE
..........126
IV.3.4FArsABrr-rrÉ
o'uNoRDoNNANCEMENT
oor'rNË..........
.............
l2g
1V.3.4I cas oit la séquence
d'entrée
danschaquetypederessource
eslconnue....
.......................
I2g
IV.3 4 2 Casoit l'affectationdesressources
aux opérationset la séquence
d'entréedanschaqueressource
s o n dt o n n é e s
. . . . . . . . . . . . . .1. .3. 4. . .
rv.4 MÉTHODESDE RÉSOLUTION..............
IV.4.1UNEMÉrHoDE
coNsERvATzucE.................
IV.4.2UNEvÉrHoopoprrMALE
LocA1E.,.......
1V.4.2.1
Présentation
de la méthode
1V.4.4.2
Problème
à ttntravail..
IV.4.3UNEMETHoDE
FONDÉE
SUR
LESsysrÈvEs
SIMPLES
.........136
......13:.
...........
l4l
........I4l
......................
l4l
.............
143
IV.s RÉSULTATSNUMÉRIeUES............,..
I V . 5 . 2D ' A U r R EESX E M P L. E
. .S
................
.............14s
. . . . . . . . . . . . . .1. .4.6. . .
CHAPITRE V : LE PROBLÈME D'ORDONNANCEMENTAVEC MOYENS DE
TRANSPORT
V.2 FORMULATIONDU PROBLÈrrIrO'OROONNANCEMENT............
V.2.2FoRN,ruLATtoN
DUPRoBLÈN{E..........
v.3 RELAXATIONDU PROBLÈUE...........
V . 3 . IP R O B L
V 3 . 2P
. RoBLÈvpouel....
\/.4 MÉTHODOLOGTE
DE RÉSOLUTrON..........
v . 4 . 1R E S O L U TD
TU
OPNR O B L ÈR
MEEL A X É . . . . . . . .
V . 4 . 2R E S o L U T IDoU
NP R o B L È M
EA 1 . . . . . . . . . . . .
DU
V.5CONSTRUCTION
D'UN ORDONNANCEMENT
RÉALISABLE
V 5.1PRoGRANJMATIoN
DyNAN,ileuE.
V . 5 . 2A L c o RftH r \ tD
E EL r s r 8 . . . . . . . . . . . .
.....I55
.................
156
.............
rs7
........15g
....1s9
. . . . . . . . . . . . . .1. .6. 0. . .
.................162
............166
.........167
.,....16:'
V.6 RÉSULTATSNUMÉRIQUES
V.7 VERS UNE APPROCHEINTEGREE
CONCLUSIONGÉNÉRALE
......175
177
LISTE DESFIGURES
CHAPITRE I : ORDONNANCEMENTDES SYSTEMESFLEXIBLES DE PRODUCTION:
ETAT DE L'ART
DELApRoDUcïoN
..........
FrcunrI.l : PoslrroN
FrcuREL2 : TypolocrEDESysrÈuEsDEPRoDUcT1oN...............,
................
4
.........
5
FIGURTI,3 : INTERECTIONS
ENTRESYSTÈME
DEGESTION,
DEPRODUCTION
SYSTÈME
ETEWIRONNEMENT........,...
6
F r c u R EI . 4 : S T R U c T U RDEÉ c r s r o N N E LÀL T
E R o l sN r v E A U x . . . . . . . . . . . . . . . . . .
.......................7
PoTENTIEL-TÂcHEs
FIGURE
I.5 : UN GRAPHE
.............,......I2
FIGURTI.6 : DIaCnnvME DEGANTTDEL'oRDo}.T!ANCEMENT
DELA TABLEI.3,................
..,......,...
I3
FrcuREI.8 : EveluertoN DESpERFoRMANCES
D'IJNsysrÈug......
FIGURE
FIGURE
I,I O : TnaNSITIoNS
DEsoURcEETDEPUITS..
F r c u R EI . l I : R o P D ' u NT R A V A TDLED E U Xo p É R e r r o N s .
FrcuREI.l2 : RDPP-revporusÉou sysrÈve À RrssouRcesMULTTPLES.
........3l
..,....3 5
. . . . . . . . . . . . . . . . . .3.7. . . .
.................
3g
CHAPITRE II : JOB-SHOPS MULTI-RESSOURCES AVEC BLOCAGE : OÉTINITTOX NT
ÉruoE DELA coMpLEXrrÉ
FICURE
II.I
FIGURE
II.2
FIGURE
II.3
FIGURE
II.4
FIGURE
II.5
FIGURE
II.6
FIGURE
II.7
F I G U R IEI . 8
F I G U R IEI . 9
U N ES I T U A T I oD
NEB L o C A GD
E' L No R D O N N A N C E MD
E 'NLT
IN
J o B - s H oM
P R B . . . . . . . . , , . . . . . , . . . . . . , . .5. .5. . . . . .
O R D o N N A N C E M EI N
NITT I A L
D E sD E U XT R A V A UIXE TJ . . . , . . . . , . . . .
, . . . . . . . . .6. .6.
ORDoI.TNANCEMENT
DESDEUXTRAVAUX
: T, ETT, (ces l)..........
..........66
ORDOI.TNANCEMENT
DESDEUXTMVAUX: T, ETT, (cAs 2)..........
.........6j
OnooxNaNcEMENT
DEsDEUXTRAVAUX
: T, ETT, (cas 5)..........
..........
6g
UN ORDONNANCEMENT
ou pnoslÈN4eI/R,,L,/C**...
.......69
O n o o x N n N c E M E NoT' L r NS R U
....................72
O R D o N N A N C E M EDNUTc A SM : 2 N É 2 l l R , * 1 = I . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . .7. 3
..
o R o o r . w a N c E M E N T D U cM
AS
=2Nf2l IR,* I= I AvEclnRÉpaRtttroNDESopÉnqrroNssuRR,..74
F I G U RI IE. I O; O R D o x n - . q , n ' c E Nc4AENNoTN I e u Ep o u RH = 2 . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .7. 5
....
FtcunrII.l l : O R n o n N e , x c E M EcNATN o N l e u pEo u RH : 3 . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .7. 5. . . . .
F I C U RI IE. I 2 : O R o o N N e N C E M EDNUTc A Sv = l / H = 2 N r < 2 . . . . . . . . . . . . . . . . . . .
...............7
. .g. . .
CHAPITREIII : ORDONNANCEMENTDESSYSTÈMESÀ NTSSOURCES
UNITAIRES
F l c u R EI I I . I : U N r s l r u A T r o rD. \EB L o C A G E
. . . . . . . . . . . . . . . .g. .l . . . .
F r c u R -IEI I . 2 : L E t ' l o n È l r R D PD ' u NT R A V A I D
L ED E U Xo p E R A T t o N S .
..................g
. .3. . . .
F r c u R EI I I . 3 : L e v o o È l e R o P o ' u r NS R U . . .
g
. . . . . . . . . . .. . . . . 3
"RETENIR
FtcuRr 111.4
peR
: UNERELATIoN
ETATTENDRE"
où LESpLAcES
DERESsouRcES
soNTnepRÉseHrÉes
D E SD O U B LCEE R C L E S
. . . . . . . . . . . . . . . . . . .g. 5. . . . . .
paRtncÉE...................
FlcunrIII.5 : UNr RtpRÉseHrerroN
t(DPD'IJNE
REssouRce
FTGURE
IIL6 : UNvooÈle RoPevecsÉqueNces
o'rHrnÉe
......
g6
.....................
gg
...........
pARL'HEURrsrreuE
FIGURE
IIL7 : Lr. DIAcMMME DEGANTTD'uNoRDoI.TNANcEMENT
coNSTRUrr
I.........
.......92
FIGUREIII.8 : DINCNNMMEDE GNNTTDE L'ORDONNANCEMENT
oomlÉ DANSLA TABLEIII.5
...... I I I
CHAPITRE IV : ORDONNANCEMENTDESSYSTÈMESÀ NTSSOUNCES
MULTIPLES
F I G U R ]EV . I
FICURE
IV.2
F I G U R IEV . 3
*r33r:Hf
3:HH:tt*Ri:.;:1;àii:::::::::
:::::: : :::: iii
.........127
MRB.........
D'uNJoB-sHop
FIGUREIV,4 UNÉTAT
........129
DE
REssouRcE...................
TYPE
cFIAQUE
DANs
D'ENrRII;E
FIGUREIV.5 MooÉlrseloN DEssÉeusNces
............
130
n'ENtnÉE..
r"rooÈr-g
RDP
coMpLET
AvEc
Les
sÉeueNcEs
IV.6
UN
FIGURE
D'EbffRIiE
D'UNE
TRANSlloN............
FrcunrIV,7 LEspLAcEs
D'r.rN
JoB-sHop
MRB ENUNSRU........
FrcunrIV.8 TRANSFoRMATToN
..........132
.................
135
DEsRESsouRcES...............
136
ETLESsÉeugxcasD'ENTRÉe
FIGUREIV.9 Le vooÈlr RDPAvEcL'AFFEcrAroN
.........
138
DANS
m UÉrHOpe
CONSERVATRICE................
FIGURE
IV.IO : AFFECTATTON
PARL'HEURISTIQUE
I............I40
OCGENTTD'UNORDO}.INANCEMENT
CONSTRUIT
FIGURE
IV.I l : LE DIAGRAMUP
LATABLE
IV.6.........................
oottNÉDANS
147
IV.I I : Dncnnuve pe GeNrr DEL'oRDo}.INANCEMENT
FIGURE
CHAPITRE
V : LE PROBLÈME D'ORDONNANCEMENT AVEC MOYENS DE
TRANSPORT
V. I : Counseou coûr nrmxÉ
FrcuRE
LA SOLUTION
oE L'EXEMPLE
I.,......,.....
FIGURE
V.2: DncneMME DEGaNrr nrpnÉSENTRI'IT
t64
171
GLOSSAIREDESNOTATIONSUTILISEES
Les notationsutiliséesdanscettethèsesont définiesbrièvementci-dessous.
m : le nombrede types de ressources
M : le nombrede types de machines
L : le nombredesAGV
R: { I ,2, ...,r, ...,ffi} : I'ensemble
destypesde ressources
H, : le nombrede ressourcesdu type r
H : [H,, H2,...,H,, ..., H,]t : le vecteurdu nombrede ressources
n : le nombrede travaux
J: {J,, J2,...,{, ...,Jn}: I'ensemble
destravaux
Otrou (,k) : la k''n'opérationdu travailj
d'opérations
du travailj
{Q,, O,r,"., Qu, ...,Q*t} : la séquence
\
: le nombred'opérationsdu travail j
l1u : le nombrede ressourcesdu type r nécessaires
pour I'opération(,k). Evidement,l1r s H,
\u
\r
:
de I'opération(,k)
hu', \*r, ...,hir, ...,\o"] : le vecteurde besoinsen ressources
: {r e R /
pour I'opération(,k)
\r., > 0} : I'ensembledestypesde ressourcesnécessaires
Miu e U,2, .. ., M) : la machineutiliséepour I'opération(,k)
de I'opération
Pir le tempsopératoire
fi,k)
S:u la datededébutde I'opération
(j,k)
ciu la datede fin de I'opération
(,k)
C.,: la datede fin du travailj
d, : la date échuedu travail j
H : I'horizondetemps(notationutiliséedansle chapitreV)
J, = {(\', \"Pi') , (Sr, \r,P:r) , .'., (\*.;, \*i,Pi*i)} : la gammede fabricationd'un travailj
d'unjob-shopMRB
I* : le nombrede ressources
pour I'opération(,k) qui sont retenuesdansla
nécessaires
périodet par lestravauxdéjàordonnancés
B(k,t) : I'indicateurpour vérifierla possibilitéde passerde l'opérationfi,k) à I'opération
C, k+l) sansrisquede blocageaudébutde la périodet
J : le critèreà optimiser
w.,: la pondérationdu travailj
T, : le retarddu travailj, définipar : ! = max(O,C;-{)
l{x}={
It si x estvraie,
l 0 si n o n .
LISTE DESSIGLESUTILISEES
Les siglesutiliséesdansce mémoire sontdéfiniesbrièvementci-dessous.
AGV : AutomatedGuided Vehicles
Job-shopsMRB : Job-shopsMulti-RessourcesavecBlocage
SRU : Systèmeà Ressources
Unitaires
SRM : Systèmeà RessourcesMultiples
OpérationZD : OpérationZero Delay
OpérationZRZD: OpérationZero ResourceZero Delay
OpérationZRD : OpérationZero Resourcewith Delay
OpérationSRSU : OpérationSingleResourceSingle Unit
OpérationSRMU : OpérationSingleResourceMulti-Units
OpérationMRSU : OpérationMulti-ResourceSingle Unit
OpérationMRMU : OpérationMulti-Ressourceset Multi-Unités
Opération SU : Opération Single Unit
OpérationMU : OpérationMulti-Units
G-opération: opérationger
R-opération: opérationrelease
RdP : Réseaude Petri
Introduction
générale
Introduction générale
La compétition à l'échelle mondiale a changé les donnes de l'économie. En
production industrielle, le mot d'ordre est la compétitivité. Par ailleurs, le marché a
sensiblementévolué et on est passéd'une économied'échelle à une économied'envergure.
Pour être compétitive, une entreprise doit automatiser, intégrer et être flexible afin
d'améliorersa productivité,la qualité de sesproduits,le délai et le coût de la production.
La réponsetechnologiquetend vers les systèmesflexibles alliant la productivité et la
flexibilité. De plus en plus, les entreprisesautomatisentpartiellement,voire entièrement,leurs
moyens de production clés. Les moyens de production sont aujourd'hui très riches et variés.
On trouve, dans un systèmede productionmoderne,des machinesà commandenumérique,
une grandevariété de moyens de transportautomatisés(convoyeurs,AGV, ponts roulants),
des robots pour la manutention,I'usinage, I'assemblage,etc., les installationsautomatisées
très sophistiquéespour le stockage des produits et un nombre impressionnantd'outils
permettantla flexibilité desmachines.
L'investissementsouventtrès lourd danscesmoyensde productionseraitvain sansun
systèmede gestionefficace.En effet, la mise en jeu d'une grandevariété de ressourcespose
le délicat problème de la coordinationde l'ensembledes ressources.Dans cette thèse,nous
nous donnonscomme objectif de proposerde méthodespour une gestionefficace et intégrée
de I'ensembledesressources.
Comme Ramaswanyet Joshi (96) I'ont constaté,la planification et le contrôle d'un
systèmeautomatiséde production diffèrent considérablement
des problèmesde planification
et d'ordonnancementétudiésdans la littératuretraditionnelle.La plupart des travaux existants
ne prennenten compte que les produits et les machineset ignorent la variété des ressources
misesen jeu dansun systèmede production.On espèreque I'ordonnancementétabli avec les
seules contraintes des machines peut être réalisé par un système de pilotage sans rop
dégraderles performances.La réalité est loin d'être si simple. En pratique, la gestion des
moyens de manutentionest très délicateet une mauvaisegestionpeut perturber,de manière
significative,la production.Dans certainssystèmesavecdes stockstamponsde capacitétrès
faible, I'ordonnancementobtenu avec les seulescontraintesdes machinespeut conduire au
blocagemortel du système.
Dans cette thèse,nous proposonsune approcheintégréed'ordonnancementqui prend
en compte simultanémentla variété des ressowceset le problème de blocage. Les deux
caractéristiques
saillantesdu modèle que nous proposonssont : (i) les opérationsnécessitant
simultanémentdes ressourcesde différentstypes que nous appelonsopérationsà ressources
multiples ; (ii) la contrainte"retenir et attendre"pour le passaged'une opérationà I'opération
suivantedu même travail, c'est-à-direque les ressourcesnécessaires
pour une opérationne
sont libéréesqu'au début de I'opération suivante.La caractéristique(i) permet la prise en
considérationde I'ensemble de ressources.La caractéristique(ii) conespond mieux à la
réalité industrielle que I'hypothèse utilisée dans les travaux existants supposantque les
lntroduction sénérale
ressourcessont libéréesà la fin de chaqueopération,ceci quel que soit l'état des ressotuces
pour I'opération suivante.
nécessaires
Cette thèse est composée de cinq chapitres. Le premier chapitre est une étude
bibliographiquede l'ordonnancementdes systèmesflexibles de production.Après une brève
introductiondesproblèmesd'ordonnancementdes systèmesde production,nous exposons,de
manière concise, différentes techniques classiques d'ordonnancement. Ensuite, nous
présentonsun échantillon représentatifdes travaux sur l'ordonnancementdes systèmesde
production tels que I'ordonnancement des opérations à ressources multiples,
l'ordonnancementsansblocaged'un FMS, l'ordonnancementdes Réseauxde Petri (RdP) et
sesapplicationsaux systèmesde production,I'ordonnancementde robots de manutentionen
galvanoplastie,I'ordonnancementsans attente et sans en-cours et l'ordonnancementdes
cellules robotisées.Nous abordons égalementles travaux sur la détection, la prévention,
l'élimination et la correctiondes blocages.
Le deuxièmechapitreest consacréà la définition des systèmesconsidérésdans cette
thèse et à l'étude de la complexité du problème d'ordonnancementcorrespondant.D'abord,
nous introduisons les job-shops Multi-Ressourcesavec Blocage (ob-shops MRB), une
extensiondesjob-shops enrichisdes deux caractéristiques
mentionnéesci-dessus,c'est-à-dire
des opérationsà multi-ressourceset la propriété "Retenir et Attendre" pour la successiondes
opérations.Nous montronsque les job-shopsMRB fournissentun cadregénéralpour étudier
I'ordonnancementdes systèmesindustriels.La dernièrepartie de ce chapitre est une étude
détailléede la complexité du problème d'ordonnancementdes job-shops MRB, utilisant les
résultats existants pour des cas étudiés dans la littérature et développant des résultats
nouveauxpour les autrescas.
Le troisième chapitre est dédié à I'ordonnancementdes Systèmes à Ressources
Unitaires (SRU), les job-shops MRB dans lesquels les ressourcessont toutes différentes,
c'est-à-diredanslesquelsil n'y a pas de ressourcesidentiques.Nous introduisonsla notion de
systèmessimples, des job-shops MRB dans lesquelsaucun travail (ou produit) n'attend la
disponibilité de nouvellesressourcespour libérer les ressourcesqui ne sont plus nécessaires.
Nous montrons que les contraintesde précédenceet de capacitédes ressourcesimpliquent
I'absencede blocage pour un systèmesimple alors que ceci est faux pour un SRU général.
Ensuite, nous modélisonsles SRU à I'aide des réseauxde Petri et utilisons le modèle RdP
pour la vérification de blocage. Deux méthodesheuristiquesgloutonnesutilisant le modèle
RdP pour la vérification de blocagesont proposéespour construiredesordonnancements
sans
blocage.Nous proposonségalementune méthode d'ordonnancementd'un SRU généralen
passantpar un systèmesimple "équivalent".L'avantagede cette méthodeest qu'elle n'a pas
besoinde la vérification de blocage.Les résultatsnumériquesprésentésdans ce chapitresont
encourageants.
Le quatrièmechapitreest consacréà I'ordonnancementdesjob-shopsMRB généraux.
Comme pour les SRU, nous montrons que les contraintesde précédenceet de capacitédes
ressourcesimpliquent I'absencede blocagepour un systèmesimple.Nous modélisonslesjobshops MRB à I'aide des Réseauxde Petri généralisésavec poids. Nous montrons que la
vérification de blocage est combinatoirepour un job-shop MRB généralalors qu'elle est de
complexitélinéairepour un SRU. Ceci montre I'importancedes systèmessimples.Le modèle
RdP permetla déterminationd'un ordonnancementau plus tôt étantdonnéI'ordre de passage
Introductiongénérale
des opérationsdans les ressources;ce résultatseraexploité dansl'ordonnancementd'un jobshop MRB général.Ensuite,nous généralisonsles méthodesheuristiquesdu chapitreIII pour
obtenir l'ordonnancementsans blocage des job-shops MRB généraux.Dans la suite, les
résultatsnumériquessontprésentés.
Le cinquièmechapitre considèreune classeparticulièrede job-shops MRB : les jobshopsclassiquesdans lesquelschaquetravail a besoin d'un moyen de transport(AGV) pour
l'accompagner tout au long de sa réalisation. L'objectif de ce chapitre est l'étude de
l'efficacité de la méthode Relaxation Lagrangiennepour I'ordonnancementdes job-shops
MRB selon la méthodologieproposéepar Luh et Hoitomt (93). Nous proposonsune méthode
ProgrammationDynamique pour la résolution du problème relaxé, une méthode de sousgradientspour la résolution du problème dual et des heuristiquespour la constructiond'un
ordonnancement
réalisableà partir de la solution du problèmedual. Les résultatsnumériques
actuels montrent que la méthode Relaxation Lagrangienneest une méthode à prendre en
comptepour I'ordonnancementdesjob-shopsMRB.
Enftn, nous terminons cette thèsepar une conclusiongénéraleet des perspectivesde
recherchefuture.
Chapitre
I
Ordonnancement des
systèmes flexibles
de
production
: état de I'art
Ordonnancementdes systèmesflexibles de production; état de I'art
I.1 Introductionaux problèmes
d'ordonnancement
I.1.1 La production
La production peut être définie comme une opération de transformation qui convertit
desmatièrespremièresetlou composantsen produitsfinis.
Dans une entreprise,la productiondépendd'autresfonctions.Nous présentons,dans la
figure I.1, un schémasimplifié de laproduction danssonenvironnementimmédiat (Bénassy,
87).
STOCKS
DE
MATIERES
COMPTABILITE
FigureI.l : Positionde la production
La productiona quatreobjectifs :
- un objectif de volume qui consisteà satisfairela demande,
- un objectif de qualité sur les produits,
- un objectif de délai,
- un obiectif de coûts.
Ces objectifsne sont pas indépendantset le problèmeprincipal consisteà arbitrer entre
cesexigences,afin d'arriverà un compromissatisfaisantpour le client et pour I'entreprise.
1.1.2Le système
de production
Un systèmede productionest composéd'un ensemblede ressources
qui permetde
réaliserI'objectifde la production,c'est-à-dire
la transformation
de matièrespremièresetlou
de composants
en produitsfinis. On distinguequatretypesde ressources
: les équipements,
leshommes,lesmatièreset les informationstechniques,
procédurales
ou relativesà l'étatet à
I'utilisationdu système
productif.
On trouve,dansGiard (88),deux typesde typologiedessystèmes
de production: la
premièreest axéesur le fait qu'uneproductionpeut être réaliséesoit pour répondreà une
flexiblesdeproduction: étatde I'art
dessystèmes
Ordonnancement
commande,soit pour alimenter un stock et la secondeest liée au mode d'organisationde la
production, qui diffère selon I'importanceet la variété des flux de produits traités par les
systèmesproductifs.
Nous présentons,dans la figure I.2, la typologie de systèmesde production de
Noodward (Le Moal et Tarondeau,T9)qui inclut les typesmentionnésavant.
PRODUIT
L]NIQUE
PRODUITS
MULTIPLES
TypeIV:
Process
Prod.continue
TypeI:
Projet
Prod.unitaire
TypeIII:
Masse
Grandesérie
TypeII:
Atelier
Petitesérie
SURSTOCKEN
GRANDE
A LA COMMANDE
EN PETITE
QUANTITE
QUANTITE
Figure I.2 : Typologie de Systèmesde Production
A cause de la faible durée de vie des produits, de la grande diversification de la
demande,qui devient en plus incertaine et exigeante,les entreprisesse trouvent obligées
d'innoveret de renouvelerfréquemmentleurs gammesde produits.Ainsi, on remarqueque les
productions de type "masse" et "process" voient leur volume diminuer au profit de
productionsdu type "atelier".
I.1.3 La gestionde production
L'objectif de la gestionde productionest d'assurerla fabricationd'unequantitédonnée
d'un produit doruré,dans les délais prévus, avec la qualité demandée,au meilleur coût, en
utilisant au mieux les moyens disponibles et en maintenantles en-cours et les stocks au
minimum.
Les interactions entre le système de gestion, le système de production et son
environnementsont schématisées
dansla fieure I.3.
Ordonnancementdes systèmesflexiblesde production : état de I'an
SYSTEME DE CESTION
Foumisseurs
SYSTEME DE PRODUCTION
+
______)
FLUXDEMATIERES
DECTSTONS
]
Flux d'informations
Figure I.3 : Interactionsentresystèmede gestion,systèmede productionet environnement
D'un côté, les fournisseursalimententle systèmede production suivant les décisions
du systèmede gestion. Les matières circulent ensuitedans I'atelier de production entre les
ressourceset les stocks disponibles.Enfin, les produits finis sont stockésjusqu'à la livraison
aux clients. Le systèmeinclut parfois les décisionsconcernantles transportsde matériel, en
amont et en aval de la production.
Le systèmede gestionreçoit les demandesdes clients et, en fonction de celles-ci,
quantifie la production tout en prenantles contraintesdes fournisseursen compte. De plus. il
gèrele systèmede productionen tenantcomptedes aléaspar un retourd'informations.
Les décisionsprisespar le systèmede gestionsont de plusieurstypes et s'appliquentà
différents niveaux. De nombreux travaux ont été consacrésà la gestion hiérarchiséedes
systèmesde production: Antony (65), Bitran et Hax (77), Gershwin(89), Xie (89). On classe
habituellementles décisionsde eestionen trois catésories:
o les décisionsstratégiques
qui traduisentla politiquegénéralede I'entreprise.
Les
prises
décisions
à ce niveausont à long terme.Elles concernentles objectifs
principaux de I'entrepriseau niveau investissements,
nouvelles orientations
(produitsnouveaux,
techniques
récentes),
etc.
.
les décisionstactiques qui assurentla gestiondu travail et des moyensde
productiondansle cadredesdécisionsprisesau niveaustratégique.
Ellesvisentà
définir ce qu'il faut produire en fonction des clients, des stocks, de
I'environnement,
etc. Cesdécisionsconsistentgénéralement
à définir un plan de
production.
flexiblesdeproduction: étatde I'arl
dessystèmes
Ordonnancement
o
Les décisionsopérationnellesqui régissenten détail la fabricationproprementdite,
dans le respect des décisions tactiques. Parmi les décisions opérationnelles
concernantla gestionde la production,on trouve,en particulier,cellesqui assurent
le contrôle des matières (gestion de stock) et celui de la main-d'æuvreet des
équipements(ordonnancement).
La figure I.4 représentela hiérarchiedes différentsniveaux.Toute décisionprise à un
niveau devient une contraintepour le niveau inférieur. Si celui-ci ne peut pas satisfairecette
contrainte,il en informe le niveau supérieurqui remet en questionsa décisions'il y a lieu.
NIVEAU
STRATEGIQUE
décisions
stratëgiques
I
N
Long terme
remise
en cause
des
décisions
Moyenterme
NIVEAU
TACTIQUE
F
o
R
M
A
T
I
o
N
S
remise
en cause
des
décisions
NIVEAU
OPERATIONNELLE
Court terme
SYSTEMEDE
PRODUCTION
FigureI.4 : Structure
décisionnelle
à troisniveaux
Ces trois classesde décisions ne diffèrent pas seulementpar I'horizonqui les
caractérise.
Deux élémentssupplémentaires
doivent être pris en compte : le niveau de
compétence
hiérarchiquede la personnequi prend la décisionet celui d'agrégation
de la
décision,c'est-à-dire
le niveaude détaildesdécisionsprisesquantauxproductions
à effectuer
et auxmoyensà mettreen æuvre.
Ordonnancementdes systèmesflexibles de production : état de I'art
I.1.4 Ordonnancement
de la production
Dans la suite de ce paragraphe,nous nous intéressonsplus particulièrementau niveau
opérationnel,plus précisémentà I'ordonnancement
à court termequi planifre le travail dansun
atelierde production.
Un atelier de production est composé de ressources,telles les machines et les
ressources
humaines.De plus en plus, la flexibilité joue un rôle important dansles entreprises.
De ce fait, nous avons maintenantdes ateliersflexibles. Les ateliersflexibles constituentun
compromis entre la productivité et la flexibilité. Un atelier flexible permet la production
économiquede petites ou moyennessériespour suivre une demandefluctuante, sans pour
autantdevoir gérerd'importantsstocksde produitsfinis.
Les ressourcesqui constituentun atelier flexible doivent être capablesd'effectuerdes
opérationsdifferentessur des produitsdifférents.L'atelier flexible est composéde différentes
types de ressourcescomrne,par exemple,des machinesà commandenumérique,des outils,
desressourceshumaines,desrobotset desAGV (AutomatedGuided Vehicles\.
Un atelier flexible contientdonc un ensemblede ressourcesdistinctessur lesquellesun
ensemble de travaux Çobs) doit être exécuté. Chaque travail nécessite un ensemble
d'opérations,chacuned'elles devant être exécutéesur une ou plusieursmachinesen utilisant
desressourceshumainesetlou moyensde transportsetlou outils.
Traditionnellement,on utilise un systèmede notation pour représenterles problèmes
d'ordonnancement.
Ce systèmecontienttrois champscommesuit :
Type d'atelier/ caractéristiquesdes opérations/critère choisi
où:
o Le type d'atelier décritle moded'organisation
et I'environnement
du système
de production.Dærsla plupartdes études,les seulesressources
prisesen
compte sont les machines.La table I.l nous donne quelquesexemples
classiques
d'atelier.
Ordonnancementdes systèmesflexibles de production: état de I'arl
Type
Signification
I machine
Fm (Flow Shop)
m machines à perfonnances identiques ou
machinesparallèles
m machines (les tâches utilisent toutes les
Im (Job Shop)
machineset dansle même ordre)
m machines (les tâches utilisent toutes les
Pm
machineset dansun ordre différent)
m machines(les gammessont quelconques)
Om(Open Shop)
Table I.l - Exemplesdestypesd'atelier
Dans cettetable,nous avons :
opérationssont indépendantes
;
desproduits suiventle mêmeordre de production;
d'un produit suiventun ordre de production,non nécessairement
identique
pour tous les produits.
o Les caractéristiques des opérations les plus usuellessont :
r Les contraintes de succession entre deux opérations i et j, qui
expriment le fait que le début de I'opérationi et le débutde I'opération
j sont décalésdansle temps;
r Les contraintes de localisation temporelle qui imposent I'exécution
d'une opération dans une fenêtre de temps décrite par sa date de
disponibilité et sa dateéchue.
de deux opérations.
renouvelables telles que l'énergie, les matières premières, etc. Ces
dessystèmes
flexiblesdeproduction: étatde I'art
Ordonnancement
contrainteslimitent égalementle nombre des opérationsqu'il est possible
d'exécutersimultanémentsur une ressource.
Le critère décrit la ou les mesuresde performanceà optimiser.Les critères
suivants sont importants du point de we des systèmesde production :
Min maxiC;
où C1estla datedefin de la dernièreopérationdu travailj.
) la minimisation de la somme des temps de séjour des travaux dans le
systèmeou :
tvtinf(ct-rr)
J
où ri est la dated'arrivéedu travailj dansle système.
D la minimisation de la sommedesretardsou :
Min lmax(O,Cj{j)
où di est la dateéchuedu travailj dansle système.
) la minimisation de la sommedesavancesou :
Min fmax(0,ô{i)
J
) la minimisationdu nombredestravauxenretardou :
Min
fu
où Uj= I si Ci> di et U = 0 sinon.
l0
J
flexiblesdeproduction: étatde I'at1
Ordonnancement
dessystèmes
I.2 Représentationdesproblèmesd'ordonnancement
Représenterun problème d'ordonnancement,c'est utiliser une méthode,par exemple
graphique, pour spécifier de manière rigoureuse et sans ambiguité les données et les
contraintesdu problème.
Pour un problème d'ordonnancement,
on distinguela représentationdu problèmeet la
les
représentationde sa solution.Les outils de représentationde problèmed'ordonnancement
plus utilisés sont les graphes potentiels-tâcheset les réseaux de Petri. Quant à la
représentationde la solution, I'outil le plus usité et le plus populaire est incontestablement
le
paragraphe,
diagramme de Gantt. Dans ce
nous présentonsle graphe potentiel-tâcheset le
diagrammede Gantt. Les réseauxde Petri serontprésentésultérieurement.
Pour illustrer les méthodeset les notions, nous considéronsun job-shop composéde
trois machinesM1, M2 et M3, Il y a trois travaux Pr, Pz et P3 à réaliser et chaquetravail
nécessitedeux opérationsQr, V j . {1,2,3\, V k e {1,2}. ChaqueopérationQr peut être
exécutéepar une machine lr4.;r.avec un temps opératoire!r. Ces donnéessont représentées
dansla tableL2.
Opératron:
I\4;x, t;r
Travail P3
Mz,5
Pz
Mt ,5
M2 ) 1 0
P3
Mt ,5
M3, 10
P1
Mg,5
Table I.2 Exempled'unjob-shop
I.2.1 Représentationdu problèmepar lesgraphespotentiels-tâches
Un graphepotentiels-tâches
est composéde n+2 næudsreliés par un ensembled'arcs
où n désignele nombre d'opérations.Chaqueopérationà ordonnancerest représentéepar un
næud.De plus, nous introduisonsdeux opérationsfictives correspondant,respectivement,au
début et à la fin de I'ordonnancementet représentées,
respectivement,par le næud "0" et le
t'*".
ncgud
Un graphepotentiels-tâches
comportedeux types d'arcs: les arcsmonodirectionnelset
Ies arcs bidirectionnels, aussi appelés arcs conjonctifs et arcs disjonctifs. Les arcs
monodirectionnelssont valués et représententles contraintesde successiondes opérations.
Deux næuds i et j sont reliés par un arc monodirectionnel(ij) avec pour poids le temps
opératoirede I'opérationi si I'opérationj ne peut coûlmencerqu'à la fin de I'opérationi, c'est-
il
flexiblesde production: étatde I'art
Ordonnancement
dessystèmes
à-dire que I'opérationj suit l'opérationi. Il y a égalementun arc monodirectionnel(0,i) de
poids nul reliant le nceud"0" à chaquenæud "i" et un arc monodirectionnel(i,*) de poids nul
les contraintes
reliant tous les næuds "i" au næud "*". Pour un problème d'ordonnancement,
par cesarcsmonodirectionnels.
de précédencesont donc représentées
Les arcs bidirectionnels ne sont pas valués et sont utilisés pour représenter les
opérationsutilisant la même ressource.Ainsi, deux næuds i et j sont reliés par un arc
bidirectionnelsi les opérationscorrespondantes
nécessitentla même ressourceou machine.
Cependant,si le graphe potentiels-tâchesest utilisé dans une méthode de résolution qui
construit de manière progressiveI'ordonnancement,ces arcs bidirectionnelsse transforment
progressivementen arcs monodirectionnelsen fonction d'un choix déjà fait. De ce fait, I'arc
bidirectionnel(ij) devient I'arc monodirectionnel(ij) si I'opérationi précèdeI'opérationj ; il
devient I'arc monodirectionnel(,i) si I'opérationi suit I'opérationj et il reste inchangé si
aucunchoix n'estfait.
La figure I.5 donnele graphepotentiel-tâches
de I'exempleillustratif.
Figure L5 : Un graphepotentiel-tâches
Cependant,
nousne pouvonspasutiliserles graphespotentiels-tâches
pour représenter,
d'unemanièregénérale,
les relationsde conflitde ressources,
surtoutsi lesressources
sontde
(casde moyensdetransportallouésà un produitau longde saréalisation);
naturesdifférentes
c'estpourquoid'autresformesde représentation
commeles réseauxde Petri sont de plus en
plusutilisées.
12
flexiblesdeproduction: étatde I'art
dessystèmes
Ordonnancement
1.2.2Représentationd'une solution du problème d'ordonnancement
par diagrammede Gantt
Les diagrammes de Gantt représentent les ordonnancementsdu point de vue des
ressources.Lorsqu'on représenteun ordonnancementpar un diagramme de Gantt, on
représente,en parallèle,l'état d'occupationde I'ensemblede ressourcesdans le temps. Cette
représentationpermet d'apprécier la qualité de I'ordonnancementet, surtout, elle permet un
suivi simple et efficacede I'exécutionde I'ordonnancement.
Pour illustrer cette méthode de représentation,nous considéronsI'ordonnancementdu
job-shop de trois machineset de trois travauxdonnésdansla table L3 ; le diagrammede Gantt
correspondantest donnédansla figure I.6.
Opération
Or,r
Or.z
oz,r
Oz.z
or.r
O:.2
tdébur
tfin
0
5
l0
20
5
i0
5
10
20
25
t0
20
Table I.3 Ordonnancement
de I'exemple
M3
O:z
20
l0
M2
Mr
On
25
ozr
O'z
5
Ozz
l0
20
olr
l0
Figure L6 : Diagrammede Gantt de I'ordonnancement
de la table I.3
l3
dessystèmes
Ordonnancement
flexiblesde production: étatde I'art
I.3 Complexitédesproblèmesd'ordonnancement
Une notion importante,dans la théorie d'ordonnancement,
est la notion de complexité
qui mesurela difficulté d'un problème.La complexitéd'un problèmeest liée à la complexité
ou I'efficacitéde I'algorithmequi le résout.D'une manièregénérale,on définit la complexité
d'un problèmecontme la complexité de I'algorithmele plus efficacequi le résout ; ce demier
n'est pas nécessairement
connu et peut être très différent de I'algorithmeréellementimplanté
pour la résolutiondu problème.
De manièreinformelle, la complexitéd'un algorithmemesurele temps nécessairepour
trouver une solution. On exprime la complexité en fonction de la longueur des données
d'entrée.Cette longueur correspondà la taille du problème et représentehabituellementle
nombre de travaux, le nombre d'opérationset le nombre de ressources,dans le cadre d'un
problèmed'ordonnancement.
Il est bien évident que la fonction de complexitéd'un algorithmedépendde la rapidité
de I'ordinateur utilisé. Néanmoins, il est fondamental de différencier les fonctions de
complexitépolynomiale et les fonctions de complexité exponentielleou, plus généralement,
les fonctionsde complexiténon polynomiale.On parle alors des algorithmespolynomiaux et
des algorithmesnon polynomiaux (t,lP).
Plus formellement,une fonction f(n) est dite d'ordreO (g(n)) s'il existeune constantec
telle que lftnll < c.le(n)lpour tout n > 0. Un algorithmepolynomiala une fonctionde
complexitéO (pf")) où p(n) est un polynômede degrén et n est la taille du problème.Un
algorithmedont la fonction de complexiténe peut être limitée par un polynôme p(n) est dit
algorithmenon polynomial ou exponentiel.Cette définition inclut desfonctions de complexité
telles que nrosn,
qui normalement,n'estpas considéréecommeune fonction exponentielle.
Pour illustrer les différents niveaux de complexité,nous présentonsdans la table L4
quelquesfonctionsde complexitéet leurstemps d'exécutionen secondes.Cette table est due à
Garey et Johnson(79).
Dans la théorie de la complexité, on parle également des algorithmes pseudopolynomiaux. Un algorithme est dit pseudo-polynomialsi sa fonction de complexité est
d'ordre O(p1n,t-;) où le degré de polynôme varie selon la valeur de certainesdonnéesL du
problème. Un exemple classique est le problème de Knapsac qui consiste à remplir un
contenant avec des objets de taille différente. Ce problème n'admet pas d'algorithme
polynomial pour sa résolution mais on peut trouver des algorithmes polynomiaux de
complexité O (p(n)) où les paramètresdu polynôme p(n) sont fonction de la taille du
contenant.
t4
flexiblesdeproduction: étatde I'art
Ordonnancement
dessystèmes
Taille du p,roblème
Fonction
Complexité
n
n
nn
2
a
J
l0
20
30
.00003
secondes
.0009
secondes
0000I
.UUUU2
secondes
secondes
.0001
.0004
secondes
secondes
.001
secondes
.1
seconde
.008
.027
secondes secondes
3.2
24.3
secondes secondes
.001
1.0
secondes seconde
secondes
.0 5 9
58
secondes minutes
6.5
années
I',/.9
40
50
60
.00004
.00006
secondes
.00005
secondes
.0025
secondes
.0036
secondes
.UÔ4
. l 25
2t 6
secondes
secondes
secondes
l .7
secondes
5.2
13.0
secondes secondes
secondes
.0016
secondes
12.7
35.7
366
secondes secondes secondes
3855
2xl 0"
siècles
siècles
I .3x10"
siècles
Table I.4 - Les temps d'exécutionselon le niveaude complexité
Dans l'étude des problèmes d'ordonnancement,un problème est dit polynomial s'il
existeun algorithmepolynomial pour le résoudre.Sinon,on parle de problèmesNP-difficiles.
Un problèmeest dit NP-difficile au sensfort s'il n'existepasd'algorithmepseudo-polynomial.
De nombreusesétudesde complexité(Rinnooy Kan, 76 ; Lenstraet al., 77) ontmontré
que la plupart des problèmes d'ordonnancementsont NP-difficiles au sens fort. Les seuls
problèmespolynomiaux concernentessentiellementdes cas particuliersde problèmesà une
ou deux machines(Baker, 74 ; Carlier et Chrétienne,88 ; GOThA, 93) et, par conséquent,
n'ont qu'un impact très limité. La NP-complexitédes problèmesd'ordonnancement
impliquent
que le temps nécessaireà leur résolution croît de manièreexponentielleavec le nombre de
travaux et le nombre de ressources.Il est alors difficile, voire impossible,de trouver des
algorithmes exacts pour résoudredes problèmesd'ordonnancement
de taille réaliste. C'est
pour cette raison que de nombreusesméthodesheuristiquesont été développéespour trouver
de bonnessolutionsen un tempsacceptable.
I.4 Méthodesde résolutiondesproblèmes
d'ordonnancement
La NP-complexité des problèmes d'ordonnancementgénéraux façonne l'étude des
problèmesd'ordonnancement.
De ce fait, on trouve dansla littératuredesméthodesexacteset
polynomialespour des problèmesparticulierset souventsimples,des méthodesgénéraleset
exactespour des problèmesde taille faible, des méthodesheuristiquesparticulières,taillées
l5
Ordonnancementdes systèmesflexiblesde production : état de I'art
- sur mesure,pour certainstypes de problèmes,et desméthodesheuristiquesgénéralesappelées
desméta-heuristiques.'
Les premièresméthodesexacteset polynomialesont été développéespour résoudre
desproblèmesd'ordonnancement
de projets sanscontraintesde ressource.Ces méthodes,dont
les plus connuessont la méthodepotentiels-tâches
et la méthodeCPM-PERT, consistentà
lrouver les cheminscritiquesdansun graphevalué. Les contraintesde ressourcessont ensuite
prisesen compteà I'aide de la méthodesériellemais il s'agitalors d'uneméthodeheuristique.
Des méthodesexacteset polynomialesont égalementété développéespour les problèmesde
flot dansun réseaude transportavec contraintede capacité.La méthodela plus connuepour
les problèmesde flot, est la méthode de Ford-Fulkerson.Nous notons que la méthode de
- chemin critique et les méthodespour des problèmesde flot sont largementutilisées dans le
développementdesméthodes(exactesou approchées)d'ordonnancement.
La plupart desproblèmesd'ordonnancement
deviennentNP-difficiles dès qu'il y a plus
de deux machines. Four cette raison, la plupart des méthodes exactes et polynomiales
concerne des problèmes d'ordonnancementà une ou deux machines. Comme Carlier et
Chrétienne(88) I'ont montré, I'ordonnancement
optimal de ces problèmespeut être obtenu à
I'aide de la méthode d'échangeou la méthode de liste. La méthode d'échangeconsiste à
améliorerun ordonnancementdonné par permutationssuccessives
des opérationsutilisant la
même ressource.La méthodede liste part d'une liste de priorités de travaux à ordonnanceret
construit un ordonnancementen plaçant de manièreprioritaire la premièretâche prête de la
liste. On montre à I'aide de ces méthodes que la règle SPT (Shorre$ Pocessing Time)
minimise la sommed'en-cours,la règle EDD (Earliest Due Date) minimise le retard maximal
(L'*), le makespan est minimisé, pour le cas d'un flow-shop à deux machines, par
I'algorit e de Johnson.
Pour les problèmes d'ordonnancement
NP-difficiles, les méthodesles plus utilisées
pour obtenir les solutionsoptimalessont les procédurespar séparationet évaluation(ou PSE).
la programmation linéaire et la programmation dynamique. Ces méthodes explorent, de
manière explicite ou implicite, I'espace des solutions et utilisent des indicateurs de
performancespour limiter le nombre des solutions à examiner. Ainsi la programmation
linéaire en variables continues et la relaxation Lagrangiennesont souvent utilisées pour
foumir rapidementdes indicateursde performancepar le biais de relaxation de certaines
contraintestellesque la non-préemptiondestâches,les contraintesde capacitéde ressources.
Compte tenu de la NP-complexitédes problèmesd'ordonnancement
et de la variété
des problèmesqui se posent,de nombreusesméthodesheuristiquesont été développéespour
obtenir des solutionsprochesde I'optimum dans un temps raisonnable.Un grand nombre de
méthodesheuristiquessont tailléessur mesurepour des problèmesparticulierset construisent
I'ordonnancementselon certainesconditions d'optimalité. Beaucoupd'entre elles utilisent la
méthode d'échange ou la méthode de liste mentionnée plus tôt. Parmi les méthodes
l6
Ordonnancementdes systèmesflexibles de production: état de I'art
heuristiques,nous citons la méthode CDS (Campbell et al., 70) pour I'ordonnancementdes
flow-shopset la méthodedite de la machinegoulot (shift-bottleneck)porx la minimisation du
makespandesj ob-shops.
Ces dix demières annéesont vu le développementrapide de méthodesheuristiques
génériquespour la résolution des problèmesNP-difficiles. Ces méthodes,appeléesmétaheuristiques,utilisent deux notions importantes: le voisinageet la population.La plupart des
méta-heuristiques
acceptentdes solutionsmoins bonnesque la solutionactuelle.La notion de
population a été introduite pour capter la structure des solutions optimales. Les métaheuristiquesles plus usitées dans I'ordonnancementsont le recuit simulé, les algorithmes
génétiqueset la méthode tabou. En plus des méta-heuristiques,
la relaxation Lagrangienne
peut égalementêtre utilisée comme une heuristiquegénérique.Nous allons détailler cette
utili sationde la relaxation Lagrangienneultérieurement.
I.5 Techniquesclassiques
d'ordonnancement
Nous présentons,dans ce paragraphe,les techniquesusuellesd'ordonnancementdes
systèmesde production.Elles comprennentles techniquesexactes,les heuristiquesdédiéeset
les méta-heuristiques.
I.5.1 Procédurespar Séparationet Evaluation
La Procédurepar Séparationet Evaluation(PSE),en anglaisBranch and Bound, est la
méthodeexactela plus utilisée pour résoudreles problèmes d'ordonnancement
des systèmes
de production.Dans ce paragraphe,sansperte de généralité,nous considéronsle problèmede
la minimisation d'un critère donné.
Une procédurepar séparationet évaluationpeut être expliquéepar les deux notions
suivantes:
o La "séparation"consisteà décomposersuccessivement
un problèmeen sousproblèmesconcernantdessous-ensembles
de solutionsexclusiveset exhaustives
par rapportauproblèmeinitial. Lessolutionsdechaquesous-problème
comportent
unesolutionpartielleconnueet commune,
et desvariablesà définir.
o L'évaluationd'un sous-problème
permetd'obteniruneBorneInférieure(BI) de la
solution optimaledu sous-problème.
La méthoded'évaluationla plus utilisée
consisteà relaxer certainescontraintesdu problème(par exemple la nonpréemptiondes opérations,les contraintesde précédence
et les contraintesde
t1
Ordonnancementdes systèmesflexiblesde production : état de I'art
capacité) et à résoudre le problème relaxé à I'aide de techniquestelles que la
programmation linéaire et la relaxation Lagrangienne.Il est bien évident que
I'efficacitéd'unePSE dépendfortementde la qualité de sesBI et de leur difficulté
de calcul.
Une autre notion utilisée dans les PSE est la Borne Supérieure(BS) de la solution
optimale du problèmeinitial. Cette borneest amélioréeau coursd'unePSE. Il est bien évident
qu'un sous-problèmene contientpas de solutionoptimalesi BI > BS.
Dans une PSE, nous représentonsles sous-problèmespar une arborescencedont la
racine correspondau problème initial et chaque sommet représenteun sous-problème.Les
sommets-filsd'un sommetA représenteI'ensembledessous-problèmes
du sous-problèmeA.
Une PSE peut être résuméecomme suit :
Etape I
(lnitialisation)
Etape2
on part de la racine,on calculesa BI et on calculeune BS initiale. cette
BS initiale est obtenuehabituellementà I'aide d'une heuristiqueet est
ensuiteamélioréeau coursdu calcul.
(Séparation)
Etape3
On choisit un sommet restant S et on crée les sommets fils de S
représentantles sous-problèmes
correspondants.
(Evaluation)
Etape4
Pour chaquenouveausommet,on calculeune BI. si le nouveausonxnet
représenteune solution complète,on calcule sa valeur de critère et on
met à jour la BS.
(Elimination)
Etape5
On éliminetout sommettel que BI > BS.
(Critèred'Anêt)
S'il n'y a plus de sommetrestant,on arrête; sinon,on va à|,étape2,
Au I'tt de cet algorithme,il est naturelde s'interrogersur la stratégiede recherchepour
le choix du sommetà séparer.Les stratégiesles plus connuessont:
la largeur d'abord qui consisteà explorer d'abordles sommetspar niveau
d'arborescence,
la profondeurd'abordqui consisteà explorerd'abordles sommetsavecle plus
grandniveaude I'arborescence,
la méthodeprogressive
qui consisteà explorerd'abordle sommetde la pluspetite
BI, c'est-à-dire
le plusprometteur.
l8
flexiblesdeproduction: étatde I'art
dessystèmes
Ordonnancement
Une des premièresPSE a été proposéepar Dantzig,Fulkersonet Johnson,(Dantzig et
al., 54) pour résoudrele problème du Voyageur de Commerce.Depuis, des centaines,voire
des milliers de PSE ont été proposéespour des problèmesd'ordonnancement.
L'exemple le
plus représentatifest la PSE proposéepar Carlier et Pinson (Carlier et Pinson, 89) pour
minimiser le makespandesjob-shops.CettePSE utilise desBI très serréeset une stratégiede
rechercheefficace faisant intervenir les propriétésdes solutionsoptimales.Elle a permis la
résolution d'un problèmede l0 machineset 10 travaux ; ce problèmeest restéouvert pendant
plus de 20 ans. De cette étude,on constateque I'efficacitéd'une PSE dépendessentiellement
de la qualité desbornesinférieureset supérieures.
1.5.2La ProgrammationLinéaire
Un prograûrmelinéaire modélise un problèmedont les contraintessont des
inéquationslinéaireset la fonctionéconomique,
une forme linéaire.Plus précisément,
un
programme
linéairepeuts'écriresousla forme:
Min Crx sousla contrainteAx < B
où C et B sont des vecteursde colonne et A une matrice.On parle d'un programmelinéaire
continu si les variablesxi sont des nombresréels,d'un programmelinéaireen nombresentiers
si les variables x; Sont des entiers et d'un progftrrnmelinéaire en nombres mixtes si les
variablespeuventêtre des entiersou desréels.
Les programmeslinéairescontinus sont des problèmespolynomiaux et sont très bien
résolus.La méthodela plus connueest la méthodedu Simplexe(Dantzig,63) qui possèdeune
excellente complexité expérimentale: le nombre d'itérationsest de I'ordre du nombre de
contraintes.
Par contre, les programmeslinéairesen nombresentiersou mixtes sont NP-difficiles
au sens fort. Leur résolution est une direction de recherche majeure de la recherche
opérationnelle.Les méthodesles plus comues sont les méthodesde coupe,celle de Gomory
(58),par exemple,et les PSE.
Nous remarquons qu'il n'y a pas beaucoup de problèmes d'ordonnancementqui
peuventêtre modéliséscomme des programmeslinéairescontinus.Par contre, la plupart des
problèmesd'ordonnancement
peuvent être modéliséspar un programmelinéaire en nombres
entiers ou mixtes. Ainsi, la programmationlinéaire peut être utilisée pour la résolution de
problèmes d'ordonnancementrelaxés (contraintes de précédence,de non-préemptiondes
opérationset de capacitédes ressources)et, par conséquent,elle permet d'obtenir les bornes
inférieuresdesproblèmesd'ordonnancement.
l9
Ordonnancementdes systèmesflexibles de production : état de l'art
par la modélisation
Nousterminonsce paragraphe
du problèmede la minimisationde
la sommederetardde n tâchessurunemachineaveccontraintes
de disponibilitédetâches.Le
programme
linéaireen nombresmixtessuivantmodéliseceproblème:
uin icr
j=t
sousles contraintessuivantes:
S;) r ;
(1.1)
C 1 > 5 1 + p-.dr : , C j > 0
(1.2)
S .i' +p;' SY1,M+ Si
(1.3)
S . i + p i < ( l- Y r i ) M + S j ' , Y i ; , e{ 0 , 1 } V
, j ,j ' e { 1 , 2 , . . . , n }
(1.4)
où (1.1) est la contraintede disponibilitéde tâches,(1.2) est le coût de retard,(1.3) et (1.4)
sont les contraintesde ressource.Ainsi, S.;est la date de début de la tâche j, ri sa date de
disponibilité,p; son temps opératoire,d.;sa date échueet C; son coût de retard. Yl,indique si
la tâchej précèdela tâche j' et M est un grand nombre avec M > X, (p: + r.i) par exemple.
Ainsi, nous avons S.i,+ p.i,( Si si j' précèdej et 51+ pj < S.;,sinon. Si nous relaxonsI'intégrité
des variables Yi;' et la remplaçonspar la contrainte 0 S Yx < 1, le problème devient un
programmelinéaireen variablescontinueset nous obtenonsainsi une bome inférieure.
I.5.3 ProgrammationDynamique
La Programmation Dynamique est un principe général applicable à de nombreux
problèmesd'optimisationavec contraintes,linéairesou non linéaires,en variables continues
ou discrètes,mais possédantune certainepropriétédite de décomposabilité(Minoux, 83).
Le terme "programmationdynamique"provient du fait que cetteméthodea d'abordété
appliquéeà I'optimisationdes systèmesdynamiques,c'est-à-diredes systèmesqui évoluentau
cours du temps et dont l'évolution peut être contrôléepar des variablesde décision. Mais le
principe de la ProgrammationDynamique peut être appliqué à une gamme plus grande de
problèmes,y compris les problèmes où le temps n'intervient pas, comme les problèmes
d'optimisationen nombresentiers.
Le principede Bellmanqui définitla programmation
dynamique
est:
20
flexiblesde production: étatde I'art
Ordonnancement
dessystèmes
"Une politique est optimale si, à une périodedonnée,quellesque soient les décisions
précédentes,les décisionsqui restentà prendre constituentune politique optimale en tenant
comptedesrésultatsdes décisionsprécédentes."
Ce principe est le point centralde la théorie de la programmationdynamiqueet il est
appeléprincipe de I'optimalité.
Lorsque nous appliquonsla programmationdynamiqueà I'ordonnancement,
I'idée est
de ramenerla résolutiond'un problèmed'ordonnancement
qui comporteplusieursvariablesà
'la résolution d'une suite de problèmes d'optimisation plus simples, par exemple à des
problèmesavec une seulevariable.
Pour mettre en ceuvre cette idée, la plupart des approches de programmation
dynamiquesuiventles deux étapessuivantes:
1"" - On place le problèmedansune famille de problèmesde mêmenature.
- On chercheune relation de récurrencereliant entreelles les valeursoptimalesde
2eme
ces différentsproblèmes.
Cette méthodeest généralementcoûteusevu son caractèreénumératifmais elle peut
être très efficacepour des problèmesparticuliers.Par exemple,la programmationdynamique
permet d'obtenirdes algorithmespolynomiauxpar le problèmedu plus court chemin dans un
graphevalué. Le problème initial consisteà trouver le plus court chemin de a à b. La famille
de problèmesà considérerest la recherchedu plus court chemin d'un sommetquelconquex à
b. La relationrécurrentereliant cesproblèmesest :
PCC(x,b): min {d(x,y)+ PCC(y,b)}
yef(x )
où PCC(x,y)estle plus courtcheminde x à y, f(x) est I'ensembledes successeursde x et
d(x,y)estle poidsdeI'arc(x,y).
En ordonnancement,
la programmation
dynamiquea souventété utilisée,pour des
problèmesà une machineou à des machinesidentiques,pour construiredes algorithmes
polynomiauxou pseudo-polynomiaux
(Lawler, 77 ; Schrageet Baker, 78 ; Potts et Van
Wassenhove,
S2; Carlieret Chrétienne,
88).
I.5.4Méthodesheuristiques
Comme nous I'avons dit, la plupart des problèmesd'ordonnancement
sont NPdifficilesau sensfort et il est difficile, voire impossible,
de trouverdesméthodesexacteset
21
des systèmesflexiblesde production: état de I'art
Ordonnancement
heuristiques
Pourcela,on trouveun grandnombrede méthodes
dansla littérature.
efficaces.
desméthodesheuristiques
Nousprésentons,
dansce paragraphe,
un échantillonreprésentâtif
dédiées.
I.5.4.1Méthode par Machine Goulot
Cetteméthode,aussi appeléeShfiing Bottleneck,a été proposéepar Adams, Balas et
Zawak (Adams et al., 88) pour la minimisation du makespan des job-shops. Elle est
considéréecorrme I'une des méthodesles plus efficaceset sert de méthodede référencepour
I'ordonnancement
desj ob-shops.
Cette méthode calcule I'ordonnancementpar constructionprogressive.Elle résout
successivementdes problèmes d'ordonnancementà une machine. Chaque problème à une
machine détermineI'ordre de passagedes opérationsqui nécessitentla machine considérée,
tout en respectantI'ordonnancementdes machinesdéjà ordonnancées.
Ce problèmepeut être
prouvé équivalentà la minimisation du makespande n tâches,sur une machineavec datesde
disponibilité et de latence des tâches.Le temps de latence d'une opération correspondau
temps séparantla fin de I'opérationet la fin du travail correspondant.Ce problèmepeut être
résolu, de manière efficace, à I'aide d'un algorithmemis au point par Carlier (Carlier, 82).
Nous donnons,ci-après,quelquesdétailsde la méthodepar machinegoulot.
La notationutiliséepour décrirecetteméthodeest la suivante:
M:
I'ensemble
desmachines,
Mo: I'ensemblede machinessur lesquellesla séquencede tâchesa été calculée.
A chaqueétapede la méthode,on choisit la machine la plus critique, c'est-à-direla
machine goulot, en résolvantun problème à une machine pour toutesmachinesencorenon
séquencées(c'est-à-dire dans I'ensemble M\M6), et on ajoute celle-ci à Mo. Ensuite,
I'ordonnancementde chaquemachine dans Mo est réoptimisé en utilisant une nouvelle fois
I'algorithmede Carlier.Enfin, on répètececi sur les machinesqui sont sur le chemincritique.
L'algorithme,
proposépar Adamset al.,est:
E t a p0
e: M s = O
Etape1 : Identifierla machinegoulotk* parmilesmachines
k e IvI\M6,
ainsiquela séquence
optimale(sélection
Spr)conespondante,
MoeMu{kr}
Etape2 : Réoptimiser
successivement
la séquence
de chaquemachinek e
:
Mo.Si M Mo,stop; sinonallerà l'étape1.
22
dessystèmes
flexiblesdeproduction: étatde l'ar1
Ordonnancement
I.5.4.2Méthode par Permutation
La méthodepar permutationd'opérationsest une méthodequi améliore le makespan
d'unesolution obtenuepour un problèmed'ordonnancement.
Cette méthode consiste à choisir deux opérationssuccessivessur une machine et
essayerde les permuterpour diminuer la duréetotale de I'ordonnancement.
On remarqueque
ces opérationsdoivent être sur le chemin critique du graphepotentiel-tâchescorrespondant
sans quoi la permutation n'amélioreraitpas la solution. Cette méthode est égalementtrès
utilisée dansles méta-heuristiques
Tabou et Recuit Simulé.
La permutationdes opérationspeut être faite selonI'algorithmesuivant :
Etape I : Choix de deux opérations.
Choix de deux opérationssuccessivessur le chemin critique utilisant la
même machine.
Etape2 : Permutationdesopérations.
2.1 Permutationde deux opérationssélectionnées.
2.2 Calcul de la duréetotale de I'ordonnancement,
Cn-,*,aprèsla
permutation.
2.3 Si le nouveauCn'* est inférieur à I'ancien,valider la
permutation,sinon, I'annuler.
Etape3 : Condition d'arrêt.
3.1 Si aucunepermutation
dedeuxopérations
successives
du
pasle Cr*, stop.
chemincritiquen'améliore
3.2 Sinon,retourner
à l'étapel.
Nous remarquons que cette méthode permet de faire converger la solution
d'ordonnancement
vers un minimum local.
I.5.5Méta-Heuristiques
Les méthodesappeléesméta-heuristiquessont des méthodesheuristiquesgénérales.
Nous avons déjà mentionné que les méta-heuristiques
utilisent deux notions importantes: le
voisinage et la population. Dans ce paragraphe,nous présentons les méta-heuristiques
flexiblesde production: étatdel'art
Ordonnatrcement
dessystèmes
dans cet ensembledes méta-heuristiques,la relaxation Lagrangienneque nous considérons
commeune méthodeheuristiquede caractèregénérique.
I.5.5.1Méthodesde la RelaxationLagrangienne
La méthodede la RelaxationLagrangienneest habituellementutilisée pour déterminer
des bomes inferieures de qualité (pour les cas de minimisation d'un critère) pour les
problèmescombinatoires.Elle consisteà relaxer certainescontrainteset à les injecter dans le
critèrepar le biais de multiplicateursLagrangiens.Plus précisément,pow le problème :
J: min f(x)
sousla contrainte:
g(x)<0,
le problèmerelaxés'écrit:
L(I) = mip f(x) + ).r g(x) , pourI > 0
Le problèmesuivant
L().'): max L(1.)
).>0
est le problèmedual.Il est facilede montrerque L(À.) < J, ce qui prouveque la relaxation
Lagrangienne
conduità desbornesinférieures.
La différenceJ - L(1.')estsouventappeléele
sautde dualité.Il été démontréque les bomesde la relaxationLagrangienne
sontmeilleures
quelesbomesobtenues
par simplerelaxationd'intégritédesvariablesentiers.
Partantdu constatque les bornesde la relaxationLagrangienne
sont généralement
serréespour desproblèmesd'ordonnancement
réalisteset que les solutionscorrespondantes
sont prochesde I'optimum,Luh et Hoitomt (93) ont proposéune autreutilisationde la
relaxationLagrangienne
pour l'ordonnancement
d'unelargegammede systèmescomprenant
lesjob-shops,les systèmes
d'assemblage,
les systèmes
avectempsde "setup"et capacités
de
stockage(Luh et Hoitomt,93 ; Czerwinskiet Luh, 94 ; Changet Liao, 94 ; Chenet a1.,94;
Tomastiket al., 96).La techniqueproposée
partd'unemodélisation
originale,relaxecertaines
contraintesdu problèmepour obtenirdes problèmesrelaxésfacilesà résoudre,résoutle
problèmedual L(1,.)et construitun ordonnancement
admissibleà partir de la solutiondu
problèmedual.La borneinférieureL(1..)permetde mesurerla qualitéde I'ordonnancement
obtenu.
'tA
flexiblesde production: étâtde I'art
Ordonnancement
dessystèmes
Dans ce qui suit, nous présentonsla méthodeproposéepar Luh et al. pour
de n travauxdansun job-shopavecM machines.Le problèmeconsisteà
I'ordonnancement
minimiserun critèreau typ. i
j=l
t(C:) où C; estla datedefin du travailj. Ce critèreinclutla
sommedesretardscornmeun casparticulierdanslequelq(Cj)= max {0, Ci - dr}.
Ceproblèmepeutêtreformulécommesuit :
n
J: Min t
:-l
-
t(cj)
sousles contraintessuivantes:
I
(j k)€O(m)
C ; r- b 1 +
r I = p i r , V j ,V 1S k S \
(1.s)
Cir+I<b1*r,Vj,VISkS\
(1.6)
l { b ; r S t < C ; r }< l , V I < m < M , V I < t < H
(r.7)
où (1.5) est la contraintede tempsopératoire,(1.6) est la contraintede précédence,
(1.7) est la
contraintede ressource,b;s est la date de début de I'opération(,k), C.irsa date de fin, pis Son
temps opératoire,\ le nombre d'opérationsdu travail j où Ci : CjNj et O(m) est I'ensemble
d'opérationsutilisant la machine m. Dans ce modèle, nous avons discrétisé le temps en
périodesélémentaireset H est le nombrede périodes.
Pour résoudrece problème,nousrelaxonsles contraintesde ressource(I.7) et obtenons
les problèmesrelaxéssuivants:
L(À) = Min
I l(cj) - t
j=l
I ' " , ( 1-
I
( j , k ) e o ( m)
l{b;r.StSCit})
sousles contraintessuivantes:
C : r - b . i r + 1 = p j k , V j , Vl sks\
C ; r . + 1 ( b i k * r , V j , V <l k < N ,
J
Ceproblèmesedécompose
en sous-problème
du niveautravail:
L(À)= - I
m,t
n
I'r+ I
j=l
25
L.i(À)
dessystèmes
flexiblesde production: étatde I'art
Ordonnancement
r aVeC
'
Li(}.)=Minf(Cj)*ËT Àuin
k=l r=bjk
où lt41tdésignela machinepouvanteffectuerI'opération(,k).
Le problèmedual est alors :
L(À';: TgxL(À)
On montre aisémentque les problèmesrelaxésdu niveau travail L1(1")peuvent être
résoluspar une approchede ProgrammationDynamique.Le problèmedual peut être résolu
par une méthodede gradientutilisant I'itérationsuivante:
In*l : Ln + e(n) vl L
où e(n)estle paset V7..1t :
,,.*à,.,
1{b.;rS t < C.;r,}- I .
A I'issue de la résolution du problème dual, nous pouvons construire un
ordonnancementadmissible à I'aide d'une méthode de liste avec I'ordonnancementdu
problèmedual S.;icomme degréde priorité.
Pour résumer,la méthodeprocèdecomme suit :
Etape 1
Initialiser les multiplicateursLagrangiensImt i
Etape 2
Résoudreles problèmesrelaxésdu niveau de travail Li(À) ;
Etape3
Actualiserles multiplicateurs: Àn*r: Àn+ e(n) Vi. L ;
Etape4
Si la convergencede In n'estpasobtenue,aller àl'étape2 ;
Etape 5
Construireun ordonnancement
admissibleSo.;r
à I'aided'une
méthodede liste. Soit Josa valeurde critère :
Etape6
Evaluer I'ordonnancement
obtenu:
J'-L(À-).Jo-J*
JO
JO
où J* est le critère de la solution optimale.
26
flexiblesdeproduction: étatde I'art
dessystèmes
Ordonnancement
I.5.5.2Méthodesdu recuit simulé
La méthode du recuit simulé et la méthodeTabou,présentéesci-après,peuvent être
considéréescomme des améliorationsde I'optimisationlocale. Une méthode d'optimisation
locale part d'une solution initiale xs et I'améliore en déterminantla solution optimale x' dans
un voisinage de x6. Ce processusest répété en remplaçantxe par x' jusqu'à convergence.
L'avantagede I'optimisationlocale est la simplicité mais elle risquede conduireà un optimum
local comme illustré par la figure I.7.
fo(x)
Figure I.7 : Optimum local
Pour éviter le piège de I'un optimum local, la méthodedu recuit simulé acceptedes
solutions moins bonnes mais cette acceptationest contrôléepar un processusinspiré de la
méthodedu recuit dans la physiquestatistique(Kirkpatrick et al., 83). Il s'agit de solidifier un
matérielen état liquide afin d'atteindreun état d'énergieminimale.Cet état ne peut être atteint
qu'enpartantd'unehautetempératureet en baissanttrès lentementla température.
La méthode du recuit simulé utilise la notion de températurepour contrôler la
dégradationdes solutions dansla recherchede I'optimum.L'algorithme ci-dessousest un des
schémasles plus utilisés (pour le cas de minimisation):
EtapeI :
Choisir une solution initiale soet calculersa valeur de critère f(s") ;
Etape2:
Choisirunetempérature
initialeT (T>0);
Etape3 :
Choisirauhasardunesolutionvoisines et calculersavaleurde critèref
(s) ,
Etape 4 :
'
Si f(s) S f(so), so e s ; sinon, Soe Savec la probabilité a-(r(s)-r(s0))/r
Etape 5 :
T..- oT;
27
Ordonnancement
des systèmesflexibles de production : état de l'art
Etape6 :
Si la température
finale e n'estpas atteinte,c'est-à-dire
T > e, aller à
l'étape3 ; sinon,arrêt.
où o est le ratio de températurequi définit le processusde contrôle de la température.Il
n'existepas de règle pour choisir les paramètreso, e et la températureinitiale. On procède
généralement
par tâtonnement.Très souvent,0,87 < a < 0,99 .
La propriété la plus importante est I'optimalité asymptotique.Il a été prouvé dans
Lundy et Mees (86), Aarts et Korst (89), Van Laarhovenet al. (92), que, sousdes conditions
sur la structure de voisinage, la méthode conduit avec probabilité 1 à un optimum global
lorsquee---0 pour a proche de 1. Cela revient à dire que I'optimum global peut être atteint si
la températureest baisséelentement,ce qui confirme I'analogieavec la physique statistique.
Une condition suffisantesur la structurede voisinage est sa connectivité,c'est-à-direqu'il
existeun cheminde longueurfinie allant d'unesolutionquelconqueà un optimum global.
Dans ce paragraphe,nous présentonsla méthodedu recuit simulé développéepar Van
Laharhovenet al. (92) pour la minimisation du makespand'un job-shop. Dans cet article. le
graphepotentiels-tâchesest utilisé pour représenterle problème.Chaquesolution s (c'est-à-
dire un ordonnancement)est représentéepar I'ordre d'exécutiondes opérationsutilisant la
même machine. Une structure de voisinage simple et naturelle aurait été obtenue par
permutationdes deux opérationsv et w quelconqueset consécutivessur la même machine.
Afin de réduire I'espacede voisinage et améliorer I'efficacité de la méthode, dans Van
Laarhovenet al. (92), seulesles opérationsv et w sur un chemin critique et consécutivessur
la même machinesont permutées.Ils ont montré que I'on peut transforïneren un nombre fini
d'étapesune solution quelconque en un optimum global en respectantla structure de
voisinage.Cela garantit I'optimalité asymptotiquedu recuit simulé. Nous soulignonsque le
graphepotentiels-tâches
est égalementutilisé pour le calcul de la valeur de critère.
I.5.5.3Méthode Tabou
Pour ne pas être piégéedans un optimum local, la méthodeTabou utilise la notion de
mémoire pour guider la recherche.Cette méthode a été initialement proposéepar Gloyer
(Glover, 86) sous le nom de la rechercheavec tabous. L'idée de base est de modifier. de
manièreitérativeet locale,une solution,tout en gardanten mémoire les modificationsafin de
ne pas visiter la même solution deux fois. Pour ce faire, les modifications ou leurs
caractéristiques
sont stockéesdansune liste pour interdire leur utilisation pendantun certain
nombred'itérations,d'où le nom de la rechercheavectabouset celui de la liste de tabous.
Selon Glover (Glover et al., 92) la recherche Tabou est une généralisationdes
méthodesd'optimisation locale. Elle explore itérativement I'espaceX des solutions d'un
problème d'optimisation donné, en se déplaçantd'une solution courante s, s e X. à une
28
flexiblesde production: étatde I'art
dessystèmes
Ordonnancement
nouvelle solution s' situéedansle voisinagede s, s' e N (s), le choix de cettenouvellesolution
s' étantdéterminépar l'évaluationd'unecertainefonction objectivef. Le voisinageN(s) d'une
solution s est défini comme I'ensembledes solutions s' € X pouvant être obtenuessuite à
I'applicationd'une transformationlocale à s. Par exemple,pour le problème du voyageur de
commerce, cette transformation pourrait être une méthode d'exploration locale (ou
améliorationitérative)comme la méthoded'échange2-opt (Lin, 64) et pour I'ordonnancement
d'un job-shop, la permutationde deux opérationsconsécutivessur une machine.
Toutefois,contrairementaux méthodesd'optimisationlocale qui s'arrêtentdès qu'il n'y
a plus de s'permettantd'améliorerf, s' ici est définie comme étantla meilleure solution parmi
les éléments de N(s) sans référence aucune à f(s). Ceci permet à la rechercheTabou de
poursuivre la recherchede solutionsmeilleuresmême si cela entraîneune dégradationde la
fonction objective.
Cette modification du processusd'explorationrend la rechercheTabou insensibleaux
optima locaux mais elle introduit, du même coup, le risque de rebouclerdès que I'on sort de
I'un de ces optima et d'y retoumer aussitôt. C'est là que la notion de mémoire trouve sa
justification. Pour régler ce problème, la rechercheTabou conservedes informations sur le
cheminement récent effectué à travers X afin d'interdire certaines transformations de la
solution courantequi pounaient ramenerla procédurevers des solutionsdéjà rencontrées.Ces
transformationssont alors déclaréestabou, d'où le nom de la méthode.Ceci a pour effet de
restreindreI'accèsà certainessolutions dans N(s). C'est ce mécanismed'interdictionsou de
tabous qui permet d'orienter I'exploration de X au fur et à mesure qu'elle se déroule.
Toutefois, pour conserverà I'approchesuffisammentde flexibilité, le caractèretabou de ces
transformationsne doit pas être maintenu en perrnanence.En limitant la durée de vie des
tabous,on permet à la méthodede remettreen questionseschoix passés(une fois les risques
de rebouclagedisparus)et ainsi de mener une explorationbeaucoupplus large du domaine
dessolutions.
Plus précisément,une méthodeTabou se résumecomme suit :
Etape I : Initialiser
- choisir une solution initiale so e X ;
- initialiser la liste destabous
-ke0,s'.-so;
Etape 2 : Tant que le critère d'arrêt est non satisfait,faire :
(a) Déterminerspal,une solutionvoisinede sp,en tenantcompte
de la liste destabous;
(b) Si ssestmeilleurque s', alorss* (c) k <- k+l ;
(d) mettreà jour les tabous.
29
sk*l l
Ordonnancement
dessystèmes
flexiblesdeproduction: étatde I'art
Traditionnellement,le critère d'arrêt peut être un nombre donné d'itérations ou un
nombre donné d'itérationsconsécutivessansamélioration.Différentesméthodespeuventêtre
utilisées dans l'étape 2(a) pour calculer sr*r. La méthode la plus utilisée est I'optimisation
localedessolutionsnon taboues.
La méthodeTabou a été largementappliquéeà differentsproblèmescombinatoirestels
que les problèmesde touméesde véhicules(Gendreauet al., 94) et l'ordonnancementdesjobshops (Balas et Vazacopoulos,95). On trouve de nombreusesréférencesdans Soriano et
Gendreau(97),Blazewickz et al. (96).
I.5.5.4MéthodesGénétiques
L'idée de base des algorithmes génétiquesvient du processusévolutionnaire des
espècesqui se reproduisentsexuellement.Pendantla reproductionsexuelle,les parentscréent
un nouvel individu, leur descendantdifferent d'eux. Chaqueindividu est caractérisépar son
empreinte génétique, c'est à dire un ensemble de chromosomes.Les chromosomesdu
descendantsont le résultatde I'action de deux mécanismesfondamentaux.Le premier est le
croisementqui est une combinaisondes empreintesgénétiquesdes parents (ou ascendants)
pour créer I'empreintegénétiqued'un nouvel individu. Le deuxièmeest la mutation qui est
une modification de I'empreintegénétiquedu descendant.Le descendantseradifférent de ses
parents; toutefois,il aura un certain nombre de leurs caractéristiques.
Si le descendanta les
"bonnes" caractéristiquesde ses parents, sa probabilité de survivre est très haute en
comparaisonaux individus qui ont de mauvaisescaractéristiquesde leurs parents. Nous
pouvonsexpliquer ces bonnesou mauvaisescaractéristiques
en fonction de I'environnement.
L'idée est que deux individus bien adaptésau milieu vont donnernaissanceà des individus
eux-mêmesbien adaptésau milieu et, peut-être,mieux adaptésà ce milieu que leurs parents,
grâce en particulier aux mutations. A I'inverse, des individus mal adaptés à leur
environnementrisquent de donner naissanceà des individus tellement mal adaptésà leur
environnementqu'ils ne résisterontpasà la sélectionnaturelle.
L'analogieentre le processusévolutionniste
et la méthodegénétiqueproposéepar
Holland(75)serésumecommesuit.Chaqueindividucorrespond
à unesolutionadmissible
du
problèmed'optimisation.La solutionest codéecommeun vecteurbinaire ou empreinte
génétique.L'opérateurde croisementéchangeles sous-vecteurs
binairesdes parentspour
produireun descendant.
La mutationestun opérateur
permettant
la modificationd'unbinaire
de I'empreintegénétiqued'un descendant.
La qualitéd'un individu (sa chancede survivre)
dépendde la valeurde critèrede la solutionconespondante.
Plusprécisément,
un algorithme
génétique
serésumecommesuit :
JU
Ordonnancementdes systèmesflexibles de production : étatde I'art
1. Générerune population initiale de vecteurs(individus)
2. Tant que le critère d'arrêtest non satisfait,faire :
dansla population
(a) Choisir un ensemblede vecteurs-parents
(b) Associerde manièrealéatoireles parentset appliquerI'opérateurde croisement
pour produire les vecteurs-enfants
(c) Appliquer I'opérateurmutation aux vecteurs-enfants.
Les développementsrécentspermettentd'utiliser descodagesgénérauxet naturels,des
opérateursde croisement et de mutation plus puissantset faciles à utiliser. On trouve en
particulierdansBlazewicz et al. (96), Caux et al. (93), de nombreuxopérateursde croisement
et de mutation pour I'ordonnancementdesjob-shops.
I.6 Les Réseauxde Petri et lesSvstèmes
de Production
Les réseauxde Petri (RdP) sont de plus en plus populairespour la modélisation,la
spécificationet l'évaluationdesperformancesdes systèmesà événementsdiscretscaractérisés
par le parallélisme,la synchronisation,les ressourcespartagées,etc. L'intérêt croissantpour
cet outil graphiquesejustifie par sa puissancede spécification,son utilisation aiséeet, surtout
I'arsenalmathématiquepour I'analysequalitativeet quantitative.Par rapport aux autresoutils
d'évaluationdes performancesdonnéesdans la figure I.8, les RdP se distinguent par leur
capacité à couvrir tout le cycle de conception préliminaire d'un système allant de la
spécification,de I'analyseà l'évaluationdesperformances.
Evaluation
des
performances
d'un
système
Analysemathématique:
- Réseauxde Petri
Filesd'attente
- Chaînede Markov
Figure I.8 : Evaluationdesperformancesd'un système
3l
dessystèmes
flexiblesde production: étatde I'art
Ordonnancement
Dans ce paragraphe,nous nous intéressonsà I'applicationdesRdP à I'ordonnancement
des systèmesde production, plus spécifiquementà la modélisationet à I'optimisation de la
production.Dans cet objectif, nous présentonspar la suite, les principalesnotions de RdP et
de RdP temporiséset la modélisationde problèmesd'ordonnancement.
pour plus de détails,
les lecteurssont renvoyés aux états de I'art sur la théorie des RdP (Murata, 89) et sur leurs
applicationsaux systèmesde production (Di Cesareet al., 92 ; Xie,95 ; Proth et Xie, 96 ;
Camus,97).
I.6.1 Définitions de base
Un RDP est un graphe biparti composé de deux types de sommets : les places et les
transitions.Les places sont représentées
par des cercleset les transitionspar des barres.Des
arcs orientésrelient les places aux transitionset les transitionsaux places. Un arc ne relie
jamais deux sommetsde même nature. Chaqueplace peut contenir un ou plusieursjetons,
représentés
par des marques.L'état d'un réseauest défini par le marquage.Un marquageest
un vecteurà composantesentièrespositivesou nulles, dont la dimensionest égale au nombre
de places; la n'' composantede ce vecteurreprésentele nombredejetons qui figurent dansla
place n du réseau.La dynamique du systèmeest modéliséepar les franchissementsdes
transitions,définis ultérieurement,qui font évoluer le marquage.Un exemple illustratif d'un
RDP est donnédansla fisure I.9.
Plusformellement
un RDPestun 5-upletR: (P,T, A, W, Mo)où :
P estun ensemble
fini de places,P : {pr, pz, ..., pn}
T estun ensemblefini de transitions,T = {tr, tz,...tn,'}
A est I'ensemblefini desarcs,A E G x T) ur (T x P)
W est la fonction poids attachéeaux arcs,W : A-+1N
M6 est le marquageinitial, M6 : P+ /N
PaT:A
Un RdPestdit ordinairesi W(a;=1,Va e A.
I.6.2QuelquesdéfinitionsdrunRdP
Dans la suite,nous appelonsparfoisle graphesous-jacent
d'un RdP, c'est-à-dire
N: (P, T, A, W), le RdP non-marqué.
Nous utilisonségalementla notation(N,M6) pour
désigner
un réseaude Petriet nousI'appelons
un RdPmarqué.
Dansla suitenousutilisonslesnotationssuivantes
:
32
flexiblesde production: étatde I'art
dessystèmes
Ordonnancement
'p
ensembledestransitionsd'entréede la placep
pa
ensembledestransitionsde sortie de la placep
tt
ensembledesplacesd'entréede la transitiont
t'
ensembledesplacesde sortiede la transitiont
M(p)
le marquagede la place p, c'est-à-direle nombrede jetons
w(p't)
le poids de I'arc qui relie p à t
w(t,p)
le poids de I'arcqui relie t à p
FigureL9 : Exempled'unRdP
Règlesde validation et de franchissement
d'une transition
Une transition t est franchissablesi chaqueplace d'entréep contient au moins un
nombredejetonségalau poidsattachéà I'arcreliantp à t (dansle casd'un RdPordinairece
JJ
Ordonnancement
dessystèmes
flexiblesdeproduction: étatde I'art
poids est égal à 1). On dit aussique c'esttransitiontirable. Plus formellement,une transitiont
est franchissablepour un marquageM si, et seulementsi,
M(p)>W(p,t),Vpe't.
Le franchissement d'une transition franchissable est une opération instantanée et
seulementune transitionest franchieà la fois. L'opérationde franchissementd'une transitiont
consisteà retirer W(p,t) jetons de toute place d'entrée(de t) p € 't et à ajouter W(t,p) jetons
danstouteplace de sortiep € t'. Le franchissementd'unetransitionfranchissableà partir d'un
marquageM conduit à un nouveaumarquageM'.
Le franchissementd'une transition conduit naturellementau franchissementd'une
séquencede transitions.Un marquageM est dit atteignableà partir du marquageinitial M6 s'il
existe une séquencede transitionsfranchissabletransformantM6 en M. Nous désignonspar
ACJ,Mo)I'ensembledesmarquages
atteignables
d'un RdP R:(ttr,Mo).
Une relation fondamentaledes RdP est l'équation d'état. Cette relation s'applique à
tout marquageatteignableM et est définie comme suit:
M:Mo+C
6
où o est une séquencede transitions franchissabletransformantM6 en M, d son vecteur
comptagedont chaqueélémentcorrespondau nombred'occurrencesd'une transitiondanso :
C:[Cptl est la matrice d'incidencedu RdP défini commesuir:
co,
w(t,p),
-w(p,t),
W(t,p)-W(p,t),
0,
sipet'1pÉ't
sipÉt'^pe't
sipet'^pe't
sinon.
Transitionssourceset transitionspuits
Une transition source est une transition sans place d'entrée
; elle est toujours
franchissable
ou tirable.Unetransitionpuitsestunetransitionsansplacede sortieet ellepeut
êtretiréesi elleestfranchissable.
Dansla suite,on illustrecesdeuxtypesde transitionà I'aidede la figure I.10. Dans la
figureI.10,t1 estunetransitionsourceet t5 estunetransitionpuits. Le marquageinitial de cet
exemple
estMo: [,0,0,0].
34
flexiblesdeproduction: étatdeI'art
dessystèmes
Ordonnancement
FigureI.10 : Transitionsde sourceet de puits
Circuits élémentaires/boucles/verrous/trappes
Un circuit élémentaireest un chemin qui part d'un sommet (place ou transition) du
RdP et y revient sansjamais rencontrerplus d'unefois le mêmesommet.
Une boucle (p,t) est telle que p € {'t} et p e{t'}. C'est-à-direque p est à la fois une
place d'entréeet une place de sortie de la transition t. Un RdP est dit pur s'il ne contient
aucuneboucle.
Dans les RdP ordinaires,on utilise encoredeux autresdéfinitions : les verrous et les
trappes.Un verrou, aussiappelésiphon,est un ensembleP, de placesoù toute transition,qui a
une place de sortie dansPr, a au moins une place d'entréedansPr. Une trappeest un ensemble
Pl de placesoù toute transition,qui a une place d'entréedansP,, a au moins une place de sortie
dansP1.
Jf
Ordonnancement
dessystèmes
flexiblesdeproduction: étatdeI'ar1
Propriétés comportementalesdes RdP
Soit R:(N,Mo) m RdP marqué:
oR est vivant si, et seulementsi, VM e A(R,Mo) il existe une séquencede
transitionsfranchissables
à partir de M contenanttoutesles transitions;
o R est réversiblesi, et seulementsi vM e A(R,Mo) il existe une séquencede
transitions transformantM en M6 ;
oR est bomé si, et seulements'il existe un nombre k > 0 tel que, VM e
A(R,M6) M(p) < k.
I.6.3 RdP Temporisés
Il existe dans la littérature,plusieursmodèlesde RdP temporisés.L'utilisation de la
temporisationet sa localisationdépendentde I'application.Lorsqu'onassociela temporisation
aux transitions,on obtient un RdP T-temporisé(Ramchandail,74). Lorsque la temporisation
est associéeaux places,les RdP deviennentdes RdP P-temporisés(Sifakis, 78). Dans notre
cas, c'est-à-diredans les systèmesde production, nous utiliserons les RdP P-temporisés
déterministes,c'est-à-direque desduréesdéterministesserontassociéesaux places.
Dans les RdP P-temporisés,on associeune duréeaux places.Les jetons ont un temps
de séjour minimal dans chaqueplace et, pendantce temps, les jetons ne peuvent pas être
utilisés pour le franchissementdes transitions. Le franchissementd'une transition est
instantanéet s'effectuede manièreidentiqueque dansles Rdp non temporisés.
Nous notonsqu'il a été montré (Sifakis,80) que les RdP P-temporiséset T-temporisés
sontéquivalentset que I'on passeaisémentd'un modèleà un autre.
1.6,4Les RdP et lesSystèmes
de Production
Nousavonsdonné,dansles paragraphes
précédents,
les notionsde baseet quelques
définitionsde RdP et de RdP P-temporisés.
Nous montrons,dans ce paragraphe,leur
utilisationdanslessystèmes
deproduction.
Le systèmede productionà modéliserest un systèmede productionà ressources
multiplesoù chaquetravail est composépar un ensembled'opérations.
Chacunede ces
opérations
estdéfiniepar un ensemble
deressources
et sontempsopératoire.
36
flexiblesdeproduction: étatde I'art
dessystèmes
Ordonnancement
La modélisation par RdP P-temporiséd'un tel systèmepeut être résuméeen deux
étapes:
elle consiste à représenterchaquetravail par un chemin élémentairequi
représenteson processusde production (gamme).Nous illustrons cette
étape avec la figure I.ll. Le RdP contient \+2 places, où \ est le
nombre des opérationsdu travail j et les deux places supplémentaires
Etape1:
correspondentà la place de sourceet à la place de puits. La place de
source correspond aux produits à fabriquer et la place de puits
conespondà la réalisationcomplètedu travail. La transition tir, (k:0 à
\) conespondau début de I'opérationQr*1. Un temps nul est associé
aux places de source et puits; pour les autres places, on associe le
temps opératoirede I'opérationcorrespondante.
elle consisteà ajouter les contraintesde ressourceau RdP P-temporisé.
Chaqueressourcesera représentée
par une place ri, i : 1,2, ..., m
Etape 2:
contenantinitialement un jeton (nous restonsdans le cas de ressource
unitaire,c'est-à-direune unité de chaquetype de ressource).
La figure I.l2 donnele modèleRdP Ptemporisé d'un systèmede production.
oro
tro
orr
trr
or:
trz
or:
t
(0)
(p")
Grr)
(0)
Figure I.1 I : RdP d'un travail de deux opérations
37
Ordonnancement
dessystèmes
flexiblesde production: étatde I'art
rr (Mr)
o'o(o)
oro(o)
rz (Mz)
tro
t:o
ot' (5)
o" (5)
trr
tsr
o" (5)
o 3 2( 1 0 )
lru
o', (o)
ttz
or, (o)
ot, (o)
FigureI.12 : RdPP-temporisé
du système
à ressources
multiples
I.7 Ordonnancement
de systèmes
de production
Nous présentons,dans ce paragraphe,les travaux qui prennenten compte les
contraintes
importantes
d'unpoint de vuedu systèmede productionet qui sontignoréesdans
la majoritédestravauxsur I'ordonnancement.
En particulier,nousnousintéressons
à la prise
en considération
desopérations
nécessitant
desressources
multiplestellesque lesmoyensde
manutention,
les robots,les zonesde stockageà capacitétrès limitée,etc. Il s'avèreque le
problèmedeblocagedevientimportantpourla coordination
detouteslesressources.
38
Ordonnancementdes systèmesflexibles de production : état de I'art
multipleset
I.7.1 Job-shopshybridesavecopérations à ressources
flexibilité de ressources
Nous présentons,dans ce paragraphe,les travaux de Dauzère-Pérèset al. (DauzèrePérès et Paulli, 97 ; Dauzère-Pérèset al., 98) sur I'ordonnancementdes job-shops dont
I'objectif est la prise en compte de certainescontraintesindustriellestelles que la flexibilité
i desressourceset la nécessitéde plusieursressourcespour une opération.
premier article (Dauzère-Pérès et Paulli, 97) considère le problème
d'ordonnancement des job-shops hybrides dans lesquels chaque travail nécessite une
= séquenced'opérations et chaque opération peut être effectuée par un sous-ensemblede
- machinesavec
différentesperforrnances.Le problème consisteà affecter les opérationsaux
Le
machines et à ordonnancer les opérations sur les machines de manière à minimiser le
makespan.Les auteursproposent,danscet article, une extensiondes graphespotentiel-tâches
pour représenterà la fois l'ordonnancementet I'affectation.Cette représentationa permis de
définir de la même manière la réaffectationet le réordonnancementd'une opération. Une
méthode tabou fondée sur cette relation de voisinage est ensuite proposée.Les résultats
numériquessont excellents.
Le deuxièmearticle (Dauzère-Pérès
et al., 98) est une extensionde I'article précédent.
Plus précisément,on considèreun ensembled'opérationsdont la relation de précédenceest
décrite par un graphe acyclique (connexeou non). Chaquesommet de ce graphe peut avoir
plusieurs prédécesseurs et plusieurs successeurs modélisant une opération
assemblage/désassemblage.
L'exécution d'une opérationnécessitela présencesimultanéede
plusieurs ressourcesdont chacune est à sélectionnerparmi un ensemble de ressources
candidates.Le problèmeconsisteà sélectionnerles ressourcescandidateset à ordonnancerles
opérations sur les ressources de manière à minimiser le makespan. A nouveau, une
représentationpar graphes potentiel-tâchesest proposée.Une relation de voisinage des
solutions fondée sur la nouvelle représentationest proposée.Cette relation de voisinage
permetde relier une solution initiale quelconqueà une solutionoptimaleet évite les situations
de blocage. Plus pÉcisément, on définit une transformation de base qui concerne une
opérationi séquencéeentre deux opérationsu et v sur sa kiètt ressourceet la séquenceentre
deux autres opérations s et t sur sa I' ièmeressource,Il est bien évident que certaines
transformationsconduisentà des cycles dans le graphepotentiel-tâcheset, par conséquent,
donnent des solutions non réalisables. Dauzère-Pérèset Paulli donnent une condition
suffisantepour que les transformationsconduisentà des solutionsréalisables.Cette condition
est égalementune condition nécessaired'optimalité. Surtout, cette condition définit une
structurede voisinageconnective,c'est-à-direqu'on peut transforrnerune solution quelconque
en une solution optimale dansun nombre fini d'étapes.Une méthodetabou a été développée.
L'optimalité asymptotiquede cette méthodeest assuréepar la connectivitéde la structurede
voisinage.De plus, seul un nombre très limité de caractéristiques
sont utiliséesdans la liste de
tabou. Des méthodessimples fondées sur des bornes inférieure et supérieuresont utilisées
39
Ordonnancement
dessystèmes
flexiblesdeproduction: étatde I'art
pour déterminer les nouvelles solutions dans la recherche avec tabous. Les résultats
numériquesattestentl:efficacité de la méthodeproposée.
1.7.2Ordonnancementsansblocagedrun atelierautomatisé
Ramaswanyet Joshi (96) montrent que I'ordonnancement
des ateliersde production
automatisésdiffère de manièresignificativede I'ordonnancement
desjob-shopsclassiques.La
présencede blocageest I'un des problèmescritiquesdansle pilotage d'un atelier automatisé.
En pratique, les situationsde blocage sont résoluesen temps réel etlou a posteriori, ce qui
= exige I'intervention
humaine. L'objectif de Ramaswany et Joshi (96) est de montrer
I'importance et le bénéfice de la prise en compte de blocage dans l'élaboration de
I'ordonnancement.
Plus précisément,Ramaswanyet Joshi considèrentun atelier automatisécomposéde
trois machines sur lesquelles cln réalise quaffe travaux. Le système pourrait être considéré
comme un job-shop s'il n'y n'avait pas les contraintessuivantes: un robot est utilisé pour le
transfert des travaux entre les machines ; chaque machine possèdeun stock tampon de
capacitétrès limitée (de capacité0, I ou 2).
Dans Ramaswanyet Joshi (96), des modèles de programmationlinéaire en nombre
mixte ont été proposéspour ordonnancerle systèmedansles cas suivants: (i) avec des stocks
tampons de capacitéillimitée et sans moyen de transport ; (ii) sans stock tampon et sans
moyen de transport, (iii) sansstock tampon et avec prise en compte de moyen de transport:
(iv) avecdes stockstamponsde capacitéI et sansmoyen de transport.Dans ces formulations.
Ie robot et les stocks tampons sont modéliséscomme des machines,La durée totale de
I'ordonnancement
est de 472 dansle cas(i), de 512 dansle cas (ii), de 560 dansle cas(iii) et
de 502 dansle cas(iv).
De ces résultats,on constateque les ressourcesconsidéréescornme secondairesdans
Iesjob-shops classiquespeuvent avoir des impacts significatifs dans le pilotage d'un arelier
automatisé.De plus, I'ordonnancementavec stocks tampons de capacité illimitée et sans
moyen de transportpeut conduireau blocagemortel dansun atelierautomatisé.En effet, dans
le cas de stocks tampons nuls, une situation de blocage se produit si le robot transfèreun
produit à une machine occupéepuisque le même robot est nécessairepour déchargerde la
machinele produit en coursde fabrication.
I.7.3L'ordonnancementdes réseauxde Petri par rechercheempirique
En s'inspirant
desprocédures
par séparation
et évaluation,
Leeet Di Cesare(Leeet Di
Cesare,94-a) ont proposéune méthodepour I'ordonnancement
optimal des RdP avecun
40
flexiblesde production: étatde I'art
dessystèmes
Ordonnancement
marquageinitial et un marquagefinal. Cette méthode s'apparenteà I'algorithme A' (Laurière,
87) connu en Intelligence Artificielle. Elle parcourt I'espacede marquagesatteignableset
s'arrêtedès que le marquagefinal est atteint.Il est bien évidentque cetteméthoden'évite pas
le problèmed'explosiond'étatset elle ne permetpas d'obtenirla solutionoptimale.Toutefois,
pour guider la recherchevers une bonne solution, une évaluation f(m) est calculée pour
-chaque marquagem en cours d'examen.Cette évaluations'écritsousla forme suivante:
f(m): g(m) + h(m)
=où g(m) représentele coût partiel allant du marquageinitial me à m et h(m) est une évaluation
. du coût restant, c'est-à-dire du coût allant de m au marquage final m1. h(m) est également
- appeléefonction heuristique et dépend évidement du critère à optimiser et de la structure du
RdP.
Plus précisément,la méthodese résumepar I'algorithmesuivantdans lequel OPEN est
la liste de marquagesrencontrésmais non encore séparéset CLOSED la liste de marquages
déjà séparés.
Etape1
Placerle marquageinitial dansla liste OPEN
Etape2
Si OPEN est vide, alors termineravecéchec
Etape3
Retirer le premier marquage m de OPEN et le placer dans la liste
CLOSED
Etape4
Si m est le marquage final, construire la séquence optimale de
transitions du marquage initial au marquage final et terminer avec
succès
Etape 5
Trouver les transitionsfranchissables
depuisle marquagem
Etape 6
Générerles marquagessuccesseurs
m' de m et les pointeursde m à m'
correspondants.
Calculerg(m') pout tout m'
Etape7
Pour tous les successeurs
m' de m faire:
Si m' estdéjàdansOPEN,alorsdirigersonpointeurversle chemin
menantaupluspetit g(m').
b. Si m' est déjà dans CLOSED,alors diriger son pointeurvers le
cheminmenantau pluspetit g(m'). Si cepointeurestredirigé,alors
déplacerm' dansOPEN.
Calculerh(m') et f(m') et placerm' dansOPEN.
4l
Ordonnancement
dessystèmes
flexiblesde production: étatde I'art
Etape 8 :
Trier OPEN dansl'ordre croissantde f(m).
Etape 9 :
Aller à l'étape2.
On trouve également,dans la littérature,des variantesde cetteméthodeen y ajoutant
une procédurede bachracking contrôléedansXiong et Zhou (98) ou une forme quadratique
de la fonction heuristiquedansJenget al. (96).
A priori, cetteméthodes'appliqueà tout problèmed'ordonnancement
des RdP avec un
marquageinitial et un marquagefinal. Parmi les applications,on trouve dansLee et Di Cesare
' (9a-a) la minimisation du makespand'un job-shop avec des opérationsnécessitantplusieurs
ressourceset avec flexibilité de ressource; dans Lee et Di Cesare(94-b),I'ordonnancement
des ateliersflexibles avec contraintesdes AGV ; dansJeng et al. (96), I'ordonnancementdes
ateliers flexibles avec des stocks tampons à capacitélimitée, des AGV et des moyens de
transport.Bien que la méthode s'appliqueà des RdP avec possibilitéde blocage,les travaux
ci-dessusconcernentseulementdes RdP sans blocage. Toutefois, Xiong et Zhou (98) ont
appliquécetteméthodeau problème d'ordonnancement
d'un atelierflexible dû à Ramaswany
et Joshiqui possèdede blocagespotentiels.
En guise de conclusion, cette méthode est très généraleet s'appliqueà une grande
variété desproblèmesd'ordonnancement.
Néanmoins,les fonctionsheuristiquesexistantesne
concementque le makespanet leur qualité sembletrès mauvaise.Bien que la méthodes'arrête
dès qu'une solution a été trouvée, elle souffre égalementde I'explosioncombinatoireet son
application est intéressantepour de problèmesde petite taille mais peu efficace pour des
problèmesde taille raisonnable.
I.7.4 Le lien entre la rechercheopérationnelleet les réseauxde Petri
Richard (97) a traité de I'ordonnancementacycliquedes systèmesde production avec
contraintes de ressource. Pour cela, les Graphes d'Evénements avec Contraintes de
(ou GETR) sont définis. Les GETR sont desgraphesd'événementsaugmentésdes
Ressources
placesde ressourcedont chacunecontientinitialementun jeton et exprimela contrainted'une
ressourceunitaire.Les GETR sont des graphesd'événementsaugmentésproposéspar Chu et
Xie (Chu et Xie, 97) dont les propriétés peuvent être vérifiées à I'aide des propriétés
structurelles.Ce RdP peut modéliser une grande quantité de systèmesde production avec
contraintesde ressources.Afin de spécifier des systèmesde production de grande taille,
Richard a proposé une procédurede synthèsepour modélisersystématiquement
les travaux,
les ressources,les outils, les stocksà capacitélimitée, les stocksFIFO et diversescontraintes
techniques.La procédurede synthèseconduit à un RdP sansblocagesi le systèmemodélisé
est du type flow shop hybride. Pour trouver I'ordonnancementdes GETR, Richard a proposé
une approcheutilisant CHIP, un langagede programmationsous contrainte.En utilisant les
42
Ordonnancementdes systèmesflexibles de production : état de I'art
GETR, le problème d'ordonnancementest encoreun problèmeNP-difficile. C'est pour cette
raison que fuchard a égalementproposé une généralisationde la méthode sérielle, une
méthode classiqued'ordonnancementdes projets, pour construire de bonnes solutions des
problèmesde grandetaille.
Il a égalementétudié I'ordonnancementdes RdP temporisésséquentiels(ou STPN),
une classe de RdP comportant une place d'exclusion mutuelle reliant à chaque transition.
Dans cette nouvelle classe de RdP, la place d'exclusion mutuelle impose I'exécution
séquentielle des transitions. Richard a démontré la NP-complexité de ce problème
-d'ordonnancementet il a proposéune méthodede résolutionà deux étapesdont la première
= déterminele nombre de tirs de chaquetransition à I'aide de la programmationlinéaire et la
, deuxième étape vérifie l'existence d'une séquencede tirs correspondantà I'aide d'un
algorithme de joueurs de jetons (token players). Ces deux étapes sont NP-complètes.Un
effort est alors fait pour mettre en évidencede nouvellesconditionssuffisantesd'accessibilité
pour l'équation d'état d'un RdP. A partir de ces conditions d'accessibilité, Richard a
démontré que tout programme linéaire en nombre entier peut être associé un STPN
équivalent.Ces résultatssont ensuiteétendusau cas continu,c'est-à-direaux RdP continuset
aux prograrruneslinéairesavecvariablescontinues.
1.7.5 "Hoist Scheduling" ou ordonnancement de
manutentionen galvanoplastie
robots de
Ce problème d'ordonnancementa initialement été posé pour la gestion des lignes de
traitementde surfacede métaux. Il est connu sous le nom de Hoist Schedulingou HSP. Il
consisteà ordonnancerles mouvementsdu robot (ou desrobots)de manutentionpour charger
ou déchargerdes cuves suivant une séquenceopératoiredonnée pour chaque produit. Les
caractéristiques
suivantesle différencientdesproblèmesd'ordonnancementclassiques:
'
le temps de passaged'un produit danschaquecuve est borné par une
fenêtrede temps,c'est-à-direqu'il doit resterassezlongtempsmaisne doit
pasrestertrop longtempsdansunecuve;
'
les tempsdesdéplacements
accomplispar les robotssontnon négligeables
et il faut gérerle parcousde chaqueroboty comprislestrajetsà vide ;
.
lescollisionsentrelesrobotssontinterdites.
On trouveun état de I'art sur le problèmeHSP dansManieret Baptiste(94).Nous
nouscontentons
de donnerquelques
travauxreprésentatifs.
43
Ordonnancement
des systèmesflexibles de production : état de l'art
Deux approchessont considérées:I'approcheprédictive et l'approcheréactive. Dans
les travaux sur I'approcheprédictive,on se placedansle casde grandessérieset on s'intéresse
à I'ordonnancement périodique. La plupart des travaux modélisent le problème
d'ordonnancementcomrne un problème de programmationlinéaire en nombres mixtes. La
résolutionse fait soit en utilisant des logiciels de programmationlinéaire (Philips et Unger,
76; Bracker et Chapman, 85), soit à I'aide des procédurespar séparationet évaluation
(Shapiroet Nuttle, 88 ; Lei et Wang, 89 ; Chen et a1.,94).
L'approcheréactive utilise des règles heuristiquespour déterminerle lancementdes
produits et choisir les mouvementsdes robots.Elle s'appliqueaux petiteset moyennesséries
mais pose le problème de respect de contraintestelles que les durées opératoires et la
collision. Pour améliorercet aspect,les RdP P- temporelsdanslesquelsle temps de séjoursde
jetons dans chaqueplace est borné ont été utilisés dans Collart-Dutilleul et Denat (97) pour
modéliseret superviserles systèmesdu type HSP.
I.7.6 Les systèmesnon cycliquesov on-line et les RdP
Les systèmesnon cycliquesou systèmeson-line sont des systèmesqui évoluentdans
le tempsen réponseaux demandesdu mondeextérieur.
Wang (95) a étudié ces systèmeset leur modélisationà I'aidedes RdP. Il a proposé
une approchemodulaire qui utilise les RdP et leurs propriétéspour traiter les systèmesde
production de grande taille. Une telle approcheconduit à une gestion hiérarchiséede la
planificationà court terme et de I'ordonnancement.
La planification à court terme a comme objectif d'établirla quantitéde chaqueproduit
à fabriquerpendantchaquepériodeélémentaireen fonction de la capacitéglobale du système.
L'ordonnancementdécide,à I'intérieurde la premièrepériodeélémentaire,des ressourcesqui
vont exécuterles différentesopérationset le débutde chacune.
Wang a utilisé I'approchehorizonglissantpour la planificationà court terme à horizon
H. Cette approchefonctionne comme suit : au début de la secondepériode élémentaire,on
recommencela planification sur I'horizonH en tenantcomptedes nouvellesdonnéesqui sont
intervenuesdepuis le calcul précédentet des produits déjà ordonnancéssur cet intervalle,on
calculeI'ordonnancement
sur la premièrepériodeélémentaireet ainsi, successivement.
Le modèle utilisé pour la planification est I'ensembledes modèles des gammes de
fabricationdesproduits. La gammede fabricationd'un produit, du point de l'ue de la gestion
de production,est la successiondes opérationsà effectueravec,pour chacuned'elles,la liste
des machinessur lesquelleselle peut être effectuéeet le tempsnécessairepour I'exécutersur
chacunedesressources.
44
Ordonnancementdes systèmesflexiblesde production : étatde l'art
Le modèle RdP de la gamme de fabrication d'un produit comporte des transitions
de cestransitionsreprésententles lancements
sourcestemporiséesà zéro. Les franchissements
en fabrication de nouvelles unités de produits. Ce RdP comporteaussi des transitionspuits
dont le franchissementreprésentela fin de fabrication. Les RdP doivent être à sorties
contrôlables, c'est-à-dire qu'il est toujours possible de franchir une transition de puits
quelconquesansêtre obliger de franchir d'autrestransitionsde puits (Wang et Xie, 96 ; Proth
et a1.,97).
Le modèle de planification est constituéde composantesconnexesdisjointes,chacune
de ces composantesétant un RdP à sortie contrôlable sans place de ressource.Chaque
composanteconnexeest le modèle d'une gamme de fabricationet ne comporte qu'une seule
transitionpuits.
est obtenuen complétantle modèlepour la planification
Le modèle d'ordonnancement
de la manièresuivante:
.pour chaque machine, on introduit une place contenantun jeton. Ces places
sont les placesde ressources.
. on introduit les arcs qui font de chaqueplace ressource,la place d'entréeet de
sortie de toutesles transitionscorrespondantes
à cettemachine.
Du fait que les RdP élémentairespeuvent conduire à des modèles de grande taille,
Wang a utiliséeI'approchemodulairesuivante:
r
décomposerle systèmede fabricationen modules;
o
modélisercesmodulesà I'aidedesRdP et desplacesd'interface;
r
vérifier que les propriétés qualitatives de chacun des modules sont les
propriétéssouhaitées;
r
simplifier chacunde cesmodulesen préservantles propriétésqualitatives;
o
intégrerles modulessimplifiés tout en préservantles propriétésqualitatives.
Le modèle intégré,composéde modules simplifiés, serviraà la planification à moyen
terme et donnera les quantités à fabriquer par chaque module pendant chaque période
élémentaire.On pourra effectuerla planification à court terme et I'ordonnancement
au niveau
de chaquemodule en utilisant les algorithmesproposéspar Savi (94).
45
dessystèmes
flexiblesde production: étatde I'art
Ordonnancement
En conclusion,les RdP peuventêtre utiliséspow gérerdes systèmesnon cycliquesde
taille quelconque.Pour atteindre cet objectif, les systèmessont décomposésen modules
contrôlableset ces demierspeuventêtre simplifiés pour obtenir desmodèlesintégrésagrégés
et utilisables au niveau haut. Ainsi, les RdP constituent un moyen d'intégration de la
planificationet de I'ordonnancement.
1.7.7Ordonnancementsansattenteet sansen-cours
C'est une classeimportantede problèmesd'ordonnancement
qui se distinguepar les
. contraintesdu type sansattente (no-wait) ou sansen-cours (blocking). Dans un systèmesans
attente, chaque produit doit être traité sans intemrption du début jusqu'à la fin. Dans un
système sans en-cours, un produit ayant été traité sur une machine reste bloqué sur cette
machinejusqu'à ce que la machine suivante devienne libre. Ces situations se produisent
souventdans la sidérurgieoù le traitementde lingots à très hautetempératuredoit être réalisé
de manière continue. On trouve ces caractéristiqueségalement dans les systèmes
pétrochimiques,pharmaceutiques,
cosmétiques,etc.
Une étudebibliographiquedétailléeest donnéedansHall et Sriskandarajah(96). Nous
donnons,dans ce paragraphe,quelquesrésultatsimportants concernantles flow-shops qui
représentent
la majoritédessystèmesréels.
D'abord, pour les systèmessans attente ou sans en-cours,I'ordre de passagedes
produits sur les machinesest identiquequelle que soit la machine.Alors, I'ordonnancement
revientà déterminerune perrnutationdesproduitset leur datede lancement.On montre que la
minimisationdt makespanse transformeen un problèmedu voyageurdu commerce.De plus,
le problèmede minimisation du makespanest polynomial pour le casde deux machineset se
résoutpar I'algorithmede Gilmore et Gomory (Gilmore et Gomory, 64). Malheureusement,
le
problèmedevient NP-difficile au sensfort à partir de trois machinesdans un systèmesans
attenteou sansen-cours.
Les problèmesd'ordonnancement
sansattenteet sansen-courspeuventêtre considérés
conrmedes cas particuliers de procédéschimiques multibatcfts.Des nombreux ûavaux ont
été consacrésà I'optimisationde cessystèmescomposésdes réacteurset des conteneursreliés
par des conduitsde canalisation.La planification et I'ordonnancement
de ce type de système
nécessitentla prise en compte de "recettes"de fabrication de produits, la disponibilité des
matièrespremièrestelles que les additifs, les capacitésdes réacteurset des conteneurs.pour
I'ordonnancementà court terme, on parle des systèmes ZW (zero wait), FIS (finite
intermediatestorage), UIS (unlimited intermediatestorage) et des systèmeshybrides. Les
systèmesZW correspondentaux systèmessans attente ou sans en-cours. On trouve une
littératuretrès riche sur ce sujet dansRippin (93) ; Sahinidiset Grossmann(91) ; Ku et Karim,
(e0).
46
Ordonnancementdes systèmesflexibles de production : état de I'art
I.7.8 Ordonnancementdes cellulesrobotisées
d'unecellule composéede deux, trois ou quatremachines
Il s'agitde I'ordonnancement
alimentéespar un robot. La cellule fabrique de manièrerépétitiveun ensemblede produits.Le
problème consisteà déterminerle cycle des mouvementsd'un robot et le séquencementdes
-.produitsafin de minimiser le tempsde cycle, c'est-à-diremaximiserla productivité.
Sethi et al. (92) ont trouvé la séquenceoptimale desmouvementsdu robot pour le cas
de deux machinesfabriquant un seul produit. Un algorithmepolynomial a été proposé par
Hall et al. (97) pour le cas de deux machinesfabriquantplusieursproduits.Pour le cas de trois
=machines, Sethi et al. (92) ont réduit le mouvement du robot à six séquencespossibles.
= Malheureusement,le problème
d'ordonnancementdes produits pour deux de ces six
séquencesresteNP-difficile au sensfort (voir Hall et a1.,97).Une méthodedu type Branch &
Bound a étéproposéepar Chen et al. Q\ pour les deux casdifficiles. Hall et al. (97) montrent
égalementque le problème d'ordonnancementdevient NP-difficile au sensfort, pour toute
séquencedu robot, pour le cas de plus de trois machines.Finalement, nous notons que
Zuberek(95) a utilisé les RdP temporiséspour modéliseret évaluerchaqueséquencedu robot
et I'ordonnancement
desproduits.
I.8 Détection, prévention, élimination et correction des
blocages
La mise en jeu simultanéed'une grandevariété de ressourcesdans les systèmesde
production modernescomplique significativementleur coordinationet pose le problème de
blocage. En effet, une situation de blocage se produit si, par exemple, un robot de
manutention transporte un produit vers une machine déjà occupée et le même robot est
nécessairepour le déchargementde la machine.
Le phénomènede blocage a été largement étudié pour les systèmesd'exploitation
informatiques.Il est reconnu que les conditionssuivantessont nécessaires
pour les blocages
(Coffman et al., 71) : (1) exclusionmutuelle, (2) non préemption,(3) retenir et attendreet de
(4) attentecirculaire.
Pour éviter les blocages,il suffit de s'assurerqu'au moins une des quatre conditions
est fausse.Dans les systèmesde production,les deux premièresconditionssont généralement
vraies.Le blocagene se produit pas dans les systèmesde productiontraditionnelstels que les
job-shopset les flow-shops, car la troisièmecondition est fausse.En effet, dans ces systèmes,
une machine nécessairepour la fabrication d'un produit est libérée dès la fin de I'opération
conespondante et ceci, quelle que soit la disponibilité de la machine suivante.
Malheureusementcette condition "retenir et attendre" est présente dans les systèmes
47
des systèmesflexiblesde production : état de I'art
Ordonnancement
automatiséscar la capacitéde stockageest souventtrès faible et un moyen de manutentionest
nécessairepour charger et déchargerune machine.Eviter le blocagedépendalors fortement
de la demièrecondition.
Pour les systèmesde production,les solutionspour faire face au problème de blocage
sont la prévention,le contrôleen temps réel(deadlock avoidance)et la correctiona posteriori
(deadlock recovery).La prévention consisteà définir a priori pour chaqueétat du système,
une politique d'allocation de ressourcesafin d'éliminer les blocages.Cette politique est
nécessairement
statique.Par contre, le contrôle en temps réel est une stratégiedynamiqueet
détermineen temps réel les allocationsde ressourceadmiseset les allocationsà interdire.La
correctiona posteriori consisteà définir les stratégiesà adopterpour sortir d'une situationde
blocage.Nous nous limitons dansce paragrapheà la préventionet au contrôleen tempsréel.
Les outils les plus utilisés dans la littératuresont les RdP et la théorie des graphes.
Nous présentons,dans un premier temps, les travaux utilisant les RdP. Viswanadhamet al.
(90) ont étudiela préventionet le contrôleen temps réel. La préventions'appuie sur le graphe
de marquageet les transitionsconduisantau blocagesont interdites.Le contrôle en tempsréel
se fait par anticipation et admet toute transition qui ne conduit pas à un blocage dans un
nombre donnéd'étapes(finite look ahead).Il est bien évident que cette approchene garantit
pas l'élimination totale de blocage.Banaszaket Krogh (90) considèrentun systèmeavec des
travaux de différents types. Chaque travail nécessiteune suite d'opérationset, à chaque
opération,est associéeune ressource.Cefteressourceresteoccupéejusqu'à la disponibilité
d'une ressourcenécessairepour I'opération suivante.Une politique de contrôle en temps réel
a été proposée.Cette politique, connue sous le nom de BKDAA, est une extension de
I'algorithme de Banker pour les systèmesd'exploitation qui admetun travail dans le système
si toutes les ressourcesnécessairespour sa réalisationsont disponibles; ces ressourcessont
alors réservéesmême si elles ne sont pas nécessairesimmédiatement.BKDAA étend
I'algorithme de Banker en décomposantle processusd'un travail en sous-processus,
appelés
zones. Chaque zone est composée d'une suite d'opérations nécessitantdes ressources
partagéessuivie d'une suite d'opérationsutilisant des ressourcesdédiées. La politique
BKDAA admet un jeton dans une nouvelle zone si le nombre de jetons dans la zone ne
dépassepas le nombre de ressourcesdédiées.Cette politique a ensuite été améliorée par
divers auteurs(Hsieh et Chang, 94 ; Xing et al., 96). Ezpeletaet al. (95) ont généraliséle
modèle RdP de Banaszaket Krogh en tenant compte de la flexibilité de routage et ils ont
proposéune politique de prévention sous-optimalefondéesur les propriétésdes siphons.Les
siphonsont été égalementutilisés pour définir une politique de contrôleen temps réel pour le
même modèlede RdP (Barkaouiet Ben Abdallah. 94).
Cho et al. (95) ont considérésle modèlede productionproposépar Banaszaket Krogh
dans lequel chaquetravail est réalisé en visitant une suite de ressources.Les ressourcessont
supposéestoutes différentes les unes des autres et il n'y pas de stock tampon entre les
ressources.Ils ont proposéune représentationgraphiquede l'état du système,appeléegraphe
48
dessystèmes
flexiblesdeproduction: étatde I'art
Ordonnancement
d'étæit,
dans laquelle les sommetscorrespondentaux ressources; un sommet est étiquetéde
(,k) si la ressourcecorrespondanteest utilisée pour l'opérationk du travail j, un arc étiqueté
(.k) relie deux sommetsrr et 12si le travail j passede la ressource11à la ressource12à la fin
de I'opérationk. Des conditionsnécessaires
etlou suffisantesont été proposéespour détecter
les situationsde blocageet les situationsde blocageéminentqui conduisentau blocagequelle
que soit l'évolution ultérieure.A partir du graphed'état ci-dessus,Fanti et al. (97) ont proposé
un autre graphepermettantla détectionaiséedu blocagede secondniveau qui n'est pas un
blocage immédiat mais conduit au blocage dans une seule transition. Des politiques de
contrôleen tempsréel ont été proposéespour éliminer tous les blocages.
Reveliotis et al. (97) ont proposéun modèle de systèmede production très général,
appeléRAS conjonctif, danslequel chaquetravail nécessiteune suited'opérationset le besoin
en ressourcesde chaqueopérationest décritpar un vecteurqui donnele nombre de ressources
de chaque type nécessaire.Compte tenu de la complexité du problème, ils ont étudié les
politiquesde contrôleen tempsréel qui éliminent tous les blocageset qui sont polynomiales.
I.9 Conclusion
De cette étude bibliographique, nous constatonsque la plupart des travaux en
ordonnancementignorent les aspectsimportants des systèmesde production automatisés
suivants:
'variété de ressources,
. possibilitéde blocage,
' opérationsnécessitantsimultanémentplusieursressources.
Les travaux portant sur la détectionet l'élimination de blocage ne prennentpas en
compte les performances quantitatives du système. La plupart des travaux sur
I'ordonnancementdes systèmesde production à I'aide des RdP s'appuientsur I'exploration
desgraphesde marquageset, par conséquent,souffrentde l'explosion combinatoire.
49
Chapitre
II
Job-Shops Mu1ti-Ressources
avec Blocage : définition
et étude de Ia complexité
Job-Shops
Multi-Ressources
avecBlocage: définitionet étudede la complexité
II.1 Introduction
La courseà la productivité,la recherched'unemeilleure qualité et de coût le plus bas
obligent les entreprisesà automatiser,à intégrer et à rendre plus flexibles leurs systèmesde
production.Les réponsessont d'abord technologiquesgrâceà desmachinesplus performantes
utilisant la technologie numérique, des machines flexibles capablesde passer rapidement
d'une production à une autre, des moyens de transport automatiséstels que les AGV
(AutomatedGuided Vehicles),etc, De plus en plus, les entreprisesautomatisentpartiellement,
voire entièrement, leurs moyens de production clés. Les moyens de production sont
aujourd'hui très riches et variés, dépassentlargementla fonction de transformationassociée,
traditionnellement,aux moyens de production. On trouve, dans un systèmede production
moderne,des machinesà commandenumérique,une grandevariété de moyens de transport
automatisés(convoyeurs, AGV, ponts roulants), des robots pour la manutention etlou
I'assemblage,des installations automatiséespour le stockage des produits etlou des
composantsainsi qu'une variété impressionnanted'outils tels que les outils de découpe,les
outils d'usinage, les palettes et les outils de fixation. Un autre facteur important est la
réductionimportantedu nombre de chaquemoyen de productionen raison des coûts souvent
très élevés.Le fonctionnementd'un tel systèmeposele délicat problèmede la coordinationde
l'ensemble des ressources,problème auquel nous nous attaquons.Pour une description
détailléedessystèmesflexibles,voir Stecke(85), Kusiak(90), Sawik(90), Solot et Vliet (94).
Comme souligné par Ramaswanyet Joshi (96), la planification et le contrôle d'un
système automatisé de production diffèrent considérablement des problèmes de
I'ordonnancementétudiésdans la littératuretraditionnelleque nous avons présentésdans le
chapitreI. La plupart des travaux sur I'ordonnancement
ne considèrentque les produits et les
machines et ignorent souvent la variété des ressourcesmises en jeu dans un système de
production. Dans ces travaux, on suppose souvent que les temps de transport soient
négligeablesou bien constants,quel que soit l'ordonnancement.En pratique, la gestion des
moyens de manutentionest très délicateet une mauvaisegestionpeut perturber de manière
significativela production.Une autre hypothèse,faite explicitementou implicitement dans la
quasi-totalité des travaux, est I'existence des stocks tampons à capacité illimitée. Cette
hypothèseest fausse dans le cas d'un systèmeautomatisé.Pire encore, l'ordonnancement
obtenu sous cette hypothèsepeut conduire au blocage mortel du système,ce qui exigera
I'interventionhumainepour débloquerle système.
Pour prendreen compte la variétédesressourceset le problèmede blocage,l'approche
la plus souvent utilisée est hiérarchique.L'affectation des ressourcesest faite de manière
progressive,selon leur importance.Par exemple,Sawick (93) a proposéune approcheà deux
niveaux qui détermine d'abord un ordomancement en prenant compte les capacitésdes
machines et modifie ensuite cet ordonnancementpour prendre en compte les moyens de
transport.Dans la quasi-totalitédes travaux, l'ordonnancementest calculé sans prendre en
compte le problème de blocage et on résout le problème de blocage en temps réel en
50
Job-ShopsMulti-RessourcesavecBlocage: définition et étudede la complexité
interdisant le lancement en fabrication des produits pouvant conduire au blocage ou en
appliquantdes procéduresde correction pour sortir des situationsde blocage.Les méthodes
utilisées pour faire face au blocage sont les méthodesde détection,prévention,contrôle en
tempsréel et correctionque nous avonsprésentésdansle chapitreI.
Contrairement aux approchesmentionnées,nous proposons,dans cette thèse, une
;approche intégrée d'ordonnancement pour prendre en compte simultanément la variété des
saillantesdu modèle que nous
:lessources et le problème de blocage.Les deux caractéristiques
.
proposons sont : (i) les opérationsnécessitantsimultanémentdes ressourcesde différents
types que nous appelons opérations à ressourcesmultiples ; (ii) la contrainte "retenir et
= attendre"pour le passaged'une opérationà I'opération suivantedu même travail, c'est-à-dire
-que les ressourcesnécessaires
pour une opérationne sont libéréesqu'au début de I'opération
suivante.La caractéristique(i) permet la prise en considérationde l'ensemblede ressources.
La caractéristique(ii) conespondmieux à la réalité industrielleque l'hypothèseutilisée dans
les travaux existants qui supposentque les ressourcessont libérées à la fin de chaque
pour I'opération suivante.
opération,ceci quel que soit l'état des ressorucesnécessaires
Dans la suite de ce chapitre.nous définissonsles systèmesdu type job-shop MultiRessourcesavec Blocage et formulons le problèmed'ordonnancement.
Nous donnonsensuite
une classification de ces nouveaux systèmesselon le besoin en ressourcesdes opérations.
Nous montronsque les job-shopsMulti-RessourcesavecBlocagefournissentun cadregénéral
pour étudier I'ordonnancement
des systèmesindustrielscar ils incluent comme casparticuliers
de nombreuxproblèmesabordésdans la littérature.Nous terminonsle chapitrepar une étude
détaillée de la complexité du problème d'ordonnancementdes job-shops Multi-Ressources
avec Blocage en nous appuyant sur les résultats connus pour des cas particuliers et en
développantdesrésultatsnouveauxpour les casnon couvertsdansla littératureexistante.
II.2 Job-shops Multi-Ressourcesavec Blocage et leur
ordonnancement
Dansla théoriede I'ordonnancement
des systèmes
de production,I'ordonnancement
des job-shopsest un des problèmesles plus étudiéscar d'une part, les job-shopssont
couramment
rencontrés
dansla pratiqueet d'autrepart,leurordonnancement
estun problème
de complexitéformidable.Formellement,
unjob-shopestun atelierdanslequellesopérations
d'un produit (ou travail) suiventun ordrede productionnon nécessairement
identiquepour
tous les produits.L'importancedesjob-shopset leur ordonnancement
sont les raisons-d'être
de nombreuses
proposées
méthodesexacteset approchées,
dansla littérature(voir I'excellent
étatde I'artélaboréparBlazewiczet al.,96).
5l
Job-ShopsMulti-Ressourcesavec Blocage: défuritionet étudede la complexité
Comme 1l a été constatédansla littérature,l'évolution dessystèmesde productionrend
les modèlesthéoriques,tels que les flow-shopset les job-shops,inapplicables.Comme nous
I'avonsmentionnéà maintesreprises,une des caractéristiques
fondamentalesdes systèmesde
production est la mise en jeu d'une grandevariété de moyens de production afin d'assurer
différentesfonctions d'un systèmeautomatiséou semi-automatisé.
Une autre caractéristique
due au partagedes ressourcesde production, telles que les stocks tampons à capacitétrès
limitée et les moyens de manutention, est la possibilité de blocage mortel suite à une
mauvaisecoordinationdes ressources.Cettecaractéristiqueest nouvelleet n'apparaîtpas dans
les systèmesclassiques
tels que les flow-shopset lesjob-shops.
L'objectif de ce paragrapheest d'introduireune généralisationdesjob-shopsprenanten
comptela variétédes ressourcesimpliquéesdansune productionet le phénomènede blocage
mortel dû au partagedes ressources.Nous appelonsles nouveauxsystèmesjob-shops MultiRessourcesavecBlocage (ou job-shopsMRB en abréviation).Dans la suite,nous définissons
formellementles ressources,Ies opérations,les travaux et I'ordonnancementd'un job-shop
MRB.
Ressources:De l'état de I'art du chapitreI, nous constatonsque la plupart des travaux
en ordonnancementdes systèmesde production ne prennent en compte que les
machinescomme ressources.Traditionnellement,les autresressources,telles que les
outils, les moyens de manutentionet les zonesde stockage,sont considéréescomme
des ressourcessecondaires.On espèreque I'ordonnancement
calculé avec contraintes
de machinespeut être adaptépour prendreen comptetoutesles ressourcessecondaires
sanstrop dégraderla solution.Malheureusement,
cornmeconstatédansRamaswanyet
(96),
Joshi
non seulementla solution peut être dégradéede manièresignificative pour
un systèmeautomatiséréaliste mais certains ordonnancements
peuvent conduire au
blocage mortel et, par conséquent,sont non réalisables.Contrairementaux modèles
classiquesd'ordonnancement,un job-shop MRB prend en compte à la fois les
ressourcesprincipales et aussi les ressourcessecondaires.Il est alors naturel d'avoir
plusieursressourcesdu même type.
Un job-shop MRB est composéd'un ensemblede ressourcesde différents types. Il
peut existerplusieursunités de ressourcesdu même type. Plus formellement,soit R =
de ressources
où m est le nombrede typesde ressources.
U,2,..., r, ..., m) I'ensemble
Soit H' le nombre de ressourcesdu type r. Nous soulignonsque la possibilité d'avoir
plusieurs ressourcesdu même type distingue les job-shops MRB des job-shops
classiques tout comme elle distingue les flow-shops hybrides des flow-shops
classiques.
Opérations: La notion d'opérations
est plus généraledans ce travail que dans la
littératureclassiquede I'ordonnancement.
Traditionnellement
une opérationest une
transformationréaliséeà I'aide d'unemachine.Dans ce travail, nous considérons
52
Job-ShopsMulti-RessourcesavecBlocage: définition et étudede la complexité
commedesopérationstoutesles phasesde la fabricationd'un produit,y comprisles
d'une
manutentions,I'attentedans un stock tampon, le chargement/déchargement
machine,etc.
Pour représenterla variété des ressourcesnécessairespour une opération Qt<, nous
supposonsque chaqueopérationQr a besoind'un ensemblede ressources\r c R et
son temps opératoireest pir<unités de temps. Une opérationQr peut avoir besoin de
plusieursunités de ressourcesd'un Upe r e &r.. Soit hir.,lenombre d'unitésnécessaires
avecla conventionh1r.: 0, V r e \r. On peut alorsreprésenterle besoinen ressotrrces
d'uneopérationQr. par un vecteurh;r.
Nous avons ici une des caractéristiques
saillantesd'un job-shop MRB danslequel une
opération peut nécessiterde multiples ressourceset de multiples unités de chacune.
Nous appelon3ce type d'opérationsles opérationsMRMU (Multi-Ressourceset MultiUnités). Un cas intéressantest le cas où &r. : Q. Il peut représenterla date de
disponibilité d'un produit, le délai de transport sans contrainte de ressource de
transport,etc. Le cas pjk : 0 peut représenterI'attented'un produit avec des ressources
en possession
si \r + Q et libéréde touteressource
si \r = ô.
Travaux: Dans un job-shop MRB, il y a un ensembleJ de travaux à réaliseravec J =
{Jr, Jz, ..., Jj, ..., Jn}, où n est le nombre de travaux.Chaquetravail I nécessiteune
séquenced'opérations{Qr, Op, ..., Qr, ..., Q*:}, où \ est le nombred'opérations
du
travail J.;.Nous utilisons la notation suivantepour représenterun travail :
J.i: {(&r, h.;r,p.ir)
, (&2, h:z,p:z),...,(\N1, htN.i,piN.i)}
où \r, est I'ensembledes types de ressourcesnécessaires
pour I'opération(,k), c'est-àdire \r:
{r e R / h;r,> 0}.
Une autre caractéristiquesaillante des job-shops MRB est la propriété "Retenir et
Attendre" qui définit les conditions de passaged'une opérationà I'opération suivante
du même travail.
Propriété "Retenir et Attendre": L'ensemble
desressources
hir nécessaires
jusqu'au
à une opération(,k) sont retenues
début de I'opérationsuivante
û,k+1)et lesressources
{(h;r,- hjr*r,)r I r e \r, h1n- hir*r,> 0} qui ne sont
plusnécessaires
sontlibéréesaprèsle débutde(j,k+l;.
53
avecBlocage: définitionet étudede la complexité
Job-Shops
Multi-Ressources
Cette propriété de la successiond'opérationsdiffère fondamentalementdes modèles
classiquesd'ordonnancement
dans lesquelsles ressourcesnécessairesà une opération
Qi sont libérées à la fin de Q1 quelle que soit la disponibilité des ressources
pour I'opérationsuivanteOlr*r. Comme nous I'avonsmis en évidencedans
nécessaires
le chapitre I, la propriété "Retenir et Attendre" est un phénomènecourant dans les
systèmesautomatisésde production, à causedes ressourcesde manutentionet des
stockstamponsà capacitétrès limitée.
Pour résumer,un job-shop MRB est caractérisépar (i) la ressourceà multiples unités ;
(ii) les opérationsMRMU ; (iii) la propriété "Retenir et Attendre" pour la successiondes
opérations.
Dans la suite de ce paragraphe,nous formulons le problème d'ordonnancementd'un
job-shop MRB. Le critère considéréest la minimisation de la durée totale, c'est-à-direle
makespan.Le problèmeconsisteà choisir,pour chaquetype de ressourcer e R, une séquence
æ, d'entréedes opérationsnécessitantles ressourcesr et la date de début Sir pour chaque
opération(,k) ahn de minimiser le makespan.
Plus formellement, le problème d'ordonnancementd'un job-shop MRB est définit
commesuit :
Min MAX {C;},
J
sousles contraintessuivantes:
Ci:S:^.i+pjNj,Vl<jcn
(2.r)
S.;r+ p;r.( Slr+r,
Vl <j < n, Vl < k <\
(2.2)
,L
n ,o1' {S 1<r t < Sir +rS
} H,,Vt, V r e
S n , l i l( S a r l i + r: tV r e R , V i
Lesséquences
d'entrée
n, ne conduisent
pasaublocage
(2.3)
(2.4)
(2.s)
où les relations(2.1) définissentla date de fin de chaquetravail, les relations(2.2)
correspondent
aux contraintesde précédence
des opérations.Dansles relations(2.3), h1r,,
ressources
du typer sontutiliséespourI'opération
(,k) ou sontretenues
en attendant
le début
de I'opération
suivante(,k+1) si Sir S t < Slr+r.Lesrelations(2.3)correspondent
doncaux
contraintes
de capacitéde ressources.
Les relations(2.4),danslesquellesær[i]désignela iè''
opérationde la séquence
d'entréenr, assurentla cohérence
entreles datesde débutet les
séquences
d'entréedesressources.
(2.5)concernent
Lescontraintes
I'absence
de blocaqeet ne
54
Job-ShopsMulti-Ressourcesavec Blocage: définition et étudede la complexité
peuvent pas être modélisées explicitement en termes de relations mathématiques.Nous
utilisons ultérieurementles RdP pour exprimercescontraintes.
A première vue, il semblerait que les contraintes (2.1) - (2.a) impliquent les
contraintes(2.5). Ceci est vrai pour les systèmestraditionnelsmais il est faux pour les jobshopsMRB. Pour illustrer cela, considéronsun job-shop MRB de deux ressources{r1 12} et
de deux travaux {Jr Jz}.Jr et Jznécessitentchacundeux opérations.Jr nécessiteIa ressource11
pour sa première opération et la ressource12 pour sa deuxième opération.Jz nécessitela
ressource12pour sa première opération et la ressowce 11pour sa deuxièmeopération.Les
tempsopératoiressont tous égauxet pit : l. Ce job-shop MRB peut être considérécommeun
job-shop sansen-cours.L'ordonnancement
Srr = 0, Srz = l, Szr :0 et Szz: I satisfaitles
contraintesde capacitéet de précédence(2.1) - (2.4). Selon cet ordonnancement,les deux
travaux Jr et Jz cornmencentsimultanément leur premièreopération.A I'instant t: l, pour
pouvoir cornmencerleur deuxièmeopération,Jr a besoinde la ressource12Qui est retenuepar
J2etJ2a besoinde la ressourc€11qui est retenuepar J1.Nous sommesen face d'unesituation
de blocage. L'ordonnancementest donc inéalisable. Nous illustrons cette situation dans la
fisure II.1. en utilisantle diaerammede Gantt.
FigureII.l :Une situationde blocaged'un ordonnancement
d'unjob-shopMRB
II.3 Classification des job-shops Multi-Ressourcesavec
Blocage
Dans ce paragraphe,nous donnonsune classificationdes job-shopsMRB et des
opérations
selonle nombrederessources,
lesbesoinsenressources
et lestempsopératoires.
D'abord,nousdistinguonsle cassansressor[cesidentiqueset le casavecressources
identiques,
appelés
respectivement
Systèmes
à Ressources
Unitaireset Systèmes
à Ressources
Multiples.Plusprécisément,
55
Multi-Ressources
Job-Shops
avecBlocage: défrritionet étudede la complexité
.
un Systèmeà RessourcesUnitaires (SRU) est un job-shop MRB dans lequel
H, : 1, V r e R, c'est-à-direque les ressourcessonttoutesdifférentes.
.
un Systèmeà RessourcesMultiples (SRM) est un job-shopMRB danslequel
H. > I, pour au moins un r € R, c'est-à-direque les ressourcesne sont pas
toutesdifférentes.
Il est bien évident que, dans un SRU, le besoinen ressorucesd'une opération(,k) est
entièrementcaractérisépar &r.. En effet, dansun SRU, h3n: l, V r e \r.. Nous pouvonsalors
simplifier la représentationdu processusde fabricationd'un travail commesuit :
J,: {(&r, pir) , (R.iz,
pjz), ...,(&ni, p:Ni)}.
Nous donnons maintenant une classification des opérations selon leur besoin en
ressourceset leur temps opératoire.Plus précisément,une opérationest appelée:
OpérationZRZD (ZeroResourceZero Delay) si \r.:0 n pjk : 0.
Une opérationZRZD correspondaux attentesdes travaux dans les modèles
d'ordonnancementclassiques.Pendantune opération ZRZD, le travail est
libéré de toute ressource.
Opération ZRD (Zero Resource with Delay) si \r, : ô n pjr > 0. Une
opérationZRD est similaireà une opérationzRZD, sauf qu'elle doit durer au
moins pir, unités de temps. Elle peut représenterle délai de transport d'un
produit dans le cas où les contraintesde ressourcesde transportne sont pas
prisesen compte.
opérationSRSU(singleResourcesingle unit) si \n = {r} n h;r = l. La
plupartdes opérationsdes modèlesd'ordonnancement
classiquessont des
opérations
SRSU.
.
OpérationSRMU (Single ResourceMulti-(Inits) sl & r , : { r } ^ h 1 n
quelconque.Les opérationsSRMU permettentla représentationdes
contraintes
de stockage.
.
opérationMRSU (Multi-Resource
singleIJnit)si I R;r,lquelconque
n hir.,=1,
vr e \r. Les opérations
MRSU permettent
la priseen comptede la variété
de ressourcesde la production.Elles sont égalementutilisées dans
I'ordonnancement
destravauxmulti-processeurs
dansun environnement
de
calculparallèleavecdesprocesseurs
dédiés.
56
avecBlocage: déhnitionet étudede la complexité
Job-Shops
Multi-Ressources
.
n hir.,
Multi-Units)si lRikl quelconque
OpérationMRMU (Multi-Resource
quelconque.C'estle cas le plus généralmais le plus diffrcile à gérer.
où \r est I'ensembledes types de ressourcesnécessairespour I'opération (,k), h;n est le
nombre de ressourcesdu type r nécessairespour cette opération et pir<est son temps
opératoire.Il est bien évident qu'un système SRU ne possèdepas d'opération SRMU et
MRMU.
En tenant compte de la successiondes opérations,nous introduisonsles opérations
suivantes:
G-opération(i,k) (G: ger)avec hir-r ( h.;*
R-opération(l,k) (R: release)avech;r ) hir+r.
De nouvellesressourcessont nécessairespour commencerune G-opération.La fin d'une Ropérationlibère une partie des ressources.Mais dans les deux types de successionci-dessus,
aucun travail ne retient une ressourcedont il n'a plus besoin.Nous notons qu'une opération
fi.k) peut être à la fois une G-opération et une R-opération.Par convention, la première
opération(,1) de chaquetravail est une G-opérationet la dernièreopérationfi,N;) est une Ropération.
Les G/R-opérationsnous pennettent de définir une forme canonique des job-shops
MRB.
Un job-shop MRB est dit systèmecanonique si pour chaqueopérationû,k), (i, k-l)
est une R-opérationsi (,k) n'estpas une G-opération.
Un système canonique est dit système simple si les temps opératoiressont tous
positifs,c'est-à-dire
pju> 0, V (i,k).
Nous remarquonsque dans un systèmecanoniqueou simple, la successionentre deux
opérations consécutivesdu même travail est caractériséesoit par I'acquisition de
nouvelles ressources,soit par la libération de ressources,mais jamais les deux à la
fois, c'est-à-dire aucun travail n'attend de nouvelles ressourcespolu libérer des
ressourcesqu'il retient.Nous soulignonsque dansun systèmecanoniqueou simple, si
(,k) n'estpas une G-opération,alors (i, k-l) est une R-opérationet elle peut également
êtreune G-opération.
Afin d'illustrer la différence entre un job-shop MRB et un systèmecanonique,nous
considéronsdeux exemples:
)t
Job-ShopsMulti-Ressourcesavec Blocage: définition et étudede la complexité
le job-shop MRBI composéde deux travaux :
Jr : {(rr rz, 5), (r2,3),(r112,4)}
J z : { ( r r , 4 ) , ( r 2 ,5 ) }
le job-shop MRB2 composéde deux travaux:
Js: {(ro rr, 5), (ro,0), (1612,4)}
J+: {(ro rz,4), (ro,0), (1611,3)}
où h.;r : 1, V r e \r. Le job-shop MRB1 n'est pas un systèmecanoniquepuisque, dans J2,
(r2,5) est une R-opérationmais (r1, 4) n'est pas une R-opération(elle est seulementune Gopération).En effet, le passagede I'opération(r1,4) à I'opération(r2,5) dansJ2est caractérisé
par I'acquisitionde 12âviltt la libération de 11.Par contre, le job-shop MRB2 est un système
canoniquecar, dans Jr, (ro rr, 5) est une G/R-opération,(rs, 0) n'est ni G-opération ni Ropération,(ro rz, 4) est une G/R-opération,et dansJa,(ro 12,4) est une G/R-opération,(ro, 0)
n'estni G-opérationni R-opération,(rs 11,3) est une G/R-opération.
Nous montrerons que, dans un système simple, les contraintesde capacité et de
précédenceimpliquent I'absencede blocage.Pour cetteraison,les systèmessimplesjouent un
rôle très important dans la constructiond'ordonnancementsans blocage. Ceci est encore
consolidépar le Théorème2.1 suivant.
Pour toutjob-shopMRB composéd'un ensemblede travaux{Jr, Jz, ..., Ji, ..., Jn}, nous
appelonssa forme canoniqueun job-shop MRB composédu mêmeensemblede ressourceet
de travaux{ Ji, J: , ..., J; } tels que:
J ; = { ( R ; , , h ; , , p (; R
, ) ;, , h ; , p ; ) ,. . .(, R i * ; , h i * , , R) }i * ,
ou
N; :2\-
l
= (\t,hir.,Pir.)
(Rj,zr-r,hizr-r,Pl,zr-r)
, V1 s k < \
R i . z r =& r .t r \ r . * t , V l < k < \
h l . z l ,=, m a x { h ; r . r , h ; , k + tV, rl } <
, k <\,
PÏ,zr=0,VI <k<\.
58
Vr e R
avecBlocage: défuritionet étudede la complexité
Multi-Ressources
Job-Shops
Pour résumer, la forme canonique est obtenue en ajoutant, entre deux opérations
consécutives(j,k) et (i,k+l), une opération ZD nécessitantI'ensembledes ressourcesdes
opérations(,k) et (i,k+l).
Théorème2.1: Pour tout ordonnancement
{Sir,ru,}d'unjob-shopMRB, soit {Sin,ni} un
et 7r; esttelle que
telleque Sl,zr-r: Sir.,S!,ru= S3,k*r
de sa formecanonique
ordonnancement
:
0 , ( 2 k - 1 )>) 0 ,2 k-1 )> C,2k)> û',2(k'-1))> 0',2k'-l) > (i',2k')dans æf avec(,k) æ,[i]et
si, { Slu,zi } estréalisable.
(i',k'): æ,[i+1].
si, et seulement
Alors{S.1,n, } estréalisable
La preuve est triviale puisque dans un job-shop MRB, la propriété "Retenir et
Attendre" implique que, lors du passage de I'opération û,k) à (,k+1), I'ensemble des
ressorucesnécessairesà ces deux opérationssont disponibles.Cette phasede transition, où
aux opérationsfi,k) et (i,k+1) sont allouéesau travail Ji,
I'ensembledes ressourcesnécessaires
correspond exactement à I'opération 0,2k) de la forme canonique. L'ordonnancement
{ Si*,ni } respecteI'ordonnancement{Sir,î,} et la propriété"Reteniret Attendre".
II.4 Modélisationdessvstèmes
industriels
Dans ce paragraphe,nous montrons que les job-shops MRB foumissent un cadre
généralpour étudierles problèmesd'ordonnancement
avecune grandevariétéde ressourceset
de contraintes industrielles. Pour ce faire, nous modélisons, par des job-shops MRB,
différentsmodèlesde la littérature:
o Beaucoupde caractéristiques
detravauxhabituellement
décriteslittéralement
peuventêtrereprésentées
de manièreexpliciteà I'aidedesopérations
ZD ou
ZR. Parexemple,
{ ( & r , p : r ) ,' . ' , ( & N j , P : N i()0, , l i ) }
Délai de communicationou de transportsans contraintede moyen de
transport d.;:
59
Multi-Ressources
Job-Shops
avecBlocage: définitionet étudede la complexité
{(R:r,Pir),(Ô'di),(&2,Piz)}'
o
Les job-shopsavec un ensemblede machinesoù la gammede productionde
chaquetravail est la suivante:
{(Ivtr ,pir), Gr4z,pjz), ...,(lr4Ni, piN.i)}
Dans un job-shop, les seulesressourcessont les machines et on suppose
implicitement que les capacitésdes stockstamponssont illimitées. Il suffit
alors d'insérerune opérationZRZD entre deux opérationsconsécutives.La
gamme de chaquetravail, dans le job-shop MRB équivalent,est la suivante
(les vecteursh;* ne sont pasdonnéscar h;n = 1, Vr e \r) :
{(}vt',pl), (ô,0),(l\42,piz),(0,0),...}
où les opérationsLRZD sont ajoutéesaprès chaqueopération du job-shop
pour représenterla successiondesopérations.
Les systèmesflexibles de production (ou job-shopsavec des AGV comme
moyensde transport)où la gammede productionestla suivante:
{(AGV, N!r), (AGV,l\4r), ...,(AGV, NANi)}
Dansce cas,I'ensembledesressources
utiliséespour le job-shopest composé
d'un ensemblede machineset desAGV. Un AGV estnécessaire
tout au long
de la réalisation d'un travail. L'AGV est occupé à partir du début de la
premièreopérationet n'estlibéré qu'à la fin de la dernièreopération.Avec le
job-shop MRB, leur gammede productionest :
(AGV,O),(AGV,l\42,pj2),
(AGV,O),...,(AGV,lv!N1,p.iN:)}
{(AGV,lt4;r,p.ir),
Les job-shopssansen-cours(ou job-shopswith blocking) sont desjob-shops
sans stocks tampons intermédiaires(voir Hall et Sriskandarajah,96), où
chaquetravail peut être représentécomme suit :
{(}vlr ,p:r),Gvtz, piz),...,(lvlN:, p:Ni)}
dansle cadred'unjob-shopMRB.
Les flow-shopshybridessont similairesaux flow-shopsmais avec des
machinesidentiques(vignier et al., 97).La représentation
des travauxest
60
avecBlocage: définitionet étudede la complexité
Job-Shops
Multi-Ressources
similaire à celle des job-shops;par contre, le nombre de ressourcesHr > I
pour au moins un type de machiner.
Les lignes de production sont composéesdes machines séparéespar des
stockstamponsde capacitélimitée (Dallery et al., 90, Dallery et Gershwin,
92). Dans une ligne de production,les machinessont agencéesdansun ordre
donné et des stockstamponsséparentles machineset régulent la fluctuation
de la production.SoientMr, Mz, ..., Mn les machineset 51, 52, ..., Sn-rles
stockstamponsde capacitéCr C2,..., Cn-l respectivement.Le processusde
fabricationd'un produit en terme de job-shopMRB est :
{(Mr , P.ir),(Sr,0),(M2 , piz),(S2,0),...,(Mn , pjn)}
avec H",:
1 et Hr,: Cj. C'est un systèmeà ressources
multiples.Un cas
particulier est une ligne sansstock tampondont chaquetravail est représenté
comme suit:
{ ( M r , p . i r )(,M z , p j z ) , . . .(, M " , p . i n ) }
Les cellulesrobotisées(Sethiet al.,92,Hall et a1.,97)sont composées
d'un
ensemblede machinesalimentéespar un robot R. Il n'existepas de zonesde
stockage. Le robot est nécessairepour toute opération de manutention.
Chaquetravail peut êtrereprésentécommesuit :
{(R,^), (N!, ,p.ir),(R,A),(lvtz,pjz),(R,^), ...}
où Â estle tempsdecharge/décharge
durobot.
Les systèmes
(Drozdowski,96) ne sontpasdessystèmes
multi-processeurs
de production.Un systèmemulti-processeur
peut êtreconsidérécommeun
job-shopmaischaqueopérationnécessite
plusieursressources.
Le processus
d'untravail peutêtreprésentésousla formesuivante:
{(&r ,Ptr),(0,0),(Riz, p;z),(0,0),...}
II.5 Etudede la complexité
Dans ce paragraphe,nous présentonsune étude de la complexitédu problème
d'ordonnancement
d'un job-shop MRB. Différents cas particuliers,selon le besoin en
ressources,
sont considérés.Nous donneronsles idéesde base pour prouver le niveau
6l
Job-Shops
Multi-Ressources
avecBlocage: défrnitionet étudede la complexité
complexitéde chacunet les références
pour obtenirune preuveplus complètepour les cas
étudiésdansla littérature.
il.5.1 Notation utilisée
Nous présentonsla notationen deux parties: la premièrese réfère aux ressotrceset la
deuxièmese réfere aux travaux.
Ressources
m
le nombrede types de ressources
R : { 7 , 2 , . . . ,f , . . . ,D }
I'ensembledestypes de ressources
H,
le nombrede ressourcesdu type r
H : [ H r , H 2 ,. . . , H r ., . . ,H r ] T
le vecteurdu nombrede ressources
Travaux
n
le nombrede travaux
J : { J t , J 2 , . . . , l ,. . . ,J n }
I'ensembledestravaux
Qr ou(i.k)
la kè'' opérationdu travail j
, r ,. . . , Q H i } :
{ Q ' , Q r ,. . . Q
la séquenced'opérationsdu travail j
\
le nombred'opérationsdu travail j
hlu
le nombre de ressources du type r
nécessaires pour I'opération (i,k).
Evidement,h;r S H,
h.;r: [hixr,h1k2,
...,h.;r.r,
...,himl
le vecteur de besoins en ressourcesde
I'opération(,k)
R.ir:{reR/h1r.'>0}
I'ensemble des types de ressources
pour I'opérationfi,k)
nécessaires
pjk
Ie tempsopératoirede l'opération(j,k)
62
Job-ShopsMulti-Ressourcesavec Blocage: définition et étudede la complexité
S:u
la datede débutde I'opération(,k)
ciu
la datede fin de I'opération(,k)
11.5.2Complexitédu problèmed'ordonnancement
Dans ce paragraphe, nous effectuons une étude détaillée du problème de la
minimisation du makespand'un job-shop MRB. Nous considéronsles cas suivants: (i) deux
cas triviaux : un seul travail ou une seule opérationpar travail; (ii) cas avec opérationZR ;
(iii) casdes systèmesà ressourcesunitaires; (iv) casdes systèmesà ressourcesmultiples.
La table II.l est une synthèsedes résultatsde ce paragrapheet les résultatsen gras sont
nouveaux.
CASTRIVIAUX
n:1
trivial
m: l/Hr : l,ôJj: I
trivial
CASAVECOPEMTIONSZR
m=1ÆI1 =1Æ'{j<2
polynomial
m : l / H r : 1 , À 1<13
NP-difficile au sensfort
SYSTEMES
A RESSOURCES
UNITAIRESET SANSOP.ZR
: l/sans op. ZR
m = 2Æ.{1
m > 3lltJj: l/ pir = I
polynomial
polynomral
m:3\: 1
p;r: 1\: 1
NP-drttrcrleau senstort
NP-difficile au sensfort
m = 2 l p j x : l / a v e co p .Z R
m:2/Nj :3lOiz: (0,0)
NP-difficile au sensfort
< 2/sansop. ZR
m=2Æ1;
m=2/1.{;
< 2/l \r. | = l/sansop. ZR
NP-difficile au sensfort
polynomial
NP-difficile au sensfort
SYSTEMES
A RESSOURCES
MULTIPLES
m = 1/Nj: l/p;i: I
m = l / f . { j: l l H e { 2 , 3 }
m = l / l . . l i: 1 Æ I = 5
NP-difficile au sensfort
m=1Æ.{;=l[H=4lhiu,>2
polynomial
m=1Â[;=l/H=4/hitr>1
pseudo-polynomial
m : l/l.,lj: llH = 4l h;, quelconque
m = 1/H:2lavec op.ZR
m = 1ÆI= 2Àlj < 2/sansop. ZR
open
NP-difficileau sensfort
NP-clrttrcrleau senstort
pseudo-polynomial
NP-difïicile au sensfort
En gras: lesrésultats
nouveaux
Table II.l : Synthèsedes résultatsdu paragrapheII.5.2
Job-Shops
Multi-Ressources
avecBlocage: définitionet étudede la complexité
II.5.2.1 Cas triviaux
Deux castriviaux, n:l ou m:lÆI:lÀ11=1, sont considérés.
Dans le cas n:I, il y a un
seul travail et il suffit d'ordonnancerles opérationsles unes aprèsles autres,selon la gamme
de production.Pour le cas m:1ÆI:l/1.{j=1, chaquetravail nécessiteune seuleopération.Nous
n'avons pas besoin de considérerles travaux avec les opérationsZR. Par conséquent,le
problèmese réduit au problèmeclassiquede la minimisationde C,.o sur une machine,c'est-àdire l/ lC^o. Tout ordonnancement
actif, c'est-à-diresanstempsmortel, est optimal.
11.5.2.2
CasavecopérationsZR
Théorème2.2 :LaminimisationdeCn,oestpolynomiale
pourle casm =lÆI1:lÀii < 2.
Preuve:
Dansce cas,il y a quatretypes de travaux commesuit :
o
ClasseA : J; : (Ô,p.;).
Dans cetteclasseles travauxont des opérationsdu type
ZP..
classe B : Ji : (r,pj). Dans cette classeles travaux ont des opérationsqui
nécessitent
la ressource
uniouer.
ClasseC:Jl = {(O,ri),(r,pi)}. ChaquetravailJ.;de cetteclassecommencepar
une opérationZRD suivie d'uneopérationsur la ressourceunique r.
o
ClasseD : J; : (r,pj) (Q,l;).Chaquetravail J1de cette classecommencepar
une opérationsur la ressourceuniquer suivie d'uneopérationZRD.
Les travaux qui appartiennent à la classe A ne seront pas considérés pour
I'ordonnancementcar la ressource n'est pas utilisée. Les autres travaux peuvent être
considéréscomme des tâchessur la ressourceunique r avecdate de dispositionpour le cas C
et tempsde latencepour le cas D.
L'ordonnancementoptimal fi' est obtenucommesuit :
les travaux de la classeD sont ordonnancésd'abord et dans I'ordre
décroissant
de I ;
les travaux de la classeB sont ordonnancés
ensuiteet dans un ordre
quelconque
;
64
avecBlocage: définitionet étudede la complexité
Job-Shops
Multi-Ressources
.
. les travaux de la classeC sont alors ordomancésdansl'ordre croissantde ri.
Dans la suite, nous montrons I'optimalité de cettesolution en utilisant la méthodepar
pennutation de deux travaux (Carlier et Chrétienne, 88). Pour cela, considérons un
+ n*. Il existe alors deux travaux consécutifsi et j sur la
ordonnancementquelconque rEO
ressourceunique r qui violent les conditions de æ*.Nous considéronsæNI'ordonnancement
dérivé de n0 en permutant i et j sansmodifier les datesde début des autres travaux. Nous
montrons, dans la suite, que I'ordonnancementest admissible et Cilu* .
Cfl'u*, ce qui
conclut la preuve.
Puisqueles makespans'écriventcomme suit :
ci, cl, cT},
cI* : max
{ ,S_?,î,
Cl"*: max{,5r_fi,
Ci, CI, Clu},
il suffit de montrer que æNest admissibleet
m a x{ C i , C Î} > m a x{ C i , C i }
où Cf et C| correspondentaux valeursde la durée totale du travail i et du travail j avant la
permutationentre ces deux travaux i et j, respectivement.Et, Ci et Ci correspondentaux
valeursde la duréetotale de i et j aprèsla permutation.
Nous considéronsles cinq combinaisonsdesdeux travauxcomme suit :
(1) T; e Classe
D n Ti e Classe
B
(2) le
C l a s s e D n Te; C l a s s e C
(3) le
C l a s s e D n Te; C l a s s e D n l > l i
( 4 ) I e C l a sse Bn T i e C l a sseC
(5) I e Classe
C n T; e Classe
C nri> r,
65
avecBlocage: définitionet étudede la complexité
Multi-Ressources
Job-Shops
Figure II.2 : Ordonnancement
initial desdeux travauxi et j
Dans la suite,nous analysonschaquepossibilitéde permutationentredeux travaux :
(1) Dans la figure II.3, nous avons I'illustrationdes deux ordonnancements:
(a) avant
et (b) aprèsla permutationentre les travaux avec Ti e ClasseB et I e ClasseD
ou T1 e B n T1e D. Pour les ordonnancements
fiOet rrN,nous avons :
cl:t+pi
C! >t+p;*pi+li
CI:t+p; +pi
Cl:t+PL+l:
Il est clair qu'il n'est pas nécessairede modifier les dates de début des autres
travaux,ce qui implique que æNest admissible.De plus,
max{Ci,Cf } : max{ t + pi * lj,t * pi + p.i}
. t * p , + p j + ! s m a x{ C l , C î } .
FigureII.3 : Ordonnancement
desdeuxtravaux: T1et I (casI )
(2) La figure II.4 illustre les deux ordonnancements:
(a) avant et (b) aprèsla
permutation
entrelestravauxavecT; e ClasseC et T1e ClasseD ou Ti e C n Ti
eD.
66
avecBlocage: définitionet étudede la complexité
Job-Shops
Multi-Ressources
La preuve de ce cas est analogue à la preuve du cas (1) puisque T1 est déjà
disponibleà I'instantt.
Figure II.4 : Ordonnancement
desdeux travaux : Ti et T1(cas2)
( 3 ) D a n s c e t t e c o m b i n a i s o r , €T i C l a s s e D e t l e C l a s s e D a v e c l > l ' . P o u r l e s
ordonnancements
æ0et æN. nous avons:
C| >t*p'+p.r+l.i
C l *= t + p i + l . i
Cl:t+p1+l;
Cln:t*p'*p;+lt
Il est clair qu'il n'est pas nécessairede modifier les dates de début des autres
travaux,ce qui implique que n* est admissible.De plus,
max { Ci,C]t } : max { t + pi+pj + l;, t + p; + li}
< t + p i +p j+ ! < m a xt c l , c Î )
(4) Danscettecombinaison,
T; e ClasseC et I e ClasseB. La preuveest similaire
auxcasprécédents.
(5) Dans cette combinaison,T1 e ClasseC et I e ClasseC avec ri > rj. La preuve est
similaire aux cas précédentspuisqueI'ordonnancement
nN est admissibleselon la
figureIL5.
QED
67
avecBlocage: définitionet étudede la complexité
Multi-Ressources
Job-Shops
rjri
t
Figure II.5 : Ordonnancement
desdeux travaux : T1et I (cas 5)
Théorème 2.3 : La minimisation de C.o
<3
m:1/Ht=1711,
est NP-difficile au sens fort, dans le cas
Ce cas est NP-difficile au sens fort parce qu'il inclut comme cas particulier le
problèmeNP-difficile au sensfort lhyl/Crr* (Gareyet Johnson,78) où chaquetâchepeut être
représentéecorrune(0,rr)(M,p.r)(ô,lj). Nous donnonsla preuvepour la complétude.
Preuve:
La preuve est faite par réductiondu problèmeNP-difficile au sensfort de 3-Partition.
Pour l'étude de la complexité, on présente souvent les problèmes sous la forme de
"instance/question".
Dans la suite,nousprésentonsle problèmeavecce type de présentation:
Problème3-Partition
Instance: Un entierb et un ensemble
N = {u,, ...,a3n}de 3n entierspositifstels que
â1: nb.
bt4 < a1<bt2et I;:,
unepartition
de N, Nr, ...,Nn,tellequeIj.*,
Question: Existe-t-il
âj = b, Vi = l,
, ' , ,î ?
Pour chaqueinstancedu problème3-Partition,nous associonsune instancedu
problèmel/rj,ljlcma*de4n tâches:
J = { t t , t 2 ,. . . ,t n } u N
eN
P L = J a l ,vVj j =
[1'
ti
68
avecBlocage: définitionet étudede la complexité
Job-Shops
Multi-Ressources
Ij:
vj e N
!0,
Vj
Iib+i-l, = ti
li=
to,
vjeN
l(n-i)(b+l),Vj=11
Nous pouvonsmaintenantposerune auffe questioncomme suit :
tel que Cn'- : n(b+l) ?
Question : Existe-t-il un ordonnancement
Considéronsun ordonnancementtel que C*o: n(b+l). Puisqueque Cj 2 r.;+ pj + \ >
n(b+l), Vj : ti, alors nous avonsla date de début Sj : rj pour tout j : ti. De la figure IL6, on
constateque le problème d'ordonnancementa une solution telle que C,n* = n(b+l) si, et
seulementsi, le problème 3-Partition a une solution. Par conséquent,le problème 1/r1,1/Cr"*
estNP-difficile au sensfort.
Q.E.D
r
Nr
\-__-
t;
N2
t2
ln- I
Nn
t,
\_-J
b
b
FigureII.6 : Un ordonnancement
du problèmel/rj,ljlcra,
II.5.2.3S1'stèmes
à Ressources
Unitaireset sansopérationsZR
Dans ce paragraphe,nous considéronsles systèmesà ressourcesunitaires,c'est-à-dire
H, = l, Vr e R, Nous nous intéressonsessentiellement
au cassansopérationsZR.
Considérons
d'abordle casm = l. Commele casm=lÆI:lÀtrj=1,nousavonsaussiune
seuleressource.
La possibilitépourun travaild'avoirun nombrequelconque
d'opérations
rend
le cas m = I différentdu casm:lÆI=lÂ.lj:l. Mais la solutionrestetriviale à causede la
propriété "Retenir et Attendre". Il suffit, parce que nous avons une seule ressource,
d'ordonnancer
les opérationsdansla gaûlmede productionde chaquetravail et les travaux
dansun ordrequelconque.
69
Job-ShopsMulti-RessourcesavecBlocage: définition et étudede la complexité
Théorème 2.4 z La minimisation de Cn'* est polynomiale pour le cas m:2/|{j : l/sans
opérationsZR.
Preuve:
Le systèmepossèdedeux ressourcesdifférentes{r1, 12} et chaquetravail nécessiteune
opération.Il y a trois types de travaux : les travauxbi-ressourcesA = {(rr rz, p:)} ainsi que les
travauxmono-ressources
B:
qui consisteà
{(rr, p.i)} et C: {(rz, p1)}.L'ordonnancement,
exécuterd'abordles travaux bi-ressourceset ensuiteles travauxmono-ressources,
est optimal
car les travaux bi-ressourcesterminentà I'instant I1.op,, les travaux mono-ressourc€s
SUr11
terminent à I'instant l,.o.rp,
et les travaux mono-ressourcessur 12 terminent à I'instant
est optimal.
I1.e,cP, . Par conséquent,I'ordonnancement
Q.E.D.
Considérons
ensuitele casm > 3\
: 1.
Théorème2.5 (Hoogeveenet al.,94) : La minimisationde C'* est polynomialepour le cas
m>3lNj:l/piç:1.
Preuve:
Puisquepjk : 1 et \
: l, on peut regrouperles travaux selon leur besoinen ressource
h1x,,Vr e R. Il y a donc, au plus, 2M - | types de travaux. Soient M le nombre de types de
travaux et bi le nombre de travaux du type j, V 1< j < M. Dans chaque période, une
combinaisonde travaux est exécutée.PuisqueH, : l, chaquecombinaisonc contient,au plus,
un travail d'un type donné. Soit a..; e {0,1} le nombre de travaux du type j dans c, Par
conséquent,il y a, au plus, 2M - I combinaisons differentes. Soit k le nombre de
combinaisons.Le problème de la minimisation de C,,o consisteà déterminerle nombre de
périodesx. de chaquecombinaisonc pour
Min Fk
. x"
tHC=l
sousla contrainte:
I=, âojxj:bl,VlSjSM
Il a été démontré,dansLenstra(83), qu'unprogrammelinéaireen nombresentiers
avecun nombredonnéde variablesestpolynomial.Pourm donné,le nombrede variablesk
estdonnéet le problèmede la minimisationdeCr.* estdoncpolynomial.
Q.E.D,
Théorème2.6 (Hoogeveen
et aL,94): La minimisation
de Cr* estNP-difficileau sensfort
pourle casm = 3Â.{j: l.
70
Job-ShopsMulti-RessourcesavecBlocage; défrrition et étudede la complexité
Preuve:
Le théorème 2.3 de Hoogeveenet al. (94), montre la NP-difficulté au sens fort en
utilisant une réductiondu problèmeNP-difficile de 3-Partition.
Q.E.D
Si le nombre de ressourcesm fait partie de l'énoncédu problème(ou instance),il a été
démontré dans Hoogeveen et al. (94), théorème 2.5, que décider I'existence d'un
ordonnancementde longueurd'au plus 3 estNP-difficile au sensfort. La preuveest fondéesur
une transformationdu problème NP-difficile au sens fort de la 3-Colorabilité d'un graphe
(Garey et Johnson,79). Par conséquent:
Théorème 2.7 (Hoogeveenet a1.,94) : La minimisation de Cr* est NP-difficile au sensfort
pour le casp31:1\ : l.
Considéronsmaintenantle casm:2 où il existedeux typesde ressources.
Théorème 2.8 (Brucker et Kramer, 95) : La minimisationde Cn'* estNP-difficile au sensfort
pour le casm:2/p1p:1/ avecopérationsZR.
En effet, ee eas eontient le problème d'ordonnanc.ement
de tâches nrrltinroceqqerrrs
particulier
suivantcomme cas
:
J ; : { ( \ r , 1 ) , ( 0 , 0 ) ,( \ 2 , 1 ) , ( 0 , 0 ) ,. . . ,( & N . i , l ) }
avec \r. c R:{rr, r2}. Il a été démontré dans Brucker et Kramer (95), théorème6, que le
problèmeest NP-difficile au sensfort. La preuve s'établiten deux étapes: (1) suppressiondes
tâchesbi-ressourcespour obtenir un problèmede tâchesmono-ressources
avec contraintesde
précédence,(2) utiliser le théorème2.7 de Hoogeveenet al. (94), pour prouver la NPdifficulté.
Théorème 2.9 (Brucker et Kramer, 95) : La minimisationde C,n* est polynomialepour le cas
m:2/Nj :3lOp = (ô,0).
Dans ce cas, nous avons un problème classiqued'ordonnancementde tâchesmultiprocesseurs.Selon le théorème7.a de Brucker et Kramer (95), la minimisation de Cn,* est
polynomiale. L'ordonnancement est calculé comme suit : d'abord si la première
(respectivementla dernière)opérationd'un travail est une tâche bi-processeur,elle peut être
déplacéeau début (respectivementà la fin) de I'ordonnancementsans modifier le C,n* ;
I'ordonnancement
des autresopérationsnécessitantune seuleressourceest alors équivalentau
problème d'ordonnancementde job-shop à 2-machinesJ2lni < zlc^ . Ce dernier peut être
résoluen temps O(n log n) par I'algorithmede Jackson(Carlier et Chrétienne,88).
71
Multi-Ressources
avecBlocage: défuritionet étudede la complexité
Job-Shops
Théorème 2.10 z La minimisation de C,n* est NP-difficile au sensfort pour le cas m:2\
<
2/sansopérationsZR.
Preuve:
La preuve de la NP-difficulté au sens fort est obtenue par réduction du problème 3Partition. Pour chaque instance du problème 3-Partition, nous associons le problème
d'ordonnancementsuivant :
J : N u { t r ,t z , . . . , t n ] ;
Jj: {(rr, a.;)},Vj e N
J.i: {(r1r2,I), (rz,b)}, V j : t1
tel que C.*:
Question: Existe-t-il un ordonnancement
n(b+l) ?
Considéronsun ordonnancementtel que C'n* : n(b+l). Il est bien évident que C-* :
n(b+l) implique que les travaux tr,b, ..., tn sont exécutéssans interruption, à partir du début
de I'ordonnancement.Ceci laisse n intervalles de disponibilité sur 11 de longueur b chacun
pour ordonnancer les travaux j e N. Ce qui implique que le problème de 3-Partition a une
solution si, et seulementsi, le problème d'ordonnancementpossèdeun ordonnancementavec
C'na*: n(b+l). Nous illustronscet ordonnancement
avecC**: n(b+l) dansla figure II.7.
Q.E.D
Figure IL7 : Ordonnancement
d'un SRU
La NP-difficulté persistemême si chaqueopération demandeune seuleressource.
Ihcoreme 2.ll : La mmtmtsattonde C** est NP-diUicile au sensfort pour le casm:2Àtri < 2
/l &o | : l/sans opérationsZR.
72
Job-ShopsMulti-Ressourcesavec Blocage : définition et étude de la complexité
Preuve:
Contrairement au cas précédent, ici chaque opération nécessite une ressource. La
preuve de la NP-difficulté est établie par réduction du problème de 3-Partition. A chaque
instance du problème 3-Partition, est associée I'instance suivante du problème
d'ordonnancement:
J: N \, {tr, b' ...,tn,tn+t,tn+2}
Jj: {(rt, a1)},Vj e N
Jj: {(rr, l),(rz,b+l)}, vj e {11,t2,...,tn,tn-;1}
J; : (rr, b+l), aveci: tn*z
tel que C'*:
Question: Existe-t-il un ordonnancement
(n+l)(b+1)+1 ?
Considérons un ordonnancementavec C.* : (n+1xb+1)+1. Compte tenu des
contraintesde précédence,un travail t3avec I < j < n+l doit commencersa première opération
sru rr à I'instant0 ; puis, les opérationssur rz destravaux tt,t2, ..., tn+rdoivent être exécutées
sans intemrption. Puisque chaque travail ! avec 1 < j < n*l ne peut libérer la ressource11
qu'au début de sa deuxième opération, les opérationssur rl de ces travaux sont réparties dans
le temps, comme dans la figure II.9, afin d'éviter d'occuperla ressource11,cofirrnedans la
irgure ii.8.
b+l
b+l
FigureII.8 : Ordonnancement
du casm:2lNj<2ll niul: t
4a
t)
Job-ShopsMulti-RessourcesavecBlocage: définition et étudede la complexité
b+l
N1
t1
L2
N2
tn+ |
h+t
I
L1
Ln+ I
C**
du casm:2lNf2ll
Figure II.9 : Ordonnancement
:
&u | 1 avecla répartitiondes opérations
SUf f1
Il reste, sur la ressourcerl, n intervallesde longueur b chacun et un intervalle de
longueur b+1. Le dernier intervalle est consacré au travail tn+z afin d'avoir Cn,,* :
(n+1)(b+1)+1. Il est alors évident que le problème d'ordonnancement
a une solution si, et
seulementsi, le problème3-Partitiona une solution.
Q.E.D.
11.5.2.4Systèmesà RessourcesMultiples
Nous considérons,dansce paragraphe,les systèmesà ressources
multiples, c'est-à-dire
freRl}J,>I.
D'abord, le cas d'un seultype de ressourceet d'une seuleopérationpar travail, c'est-àdire m:l/H > 1/ N; : 7, à été largement étudié dans Du et Leung (89), dans le cadre de
I'ordonnancementdes tâches multi-processeurs.Nous donnons,ci-dessous,un résumé des
résultatsprincipaux.
Théorème 2.12 (Du et Leung, 89) : La minimisationde Cn,'*estNP-diffrcile au sensfort pour
le casm:1Æ.Jj:1/p;r : 1.
Ce cas est équivalentau problèmede Bin-Packing si on associeles périodesde temps
aux conteneurs,H à la capacitéde chaqueconteneur,les travaux aux objets à remplir. Il est
alorsclair que le problèmeestNP-difficile au sensfort (Gareyet Johnson,78).
Théorème 2.13 (Du et Leung, 89) : La minimisationde C,n* est pseudo-polynomialepour le
c a sm : l \ : I
lH e {2,3}.
74
Job-ShopsMulti-RessourcesavecBlocage: définition et étudede la complexité
Il a été démontré,dans Du et Leung (89), que tout ordonnancementse transformeen
formecanonique,illustréepar la figure II.10 pour le casH: 2 et par la figure II.1 I pour le cas
H:3.
Il est clair qu'un ordonnancementcanonique est entièrement caractérisépar les
nombresy, Xl, x2,..., x5. La ProgrammationDynamiqueest alors utilisée pour résoudreles
p r o b l è m e sF ( i , x ) a v e cx : ( x r , x z )p o u r l e c a sH : 2 e t x : ( x 1 , x 2.,. . , x 5p) o u r l e c a sH : 3 .
F(i,x) consiste à trouver un ordonnancementadmissible de caractéristiquesx pour les i
premierstravaux.
Pr
P2
2-proc.
I -proc.
2-proc.
I -proc
FigureII.10 : Ordonnancement
canoniquepour H:2
P
P,
P2
D
r1
I -proc
3-proc.
3-proc.
2-proc.
3-proc.
2-proc.
2-proc
I -proc,
2-proc.
l -proc.
Figure II.11 : Ordonnancementcanoniquepour H : 3
75
avecBlocage: définitionet étudede la complexité
Multi-Ressources
Job-Shops
La complexitédu casm:l\:llH:4
est,à ce jour, inconnue.
Théorème 2.14 (Du et Leung, 89) : La minimisationde Cn'* estNP-difficile au sensfort pour
le casm:|A,lj:l lH:5.
La NP-difficulté de ce cas a été prouvée dans Du et Leung (89), théorème 2, en
utilisant une transformationdu problème 3-Panition et les formes canoniquesprésentéescidessus.
Théorème 2.15 z Pour le cas m:lA{i:llH:4,Ia
minimisationde Cn'* est polynomialesi
hiu>2et pseudo-polynomiale
si hir>1.
Preuve:
Si h;r.,> 2, alors chaqueopérationnécessite3 ou 4 ressources.Il est alors impossible
d'exécuterdeux opérationsen parallèle.Tout ordonnancement
est donc optimal. Le problème
estdoncpolynomial.
Si h1u> l, les opérationsnécessitant3 ou 4 ressourcesne peuvent être exécutéesen
parallèleavec une autre opération.Par contre,les opérationsnécessitant2 ressourcespeuvent
être exécutées en parallèle. Le problème se transforme alors en un problème de la
minimisation de Cn'* sur deux machinesidentiques,c'est-à-direP2l lC^ . Ce problème est
pseudo-polynomial,ce qui prouveque le cashin > 1 est pseudo-polynomial.
Q.E.D
Si h;r.,est quelconque,le problèmeresteouvert.
Si chaquetravail peut avoir besoin de plusieurs opérations,Du et Leung (89) ont
prouvéla NP-difficulté pour le casavec opérationsZR.
Théorème 2.16 (Du et Leung, 89) : La minimisationde Cn'o estNP-difficile au sensfort pour
le casm:llH:2 /avec opérationsZR.
Ce cas inclut, comme cas particulier, le problème d'ordonnancement
de travaux avec
tâchesmultiprocesseurs.Il y a une opérationZRZD entre deux opérationsdu même travail.
Le nouveauproblèmeest NP-difficile selonle théorèmeI de Du et Leung (89). La preuveest
fondée sur une transformation du problème 3-Partition en une instance du problème
d'ordonnancement
:
T : N L . /{ t r , t 2 ,. . . ,t n } \ J { s r ,s 2 ,. . . ,s n - r }
Jj = (r', a1),Vj e N
Ji : (r, b), Vj : tr, t2,...,tn
76
Job-Shops
Multi-Ressources
avecBlocage: défutitionet étudede la complexité
J i : ( 2 r , 1 ) ,V j = S l ,5 2 ,. . . ,S n - l
dont les tâchestt,t2, ...,tn et s1,52,..., sn-1sont sujetsà la contraintede précédence
t1 < s1< t2
< sz ( ... tn-r( sn-1( t1. Il n'y a pas d'autrescontraintesde précédence.
tel que Cro = nb + n - I ?
Question: Existet-il un ordonnancement
Pour avoir un tel ordonnancement,les tâches ti et si doivent être exécutéessans
intemrption à partir de I'instant 0. Ceci laisse n intervalles de longueur b chacun avec une
seule unité de ressource disponible pour les tâches N. Par conséquent, le problème
d'ordonnancement
a une solution si, et seulementsi, le problème3-Partitiona une solution.
Pourle cassansopérations
ZR, nousproposons
le résultatsuivant:
Théorème2.17 z La minimisationde Cn.,*estNP-difficileau sensfort pour le casm:lÆI:2
^tj<2.
Preuve:
La preuve se fait par réductiondu problème3-Partition.A chaqueinstancedu
problème3-Partition,nousassocions
I'instance
suivantedu problèmed'ordonnancement
:
J : N u { 1 ,2 , . . . , n )
J, : (r, a;), Vj e N
J i = { ( 2 r , 1 ) ,( r , b ) } , V j : I , 2 , . . . ,n
Question: Existe-t-il un ordonnancement
tel que C.* : n(b+l) ?
Afin d'obtenir un tel ordonnancement,les travaux 1,2, ..., n doivent être réaliséssans
intemrption à partir du début de I'ordonnancement.Ceci laissen intervalles de longueur b
chacun et avec une unité de ressource disponible. Par conséquent, le problème
d'ordonnancementa une solution si, et seulementsi, le problème3-Partition a une solution.
Nous illustrons ce cas dansla figure II.l2.
Q.E.D.
77
Job-ShopsMulti-RessourcesavecBlocage : définitionet étudede la complexité
.-\r_/
b
FigureII.I2 : Ordonnancement
du
II.6 Conclusion
Dans ce chapitre,nous avons introduit les job-shops Multi-Ressourcesavec Blocage
qui permettentla prise en compte de la variétéde ressourcesimpliquéesdansune production.
Le problèmed'ordonnancement,
dont le critère est la minimisationdu makespan,est formulé.
Sa complexitéest étudiéede manièredétaillée.
Au vu des résultatssur la complexité du problème d'ordonnancement
des job-shops
MRB, on constateque le problèmedevienttrès vite extrêmementdifficile car il est déjà NPdifficile à partir de deux ressourceset de deux opérationspar travail, dansle cas d'un SRU ou
d'un SRM. C'est la raison pour laquelle, nous consacronsla suite de cette thèse au
développementdesméthodesapprochées.
78
Chapitre
III
Ordonnancement des
Systèmes à Ressources
Unitaires
Unitaires
à Ressources
desSystèmes
Ordonnancement
III.1 Introduction
Unitaires,c'est-à-dire
Dansce chapitre,nous nous limitons aux Systèmesà Ressources
les job-shopsMRB, dans lesquelsles ressourcessont toutesdifférentes.Comme nous I'avons
montré dans le paragrapheIL4, les Systèmesà RessourcesUnitaires avec opérationsZRZD
incluent, comme cas particuliers, les job-shops classiques,les Systèmes à Ressotuces
Unitaires sansopérationsZRZD incluent comme cas particuliersles job-shops sansen-cours
ou job-shopswith blocking et les cellulesrobotiséeset, les job-shopsMRB avec opérations
ZD incluent comme cas particuliersles systèmesflexibles avec des AGV dédiés.Il est bien
évident que les SRU ne permettentpas la prise en compte des capacitésde stockageni des
une classeimportantedesjob-shops
AGV en nombrequelconque.Néanmoins,ils représentent
MRB.
Ce chapitre est organiséde la manière suivante: du paragrapheIII.2 au paragraphe
des opérationsavecdélai, c'est-à-direpir > 0 ; le
III.4, nous nous limitons à I'ordonnancement
pour les
paragrapheIII.2 présenteune formulation simplifiée du problèmed'ordonnancement
SRU ; nous montrons surtout que les contraintesde précédenceet les contraintesde capacité
de ressourcesimpliquent I'absencede blocage dans le cas d'un systèmesimple ; ce résultat
des systèmessimpleset sert de point de départpour les méthodes
simplifie I'ordonnancement
proposéesdans le paragrapheIIL4. Dans le paragrapheIII.3, nous nous intéressonsà la
modélisation des SRU à I'aide des RdP, à la représentationde I'ordonnancementet à la
donnéou pour un état du systèmedonné.Le
vérification de blocagepour un ordonnancement
paragrapheIII.4 propose plusieursheuristiquespour I'ordonnancement
des SRU généraux;
les RdP seront utilisés pour la vérification de blocage. Dans ce même paragraphe,nous
proposonsdes méthodesheuristiquespour I'ordonnancementdes SRU générauxen passant
par les systèmessimples.Le paragrapheIII.5 est consacréaux extensions; deux extensions
sont considérées: (i) la prise en compte des opérationsZD et (ii) I'optimisationdes critères
réguliersautresque le makespan.Le paragrapheIIL6 présentedes résultatsnumériqueset le
paragrapheIII.7 présenteune conclusion.
III.2 Reformulationdu problème d'ordonnancementdes
opérationsavecdélai
Les opérationszérodélaicompliquentde manièresignificativeI'ordonnancement
des
job-shopsMRB et leur priseen compteestdélicate.C'estpourquoi,nousnouslimitonsaux
avecdélai dansles paragraphes
III.2-III.4. La relaxationde cettecontraintesera
opérations
III.5.
considérée
dansle paragraphe
p.;r> 0.
sontpositifs,c'est-à-dire
Hypothèse3.1 : Lestempsopératoires
79
desSystèmes
à Ressources
Ordonnancement
Unitaires
Le problèmed'ordonnancement
consisteà choisirlesdatesdedébut S;rdesopérations
(,k) et uneséquence
æ,d'entréedesopérations
nécessitant
la ressource
r afin de minimiserla
duréetotalede I'ordonnancement
C,noet d'éviterlesblocages.
Plusprécisément,
Min MAX {C1},
J
sousles contraintessuivantes:
* pjNj, Vl <j < n
C; : S.;N.;
( 31
.)
+ Pir( S1,r+r,
S.;r<
Vl <j < n, Vl <k <\
1 { S ; r < t c S 1 . r + r<} l , V t , V r
I
( j , k ) / r eR i r <
(3.2)
e R
(3.3)
S n r [ i ]s S r , [ i + r V
] ,r e R , V i
( 3.4)
Les séquencesd'entréezr,ne conduisentpasau blocage
(3 5)
où les contraintes(3.1) définissentla date de fin de chaquetravail, les contraintes(3.2) sont
les contraintesde précédencedes opérationsde chaquetravail, les contraintes(3.3) assurentle
respectde Ia capacitéde ressources,les contraintes(3.4) assurentla cohérenceentre S3r.
€t 7r,,
et les contraintes(3.5) ne peuventpas se mettreformellementsousforme mathématique.
Comme nous I'avons montré dans le paragrapheII.2, les contraintes(3.1)-(3.4)
n'impliquent pas I'absencede blocage. La vérification de blocage est nécessairepour tout
ordonnancementd'un SRU généralsatisfaisantles contraintesde précédenceet de capacitéde
ressources.Une exception notable conceme les systèmes simples pour lesquels nous
montrons,dansla suite de ce paragrapheque tout ordonnancement
vérifiant les contraintesde
précédenceet de capacitéde ressourcesest sansblocage.
D'abord,dans le cadre d'un sRU, une opérationfi,k) est une G-opération
(G=get) si \.r-r Ç &i et elle estuneR-opération
(R= rerease)
si \r = \r*r.
un sRU estun systèmesimplesi p.;r> 0 et si pourchaqueopérationû,k), (i, k-l)
estuneR-opérationsi (,k) n'estpasuneG-opération.
Théorème
3.1
Pourun systèmesimple,un ordonnancement
les contraintes
de précédence
{Sir} satisfaisant
(3.2)et lescontraintes
de capacité
de ressources
(3.3)estsansblocageet doncadmissible.
Les
séquences
d'entréezr,,qui respectent
lesdatesde débutet qui,pourlesopérations
fi,k) avecla
80
Unitaires
Ordonnancement
desSvstèmes
à Ressources
même date de début, donnentpriorité aux opérationsdont (i,k-l) est une R-opération,sont
sansblocage.
Preuve par contradiction :
< t peut commencer
Supposonsqu'il existeun instantt tel que toute opération(j,k) / S.;r,
à la date Sir tout en respectantla propriété "Retenir et Attendre" et qu'il existe une opération
"(i,l) / Str= t qui ne peut pas démarrerà I'instantt sansvioler la propriété"Retenir et Afiendre".
Deux cas sont possibles:
o
Cas (i) : I'opération (i,l-l) est une R-opération,Ri,r-r> Rl. Puisque les
capacitésde ressourcessont respectées,aucuneopérationautre que (i,l) n'a
besoindesressources
dansRir à I'instantt.PuisqueSir-r<t, I'opération(i,l-l)
peut commencerà la date Si,r-r.Par conséquent,toutesles ressourcesdansR1;
sont disponiblesà I'instantt et I'opération(i,l) peut commencerà la date Ss,,
ce qui contreditI'hypothèsede la preuve.
o
Cas(ii) : I'opération(i,l) estune G-opératior,Ri,r-rc Rir.Puisque(i,l) ne peut
pas commencerà I'instant t et que les contraintesde capacitéde ressources
sont vérifiées, il existe une ressourcer € R11et une opération(,k) où j + i
telles que r e \r. et S1*+l: t, et que la ressourcer ne puisse être libérée au
débutde la périodet (voir figureIII.I).
FigureIII.I : Unesituation
deblocage
Comptetenu de la contraintede capacitéde ressources
(H, : l) et de la
propriété"Reteniret Attendre",t Ê &r,*r. Par conséquent,
I'opération(,k+l;
n'estpas une G-opération,ce qui impliqueque I'opération(,k) est une Ropération.PuisqueSlr+r: t, selonle résultatdu cas(i), I'opérationfi,k+l) peut
commencerà la datet et la ressource
r peutalorsêtrelibéréeau débutde la
périodet. Cela prouve,par I'absurde,que toutesles nouvellesressources
pourI'opération
(i,l) sontlibresou peuventêtrelibéréesau débutde
nécessaires
la périodet. Alors I'opération(i,l) peut commencer
commepréw à I'instantt.
CelacontreditI'hypothèse
de la preuveet conclutla preuve.
o.E.D.
8l
desSystèmes
à Ressources
Unitaires
Ordonnancement
De cette preuve,nous constatonsque d'autresséquences7Trsansblocagepeuventêtre
obtenuesen respectantsimplementles datesde début S.;r.
et la propriété"Reteniret Attendre".
De ce résultat,I'ordonnancementd'un systèmesimple se réduit à déterminerles dates
de débutdesopérationsS;çafin de :
Min MAX {C1},
(3.1),(3.2)et (3.3).
souslescontraintes
III.3 Représentation à I'aide de RdP et vérification de
blocage
Comme nous I'avonsconstatéprécédemment,en général,les contraintesde précédence
et des capacitésde ressourcesn'impliquentpas I'absencede blocageet la contrainted'absence
de blocagene s'exprimepas aisémentpar des relationsmathématiques.C'est pour cela. que
dans ce paragraphe,nous abordonsles points suivants:(i) la représentationpar des Rdp des
SRU, (ii) la détection de blocage pour un état du systèmedonné, (iii) la représentationdes
ordonnancements,
(iv) la vérification de faisabilitédes ordonnancements
et (v) la construction
d'un ordonnancementau plus tôt connaissantla séquenced'entréede chaqueressourceær.Ces
résultats seront utilisés, dans les paragraphessuivants, pour I'ordonnancementdes SRU
généraux.
III.3.1. Modélisationdes SRU à I'aide desRdp
Dans ce paragraphe,nous proposonsune méthodesystématiquepour la modélisation
des SRU. La méthodese décomposeen deux étapes.
La première étape concernela représentationdu processusde fabrication de chaque
travail J1.Le modèle RdP est un chemin élémentaire(voir la figure IIL2).II contient
\+2
places dont une place de source représentela disponibilité du travail Ji, une place de puits
représentela fin du travail, et chacune des \ places restantesreprésenteune opération.
Chaquetransition !*, V0 < k < \, correspondau début de I'opération
Q,r.*r. Le Rdp est ptemporisé.Un temps nul est associéaux places de source et de puits. Le temps associéà
chacunedes places restantesest égal au temps opératoirede I'opérationcorrespondante.Les
franchissementsdes transitions sont instantanés.Nous appelonsparfois les places de ces
cheminsélémentairesdesplaces-opérations.
82
Unitaires
à Ressources
Ordonnancement
desSystèmes
Qo
tjo
Ojr
tjl
Ojz
tjz
ojl
Figure III.2 : Le modèleRdP d'un travail de deux opérations
La deuxième étape complète le modèle RdP en prenant en compte les ressources
pour chaqueopération.Elle représentechaqueressourc€11€ R par une place r;
nécessaires
avec initialement un jeton correspondantà la disponibilité de la ressource.Ces nouvelles
placessontappeléesplacesde ressources.
c'estUn arc relie une place de ressourceri à une transition tg si ri É \r et ri e R1,k+1,
à-dire que la ressoruceri est nécessairepour I'opération(i, k+1). Un arc relie une transition t1r
à une place de ressourceri si ri e \r et 114 \,r<+r,c'est-à-direque la ressourcer1 n'est pas
nécessairepour I'opération(, k+l). La propriété "Retenir et Attendre" est respectéecar les
ne sont libéréesqu'au franchissementde la
ressourcesdans &r qui ne sont plus nécessaires
transition tir, c'est-à-dire
au débutde I'opération(, k+l). La figure IIL3 est le modèle RdP
final d'un SRU composéde deuxtravauXJr = {(rr, 5), (r2,4)\ et J2: {(rz, 3), (rr, 4) } .
FigureIII.3 : Le modèleRdPd'unSRU
III.3.2 La vérification de blocage pour un état donné
Etantdonnéle modèleRdP d'un SRU,nouspouvonsvérifrerà I'aidedestechniques
(voir Murata,89,Chu et Xie, 97) I'existence
classiques
de blocage.Cependant,
à causede la
propriété"Reteniret Attendre",la plupartdesSRUsontsujetsau blocageet notreobjectifest
de trouverI'ordonnancement
optimalsansblocage.Danscetteperspective,
nousconsidérons
la détectionde blocagedansun ordonnancement
les contraintes
respectant
de précédence
et
83
Ordonnancement
desSystèmes
à Ressources
Unitaires
de capacitéde ressources.L'objectif est de nous assruerde I'absencedes travaux ne pouvant
plus avancerà causede la propriété"Reteniret Attendre".
En terme du modèle RdP, I'ordonnancementrespectantles contraintesde précédence
et de capacitéde ressourcesse traduit par les datesde franchissementdes transitionsS,, Vt e
T où T est I'ensembledes transitions.Le problème de la vérification de blocage consisteà
déterminer, pour tout instant t/S, : T pour au moins une t € T, une séquence de
franchissementsdes transitionst telles que 51 = r. Si une telle séquencen'existe pas, nous
disonsque I'ordonnancement{51} est avecblocageà I'instantt.
Selon la construction du modèle RdP, chaque état d'un SRU correspond à un
marquageM de son modèle RdP. M(r) : 0 pour une place de ressourcer si, et seulementsi,
la ressourceest occupée et M(p) : I pour une place-opérationp si, et seulement si,
I'opération conespondanteest en cours. Le résultat ci-dessousdonne une caractérisationde
blocageà I'aide de la notion de siphons.Rappelonsqu'un siphon est un ensemblede places
e
tel que chaquetransition d'entrée d'une place dans Q est égalementune transition de sortie
d'autresplacesdansQ, c'est-à-dire'ec e'.
Théorème 3.2 : Etant donné un ordonnancement{S,, Vt € T satisfaisantles contraintes
de
}
précédenceet de capacité de ressources,le système est avec blocage à I'instant
t si et
seulementsi le RdP 0{, Mr- ) possèdeun siphonvide avecdesplacesde ressource
où M,_
est le marquagedu RdP immédiatementavantI'instant r.
Preuve:
(e)
Soit U le siphon non marqué ptr Mr-
ressources
dansU, c'est-à-direW:
et soit W I'ensembledes places de
U n R. Selonla constructiondu modèleRdp, à chaque
place de ressourcesr e w correspondune opération
etrl,r,trltelle que Mr_ (etrl,ur,l)= r et r €
\t,1.*r'i' Soit V: [i(r) / r e W] I'ensembledestravaux retenantles ressourcesdansW.
Selon la propriété des siphons,I'ensemblede placesU reste non marqué quelle que
soit l'évolution du système.Alors, les travaux dans V ne serontjamais terminéscar,
sinon, la
fin d'un travail j(r), r e V, libérerait éventuellementla ressourcer et marquerait
la place r e
u. Par conséquent,I'ordonnancement{51} n'estpas réalisable.
( + ) S o i t A l ' e n s e m b l e d e s t r a n s i t i o n s à f r a n c h i r à l ' i n s rt a
,n
c 'te s t - à - d i r e A ={ t e T /
St = r). D'abord' nous remarquonsque pour chaque transition t e A, si elle a
une place
d'entrée r qui est une place de ressource,c'est-à-direr e 't ô R, alors r n'est pas
une place
d'entréed'une autretransition t' * t e A à causede la contraintede capacitéde Ia ressource
r
et de I'hypothèse pjk > 0. Cela implique que les transitionsdans A ne sont pas
en conflit.
84
Unitaires
Ordonnancement
à Ressources
desSystèmes
Alors, un jeton arrivant dans une place de ressourcer telle que r e
jusqu'au franchissementde t.
't
et t e A restedans r
Puisquele systèmeest avecblocageà I'instantt, il existeune sousséquence
o des
transitionsdansA transformantM,- en marquageM, telle que lo I c A, lo | + e et aucune
transitiondansA- lo ln'estfranchissable
à M.
Pour chaquetransition t e A- lo l, puisqu'ellen'est pas franchissableà M, il existe au
't
moins une place de ressourcer telle que r e et M(r) : 0. Pour une telle place quelconque,
't
Vr e n R / M(r) : 0, puisqueI'ordonnancement{S1}vérifie les contraintesde précédenceet
de capacitésde ressources,r est une place de sortie d'unetransitiont' telle que Sr : T et t' e A-
lol.
Soit B :,.y_"
des placesde ressources
non
{r e't n R / M(r) = 0 } I'ensemble
marquéespar M, à I'entréedes transitionsdans e- lo I. Nous avons: (i) chaquetransitiont e
A- lo I a au moins une place d'entréedans B, (ii) chaqueplace r e B a une seuletransitionde
sortie dansA- lo I et une seuletransition d'entréedansA- lo I parce que les transitionsdans A
ne sont pas en conflit et qu'il y a une seuleressourcer. Les transitionsdans e- lo I sont alors
impliquéesdansune relation "Reteniret Attendre" illustréepar la figure IIL4.
!
!
I
FigureIII.4 : Unerelation"Reteniret Attendre"où lesplacesde ressources
sontreprésentées
pardesdoublecercles
85
à Ressources
Unitaires
desSystèmes
Ordonnancement
Puisqueles transitionsdansA ne sontpasen conflit,les placesde ressources
dansB
dansM,_ . Nousallonsmaintenant
sontvideségalement
construire
un siphonvidedansM,_ .
Selonla défrnition,chaqueplacede ressource
r e B est partagéeentredifférentes
suitesPr,, Prr, ... de places-opérations.
Une seulesuiteP est marquée.Sansperte de
généralité,
que la suitePr, soit marquéeparM,_, c'est-à-dirÊ
supposons
M,_(Pr,):
I et
M,- (Pr,) = 0, Vi > 2 (voir figureIII.5). Il estclair quela transitionde sortiet de P esttelle
r,
quet e a- lo l. Parconséquent,
t estla transitiond'entréed'uneautreplacer' e B. Il estalors
que
clair
I'ensemble
deplaces
1P', tP', t"')
Q:Bt,Y"
forme un siphon en tenantcompte du fait que chaqueplace-opérationa une transition d'entrée
et une transitionde sortie.De plus, M,_ (Q): 0 et Q n R * 0.
Q.ED.
P
i
teA-lol
FigureIII.5 : Unereprésentation
RdPd'uneressource
partagée
Remarque3.1 : De la preuvedu théorème3.2,pourchaqueinstantr, si (N, M,_ ) ne
possèdepas de siphonvide, la séquencedes transitionsà franchirà I'instantr peut être
obtenuedansun ordrequelconque,
à conditionde respecter
les règlesde franchissement.
Si
(l{, M,- ) possèdeun siphonvide, on a une situationde blocagequel que soit I'ordrede
franchissements.
L'algorithmesuivant peut être utilisé pour vérifier les conditionsdu
théorème
3.2.
86
desSystèmes
à Ressources
Unitaires
Ordonnancement
Algorithme3.1
(Vérificationde I'existence
d'unsiphonvidedansun RdP(N,M))
1. Supprimerlesplacesde sources
et depuits.
parM.
2. Supprimerlesplacesmarquées
3. Supprimerlestransitions
de sourceet leursplacesde sorties.
4. Si de nouvellestransitions
de soruceexistent,alorsrépéterl'étape3.
5. Si toutes les places et transitions sont supprimées,alors aucun siphon n'est vide
dansM ; sinon, les placesrestantesformentun siphonnon marquépar M.
III.3.3 Faisabilitéd'un ordonnancementdonné
Dans ce paragraphe, nous étudions la vérification de la faisabilité d'un
ordonnancementdonné. Il est évident que la vérification dépend de la représentationde
I'ordonnancement.
Nous considéronsici deux possibilités : (i) seulesles séquencesd'entrée
dansles ressourcesîr sont données;(ii) seulesles datesde débutS;psont données.
III.3.3.1 Cas où les séquences
d'entrée dans les ressourcessont connues
Lorsque les séquencesd'entréedans les ressources7[r sont connues,nous pouvons
modifier le modèle RdP du systèmepour prendreen compte les séquencesd'entrée,Soit n, :
O(r,1),O(r,2),..., O(r,N(r)) la séquenced'entréede la ressourcer où N(r) désignele nombre
d'opérationsnécessitantr. Le nouveau RdP est obtenu en remplaçant chaque place de
ressourcepar N(r) places p(r,l), p(r,2),..., p(r,N(r)) reliées, selon la séquence7rr,aux
transitionsd'entrée/sortie
des places o(r,1), o(r,2),..., o(r,N(r)). La place p(r,l) contient
initialementun jeton et les autresplacessont initialementvides.La figure III.6 illustre ce cas
avecrr : Ot tOzzet îr, = OzrOrz.
87
Unitaires
desSystèmes
à Ressources
Ordonnancement
Figure III.6 : Un modèleRdP avec séquences
d'entrée
Il est clair que le modèle modifié devientun graphed'événementssi nous supprimons
les placesde sourceet de puits. Par conséquent,
Théorème 3.3 : Etant donnéesles séquencesd'entréesdansles ressources,le systèmeest sans
blocagesi, et seulementsi, chaquecircuit élémentairedu RdP modifié contient au moins un
jeton. Si le systèmeest sansblocage,alors les datesde débutau plus tôt de chaqueopération
est égale à la date de franchissementde la transition correspondante.Les dates de
franchissementSl peuventêtre déterminéespar la relation suivante:
S':
+
,,,"",,Y3i^
,,...,{51 P(t"t)}
où "t est I'ensemble des transitions reliées à t via une place, Ms(t',t) et p(t',t) sont
respectivementle marquageinitial et le tempsassociéà la place qui relie t' à t.
Preuve :
Un ordonnancementest sansblocage si son modèle RdP modifié, en supprimantles
places de source et de puits, contient une séquencefranchissablequi contient chaque
transition une fois. Selon les propriétés des graphesd'événements(Murata, 89), une telle
séquenceexiste si, et seulementsi, chaque circuit élémentairecontient au moins un jeton,
Ceci prouve la première partie. La deuxièmepartie peut être prouvée comme suit : chaque
transition t peut être franchie si chaque place d'entrée est marquée et que le jeton est
disponible.Pour chaqueplace d'entrée,telle que M6(t',t) = l, le jeton demandéest disponibleà
la datezéro. Pour chaqueplace d'entrée(t',t) telle que M6(t',t) = 0, le jeton demandéarrive à la
date 51 et il seradisponibleà la date St'+ p(t',t). Nous avonsdonc le résultatsuivant :
+ p(t"t)}'
St=,',",,,Y30*^,'.
", {s1
QED
88
Ordonnancement
desSystèmes
à Ressources
Unitaires
Remarque 3.2 : L'ordonnarcementdans la figure III.4 n'est pas sans blocage parce
que le RdP modifié contientun circuit élémentairenon marqué.Le blocagese produit à la
date5. aprèsla fin desopérations
Orr et Ozr.
Remarque 3.3 : Le théorème3.3 peut non seulementêtre utilisé pour la vérification
de blocagemais il peut égalementêtre utilisé pour construireun ordonnancementau plus tôt
si on connaîtles séquences
d'entréedansles ressources.
III.3.3.2Cas où seulesles datesde début sont connues
Puisqueles datesde début S1lsont connues,il est alors aiséde vérifier les contraintes
de précédence(3.2) et les contraintesde capacitéde ressources
(3.3). Quant à I'absencede
blocage.nous pouvons utiliser la méthodeprésentéedans le paragrapheIIL3 pour nous
assurerde I'absencede blocagepour tout instant t tel que S;x= r, pour certaineopération
0,k).
Nous pouvons égalementutiliser les méthodes du paragrapheIII.3.3.l pour la
r'érificationde blocage.Commeles tempsopératoiressonttous positifs,c'est-à-direque pjk >
0. sousles contraintesde précédence
et de capacitéde ressources,
il existeune seuleséquence
d'entréepour chaqueressourcezt, respectantles datesde début car les exécutionsde deux
opérationspartageantune ressourcer sont nécessairement
décaléesdans le temps. Alors. la
séquenced'entréepour chaqueressourceîr est telle que Sot,.r)S Sot,,z)
< ... Le Rdp modifié
peut être construit corlme dans le paragrapheIII.3.3.1. Il est clair que la date de
franchissement
de la transitiont. Sr.est égaleà la datede débutde I'opération(,k). Si1.relle
quet estunetransitiond'entréede la place-opération
O;ç,
Théorème3.4 : Etant donnéesles datesde débutdesopérations,le systèmeest sansblocage
si. et seulemenlsi, chaquecircuit du RdP modifié contientau moinsun ieton et si les datesde
franchissement
Srrespectent
les contraintessuivantes:
St=
+
,,".,,Y30*^
,'.", {st P(t"t)}'
Preuve:
(+) Trivialpuisque.selonla preuvedu théorème
3.3,le RdPmodifiéne contientpas
de circuit élémentaire
non marquéet quechaquetransitiont n'estpasfranchissable
avantla
date:
{s''+ P(t''t)}'
, ,".,,Y30"^
,'...,
89
desSystèmes
à Ressources
Unitares
Ordonnancement
(e) L'ordonnancementest sansblocagecar le RdP modifié ne contient pas un circuit
non marqué.De plus,
élémentaire
S,2
Max
t ' / N 4 û (. tr) = 0^ r ' € " r
{S,,+ p(t',t)},
ce qui implique les contraintesde précédence
et de capacitéde ressources.
Donc, nous avons
un ordonnancement
admissible.
QED
Soit un système composé de deux travaux (figure IIL3) et soit I'ordonnancement
suivanti Srr = 0, Srz= 5, Szr: 0, Szz:5.La séquence
de datesde débutdesopérations
estSt1
< Szr< S:z < Szret la séquenced'entréesur chaqueressource
est Orl O22Sur11et O21O12Sur
rz. Le RdP modifié est le mêmeque celui donnédansla figure III.6. Il est aiséde vérifier que
les conditionsdu théorème3.4 ne sont pas vérifiéeset que donc I'ordonnancement
n'estpas
sansblocage.
III.4 Méthodesde résolution
L'objectif de ce paragrapheest de présenterdes méthodesheuristiquesperrnettantla
constructiondes ordonnancements
sansblocagepour les Systèmesà RessourcesUnitaires
(SRU). Vu les résultatsde la complexitédu chapitreII, nous savonsque I'ordonnancement
d'un SRU est un problème fortement combinatoire.Ce caractèrecombinatoireet notre souci
de dér'elopperdes méthodespour des problèmesde taille réaliste nous interdisentles
méthodesexacteset les méthodespar recherchedansI'espacedesmarquagesdu type A* que
nous a\/onsprésentéesdans le chapitreI. D'un autre côté.la propriété"Retenir et Attendre"
rend les job-shops MRB sensiblesau blocage et nous interdit I'utilisation des méthodes
heuristiques
classiquestellesque les méthodespar permutationdesopérationssur les chemins
critiques.C'est la raison pour laquelle,nous proposonsdans ce paragraphede nouvelles
méthodesheuristiquesen prenant en compte le caractèrecombinatoire du problème et le
problèmedu blocage.
III.4.1 Présentation
desméthodes
heuristiques
Lesméthodes
heuristiques
quenousproposons
sonttoutesdesméthodes
gloutonnes
.
Ellesordonnancent
lestravauxlesunsaprèslesautresselonun ordredonné.Unefoisceux-ci
ordonnancés,
les datesde débutS1r,
d'untravailne serontpasmodifiéesdansla suitede la
construction
d'unordonnancement.
Deuxméthodes
sontproposées
dansceparagraphe.
90
Ordonnancement
Uniures
desSystèmes
à Ressources
Sansperte de généralité,nous supposonsque I'ordred'ordonnancement
destravaux est
J t ,J z ,. . . , J n ,
III.4.1.l HeuristiqueI
La première méthode, appelée Heuristique 1 (Damascenoet Xie, 98-a), est une
méthode conservatrice. Lors de I'ordonnancementd'un travail Ji, elle ordonnance ses
opérations. les unes après les autres, suivant le processus de fabrication. Pour
I'ordonnancement,
d'une opérationQ1, nous déterminons,pour chaqueressourcer, la dateu, à
partir de laquellela ressourceest toujourslibre. Il est clair que I'opérationQi peut cornmencer
sansrisquede blocageà la date
Slx= Max {Si.r-r+ pj.r--r.
Max {u, / r e \r} }.
Les indicateursur sontalorsactualiséset la méthodepeut continuerde la mêmemanière.Plus
formellement.
Algorithme3.2 (HeuristiqueI (ordonnancement
selonI'ordreJ1.J2....,Jn))
l. lnitialisation
u,<-0.VreR.
2. Ordonnancement
dansI'ordredestravauxet desopérations
Pourj = I à n faire
Pourk=là\faire
2.1.
2.2.
+ pj.r_r.
Slr = Max {S.i.r*-r
Moi {u, / r e &x}}
u, <- S1l+ p;;, Vr e \r
3 . L e m a k e s p aC
n , n "** S n , N n * p n , N n
L'applicationde I'HeuristiqueI au job-shop MRB de la figure IIL3 donne
I'ordonnancement
suivant:
ut,=u
utr=o
url = 5
urr=o
str=u
S,u=5
ut,=5
urr=9
Szr=9
utr=9
Sr r = 12
url
l2
Cr., = 16
TableIII.I : Ordonnancement
d'unjob-shopMRB parI'heuristique
I
9l
des Systèmesà RessourcesLinitaires
Ordonnancement
Le diagramme de Gantt, de la figure III.7 donne une meilleure illustration de
I'ordonnancement.La propriété principale de I'Heuristique I est clairement illustrée par
de I'opérationO:r. Bien que la ressource12soit libre dans I'intervallede
I'ordonnancement
lemps [0,5], la méthoden'essaiepas d'ordonnancer
Ozr dans cette fenêtrede temps. De ce
point de me, I'HeuristiqueI est une méthodeconservatrice.Bien sûr, la tentativeconduiraità
un blocage dans cet exemple mais une méthode moins conservatricepourrait améliorer
I'ordonnancementdans les cas généraux.Ceci est le point de départ de I'Heuristique2 que
nous présenteronsultérieurement.
t.2
5
1t
9
l2
2.2
I.l
t2
t6
FigureIII.7 : Le diagrammede Ganttd'un ordonnancement
construitpar I'HeuristiqueI
Théorème3.5 : L'ordonnancement
obtenuà I'aidede I'HeuristiqueI est sansblocage.
Preut'e :
Pour preuve.nous utilisonsle modèleRdP modifié prenanten compte les séquences
d'entréedansles ressources.
SelonI'Heuristiquel, les contraintes
de précédence
et de capacité
de ressources
sont évidemmentrespectées.
De plus, les séquences
d'entréedansles ressources
respectent
I'ordredestravauxet I'ordredes opérations,c'est-à-dire
j . j'oui = j'et k < k'si
=
n,[i] fi.k) et r,[i+l]= û'.k').
Par conséquent,la séquenced'entrée n, dans chaqueressourcer passedes travaux de
I'indice inférieur aux travaux de I'indice supérieuret pour chaquetravail, des opérationsde
I'indiceinférieur aux opérationsde I'indice supérieur.Ceci est vrai pow toute place vide du
RdP modifié. Pour résumer,il n'existe pas de circuit élémentairenon marqué dans Ie Rdp
modifié et I'ordonnancement
est donc sansblocageselonle théorème3.3.
QED
Remarque 3.4 : Il est aisé de vérifier que I'Heuristique I s'applique à
I'ordonnancement
de tout Systèmeà MultiplesUnités(SMU) avecou sansopérationsZD.
92
Ordonnancement
Unitaires
à Ressources
desSystèmes
lll.4.l.2 Heu ristique 2
Comme dans I'Heuristique1, I'Heuristique2 (Damascenoet Xie, 98-a et 98-b)
ordonnanceles travaux les uns aprèsles autreset, une fois ceux-ci ordonnancés,les datesde
débutd'un travail ne serontpasmodifiées.La différenceentreles deux méthodesrésidedans
I'ordonnancementde chaque travail. L'Heuristique 2 ordonnancede manière optimale le
travail en cours de considérationet chercheà commencerles opérationsau plus tôt, tout en
évitantles blocages.Plusprécisément,
Algorithme3.3(Heuristique
2)
1. Choisirun ordredestravaux.Soit Jr, Jz,...,JnI'ordre,sanspertede généralité.
2. Pour chaquetravail J,. résoudrele problèmeà un travail pour J.;en tenant compte
desordonnancements
destravauxJr, J2,...,Jj-,.
Le problèmeà un travailest non-trivialet seraabordédansle paragrapheII1.4.2.
III.4.1.3Optimisationde I'ordre destravaux
Dans les deux méthodesproposéesci-dessus,
nous supposonsqu'unordre destravaux
soit donné.Il est clair que la qualité de I'ordonnancement
obtenu dépendde I'ordreutilisé.
Dans ce paragraphe,
nous proposonsune méthoderecuit simulé pour déterminerI'ordreafin
de minimiserle makespan.L'idéede baseest de vérifiertous les ordrespossibleset de choisir
I'ordreavec Min Cr^. Plusprécisément.
Algorithme 3.4 (Optimisationde I'ordredestravaux)
l. Choisir un ordreinitial So(ptr exempleJr, Jz,...,Jn)et calculersa valeurde critère
f(S6)à l'aidede I'HeuristiqueI ou de I'Heuristique
2.
2. Choisir une températureinitiale T6 > 0 et faire T e To.
3. Générerau hasardun ordre voisin Sr @ar permutationdes deux travaux
quelconques)
et calculersavaleurde critèref(Sl) à I'aidede I'Heuristique
I ou de
I'Heuristique
2.
93
Unitaires
à Ressources
desSystèmes
Ordonnancement
4. Si f(Sr) < f(So),faire Soe Sr. Sinon,faire So(- 51 avocla probabilitéexp(-Â1lT)
où À1= f(Sr) - f(So).
5 . F a i r eT : T r
6. Si T > T1, où Tl est la températurefinale, aller à l'étape3. Sinon,a:rêt.
IIl.4.2 Problèmes à un travail
Dansce paragraphe,
nousnousplaçonsdansle cadrede I'Heuristique
2 et considérons
I'ordonnancement
de chaquetravail.
Dans la suitede ce paragraphe.
nousformulonsd'abordle problèmeà un travail et
présentonsune méthodepar rechercheexhaustiveainsi qu'uneméthodeProgrammation
D1'namique.
pourlesSRUgénéraux
et pourlessystèmes
simples.
lIl.4.2.l Formulation du problèmeà un travail
Lors de I'ordonnancement
d'un travail J.i.certainstravaux sont déjà considéréset les
datesde débutde leursopérationssont fixées.Soit
F = { J r ,J z ,. . . ,J j - }r
I'ensembledes travaux déjà ordonnancés.
OrdonnancerJ, consisteà déterminerles datesde
début de ses opérations S.1xafin de minimiser sa date de fin C.i tout en respectantles
ordonnancements
destravauxdansF et en é\'itantles blocages.
Plus formellement.le problèmeà un travail pour J.is'exprimede la manièresuivanre
(nousrappelonsqu'il s'agitd'un modèleà tempsdiscretde H périodesélémentaires)
:
( S P ):
Min C1,
sousles contraintessuivantes:
C.;= Si.N;*r
Sil + pii < Si.l*r,Vl < k S \
94
(3.6)
(3.7)
Ordonnancement
Unitares
desSystèmes
à Ressources
l { S 1S t < S i . r * r=} 0 , V I < k s N j V S l i S t < S i . x * r
t
(3.8)
( i . l ) / i e F , R 1 1 n R . ;*;0
Il n'y a pas de blocageaux instantsr- avect e {S1, ...,S:*i}
(3.e)
Dans cetteformulation, nous avonsétendula notationdesdatesde début Sixau cask =
N.i + 1 où \ est le nombre des opérations.Ainsi, la relation (3.6) définit la date de fin du
travail J.;.Les contraintes(3.7) expriment les contraintesde précédence.Il est clair que S.,.Ni*t
: SjNj+ pjNj.Lesrelations(3.8) correspondent
aux contraintesde capacitéde ressources.
En
effet. pendantI'opération(.k), c'est-à-direSir < t < S;r*r , aucuneopération(i,l) des travaux i
dans F partageant les ressourcesporu (,k) ne peut être exécutée,c'est-à-dire que les
inten'alles[S11.51.1*1)
et [S;r, S.1.r*r)
sont disjoints.La relation (3.9) concerneI'absencede
blocage.Nous notons que I'ordonnancementdes travaux dans F est sansblocage et respecte
les contraintesde précédence
et de capacitéde ressources.
Pour simplifierla formulation.nousintroduisonsla notationsuivante:
Ik':
l { S i rS 1 < S i r * r } . V<l k s \ , V t
I
( i ' l ) / i € F ' R 1 1n R ; ç * Q
e { 1 . 2 . . . .H
.}
(3.10)
Selonla définition.lç, désignele nombrede ressources
nécessaires
pour I'opération(.k) qui
sont retenuesdansla périodet par les travauxdéjà ordonnancés.
Notons que les nombreslç,
sontdonnéspour le problèmeà un travail (SP)et ils ne dépendent
pasde I'ordonnancement
du
travailJ.i.
Grâce à cette nouvelle notation,le problèmeà un travail peut être formulé comme
suit :
( S P ):
Min C;,
sousles contraintessuivantes:
C1= S.;,1.ri*
1
Sir.+ Prr( Si.t*t,Vl < k < Ni
(3.1l)
(3.r2)
In = 0 . V l < k SNj V S1i< t < S;.r r r
(3.13)
Il n'1'apasdeblocage
auxinstants
r- avect e {S.;t,...,
SjNj}
(3.14)
desSystèmes
Ordonnancement
à Ressources
Unitaues
111.4.2.2
Une méthode par rechercheexhaustive
L'idée centralede cette méthode (Damascenoet Xie, 98-c) est d'ordonnancerles
opérationsde J.i,les unes aprèsles autres,selon le processusde fabrication,tout en acceptant
le bachracking. L'objectif est de trouver pour chaque opération(,k) une fenêtre de temps
Wl = (al, bp)telle que (i) chaqueopérationpeut êue exécutéedanssa fenêtrede temps,(ii) les
contraintesde précédencesont vérifiéeset (iii) I'ordonnancement
est sansblocage.
Les restrictions(i) - (ii) exigentI'existence
d'un ordonnancement
{Sti} tel que :
ap< S;xS bi - pjr,Vk = l, 2, ...,Nj
( 3I s )
+ p;.l-r,V k = 2, ...,\
S;r) S;.r.-r
( 3 .1 6 )
S i rS b r - rV
, k : 2 , . . . \,
(3.17)
Les contraintes
(3.15)sont duesà la restriction(i). les contraintes
(3.16)aux contraintes
de
précédence
e1les contraintes
(3.17)à la propriété"Reteniret Attendre".
Théorème3.6 : Il existeun ordonnancement
{SLr}vérifianr(3.15)- (3.17)si. et seulemenr
si.
= â l , l J l = b r - p j r , L t = m a x { L x _ r + p , . r - r , a x } , L J k : M i n { b _1
Lx<Ur..Vk=1,....\oùLt
plx . br-r). Vk:2,
..., \
D. plus.si les conditionssontvraies,{Li} est un ordonnancement
admissibleet. pour tout ordonnancement
{ Sir} admissible,Sir > Lp, vk : l, , . ., Ni.
Preuve:
(=) Soit {Slx}un ordonnancement
vérifiant(3.15)- (3.17).Alors, S.;iS Min {br - pir..
,
=
U
5
'
bx-r)
v k = 1 . " " N j e t S . ;sr b r - P . , r= U l . N o u s m o n t r o n s p a r r é c u r r e nqcuee S . ; r > L r .
Ceci est vrai pour k = I car S.;r) ar : L1. Supposonsque Sir,> Lr*.Des contraintes(3.15) ( 3 ' 1 6 ) . o n a S l . k)*m
r a x { S 1 1+ p j r . a l + r } . P u i s q u e S l x > L x , S 1 . r * r > m a x { L p * p j k , â x * r } = L t , , , .
Nous avonspar récurrence.
s;r ) Ll , vk = l, ...,\,
pour conclur€,Lr < Six< ut., vk = l. ....
Nj.
(e) Considérons
I'ordonnancement
Sit = Lk. Vk = l, ..., \. D. la définitionde Lx.
S ; t= L t > a p ,V k = l , . . . , N i ,
P u i s q u eL l < U r , n o u sa v o n sS ; rS M i n { b r - p . r i , b r _ r } V
, k = 2, ...,\
dire :
S1<
r b r - p j i , V k = 1 , . . . ,N i ,
( 3 .I 8 )
e t S . ,S
r b r _ p , r ,c ' e s t _ à _
( 3 I. e )
Ordonnancement
des Svstèmesà Ressources
Unitaires
, k:2,'.., \,
S . ;Sr b x - rY
( 3. 20)
Finalement,
Sjk= Lp : Inâx {Lt-r + p1.t-r,
ai} 2 Ll-r * p1.x-r,
Vk = 2, ..., \. D'ou,
* p1.r-r,
S1r) S.;.r-r
Vk = 2, . . ., \.
(3.21)
(3.I 8) - (3.21)correspondent
Lesrelations
(3.I 5) - (3.l7).
auxcontraintes
QED
Les restrictions(i) - (ii) s'assurentque les contraintesde précédenceet de capacitédes
ressources
sontrespectées.
Il resteà vérifier I'absencede blocage.
Théorème 3.7 : Sous les conditionsdu théorème3.6, il existe un ordonnancement
sans
blocagesi. et seulementsi, ax < br-r ou Mp, Yk = 2,. . ,, \, ne sontpasdesétatsde blocageou
Ml est l'état du s)'stèmeà I'instant tu- €n supposantque I'opération(.k-1) est en cours à
l'instanta1-.
Preuve:
Notons que le théorème3.6 garantil I'existenced'un ordonnancement
respectantles
contraintesde précédence
et de capacitédesressources.
Pour un tel ordonnancement
S11.
nous
montronsle théorèmepar récurrence
avecNi : I ;2, ...
D'abord. il est trivial que les blocagesne se produisentpas si le nouveautrarail N'
nécessite
une seuleopérationet le théorèmeestvrai pour\ = l.
= n. Nous montronsqu'il est vrai pour
\
= n * I SelonI'h1'pothèse
de récurrence,
il n'y a pasde blocageavantle débutde I'opération
( - n + 1 ) . c ' e s t - à - d i r ae v a n tS i . n * r . D e sc o n t r a i n t e(s3 . 1 5 )- ( 3 . 1 7 ) ,â n + r( S i . n * <
r b n .N o u s
remarquonsque les ressources
dans\n ne sont pasretenuesdans[an,bn] par les travauxdéjà
Supposons
que le théorèmesoit vrai avec\
ordonnancéset les ressourcesdans\.n*r ne sont pas retenuesdans [an*r,bn*r] par les travaux
déjà ordonnancés.Par conséquent,toutes les ressourcesdans Rin u
\.n+r sont libérées à
( bn.Dans ce cas.I'opérationfi, n+1) peut commencerà la dateSi.6*1
I'instantSi.n*rsi ân+1
et
le théorèmeestprouvé.
Considérons
le casoù an*r= bn.Alors Si.n*r= bn.SelonI'hypothèsede la récunence.il
existeun ordonnancement
{Sir} pour les travaux {Jr, Jz, ...,J.j} avec\ = n * I tel que (a) les
contraintesde précédenceet de capacitédes ressourcessont vérifiées,(b) il n'y a pas de
blocageavantl'instant bn.Alors il existeun ordonnancement
sansblocagesi, et seulementsi,
I'opération(. n+1) et I'ensembledesopérations(i, l), tellesque Sil= bn,peuventcommencerà
cettedate.Selonle théorème3.2, (j. n+1) et I'ensemble
(i. l). tellesque S;1: bn.
d'opérations
97
desSystèmes
à Ressources
Ordonnancement
Unitaires
peuventcorunencerà la date bn si et seulementsi l'état du systèmeM.- avec r = bn = ân*l
n'est pas un étatde blocage,c'est-à-dires'il n'y a pasde siphonvide. Ceciconclutla preuve.
8ED
Comptetenu desrésultatsantérieurs,
nouspouvonscalculerl'ordomancementoptimal
d'un travail selonI'aleorithmesuivant:
Algorithme 3.5
l . I n i t i a l i s e r : X ç +0- e t k e 1 .
2. Déterminerla fenêtrede temps maximale wl = (ar, b1) telle Quea1> Xl, br - ax 2
Pjt, ar < br-r et li.(t) = 0, Vt e W1.Par convention,b0= @.
J.
^
Si Wk n'existepas.alorsXr-r <- bi-r,k <- k-1 et aller àl'étape2.
Vénfier I'absencede blocase:
Si k > 1. faire :
- déterminerl'état du systèmeM à la datea1-.
- vérifierI'absence
de blocagede M à I'aidede I'algorithme
3.1. S'il y a blocage.
alorsX1-1<- bx.r,k <- k-l et allerà l'étape2.
)
VérifierI'existence
d'un ordonnancement
admissible
pour le travailj {(&,, prr),...,
(&r. pLr))avecles contraintesde fenêtrede tempsW1.
6
Si I'ordonnancement
n'estpasadmissible,Xr e bi et aller à l'étape2.
7 . Si k < N. alorsXl*r <- âr + pk,k <- k+l et aller à l'étape2. Sinon,arrêt.
Théorème3.8 : L'ordonnancement
obtenuen utilisantI'algorithme
3.5pourJr, ...,Jnestsans
blocage.
Preuve:
L'ordonnancement
obtenuestsansblocageenvertudu théorème
3,7.
QED
Remarque3.5 : Dansle casd'un système
simple,I'ordonnancement
obtenuvérifiant
les contraintes
précédence
de
et de capacité
de ressources
esttoujourssansblocage(voir le
théorème3.1).Par conséquent.
l'étape4 n'estpasnécessaire
pour ordonnancer
un système
simnle.
desSystèmes
Ordonnancement
à Ressources
Unitares
111.4.2.3
Une méthode Programmation Dynamique
Dans ce paragraphe, nous présentonsune méthode Programmation D1'namique
(Damascenoet Xie, 99) pour résoudrele problèmeà un travail (SP). Rappelonsla formulation
donnéedansIII.4.2.l :
(SP):
cj = Min C.;,
sousles contraintessuivantes:
C, = S1.N1
* t ,
+ p.;rS S1*r,Vl < k S Nj
S.;ç
Ih = 0, Vl < k <N, V S;r,< t < S.;i-r
Il n'1,pad
s e b l o c a g ea u x i n s t a n trs- a v e cr e { S 1 r , . . . , S j ^ j } .
Afin de prendreen comptele blocage.nousdéfinissonsl'indicateursuivant:
B i k . t . ;=
0, si les1,stème
est.avec
blocageà la fin de la 'c'est-à-dire
périodet-l sachant
queI'opération(j.k) est eniours danst-l.
S.,r.t
€t S,.1*r
> t.
l.
sinon.
B(k.t)indiquela possibilité
de passer
de I'opération
(,k) à I'opération
(, k+l) sans
risquede blocageau débutde la périodet. Nousremarquons
que chaqueindicateurB(k.t) ne
dépendpasde I'ordonnancement
réellement
choisipour le nouveautravailet B(k,t) dépend
seulement
destravauxdéjàordonnancés.
Concrètement,
nousutilisonsI'algorithme3.1 pour
vérifierle blocageayantcommemarquage,
pourchaquetravaildéjàordonnancé
i e F, M(Otr)
= I pour l'opération(i,l) en coursd'exécutiondansla périodet-l
et M(ex) = I pour le
nouveautravailJ1.S'il n'y a pasde siphonvide,B(k,t) = I sinonB(k,t) = 0. Il est aiséde
montrerqueBQNi,t) = l. Vt et B(k,t) = 0 si unedesressor,uces
dans\r. est occupéepar les
travauxdansF danst- I .
Aveccettenouvellenotation,
le problème
(Sp)s'écritcommesuit:
99
desSystèmes
à Ressources
Unitaires
Ordonnancement
( S P ):
C, = Min C,,
sous les contraintessuivantes:
C.,: S1.1i*
r,
S.;i+ PjxS Sit*t, Vl < k < \,
ln = 0,Vl <k <\
V S i rS. t < S i r * r ,
B(k,S1*r)=l,Vl<k<\.
(3.22)
(3.23)
(3.24)
(3.2s)
Au lieu de résoudredirectementle problème(SP). nous considéronsla famille de
problèmes
de décisionsuivante:
P(k.r) :
S .+
i rp . 1<rS ; . r * r . VSl I < k .
< t < S1.r *r ,
Ir,= 0 . Y l = 1,...,k, S.;r
B ( 1S
. 1 . r -: r )1 ,V l : l , . . . k, ,
: T.
S1.x-r
( J .j o l
(3.27)
(3.28)
/î )Qr
Nous introduisons
également
I'indicateur
suivant:
[], siP(k.r)a unesolurion,
F(k.t) = I
| 0,sinon.
Concrètement.
le problèmeP(k,t) vérifie I'existenced'un ordonnancement
sans
blocagepour les k premières
opérations.
tel que I'opération
(i, k+l) puissecorrmencerau
période
débutdela
t.
Relation entre les problèmesde décisionet le problème à un travail
Avant d'aborderla résolution des problèmesde décision,nous montrons que les
solutions des problèmesde décision permettentde déterminerune solution optimale du
problèmeà un travail(SP).
100
à Ressources
desSystèmes
Uniures
Ordonnancement
T h é o r è m e 3:. 9C , : M i n { t e { 1 , . . . H
, } /FNj, t)= l}
Preuve:
que chaquesolution{ Sir }du
S o i t t': Mi n {t / F Q{,,t):1} . Nousr emar quons
problèmePG'{.i,
t') estun ordonnancement
admissible
du problème(SP).Donc,t' = S1.p3
* 1)
C,. D'un autrecôté,toute solutionoptimale{Sir} du problème(SP) est une solutiondu
problème
P(l',l,,Ci) avecC, = S,,x1*
1.Alors,F(Nj,C;): L D'ou,C; > t'et, parconséquent.
C, = t''
QED
Considérons
I'ordonnancement
suivant:
S , u: m a x { t / F ( k - l ,t ) = I n t s S l . 1 * r- p . i r }
ou5,
J r\
?r
:L
-l
Théorème
3.10: { sl* } estunesolution
(SP).De plus.S,* > Sir,vk = l, ...,Nj,
du problème
pourtoutesolution
admissible
(SP)avecS1.p1
du problème
* r : C, .
Preuve:
Nous montronsd'abordpar induction que S,,. existe.Il est clair que S,.N,-rexiste.
que S,**, existe.Alors. F(k, s;k*r): 1, c'est-à-dire
Supposons
le problèmeP(k, S,.u-,)a une
solution.Soit {S1;.Vl < I < k+l} cenesolution.Nousavons:
= l,
S';rS S,*., - Pjret F(k, S.;r)
cequiprouveI'existence
de S,*. Parinduction,
tousles Sl* existent.
PourprouverI'admissibilité
de {Si* }, il fautvérifierlescontraintes
deprécédence,
les
contraintes
de capacité
desressources
et I'absence
de blocage.Lescontraintes
de précédence
sontvraiespuisqueS1rs S,r-, - pjk,Vl s k s \.
respectées
si lr-,: 0, Vl s k < \.t
Les contraintes
de capacitésont aussi
S,..S t < S1.r.r.
Pournousassurer
de cela.considérons
unesolution{S1r,
Vl s I < k+l} du problème
P(k. S1*-,).Une
tellesolutionexisrecar F(k.
S;*-r)= 1.De (3.26).S,* > Srr.Puisque
deP(k.S,.*.,),
Ik,= 0, v S.;r< r
{Srr}estunesolution
l0l
des Systèmesà RessourcesUnitatres
Ordonnancement
< Si.r.r, ce qui implique Ip = 0, S11< t < S,.u*,.L'absencede blocageest assuée par la
c o n t r a i n t e ( 3 . 2 8 ) a v e c l = k e t rS
: ; q u i i m p l i q u e B ( kS, , . * . , ) =l , V l S k s N j .
Nous démontronsmaintenantla dernièrepartie du théorèmepar I'abswde.Supposons
qu'il existeune solution{S;i} du problème(SP)telle que Si.Ni*r = C, et 3 k, Sir t S,*. Soit v
l e p l u s g r a n d i n d i c e k t eqlu e S l i > S , u .P u i s q u e S i , N=i *Sr ] , " , *=, C ; , v < \ +
I e t S . ; " >S , , e t
s S,.,*,.Notonsque {S1r,Vl < I < v} est une solutionde P(v-I, Sj*),c'est-à-dire
S.i..'-r
F(v-l.
Sru): l. De plus, S^ S S1."*r- pjuS S,.".,- prn.Alors,
= I et S.;,< Sl.,*,- pi",
F(v- l, S1r,)
ce qui impliqueque S,,-, 2 S1,,ce qui contreditI'hypothèse
Slu> S,, et conclutla preuvepar
I'absurde.
O.E.D
Nous consideronségalefiientI'ordonnancementsuivant:
S , *: M i n 1 t .
S , . * .-, p j k / F ( k - l . t ) = l n l k r : 0 , V t < t .
S,.*-,)
avec S.,*-, : Ci .
Théorème3.ll : t s;- ) estunesolutionadmissible
(sp).De plus,Sl* < S,p.vk
du problème
= 1,..., pourtouresolufjon
admissible
(Sp).
{Srr}duproblème
\.
La preuve est similaire à celle du théorème3.10 et est ignorée.Nous notons que
I'ordonnancemenl
"calé à gauche"et { S;k} un ordonnancemenl
i S;,t) est un ordonnancement
"caléà droite".
Résolution
desproblèmes
de décision
Danscettesection.nousmettonsen évidenceunerécunence
pour la détermination
des
F(k,t). Pourcela.nousconsidérons
lesproblèmes
P(k+l, t). c'est-à-dire
:
P(k+1.r):
S .+
; rp . ;<r S 1 . r * r , V
sl<k+l
I , , : 0 , v I < I < k + 1 ,V S i r< t < S r . r * r
r02
Ordonnarcement
Unitares
desSystèmes
à Ressources
B ( 1S
, 1 . r *=r1) , V l < I < k + l
: T
S1,r+2
qui peul êtremis sousla forme suivante:
l l<k
S i r+ p ; r( S j , r * r , V <
( 3.30)
Ir,=0,VI <l<k,VS,, .t.Si,*,
( 3 . 31 )
(3.32)
B ( 1 , S 1 . ; * 1 ), :Vl l < l < k
( 3 . 3)
S11ç*r<T-pjk+r
I * * , . , = 0 , V S ; r *<r t < T
( 3. 34)
( 3 .s3)
B ( k + l ,t ) : L
De la définitionP(k. t). il existeune solution{Sir,Vl < I < k+l} vérifiant(3.30)(3.32)si. et seulement
si. F(k. Si.t-r)= l. Nousavonsdonc:
r
-F/(.k + l.. t ) =\ i l r . l r : r < T - pr,r.' À
* -- ,r Æ
-,.
\ : -(/ k . r ) = 1 " , 8 ( t < + l . r ) = l r , t l=*g
t=r
t^
lu. srnon
ou de manièreéquir,alente.
r ' ( t+ t . r ) = V
I S Î-pJr
F ( k , r ) n B (+kl , t ) n l t l * * , . , , v<ts < r )
( 3. 36)
où "^" désigne
I'opérateur
logiqueET et "v" I'opérateur
logiqueOu. Parconvention,
F(0,t) =
l.Vl sr<H.
La méthodeProgrammation
Dynamiquepour le problèmeà un travail peut être
résumée
commesuit :
r03
desSystèmes
à Ressources
Unitares
Ordonnancement
Algorithme 3.6 (ProgrammationDynamiquepour le problèmeà un travail)
1. Calculerles indicateursI1*.sur la disponibilitédes ressources
pour I'opération(.k)
en utilisantla relation(3.10).
2. Calculerles indicateursde blocageB(k, r) en utilisantI'algorithme3.1.
I
J
Solutions
desproblèmes
de décision
3 . 1 . I n i t i a l i s a t i:okn= 0 ,F ( k ,r ) = l , V l < r < H .
3.2. Pourk=0à\- 1,
Pourt=làH
CalculerF(k+1,t) enutilisantl'équation
(3.36).
4. CalculerC, à I'aidedu théorème3.9.
5. CalculerI'ordonnancement
sansblocageSii en utilisantle théorème3.10 ou 3. I L
Nous remarquonsque la résolutiondes problèmesde décisionest due à la méthode
ProgrammationD1'namiqueen avant.Dansle calcul de F(k+1. r) à I'aidede l'équation(3.36).
il 1' a beaucoupde calcul redondant.Cela peut être améliorépar des astucesalgorithmiques.
Finalement.lorsquecet algorithmeest appliquéà un systèmesimple,en vertu du théorème
3.1. les indicateursB(k. t) ne sont pas nécessaires
et, en conséquence,
l'équation3.36 peut
êtresimplifiée.
III.4.3 Une méthodeheuristiquefondéesur les systèmessimples
Au ru des résultatsdu paragrapheIIL4.2.les méthodesd'ordonnancement
sont plus
simpleset plus efficacespour les systèmessimplescar, grâceau théorème3.1, nous n'avons
pasbesoinde vérifier explicitementI'existence
de blocage.
Du parasrapheII.3. nous savonsque (i) tout Systèmeà R-essor-rce
Unitaire (SRU) peur
être transformé en un systèmecanoniqueen insérantdes opérationsZD et (ii) un système
simple est un systèmecanoniquedont les temps opératoiressonl positifs.Ceci nous conduit
naturellementà une méthodequi construit I'ordonnancementsansblocaged'un SRU général
en passantpar un systèmesimple.
Plus précisément.considéronsun SRU composéd'un ensemblede travaux {Jr, Jz, ...,
Ji, ..., Jn) avecJi = {(&r, p.ir),(Rtz,pjz), ..., (&Ni, pixi)} et pjk > 0. Sa forme canoniqueesrun
S R Uc o m p o s é
d e st r a v a u x{ J i , J : , . . . , J ; } t e l sq u e
104
Ordonnancement
desSystèmes
à Ressources
Uniuires
(Rl,,pj,),...,
J; = {(Ri,,pi,),
(Ri*;,p;*,)}
ou
Nj =2N,-1
(Rjzr-r,Pf.zr-,
) = (R.ix,
Pir,),
vl <kSNl
1 Rj ,:r,P i r*) = (& x tr \.x*t, 0) ,
vl sk<\.
Nous définissonségalementun systèmesimple,que nous appelonsforme canonique
modifiée du SRU. en remplaçantles opérationsZD de la forme canoniquepar des opérations
à délai unitaire.Plusprécisément.la forme canoniquemodifiéeest un systèmecomposédes
t r a v a u xi J Ï , i i . . . . . J T l t e l s q u e N i = N ; = 2 \
- l,Ri
= R;r,pï
:max{plu,l}, V
0,k)
La nouvelleméthodeconstruitI'ordonnancement
du SRU en quatreétapes:(i) calculer
la forme canoniquemodifiée:(ii) ordonnancerla forme canoniquemodifiée;(iii) extraireles
séquences
d'entréen, dans les ressources
pow le SRU à partir forme canoniquemodifiée et
(ir') calculerI'ordonnancement
du SRU avec les séquences
n, à I'aidedu théorème3.3. potu
résumer:
Algorithme 3.7 (Méthoded'ordonnancement
à I'aidedessystèmessimples)
1. DéterminerIa forme canoniquemodifiéedu SRU.
2. Ordonnancercetteforme canoniquemodifiéeà l'aidede I'algorithme3.4 du recuit
simulésansvérificationde blocase.
3' Extraireles séquences
d'entréen, dansles ressources
poru le SRU à partir de
I'ordomancement
obtenudansl'étape2.
4. Calculerles datesde débutdesopérations
du SRUà I'aidedu théorème
3.3 avec
lesséquences
d'entrée
nr.
Nous remarquons
que les ordonnancements
de la forme canoniquemodifiéesont
également
admissibles
pour les SRU,Mais I'utilisation
du théorème
3.3 permetl'élimination
destempsmortset conduità un meilleurordonnancement.
r05
desSystèmes
à Ressources
Unitaires
Ordonnancement
III.5 Extensions
Dans ce paragraphe,nous allons aborder I'extensiondes résultats des paragraphes
IIL2-lIL4 où nous avons fait I'hypothèsedes tempsopératoirespositifs,c'est-à-direpjk > 0.
Nous allons montrer comment prendre en compte les opérationsZD. Mais nous allons
égalementaborderI'extensiondes méthodesd'ordonnancement
présentéesdans ce chapitre
pour optimiser d'autres critères et pour prendre en compte des produits de gammes non
linéairesavecopérationd'assemblage
et de désassemblage.
[I.5.1 Priseen comptedesopérationsZD
Nous examinonssuccessivement
les méthodesd'ordonnancement
du paragrapheIII.4.
Considéronsd'abordla méthodeconsen,atrice
(Heuristiquel) qui. lors de I'ordonnancement
d'un travail. n'essaiepas d'utiliserles temps morts laisséspar les travaux déjà ordonnancés.
Comme constatédans le paragrapheIIi.4.1.1. cette méthodeconservatriceévite I'attente
circulairepuisqueles ressources
sont affectéesaux travauxselonle même ordre destravaux.
Par conséquent.
elle restevalablepour tout SRU avecou sansopérationZD.
Par contre.I'Heuristique2 du paragraphe111.4.2.2.
qui chercheà ordonnancerchaque
travail de manièreoptimale.ne s'appliquepas directementà I'ordonnancement
d'un SRU avec
opérationZD. Il existe pouftant une exceptionpour le cas où les opérationsZD sont des
opérationsZRZD- c'est-à-dire\* = ô et p1r= 0. Dansce cas,il est aiséde montrerqu'il n'y,a
pas de blocageau début d'une opérationZRZD 0,k) et au débur de I'opérationsuivante(.
k'1) La méthode par recherche exhaustive du paragrapheIIL4.3.2 et la méthode
ProsrammationD1'namiquedu paragrapheIII.4.3.3 peuvent être aisémentadaptéespour
prendreen comptecesopérationsZRZD.
Pourun SRU général,avecopérationZD, nousutilisonsla méthodeheuristiquefondée
sur les s}'stèmessimples potu trouver un ordonnancementsansblocage.Nous notons que la
forme canoniquemodifiée peut être définie de la même manièrepour un SRU avec ou sans
opérationZl) I'a seuledifférenceest que les ten:psopératoiresdes opérationsZD du SRU
sont modifiés alors que les opérationsd'un SRU sans opérationZD restent identiques.
L'Algorithme 3.7 peut être utilisé sans modification car le théorème 3.3, permettanrla
déterminationdes datesde début partantdes séquencesd'entrée,restevrai pour un SRU avec
I'opération
ZD.
106
Ordonnancement
desSystèmes
à Ressources
Unitares
III.5.2 Priseen compted'autrescritères
Dans la pratique,la minimisation du makespann'est pas toujours un critère pertinent.
De plus en plus, le soucid'un industrielest le respectde délai et la réductiondes en-cours.Il
est alorsnécessairede considérerd'autresformes de critères.
Dans notre travail, grâce à la souplessedes méthodesd'ordonnancement
proposées,il
est aisé de prendre en compte d'autres critères réguliers comme nous le ferons dans le
paragrapheIIL6 pour I'exemplede Ramaswanyet Joshi (86). Rappelonsqu'un critère f({Six})
d'un problème d'ordonnancement,où {Sit} est un ordonnancement,est dit régulier si pour
deuxsolutions{S1x}et { S;1 },
Sjr. < S1r,
V(.k) =+f({ S;k)) < f({S:r}).
Lescritèressuivants
sontréguliers
:
o
Ia duréetotale : Cr"r, = Max, { C j } ,
o
la sommede retard' I I,
r
la sorruned'en-cours: I C.i,
où Cj = Slr.r+ Pixj, T, : max {0, Cj - d,} et d; est la date échuedu travail J.;.Par contre. la
minimisationde la sommede retardet d'avance.c'est-à-direI lg - d; l, n'est pas un critère
régulier' La particularitéd'un critère régulierest que I'ordonnancement
optimal doit être calé à
gauche.c'est-à-direque les opérationsdoivent commencerau plus tôt tout en respectantles
séquences
d'entréedansles ressources.
De cetteremarque,il semblenaturelque. danschaque
éupe d'uneméthodegloutonnequi ordonnanceles travaux de manièreséquentielle,le travail
en cours de considérationdoive terminer au plus tôt. Par conséquent,les méthodes
heuristiques (Heuristique I et 2) du paragraphe lIl.4.2 peuvent être appliquées sans
considérationde la forme exactedu critère que la méthodedu recuit simulé doit prendreen
compte.La méthodedu recuit simuléest I'algorithme3.4 pour I'optimisationdu makespzm
en
remplaçant(S) par la forme exacte de la valeur de critère de I'ordonnancementobtenu par
l'HeuristiqueI ou par I'Heuristique2 suivantI'ordre destravaux.
III.5.3 Gammesnon linéaires
Dans cette thèse.nous nous intéressons
essentiellement
à I'ordonnancement
des
travauxa\recgalllmeslinéaires.
c'est-à-dire
quechaque
travailestunesuited'opérations.
Ceci
ln?
Ordonnancementdes Systèmesà RessourcesUnitaires
exclut évidemment les opérationsd'assemblageoù une opération peut avoir plusieurs
prédécesseurs
etou plusieurssuccesseurs.
Il n'est pas difficile de montrer que les résultatssur la représentationet la vérification
de blocagedu paragrapheIIL3 s'étendentau SRU avec gammesnon-linéaires.Il est bien
ivident que chaquetravail n'est plus représentépar un chemin élémentairemais par un RdP
acyclique.La méthode conservatrice(Heuristiquel) du paragrapheIIl.4.2 s'applique en
ordonnançanlles opérationsd'un travail dansun ordre correspondant
à sa gamme.
Quant à I'hewistique 2, la principale difficulté résidedans la résolution du problème
d'ordonnancementà un travail. Pour la méthodepar rechercheexhaustive,on cherchepour
chaqueopérationune fenêtre de temps Wt : (ax,brr)telle que les contraintesde précédence
sontvérifiéeset I'ordonnancement
(3.15)- (3.17)deviennent
est sansblocage.Les contraintes
alors:
a ç< S 1S
r b r - P l r .V k : 1 ,2 , . . . ,\
+ p1r.
S.;r> S.;r
V(i,l) précède
(,k)
SlpS br,V(.1) précède(.k).
Le théorème3.6 peut êtredémontréde manièreanalogue.Par contre,la vérificationde
blocageest plus délicate en présenced'opérationsde désassemblage
car le marquagêMr,
c'est-à-dire
l'étatdu s1'stème
à I'insunt âç-,€n supposantque I'opération(, k-1) en cours.n'est
plus unique. Cene même difficulté rend la généralisationde la méthode Programmation
D1'namique
difficile car il n'estpasaiséde définir les indicateurs
de blocageB(k,t). Une étude
plus approfondiesur I'extensionde I'heuristique2 dépassele cadrede cette thèseet est un
sujet de recherchefuture. Un autre sujet de recherchefuture intéressantest la prise en compte
de la flexibilité desressources
et dessammesde fabrication.
III.6 Résult_ats
n umériques
Dansceparagraphe,
nousprésentons
six exemplesde Systèmes
à Ressources
Unitaires
et les ordonnancements
obtenusà I'aide de I'Heuristiquel, de I'Heuristique2 et de la
méthodeProgrammation
Dynamique.
Le premierexempleestdû à Ramasu'any
et Joshi(96)
et lesautresexemples
ont étégénérés
de façonaléatoire.
108
Ordonnancement
desSystèmes
à Ressources
Lrnitaires
III.6.l ExempleI
Cet exempleest dû à Ramaswan)'et Joshi (96), comme nous I'avons mentionné.Il
s'agit d'une cellule composéede trois machinesMr, Mz, Ml, un robot de manutentionT et
quatre travaux Jr, Jz, Jr, Jq. Chaque travail nécessitesept opérationset chaque opération
demandeune seuleressource.Les temps opératoireset les opérationsdes travaux sont donnés
dansla tableIII.2.
Opération
1
I
2
J
4
5
6
7
Jr
f,5
Jz
Jr
Ja
r,6
T,5
T,4
M1,40
MI'212
M2,45
M3,55
T,3
T,7
T,3
T,3
M2.100
M2,73
M1,65
M2,65
f,5
Mr.3 6
T.4
f.4
r,6
T,5
M3,32
M3,98
M1,35
T,4
T,4
T,5
Table III.2 : Travaux de I'exemplede Ramaswan),.
er Joshi(96)
IVlinimisationdu makespan
Les deux heuristiques.I et 2, eTlaméthodeProgrammation
Dynamiquesont utilisées
pour trouver I'ordonnancemenlde cet exemple.Nous avons utilisé la méthode du
recuit
simulé pour optimiserl'ordre des travaux.Nous avons fait plusieursessaisavec différentes
valeursdesparamètres
T6 et r. utilisésdansle recuitsimulé.
Les chargesdesressources
sont donnéesdansla tableIII. 3. L'ordonnancement
obtenu
en utilisant I'HeuristiqueI est donné dans la table III.4. Les résultatsobtenusen utilisant
I'Heuristique 2 et la méthode Programmation Dynamique ont conduit au même
ordonnancement
et il est donnédans la tablesIII.5 et le diagrammede Gantt est donné dansla
figureIIL8.
Ressource
Mr
Mz
Charge
352
283
M3
221
74
T
TableIIL3 : Lescharges
desressources
deI'exemple
deRamaswany
et Joshi(96)
r09
desSystèmes
à Ressources
Unitaires
Ordonnancement
Jz
Jr
Opération
I
2
a
J
4
)
6
7
tr, ti
tr
194,199
200,411
[s,
I, 5
6, 45
46, 48
49,t 4 8
149,153
15 4 , 1
89
19 0 ,19 3
Jq
Jg
t1
k,
5?? 5?7
t{,
t1
419,497
5 3 8 ,5 8 2
5 8 3 ,5 8 5
5E6,650
759,762
763,817
EI E, E2C
u 2 t ,E U
192,495
b5l, ô56
UU6,U9U
196,52i
b5'1,'t54
./5E
/55,
891,925
926.930
4l2,4lE
528,532
= 930
Makespan
Tempsde CPU : l.l0* secondes
TabieIII.4 : Ordonnancement
de I'exemplede Ramaswan)'etJoshi(96) par I'Heuristique
T"
I,
Opération
I
rS!
t1
l
178,182
2
183.226
J
))'l
4
)
6
7
))9
230,329
3303
, 34
335,370
371,374
ts,
Jr
ti
230.235
236,447
448,454
4\5 \)7
Lsr
Ja
tf
5
6, 50
51, )J
5 4 ,I 1 8
I 1 9 ,t24
528,531
532,563
125,222
564,568
223,226
Makespan:568
TempsdeCPU: 3l secondes
k,
t1
6,9
10, 64
65, 67
68,132
1 3 3 1, 3 7
138,172
173,177
TableIIL5 : Ordonnancement
de I'exemple
deRamaswany
et Joshi(96)parI'Heuristique
2 et
par la méthodeProgrammation
Dynamique
ll0
Ordonnancement
desSystèmes
à Ressources
Unitaires
æ
I
E
Travail I - ta.u: 177 - tn": 374
r
Travail2 - ta"u:229 - t6n: 568
Travail3 - to.r: 0
-tna:226
T r a v a i4l - t a " u : 5
-t,":177
Figure III.8 : Diagramme de Gantt de I'ordonnancementdonné dans la table III.5
Le critèreutilisé pour obtenir les ordonnancements
donnésdansles tablesIII.4 et III.5
est la minimisation du makespan.Nous avons obtenu les valeursdu makespan930, 568 et
568, à I'aide de I'Heuristique 1, de I'Heuristique 2 et de la méthode Programmation
Dynamique, respectivement. Ramaswany et Joshi (96) ont utilisé le même critère et une
approchepar programmation linéaire en nombres mixtes. Ils ont obtenu la valeur (optimale)
560 pour le makespan.
Une comparaisonentre le résultat obtenu par Ramaswanyet Joshi et le résultat obtenu
par I'heuristique 2 et la méthode ProgrammationDynamique, montre que nous avons obtenu
un ordonnancementproche de I'optimum. De plus, nous remarquonsque les temps de CPU
sontfaibleset ils sont donnésdansles tablesIII.4 et IIL5.
Minimisation de la somme de retards et de la somme d'en-cours
Nous considéronsdeux autres critères : la minimisation de la somme de retards et la
minimisationde la sommed'en-cours,c'est-à-dire:
Min I
max (0, Ci - d.i),
J
MinI
Ci.
J
lll
Ordonnancementdes Systèmesà RessourcesUnitaires
où C.;est la date de fin du travail j et d1est la date échuedu travail j.
La table III.6 donne les résultats obtenus à I'aide de I'heuristique 2 et de la méthode
Programmation Dynamique avec le critère de la minimisation de la somme de retards et pour
des dateséchuesdifférentes.
Pour la minimisation de la somme d'en-cours, les deux méthodes donnent un
ordonnancementde la valeur de critèrede 1345et du makespan568.
I
2
3
4
5
Sommede
Date échue de chaque travail
Essai
dr
200
400
500
200
1000
d2
400
400
500
200
200
dg
200
400
500
200
200
d4
200
400
500
200
200
retards
Mekesnnn
368
168
68
568
342
568
568
568
568
627
Table III.6 : Ordonnancementpour la minimisation de la somme de retards
lll.6.2 D' autres exemples
Ces exemplesont été générésde façon aléatoire.Chaqueexemple est composéde neuf
ou dix travaux et de huit, neuf ou dix types de ressources.Chaquetravail nécessiteentre trois
à cinq opérationset chaque opération demandeentre un à trois types de ressources.Les temps
opératoireset les opérationsdes travaux sont donnésdansles tablesIII.7, IIL10, ilI.13, III.16
et IIL19. Les chargesdesressources
sont donnéesdansles tablesIII.8, IIL11, III.14, III.17 et
III.20. Les ordonnancementsobtenus à I'aide de I'Heuristique 2 sont donnés dans les tables
III.9, III.12,IIL l 5, n. I 8 et IIl.2l.
tt2
Ordonnancement
Unitaires
desSystèmes
à Ressources
Operatrons
Travaux
o:,
Qr
0jr
Qe
RrRIR-a,3
Rs,9
lk, E
Rs,7
R:R.aRs,5
R z ,l 0
R4R{, I
J3
RrRzR:,1
RzR.a,4
R rR s,9
Ja
R7Re,10
Js
Rz,9
Jo
R1R2,3
RrR.aR{,4
R +Rr ,4
Jt
RrRrRç,10
R2R3R6.9
J1
Jz
Jg
R4,
Je
Rt,6
Jro
R+Rz,7
lkRr, E
R4,5
R1R3,E
Rs,4
Rr R' a,3
RrRs,l0
Ru,4
Rt, E
R2Re,7
Ois
Kg, 3
RIR;Rç,7
RrR+Rro,9
RsRz.I
R"aRe,6
Rs,3
TableIlI.7 : Travauxde I'exemple2
Ressource
Charge
Rr
R2
R3
R.
R5
56
J/
36
58
J+
.A
R6
Rr
Rg
Rq
Rro
49
55
l/
38
9
TableIII.8 : Les chargesdesressources
de I'exemple2
Opérations
Travaux
Qr
Oo
Oir
Qc
Qs
ts, tf
ts, tf
t,tf
ts, t1
ts, tf
l. I
2.4
Jz
t2. t 5
1 6 ,3 0
T.
79,83
J6
70.78
1 ,1 0
65
7 9 ,9 l
I.
lat
I.
Jl
Jr
Js
I l, 18
6 6,69
Js
5, ll
92,95
34,42
12,l 9
Je
34.42
50,5 6
4 3,49
57 58
Jro
33
5,l3
3 1 ,4 0
84,91
19,23
70,73
96,9g
14,23
41,41
43,52
20,23
24.26
5 U ,5E
59,6 4
65,67
Makespan= 98
(Remarque: le makespanobtenuavec I'Heuristique
I e s t1 5 1 )
TableIII.9 : Ordonnancement
deI'exemple
2 parI'Heuristique
2
I lJ
24,3 0
desSystèmes
à Ressources
Ordonnancement
Unitares
Opérations
Travaux
O:,
Qr
Rs,7
Jr
Jz
R6,10
Jl
R s ,l 0
Ja
R:RqRç.9
Js
Jt
R zR r,9
RsRuRs.
l0
R€,7
Ja
J6
Qr
Rr&,2
Rr,8
RzRr&.3
Ru&,I
Rs&,7
RlRsRz.4
Rs,6
RzRu,3
R2RaR7,9
Rr,
a
J
RoRzRs,9
Qs
Qq
RrRrRr,9
Rl&Ru,l0
Rs,9
RrRa,3
R2Re,4
R r & ,1 0
R.8.6
Rç,8
RrRrRe.
T
RrR.tRt,9
Jq
RzRq,7
R4, 7
Rr Rs,3
Jro
R r R l ,9
R:RaRs,
10
RrRs&.5
Rs,3
Rf,4
Rl,5
T a b l eI I I . 1 0 : T r a v a u xd e I ' e x e m p l3e
Ressource
Charge
R1
Rz
R3
&
Ri
&
R7
Rg
Rq
63
45
48
72
JI
60
63
tl
38
TableIII.11 : Les charges
desressources
de I'exemple3
Opérations
Travaux
I,
Qr
O't
Orr
ts, tf
ts, tf
1.,tr
8 4.85
5 8,60
86,93
6 1 ,6 7
J+
83
4 8 .5 7
11,20
8 4 ,9 2
J5
22,30
Jz
T.
J6
1.10
28
Jt
))
Jg
)q 40
Jq
Jro
103,109
60,6g
21
9 3 ,102
22,29
103,109
/ l
3 1 ,3 9
1 1 .l 9
29,3 6
4 1 ,4 7
40,43
20,29
37,40
49,56
ll0, ll6
l17, l19
6 9,78
79,83
:124
Makespan
Qq
tr, ti
ts, tf
94,102
30,39
109,117
44,5 6
4 1 ,4 3
120,124
(Remarque
: le makespan
obtenuavecI'Heuristique
I est195)
TableIII.12 : ordonnancement
de I'exemple
3 parI'Heuristique
2
n4
Qs
57,59
Ordomancement
desSystèmes
à Ressources
Uniuires
Opérations
Travaux
Qr
J1
O',
O'.
Rq,7
Rr&,2
Rt,8
Jz
R6, 10
RzRlRq,3
Rs&,7
J3
R 5 ,l o
Rz&, I
RzR+Rq,9
Ja
Js
RzRo,9
RsRzRs,
l0
Ra,7
Rs,6
Jq
RzRq.7
J5
J6
J7
Qn
Rr Rr R*,9
Qs
R3R5R7,4 RIR+Rz,10
RzR.aRr,9
R{, 6
Rt,3
Rr, 9
R2R7,3
RrRs,3
R2Re,4
RoRuRe.9 R r R q ,l 0
Rs,8
R6,4
RrRoRs.
T
Rr&Rr,9
R4.7
RoRe,3
Rç,3
Rr,5
TableIIL l3 : Travauxde I'exemple4
Ressource
Charge
Rr
R2
R3
R4
Rq
R6
Rr
R6
Re
49
45
JJ
57
31
60
54
61
38
TableIII.14 : Les charges
desressources
de I'exemple
4
Opérations
Travaux
J1
I.
J:
J.r
Js
Jo
Jt
Js
Jq
Qr
Qz
[s, tf
t,tr
Qr
Qq
ts' tr
t, tr
r.l3
14,22
23,30
5 2 .7 6
77.79
1 4 ,22
68.76
49,5 l
97,105
69,86
7,13
37.48
80,g6
t, IJ
59,67
40.4 8
8 7 ,96
62,69
1,6
36
23,26
77,82
52,54
1 0 6 I, 1 5
8 7, 9 0
31,39
27,36
8 3 ,9 1
-') 58
9r.93
14,22
49,5 1
52,56
Makespan= I 15
(Remarquel e makespanobtenuavecI'HeuristiqueI estI 80)
TableIII.15 : ordonnancement
de I'exemple
4 parI'Heuristique
2
ll5
Qs
ls, tr
59,61
Unitaires
des Systèmesà Ressources
Ordonnancement
Opérations
Travaux
Qr
RrRzRs.4
R r R r ,1 0
Jr
J2
R4,6
&,8
RrRrRs.
3
Rt,6
J3
Oir
Oir
Jq
R+RsRi,7
R 1 R 5l,0
J5
R 1 R 5 R 73,
RqRrRs,4
Jo
R4,6
Jt
RqR+Rs,9
Jg
RzRa.I
Rz,4
je
RrRr.9
RrR-0,9
Jro
R:RqRr.8
Rs,3
R r ,8
RzRs,7
R"aRrRs,9
Rr Rr ,8
Rz,4
Qq
Qs
RoRr ,4
R:Rs.5
R4, I
R6,'2
Rr,3
Rl,9
RrRs,7
RzRc,4
Rs,2
R6,9
RrR-aRs,2 RrRlRq,T
Rz,6
Rs,1
R6,9
Rr Rr 9
,
RrRr,9
RzR:Rr.4
TableIIl.l6 : Travauxde I'exemple
5
Ressource
Charge
R1
R2
R3
&
Rs
&
Rr
Rg
80
28
55
63
24
59
72
70
TableIIL l7 : Les chargesdesressources
de I'exemple5
Opérations
Travaux
ts, tf
JI
8 3 .8 8
J:
t. t7
J3
1 0 9 I. l 4
Ja
22.28
Js
5 6 ,5 8
29,47
J6
Jt
l,l
Oi,
Oir
Qc
Ois
ts' tr
ts' tf
t, ti
tt, tr
8 9 ,1 0 0
18,25
1 1 51
. 17
2 9.3 8
59,62
42,46
2,l0
7 8,80
5 6,64
l0l, 108
26.32
118,126
39,4 6
63,t )
4 7 ,48
ll. I7
3 3 .3 6
74,74
78,21
8 3 ,9 l
67,73
104,104
22,3 0
8 1 ,8 2
92,r00
47 5\
Jq
65,66
74,82
Jro
8 1 ,8 8
89,9-,
9 8 ,1 0 3
105,108
=
Makespan 726
(Remarque
: le makespan
obtenuavecI'Heuristique
I estégala2l4)
Js
74,77
TableIII.I 8 : Ordonnancement
de I'exemple
5 parI'Heuristique
2
ll6
l
Ordonnancement
desSystèmes
à Ressources
Unitaires
Opérations
Travaux
ojz
Qr
J1
RrRzRa.4
J2
R 1 R 7 ,l 0
Jl
Rr,6
Qr
&,6
&,8
Qr
Ois
Rt,8
RrRlRr,3
RzR+,7
R<RuRs,
9
Rr Rz,4
Rl&,5
Jq
&RsRz,7
R 1 R 51, 0
&Rr,8
J5
R 1 R 5 R 73,
RqRzRr,4
Rz,4
J6
R4,6
R{,3
R6,2
Jt
RzRs,I
R4R6R.8,9
Rr&,7
RzRq,4
R6,9
Jg
Rz, 4
Rr, 3
Rs,2
R6,9
Je
R 1 R 7 ,9
RlRr,9
RrRc,9
RrRr,9
R1RaR5,2
R4, 1
RrRlRq.T
TableIII.19 : Travauxde I'exemple6
Ressource
Charge
Rr
R2
R3
&
R5
R6
Rr
Rs
80
24
34
55
24
59
54
69
TableIII.20 : Les chargesdesressources
de I'exemple6
Opérations
Travaux
t,
I"
.13
Je
Js
Jo
Jt
Js
Jç
Qr
Oir
tr, tf
Q:
tt, tf
ts, tr
8 4 ,8
a1
' , ' 46
66.71
4 7 ,5 3
1 0 ,12
29.3 4
8 8 .9 3
62,74
1.9
8 8 .9 3
47,54
-ta
94,1 0 1
55,61
75.83
66,73
17,27
aA
tz- t+
54,65
1 3 ,l 6
?s 5/
Qc
1o' rf
62.65
5
t' tr
66.7tt
29,29
3 8 ,3 9
94,102
103,109
I 1 0 ,I l 3
75,77
7 8 ,102
1 0 3 I, I
1 0 ,l 8
19,20
21,27
Makespan=T
(Remarque
: le makespan
obtenuavecI'Heuristique
I est195)
Tablerrl.21: ordonnancement
deI'exemple
6 parl'Heuristique
2
117
114,122
I 1 2 .l l t t
28.3r..
à Ressources
Unitaires
desSystèmes
Ordonnancement
lll.7 Conclusion
Dans ce chapitre, nous nous sonrmeslimités aux Systèmesà RessourcesUnitaires.
c'est-à-direaux job-shops MRB dans lesquelsles ressourcessont toutes differentes.Nous
avons formulé le problème d'ordonnancementet nous avons montré que, pour les systèmes
simples, les contraintesde précédenceet de capacitédes ressourcesimpliquent I'absencede
blocage. Les RdP ont été utilisés pour modéliser les SRU et I'ordonnancement,ce qui a
permis la vérification de blocage pour un état donné et la vérification de la faisabilité d'un
ordonnancementdonné. Dans la suite, nous avons proposé deux méthodes heuristiques
gloutonnespour ordonnancerun SRU afin de minimiser des critèresréguliers,tout en évitant
les blocages.En constatantque ces méthodessont plus efficacespour les systèmessimples.
car la vérification de blocage n'est pas nécessaire,nous avons proposé une autre méthode
d'ordonnancement
d'un SRU généralen passantpar un systèmesimple "équivalent".Les
résultatsnumériquessontencourageants.
Ce chapitrea égalementconduità dessujetsde recherchefutures: la prise en compte
desgammesnon-linéairesde production(opérationsd'assemblage
i désassemblage)
et Ia prise
en comptede la flexibilité desressources
et desgammes.
ll8
Chapitre
fV
Ordonnancement des
Systèmes à Ressources
Multiples
Ordonnancement
à Ressources
desSystèmes
Multiples
IV.1 Introduction
Nous abordons,dans ce chapitre,I'ordonnancement
des job-shopsMRB généraux,
c'est-à-diredes Systèmesà RessourcesMultiples avec opérationsMRMU (Multi-Resource
Multi-Units) Un cas intermédiaire entre les job-shops MRB générauxet les Systèmesà
RessourcesUnitaires étudiésdans le chapitreprécédentconcemeles Systèmesà Ressources
Multiples avec des opérationsSU (Single Unit) qui nécessitent,au plus, une unité de chaque
type de ressourceà la fois. Ceux-ci comprennentcomme cas particulier les flow-shops
hybrideset les job-shopshybridesqui sont des flow-shopsou desjob-shopsavec machines
identiques.Ils incluentégalementcommecasparticulierslesjob-shopsavecAGV, commeles
moyensde transport.systèmesque nous considérons
plus en détail dans le chapitreV. Les
opérationsMU (Mulri-Units). qui peuventavoir besoin de plusieursunités du même type de
ressource.permettenlla prise en compte des contraintesde stockagedans le cas des produits
de différentestailles.desproduitsnécessitant
plusieursoutils du mêmetype, etc. On peut dire
que les opérationsMRMU augmentent.
de manièresignificative.la puissancede modélisation
job-shops
et la généralité
des
MRB.
Malheureusement.
le gain en généralitéest accompagné
d'unepefte en solvabilitédu
problèmed'ordonnancement.
Commenous allonsle montrerdansce chapitre.la vérificarion
de blocagedevientbeaucoupplus difficile. Ceci peut être considérécomme une parallèlede
I'extrêmedifficulté de la vérificationde blocaged'un RdP généralisé
avecpoids par rapporrà
la relative simplicité d'un RdP ordinairede poids unitaire.C'est pour cette raison que les
s)'stèmes
simples.pour lesquelsnousmontreronsà nouveauque les contraintesde précédence
et de capacitédes ressourcesimpliquentI'absencede blocageet jouent un rôle encoreplus
importantque dans le cas d'un SRU. Une autre nouveauté,par rapport aux SRU, est le
problèmed'affectationdes ressources
aux travauxà causedesressources
identiques.On peut
alors dire que l'ordonnancement
d'un job-shop MRB généralest bien plus compliqué que
I'ordonnancement
d'un SRU.
Ce chapitre est organiséde la manière suivante.Le paragrapheIV.2 rappelle la
formulationdu problèmed'ordonnancement
d'un job-shop MRB général.Mais le résultatle
plus important concerne les systèmessimples pour lesquelsnous montrerons que les
contraintesde précédenceet de capacitédes ressowcesimpliquentI'absencede blocage.Le
paragrapheIV.3 abordela représentation
d'un job-shop MRB à I'aide des RdP généralisés
avec poids. Nous montreronsla difficulté de la vérificationde blocage.Nous aborderons
égalementla faisabilitéd'un ordonnancement
lorsque les séquencesd'entréedans chaque
ressourcesont données.Le paragrapheIV.4 proposedeux heuristiquessimilairesà celles
proposéesdans le chapitre III pour les SRU. La méthode conservatrice,Heuristique l,
s'appliqueà tout job-shop MRB. La méthodela plus élaborée,Heuristique2, est d'abord
développéepour les s1'stèmessimples et ensuiteétendueaux job-shops MRB généraux
coITImenous I'avons fait dans le chapitre IIL Le paragrapheIV.5 présenteles résultats
numériques
el le paragraphe
IV.6 estune conclusion.
ll9
desSystèmes
à Ressources
Multiples
Ordonnancement
lV.2 Reformulationdu problèmed'ordonnancement
-
Nous rappelonsd'abord la définition d'un job-shop MRB et son ordonnancement.Un
job-shopMRB est composéde m typesde ressources
R = {1,2,..., r, ...,D}. Il y a H, unités
de ressources
du ry'-per. Un ensemblede travauxJ : {Jr, Jz, ..., Ji, ..., Jn} doit être réalisé.
Chaque travail J.; nécessite\ opérations{Qr, Oi2, ..., Qr, ..., Q".i} Chaque opération
nécessiteun temps opératoirep.ii et la présencesimultanéed'un ensemblede ressources; ce
besoin est représentépar un vecteur h.1.dont chaque élément h;r* indique le nombre de
ressourcesr nécessaires.Nous notons également \r I'ensembledes types de ressources
nécessairespour I'opération (,k). La propriété "Retenir et Attendre" définit la condition de
passaged'uneopérationà I'opérationsuivante.
Le problème d'ordonnancement
consisteà choisir, pour chaquetype de ressourcer e
R, une séquencez, d'entréedes opérationsnécessitant
les ressources
r et la datede début S1i
pour chaqueopération(,k) afin de minimiserla duréetotalede I'ordonnancement
et éviterles
blocages.
Plusprécisément.
le problèmeest :
Min MAX {C,},
J
sousles contraintessuivantes:
I
C . ;: S . ; N .+; p j r , r j , V l S j < n
(4.1)
( S i r*rVl
+ P rr,
S .;r
, <j ( n, Vl s k s\
(4.2)
(j,k)
h .;r.',
l {S .1<t
r < Sir .*rsH,,
}
Vt, V r e
(4.3)
S n , u sl s n , [ i * t ] ' V r e R ,v i
(4.4)
Les séquences
d'entréen, ne conduisentpasau blocage
(4s)
où (4.1)définissent
la datede fin destravaux,(4.2)sontlescontraintes
(4.3)
de précédence,
les contraintes
(4.4)assurent
de capacitédesressources,
la cohérence
entreles datesde début
et lesséquences
d'entrée
desressources
et (4.5)estla contrainte
deI'absence
deblocage.
Nous savonsmaintenantque. pour un job-shopMRB général,les contraintesde
précédence
(4.2) et de capacitédesressources
(4.3)n'impliquent
pas I'absence
de blocage.
Commedansle casdesSRU.nousmontronsqu'il existeuneexception
importante
pour les
systèmes
simples.
120
Ordonnancement
desSystèmes
à Ressources
Multiples
Dans un job-shop MRB général.une opération(,k) est dite G-opérationsi h.;.i-rS h;i
et elle est dite R-opérationsi h.;r) hi.l*r,Un job-shopMRB est dit systèmecanoniquesi pour
chaqueopération(.k), I'opération(, k-1) est une R-opérationsi I'opération(.k) n'estpas une
G-opération.Il est dit systèmesimple s'il est un systèmecanoniqueet si tous les temps
opératoiressont positifs, c'est-à-direp.;r> 0. La caractéristique
d'un systèmecanoniqueest
que,lors du passagede deux opérationsconsécutives,
soit le travaillibèredes ressources,
soit
il nécessite
de nouvellesressources
mais iamaisles deuxà la fois.
Théorème4.1 : Pour un svstèmesimple,un ordonnancement
les contraintes
{Sil} satisfaisant
de précédence
(4.2) et les contraintesde capacitéde ressources
(4.3)est sansblocageet donc
admissible.Les séquencesd'entrée rr, qui respectentles dates de début et qui, pour les
opérations(.k) avec la même date de début, donnentpriorité aux opérationsdont (,k-l) est
une R-opération.sont sansblocage.
Preuvepar contradiction:
En prenanten compteles caractéristiques
desjob-shopsMRB généraux,la preuveest
similaireà celle du théorème3.1, Supposonsqu'il existeun instantt tel que toute opération
(l-k) / S.;r< t peut commencerà la date S.;rtout en respectantla propriété"Retenir et Attendre"
et qu'il existeune opération(i.l) / Sir= t qui ne peut pas démarrerà I'instantt sansvioler la
propriété"Reteniret Attendre" Deux cassontpossibles:
o
cas (i) : l'opération
(i,l-l) estune R-opération,
c'est-à-dir€
hi.r-r> h1l.puisque
les capacitésde ressourcessont respectées,
alors les ressourceshi.l-1sont
encoreretenuespar Ie travail i à I'instantt-. Selonla propriété"Reteniret
Attendre".les ressources
h1.s-1
ne po ons pasêtrelibéréesavantle débutde
I'opération(i.l). Puisquehi.r-r) h1, les ressources
nécessaires
pour I'opération
(i.l) sont disponiblesà I'instantt et I'opération(i.l) peurcommencerà la date
S11.
ce qui contreditI'hypothèse
de la preuve.
o
cas (ii) : I'opération(i,l) esr une G-opération.c'est-à-dire
hi,r-r< hil. puisque
(i,l) ne peut pas colrunencerà I'instantt et que les contraintesde capacitéde
ressources
sont vérifiées,il existeune ressourcer € R11
et une opération(,k)
= t; au moins une unité de la ressourcer
avecj * i. telle que r € &r et S1.k*r
doit passerdu travailj au travail i au débutde la pénodet mais I'opération(.
k+l) ne peutpascommencerà I'instantt non plus (voir figure IV.l).
t21
desSystèmes
Multiples
à Ressources
Ordonnancement
(i,l)
FigureIV.l :Une situationde blocage
Compte tenu de la propriété d'un systèmesimple, I'opération (.k) est
une R-opération.c'est-à-direh.;pS hi.r*r. Selon le résultatdu cas (i).
I'opération(i,k+l) peut commencerà la date t et les ressourcesr
nécessairesà I'opération(i,l) peuvenrêtre libérées au début de la
périodet. cela prouve:par I'absurde,
que toutesles nouvellesressources
nécessaires
pour I'opération(i,l) sont libres ou peuventêtre libéréesau
début de la périodet. Alors. I'opération(i,l) peut commencercomme
prér'u à I'instantt. cela contredit I'hypothèsede la preuve et conclut la
preuve.
QED
De cettepreuve,nous constatonsque d'autresséquences7rrsansblocagepeuventêtre
obtenuesen respectantsimplementles datesde début S.iiet la propriété"Reteniret Attendre".
Nous remarquons que chaque tvpe de ressourcepeut avoir plusieurs unités de
ressourcesidentiques.Se pose naturellementla questiond'affectationde ces ressources
identiquesaux opérations.
Plusprécisément.
soit Rrl'ensemble
desressources
du q.'per et R I'ensembledes
ressources,
c'est-à-dire
R = U,.* R,, Nousparlerons
de la ressource
(r,i) pour désignerla
iè" ressource
du typer. Parconséquent,
R1={(r,i)/(r,i)e R}.
Le problème d'affectationconsisteà déterminer,pour chaque opération (,k) et pour
chaquetype de ressourcer e \r, un ensemblede ressources
du type r, où R 1" c R., tel que
lF,u l= hlxret que seuleslesressourc.,Ri*, soientutilisées
pourI'opération
fi,k).
Une affectationpermetde transformer
un S1,stème
à Ressources
Multiplesen un
51'stème
à Ressources
Unitaires.Une affectation
étantdonnée.les ressources
peuventalors
t22
desSystèmes
Ordonnancement
à Ressources
Multiples
êtreconsidérées
commetoutesdifférentes.
Dansce cas,nouspouvonsdéfinir un Systèmeà
Ressources
Unitairescomposédes ressources
dans Rr dont I'opération
(,k) nécessite
les
ressources
dansl-f,.*,,. R 1xr.
Théorème 4.2 : Pour tout ordonnancement
{Sti} respectantles contraintesde capacitédes
ressources.
tel que S1x< Si.r*r,V(l,k), il existeune affectation{R1ir} respectant
la capacitéde
chaqueressourcer; € R . De plus, il existeune affectation{ R;r,} conduisantà un Systèmeà
Ressources
UnitairesSimplesi le job-shopMRB est un systèmesimple.
Preuve :
Nous démontronsd'abordla premièrepartie du théorèmepar construction.Pour cela.
nous déterminonsI'affectation des ressourcesaux opérationsde manière progressivedans
I'ordre chronologique.Plus précisément.nous utilisons I'algorithmesuivant pour calculer
I'affectation:
Algorithme 4.1 (Affectationdesressources)
L Initialisation: t = I et touteslesressources
sontlibres,
2. Libérationdesressources
desopérationsterminantà la fin de la périodet-1 :
Pour chaquetravail J, / 3 une opération(.k) avec S;.k*r= t, libérer les ressources
actuellementaffectéesà J1 qui ne sont pas nécessaires
pour la nourelle
opération0. k+1). c'est-à-dire
libérerh;x,- h.,.x*r.,
unitésde ressourcede R ip
pour tout type de ressource
r tel que h;x,> h1.l*r.,.
3. Obtentionde nouvellesressources
pour les opérationscommençantau débutde t :
Pour chaquetravailJ, / 3 une opérationfi,k) avecS1.t*r= t, affecterà J1hi.i*r.,_ h1x,
nouvellesunitésde ressowcespour tout type de ressourcer tel que h,*, <
h i . k *t . r .
4. t=t*
I etalleràl'étape2.
Dans cet algorithme.au débutde chaquenouvellepériodet et aprèsl'étape2, chaque
travail JJ garde seulementles ressourcesdéjà affectéesà J, et encore nécessairesdans
la
périodet. Il restealors suffisammentde ressources
libres pow l'étape3 car, sinon, la so
e
des ressourcesde chaque type r déjà affectéesaux travaux et encore nécessairesdans
la
périodet- plus les nouvellesressources
r nécessaires
pour les opérationsdémarrantau début
de t dépasse
H,. ce qui impliqueque la contraintede capacitéde ressources
r estviolée dansla
l a l
Multiples
desSystèmes
à Ressources
Ordonnancement
période t par I'ordonnancement{S1}. Cela contredit I'hypothèsedu théorèmeet montre par
I'absurdeque I'algorithme 4.1 construit une affectation respectantla capacité de chaque
ressourcereR.
directede I'algorithme4.I .
La deuxièmepartie du théorèmeest une conséquence
O.E.D
Théorème 4.3 : Considéronsun systèmesimple. Pour tout ordonnancement{Sii} satisfaisant
les contraintesde capacitédes ressourceset de précédence,il existe une affectation { R tr.'}
telle que {Srr} et { R1x,}définissentun ordonnancement
sansblocage.
Preuve :
Triviale au \ru desthéorèmes 4.2 et 3. L
QED
Pour conclure ce paragraphe.coûune dans le cas des SRU, I'ordonnancement
d'un
s)'stèmesimplese réduità déterminerles datesde débutdesopérationsS.;xafin de :
Min MAX {C;},
J
s o u sl e sc o n t r a i n t e(s4 . 1 ) .( 4 . 2 )e t ( 4 . 3 )
IV.3 Représentation
à I'aide de RdP et vérificationde
blocage
Nous abordons dans ce paragraphe(i) la représentationpar des RdP des job-shops
MRB généraux.(ii) la détection de blocage pour un état du système donné, (iii) la
représentationdes ordonnancements,
(iv) la vérification de faisabilitédes ordonnancements
er
(v) la construction d'un ordonnancementoptimal connaissant(a) la séquenced'entrée de
chaquetype de ressourceou (b) I'affectation des ressourcesaux opérationset la séquence
d'entréedanschaqueressource,
IV.3.1Modélisation
desjob-shops
MRB à I'aidedesRdP
Dansce paragraphe,
nousproposonsune méthodesystématique
pour la modélisation
desjob-shopsMRB. Contrairement
à la modélisation
desSRU,nousutilisonsici desRdP
généralisés
avecpoids.La méthodesedécompose
endeuxétapes.
124
desSystèmes
Ordonnancement
à Ressources
Multiples
La premièreétapeest la représentation
du processusde fabricationde chaquetravail I.
Le modèleRdP, est identiqueà celui d'un SRU, est un chemin élémentaire(voir la figure
fV.2). Il contient\+2 placesdont une place de sourceet une place de puits représentent
respectivementle début et la fin du travail J.;et les autresplacesreprésententles opérations.
Des tempssont associésaux placescorrespondantaux temps opératoires.Les franchissements
destransitionssont instantanés.
Les placessontégalementappelées
desplaces-opérations.
Ojo
tjo
Ojr !r
Ojz t;z
FigureIY .2 : Le modèleRdP d'untravailde deux opérations
La deuxièmeétape complètele modèle RdP en prenanten compte les ressources
nécessaires
pour chaqueopération.Elle représentechaqueressourcer e R par une place r
ar ec initialementH, jetons correspondant
à la disponibilitéde la ressource.Ces nouvelles
placessontappelées
placesde ressources.
Un arc relie une place de ressourcer à une transition t1l si de nouvellesressources
r
sonl nécessaires
pour I'opération(i, k+1). c'est-à-direh.,x,< h1.l*r.,.
Nous associons
un poids
- hlx,)à cet arc.
(h1.r-r.,
Un arc relie une transitiontlr à une place de ressourcer si la fin de I'opération k)
[.
libèredesressources
r. c'est-à-direh.,r,> h.,.r-*r.,.
- h;.r,r.,).La
Le poids associéà cet arc est (h.;r.,
propriété"Reteniret Attendre"est respectéecar les ressources
nécessaires
à I'opération(.k)
ne peuventêtre libéréesqu'au franchissement
de la transitioD tik, c'est-à-direau début de
I ' o p é r a t i o(n1 .k - 1 )
La figure I\/.3 est le modèleRdP final d'unjob-shopMRB composéde deux travaux
=
Jr {(rr rz,5), (2r1r2,4)} et Jz = {(rr,3), (rz,a)} où le travailJl a besoind'unepart,d'une
ressource11,d'uneressource12et d'un tempsopératoirede 5 unitéspour sa premièreopération
et, d'autrepart, d'une autre unité de ressource11et de 4 unités de temps pour sa deuxième
opération.
t2s
Ordonnancement
desSystèmes
à Ressources
Multiples
FigureIV.3 : Le modèleRdP d'unjob-shopMRB
IV.3.3 La vérification de blocage pour un état donné
Commedansles SRU.lesjob-shopsMRB généraux
sontsujetsau blocageer norre
objectifest de trouverI'ordonnancement
optimalsansblocage.Comptetenude la naturedes
méthodes
d'ordonnancement
proposées
danscettethèse,nousavonsbesoinenparticulierdela
détectionde blocagedansun ordonnancement
respectant
les contraintes
de précédence
et de
capacitédesressources
et. surtout.de la vérificationde blocagepour un étatdonné.L'objectif
est de nousassurerde I'absence
de travauxne pouvantpasavancerà causede la propriété
"Reteniret Attendre".
En tenantcomptedu modèleRdP. I'ordonnancement
respectantles contraintesde
précédence
et de capacitéde ressources
se traduit par les datesde franchissement
des
transitions
S,.Vt e T où T estI'ensemble
destransitions.
Le problèmede la vérifrcation
de
blocageconsisteà déterminer.
pour tout instantr/S, : T. pour au moinsune t e T, une
126
Ordonnancement
à Ressources
Multiples
des Systèmes
séquencede franchissementdes transitionst y que Sr = r. Si une telle séquencen'existepas.
nousdisonsque I'ordonnancement
{S,} estavecblocageà I'instantt.
Contrairementau cas des SRU avec temps opératoirespositifs, il n'est pas possible
d'utiliser la notion de siphonpour la vérification de blocage.La raisonprincipalevient du fait
que les transitionsà franchir au même moment ne sont pas en conflit dans le cas d'un SRU
avec pjk > 0. alors qu'elles le sont dans un job-shop MRB général. Par exemple, pour le
systèmede la figure IV.3, I'ordonnancement
{ Str = 0, Srz = 5, Stl = 9, Stn = 0, 31, = 5,
Stu
9) respecteles contraintesde précédence
et de capacitédes ressources
et, à la datet --
0, les transitionsà franchir tr et t< sont en conflit structurel.
De plus, dans le cas d'un SRU. I'ordre de franchissement
des transitionsn'est pas
importantà condition de respecterles règlesde franchissement.
Ceci est malheureusement
faux dansle casd'unjob-shopMRB général.Un exempleestdonnédansla figure IV.4 où les
transitions11.13.t3 sont à franchir au même moment.Dans cet exemple.franchir t1 d'abord
conduitau blocageet franchirt3 d'abordpennetd'éviterle blocage.
FigureIV.4 : Un étatd'unjob-shopMRB
12'7
desSy'stèmes
à Ressources
Ordonnancement
Multiples
Pour toutes ces raisons>nous proposonsune méthode de vérification exhaustiveen
considéranttoutes les permutationspossiblesdes transitionsà franchir au même moment.
Cette méthodeest. bien entendu,conibinatoirealors que la méthodefondéesur la notion de
siphonest de complexitélinéaire.Aussi,pour cetteraison,nous déconseillons
I'utilisationde
cette méthode si le nombre de transitionsà franchir au même moment peut être important.
Dans ce cas. les méthodes fondées sur les systèmessimples sont alors particulièrement
atlrayantes.
Théorème 4.4:Etant donnéun ordonnancement
les contraintesde
{S,, Vt € T } satisfaisant
précédence
et de capacitédesressources,
le systèmeest sansblocageà I'instantr où lt e T/ Sr
: 1 si, et seulementsi, il existeune séquence
franchissable
dansle RdP 0{, M.- ) comprenant
toutesles transitionsà franchir à I'instantr, où Mr- est le marquagedu RdP à la fin de la
périoder- I .
La preuveesttriviale et donc omise.
I V . 3 . 4F a i s a b i l i t éd ' u n o r d o n n a n c e m e nd to n n é
Nous étudions dans ce paragraphe. la vérification de la faisabilité d'un
ordonnancementdonné pour les job-shops MRB généraux. Nous considéronsdeux
représentations
d'un ordonnancement
: (i) la séquenced'entréedanschaquetype de ressource
est connue.(ii) I'affectationdesressources
aux opérations{ R.irrr}et la séquenced'entréedans
chaqueressourcesontconnues.
IV.3.4.1Cas où la séquenced'entréedans chaquefype de ressourceest connue
Nous supposonsici que les séquences7rr d'entréedans les différents types de
ressources
sont données.Rappelonsque,dansle casd'un SRU, chaqueressourcer est utilisée
par toutes les opérations (l,k) avec r €
&r et que nous avons pu représenter un
ordonnancementà I'aided'un RdP sansconflit structurel,c'est-à-direun graphed'événements.
Ici, chaquetype de ressourcecomporteplusieursunités et nous ne connaissonspas, a priori.
I'affectationdesressources
aux opérations,C'estpour cetteraisonque le modèleRdP avecles
séquences
d'entrée,proposéci-dessous,
possèdedesconflitsstructurels.
128
Ordonnancement
desSystèmes
à Ressources
Multiples
La prise en compte des séquencesd'entréedans le modèle RdP peut être décrite
commesuit :soit n, = O(r,1),O(r.2), ..., O(r,N(r))la séquence
d'entréedansles ressources
du
type r où N(r) est le nombre d'opérationsnécessitantles ressources
r, le nouveauRdP est
obtenuen ajoutantpour chaqueséquencen,, N(r) - I placesp(r,l), p(r,2),..., p(r,N(r)) (voir
figure IV.5). Chaqueplacep(r,k) relie la transitiond'entréede la place O(k,r) et la transition
d'entréede la placeO(r, k+l). Cesnouvellesplacessont initialementvides et ellesne sontpas
temporisées.
FigureI\/.-5: Modélisationdesséquences
d'entréedanschaquetype de ressource
La figureIV.6 est le nouveaumodèledu job-shopMRB de la figureIV.3, avecles
s é q u e n c fi
esr, = O'r O:r Orz,t T trz:Or r O:2.
129
desSystèmes
à Ressources
Multiples
Ordonnancement
FigureIV.6 : Un modèleRdP completavecles séquences
d'entrée
La vérification de blocageest grandementsimplifiéepar le résultatsuivant :
Théorème4.5 : Dans un modèleRdP avecles séquences
d'entréedanstous les types de
ressources.
s'il existeune séquence
de transitionsfranchissable
conduisant
à un blocage,alors
le système
estavecblocagequellequesoitla stratégie
defranchissement.
Ce résultatnouspelrnetd'examinerune seuleséquence
de transitionsquelconque.
La
vérification
deblocageestdonclinéaireennombredetransitions.
r30
Ordonnancement
desSystèmes
à Ressources
Multiples
La preuve de ce résultat est fondée sur le caractèresansconJlit effectif du nouveau
RdP. Notonsque chaquetransitionest franchieau plus une fois. Chaqueséquenced'entréen,
impliquequ'auplus une transitionfranchissable
nécessitelesjetonsde la place de ressourcer
(r'oir la figure IV.5). Cettetransitionest la transitiond'entréede la placeO(r,l), ensuitecelle
de O(r.2).etc.Nous notonsque, si le RdP considéréest un RdP ordinaire,les résultatsde ce
paragraphesont des conséquences
directesde Landweberet Robertson(78) pour les Rdp
perslstants.
La preuvenécessitele résultatsuivant:
Lemme 4.1 : Dans un RdP avec les séquencesd'entréeconnuesdans tous les types de
.ressources.
soit a et B deux séquencesde transitionsfranchissables.
Alors il existe une
séquencey. composéedes transitionsfigurant dansp mais ne figurantpas dans cr, telle que la
séquence
G,vest franchissable.
Preuvedu lemme4.1 :
Soit q. = àt à2... au et I = b, bz ...b,,. Soit b1 la premièretransitiondans mais
B
figurantpas danscx.c'est-à-dire
que les transitionsb1 b2... bx.rfigurentdansa. Il suffit de
monûerqueq bç est franchissable.
Pourcela.nousavonsbesoindesnotationssuivantes:
desk premières
Fi = bt bz ... br : la séquence
transitions
de p
a
M[ : le marquageobtenupar la séquencep;
M" : le marqrngeobtenupar la séquence
a
Nous savonsque la transitionb; est franchissable
à partir de Mf _, et il faut montrer
que b; estfranchissable
à partir de M".
lJl
à Ressources
Multiples
desSystèmes
Ordonnancement
FigureIY .7 : Les placesd'entréed'unetransition
Les placesd'entréede la transitionbx sont illustréespar la figure IV.7. Elles incluent
une place-opération
d'entréen, telle que r € Rj r,r et les
Qr, une placep, pour chaqueséquence
placesde ressourcesr telles que hir, < h1.r*r.r.
Dans la suite, nous montronsque M"(p) >
Ml-,$).
pour toute place p e'b1. Puisquebs est franchissable
dans Mfl-,. elle est
franchissable
dansMo. ce qui conclutIa preuve.
Puisquebr est franchissable
dans Mfl-,, Mf-,(Q,) = 1, ce qui impliqueque les
transitionsprécédant
bi du travailJi figurentdansBt-r,alorsellesfigurentégalement
danscr.
=
Parconséquent,
M"(Q') 1.
précédant
De manièresimilaire,Mfl-,(p,): 1, les transitions
bx dansles séquences
d'entrée
r, figurentdanspi-1et doncdansa. D'où,M"(p,)= l.
Pourchaqueplacederessource
r, tellequehi.r*r.,
) h1r,,
la placer estuneplaced'entrée
de bx.Poursestransitions
x de sortie,c'est-à-dire
x € r', puisquex appartient
à la séquence
y d'entrée,
d'entrée
nr.alorsx € Fr-rsi, et seulement
si,x € o. Poursestransitions
c'est-à-dire
'r,
selonla définitionde br, y e Fx-rimpliquey € cr et la réciproque
est fausse.Pour
) €
132
Ordonnancement
à Ressources
desSystèmes
Multiples
résumer,les transitions consonunatricesde jetons de r figurant dans B sont celles figurant
dansa et les transitionsgénératricesde jetons de r figurant dansB figurent danscr. D'où M"(r)
> v[_,(r).
R
QED
Preuve du théorème4.5 par contradiction :
Supposonsqu'il y aient deux séquencescr et B, telles que cr conduit au blocage et B
évite tous les blocageset franchit toutesles transitions.Selon le lemme 4.1, nous pouvons
poursuivrela séquencecx,pour franchir les transitionsne figurant pas dans cr. Ceci contredit
I'hypothèseque la séquenceo conduit au blocage.Le théorèmeest donc prouvépar I'absurde.
o.E.D.
En fait, nousavonsun résultatplus fort :
Corollaire 4.1 : Dans un modèle RdP avec les séquences
d'entréedans tous les types de
ressources,si une transitiont ne peut être franchiepar une stratégiede franchissementdonnée,
alorselle ne peut être franchiedu tout.
Le théorème4.5 permetune vérification aiséede blocagesi on connaît les séquences
d'entréedans les ressources.Se pose alors naturellementla question de I'ordonnancement
optimale.Intuitivement,puisquele RdP avec les séquencesd'entréeest sansconflit effectif,
la stratégiede franchissementau plus tôt permetde franchirtoutesles transitionsau plus tôt et
de minimiser la duréetotale. ceci est confirmépar le résultatsuivant:
Théorème 4.6 : Etant donnéles séquences
î, d'entréedanstous les types de ressources,
la
stratégiede franchissementau plus tôt appliquéeau RdP avec les séquencesd'entréedonne
I'ordonnancementoptimal { S; }, c'est-à-dire Si . S,, Vt € T, pour tout ordonnancement
admissible{51} respectant
les séquences
n,.
Preuve:
Dans le RdP avec les séquencesd'entrée, seules les places de ressource r sont
concernéespar les conflits structurels.Pour chaqueplace de ressourcer, la séquenced'entrée
n' = O(r.1), O(r,2), ..., O(r,N(r)) implique que les jetons anivant dansla place r sont utilisés
d'abordpour la transitiond'entréede la place O(r,l ), ensuitepour celle de O(r,2), puis pour
celle de O(r,3), etc. Il n'y a pas de conflit effectif. De plus, nous connaissonsla transition qui
utilise le n"' jeton de la placeou qui arrive dansla place r. Ce type de RdP est dit Rdp avec
su,itch.SelonBaccelliet al. (92),les datesde franchissement
51sontdes fonctionsmonotones
croissantesdes temps associésaux places. Puisqu'il n'y a pas de conflit effectif, retarder
volontairementle franchissementd'une transition t équivaut I'augmentationdes temps (de
r33
Multiples
à Ressources
desSystèmes
Ordonnancement
séjour) associésaux jetons dans les places d'entréede t et donc, I'augmentationdes St. La
stratégiede franchissementau plus tôt est optimale.
Q E.D.
[V.3.4.2 Cas où I'affectation des ressourcesaux opérationset la séquenced'entrée
dans chaque ressourcesont données
Dans ce paragraphe,nous distinguonsles différentesunités de ressourcesdu même
type. Nous supposonsque I'affectationdes ressourcesaux opérations{ R j1.,}est donnée,c'està-dire que nous connaissonsles ressourcesà utiliser pour chaqueopération.Nous obtenonsun
Systèmeà RessourcesUnitaires. Nous pouvons alors modéliserles séquencesd'entréedans
III.3.4.l.
les ressources
en suivantles méthodesdu paragraphe
Plus précisément,nous prenons en compte I'affectationet les séquencesd'entréeen
pæ H, places
deux étapes.La premièreétapeconsisteà représenterchaquetype de ressourÇe
de ressources.chacunecorrespondantà une unité. Ces placesde ressourcessont reliées aux
transitionsen tenant compte de I'affectationet en suivantI'approchedu paragrapheIII.3 pour
la modélisationdes SRU. La figure IV.8 est le modèleRdP modifié du job-shopMRB de la
f i g u r eI V . 3 a v e cI ' a f f e c t a t i oR
nl l r r : { ( r r , l ) } , :
R t 2 r r { ( r r , 1 ) ,( r 1 , 2 ) } ,R 2 l r , : { ( h , 2 ) } .
La deuxième étape utilise la méthode du paragrapheIIL3.3.I pour compléter le
modèle.en prenanten compteles séquences
d'entréedansles ressources.
La figure IV.9 est le
modèle frnal de I'exemple de la figure IV.8 avec les séquences fi(rr,t) : Orr O12,
T ( r t , 2 ): O 2 tO t z , f r r z
On Ozz.
134
desSystèmes
à Ressources
Ordonnancement
Multiples
FigureIV.8 : Transformarion
d'unjob-shopMRB enun SRU
Le théorème3.3 impliqueimmédiatement
le résultatsuivanrqui permetla vérification
de blocageet la déterminationde I'ordonnancement
au plus tôt.
Théorème 4.7 : Etant donnéesI'affectationdes ressources
et les séquences
d'entréedans les
ressources.le systèmeest sansblocagesi, et seulementsi, chaquecircuit élémentairedu Rdp
avec I'affectationet la séquenced'entréecontient au moins un jeton. Si le systèmeest sans
blocage.alors les dates de début au plus tôt de chaqueopérationest égale à la date de
franchissementde la transition correspondante.
Les datesde franchissement51peuvent être
déterminéespar la relation suivante:
Sr=
Max
t ' i M 6 ( t ' , t ) = 0 nt ' € " t
lJ)
{S,,+p(t'.t)}
desSystèmes
à Ressources
Multiples
Ordonnancement
où "t est I'ensembledes transitions reliées à t via une place, M6(t',t) et p(t',t) sont
respecti\lement
le marquageinitial et le tempsassociéà la placereliéet ' à t .
FigureI\/.9 : Le modèleRdP avecI'affectationet les séquences
d'entréedesressources
IV.4 Méthodesde résolution
Nous proposons. dans ce paragraphe,des méthodes de résolution permettant la
constructiondes ordonnancements
sans blocage pour les job-shops MRB généraux.Ces
méthodes peuventêtre considérées
comme des extensionsdes méthodesproposéesdans le
paragrapheIII.4 pour les Systèmesà RessourcesUnitaires.
Comme dans I'ordonnancement
des SRU, les méthodesheuristiquesproposéescidessoussont toutes des méthodes gloutonnes,aussi appeléesméthodesde liste. Elles
ordonnancent
les travauxles uns aprèsles autres.selonun ordredonné.Une fois ordonnancé.
I'ordonnancement
ne serapas modifié dansla suitede la
{Sii} des travauxdéjà ordonnancés
constructiond'un ordonnancement.
Nous utilisons égalementla méthodedu recuit simulé
pour optimiser I'ordre des travaux. Nous rappelonscette méthode dans la suite et nous
136
Multiples
desSystèmes
à Ressources
Ordonnancement
pouvonsremarquerque I'idée de baseest de vérifier tous les ordres possiblesdes travaux et de
choisir I'ordre avec Min C^or.Plusprécisément,
Algorithme 4.2 (Optimisation de I'ordre destravaux)
1. Choisir un ordre initial So(par exempleJb J2,...,Jn)et calculersa valeur de critère
f(Sg)à I'aide de I'HeuristiqueI ou de I'Heuristique2.
2. Choisir une températureinitiale Ts > 0 et faire T <- T6.
3. Générer, au hasard, un ordre voisin 31 (par permutation des deux travaux
quelconques)et calculer sa valeur de critère f(Sl) à I'aide de I'Heuristique1 ou de
I'Heuristique2.
4. Si f(Sr) < f(So),faire Ss<- Sr. Sinon,faire So<- Sr avecla probabilitéexp(-(f(S1)-
f(so))/ r).
5 . FaireT: T r
6 . Si T > T1 , où Tr est la températurefinale, aller à l'étape3. Sinon, arrêt.
IV.4.1 Une méthodeconservatrice
Nous présentons, dans ce paragraphe,llne extension de la méthode conservatrice
"Heuristique 1" proposée dans le paragraphe III.4.1.1 pour les SRU. Lors de
I'ordonnancementd'un travail J;, elle ordonnance ses opérations les unes après les autres,
suivant le processusde fabrication.
Pour I'ordonnancementd'une opération(,k), nous déterminonsles ressourcesaffectées
{Rp} à I'opération(i,k) et la date de début S3r..Pour cela, nous déterminons,pour chaque
unité (r,i) de tout type de ressourcer, la date ur,1à partir de laquellela ressource(r,i) devient
toujours libre. Nous ordonnonsles ressourcesdu type r selon leur date de disponibilité ur,i.
Soit (r, 11lir),(r, [2]r), ..., (r, [HJ:r.)la liste ordonnée,c'est-à-dire:
ur,[]jr s ur,[2]jr
t37
Multiples
à Ressources
desSystèmes
Ordonnancement
I1 devient clair qu'à partir de la date u1,11r.mlip,nous disposonssuffisamment de
ressourcesdu type r pour I'opération (,k). Par conséquent,I'opération (i,k) peut commencer
sansrisque de blocage à la date :
+ pj,"t,
S;r: Max{Si,r-r
}}
{ ut,Û,,*l;u
.yffi
(4.6)
La date de début S;r étant déterminée,nous procédons à I'affectation de ressources.
L'idée est d'aJfecterles ressourcesde chaque type r de manière à maximiser la disponibilité
des ressourcesnon utilisées. Pour cela, nous choisissonsles ressourcesr dont la date de
disponibilité est maximale à condition que ur,iS S;r.(voir la figure IV.10). Plus précisément,si
h;,r-r,,> h3n,nous libérons (h;,r-r,,- h.ir.')unités quelconquesdans Ri,r-r,, et obtenons R;n. Si
h;,r-r,,< h3n,
Rikr: Ri,r-r,,u {(r, ;i-- A;rfir),...,(r, [i-].;r)]
- I e ti 'e stte le u eur ,[i*11ç
o ù A i n : h l kr-h J,r-r,,
< S:t"t ur ,[i*+t1r>uSjr .
FigureIV.10 : Affectationdansla méthodeconservatrice
138
(4.7)
Ordonnancement
Multiples
desSystèmes
à Ressources
Nous pouvons alors actualiserles indicateursu1.;et la méthodepeut continuer de la
mêmemanière.Plus formellement.
Algorithme 4.3 (HeuristiqueI (ordonnancement
selonI'ordreJ1,J2....,Jn))
1. Initialisation
ur.i(- 0, Vr e R et V(r,i) € R ,
2. OrdonnancemenldansI'ordredestravauxet des opérations:
Pourj = I à n faire
Pourk:1à\faire
2.1.
Ordonnerles ressources
de chaquetype r tellesque :
ur,Il].ir*s ur,[2]jt
- p,*-,
2.2. S;x= Max{S1r-r
2.3.
ur,p,,*,1;*
}}
,YS* {
r€ K;p
Affectation:
PourreRfaire
Si h1.r.r.,2h1*, libérerh,.i-r.,- hix,unitésdes ressources
r
2.4.
pour obtenir R ix,, Sinon.calculerR 1r.,à I'aidede l'équation
(4.7)
Mise à jour desdaresde disponibilité:
- ur.i(- S,r.V(r,i) . R-i*-,.,et (r.i) É R1r,,
- ur.i<- S.1r
+ p;x.V(r,i) e R 1r,
3. Le makespan
Cn'"*e Sn.Nn * pn,Nn
L'application de I'Heuristique I au job-shop MRB de la figure IV.3 donne
I'ordonnancement
suivant:
u .,., : 0
u,-1 , 2 = 0
ur2=0
S r r= o
u.t.r= J
urr,,= o
utr=5
S ={
"12
ur,,,= 9
u rl,2
- -9
urr=n
SI
u t,., = 9
u'-1 . 2: 7 2
utr=9
Sr ,= 12
=9
Crr,. = 16
TableIV.1 : Ordonnancement
d'unjob-shopMRB par I'HeuristiqueI
139
desSystèmes
Multiples
à Ressources
Ordonnancement
Le diagrammede Gantt donnédans la figure IV. i I donneune meilleureillustration de
I'ordonnancement.
r
r-)
1,2
5
\,2
9
l.l
t2
I6
2,1
1)
5
rr ,l
11
9
12
1.2
FigureIV.1 I : Le diagrammede Ganttd'un ordonnancement
construitpar I'HeuristiqueI
Théorème4.6 : L'ordonnancement
obtenuà I'aidede I'HeuristiqueI est sansblocage.
Preuve:
Il est clair que I'ordonnancement
el I'affectation.obtenusà I'aide de I'Heuristiquel,
respectentles contraintesde précédence
et de capacitéde toutesles ressources.
L'affectation
étantdonnée.le job-shop MRB généralest équivalentà un Systèmeà Ressources
Unitaires.
De plus.selonI'Heuristiquel.la séquenced'entréedanschaqueressoruce(r.i) est dansI'ordre
des travaux et) pour chaquetravail, dans I'ordre des opérations.L'ordonnancementest donc
sansblocageselonles mêmesargumentsque ceuxutilisésdansla preuvedu théorème3.5.
QED
Nousnotonsque I'Heuristique1 s'applique
à I'ordonnancement
de tout job-shopMRB
avecou sansopérations
ZD.
140
Ordonnancemenr
desSystèmes
à Ressources
Multiples
IV.4.2 Une méthodeoptimalelocale
IV.4.2.1Présentationde la méthode
Comme dans la méthode conservatrice(Heuristique l), la méthode optimale locale,
appeléeHeuristique2, ordonnanceles travauxles uns aprèsles auûeset, ces travaux une fois
ordonnancés,les dates de début d'un travail ne serontpas modifiées.La différence entre les
deux méthodes réside dans I'ordonnancementde chaque travail. La nouvelle méthode
ordonnancede manièreoptimale le travail en cours de considérationet chercheà démarrerles
opérationsau plus tôt. tout en évitantles blocages.plus précisément,
Algorithme 4.4 (Heuristique2)
l. Choisirun ordredestravaux.
2. Pour chaquetravail l. résoudrele problèmeà un travailpour en tenantcompre
I
d e so r d o n n a n c e m e n
d tesst r a v a u xJ t , J 2 . . . .J, n - 1 .
l\'|.4.4.2Problèmeà un travail
Lors de I'ordonnancement
d'un travail J.;.certainstravaux sont déjà considéréset les
datesdu débutde leursopérationssont fixées.Soit
F = { J r ,J 2 ,. . . ,J ; - r }
I'ensembledestravauxdéjà ordonnancés.
L'ordonnancement
J.;consisteà déterminerles dates
du début de leurs opérations S1rafin de minimiser leur date de fin C.;tout en respectant
les
ordonnancements
des travauxdansF et en évitantles blocages.Plusformellement.il consiste
à:
( S P ):
Min C1,
sousles contraintessuivantes:
C1=Si.Nl*r
Si* + P i r S S 1 . i * r , V l S k s \
t4l
(4 8)
(4.e)
Ordonnancement
desSystèmesà Ressources
Multiples
I
h 1 11,{ S ; (1t < S i . r * r<} H , - h ; r , ,V r € R , V l < k s \
VS;rst< Si,x*r
( 4 . 10 )
(i.l)/ieF
Il n'1'apasde blocageauxinstantsr- avect e {S1r,...,Si":}
( 4 .I 1 )
où la relation(4.8) défrnit la datede fin du travail J.i,les contraintes(4.9) sont les contraintes
de précédence.
Ies relations(4.10) correspondent
aux contraintesde capacitéde chaquetype
de ressourcequi assurentla disponibilité d'au moins h.;x,unités de ressourcer pendant
I'opération(,k), la relation(4.11) est la contraintede I'absence
de blocage.Nous notonsque
I'ordonnancementdes travaux dans F respecteles contraintesde précédenceet de capacitéde
ressources
et qu'il existeune séquence
d'entréeîr pour chaquetype de ressourcesansblocage.
Pour simplifier la formulation.nousintroduisonsla notationsuivante:
(
<t<Si.r*r}+hj*,-H,
lx,=I
h 1 1l {,S 1 1
I
(
i
.
l
)
,
'
i
e
F
reR
(4.12)
v I < k < N i , V r e { 1 . 2 .. . . , H } .
ou (x)- = max {0, x}. De cettedéfinition.Ix,:0 si. et seulement
si. il y a suffisamment
de
ressources
libres dans la périodet pour l'opération(j.k). Nous notonsque les indicateursIç,
sontdesdonnéespour le problèmeà un travail (SP).
( S P ):
Grâceà cene nouvellenotation.le problèmeà un travailpeut êtreformulé commesuit:
Min C1,
sousles contralntessulvantes:
C 1: S 1 . N 1* t
+ p1rS S.1.x*1,
S.;x
Vl < k < \
Ik,: 0, Vl < k <\
V S.;r< t < S.1.r*r
Il n'1,'apas
de blocageaux instantsr- avect e {S;r,...,S.i^i}
(4.13)
(4.14
( 4 . I5 )
(4 16)
Une comparaison
avecla formulationdu problèmeà un travail(SP) du paragraphe
III'4.2 nousmontreque le problème(SP)pour un job-shopMRB généralest similaireau
142
desSystèmes
à Ressources
Ordonnancement
Multiples
problème(SP)pour un SRU saufque (i) la définitiondesindicateursIs est différenteet (ii) la
vérificationde blocaseest aussidifférente.
De cette remarque,il est aisé de montrer que la méthodepar rechercheexhaustive
(Algorithme 3.5) s'appliqueà la résolutiondu problèmeà un travail d'un job-shop MRB
général.à conditiond'utiliserla relation(4.12)pour le calculdesindicateursIp et le théorème
4.4 pour la vérificationde blocage(étape4).
De manière similaire, la méthodeProgrammationDy'namiquedu paragrapheII1.4.2.3
pour le problème à un travail d'un SRU peut être étendue.Il suffit pow cela d'utiliser la
relation(4.12)pour le calcul des indicateursde disponibilitédesressources
In et le théorème
4.4 pour les indicateursde blocageB(k,t). L'algorithme3.6 peut êtreutilisé en tenantcompte
de cettedifférence.
Néanmoins.compte tenu de la complexitéexplosivede la vérificationde blocageà
I'aidedu théorème4.4.|a méthodeoptimalelocalede ce paragraphe
n'estefficaceque (i) dans
le casd'un nombre faible de ressources
et (ii) dansle cas d'un systèmesimple pour lequella
r'érificationde blocagen'est pas nécessairegrâceau théorème4.1. Pour cette raison. nous
recommandonsplutôt la méthode suivante fondée sur les systèmes simples pour
I'ordonnancement
d'unjob-shopMRB général.
IV.4.3 Une méthodefondéesur lessystèmes
simples
Comme nous I'avons remarqué dans le paragraphe précédent. les méthodes
d'ordonnancement
sontplus simpleset plus efficacespour les systèmessimplescar. grâceau
théorème
4.1.nousn'at'onspasbesoinde vérifierexplicitement
I'existence
de blocage.
Comme dansle paragraphe
III.5. nouspouvonstransformerun job-shopMRB général
en un s1'stème
simple en deux étapes: (i) définir la forme canoniqued'un job-shopMRB en
insérantdes opérationsZD et (ii) définir la forme canoniquemodifiéeen modifianrles remps
opératoires
desopérationsZD.
Plusprécisément.
considérons
un job-shopM
composé
d'unensemble
de travaux
, r . , h . ;pt ., ; r ) , . .(.R
, jN,,hj^i,pjNL)}.Sa
{ J r ,J 2 , . . .1, , . . . , J n }a v e cJ . =i { ( & r , h . ; rp, 1 r ) , . .(. &
formecanonique
estunjob-shopMRB composé
desrravaux{ Ji , J; . ..., J; } telsque
r; = {(R;''h;',plr
(*h1,nï*1,p;N.
...,
),(RTz,hTt,olr),
)}
ou
143
desSystèmes
à Ressources
Multiples
Ordonnancement
N; =2Nj-l
( R l , z t - t ' h l z t - 1 , n l , z t - r ) : ( R : r . , h i x , P j r ) ,v l < k s \
(Rl,zt,hT,ru,
Rl,zt)= (&r.v \.x*r'hilv hi.r*l,0)'vl sk <\'
avechil v hj.*-run vecteurdont l'élémentr estmax{hirr,h1.r.*r.r}.
Nous définissonségalementun systèmesimple,que nous appelonsforme canonique
modifiéedu SRU. en remplaçantles opérationsZD de la forme canoniquepar des opérations
à délai unitaire.Plus précisément.la forme canoniquemodifiéeest un systèmecomposédes
travaux
hl = hlp,pfr =
tJi", Ji..... Jf ) telsqueNT = N; = 2\ - t, Rl = RTu,
m a xp
{ l * . 1 } .v ( J . k ) .
La nouvelleméthodeconstruitI'ordonnancement
du job-shopMRB généralen quatre
(i)
étapes:
calculer la forme canoniquemodifiée ; (ii) ordonnancerla forme canonique
modifiée:(iii) extraireles séquences
d'entréen, danstous les typesde ressources
ou extraire
I'affectationdes ressourcesaux opérationsainsi que la séquenced'entréedans chaque
ressource.à I'aide de I'algorithme 4.1, pour le job-shop MRB général à parrir de
I'ordonnancement
de l'étape(ii) : enfin (ir'). calculerI'ordonnancement
du job-shopMRB avec
les séquencesn, danstous les t1'pesde ressources,
à I'aidedu théorème4.6 ou I'affectation
ainsi que les séquencesd'entrée.dans chaqueressource.à I'aide du théorème4.7. Pour
résumer:
Algorithme 4.5 (Méthoded'ordonnancement
fondésur les systèmes
simples)
1. Déterminerla forme canoniquemodifiéedu job-shopMRB.
2. Ordonnancercette forme canoniquemodifiée à I'aide de I'algorithmedu recuit
simulésansvérificationde blocase.
3. Extrairela séquenced'entréeæ,danschaquetype de ressource
ou I'affectationainsi
que la séquenced'entréedanschaqueressource
à I'aidede I'algorithme4.1.
4. Calculerles datesde débutdes opérationsdu job-shopMRB avecla séquencen,
d'entréedans chaquet)'pe de ressource.à I'aide du théorème4.6 ou à I'aide du
théorème4.7 avecl'affectationet la séquence
d'entréedanschaqueressource.
t44
Multiples
Ordonnancement
desSystèmes
à Ressources
Il est bien entendu que I'ordonnancementde la forme canonique modifiée est
égalementadmissiblepour le job-shop MRB. L'étape4 de I'algorithmepermet l'élimination
destempsmorts et conduit à un meilleur ordonnancement.
ry.s Résultats
numériques
Dans ce paragraphe,nous présentons six exemples de Systèmes à Ressources
Multipleset les ordonnancements
obtenusà I'aide de I'Heuristique2. Le premierexempleest
une extensionde I'exempledû à Ramaswanyet Joshi (96) et nous I'avonsdonné dansla table
III.3 du chapitreprécédent.Les autresexemplesont été générésde façonaléatoire.
IV.s.1ExempleI
L'exempleI estune extensionde I'exemplede Ramaswanyet Joshi(96), un Systèmeà
RessourcesUnitaires déjà érudié dans le paragrapheIII.6.1. Dans ce paragraphe,nous
considéronsles mêmestravaux {Jr, Jz, Jl, J+} dont les temps opératoireset les ressouces
pour les opérationssont ceuxde la tableIII.3, La differenceest le changement
nécessaires
des
disponibilitésdes unités de chaquetype de ressource.
Nous considéronségalementles trois
machinesMr, Mz et M3. Par contre,noussupposons
qu'il y a deux moyensde transportT.La
disponibilitédesressoucesestrésuméepar la tableIV.2.
Ressource
M1
Disponibilité
I
M2
M3
T
I
2
TableIV.2 : Nouvelledisponibilitédesressources
pour I'exemplede Ramaswanyet Joshi(96)
L'ordonnancement
obtenuà I'aidede I'Heuristique2, avecle critèrede la minimisation
du makespan.est donné dans la table IV.3. Nous constatonsque I'ajout d'un moyen de
transpon permet une réduction imporlantede la duréetotale. Le makespanest passéde 568
unités de temps avec un moyen de transportà 451 unités de temps avec deux moyens de
transport.Ceci prouve I'imponancede la prise en comptedes ressowcesdites "secondaires"
dansla définition de I'ordonnancement.
145
desSystèmes
à Ressources
Multiples
Ordonnancement
Jr
Opération
I
2
5
4
)
6
7
ts,
J:
Jz
tr
ts,
t1
lo,
5 1 , r 18
l. 5
6, 45
46, 50
51. 150
Je
ts,
tf
l, 5
6, 50
5 1 , 53
54, l l 8
I 1 93
, 30
331,337
338,410
15t,222
411,414
r19,t24
1'r< 111
223.258
415,446
259,262
447,451
223,226
= 451
Makespan
Tempsde CPU= 30 secondes
LLJ,
L' L
tf
6,9
1 0 ,1 1 8
i 1 9 ,1 5 0
151,222
223.330
331,365
366,370
TableIV.3 : Ordonnancement
de I'exemplede Ramaswanyet Joshi(96) par I'Heuristique2
IV.5.2D'autresexemples
Ces exemplesont été générésde manièrealéatoire.Nous choisissonsle nombre de
travaux et le nombre de types de ressources
et généronsà I'aide de variablesaléatoiresles
autres paramètresdu s)'stème : le nombre de ressourcesde chaque
Ç-pe. le nombre
d'opérationsde chaquetravail. le besoin en ressourcesde chaqueopérationet son temps
opératoire.Les exemplesgénérés(les travauxet la disponibilitédesressources)
sont donnés
d a n sl e s t a b l e sI V . 4 . I V . 5 . I V . 9 . I V . t 0 . I V . 1 2 . I V . r 3 . I V . l 5 , I V . l 6 , I V . t g e t I V . l 9 . L e s
ordonnancements
obtenusà I'aidede I'Heuristique
2 sontdonnésdansles tablesIV.6. IV.l l.
I\/.14. iV.17 et IV.20. Les résultatsobtenusà I'aidede I'Heuristique
2 sont donnésdansla
suitede ce paragraphe.
Exemple2
Opérations
Travaux
2
I
Jr
Jz
J:
1R4,7
l R z1 R r , 2
1R2,3
l R l l R 4 ,1 0
Je
l&,7
lR21R3.2
J
1R3,9
TableIV.4 : TravauxdeI'exemple
2
t46
I R"4,8
desSystèmes
à Ressources
Multiples
Ordonnancement
Disponibilité
2
2
a
J
z
TableIV.5 : Disponibilitédesressources
deI'exemple
2
Opérations
Travaux
I
2
a
J
tr' tf
ts, tf
tr, tf
J1
1,9
Jz
Jr
r,7
1,3
Jq
8 , T4
8,9
4,13
1 5 ,I 6
14,21
Makespan:21
Table IV.6 : Ordonnancementde I'exemple2
&.2
&,r
Rrr
Rr,r
Rz,r
Rz,z
E
ffi
I
I
Ru,r
Rr,z
Rr,r
Travail I - ta"u:0 - t6n: 9
Travail2-ta"u:0-hn:9
Travail3 - ta"u= 0 - h":21
Travail 4 - ta"u: 4 - t"^ = 16
FigureIV.l l : Diagramme
de Ganttde I'ordonnancement
donnédansla tableIV.6
Pour cet exemple,nous considéronségalementI'ordonnancement
avec un nombre
réduitde ressources
. La nouvelledisponibilitédesressources
estcellede la tableIV.7 et le
nouvel ordonnancementcelui de la table IV.8. Nous constatonsune augmentationdu
makespan.
141
Multiples
à Ressources
desSystèmes
Ordonnancement
Pour cet exemple, nous considérons également I'ordonnancementavec un nombre
réduit de ressources. La nouvelle disponibilité des ressourcesest celle de la table IV.7 et le
nouvel ordonnancement celui de la table IV.8. Nous constatons une augmentation du
makespan.
Ressource
R1
Rz
R3
R4
Disponibilité
2
I
I
I
pourI'exemple2
TableIY.7 : Nouvelledisponibilitédesressources
Opérations
Travaux
I
2
t., tf
tr, tf
J3
1,9
29,35
1,3
J+
22,28
J1
Jz
tr, tf
36,3't
4,13
29,30
T4,2 l
Makespan:37
TableIV.8 : Nouvel ordonnancement
de I'exemple2 par I'Heuristique2 avecla disponibilité
desressources
donnéedansla tableIV.7
148
Ordonnancement
Multiples
desSystèmes
à Ressources
Exemple3
Opérations
2
Travaux
I
Jr
2Rr.6
J2
2R1,9
J3
1R3,6
Jr
2&, 10
lRr,8
l R r l R : 1 R 33,
J5
2 R zl R q , 6
1 R 4 ,l 0
J6
2 R 21 R 5 , 9
l R z l R l 1 R 55
,
J
lRrl& 1R6,9
lRz lRr, I
TableIV.9 : Travauxde I'exemple3
Ressource
R1
R2
Disponibilite
J
5
&
R3
J
J
Rs
&
3
5
TableIV.10 : Disponibilitédesressources
pourl'exemple3
Opérations
Travaux
2
ts,
[ s , rf
Jr
2
I.
Ja
Js
Jo
1, 6
1,9
l. 6
l, 10
1. 6
l, 9
1
+^
!1
7,14
l t. 13
7,16
[r, tf
15,23
1 7 .1 7
ll, l5
= 23
Makespan
TableIV.l I : Ordonnancement
deI'exemple
3
149
desSystèmes
à Ressources
Multiples
Ordonnancement
E x e m p l e4
Opérations
Travaux
2
I
Jr
3
Jt
2Rr lRz.I
2Rr.s
lRz lR-a,7
l R r 1 & 1 R s . 9 l R z l & 1 R 53,
2 R zl R s 1 R 4 , 7 2Rr lRz,
2R2,I
lRzl R q l R s , 5
lRz,4
2 R zl R s , 8
2Rr l R 3 1 R 5 , 2 2 R rl R z 1 R 3 , 7
l R z l R : l R s ,I
1Rr,4
2Rr,
lRz.6
Jg
lRr lRz 1R4,3
Je
2 R 3l f u 1 R 5 , 2 I R : l R q l R s .g
I^
Jl
Jq
Js
J6
Jro
2Rr 1R2.4
TableIV,12 : Travauxde I'exemole
4
Ressource
Rr
R:
R3
R4
R5
Disponibilité
2
/l
Ét
2
2
2
TableIV.13: Disponibilité
desressources
pourI'exemple
4
Opérations
Travaux
1^
ll
T,
t. 1
I"
Jq
I l. 19
18.24
1, I
Jr
23,30
J6
1.10
I,
)7
J3
Jç
26,28
25,26
Jro
4 0.43
Ja
2
J
tr, ti
ts, tf
2.10
20.22
25,25
1 1 ,1 7
2,6
31,32
i, l0
1
I
ls!
1t
I It
1A
I.t
33,39
1 5 ,l 5
2 7, 3 5
Makespan= 43
TableIV.14: Ordonnancement
deI'exemple
4
r50
Ordonnancement
desSystèmes
Multiples
à Ressources
Exemple5
Opérations
Travaux
2
I
a
J
Jr
Jz
1R1,9
J3
1R3,6
R r ,E
Ja
lRr l&, l0
R6.8
Js
lR4lRs,4
1R6,7
J6
l R r l R z .I
1R2,9
Jt
l R z l R l 1 R 5 l, 0
lRz lRg1R6,4
1R:.6
Js
Js
lR31R5,8
l R zl R r , 7
1R21R5,9
lRl lR41R6,3 lR: lRs lR6,4
lRr.3
l R r l R zl & S
Jro
TableIV.l5 : Travauxde I'exemple5
Ressource
R1
Disponibilité
2
Rz
I
J
R3
&
Rs
2
2
I
R6
J
TableIV.16: Disponibilité
desressources
pourI'exemple
5
Opérations
Travaux
I,
I"
J;
Jq
Js
Jo
I
2
ts, tr
L, ti
l, 9
l. 6
1 0 .1 9
l, 4
l. I
Jq
Jro
1 5 ,1 9
Js
t, tr
6
20,29
30,37
2,4
I.
J
7,14
20,2',
5,11
2,l0
28,34
ll. t9
30,33
38,40
41,44
= 44
Makespan
TableIV.l 7 : Ordonnancement
de I'exemple5
t\l
desSystèmes
Multiples
à Ressources
Ordonnancement
Exemple6
Opérations
Travaux
I
2
I
4
J
5
J1
l R 22 & i R r. I
lRr lR31R5,3
1R5,9
l R 1 s ,8
Jz
lRq,7
lR41R7,2
l& lRr,6
l R 6 ,l 0
J:
1R9,6
l R s ,I
lRr lRq,3
l R l l R s l R a , 4 I R : l R 4 IR ;, 1 0
Jq
2 R zl R s 1 R 1 6 , 9 l & l R z l R{ , 9
J5
Jo
lR1 lRe,9
lR1s,3
Jt
2R6,5
1R2.4
Js
1Rro.5
Je
1 R 4 1 R 5l R 1 s , 9
Jro
lRr 1Rç.4
l& 1Rr,8
2 R zl R i l R 4 , 3
1R4,7
TableIV.l 8 : Travauxde I'exemple6
Ressource
Rr
Disponibilité
2
R2
a
J
Rr
&
2
2
R5
R6
Rr
Rg
Re
Rro
3
I
2
I
2
TableIV.l9 : Disponibilité
desressources
pourI'exemple
6
Opérations
2
J
4
5
ts, tr
ts, tr
ts' tr
ts, tr
ts, tf
l.
2,4
5 ,l 3
1 0 ,1 5
14,21
76,25
Travaux
T,
T
J:
Jq
I
1. 7
8.13
3 9 ,4 6
Jt
14,22
14.22
2.6
Jg
l, 5
Je
3 0 ,3 8
23,26
Js
Jo
Jro
8,9
47,56
23,31
23,25
24,26
7))
39,46
+7,53
= 56
Makespan
TableIV.20 : Ordonnancement
de I'exemple6
152
7.29
Ordonnancement
desSystèmes
à Ressources
Multiples
IV.6 Conclusion
Dans ce chapitre. nous avons considéré I'ordonnancementdes job-shops MRB
généraux.Comme pour les Systèmesà RessourcesUnitaires,nous avonsmontré que, pour les
systèmessimples, les contraintesde précédenceet de capacitédes ressorucesimpliquent
I'absencede blocage. Ce résultat est particulièrementimportant pour I'ordonnancementdes
job-shopsMRB généraux.Nous avonsensuiteétudié la représentationdesjob-shops MRB à
I'aide des RdP généralisés,la vérification de blocage pour un état donné er pour un
ordonnancement
donné.Nous avonsconstatéque la vérification de blocageest beaucoupplus
difficile que dans le cas des Systèmesà RessourcesUnitaires.Finalement,nous avons étendu
les méthodesgloutonnesdu chapitreIII pour I'ordonnancement
desjob-shopsMRB généraux.
Comme dans le cas des S1'stèmesà RessourcesUnitaires, nous pouvons aisément
prendreen compted'autrescritèresrégulierstellesque la minimisationde la sommede retards
et la solrune d'en-cours.L'extension aux systèmesavec gaûrmes non-linéaireset les
flexibilitésdesressources
et desgammesestunerecherchefutureimportante.
153
Chapitre
V
Le problème
d'ordonnaneement avec
moyens de transport
Le problèmed'ordonnancement
avecmoyensde transport
V.l Introduction
Le travailprésenté
dansce chapitrea étéréalisédansle cadredu stagede fin d'étude
de Mlle Elkarama(Elkarama,98) effectuéau seindu projetMACSI, à I'encadrement
duquel
j'ai participé.Dansce chapitre,nousnous limitonsà une classeparticulièredesjob-shops
MRB : les ateliersflexiblesou lesjob-shopsavecmoyensde transport.Un tel systèmeest
similaireà un job-shopclassique
maisun moyendetransport(ouAGV) estnécessaire
tout au
longdela réalisation
de chaquetravail.Nousavonsdoncunjob-shopMRB où lesressources
sontles machineset les AGV ; le processus
de fabricationde chaquetravail peut se mettre
sousla formesuivante:
(AGV,O),(AGV,}r(z,p;z),
(AGV.0),...,(AGV,MiN, ,piN, )}
{(AGV,VIr,p.ir),
où {N41r.
M.i:,..., M iN } estla suitede machines
à visiter.
-J
L'objectif de ce chapitre est d'étudier I'efficacité de la méthode Relaxation
Lagrangiennepour I'ordonnancementdes job-shops MRB en suivant la méthodologie
proposéepar Luh et Hoitomt (93) que nous avonsprésentédansle paragrapheI.5.5.1.pour
une meilleurecompréhension
de ce chapitre.nousrappelonscetteméthodologiefondéesur la
relaxation Lagran-eiennepour I'ordonnancementdes systèmes de production. Cene
méthodologieconsisteà (i) relaxer certainescontraintesdu problème.par le biais des
multiplicatews de Lagrange.pour obtenir des problèmesrelaxésfaciles à résoudre.(ii)
résoudrele problème dual, c'est-à-diredéterminerles multiplicateursde Lagrange. (iii)
construireun ordonnancement
admissibleà partir de la solutiondu problèmedual.L'avantage
de cetteméthodeest que la solutiondu problèmedual fournit une bome inférieurede qualité.
permettantla constructiond'une bonnesolutionadmissibleet sonévaluation.
Ce chapitre est organisé de la manière suivante : le paragrapheV.2 donne la
formulation du problèmed'ordonnancement
d'un job-shop avec AGV; le paragrapheV.3
présenteune relaxationLagrangiennedu problèmed'ordonnancementet définit le problème
relaxéet le problèmedual ; le paragrapheV.4 abordela résolutiondu problèmerelaxéet du
problème dual ; le paragrapheV.5 est consacréà la construction d'un ordonnancemenr
réalisableen utilisantla ProgrammationDynamique,I'algorithmede liste et le recuit simulé;
le paragrapheV.6 présente les résultats numériques; le paragrapheV.7 considère les
extensions
possibleset le paragraphe
V.8 est une conclusion.
154
avecmoyensde transpon
Le problèmed'ordonnancement
V.2 Formulationdu problèmed'ordonnancement
La complexitédu problèmed'ordonnancement
dansles ateliersde type job-shop incite
à utiliser une approche de décomposition.Aussi la méthode de relaxation lagrangienne
consisteà relaxer certainescontraintes,notammentles contraintesde capacitédes ressources
(machineset moyensde transport),de façon à ramenerun problèmeque I'on peut décomposer
à des sous-problèmesbeaucoup plus faciles à résoudre, à I'aide des multiplicateurs de
Lagrange. La solution trouvée, non nécessairementadmissible,constitue un bon point de
départà un algorithmede liste qui va nous permettrede trouverune bonne solutionréalisable.
V.2.1Notations
Ressources
M
le nombrede f,v*pes
de machines
L
le nombredesAGV
Travaux
n
le nombrede travaux
Qr ou(r.k)
la k"' opérationdu travailj
{ Q ' ,Q : . . . .Q
, x . . . .O
, ix,}:
la séquence
d'opérations
du travailj
NJ
le nombred'opérations
du travailj
M . ; xe { 1 , 2 .. . . .M }
la machineutiliséepour I'opération(y.k)
pjk
le tempsopératoirede I'opération(,k)
Srr'
la datede débutde I'opération(j,k)
Crr-
la datede fin de I'opération(1,k)
Cj
la datede fin du travail j
dj
la dateéchuedu travailj
H
I'horizonde temps
155
Le problèmed'ordonnancement
avecmoyensdetransport
T
le critèreà optimiser
wl
la pondérationdu travail j
T1
le retard du travail j,
T.;=max(0,Ct-d.;)
défini par:
Nous utilisonségalementles notationssuivantes:
V.2,2Formulationdu problème
Le but estde minimiserla fonctionretardquadratique
pondéré:
n
J= I wi.T1
i-l
-
J
Ce critère.dont on démontreaisémentla régularité,tient comptede la pondérationdes
travauxà réaliser.de I'importancedu retard,et du fait que chaquetravaildevientplus critique
pour chaqueunité de temps passéede sa date échue.Son additivité.par ailleurs,facilite
I'approchede la décompositionque I'on souhaiteutiliser.
Le problèmed'ordonnancement
devientalors :
n
MinimiserJ= IW,
j=l
f]
sousles contraintes:
S . ;+i p ; x< S 1 . r *V
r ,l < j < n , V l S k S N l
156
(-5.I )
avecmoyensdetansport
Le problèmed'ordonnancement
nNj
II
j=l
k=t
l { S 1 r < t c S 1 . r * r ô} T S l , V l < t < H , V I < m < M
n
I
j=l
l { S 1 r< t < S 3 N+.p; . i N}. i< L , V l < t < H
C: : S:".i+ PjNj- 1, Vl <j <n
(s.2)
(s.3)
(5 4)
La contrainte (5.1) exprime les relations de précédence entre Ies opérations
appartenantau même travail, la contrainte(5.2) exprime que chaquemachine ne peut traiter
qu'uneopérationà la fois, la contrainte(5.3) traduit la capacitéen AGV et la contrainte(5.4)
donneI'expressionde la datede fin pour chaquetravail.
V.3 Relaxationdu problème
V.3.1Problèmerelaxé
L'idée est de relaxerles contraintesde capacitédesressources
en machineset en AGV
en introduisantles multiplicateursde Lagrangepositifs). et p. Le problèmerelaxéseraalors
de la forme :
L(À,pr)= min(Ë w,T,'*
,à^- {È
*?F,
h
t, S,u<t < s,*+ ej-)ôT- l}
( S,^,
t,Sr.r<t
*ej-,)-L)
souslescontralntes
:
S.;i+ p;i ( Si.r+r,
Vl Sj < n, Vl S k <Ni
+ PjNi- l, Vl <j <n
C: = S.i^;
Un multiplicateurÀu,.'(respectivement
p) peut être interprétécomme le coût de
I'utilisationde la machinem (respectivement
d'unAGV) pendantla datet.
Le problèmerelaxépeutêtremis sousla forme:
l)/
Le problèmed'ordonnancement
avecmoyensdetransport
L(i..p)= -tÀ--LIp,
t,D
-l
xi s.ik*P1l
n
t
+ minI(W,Ti + l
l-r
J-'
I
r=sjl
s1N *niP -t
Àon*
I
p,)
t=S.yt
Les relationsde précédencelient les opérationsdu même travail mais les travaux euxmêmessont indépendants.
Par conséquent,
(
-l
Nr sjr +pjk
= -IÀ_ -LTu, + t { min(W,T,':+l
L(À.p)
À-*
nl
,à
-l
-\
s j N r+ P j N r- l
'l
.
,T U,)l
La résolutiondu problèmerelaxé se ramènedonc à la résolution
dessous-problèmes
niveautra\/ailj :
L i ( À , p ):
+
s t t r ,* P ; r , - t
I
p,)
r=S1l
sousles contralntes:
S1r+ P.ir( S.1.r*r,
Vl < k s Ni
V.3.2.Problèmedual
Le problèmedual associéest :
Lr = maximiser
L(2,.p)
La résolutiondu problèmedual fournitune bome inférieurede la solutionoptimale.
En effet.les multiplicateurs
sontpositifset donc,en posant{ S;*} I'ordonnancement
oprimal
du problème
initial.À > 0, pr2 0 :
L(7',p) = min(Ë'w,T,2
+ 2i.- {2 t1s,,< t < S ; 1+ p , r ) ô i - l )
r.m
J=r
[l,x
*TF'tT < 1 < S , . ^*,0 , , ^ , ) - ' )
"t,
(
158
avecmoyensde nansport
Le problèmed'ordonnancement
donc :
L ( f , , p ) < m i n ( i w , T , ' * à ^ * { nt O ' -< t < S 1*rp , * )ô i - t }
* ? u , { l t r t ; < t < S , Nf ,p j , n i , - t
}
\ru que { S;- } est une solutionadmissibledu problèmerelaxé.
Sachantque À > 0 et p ) 0 et que les contraintesdesressourcessont vérifiéespar
I'ordonnancement
{ Sj- }. alors :
^ . ' h 1 G ,<, .t . 5 1 *+ p i * ) . ô i - t ) = 0 . v 1< r s H
-
ht(S,,
< t . S , n ,* p j ^ - , r - a ) < o , v1 < m s M
et par sulte:
L ( i .p
. )s * w , t , ' . V ) , .p > 0
J=l
soit finalement:
L r' =r naxL( i, p) s J'
i..uà0
V.4 Méthodologie
de résolution
Avant de passeraux détails,notonsque la résolutiondes sous-problèmes
niveau
travailsefait en utilisantuneméthode
de décomposition
structurelle.
En effet,I'ensemble
des
variablesde décisionsest décomposé
en deuxsous-ensembles,
I'un contenant
les datesde
débutdesdifférentes
opérations
et I'autre,lesvaleursdesmultiplicateurs
I et p. Ceux-cisont
d'abordinitialisésà une valeurquelconque.
soit à zéropar exemple.Ensuite.on chercheà
résoudrele problèmerelaxéet doncà trouverles datesde débutassociée
aux valeursdes
multiplicateurs.
S'il y a variationdu coûtalorson résoutle problèmedualen mettantà jour
159
Le problèmed'ordonnancement
avecmoyensde transport
les valeursdes multiplicateurs,sinon, on iurête.L'ordonnancementtrouvé à la fin constituera
une bonnebome inférieureaidantà la recherchedessolutionsadmissibles.
V.4.1Résolutiondu problèmerelaxé
Rappelonsque nous cherchonsà résoudrepour chaquetravailj, le sousproblème
L.;(2',F)Pour cela,et pour chaquetravailj, nouscherchonsà appliquerla Programmation
D,vnamique
en considérant
la famille dessous-problèmes
suivants,avecI < I < Ni et l< t <
H:
s1i-n1l -l
F,,= min(iwri +i
k=i
t=l
IÀ-
r= s j l
+
S t N , + P . 1 X-,l
I
r= s j l
p,)
souslescontraintes
:
S r 1= T
+ p.;x< Six*r,Vl < k <
S.1r
\
Cenefamille peut êtreécritede façonrécursive.Ainsi :
''' =
' '
''Ï-'
(Fr-r
*
À,,v,,
+
u, ) '
S,,Trillo, s,,-, ,!*
F,,=,y111
(Fr.r.,
*'.T-'À,.",,
*!il', ),
.-
r)
l=1
l=t
, u , ) * ' . 3 - ' l ,, '.n r. j ru*, ,Ë u , ,
F r ,= . m i n( F , - ,-. Ë
! ) r+p:r
t=)
,*
t=l
par conséquent,
et pour chaquetravail,la connaissance
des solutionsdes sous-problèmes
F^,, estsuffisante
pourdéduirele restedessous-problèmes.
etjustement:
F^,.t= wrT; +
r+pi;-l
s
(À,,",, * l't,)
r60
avecmoyensde transporl
Le problèmed'ordonnancement
(entempsde calculeVouen
par énumération
sontcoûteuses
En principe,lesprocédures
du
mathématiques
espacede mémoire),mais I'exploitationde certainescaractéristiques
danslescalculs.
problèmenousfait éviterbeaucoup
de redondances
Posons:
H
R. = Ilr,
l=1
r + p ; ;_ l
P, = t
À,.r,.r,,
t'
H
i n ( F , - , ,- I p , )
Q , = )m
>r-pJt
l=r.
Donc :
F r . . =Q , + P , + R ,
Le vecteurR' estcalculéune seulefois pour tous lestravaux.en utilisantle fait que :
J*"==Ru"
, * r* F ,
[R,
r=H-1,H -2^....2,1
Pourle vecteurQ', et connaissantF",, . on peut déduireque :
)
Q, = min ( Q,*,,F,*,,,*0,,
Une fois ce calcul fait, I'ordonnancementconcernantle travailj est déduit par les
relations:
S,,= argTin P,,
S , . r * r = i f { Y > S , ,+ P , r Æ , * , , u * R-rR, ,, = F , r , , }
qui minimiseI'expression
où argmindésigne
I'argument
qui le suit.
l6l
Le problèmed'ordonnancement
avecmoyensdenansport
Acetteétape,etconnaissantlesvariablesdedécisionS.;rr(lsj<n,lsk<N1),on
doit :
I - calculerle coût du sous-problème
du niveautravailj : L1(À,p)= F,r,,,
2 - calculerle coût du problème:
L ( À , p=) - à ^ * - I p , + l L , ( À , F ) ,
3 - comparer ce coût avec celui de l'itération précédente.S'ils sont égaux (à une
erreurprès),alors arrêter; sinon,passerà la résolutiondu problèmedual.
V.4.2Résolutiondu problèmedual
La résolutiondu problèmedual supposela mise à jour desmultiplicateursde Lagrange
de manièreà maximiser le coût associéau problèmerelaxé.Pour cela, nous adoptonsla
méthodedessous-gradients
qui renouvellela valeurdesmultiplicateurs
pour la relaxation:
= 01"'
* o'V,Lln'
01"*"
a\rec:
0i : un desmultiplicateursÀ ou pi
n : le nombred'itérations
Y;L1 : le sous-gradient
de L1 par rapportà 0;
cr : le pas de déplacementque nousdéfinironsplus tard
ainsi.
À'I"= À'3+ 0,g*(N"',F'"')
= pl",+cx,,h,(À,"),F,",)
p1"."
et sachantque
L(À,p) = min(i\\/,T,2
+
à^- h
l(S;r< r < S1r
*p,-) ôi -l)
* p F , t , s , ,< r ( S j . "*, p ,N ,-, t - }
{î
162
avecmoyensdetransport
Le problèmed'ordonnancement
alors,
g * ( À , , ) , F ( n=)j )L , - = I l ( s ï ) = , . r l l , + p , u ) . ô-[l
j.k
oh^
=+=2 t(s!i)
+p1",)-L
h,(À,"r,F,n))
s t <sjR,
'
r')
j
dF,
Nous sommesarrivésau choix du pas de déplacement.En effet, il nous faut un pas qui
décroît au fur et à mesure que nous nous approchonsde I'optimum, tout en assurantune
vitessede convergenceraisonnable.Pour ce faire, nous adoptonsla plus récentedes méthodes
des sous-gradients
d'Armijo (Polak.91).
Remarque:
Le coût du problèmerelaxé L est une fonction concave.En effet :
S o i t2 , r .À : . F r , F z 2 0 , e t 0 S 0 S l . S o i tÀ 0 ,F ot e l sq u e:
À s =0 À 1 + ( l - 0 ) À 2 ,
p6:0p1+(l-O)pz.
'r,l
= -IÀn"-rTu, .Ë{ ,w,r,'+}'':{:'À,** ",=t-' li
L(l.o.po)
donc :
-Lrp' .Ëi,w,T,'?+
L(io,po)=0(-rÀ'ïtnË'-'^'**'Ï'î'
r.m
t
,=r t=Si
,=, |.
,=Si
'lrl
)l
)
-r?u' .:{,w,ri
+(t-e)(-)À'?*'Î',f'-'r,i
i}
' ' *È'nÏ'-'^,*
,
k=r ,=s1,
,='|
par suite:
I63
,+i,
)
Le problèmed'ordonnancement
avecmoyensdetansport
_t
L ( À0Iro
, ) > e (-IÀ '* - L Ip '
À' **
I
+ (l-eX-If',,- t_Ip,
t,m
I
À'**
slr+prn,_l
I
tl
,=si,
S f ,+ p , * .- l
I'
'=s;l
,,1
Pi , )
soit alors:
L ( À o , p o )à e .L ( À 1 , F ,+) ( 1- 0 ) . L ( À , , p , )
Méthoded'Armijo
ei"'
0 1 "+)p ' h ,
FigureV.1 :Courbedu coûtrelaxé
Soit (C) la courbereprésentant
le 'coût relaxé'en fonctiondu vecteur0. L'idée est
que.tanlqueV,L*O.faire:
1- Tracerla droite(D) passant
par le point de départ0r et de pentea.V;L,a étantun
par ètrepréfixéentre0 et I et V;L le sousgradientde L parrapportà 0;.
quela partieadmissible.
2- Sachant
c'est-à-dire
la partiequi contientI'optimum.esr
la partiede la courbe(C ) au-dessus
de la droite(D). chercher
le plusgrandpasBk
164
avecmoyensde fransport
Le problèmed'ordonnancement
(0e]0,1[; keZ),tel que 0i + F*.h'seradansla partieadmissible,
c'est à dire que
I'inégalitéseravérifrée:
L(0,+Ê'h,)- L(e,) >aFullvr1e,
;ll'
avech;: aV;L. la directiondu sous-gradient
ajustée.D'oir, I'algorithmed'Armijo (Polak, 9l ).
Algorithme d'Armijo
Paramètres
: a, p e (0.1),k' e Zet (Ào,Fro).
Etapel:Fairei:0
Etape2 :Calculerla directionde recherche
h1= crV;L1(x1)
Etape3 : Calculerle pasgi gui vérifie:
L,10,+B'h,)- L,(0,)) ag*llvi-1e;ll'
L,(0,+g*,h,)-L,(0,).crp*
llvl,1e,;ll'
Etape4 : FaireOi-r= 0i + 9* hi. remplacer
ipar i+l et retournerà l'étapel.
Il 1 a deux problèmesqui apparaissent
parfoisaveccetteméthode.Le premieresrque
notre position est encoreloin de I'optimum alors que le pas de déplacementest faible. Le
deuxièmeestle problèmed'oscillation
de la solutionentredeuxvaleurs.
Pour remédierà ces problèmes,d'unepart nous fixons un nombred'itérationsau bout
desquellessi nous n'arrivonspas à améliorernotre solution,nous faisonsdécroîtrele nombre
k et donc. nous augmentonsle pas de déplacementdu facteur lip ; d'autre part. nous
cherchons.chaquefois qu'il estpossible,à avoir le pasde déplacement
le plus grandpossible.
Rappelonsque nous sommesen train de chercherun pas cr tel que:
0 l n *=" e l " ) +a ' V ' L
'
est :
Qj'-' étantpositif. la valeurmaximaleque peutprendrele pasde déplacement
165
Le problèmed'ordonnancement
avecmoyensde transport
Gm \ = min
el"'
wiL<o -V
L
Alors. deux cas se présentent:
lttcas : c,mrx>O
si
L( e'"'+a.*VL) t L( e'"))
alors
- e) ( n +
) crr*vL
e(n-1
sinon.appl:querla méthoded'Armijo.
2ètt cas : c[r"*=o
,. f",L
^^'
lo
h
={
si el",> 0
ou V,L>0
si el"'= Q
et ViL<0
Appliquerla méthoded'Armijo avecdirectionde recherche.
v.5 constructiond'un ordonnancement
réalisable
La solutiontrouvéepar relaxationLagrangienne
n'estpas nécessairement
réalisable.
En effet.il sepeutque le meilleurcoût soit obtenuen "abusant"de la capacitéde certaines
ressources:
quea soientdesmachines
ou desAGV.
Danscettesection,nousallonsdoncconstruireun ordonnancement
réalisableà partir
de la solutionassociée
au problèmedual,Pourcela.nousallonsutiliserrespectivement
la
Programmation
Dynamique.un algorithmede liste et, éventuellement,
I'algorithmedu recuir
simulé.
166
avec moyensde transport
Le problèmed'ordonnancement
V.5.1ProgrammationDynamique
Comme première étape, nous allons utiliser la Programmation Dynamique pour
déterminerune priorité pour chaquetravail. Le critère de priorité utilisé sera que le travail le
plus prioritaireest le travail au plus grandcoût L.;(À',F-).La ProgrammationDynamiqueest
utiliséede la même manièrequ'avant,sauf qu'ici, chaquefois, on tient compte des travaux
déjàordonnancés.
L'algorithmeà appliquerestalorsle suivant:
1.,'
J-
À
Mettre les travaux à ordonnancerdansune premièreliste, list1.
S'il n'y a plus de travauxdanslist1,alorsarrêter.
Appliquer Ia ProgrammationDynamique aux travaux figurant dans listl et
calculerl'ordonnancement
ainsioue les coûtsassociés
aux travaux.
Prendrele travail au plus grandcoût et l'arrangerdansune liste list2avecla date
de débutassociée.
La liste list. contientalors les travauxordonnésdansle sensdécroissantdespriorités.
Elle serale point de départde notrealgorithmede liste.
V.5.2Algorithme de liste
Dans l'ordre décrit par la liste list2.nous choisissons
un travail et, chaquefois qu'un
AGV est disponible.nous ordomançonsles différentesopérationsde ce travail tout en tenanr
comptede :
o
la date de disponibilité des différentesopérations: pour la première opération.ce
serala datede disponibilitéde I'AGV utilisé et, pour les autresopérations,ce sera
la datede fin de I'opérationjuste avant,augmentée
d'uneunité.
o
les contraintes de capacité des machines : en cherchant à ordonnancer les
différentesopérations,il ne faut pas oublier qu'unemachinene peut traiter qu'une
opérationà la fois.
Sachantque L1, la solutiondu problèmedual.constitue
une borneinférieurede la
solutionoptimalerecherchée
J+. pour tout coût J conespondant
à un ordonnancemenr
réalisable.
ia relationsuivante
estr,érifiée:
16'7
Le problèmed'ordonnancement
avecmoyensde transport
Lr<J*<J
Nous définissonsle gap de dualitéconuneétantIa quanriréI:Jr
uu..
J
J : le coût de la solutionadmissibletrouvée,
L1 : le coût associéau problèmerelaxé.
Plus le coût de I'ordonnancement
réalisableest prochedu coût associéau problème
dual (doncplus le gap de dualitéest faible),plus on est sûr qu'on estprochede I'optimum et.
donc.que la solutionestbonne.
Pour desproblèmesde petitetaille. et en utilisantjuste les procéduresdéjà décrites(la
programmationd1'namiquesuivie de I'algorithmede liste), les solutionstrouvéessont bonnes
(voir les exemplesd'applicationsdansle paragraphe
V.6), voire parfoisoptimales.Avec des
problèmesde plus grandetaille. I'erreurentrela solutionadmissibleet la solutionassociéeau
problèmedual devientplus grande. dans ce cas.la solutiontrouvéeconstitueraun point
de
départpour une techniqueélaboréede recherchepar voisinagequ'estcelle du recuitsimulé.
V.5.3Techniquedu recuit simulé
Cette méthode consiste à parcourir aléatoirementun chemin dans le graphe de
voisinageen admettantla possibilitede retenirun voisin moins bon pour éviter le piège
des
optimumslocaux.
L'algorithmeappliquéestalorsde la forme :
a) Données:
trouvépar applicationde la programmation
{tT },.,=,,=u=x,r l'ordonnancement
Dynamique.
suiviede I'algorithme
deliste,
L6 : le coûtassociéà I'ordonnancement
{Son
) t = : = n , t = t= N i
b) Paramètres
:
n e N : le nombred'itérations
ou essais
souhaités,
T e]0,1[ : le facteurmultiplicatifpermettant
depasserd'uneitérationà uneautre.
P, : la probabilité
aveclaquelleon retientunesolutionmoinsbonne.
c) Etapes:
I - Faire:
r68
avecmoyensde nansporl
Le problèmed'ordonnancement
\
+- T"To'
T <- To'
corïespondantau coût
2- Générerau hasardune solutionvoisine {t!u },=,=",,=u=N
L. La solution est voisine dansle sensoù on prendau hasarddeux travaux
successifs
et on inverseleur ordred'exécution.
3 - S i L < L 6 , a l o r sS i - S , u e t S i l ' - S | u , V j , k ; s i n o n g é n é r e r a u h a s a r d u n
t-i'
nombreÀ e [0.1].si À. .
, alorsSon<- S,*.
4- FaireT <- y T.
5- Si T > T1.alorsretournerà l'étape2. sinonarrêter,
Pour résoudrele problème d'ordonnancementpar Relaxation Lagrangienne,nous
avons d'abord relaxé le problème en introduisantles multiplicateursde LagrangeÀ et pr.
ensuiterésolule problèmerelaxépar programmationdynamique,puis résolule problèmedual
en utilisant la méthode d'Armijo et. enfin. construit un ordonnancementréalisablepar
Programmation
Dynamique,méthodessérielleset méthodedu recuitsimulé.
Cette approchea plusieurs avantages.En effet, elle permet de tenir compte de
l'indisponibilitedesmachineset desmoyensde transportpour I'exécutionde certainstravaux.
Elle permetaussi.et c'est le plus important,d'évaluerI'ordonnancement
réalisableobtenucar
la comparaisonde I'ordonnancement
réalisableavec la solutionduale est une maiorationde
I'erreurpar rapportà la valeuroptimaledu critère.
V.6 RésultatsNumériques
Après avoir implanté différentesprocéduresde résolution,à savoir I'approchede
relaxationlagrangienne,un algorithmede liste et la techniquedu recuit simulé. nous nous
proposonsde vérifier I'efficacitéde ces procéduresà traversdes exemplespratiques.Aussi.
considérons-nous
les exemplesd'applicationsuivants:
V.6.1ExempleI
Le premierexempleconsidéré
estI'exempleNol dansBlazewiczet al. (96),Il s'agit
d'ordonnancer
unjob-shopà troismachines.
quatretravauxà pondérations
égalesà I'unitéet
r69
avecmoyensdetransport
Le problèmed'ordonnancement
d'un problèmedejob-shopordinaireoù il n'y a
quatreAGV. Doncà priori,on estenprésence
que
pas de problèmede conflit sur les AGV. L'horizonde tempsest25 jours (c'est-à-dire
à partirde la
H:25 et quel'unité de tempsest le jour). Touteslesmachinessontdisponibles
date 1 pour tout I'horizon de temps.La datede disponibilitépour tousles travauxestégaleà
1.
Chaquetravail est composéde trois opérationsà réalisersur les trois machines.Les
sontdécritesdansle tableausuivant:
donnéesdu problèmed'ordonnancement
Opérations
Travaux
()jr
Jr
Jz
Mt,4
Ml3
Ml,'2
Mz, 1
Mt,4
Mr,4
Jl
M:,3
Mt, 3
J+
Mz,
Mz,2
Ms,3
Oj,
Oj,
Mt, I
TableV.l: Travauxde l'exemple1
Résultats
Le coût associéau problèmedual estLr474.99. La solutionréalisabletrouvée(en
appliquantseulementla ProgrammationDynamique),dansun tempsde résolutionde 0.45s
sur la stationAlpha, est représentée
dansla tableY.2. La valeurassociée
du critèreest de
oÂ.
J:475. Le gapdedualitéestalorsde2.10'3
Opérations
Travaux
J1
Jz
Jl
Ja
0jr
Oir
Qs
tr, tf
tr, tf
tr, tf
1,4
1 ,I
1,3
2,4
5
Er9
5,8
8,9
5,7
1 0 ,1 3
10,12
9,9
TableV.2 : Ordonnancement
de I'exempleI
La solution trouvée est optimale car on peut facilement la vérifier pour un problème de
cettetaille. En plus, elle est fournie dansun tempsfaible (0.a5s).
La représentationgraphiquesur le diagrammede Gantt donne une idée de la
répartitiondes machinesentre les différentesopérationsdans le temps.Pour les AGV, le
t70
Le problème d'ordonnancementavec moyens de transport
problèmene seposepaspourcetexemple,puisquele nombredesAGV estle mêmequecelui
destravaux.
Machines
Figure Y.2:Diagramme de Gantt représentantla solution de I'exemple I
V.6.2Exemple2
Nous traitons le même exemple que I'exempleprécédent,seulementcette fois-ci, le
nombre des AGV est réduit à trois. Donc, on ne peut pas lancer à l'exécution plus de trois
travaux à la fois. Les résultatstrouvéssont représentés
dansla table V.3.
Opérations
Travaux
Qr
Qz
Qr
t., tf
tr, tf
tr, tf
Jy
1,4
Jz
9,9
Jl
1,3
1,3
6,8
1 0 ,13
4,5
4,6
9, 1 0
t4,t7
6,8
9,9
Jq
Table V.3 : Ordonnancement
de I'exemple2
Le coût associéau problème dual est Ll:531.01. A partir de ce coût, on trouve la
solution admissible,représentéedans la table V.3. La solution est trouvéeau bout de 1.58set
t7l
avecmoyensde transport
Le problèmed'ordonnancement
elle correspondà une valeur de critère J : 534, d'où un gap de dualité égale à 0.560Â.Le
diagrammede Gantt de la solution trouvée est donné dans la figure V.3.
Ressources
Figure V.3 : Diagrammede Gantt représentant
la solutionde I'exemple 2
V.6.3 Exemple3
Le troisièmeexempleest généréaléatoirement.C'est encoreun exemplede problème
d'ordonnancementdans un job-shop ordinaire (sans les contraintesde moyens de transport)
mais de taille plus grande.On a dix travaux,dix AGV et cinq machines.La kè" opérationdu
travailj est réaliséesur la machineC+k-l) mod 5. La duréeopératoirede chaqueopérationet
la date échue de chaquetravail sont générésaléatoirementdes intervalles U,10] et [,25]
respectivement.
Les pondérationsdestravaux sont priseségalesà 1 et I'horizon de temps est
égalà 200.
Les donnéesde ce problème sont fournies par la table V.4, avec I'ordonnancement
admissibletrouvé.Les dateséchuesutiliséespour les travauxJ1à J16ont été 9,24,10,24,l,
13,7, I, l5 et 6, respectivement.
t72
Le problème d'ordonnancementavec moyens de transport
La solutiondu problèmedualde ce problèmeestLr:9319.92.Elle permetde trouver
dansla tableV.5, au bout de 15.53s.Le coût de cet ordonnancement
la solutionreprésentée
estdeJ:lll97, il en résulteun gapdedualitédeI'ordrede 16.7%o.
Travaux
Opérations
o:,
Qr
0jr
Qs
Mr,4
Q+
M+,5
Ms,3
Ma,6
Ml2
Mt,4
Ms,9
Mt,2
Mz,2
Mt,6
Mi,4
Jz
Jr
JÙ4l,''
Jq
Ma,5
Mz,8
Mr, I
M+, I
Ms,6
J5
Ms,3
Mt,7
Mz,3
Mz,3
Ms, I
Jo
Mt,8
Mz,9
Mlr b
Ma, E
Ms,
Jt
Mz,5
Mg,5
I\44,8
Ms,3
Mt, 9
Js
M:,3
M+,6
Ms,6
Mt,'2
Mz,8
Js
M+,3
Ms,7
Ms,2
Mt,4
Mz,4
Ml,6
Mt,6
Mz,5
Mg,5
Mt,6
Jl
Jro
Mr,4
Mz,8
Mq,4
Table V.4: Travaux de l'exemple 3
Qr
o:,
tt, tf
tr, tf
1,4
6, 13
J3
3 7 ,44
4,l0
45,45
1 1 ,1 1
Jq
t 2 ,l 6
J1,36
J5
1,3
Jo
30,37
5,11
4 8,56
Travaux
Jr
Jz
h
Js
l,5
27,31
1,3
Jq
1,3
6, 12
4,9
4,9
Jro
Opérations
2r,26
Qr
Q+
Qs
tr, tf
ts, tf
ts, tf
14,17
48,53
19,27
38,43
14,l 6
57,62
23,27
54,55
32,39
1 3 ,l 8
40,42
71,71
44,52
19,20
2r,28
12,15
7 ) 36
17,20
37,41
21,26
42,47
28,29
45,47
18,18
'A)
63,
28,30
56,59
30,31
48,51
19,22
TableV.5 : Ordonnancement
deI'exemple3
Remarquons
d'une part,quele gapde dualitéexprimantunemajorationde I'erreurpar
rapportà la solution optimaleaugmenteavec la taille du problèmeet, d'autre part, que le
temps de résolution devient plus important. En effet, sachantque I'espacede recherche
augmenteexponentiellement
avecla taille du problème,la probabilitéde trouverexactement
I'optimumdiminue.
173
Le problèmed'ordonnancement
avecmoyensdetransport
V,6,4Exemple4
Nous traitonsl'exempleprécédentavecun nombredesAGV réduità 3, Donc a priori,
nous ne pouvonspas lancerplus de trois travaux à la fois
Les donnéesde ce problème sont fournies par la table V.6 et I'ordonnancementest
donnédansla table V.7.
Opérations
Travaux
Oir
Oir
Urr
J1
Mt,4
Qn
Qs
Mr,4
N44,5
Jz
w,6
M s,2
J
Mz,8
Mr,7
Mz,8
Mr, I
Ma, I
M s ,9
Mt,2
Ja
M+.5
Ms.6
Mz,3
.T.
M.. 3
Mt.7
Mr,6
Mz,3
Ms,3
Mr,
Mz,2
Mr,4
Ml, I
Mt,8
Ml, 6
N44,8
Ms,I
'7
M4.8
Ms,3
Mr,9
Js
Mz,5
Mr, 3
Mz.9
Mr , 5
w.4
J6
Mq,6
M s,6
Mt, 2
Je
M+,
M s .2
Mt,4
Mz,4
Mz,8
Ms,6
Mr.7
M r .6
M:,5
Ml,5
Ir4r.0
Qa
t,tr
t,tr
l0
TableV.6: Travauxde I'exemple4
Travaux
Qr
O,t
(Jir
ts, tf
[t, tf
ts, tt
83,90
6 3 .6 3
4 1 ,4 l
60,65
Js
79.82
5 5 .6 2
3 4 ,4 0
55 59
3 4 ,36
Jo
,8
I"
Jq
1,5
1,3
6 4 .6 6
9,17
6,l0
4,9
67,69
66,71
46,48
1 8 ,) 7
I I, 18
1 0 ,l 5
72,75
Jro
26,
38
39,43
J1
J"
J3
Jq
Je
91,94
6 7. 7 2
42,50
39.4s
J
J
'
95,99
74
5 1 ,52
72,74
49,49
24,31
1 9 ,2 l
1 6 ,t 7
76,79
44,49
TableV.7 : Ordonnancement
de I'exemple4
174
Qs
100,102
8 3 ,8 6
5? 54
75,78
60,63
3 3 .3 3
,30
1 8 ,25
80,85
49,54
avecmoyensde tansport
Le problèmed'ordonnancement
La solutiondu problèmedual de ce problèmeest L1=19989.La solutionadmissible,
dansla table V.7, est trouvéeau bout de 42.15s.Elle correspondà une valeurde
représentée
critèrede J=29898.d'oùun gapde dualitéde I'ordre de33.1%.
Nous remarquonsque le gap de dualité exprimant une majoration de I'erreur par
rapport à la solution optimale, augmenteavec la taille du problème.C'est le cas aussipour le
tempsde résolution.En effet,I'espacede rechercheaugmenteexponentiellement
avecla taille
du problèmeet donc, la probabilitéde I'erreurdansle tempset dansI'espaceaugmente.
V.7 Vers une approcheintégrée
Nous avons utilisé I'approchede relaxationlagrangiennedans le cadreparticulier d'un
job-shopdanslequel:
Une machinene peuttraiterqu'uneopérationà la fois.
Une opérationne peut êtreréaliséeque sur une machineparticulière,
Les AGV sont identiqueset peuventtransporterles différentstravaux.
Ceci.en considérant.
commecritère,la minimisationde la sommedesretardspondérés.
Cependant.
cela ne restreintpasle domained'applicationde cetteapproche.En effet.il
peut s'étendreaux ateliersde type flow-shopdansle but d'optimiserun critèrequelconquetel
que le makespan.avecconsidération
du casgénéraloù :
- Chaqueopérationpeut êtreréaliséesur un ensemblede machines donc, I'ensemble
;
de variablesde décisionn'estplus restreintaux datesde début.il contientaussiles
machineschoisiespour traitertelle ou telle opération.
- Chaquemachinea une certainecapacitééventuellement
dépendante
despériodesdu
temps.
- Les AGV ne sont pas identiques: chaqueAGV a une certainecatégoriede travail
qu'il peut transporter.
- Le temps d'indisponibilitédes machinesentre le traitementd'une opérationet de
I'opérationsuivanteest fixé.
Le temps d'indisponibilitédes moyens de transportentre le déchargementd'un
travailet le chargementdu travail suivantestfixé.
t'75
Le problèmed'ordonnancement
avecmoyensde transport
V.8 Conclusion
L'objectif de ce chapitrea été l'analysedes problèmesd'ordonnancements
dans les
ateliersflexiblesdu type job-shop.en tenantcomptedes contraintesdes moyensde transporr.
Aprèsavoir modélisémathématiquement
le problème,nous avonsproposéune méthodologie
de résolution baséesur I'approchede RelaxationLagrangienne,en prenant comme critère la
minimisationde la sommedesretardspondérés.L'utilisation de cetteapprochesuppose:
o la relaxationdes contraintesde capacitédes ressourcesen machineset en moyens
de transporten introduisantles multiplicateursde LagrangeÀ et p.
o La résolutiondu problèmerelaxé en le décomposantà des sous-problèmes
dont
chacunestrésolupar Programmation
Dynamique.
o La résolutiondu problèmedual en utilisantla plus récenredesméthodesd'Armiio.
La solution fournie par cette méthode est non nécessairement
réalisable: aussi.
cherchons-nousà construire une solution admissible en utilisant la Programmation
D1'namique.
une méthodede liste et. ér'entuellement.
la techniquedu recuit simulé.
Enfin. la dernièrepartiede ce paragraphe
a rer'êtuun caractèrepratique.Nous a\rons
implantél'approchede RelaxationLagrangienne
et traité desexemplesd'atelierspour mieux
en illustrerI'efficacité.
En guise de conclusion.nous avons examinéla possibilitéde généralisation
de cette
approche.en jouant soit sur la naturedesressources.
soit sur le type desateliers.
176
Conclusion
généra1e
Conclusiongénérale
Dans cettethèse,nous avonsintroduit les job-shopsMulti-Ressources
avec Blocage
(ob-shops MRB) pour prendre en compte la variété de ressourcesimpliquées dans une
productionet le phénomènede blocage.Lesjob-shopsMRB sontune extensiondesjob-shops
classiques
enrichisde deux caractéristiques
nouvelles: les opérationsà multi-ressources
et la
propriété"Reteniret Attendre" potu la successiondes opérations.Nous avonsmontré que les
job-shops MRB constituentun cas général pour étudier I'ordonnancementdes systèmesde
production.
Nous avons conduit. dans le chapitreII, une étude détailléede la complexité du
problèmed'ordonnancement
desjob-shopsMRB en nous appul,antsur des résultatsexistants
pour des cas classiqueset en dér'eloppantdes résultatsnouveauxpour les autrescas. Cette
érudemontre que I'ordonnancement
des job-shopsMRB est un problème difficile car il
devienttrès vite NP-difficile au sensfort. Cette NP-complétudeconditionnela suite de la
thèse.
Avant de passerà la résolutiondu problèmed'ordonnancement
d'un job-shop MRB
général.nous a\:onsabordéla résolutiondu problèmed'ordonnancement
d'unjob-shopMRB
dans lequel toutes les ressourcessonl différentes.c'est-à-direun Systèmeà Ressources
Unitaires (SRU). Nous avons montré que. pour les systèmessimples, les contraintesde
précédence
et de capacitédes ressources
impliquentI'absencede blocage.Les Rdp ont été
utilisés pour modéliserun SRU et l'ordonnancement,
ce qui a permis la vérification de
blocagepour un état donné et la vérificationde la faisabilitéd'un ordonnancement
donxé.
Ensuite.nousavonsproposédeuxméthodesheuristiques
gloutonnes,
utilisantles RdP pour la
vérification de blocage, pour obtenir des ordonnancements
sans blocage. Nous avons
égalementproposéune méthodefondéesur les systèmessimples"équivalents"pour obtenir
I'ordonnancement
d'un SRU général.
Dans le chapitreIV. nous avonsétendules méthodesproposéesdans le chapitreIII.
pour construire,dansce cas, I'ordonnancement
d'un job-shopMRB. Comme dans les SRU.
nous avons démontré que les contraintes de précédenceet de capacité des ressources
impliquentI'absencede blocagepour les systèmessimples.Nous avonsmontré.à I'aidedes
modèles RdP généralisésdes job-shops MRB. que la vérification de blocage devienr
combinatoirepow lesjob-shopsMRB généraux.En tenantcomptede cettecomplèxité,nous
avonsproposéune méthodepour construireun ordonnancement
d'un job-shop MRB général
passant
en
par son systèmesimple"équivalent".
Dans le chapitreV, nous nous sommeslimités à une classeparticulièredesjob-shops
M
. les job-shopsclassiquesmais dont chaquetravail nécessiteun moyen de transport
(AGV) tout au long de sa réalisation.L'objectif était d'étudierI'efficacitéde la méthode
Relaxation Lagrangiennepotu I'ordonnancementdes job-shops MRB, en suivanr la
méthodologieproposéepar Luh et Hoitomt (93).Nous avonsproposédesméthodesefficaces
pour la résolutiondu problèmerelaxé.la résolutiondu problèmedual et la constructiond'un
ordonnancement
admissible
t7'7
Conclusion
eénérale
et les temps de
Le résultatsnumériquesdes chapitresIII, IV et V sont encourageants
calculdesméthodesproposéessontfaibles.
Au vu des résultats de cette thèse, une première extension intéressantepour la
recherchefuture est la prise en compte de gammesde produits non linéairescomprenantdes
opérationsd'assemblageetlou désassemblage.
Une auûe recherchefuture intéressanteest la
prise en compte de la flexibilité desressourceset des gammesde produits.Le développement
d'une méthode Relaxation Lagrangiennepour construire I'ordonnancementd'un job-shop
MRB quelconqueest une extensionnaturelledu chapitreV.
Plus largement,il serait intéressantd'étudierI'ordonnancement
des RdP généraui en
suivantla méthodologiedéveloppéedanscettethèse.Les résultatsde cettethèsemontrentque
les RdP sont un bon outil pour la vérification de blocage.Par contre,leur utilisation dans la
recherched'ordonnancements
efficacesreste ouverte. Comme nous I'avons constatédans le
chapitreI. les RdP onl prouvé leur efficacité dans la prévention,la détectionet l'élimination
de blocages.Une recherchefurure intéressanteserait la prise en compte de la politique de
prér'entionou d'éliminationde blocage,dansI'ordonnancement
d'un RdP général.
178
Bibliographie
BIBLIOGRAPHIE
{Aarts et Korst. 89) : E. H. L. Aans. J. H. M. Korst. Slzulqted Annealing and Boltzmann Machines, Wiley,
Chichester.
(Adams et al., 88) : J. Adams. E Balas, D. Zawak. "The Shifting Bonleneck hocedure for Job-Shop
Scheduling".
Managemenr
Science,34,pp.39l-401.
(Antony, 65) : R N. Antony. Planning and Control Systems. A Framework
for Analysrs,Harvard Universiq,
Press.Cambridge,Massachusets,
USA.
B
(Baccellietal.,92):F Baccelli,G Cohen.B Gaujal "RecursiveEquationsandBasicPropertiesof Trmedpetri
Nets", Drscret EventDynamic Sl,stems Theoryand ApplicationsI,pp.415-439.
(Baker. 14) : K R Baker lntroduction to sequencingand scheduring.wirey.
(Balaset Vazacopoulos.
95) : E Balas.A Vazacopoulos,
"Guidedlocal searchwith shiftine bottleneckfor iob
shopscheduling".ManagemenrScienceResearchRepon#MSRR-609.
(Banaszaket Ifuogh. 90) Z Banaszak.B H Krogh "Deadlock Avoidance in Flexible Manufacruring
S'stems
u ith Concurrently'
CompetingProcessFlou's".IEEE Transactions
on Robotics
ond Automation.vol.6. No 6
(Barkaouiet Ben Abdallah. 94) : K. Barkaoui,I Ben Abdallah. "An Efficient Deadlock
Avoidance Connol
Policl in FMS Using Srn:cruralAnalisysof Peni Nets". IEEE InternationalConferenceon Systems.
Man. and
Cy'bernetics.
SanAntonio.Texas.USA.
(Benassl. 87) : j Bénass1La gestiondeproduction,Hermes.paris.
(Binan et Hax. 71) G R. Bitran. A C Hæt. "on the designof Hierarchicalhoduction planning
Systems',.
D e c t s o nS c i e n c e sv.o l 8 . N o l .
( B l a z e u ' i c z e t a l . , 9 6 ) : J . B l a z e u i c z . W . D o m s c h kP
ee
, Es c h" T h e j o b s h o p s c h e d u l i n g p r o b l e m :
Conventional
'
andneu solutiontechniques". EuropeanJournal ofoperational Research,ô:, pp l-33.
(Bracker et Chapman.85) : W. E. Bracker. w. Chapman "Optimization of a programable
hoist using lnear
programng" , PrintedCircuit Fabrication,vol. 8, pp. 39-42.
(Brucker et KrËimer,95) : P. Brucker, A. KrËimer."Shop scheduhngproblem with multiprocessor
tasks on
dedicatedprocessors",
Annals of OperationResearch,57,pp. 13-27.
c
(Campbell
et al..70) : H, G. Campbell.
R. A. Dudeck,
M L. Smith,"A Hewistique
Algorithmfor then-Job.m.
machine
sequencing
problem
", Management
Science,
l6- I0, pp. 630-63j
.
(Camus.97) : H. Camus."Conduite
de Systèmes
Flexibles
de Production
Manufacturière
par Composition
de
RégimesPermanents
Cycliques: Modélisation
et Evaluationde Performances
à I'aidedej Réseauxde peni".
ThèsedeDoctorar
de I'universiré
desSciences
et Technologies
deLille.France.
(Carlier.82) : J Carlier "The one-machine
sequencing
problem".European
Journalof OperationalResearch.
I t. pp 4?-41
179
Bibliographie
(Carlier et Chrétienne,88) ; J. Carlier, P. Chrétienne.Problèmesd'ordonnancementmodélisation/ complexité/
algorithmes. Masson.Paris.
(Carlier et Pinson. 89) : J Carlier, E. Pinson "An Algorithm for solving the Job-ShopProblem", Managemenl
Science,vol.35,pp. 164-176.
(Caux et al., 93) : C Caux, H. Pieneval,M. C Portmann."Les algorithmesgénétiqueset leur applicationaux
problèmesd' ordomancement",Re,-ue
API I, 29, pp. I 5 I - I 6 I .
(Changet Liao.94) : S -C. Chang,D.-Y. Liao. "SchedulingFlexibleFlow Shopswith No SetupEffeca",IEEE
Transactions
on Roboticsand Automation.vol. 10,No. 2, pp. l12-122
(Chen et al., 94) : H. Chen, C. Chu, J.-M. Proth "Cyclic Schedulingof a hoist time window constaints".
Rapportde Recherche.
No, 2307,INNA-Lonaine, France.
(Cho et al., 95) : H. Cho, T K. Kumaran,R. A. Wysk. "Graph-Theoretic
DeadlockDetectionand Resolutionfor
FlexibleManufacturingSystems",IEEE Transactions
on RoboticsandAutomation,vol.I l, No. 3,pp.413-421.
(Chu et Xie. 97) : F. Chu. X. -L Xie "Deadlock Analysis of Peni Nets Using Siphonsand Maùematical
Programming".IEEETransactionson Roboticsand Auromation,vol I3, No. 6,pp.793-80a.
(Coffrnanetal .T l):E
N o 2 . p p .6 7 - 7 8 .
G CoffrnanJr.. M. Elphiek,A. Shoshani"Sy,stem
deadlocks",Comput Surueys.vol 3.
(Collan-Dutilleuler Denat. 97) : S. Collan-Dutilleul.J -P. Denat "P-Time Petri nets and robust control of
electroplating
linesusing severalhoists".
IFAC-IFIP-IMACS-CIS'97,Belfon, France,pp. 501-506.
(Czer*'inskiet Luh. 94) : C. S Czerwinski.P B Luh "schedulingProductswith Bills of MaterialsUsing an
ImprovedLagrangianRelaxationTechnique".IEEE Transactions
on Roboticsand Automation,vol. 10,No. 2.
D
( D a l l e r ye t a l . 9 0 ) : Y D a l l e n , R D a v i d .X . - L . X i e " A p p r o x i m a t e
A n a l y s i so f T r a n s f e L
r i n e sw i t h U n r e l i a b l e
Machinesand Finite Buffers",IEEE Transactions
on AutomaticControl.vol. 34, pp. 9a3-953.
(Dalle4 et Gershwin.92) : Y Daller;', S. B. Gershu'rn."ManufacturingFlou, Line S5,51srns
: A Revieu of
Models and AnalyticalResults".QueueingSystems,
vol. 12.
(Damasceno
et Xie, 98-a) : B C. Damasceno,
X. Xie. "Deadlock-free
schedulingof ManufacturingSystemsr+'ith
Multiples Resources",Proc. INCOM 98 ("9th Symposium on lnformation Control rn Manufacrururg"),MetzN a n c r .F r a n c e .
(Damascenoe1 Xie, 98-b) : B c. Damasceno.X. Xie."lntegrationof schedulingand deadlockavoidanceof
job-shopswith multiplesresources",
generalized
Proc. EURo xvl (l6th. EuropeanConferenceon Operational
Research),
Brussel,
Belgium
(Damasceno
et Xie, 98-c) : B. c. Damasceno,
X. Xie. "Scheduling
and DeadlockAvoidanceof a Flexible
ManufacruringSystem", Proc. IEEE-SMC 98 (IEEE htemational Conferenceon Systems.Man and
Cybernetics),
SanDiego,USA
(Damasceno
et Xie. 99) : B. C. Damasceno,
X. Xie, "Deadlock-free
Scheduling
of Manufacturing
Systems
Using
PetriNetsandDynamichogramming",
accepted
to l4d'IFACworld congrrss.
china.
(Dantiziget al . 54) : G. B Dantizig,D R Fulkerson,
S. M. Johnson"Solutionof a Large-Scale
Travelin,eSalesman
Problem".
Operations
vol.2,pp.393-410.
Research,
(Dantizig.63) : G B. DantizigLinearProgramming
and Extensions,
Princeton
UniversiqPress,hinceton.
Neu Jerser'.
USA.
t80
(Dauzère-Pérès
et Paulli.97) : S Dauzère-Pérès,
J. Paulli."An integratedapproachfor modehngand solvingthe
job-shopschedulurg
multiprocessor
problemusingtabusearch",Annalsof OperationalResearch.70,pp.
-qeneral
2 8I - 3 0 6 .
(Dauzère-Pérès
et al . 98) : S Dauzère-Pérès.
W Roux, J. B. Lasserre."Multi-ressource
shop schedulingu'ith
ressourceflexibiliry", EuropeanJournal ofoperational Reseorch,vol. 107,No.2, pp. 2gg-305.
(Di Cesareet a1..93);F. Di Cesare,G, Harhalakis,J. -M. hottr, M. Silva.F. Vemadat.Practiceof petri ltietstn
Manufacturing,Chapman& Hall.
(Drozdou,ski.
96) : M Drozdowski"scheduhng
Multiprocessor
tasks- An overview", European Journal of
Operational
Researc
h, 94,pp.215-230.
(Du et Leung.89) : J Du, J. Y. -T. Leung."Complexityof Scheduling
ParallelTaskSystems",
SIAMJ Dtsc
M a t h ,v o l 2 . N o 4 , p p . 4 7 3 4 8 7 .
E
(Elkarama.98) : L Elkarama "ordonnancementde la productiond'ateliersflexibles en tenant comDte
des
movensde transpon".Projerde fin d'érudes,
avanl-projetMACSI, INRIA-Lonaine,Metz. France
(Ezpeleta
e t a 1 , . 9 , <:;J E z p e l e t aJ. M . C o l o m .J M a r l i n e z ' A P e t r in e r B a s e dD e a d l o c kp r e v e n r i o n
polifl for
FlexibleManufacturtngSvstems".IEEE Transaclions
on Robotics
and Automation,vol l l. No. 2.pp 173-1g4.
F
( F a n t i e t a l . 9 1 ) . M P Fanti B M a i o n e .S . M a s c o l o ,B T u c h i a n o ."Event-Based
FeedbackControl for
D e a d l o c kA r o i d a n c ei n F l e x i b l eProductionSi,stems",IEEE Transactionson Roboticsand .4utontatior.r,ol
13.
No 3. pp 317-363
G
(Garel et Johnson.
79) M R Gare1. D. S.Johnson,
Computers
andIntractibitiO,A Guideto the Theorlof |tpConplereness.
Freeman.
SanFrancisco
(Gendreau
et al. 94) : M Gendreau.
A. Hertz,G. Laporte."A TabuSearchAlgotithmfor the VehicleRoutrng
Problem".
Management
Science.40,
pp. 1276-1290
(Gershrrin.89):S B. Gershwin,
"Hierarchical
Flow Control:A Framework
for Scheduling
andplanning
proc IEEE.77(l),pp.195-209.
DiscretEventsin Manufacruring
Sy'stems,,,
(Giard.88): V. Giard.Gestion
paris.2". édition.
dela Production,
Economica,
(Gilmoreet Gomor)',64) : P. C. Gilmore,R. E. Gomory."sequency
a One-State-variable
Machine;A Solvable
caseof theTravellurg
Salesman
Problem",
operations
Research,
12,pp.655-679.
(Glover.86) : F Glover'"Futurepathsfor integerprogramming
andlinks for artificialintelligence".
Compurers
& Operarions
Research.
I 3, pp.533-549.
(Gloveret al . 92) . F. Glover.E Taillard,D de Wena."A User'sGuidto Tabusearch"
. Annalsof Operations
Research.
al. pp.3-28
(Gomory,58) : R' E. Gomorl "Outlineof an Algorithmfor lntegerSolutionsro Linearhograms".
Bulletinof
the.4nericqn themotical
Sociery..vol
64.pp.275-278.
(GOThA.93) : GOThA. "Problèmes
I OperationalResearch.
d'Ordonnancement",
Recherche
Opérationnelle
v o l 2 7 .N o l . p p 7 7 - 1 5 0 .
l8r
Bibliographie
(Hall et Sriskandarajah,
"A Surveyof MachLneSchedulingProblemswith
96) : N. G Hall, C. Sriskandarajah.
vol. 44, No. 3,
blockingand no-waitin Process".OperationsResearch,
(Hall et a!..97) : N. G. Hall, H Kamoun. C. Sriskandarajah"Schedulingin RoboticCells: Classification.
rwo
and threeMachineCells",OperationsResearch,vol.45, No. 3.
( H a x e t M e a l . 7 5 ) : A C H a x , H . C . M e a l " H i e r a r c h i c ai nl t e g r a t i o o
n f p r o d u c t i o np l a m i n g a n d s c h e d u h n g " .
Studiesin ManagementSciences,Logistics,vol I, pp. 53-69
(Holland,75) :J. H Holland Adaptationin Natural and Artificial S1,stems,
the Universityof Michigan press:
Am Arbor, ML
(Hoogeveenet al., 94) : J A. Hoogeveen,S, L. Van de Velde. B Veltman. "Complexity of scheduling
muhiprocessor
tasksu'ith prespecifiedprocessorallocations".
DiscreteAppliedMathematics,55,pages259-272.
1994
(Hsieh et Chang. 94) : F -S Hsieh. S. -C. Chang "Dispatching-DrivenDeadlock Avoidance Confroller
Synthesisfor FlexibleManufacturingSystems.IEEE Transactionson Roboticsand Automation,vol. 10, No 2.
pp 196-209
J
( J e n g e t a .l 9 6 l : M D J e n g . SC C h e n . C S L i n . " A S e a r c h A p p r o a c h b a s e d o n PNe en ti T h e o r y f o r F M S
S c h e d u l i n g "l .3 ' I F A C B ' o r l d C o n g r e s sS. a nF r a n c i s c oC. A . U S A , v o l B , p p 5 5 - 6 0 .
K
(Kirkpatricket al . 83) : S- Kirkparrick.C D GelattJr. M P Vecchi."Optimizationby' SimulatedAnneahng",
S c i e n c er.. o l 2 2 0 .N o 4 5 9 8
(Ku et Karim.90):H -M, Ku. I Kanm "Completion
T i m e A l g o r i t h m sf o r S e r i a lM u l t i p r o d u cB
t a t c hP r o c e s s e s
u i t h S h a r e dS t o r a g e "C. o m p u r e rC
s h e m E n g r . v o l 1 4 .N o . l . p p 4 9 - 6 9
(Kusiac.90) : A Kusiak IntelligentManufacturingS1,stems.
EnglewoodClifs, FrenticeHall. Neu'Jersey.USA
L
(Landueber et Robeftson.78) : L H Landweber.E L Robertson,"hoperties of Conflit-Freeand Persistent
PetriNets".Journal of .4ssociation
for ComputingMachinen. vol. 25, No. 3, pp 352-364
(Laurière. 87) : J -L. Laurière Intelligence Artificielle rësolution de problèmespar l'Homme et la machine.
Evrolles
mr s e q u e n c i nj o
( L a u ' l e r . 7 7 ). E L . L a w l e r ," A ' p s e u d o p o l y ' n o m i a l ' a l g o r i t hf o
g b s t o m r n r m i z er o r a lt a r d i n e s s " .
A n n D i s u e r M a t h , l . p p 3 3l - 3 4 2 .
(Lee et Di Cesare,94-a) : D. Y Lee, F. Di Cesare" SchedulingFlexibleManufacturingSystemsusingPetrinets
and HeuristicSearch".IEEE Transactons
on Roboticsand Automation.vol.10,No. 2.
(Lee et Di Cesare.94-b) : D Y. Lee. F. Di Cesare." IntegratedSchedulingof FlexibleManufactunngSystems
Emplof ing AutomatedGuidedVehicles".IEEETronsactonson IndustrialElectronics,vol 41. No 6
( L e i e t W a n g .8 9 ) : L L e i , T . W a n g ." O n t h e o p t i m a lc y c l i c s c h e d u l eosf s i n g l eh o i s te l e c n o p l a t i npgr o c e s s e s ' ' .
u'orkingpaper# 89-0006.RutgersUniversin,
r82
Bibliographie
(Le Moal et Tarondeau'79):P.Le Moal. J C. Tarondeau.
"Un défi à la fonctionproduction".revuefrançaisede
gestion,pp. 9-14.
(Lenstra.83):J K. Lenstra "lnteger ProgrammLngwith fuied number of variables",Mathemetics
of Operation
Research.
vol. 8, pp. 538-548.
(Lensrraet al.' 77) : J K Lenstra.A H. G. Rinnooy Kan, P. Brucker "Complexity
Machrne Scheduling
Problems".Ann Disuete Math, l, pp. 343-362
(Ltn,64) : S.Lin "ComputerSolutionsof the TravelingSalesmanhoblem", Bell
Systems
TechnicalJournal,44.
pp.2245-2269.
(Luh et Hoitomt' 93) : P. B. Luh, D J. Hoitomt. " Schedulrngof Manufacturing
SystemsUsing the Lagrangian
RelaxationTechnique", IEEE Transactionson Automatic Coirrol. vol 3g, No. i.
(Lund1' et Mees. 86) : M Lundy', A. Mees. "Convergence of Annealing
Algorithm ", Mathematical
Programming.34, pp 111-124.
M
(Manieret Baptiste.94) . M -A, Manier.P Baptiste,"Eut de I'art: ordonnancement
de robotsde manutention
en galvanoplastie",
.4PII . vol. 28. pp. 7-35.
(lr4inoux.83) : M Minoux. ProgrammalionMathématique théorieet algorithme.ç.
Dunod. paris.
(Murata.89) : T Murata "Perri Nets : Properties.Anall,sisand Applicat ions" proceedings
.
of IEEE, vol. 77, No.
a.pp 541-580
P
(Philipsel Unger. '16)' L W Philips.P. S Unger ''Mathematicalprograming
solutionof a hoist schedulurg
program".AIIE Transaclions.
vol. 8. No 2, pp.219_225
(Polak' 9l) : E Polak optimization - Al-eorithmsand
ConsistentApproximarions,'.
Applied Mathemarical
^"
- vol. 124.ed. SprrngerSciences
Verlag,USA.
(Ponset Van rù'assenhove.
82) : c. N. Potts.L, N. Van wassenlove."A decomposition
algorithmfor the single
machile total tardinessproblem",OperartonsResearchLett., pp. 177_lgl
(Proth et al'. 97) : J. -M. Proth, L -M. Wang. X. Xie. "A Class
of Peni Nets for ManufacruringSy,stem
Integration",IEEE Transactons
on Robotics
and Automation.vol.l3, No. 3, pp 3 17-326.
(ProthetXie):J.-M Proth,X Xie.Petri l'lets-AToot
forDesignandManagementofManufacturingSysrems.
J o h nW i l e 1 , & S o n s
R
(Ramasu'any
et Joshi, 96) : S. E, Ramaswany,S. B. Joshi. " Deadlock-freeSchedulesfor
Automated
Manufacturing
Workstations",lEEE
Transactons
on Robotics
andAutomatjon,
vol 12,No. 3.
(Ramchandani.
74) c Ramchandani"Analysisof Asynchronou
RapponTechrique
No 120.Laboratory
for Computer
Science,
MIT,
urrenrsystemsusing petri Nets,'.
dge,MA.
(Reveliotis
et al.' 97) : S. A Reveliotis,
M. A. Lawley,P, M. Ferreira."polynomial-Complexiry,
Deadlock
AvoidancePoliciesfor Sequential
Ressource
AllocationSvstems".
IEEE Transactions
on Robotics
and
Aurontation.
vol 42.No. 10.pp.t3aa-t357
.
r83
Bibliographie
(fuchard. 97) : P. fuchard. " Contribution des réseaux de Petri à l'étude de problèmes de recherche
Thèsede Docloratde I'Universitéde Tours,France.
opérationnelle".
(Rinnooy Kan. 76) : A. H. G. R:nnooy Kan Machine SchedulingProblems Classification,Complexity and
Computations.Nijhoff, The Hague.
(fuppin, 93) : D. W. T. Rippin. "Batch ProcessSystemsEngineering:A Retrospectiveand ProspectiveReview",
ComputersChim Engr., vol. 17.Suppl.,pp. Sl-S13.
S
(Sahinidiset Grossmann,9l):N. V. Sahinidis,l E. Grossmann.
"Reformulationof MultiperiodMilp Models for
Planningand Schedulingof ChemicalProcess",
ComputersChem.Engr.,vol. 15,No.4, pp. 255-272.
-, (Savi.94):V. M. Savi. "Conceptionpréluninairedes systèmesde productionà I'aide des réseauxde Petri:
- évaluationdesperformances".
Thèsede Doctoratde I'Universitéde Metz, France.
(Sawik, 90) : T. Sawik "Modelling and schedulingof a FlexibleManufacruringSystem",EuropeanJournal of
OperarionalResearch.45. pp. 77-190.
(Schrageet Baker.78):L Schrage.K R. Baker "Dynamicprogrammrrgsolutionof sequencing
problemswith
precedence
constraints".
OperationsResearch.26. pp. 444-449.
( S e t h ie t a l , 9 2 ) : S , P S e t h i .C . S r i s k a n d a r a j aG
h . S o r g e rJ. . B l a z e u , i c zW
. . K u b i a k " S e q u e n c i nogf P a n sa n d
Robot Moves in a Robotic Cell". InternationalJournal of Flexible Manufacturing S1,stems.4.
pp. 33 I -358.
(ShapiroetNuttle.88):G
W S h a p i r o . HL W N u n l e " H o i s t s c h e d u l o n g f o r a P C B e l e c t r o p l a t n g f a c i l i q " .
IIE Transactions.
vol, 20, No 2. pp I 5'7-161
.
( S i f a k i s . 7 8 ): J S i f a k i s " U s eo f P e t r iN e t sf o r P e r f o r m a n cEev a l u a t i o n "A, c t a C y , b e r n evl .o l 4 , N o . 2 . p p 1 8 5 202
(Sifakis,80) : J Sifakis "PerformanceEvaluationof Systemsusing Petri Nets", Net Theory'and Application.
Lecture,\'otesin ContputerScience.Springer-Verlag.
Berlin FRG.
(Slot et Vliet. 94) : P Slot, M van Vliet. "Analyical Model for FMS DesignOptrmization: A Survev". Iàe
lnternational Journal of Flexible Manufacturing.!i,slens,6. pp.209-233.
(Sorianoet Gendreau.97) : P Soriano.M Gendreau"Fondements
et Applicationsdes Méthodesde Recherche
avecTabous".RechercheOpérationnelle/Operations
Research,vol. 3l, No. 2, pp 133-159.
(Steck. 85) : K E. Steck "Design, PIannrng.Scheduling,and Connol hoblems of Flexible ManufacrurLng
S),stems".
Annals of OperationsResearch,3,pp. 3-12.
T
(Tomastik et al., 96) : R N Tomastik.P. B. Luh. G. Liu "SchedulingFlexible ManufacturingSystemsfor
A p p a r e lP r o d u c t i o n "I E
, E E T r a n s a c l i o nosn R o b o t i c sa n d A u t o m a t i o n , v o l . l 2N
. o. 5,pp.189-799.
V
(Van Larhovenet al.. 92): P. J. M. Van Laarhoven,
E. H L. Aarts,J. K. Lenstra."Job-Shop
Scheduline
bv
Simulated
Annealing",
Research,
vol.40,No. l, pp. I l3-125.
Operations
(Vignieret al..97) : A. Vignier.J.-C.Billault.C. houst. "Lesproblèmes
de flow-shophybrides: étarde I'art".
presse.1997.
RAIRO-ROsous
184
Bibliographie
(Viswanaradhamet al.. 90) : N Viswanaradham.Y. Narahari,T. L Johnson."Deadlock preventionand
Deadlock Avoidance in Flexible ManufacturingSystemsUsing Petri net Models". IEEE Transactions on
Roboticsand .Aulomation.
vol.6. No. 6.
w
(Wang.95) : L. Wang, "GestionHiérarchisée
de Systèmesde hoduction Discrets:Une ApprocheBaséesur les
Réseauxde Petri",Thèsede Doctoratde I'Universitéde Metz, France.
('v\tanget Xie, 96) : L. -M. Wang. X. -L. Xie. "Modular modeling usrng Petri nets", IEEE Transactionson
Roboticsand.4uromation,
vol 12, pp. 800-809.
x
(Xie. 89) : X, Xie. "Connôle Hierarchiqued'un Systèmede Productionsoumisà Pernrrbations",
Thèse de
Doctoratde I'Universitéde Nancy I, France.
(Xie. 9--s): X Xie "Analy'se.Conceptionet Connôle des Systèmesde hoduction", Habilirarionà Diriser des
R e c h e r c h eesn S c i e n c e sU. n i v e r s i t éd e M e t z .F r a n c e .
( X i n g e t a l . 9 6 ) : K Y X r n g . B S H u . H X C h e n " D e a d l o c k A v o i d a n c e P o l i c y , f o rN
P ee rnM
i odelingof
FlexibleManufacrurin-g
Srstemsu'ith SharedResources".
IEEE Transactions
on Automaticand Control.vol. at.
No 2. pp 289-295.
(Xiong et Zhou. 98) : H Xiong. M C Zhou "schedulingof Semiconducror
resrfaciliry Perrinersand Hybrid
HeuristicSearch".IEEE Transaclionson semiconduclor
Manufacturirzg,vol I l. No 3. pp 38a-393.
z
(Zuberek. 95) : W. M. Zuberek "Applicarion of timed Pefri nets to modeling and anall,sisof flexible
manufacruringcells".TechnicalRepon 49503.Departmentof ComputerScience.Memorial Universiw of Neu
F o u n d l a n dS. r J o h n ' s N
. F. Canada
r85
LINIVERSITEDE METZ
AVIS DUJURY SURLA REPRODUCTION
DE LA THESESOUTENUE
N o m e t P r é n o md e l ' a u t e u r :
Mademoiselle
CAMARGO DAMASCENO
Bérénice
Titre de la thèse: <<Ordonnancement
dess1'stèmes
de productionmultiressources
avecla priseen comptede blocages.
))
D a t e d e s o u t e n a n c :e
l e 4 m a r s1 , 9 9 9
(,, c (Bc,ct>T-
P r é s i d e nd
t u jurl' :
N{embres
du jurr': N{.N{,BAPTISTE,DALLERY,DAUZERE-PERES,
GENTINA,
PER-E,IRA
DE OLIVEIRA..PROUSTet XIE
R e p r o d u c t i o nd e I a t h è s es o u t e n u e:
,X thèsepou\,antêtre reproduiteen l'état
!
t h è s en e p o u v a n t ê t r e r e p r o d u i t e
!
thèsepouvant être reproduiteaprèscorrectionssuggérées
au cours de la
soutenance
Le Président
du Jury
C o r r e c t i o nes f f e c r u é el es,
deThèse
I7t I ll7 7 îf
- fÊfi ES
4,/i-r, 1' ,^'
Résumé
L'automatisationdes systèmesde productionconduit à I'utilisationd'une grande
variété de ressourcesde fabrication ; un aspectlonglempsnégligé dans la planification et
I'ordonnancement
de productionet qui poseun problèmede coordinationde I'ensemblede
ressources.Dans ce travail, nous proposonsune approcheintégréed'ordonnancementqui
prend en compte simultanémentcettevariétéde ressources
et le problèmede blocage.Pour
cela, nous proposons un modèle d'ordonnancement,appelé job-shop Multi-Ressoruces
avec Blocage ou job-shop MRB. Les deux caractéristiques
saillantesdu modèle que nous
proposonssont : (i) les opérationsnécessitantsimultanémentdes ressourcesde différents
types que nous appelonsopérationsà ressourcesmultiples ; (ii) la contrainte "retenir et
attendre"pour le passaged'une opérationà I'opérationsuivantedu même travail, c'est-àdire que les ressourcesnécessairespour une opération ne sont libérées qu'au début de
I'opérationsuivante.Nous montronsque le problèmeest fortementcombinatoire.Pour
cela. nous proposons des méthodesheuristiques,utilisant les Réseauxde Petri pour la
détection de blocage et la programmation dynamique, pour construire des
ordonnancementssans blocage efficaces dans un temps raisonnable. Enfin, nous
considéronsun cas particulier: les job-shopsavec moyensde transportet proposonsune
méthodede relaxationLagrangiennepour construiredes ordonnancements
efficaces.Les
résultatsnumériquesobtenusanestenlI'efficacitédesméthodesproposées.
Nlots-clés:
Ordonnancement.S1'stèmesde Production.Opérationsà RessourcesMultiples.
Réseauxde Petri.Blocage.
Abstract
This work is motived bi the extensiveuse of a wide range of manufacturing
resourcesin today'sproductions),stems.
We proposean integratedapproachfor schedulin!
and deadlockavoidanceof suchsystems.For this purpose,we proposea schedulingmodei.
calledjob-shop with Multiple Resourcesand Blocking. In this model. an operationmay
needmore than one resourceand it is calledMulti-Resoucesoperation.Furt-her,upon the
completionof an operationof the samejob cannotbe releasedand the remainingresources
are releasedat the beginning of the next operation.The later characteristicis called "hold
u'hile waiting" properfy. The schedulingproblem consistsin sequencythe operationssuch
that deadlocksare avoided and the total duration, i.e. makespan,is minimiied. We prove
that the problem is strongly NP-Hard. This leadsus to proposeeffrcientheuristic .eihod,
to constructdeadlock-freeschedules.Finally, we considera class of job-shops with
Multiple Resowcesand Blocking : the job-shopswith AGV. A LagrangienRelaxation
approachis proposedto solvethe schedulingproblem.Numericalresultsare given to show
the efficiencl'the proposedmethods.
Key'words
Scheduling, Manufacturing Syslems, Multi-ResourcesOperations,Petri Nets.
Deadlock.