www.fgks.org   »   [go: up one dir, main page]

Academia.eduAcademia.edu
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.