• Aucun résultat trouvé

Les arcs non orient ´es peuvent alors ˆetre supprim ´es pour laisser place `a une all ´ee com- pos ´ee uniquement d’arcs orient ´es respectant la contrainte d’orientation du v ´ehicule lors du picking.

Il est important de noter que sur l’exemple certains nœuds ont ´et ´e l ´eg `erement d ´ecal ´es pour des raisons de visibilit ´e. En r ´ealit ´e, la position des nœuds reste fixe afin de pouvoir, par la suite, correctement calculer les distances. En particulier, lors de la duplication des nœuds secondaires, l’original et sa copie sont en r ´ealit ´e superpos ´es.

Gr ˆace aux m ´ethodes de construction graphique misent en place dans ce chapitre, il est possible de repr ´esenter le probl `eme de picking par un graphe qui respecte les contraintes d’impossibilit ´e des demi-tours et d’orientation du v ´ehicule de transport. La troisi `eme contrainte (la capacit ´e du v ´ehicule) n’a pas d’impact d’un point de vue graphique. Il s’agit alors de mettre en place un mod `ele math ´ematique qui prenne en compte cette sp ´ecificit ´e.

2.3.3/ MODELE MATH` EMATIQUE´

Comme nous l’avons vu pr ´ec ´edemment, le VRP est un probl `eme connu de recherche op ´erationnelle dont le but est de g ´erer des tourn ´ees de transporteurs pour livrer des clients. Ce probl `eme, propos ´e par Dantzig et Ramser en 1959 (voir [Dantzig et al., 1959]), peut tout `a fait ˆetre adapt ´e au probl `eme de picking dans un entrep ˆot en consid ´erant un agent qui doit relier les emplacements d’un ensemble d’articles `a collecter en une ou plusieurs tourn ´ees (ou plusieurs agents se partageant les tourn ´ees). Un algorithme de r ´esolution du VRP permettrait alors d’obtenir l’ordre dans lequel l’agent devra collecter les articles et les moments o `u il devra les d ´echarger pour pouvoir continuer sans d ´epasser la capacit ´e maximum des chariots de transports.

Afin de parvenir `a r ´esoudre ce probl `eme, la premi `ere ´etape consiste alors `a ´etablir un mod `ele math ´ematique fiable.

Cette section d ´etaille le mod `ele d’optimisation lin ´eaire en nombre entier (que par la suite nous appellerons par son acronyme anglais MILP pourMixed Integer Linear Programing) du probl `eme (voir d ´efinition (13)).

D ´efinition 12 : mod `ele LP (Linear Programing)

Probl `eme math ´ematique consistant `a rechercher l’optimum d’une fonction de va- riables, ´etant donn ´e que celles-ci doivent v ´erifier un certains nombre d’ ´equations et/ou d’in ´equations (appel ´ees contraintes). Autant la fonction `a optimiser que les contraintes doivent ˆetre lin ´eaires, c’est `a dire du premier degr ´e en les variables. ([Teghem, 2012])

D ´efinition 13 : mod `ele MILP (Mixed Integer Linear Programing)

Mod `ele math ´ematique LP (voir d ´efinition (12)) dont tout ou partie des va- riables peuvent ˆetre `a valeurs enti `eres (on parle aussi de contraintes d’int ´egrit ´e). ([Teghem, 2012])

Pour ´ecrire le mod `ele MILP du VRP il est n ´ecessaire de poser certains param `etres et variables.

• n : nombre de r ´ef ´erences (et donc d’emplacements). • V = v1, ..., vn : ensemble des articles (nœuds) `a collecter. • Q : volume maximum qu’un convoi peut transporter. • qi: volume de l’article vi.

• di, j : distance `a parcourir pour aller de l’emplacement de l’article vi `a celui de l’article vj.

• xi, j,k : variable binaire ´egale `a 1 si et seulement si lors de la tourn ´ee k l’agent doit aller directement de vi vers v j).

• ui,k : l’ordre dans lequel l’article vi sera collect ´e lors de la tourn ´ee k. • nk: nombre d’articles collect ´es lors de la tourn ´ee k.

