Vous êtes sur la page 1sur 26

Algorithme de résolution du problème

d’approvisionnement des stations d’essence


An Exact Algorithm for the Petrol Station
Replenishment Problem

Fabien Cornillier
CENTOR, Université Laval
fabien.cornillier@centor.ulaval.ca

Fayez F. Boctor
CENTOR, Université Laval

Gilbert Laporte
CRT, HEC Montréal

Jacques Renaud
CENTOR, Université Laval

Journées de l’optimisation 2005 - Montréal


Plan de la présentation

Définition et caractéristiques du problème


d’approvisionnement des stations

Revue de la littérature

Formulation mathématique

Méthodes de résolution

2 méthodes proposées

Génération des problèmes-tests

Résultats

Résolution d’un cas réel

Résultats
Caractéristiques du problème
d’approvisionnement des stations d’essence

Le problème d’approvisionnement des stations


d’essence possède deux caractéristiques particulières:

Les clients: stations d’essence

Les véhicules: camions-citernes


Caractéristiques du problème
d’approvisionnement des stations d’essence

– Un ensemble S de stations à approvisionner


– Pour chaque station i, un nombre T de produits correspondant à au-
tant de réservoirs souterrains
– Pour chaque réservoir souterrain t ∈ {1, . . . , T } de la station i, on
connaît :
0 km– le niveau5 de stock initial
10 s ; 15 20
it
– la capacité totale Pit ;
– le niveau de stock minimal mit pour répondre à la demande sur la
période ;
– et l’on peut calculer :
– la quantité minimale ait à livrer : ait = max{0, mit − sit } ;
– la quantité maximale bit à livrer : bit = Pit − sit
Caractéristiques du problème
d’approvisionnement des stations d’essence

– Un ensemble S de stations à approvisionner


– Pour chaque station i, un nombre T de produits correspondant à au-
tant de réservoirs souterrains
– Pour chaque réservoir souterrain t ∈ {1, . . . , T } de la station i, on
connaît :
– le niveau de stock initial sit ;
– la capacité totale Pit ;
– le niveau de stock minimal mit pour répondre à la demande sur la
période ;
– et l’on peut calculer :
– la
Onquantité
disposeminimale livrer : ait =etmax
ait àhomogène
d’une flotte {0, mit − sit } ;
illimitée
– la quantité
Chaque maximale
véhicule bit à de
dispose livrer : bit = Pit − sit de capacités
C compartiments
Qc véhicule dispose de C compartiments de capacités Qc
Chaque
Les compartiments ne sont pas 5équipés de débitmètre
0 km 10 : 15 20

– on transvide la totalité du contenu d’un compartiment dans un seul


réservoir souterrain (on peut cependant utiliser plusieurs comparti-
ments pour remplir un réservoir) ;
– on ne peut livrer qu’un maximum de C demandes et de C stations.
Définition du problème d’approvisionnement

L’objectif est de minimiser les coûts de transport pour un


ensemble de stations donné, sur une seule période, en
disposant d’une flotte illimitée de véhicules.

Étant donné un ensemble de stations à approvisionner pour


une période données:

1. Affecter chaque station à une tournée


2. Construire et affecter chaque tournée à un
véhicule
3. Pour chaque tournée, déterminer le produit et la
quantité à affecter à chacun des compartiments du
camion
Revue de la littérature
Brown & Graves (1981)
Brown, Ellis, Graves & Ronen (1987)

Brown & Graves


Real-Time Dispatch of Petroleum Tank Trucks.
Management Science, 1981

Planification de tournées constituées d’une seule station avec fenêtres de temps.

Brown, Ellis, Graves & Ronen


Real-Time, Wide Area Dispatch of Mobil Tank Trucks.
Interfaces, 1987

Conception d’un outils de planification assistée par ordinateur pour un problème


similaire, combinant les solutions du planificateur aux heuristiques dans un
environnement temps-réel.
Revue de la littérature
Malépart, Boctor, Renaud & Labillois (2003)
Taqa Allah, Renaud & Boctor (2000)

Malépart, Boctor, Renaud & Labilois


Nouvelles approches pour l’approvisionnement des stations d’essence.
Revue Française de Gestion Industrielle, 2003

Conception d’heuristiques simples pour le problème général d’approvisionnement


des stations d’essence avec livraisons multiples par tournée et gestion des contraintes
de ressources humaines.

Taqa Allah, Renaud & Boctor


Le problème d’approvisionnement des stations d’essence
Journal Européen des Systèmes Automatisés, 2000

