• Aucun résultat trouvé

Ordonnancement de véhicules: une approche par recherche locale à grand voisinage

N/A
N/A
Protected

Academic year: 2021

Partager "Ordonnancement de véhicules: une approche par recherche locale à grand voisinage"

Copied!
9
0
0

Texte intégral

(1)

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�

(2)

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

(3)

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

,onnedevrapastrouverplusde

3

véhiules

onernésparl'optiondanstouteséqueneontiguëdu

lm,appeléefenêtre,omportant

7

véhiules.Comme

il 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'option

enquestionsurunefenêtrede

7

,alors

2

violationssont

ompté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êmelorsquene

sont 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'option

i

.

À haqueouplelasse

i

/position

j

, nousassoions

une variable binaire

cl

i,j dont la valeur est égale à

1

si le véhiule àla position

j

appartient à la lasse

i

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)

(4)

Pour haque ouple lasse

i

/option

j

, la onstante

OPi,j est égale à

1

si les véhiules de la lasse

i

pos-

sèdentl'option

j

età

0

dansleasontraire.Ensuite,

à haque ouple option

i

/position

j

est assoiée une

variable binaire

o

i,j dont la valeurest égale à

1

si le

véhiule en position

j

possède l'option

i

et à

0

dans

le as ontraire. Les ontraintes (3) permettent alors

d'exprimer les variables

o

i,j en fontiondes variables

cl

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'option

i

pourlafenêtre quiommene

en

j

. L'objetif étant de minimiser la somme de es

variables,nousposons:

∀i ∈ {1, . . . ,

NOP

}

et

∀j ∈ {1, . . . ,

NPOS

Qi

+ 1}

,

j+Q

P

i−1 k=j

o

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

/ouleur

j

, la onstante

COi,jestégaleà

1

silesvéhiulesdelalasse

i

sontde

ouleur

j

età

0

dansleasontraire.Ensuite,àhaque

ouple ouleur

i

/position

j

est assoiée une variable

binaire

c

i,j dont la valeurest égale à

1

si levéhiule

en position

j

est de ouleur

i

. Voii les ontraintes

permettant 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

j

dont lavaleurest égaleà

1

lorsque une purgeest ef-

fetuée entre lespositions

j − 1

et

j

. L'objetif étant

deminimiserlenombredepurges,nousposons:

∀i ∈ {1, . . . ,

NCOUL

}

et

∀j ∈ {2, . . . ,

NPOS

}

:

c

i,j

− c

i,j−1

≤ p

j et

c

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=1

CVi

× v

i,j

+

NPOS

P

j=2

CP

× p

j

Notons que si les variables

cl

i,j sont entières, alors

toute 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 et

c

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,j

et

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

-éhange

Leprogrammeliné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,nousallonsen

(5)

tionourante,voire sipossiblelemeilleur.Pourela,

nousrésolvonsleprogramme linéaireen nombresen-

tiers(PLNE)déniommedanslasetionpréédente,

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

despositionsapparaissentlesviolations.

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, letemps

passé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.

Références

Documents relatifs

Il faut comparer les ordonnées de deux points de même abscisse, l’un sur C f , l’autre sur (D)... En discutant suivant les valeurs du réel m, trouver graphiquement le nombre

[r]

Il sera tenu compte de la rédaction dans la note finale.. 5- Donner un exemple algébrique de fonction qui admette ce tableau

Le soumissionnaire remet, comme pièce constitutive de son offre, un document par lequel il marque son engagement à mettre en œuvre

Pour répondre à ce type de besoin, nous avons développé un système qui permet à l'étudiant de simuler l'exécution de son programme Prolog, mais qui lui offre aussi

 Pompe volumétrique : Transmission de l'énergie cinétique du moteur en mouvement de va-et-vient..  Pompe

Ils sont ensuite émis sans vitesse par la source S, puis accélérés par un champ électrostatique uniforme qui règne entre S et P tel que.. U sp

On y constate que la première équivalence ne peut pas être observée expérimentalement avec précision (saut de pH trop faible) ; les indicateurs adaptés sont donc le