HAL Id: inria-00000071
https://hal.inria.fr/inria-00000071
Submitted on 26 May 2005
HAL is a multi-disciplinary open access archive for the deposit and dissemination of sci- entific research documents, whether they are pub- lished 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.
Ordonnancement de véhicules: une approche par recherche locale à grand voisinage
Bertrand Estellon, Frédéric Gardi, Karim Nouioua
To cite this version:
Bertrand Estellon, Frédéric Gardi, Karim Nouioua. Ordonnancement de véhicules: une approche
par recherche locale à grand voisinage. Premières Journées Francophones de Programmation par
Contraintes, CRIL - CNRS FRE 2499, Jun 2005, Lens, pp.21-28. �inria-00000071�
Ordonnanement de véhiules: une approhe
par reherhe loale à grand voisinage
Bertrand Estellon
1
Frédéri Gardi
1,2
Karim Nouioua
1 1
Laboratoire d'InformatiqueFondamentale
Par Sientique et Tehnologiquede Luminy, Marseille
2
Pr ologia -GroupeAir Liquide
Par Sientique et Tehnologiquede Luminy, Marseille
estellon lif.univ-mrs.fr gardipr ologia.fr nouioua lif.univ-mrs.fr
Résumé
Le problème N P-diile de l'ordonnanement de véhiules a fait l'objet d'une attention partiulière es
dernièresannées.Alorsqu'uneapprohedireteparpro-
grammationlinéaireennombresentiersouprogramma-
tionparontraintess'avèretrèssouventineae,plu-
sieurs méthodesd'optimisation loale ont au ontraire
démontréleureaité.Nousdérivonsiiunenouvelle
approhe par reherhe loale à voisinage large basée
surlaprogrammationlinéaireennombresentiers.Cette
approhe anotammentété éprouvée lorsdu Challenge
ROADEF'2005 sur un problème d'ordonnanementde
véhiules proposé par le onstruteur RENAULT, plus
omplexequeleproblèmehabituellementtraitédansla
littérature.Pouromparaison,nous dérivonsaussiune
méthodede reherhe loale àpetitvoisinage,enl'o-
urrene laméthodequinousapermis deremporterle
ChallengeROADEF'2005.
Abstrat
TheN P-hardproblemofarsequeninghasreei- ved a lot of attentionthese last years. Whereas a di-
ret approah based on integer linearprogramming or
onstraint programming is generally ineient,several
loal optimization methods have on ontrary demons-
trated their eieny. Here a new approah by large
neighborhood loal searh is desribed based on inte-
gerlinearprogramming.Thisapproahwasnotablytes-
ted at the time of the Challenge ROADEF'2005 on a
arsequening problem proposed by the manufaturer
RENAULT, more omplex than the problem generally
addressedintheliterature.Foromparison,wealsodes-
ribealoalsearhmethodwithsmallneighborhood,in
fatthemethodwhihenabledustogaintheChallenge
ROADEF'2005.
1 Introdution
Lesusinesmodernesd'assemblagedevéhiulessont
omposées de trois grands ateliers : l'atelier tlerie
danslequelestassembléleorpsduvéhiule,l'atelier
peinturedanslequelelui-iestpeint,etennl'atelier
montagedanslequelsontposésleséquipementset les
optionsduvéhiule.Leproblèmedel'ordonnanement
de véhiules onsiste àdéterminerl'ordredanslequel
unensembledevéhiulesdoitparourires troisate-
liers,defaçonàenfailiterlafabriation.Laséquene
devéhiulesainsiforméeestappeléelm.
Chaque atelier est sujet à des ontraintes spéi-
ques, qui tendent à être en onit lesunes ave les
autres.Andelimiter laomplexité duproblème, les
diérentstravauxparussurlesujet[4,5,14,12,6,8,7℄
ne onsidèrent que les ontraintes et objetifs liés à
l'atelier montage. Dans le adre du Challenge ROA-
DEF'2005, un problème plusomplexe était proposé
par le onstruteur RENAULT, intégrant non seule-
mentlesbesoinsdel'atelier montagemais aussieux
del'atelierpeinture.
Le problème hez RENAULT. Pour l'atelier pein-
ture, l'objetif est de minimiser la onsommation de
solvant, lequelest utilisé pour purgerlespistolets de
peintureàhaquehangementdeouleurdanslelm.
De façon plus expliite, le but est de minimiser le
nombredepurgesouenorelenombredehangements
deouleurdanslelm,equirevientàgrouperdansle
lmlesvéhiulesayantdesouleursidentiques.Cepen-
dant, une séquene de véhiules d'une même ouleur
PAINT-LIMIT (il faut périodiquement hanger de ou-
leurpourpermettre unmeilleur ontrle visuelde la
qualité).Cette ontrainte estla seuleontrainte dure
duproblème.
Ande lisser laharge de travailsur les diérents
postes omposant la haîne de montage, il est né-
essaire d'espaer dans le lm les véhiules dont la
pose des options néessitent des opérations lourdes.
End'autrestermes,lebutestdelimiterladensitédes
véhiulesquidemandentbeauoupdetravailaumon-
tage, an de ne pas surharger les postes de travail
onernésparl'assemblagedeesvéhiules.
Ce besoin d'espaer lesvéhiules est formalisé par
une ontrainte de ratio pour haque option. Par
exemple, pour une option à laquelle est assoiée un
ratio
3/7
,onnedevrapastrouverplusde3
véhiulesonernésparl'optiondanstouteséqueneontiguëdu
lm,appeléefenêtre,omportant
7
véhiules.Commeil n'est pas possible de savoir a priori si toutes les
ontraintesderatiopourrontêtrerespetées, elles-i
sontdéniesommedesontraintesmolles.Paronsé-
quent, l'objetif sera de minimiser le nombre de vio-
lationspourl'ensemble desontraintesderatio.Pour
l'exemplepréédent, si
5
véhiulespossèdentl'optionenquestionsurunefenêtrede
7
,alors2
violationssontomptées. An de distinguer ertaines options dites
prioritaires,lesviolationspeuventêtrepondéréespar
uneonstante.
Motivations. Le problème de l'ordonnanement de
véhiulesestfortement
N P
-diile,mêmelorsquenesont onsidérées que les ontraintes liées à l'atelier
montage [4, 8℄, et une approhe exate parprogram-
mationlinéaireennombresentiersouprogrammation
par ontraintes atteint ses limites lorsque le nombre
devéhiulesàordonnanerdépassequelquesdizaines.
Ainsi,plusieursheuristiquesontétéproposéesdansla
littératurepourrésoudreleproblème,notammentdes
algorithmes àbase de fourmis [14, 6, 7℄ et des algo-
rithmes de reherhe loale [12, 6℄. De la même ma-
nière,lesméthodesquiontétéprésentéesparlesdié-
rentspartiipantsauhallengeROADEF'2005[3℄sont
baséessur destehniques dereherheloale detype
reuit simulé ou reherhe tabou (voir [2℄ pour plus
de détails sur es tehniques). La prinipale araté-
ristiquede touteses méthodes est lapetite taille du
voisinage exploré àhaqueitérationdel'algorithme.
Dansette note, nous présentonsune approhedu
problème par reherhe loale à grand voisinage [1℄.
Tout d'abord, nous proposons une formulation ori-
ginale du problème par un programme linéaire en
nombresentiers.Nousmontronsensuiteommentuti-
liser la programmation linéaire en nombres entiers
thode de reherhe loale de type
k
-éhange [2, 1℄.Pouromparaison, nousdérivonsaussiuneméthode
dereherheloaleàpetitvoisinage,enl'ourrenela
méthodequinousapermisderemporterleChallenge
ROADEF'2005.Lesdeuxméthodesontétéimplantées
surleprinipedeladesente[2℄(l'objetifn'estjamais
détérioré au ours de l'algorithme); en eet, auun
optimum loal n'a été renontré en pratique (sur les
instanes proposées par RENAULT). En onlusion,
nousdisuteronsdesrésultatsobtenusparhaunede
esdeuxméthodesetdequelquesdiretionsfuturesde
reherhe.
2 Reherhe loale à grand voisinage
Dans ette setion,nous dérivonsendétaillamé-
thode dereherheloale àgrandvoisinagequenous
avons implantée lors de la phase de qualiation du
Challenge ROADEF'2005. L'approhe que nous pro-
posonspeutêtrequaliéed'hybride,enesensqu'elle
mêlereherheloale etrésolutionexateparprogram-
mation linéaire en nombres entiers. Nous avons ré-
emment appris que e type d'approhe, formalisée
parMautoret Mihelon[10℄,avaitdéjàété appliquée
avesuèsàlarésolutiond'unproblèmed'ordonnan-
ementdeprojet[11℄.
2.1 Programmationlinéaire en nombresentiers
Voii une formulation du problème d'ordonnane-
ment de véhiules (hez RENAULT) par un pro-
grammelinéaireennombresentiers.Andelimiterle
nombredevariablesdeelui-i,lesvéhiulesidentiques
sontgroupésparlasse(deuxvéhiulessontidentiques
s'ils ont les mêmes options et la même ouleur). Le
nombre de véhiules à ordonnaner et le nombre de
lasses sont respetivement notés NPOS et NCL. Le
nombrede véhiulesdela lasse
i
est notéNi. Enn,Pi
/
Qi dénoteleratioassoiéàl'optioni
.À haqueouplelasse
i
/positionj
, nousassoionsune variable binaire
cl
i,j dont la valeur est égale à1
si le véhiule àla positionj
appartient à la lassei
et à0
dans le as ontraire. Les ontraintes (1) et(2),déritesi-dessous,assurentquetouslesvéhiules
d'une même lasse sont assignés àune position dans
lelm etqu'uneposition neseraoupée queparun
et unseulvéhiuled'unemêmelasse:
∀i ∈ {1, . . . ,
NCL}
,NPOS
P
j=1
cl
i,j=
Ni (1)∀j ∈ {1, . . . ,
NPOS}
,NCL
P
i=1
cl
i,j= 1
(2)Pour haque ouple lasse
i
/optionj
, la onstanteOPi,j est égale à
1
si les véhiules de la lassei
pos-sèdentl'option
j
età0
dansleasontraire.Ensuite,à haque ouple option
i
/positionj
est assoiée unevariable binaire
o
i,j dont la valeurest égale à1
si levéhiule en position
j
possède l'optioni
et à0
dansle as ontraire. Les ontraintes (3) permettent alors
d'exprimer les variables
o
i,j en fontiondes variablescl
i,j et desonstantesOPi,j :∀i ∈ {1, . . . ,
NOP}
et∀j ∈ {1, . . . ,
NPOS}
,o
i,j=
NCL
P
k=1
(
OPk,i∗ cl
k,j)
(3)Enn,notons
v
i,jlavariablereprésentantlenombrede violations del'optioni
pourlafenêtre quiommeneen
j
. L'objetif étant de minimiser la somme de esvariables,nousposons:
∀i ∈ {1, . . . ,
NOP}
et∀j ∈ {1, . . . ,
NPOS−
Qi+ 1}
,j+Q
P
i−1 k=jo
i,k−
Pi≤ v
i,j (4)De façonsimilaire, nousallonsmaintenant dénirles
variables et les ontraintes onernant les ouleurs.
Pour haque ouple lasse
i
/ouleurj
, la onstanteCOi,jestégaleà
1
silesvéhiulesdelalassei
sontdeouleur
j
età0
dansleasontraire.Ensuite,àhaqueouple ouleur
i
/positionj
est assoiée une variablebinaire
c
i,j dont la valeurest égale à1
si levéhiuleen position
j
est de ouleuri
. Voii les ontraintespermettant d'exprimer es variables en fontion des
variables
cl
i,j et desonstantesCOi,j :∀i ∈ {1, . . . ,
NCOUL}
et∀j ∈ {1, . . . ,
NPOS}
:c
i,j=
NCL
P
k=1
(
COk,i∗ cl
k,j)
(5)À haquepositionest assoiéeunevariablebinaire
p
jdont lavaleurest égaleà
1
lorsque une purgeest ef-fetuée entre lespositions
j − 1
etj
. L'objetif étantdeminimiserlenombredepurges,nousposons:
∀i ∈ {1, . . . ,
NCOUL}
et∀j ∈ {2, . . . ,
NPOS}
:c
i,j− c
i,j−1≤ p
j etc
i,j−1− c
i,j≤ p
j (6)Enn, lesontraintesduresonernantlaPAINT-LIMIT
s'exprimentnaturellementàl'aidedesvariables
c
i,j :∀i ∈ {1, . . . ,
NCOUL}
et∀j ∈ {1, . . . ,
NPOS−
PAINT-LIMIT}
:j+PAINT-LIMIT
P
k=j
cl
i,k≤
PAINT-LIMIT (7)Pour onlure, la fontion objetif du programme li-
néaire s'érit ommesuit, ave CVi leoût d'unevio-
lation surl'option
i
etCPleoûtd'unepurge:Minimiser NOP
P
i=1
NPOS
P
−Qi+1 j=1CVi
× v
i,j+
NPOS
P
j=2
CP
× p
jNotons que si les variables
cl
i,j sont entières, alorstoute solution du programme linéaire est entière, et
e, même si les autresvariables sont relâhées.De la
même façon, si les variables
o
i,j etc
i,j sont entières,alors la solution du programme l'est également. Par
onséquent, le type des variables sera déni omme
suitlorsdelarésolutionduprogramme :
siNCL
≤
NOP +NCOULalors∀i ∈ {1, . . . ,
NCL}
,∀j ∈ {1, . . . ,
NPOS}
,cl
i,j∈ {0, 1}
,ettouteslesautresvariablessontrelâhées;
sinon
∀i ∈ {1, . . . ,
NOP}
,∀j ∈ {1, . . . ,
NPOS}
,o
i,j∈ {0, 1}
,∀i ∈ {1, . . . ,
NCOUL}
,∀j ∈ {1, . . . ,
NPOS}
,c
i,j∈ {0, 1}
,ettouteslesautresvariablessontrelâhées;
n si
Contrairementà laformulationplus lassiquepropo-
séedans[7℄(omettantlesvariablesintermédiaires
o
i,jet
c
i,j),lenombredevariablesentièresn'estpasiidé-terminépar lenombrede lassesmais parle nombre
d'optionsetdeouleurs.Ceis'avèretrèssouventinté-
ressant,tantpourlesinstanesindustriellesproposées
par RENAULT que pourles instanes de la CSPLib
[5℄.Celanousanotammentpermisdedéterminerque
l'instane21-90delaCSPLibnepouvaitêtresatisfaite
(la seuledont onne onnaissaitpasle statut jusqu'à
présent).
2.2 Une reherheloaledetype
k
-éhangeLeprogrammelinéaireennombresentiersquenous
venons de formuler nous a permis de résoudre des
instanes omportant jusqu'à une entaine de véhi-
ules.Malheureusement,pourdesinstanesdegrande
taille(del'ordredumillierdevéhiules),sarésolution
exate n'est plus possible : la relaxation linéaire du
programme fournit des solutionsde mauvaise qualité
(trèsfrationnaires,deoûtégalàzéro)etlebranh &
bound peine àtrouverune première solutionentière.
Dans ette setion, nous montrons omment mettre
àprot la puissanede la résolution exate par pro-
grammationlinéaireennombresentierspourexplorer
detrèslargevoisinagedansuneméthodedereherhe
loaledetype
k
-éhange[2℄.À haqueitération de l'algorithme, K véhiules du
lmsontséletionnéspourêtreéhangés(nousdirons
quees véhiulessontmobiles). Levoisinageàexplo-
rer est alors déni omme étant l'ensemble des lms
pouvantêtreobtenusparpermutationdeesvéhiules
mobiles.ParmilesK
!
voisinspotentiels,nousallonsentionourante,voire sipossiblelemeilleur.Pourela,
nousrésolvonsleprogramme linéaireen nombresen-
tiers(PLNE)déniommedanslasetionpréédente,
oùlesvariablesorrespondantauxvéhiulesnon mo-
bilessontxées.Larésolutiondeeprogrammesefait
parunalgorithmelassiquedebranh &bound,dans
unelimite de tempsxéeàT-MAX seondes.Une fois
larésolutionterminéeouinterrompuefautedetemps,
lasolution ourante est mise àjour et lesvaleursde
K et de T-MAX ajustée, en vue d'eetuer une nou-
velle itération.Pourrésumer, voii lesgrandes lignes
del'algorithme.
Algorit hmeGrand Voisinage:
début;
initialiserKetT-MAX;
alulerunesolutioninitiale;
tant queletempsn'est paséouléfaire
hoisirKvéhiulesmobiles;
formulerlePLNEpourlesKvéhiulesmobiles;
lanerlarésolutionduPLNEdurantT-MAXseondes;
mettreàjourlasolutionourante;
ajusterKetT-MAX;
nfaire;
n;
Plusieurs algorithmes gloutons ont été proposés
danslalittérature[6℄;esalgorithmes,quenousavons
enrihispourteniromptedesontraintes del'atelier
peinture, permettent d'obtenir rapidement des solu-
tionsinitialesdebonnequalité(généralemententemps
O(
NPOS2)
). Ensuite, le aratère eetif de l'algo-rithmedépend essentiellementdedeuxfateurs. Tout
d'abord,lehoixdesvaleursdeKetdeT-MAXestru-
ial.Si Kest tropgrandouT-MAXtroppetit, laréso-
lutionduPLNEpeutéhouer(auunesolutionentière
n'esttrouvéedansletempsimparti).L'idéeestdedé-
buterl'algorithmeaveunepetitevaleurdeKquel'on
aroîtau l desitérations,jusqu'àe qu'une résolu-
tionéhoue;lavaleurdeKestalorsstabilisée,defaçon
àpermettrele plus grandhoix de véhiules mobiles
possiblespourunevaleurdeT-MAXxée.Ledeuxième
fateur porte sur le hoix des véhiules mobiles. En
eet, nous avons pu onstater que plus les véhiules
mobiles sont éloignésles uns des autres dans le lm,
pluslaqualitédelarelaxationlinéaireduprogramme
s'améliore,abaissantainsiletempsdereherhed'une
solutionentièreoptimaleparbranh&bound (desélé-
mentsd'analysepolyédrale[13℄, quenousne détaille-
ronspasii, permettent d'expliquerenpartie e phé-
nomène).Ainsi, les véhiulesmobiles sont en grande
partiehoisisauhazarddanslelm,leresteprovenant
despositionsoùapparaissentlesviolations.
dansleadreduChallengeROADEF'2005,lalibrairie
GLPK [9℄ étantutilisée pourla résolutionduPLNE.
Les expérimentations que nous avonsmenées sur les
instanes proposées par RENAULT 1
(qui peuvent
omporterjusqu'àplusd'unmillierdevéhiules)nous
ontonduitsàxerlavaleurdeT-MAXautour dedix
seondes.LavaleurdeK,initialementxéeàunein-
quantainedevéhiules,esttrèsrapidementaugmentée
defaçonàséletionnerdelamoitiéjusqu'audeuxtiers
desvéhiulesdulm,permettantainsid'explorer des
voisinages de taille
O(
NPOS!)
. En moyenne, letempspasséeàlarésolutionduPLNEvariedetroisàquatre
seondes.Notonsqu'and'aélérerlaonvergenede
l'algorithme,unesolutionréalisabledebase,onstruite
eaementàpartirdelasolutionourante,estpassée
àl'algorithmedusimplexedefaçonàréduireletemps
de alul d'une solution de la relaxation linéaire du
programme.
3 Reherhe loale à petit voisinage
Dans ette setion, nous dérivons la méthode de
reherheloaleàpetitvoisinagequinousapermisde
remporter le Challenge ROADEF'2005. La méthode
enquestiononsisteàappliqueràhaqueitérationune
transformationsurlelmnemodiantelui-iquetrès
loalement. Si ette transformation est valide ('est-
à-dire respete la ontrainte dure de PAINT-LIMIT) et
ne détériorepasleoût delasolutionourante,alors
elle-i est eetuée. Cette méthode s'inspire large-
ment desréentstravauxde Gottlieb, Puhta et Sol-
non[12,6℄surlesujet.Letravailquenousavonsréalisé
dans leadreduChallengeROADEF'2005aonsisté
enuneadaptationetunenrihissementdestehniques
proposéesparestroisauteursandetraiteraumieux
leproblèmeproposéparRENAULT(enpartiulierles
objetifset ontraintesliésàl'atelierpeinture).
Algorit hmePetitVoisinage:
début;
alulerunesolutioninitiale(algorithmeglouton);
tant queletempsn'estpaséouléfaire
hoisirunetransformationàappliqueraulm.
hoisirlespositionsauxquelleselle-iseraappliquée.
sielle-iestvalideetnedétériorepasleoût alors
eetuerlatransformation;
nsi;
nfaire;
n;
Les transformations que nous utilisons sont au
nombre de inq : éhange, insertion avant , insertion
1
NostestsontétéréaliséssurunPCéquipéd'unproesseu r
1.6GHzetd'uneRAMde256Mo.