Quatres heuristiques sont proposées tenant compte des coûts de transport, des
heures supplémentaires, sur plusieurs périodes. Ce travail consiste plus
particulièrement à simuler sur plusieurs périodes l’impact des politiques
d’approvisionnement.
Formulation mathématique

– Définissons un sous-ensemble S ⊆ V de stations.


– On peut calculer d S , le coût du trajet visitant les stations de S en
résolvant un problème de voyageur de commerce.
Le problème peut être formulé comme un problème de partitionne-
ment :

(SPP) Minimiser ∑ dS xS (1)


S⊆V,S"=Ø
S.c. : ∑ xS = 1 (i ∈ V ) (2)
S:i ∈ S
x S = 0 ou 1 ( S ⊆ V, S "= Ø). (3)
avec x S , variable binaire égale à 1 si S est dans la solution optimale,
0 sinon.
Résoudre ce problème de partionnement est en général impossible :
– le nombre de sous-ensembles S est trop élevé ;
– identifier le véhicule optimal est difficile ;
– identifier la tournée optimale est difficile.
0 km 5 10 15 20

Sans contrainte sur la taille des routes :

1. Nombre combinatoire sous-


ensembles de stations
Complexe...
2. On doit résoudre le problème de
voyageur de commerce associé
0 km 5 10 15 20

En pratique, la taille des routes dépasse


exceptionnellement 2 stations:

1. Le nombre de sous-ensembles de
stations est limité
2. Aucun problème de voyageur de Plus simple !
commerce
Méthodologie générale sans contrainte sur la
taille des routes
On utilise une méthode basée sur la génération de
colonnes (de routes)
1. Générer l’ensemble des routes possibles
2. Pour chaque route, trouver un chargement
optimal (affecter les produits demandés aux
compartiments d’un camion)
3. Sélectionner les routes : résoudre le
problème de partition

0 km 5 10 15 20
Résolution avec routes limitées à 2 stations

Le problème de partitionnement correspond à un


problème de couplage de poids minimal dans un graphe
non-bipartite.

Le graphe doit être modifié de manière à autoriser des


stations non couplées (des routes d’une seule station).

Le problème de couplage est résolu par l’algorithme


d’Edmonds (1964).

0 km 5 10 15 20
Le problème de chargement consiste à maximiser la quantité chargée
dans le camion-citerne à partir d’un ensemble de demandes :
– respecter les bornes minimales et maximales des quantités deman-
Formulation
dées mathématique du
problème
– respecter lesde chargement
capacités des compartiments
– n’allouer qu’une seule demande par compartiment (absence de dé-
bitmètre)
– t : index des commandes (t ∈ {1, . . . , T }) ;
– c index des compartiments (c ∈ {1, . . . , C }) ;
– xt variable représentant la quantité livrée dans le réservoir t ;
– ytc , variable binaire égale à 1 si le compartiment c est utilisé pour
livrer le réservoir t, 0 sinon.

T
(TTLP) Maximiser ∑ xt (1)
t=1
s.c. : a t ≤ xr ≤ b t (t ∈ {1, . . . , T }) (2)
C
xt ≤ ∑ Qc ytc (t ∈ {1, . . . , T }) (3)
c=1
T
∑ ytc ≤ 1 (c ∈ {1, . . . , C }) (4)
t=1
ytc = 0 ou 1 (t ∈ {1, . . . , T }; c ∈ {1, . . . , C }). (5)

(2) : Commandes minimales et maximales


(3) : Limite de capacité des compartiments
(4) : Pas plus d’un produit par compartiment

Étape 1 : Identification rapide de conditions suffisantes de non réalisa-


Résolution optimale des problèmes de chargement

Problème de
chargement

Heuristique

Solution
réalisable ? non

oui

Programmation
Solution
optimale ? non linéaire en
nombres entiers

oui

Solution optimale,
si elle existe
Résolution
Méthode I

1. Éliminer toutes les paires de stations facilement identifiables comme


étant non réalisables (quantités minimales demandées, nombre de
demandes, etc.)
2. Générer toutes les (n2 + n)/2 routes possibles
3. Résoudre le problème de chargement pour chaque route générée
4. Résoudre le problème de couplage permettant de sélectionner les
routes optimales dans l’ensemble des routes générées. Le poids as-
socié à chaque singleton ou paire de station(s) est le coût du trajet
les visitant.

1. Résoudre le problème de couplage de poids minimal en considérant


toutes les routes possibles de une ou deux stations
2. Si une route sélectionnée n’est pas réalisable, modifier le graphe en
conséquence et résoudre le nouveau problème de couplage
3. Si toutes les routes sont réalisables une solution optimale est iden-
Résolution
Méthode II

1. Éliminer toutes les paires de stations facilement identifiables


comme étant non réalisables (quantités minimales demandées,
nombre de demandes, etc.)
2. Résoudre initialement le problème de couplage en se basant
uniquement sur les coûts (aucun problème de chargement n’est
résolu);
3. Pour chaque paire (route) sélectionnée dans le problème de
couplage, déterminer si un chargement existe (optimal ou non);
4. WHILE(au moins une route sélectionnée est non réalisable)
‣ Interdire les arcs associés aux paires non réalisables
‣ Résoudre le problème de couplage
WEND
Comparaison des méthodes

Temps approximatifs de résolution

Problème de chargement : une fraction de seconde

Problème de couplage : quelques secondes (200 stations)

Méthode I

(n2 + n)/2 problèmes de chargement + 1 problème de couplage


[n problèmes de chargement + 1 problème de couplage] × nombre d’itérations

Méthode II
(n2 + n)/2 problèmes de chargement + 1 problème de couplage
[n problèmes de chargement + 1 problème de couplage] × nombre d’itérations
Tests numériques
Génération des problèmes

Pour chaque station, on tire au hasard selon une loi uniforme une
consommation totale (somme de la consommation des 3 produits)
entre 10000 et 50000 litres. On attribue respectivement 70%, 10% et
20% de la consommation totale aux produits 1, 2 et 3.

Les stocks initiaux de chaque produit sont tirés au hasard selon une loi
uniforme entre 0 et Pt. (P1, P2, P3 : capacités des réservoirs
souterrains des 3 produits)

Le dépôt et les stations sont répartis uniformément sur un espace


euclidien de 100 par 300.

On suppose que toutes les stations générées doivent être livrées, les
stations n’ayant aucune demande minimale non nulle sont rejetées.

On génère 30 instances de 50, 100 et 200 stations.


Tests numériques
Génération des problèmes

Flotte homogène

Les camions disposent de 5 compartiments, de capacités 16000,


16000, 10000, 6000 et 6000 litres (total de 54000 litres)

Flotte hétérogène

5 compartiments de capacités 16000, 16000, 10000, 6000,


6000 litres (54000 litres au total)

5 compartiments de capacités 15500, 5500, 5500, 9000,


14500 litres (50000 litres au total)

4 compartiments de capacités 15000, 15000, 10000,


10000 litres (50000 litres au total)
Sets eliminated number min. of infeasible
1 167 500 TTLPs
1 167 500 1 167eliminated
500 1 167 500 in500the pre-
863
max. 1 187 000 1 187 000 1 817 000 2 447 000 1 502 000
processing
qty step
1 167 500under strategy
1 181 000 1 401 000 21 440
; 000 1 230 000
km 7827.5 6481.9 6481.9 6481.9 5972.3
Tests numériques
MPs solved number
qty/km of matching
149.2 problems
182.2 216.1 solved
222.2 under
206.0 stra-
Résultats
tegy 2.
L’algorithme de chargement a été testé sur 8000 instances de problèmes, 100
On compare les 2 stratégies sachant que
par combinaison de : les solutions sont
TAB . 4+– Behavior of the routing algorithms
optimales dans tous les cas.– T ∈ {1, . . . , 4},
– R a = ∑tT=1 at / ∑Cc=1 Qc ∈ { 0.1, 0.3, 0.5, 0.7, 0.9 }
Stratégie T1
– Rb = ∑t=1 bt / ∑C Stratégie 2
c=1 Qc ∈ { 1.0, 1.5, 2.0, 2.5 }
Charg.
Nb. types – l’algorithme identifie une solution réalisable dans 95.9% des cas
Nb. Charg. – dans Routes
non 61.5% des cas, la solution Couplage
est optimale Charg.
de –réalisables
dans 43% desSecondes
cas, on peutéliminées
montrer qu’ellerésolus
est optimalerésolus Secondes
Stations résolus
véhicules – lorsqu’une solution est optimale, on peut donc le prouver dans 70% des
cas
– les solutions heuristiques sont en moyenne à 2.09% de l’optimum
1 50 1 275 293 44.8 287 1.37 27 0.0
– les temps de calculs sont négligeables comparés à ceux d’un algorithme
1 100 5 050 linéaire
1 108 en variables
212.3 entières 1 088 1.37 53 0.5
1 200 20 100 L’algorithme
4 399 a été testé
723.7sur 180 instances
4 304 2.07
de problèmes, 220combinaison
30 par 4.8
3 50 1 844 de : 285 137.4 281 1.10 26 0.0
3 100 7 173 – nombre
1 061 de stations
483.1(50, 100, 200),
1 048 1.30 52 0.5
– nombre de types de camions différents : flotte homogène (1 type) ou hé-
3 200 28 443 4 171 (3 types)
térogène 1 964.1 4 140 1.37 103 4.1

– la stratégie 2 est très supérieure à la stratégie 1


– l’étape de filtrage permet d’éliminer 98.5% des routes non réalisables
– l’efficacité du filtrage explique le faible nombre de problèmes de cou-
plage à résoudre (convergence rapide)
– la stratégie 2 est près de 400 fois plus rapide que la stratégie 1
Résolution d’un cas réel

0 km 50 100 150

0 km 5 10 15 20
Résolution d’un cas réel

Réseau de 41 stations à approvisionner sur une journée


Données extraites des feuilles de route/livraisons d’un
transporteur régional

Quatre scénarios:
Scénario A: Les demandes minimales et maximales sont
identiques à celles des feuilles de route
Sénarios B, C et D: Les demandes minimales et maximales sont
modifiées

TAB . 4 – at and bt values for the four real-life instances

Scenario at bt
A at = delivered quantity bi = ordered quantity
B at bt + 5 000
C at bt + 10 000
D max{1 000, at − 5 000} bt + 5 000
Résolution d’un cas réel
Résultats TAB . 5 – Results for the real-life instances

Actual solution A B C D
#routes 26 24 24 24 22
min. 1 167 500 1 167 500 1 167 500 1 167 500 863 500
max. 1 187 000 1 187 000 1 817 000 2 447 000 1 502 000
qty 1 167 500 1 181 000 1 401 000 1 440 000 1 230 000
km 7827.5 6481.9 6481.9 6481.9 5972.3
qty/km 149.2 182.2 216.1 222.2 206.0

Solution optimale comparée à la solution réelle:


24 routes au lieu de 26
Diminution du nombre de km de 17.2%
Augmentation de la quantité livrée de 1.16%
Augmentation du nombre de litres livrés par km de 22.12%
conclusion
on est capable de résoudre des problèmes de tailles
réelles en quelques secondes

sous une hypothèse très peu restrictive, on est


capable de les résoudre à l’optimum

prochaine étape: approvisionnement des stations sur


plusieurs périodes
References

 Ministère des ressources naturelles du Québec. Prix de l’essence ordinaire par


région administrative. Technical report, .
 V. Malépart, J. Renaud, and F. F. Boctor. La distribution des produits pétroliers
au Québec : État de la situation. Technical report, Université du Québec, .
 P. Toth and D. Vigo, editors. The Vehicle Routing Problem. Society for Indus-
trial and Applied Mathematics, Philadelphia, .
 G. G. Brown and G. W. Graves. Real-time dispatch of petroleum tank trucks.
Management Science, :–, January .
 G. G. Brown, C. J. Ellis, G. W. Graves, and D. Ronen. Real-time, wide area
dispatch of Mobil tank trucks. Interfaces, :–, .
 V. Malépart, F. F. Boctor, J. Renaud, and S. Labilois. Nouvelles approches
pour l’approvisionnement des stations d’essence. Revue Francaise de Gestion
Industrielle, :–, .
 N. Christofides, A. Mingozzi, and P.Toth. Loading problems. In P. Toth and
N. Christofides, editors, Combinatorial Optimization, pages –. Wiley,
.
 J. C. Smith. A genetic algorithm approach to solving a multiple inventory
loading problem. International Journal of Industrial Engineering, :–, .
 N. Christofides. Vehicle routing. In A. H. G. Rinnooy Kan E. L. Lawler, J.
K. Lenstra and D.B. Shmoys, editors, The traveling salesman problem. A guided
tour of combinatorial optimization, pages –. Wiley, .
 H. N. Gabow. An efficient implementation of Edmonds’ algorithm for maxi-
mum matching on graphs. Journal of the ACM, :–, . références
 J. Edmonds. Paths, trees and flowers. Canadian Journal of Mathematics, :
–, .
 PC*MILER User’s Guide. ALK Technologies, Inc., .

Vous aimerez peut-être aussi