Il est alors possible d’ ´ecrire le mod `ele MILP. La fonction objectif est donn ´ee par :

Minimiser n X i=1 n X j=1 m X k=1 xi jkdi j (2.6)

sujet `a un certains nombre de contraintes : n X i=1 m X k=1 xi jk = 1 ∀1 ≤ j ≤ n (2.7) n X j=1 m X k=1 xi jk= 1 ∀1 ≤ i ≤ n (2.8) n X j=1 xjik= n X j=1 xi jk ∀1 ≤ i ≤ n ∀1 ≤ k ≤ m (2.9) n X j=1 x0 jk = 1 ∀1 ≤ k ≤ m (2.10) n X i=1 xi0k = 1 ∀1 ≤ k ≤ m (2.11) n X i=1 n X j=1 xi jk× qi ≤ Q ∀1 ≤ k ≤ m (2.12) u1k = 1 ∀1 ≤ k ≤ m (2.13) uik− ujk+ nk× xi jk≤ nk− 1 ∀1 ≤ i, j ≤ m ∀1 ≤ k ≤ m (2.14) n X i=1 n X j=1 xi jk= nk ∀1 ≤ k ≤ m (2.15)

L’ ´equation (2.6) repr ´esente la fonction objectif, c’est- `a-dire la fac¸on d’ ´evaluer une solu- tion. Ici, on cherche une solution qui minimise le plus possible la distance parcourue par le ou les agents pour collecter l’int ´egralit ´e des articles demand ´es. En plus de cela, la solution doit respecter un certain nombre de contraintes. Les contraintes (2.7) et (2.8) assurent respectivement que pour chaque nœud, l’agent ne peut venir que depuis un unique nœud et ne peux repartir que vers un unique nœud. Ces deux contraintes as- surent donc la continuit ´e du chemin de l’agent collecteur lors de l’op ´eration de picking. La contrainte (2.9) est une contrainte classique de probl `emes de d ´etermination de meilleur chemin. Son but est d’assurer la conservation des flux, en d’autre termes, pour chaque nœud il y a autant de chemin qui y m `enent que de chemins qui en partent. La contrainte (2.10) force chaque tourn ´ee `a d ´emarrer au m ˆeme point. Ce point est le nœud d’indice 0 qui sert de point de d ´epart (aussi appel ´e d ´ep ˆot). Conjointement, la contrainte (2.11) force chaque tourn ´ee `a se terminer `a ce m ˆeme d ´ep ˆot pour que les articles soient d ´echarg ´es. Ainsi, chaque tourn ´ee forme un cycle `a travers l’entrep ˆot. La contrainte (2.12) permet de s’assurer que la capacit ´e totale du v ´ehicule transporteur n’est jamais d ´epass ´ee, c’est- `a- dire qu’il est capable de transporter tous les articles de chaque tourn ´ee.

La r ´esolution de ce mod `ele par un logiciel peut donner une solution contenant des sous- tours, c’est `a dire des solutions o `u certains nœuds ne sont pas reli ´es `a certains autres m ˆeme indirectement (voir exemple figure (2.16)). Pour pallier `a ce probl `eme, on d ´efinit la variable ui,kqui repr ´esente l’ordre dans lequel l’article i sera collect ´e lors de la tourn ´ee k. En effet, si la solution d ´etermin ´ee poss `ede des sous-tours, il est impossible de d ´efinir un ordre de collecte alors que ce dernier est ´evident avec un unique tour. Pour correctement d ´efinir cet ordre, la contrainte (2.13) pr ´ecise tout d’abord que le d ´ep ˆot doit ˆetre le premier nœud visit ´e. Ensuite, la contrainte (2.14) d ´efinit la notion d’ordre des articles. Notons que la contrainte (2.13) n’est en r ´ealit ´e pas n ´ecessaire, car th ´eoriquement n’importe quel ar- ticle d’une tourn ´ee peut ˆetre consid ´er ´e comme le premier, mais dans ce cas la variable un’as plus qu’un int ´er ˆet calculatoire et ne repr ´esente plus la r ´ealit ´e. Ces deux derni `eres ´equations font appel `a la variable nk qui repr ´esente le nombre d’articles collect ´es lors de la tourn ´ee k. La valeur de cette variable est d ´etermin ´ee par l’ ´equation (2.15). Nous verrons dans le chapitre suivant qu’il existe d’autre m ´ethodes pour ´eviter la formation de sous-tours.

L’ ´elaboration du mod `ele MILP permet de mettre en ´evidence les variables et les contraintes qui entre en jeu dans la r ´esolution du probl `eme. Un tel mod `ele peut ˆetre r ´esolu de fac¸on exacte gr ˆace `a des programmes sp ´ecifiques appel ´es solveurs (voir d ´efinition (14)).