5.2.4. Formulation du problème et solution apportée

Supposons qu’un client ait passé une commande urgente non prévue et ferme caractérisée par :

Deux cas sont alors possibles :

  1. Le distributeur ne dispose d’aucune partie de la quantité commandée OQ,
  2. Il dispose d’une partie et doit compléter le reste.

Dans les deux cas, on note :

OQ = DisQ + RQ

Avec DisQ : quantité dont dispose le distributeur, qui peut être nulle (cas 1) ou inférieur à OQ (cas 2).

RQ (required quantity): quantité recherchée.

Le problème se résume alors comme suit :

Trouver la quantité RQ pour livrer la commande urgente tout en respectant la durée DT et en minimisant le maximum possible les coûts de transport.

L’une des pratiques utilisées par les distributeurs et en particulier celui faisant objet de notre cas d’étude consiste à chercher la quantité RQ chez un autre grossiste ou un autre distributeur. Du point de vue du distributeur, cette pratique présente quelques inconvénients :

Dans le cadre du SCM, notre architecture étend et automatise cette pratique en impliquant plusieurs grossistes, distributeurs de mêmes produits et distributeurs de produits équivalents dans une collaboration interentreprises. Ainsi, le distributeur pourra trouver la quantité RQ chez quatre types d’acteurs différents :

1 er type (les grossistes clients du distributeur)

2 ème type (distributeurs de mêmes produits)

3 ème type (distributeurs de produits équivalents)

4 ème type

Pour mettre en pratique ce processus de collaboration entre les acteurs, satisfaire leurs exigences et répondre à leurs attentes, trois conditions doivent être vérifiées :

La figure 5.1 montre les interactions entre les agents collaboratifs. En fait, les agents qui vont négocier la commande sont les agents AgentSCM des différents acteurs. A titre de lisibilité, nous attribuons respectivement les noms AgentSCM_Who et AgentSCM_Dis auxagents AgentSCM des grossistes (wholesalers) et distributeurs (distributors). Ces noms sont plus significatifs surtout que les rôles joués par les agents AgentSCM dans ce cas dépendent du type de l’acteur (grossiste ou distributeur).

F
Fig. 5.1 - Interactions entre les agents collaboratifs

Les différents agents sont autonomes, puisqu’ils permettent à chaque SC manager de modifier les stratégies de décision. En plus, les agents contrôlent et choisissent les données à échanger entre eux. Dans le cas où les acteurs collaboratifs sont indépendants ou concurrents, les informations sensibles (comme le niveau du stock) peuvent ne pas être échangées. Chaque agent AgentSCM_Dis i peut interagir avec d’autres agents {AgentSCM_Disk / k [1, nd], k ≠ i} et {( AgentSCM_Who i ) j / j [1, nw i ], nw i est le nombre total des grossistes collaboratifs du distributeur (i) } (ses grossistes clients), par contre un agent ( AgentSCM_Who i ) j ne peut interagir qu’avec l’agent AgentSCM_Dis i représentant son distributeur. Cette limitation est dûe au fait que les acteurs travaillent dans le même secteur d’activités. Par conséquent, il est simple de monter une collaboration entre un distributeur et ses grossistes. Tandis qu’il reste difficile voire impossible à la monter entre un distributeur et les grossistes clients d’un autre distributeur. En fait, chaque distributeur cherche à accroître le nombre de ses grossistes et tente le maximum possible de les fidéliser.

Quand une commande urgente non prévue et ferme (caractérisée par: OQ et DT) est passée par un client au distributeur (i) (i [1, nd] et nd est le nombre total des distributeurs collaboratifs ), le SC manager demande à l’agent AgentSCM_Dis i de chercher la meilleure solution. A ce moment, l’agent exécute l’algorithme search_OQ (tableau 5.2 ci-dessous) [Nfaoui et al., 2008a] pour résoudre le problème pouvant être résumé comme suit :

  • Chercher la quantité de produit RQ   : elle peut être livrée totalement par un seul acteur ou rassemblée par partie chez plusieurs acteurs.
  • Classer une série de parcours possibles par ordre croissant du coût de transport (qui dépend étroitement de la distance) pour transporter la quantité de produits OQ tout en respectant la durée DT.
  • Proposer la quantité Q j à prendre chez chaque participant faisant partie d’un parcours.
T
Tab. 5.2 : Algorithme de recherche de la quantité OQ (Algorithm search_OQ)

La figure 5.2 montre le diagramme de séquence AUML qui modélise les messages échangés entre l’agent AgentSCM_Dis i (distributeur)et les agents {( AgentSCM_Who i ) j / j [1, nw i ], nw i est le nombre total des grossistes collaboratifs du distributeur (i) } (ses grossistes clients).

F
Fig. 5.2 - Protocole d’interaction Distributeur / Grossistes

Si aucune solution n’est trouvée, ou si la valeur inacceptable de N (nombre maximal des grossistes impliqués dans un parcours pour rassembler la quantité RQ. N [1, nw i ]) est atteinte ou bien dans le cas où le SC manager n’est pas satisfait par les solutions proposées par le système, l’agent interagira avec les agents { AgentSCM_Dis k / k [1, nd], k ≠ i} des autres distributeurs en leur envoyant un message de performative QUERY-REF. Chaque agent applique son processus de décision afin de livrer la quantité RQ. Ils peuvent interagir avec les agents de leurs grossistes clients. La figure 5.3 montre le diagramme de séquence AUML modélisant les messages échangés entre les agents de différents distributeurs.

F
Fig. 5.3 - Protocole d’interaction Distributeur / Distributeurs