ANALYSE D`UN SYSTEME DE PILOTAGE MIXTE : PRODUCTION A

Transcription

ANALYSE D`UN SYSTEME DE PILOTAGE MIXTE : PRODUCTION A
3e Conférence Francophone de MOdélisation et SIMulation «Conception, Analyse et Gestion des Systèmes Industriels»
MOSIM’01 – du 25 au 27 avril 2001 - Troyes (France)
ANALYSE D’UN SYSTEME DE PILOTAGE MIXTE :
PRODUCTION A LA COMMANDE – PRODUCTION PAR ANTICIPATION
Khaled HADJ YOUSSEF*, Yves DALLERY*°
*
Laboratoire Productique-Logistique
Ecole Centrale Paris.
Grande Voie des Vignes 92 295 Châtenay-Malabry
cedex, France.
Mél : [email protected], [email protected]
Christian VAN DELFT°
° Département MIL
Groupe HEC.
78 351 Jouy-en-Josas cedex, France.
Mél : [email protected]
RESUME : Dans ce travail, on s’intéresse à l’optimisation des systèmes industriels assurant la production de deux
catégories de produits : des produits à demandes élevées qui sont fabriqués par anticipation et des produits à demandes
faibles (voire intermittentes) qui sont fabriqués à la commande.
Deux politiques de pilotage de flux ont été considérées pour ces systèmes : la politique FIFO (First In First Out) où le
premier produit qui est demandé sera le premier à occuper la machine, et ensuite la politique PP (Priorité avec Préemption) où on donne une priorité totale aux produits à demandes faibles sur les produits à demandes élevées.
Contrairement à ce que pourrait laisser supposer l'intuition les résultats présentés dans ce papier montrent que le passage d'une politique FIFO vers une politique PP n’est pas toujours bénéfique. Cependant, on remarque bien que ce
passage peut induire, dans plusieurs cas, un gain très important au niveau du coût total de production.
MOTS-CLES : Production à la commande ; Production par anticipation ; Partage de capacité ; FIFO ; Priorité.
1.
INTRODUCTION
Afin de pouvoir répondre aux demandes des clients dans
des délais courts, tout en minimisant le coût total de
production, les gestionnaires d'entreprises industrielles se
trouvent souvent obligés de répondre à trois questions
clés : quel produit fabriquer ? quand le fabriquer ? et
combien en fabriquer ?
Pour résoudre ce problème, on adopte généralement une
stratégie de production qui permet de déterminer les
grandes lignes des décisions à prendre dans ce contexte.
Parmi les stratégies généralement adoptées on cite :
• Production par anticipation (Make to stock) qui
consiste à constituer un stock de produits finis à partir
duquel les commandes des clients sont directement servies. Cette approche engendre généralement un délai
quasiment nul, un bon taux de service, un minimum de
temps de réponse, mais elle provoque en contre partie
des coûts de stockage importants.
Traditionnellement, cette stratégie est recommandée
pour la production en grande série des produits standards
à forts volumes de demandes.
• Production à la commande (Make to order) où on ne
commence la fabrication qu'à la réception de la demande. Cette approche élimine les stocks de produits
finis, par contre, elle augmente le temps de réponse de
l’entreprise.
Cette stratégie est recommandée pour les productions
unitaires et de petites séries des produits très personnalisés et à demande intermittente.
• Assemblage à la commande (Assemble to order) :
cette stratégie est une combinaison des deux précédentes ; elle consiste à fabriquer les composants du produit
par anticipation mais ne faire l’assemblage que sur
commande, ce qui est très utile dans le cas des produits
personnalisés et qui sont composés des pièces standards.
Plusieurs travaux de recherche ont traité le problème de
la sélection optimale de la stratégie de pilotage des flux
et de la détermination des paramètres associés (comme
les niveaux de stocks par exemple). D’autres travaux ont
analysé en particulier la stratégie de l'assemblage à la
commande, en étudiant le choix optimal de la frontière
qui divise le système de production en deux sous systèmes l’un fonctionnant par anticipation et l’autre à la
commande.
Dans cet article, on s’intéresse à un autre type de problèmes qui tournent autour de la problématique de la
combinaison des deux stratégies : fabrication à la commande et fabrication par anticipation. On considère ici
un système industriel réalisant la production de deux
catégories de produits: une famille de produits à demandes élevées qu’on note par HV (High Volume), pour
lesquels on adopte généralement une stratégie de production par anticipation, et ensuite une catégorie de
produits à demandes faibles, qu’on note par LV (Low
Volume), pour lesquels on adoptera plutôt une fabrication à la commande.
Il est clair ici qu’on aura un problème de partage de
capacité de production, où on sera amené à définir
l’ordre de passage des différents types de produit dans le
système.
La politique la plus naturelle, et la plus simple à gérer,
est la priorité FIFO (First In First Out). Dans ce cas, la
première commande arrivée est la première qui sera
réalisée.
MOSIM’01 – du 25 au 27 avril 2001 - Troyes (France)
Une politique alternative consiste à donner une priorité
totale aux produits LV sur les produits HV. Une telle
stratégie permet de diminuer le temps de réponse de
l’entreprise pour les produits LV. En contrepartie, elle va
causer nécessairement l’augmentation du niveau de stock
des produits de type HV.
Dans quelle mesure une telle approche est-elle plus efficace que la simple politique FIFO ? Comment fixer les
paramètres optimaux dans ces deux stratégies ? Telles
sont les questions auxquelles on a essayé de répondre
dans ce travail.
2.
MODELISATION DU PROBLEME
2.1. Hypothèses
•
Le temps de production suit une loi exponentielle
de taux µ quelle que soit la classe du produit.
• Les stocks sont à capacités illimitées.
• Pas de temps de changement de série, ni de phénomène de pannes.
Deux autres hypothèses ont été posées, qui fixent le
cadre des résultats obtenus :
• On suppose que kLV>>kHV : c'est-à-dire que le nombre des LV est largement supérieur au nombre des HV ;
la capacité de production étant toutefois également répartie entre les deux catégories de produits. Autrement
dit, si on appelle ρHV le taux d’utilisation de la machine
par les produits de type HV et ρLV le taux d’utilisation de
la machine par les produits de type LV, on prend
λi
=
∑
i =1 µ
k HV
Afin de pouvoir étudier le problème, plusieurs simplifications et hypothèses ont été prises :
• On s’intéresse à un système de production comportant un seul étage de fabrication (constitué d’une seule
machine) piloté selon le principe Base Stock Control
System (BSCS) dont le principe de fonctionnement est
décrit par la figure suivante :
l’hypothèse que ρHV = ρLV ⇔
∑
En particulier, si toutes les demandes des produits de
type HV ont le même taux d’arrivée λHV et que toutes les
demandes des produits de type LV ont le même taux
d’arrivée λLV on aura dans ce cas kHV.λHV = kLV.λLV. Or
puisque kLV>>kHV on aura λLV<<λHV.
B
demande
client
λi
i = k HV +1 µ
k
P
Livraison du
produit au client
M
D
Figure1. Principe de fonctionnement d’un système BSCS mono-produit
La file B contient les pièces brutes qui attendent de passer sur la machine M dès que cette dernière est disponible. La machine M contient les produits en cours de
fabrication. La file P contient les produits finis. La file D
contient les demandes clients.
Initialement, P contient un stock initial de s pièces, B, M
et D sont vides. L’arrivée d’une demande dans la file D
engendre en même temps l’arrivée d’un ordre de fabrication qui se traduit par l’entrée d’une nouvelle pièce
brute dans la file B. Si la demande arrive à D et trouve
une pièce disponible dans P, on livre immédiatement
cette pièce au client ceci se traduit par la diminution
d’une pièce de la file P et en même temps la diminution
d’une demande de la file D. Si la demande arrive à D et
ne trouve aucune pièce disponible dans P, elle reste en
attente jusqu'à ce qu’une pièce termine son traitement sur
la machine.
Pour plus de détails voir (Liberopoulos et Dallery, 2000)
• on suppose avoir k classes de produits, tels que les
premières classes (soit kHV classes) sont à demandes
élevées, tandis que le reste, soit kLV = k - kHV classes,
sont à demandes faibles.
• Les demandes sont unitaires et arrivent suivant une
loi de poisson de taux λi pour chaque classe i .
On a pris cette hypothèse pour deux raisons, la première
c’est qu’elle est très réaliste. En effet, on trouve généralement dans la plupart des petites et moyennes entreprises industrielles ces deux catégories des produits : la
catégorie très demandée, qui représente l’activité de base
de l’entreprise et qui est généralement produite par anticipation, et la deuxième catégorie qui comporte une large
gamme de produits qui sont rarement demandés donc qui
ne sont produits qu’à la commande. Ce qui explique bien
le choix de kLV>>kHV et λHV>>λLV.
La deuxième raison pour laquelle on a pris cette hypothèse c’est que si on s’intéresse à un système où ρHV est
nettement différente de ρLV , le problème de partage de
capacité n’aura plus cette grande importance vu qu’on se
trouvera dans la situation où on travaille presque en
totalité par anticipation ou dans le cas inverse en totalité
à la commande ce qui se contredit avec la problématique
initiale qu’on a posé.
• La deuxième hypothèse concerne la définition de la
règle de priorité des LV sur les HV ; on suppose que
cette priorité est avec préemption. Dès qu’une demande
d’un produit de type LV se présente, si le système est en
cours de traitement d'un produit de type HV, cette production est interrompue, et la demande de type LV est
traitée. Si on n’a plus de produit LV en attente, on re-
- 618 -
MOSIM’01 – du 25 au 27 avril 2001 - Troyes (France)
k
vient alors pour terminer le traitement des produits de
type HV. De plus, la priorité entre les produits de même
type est simplement FIFO.
Min Z(s1,s2,…..,sk) =
Ni : la variable aléatoire représentant le nombre de pièces
de type i présentes dans le système (stock des pièces
brutes et machine )
si : le stock nominal des produits finis de type i
X i : la variable aléatoire représentant le nombre de
pièces de type i présentes dans le stock des produits
finis
Yi : la variable aléatoire représentant le nombre de demandes de type i en attente
Di : la variable aléatoire représentant le temps d’attente
d’une demande de type i
On définit aussi :
hi : le coût unitaire ( par unité de produit par unité de
temps) de stockage des produits de type i
xi = E[ X i ] : le nombre moyen de pièces de type i
i
i =1
i
(s1,s2,…..,sk)
d i ≤ d ic . i = 1,2……k
si ≥ 0, ∀i
tq :
2.2. Notations
Dans tout ce qui suit, on adoptera la notation suivante :
µ : taux de service de la machine
ρ : taux d’occupation de la machine
k : le nombre de classes de produits, kHV : le nombre de
classes de produits de type HV, kLV : le nombre de classes de produits de type LV, avec kHV + kLV = k
Z : le coût total par unité de temps
Pour chaque classe i, (i = 1,2…..k), on définit :
λi : taux d’arrivée des demandes de type i
∑ h .x
3.
PRINCIPE DE RESOLUTION
Pour comparer les deux stratégies, il est nécessaire pour
chaque cas d'optimiser les paramètres du problème associé et d'évaluer le coût total optimal correspondant. Par
souci de clarté des diagrammes, on s’intéressera surtout à
la différence des coûts engendrés par les deux politiques
en étudiant le gain qu’on définit par :
G% =
Z FIFO − Z PRE
*100
Z FIFO
Où ZFIFO est le coût total optimal engendré si on emploie la politique FIFO et ZPRE est le coût total optimal
engendré si on emploie la politique Priorité Préemptive.
3.1.
Étude de la stratégie FIFO
(Buzacott et Shanthikumar, 1993) ont traité le problème
considéré ici dans le cas de la stratégie FIFO. Ils ont
démontré en particulier qu’on peut décomposer la problématique multi-produits en plusieurs problématiques
mono-produits indépendantes les unes des autres. Ce
résultat conduit à la reformulation suivante :
présentes dans le stock des produits finis
y i = E[ Yi ] : le nombre moyen de demandes de type i en
k
Min Z(s1,s2,…..,sk) =
attente
i =1
d i = E[Di] : le temps moyen d’attente des demandes de
valeur critique
d ic .
Formellement, ceci se traduit par:
i
(s1,s2,…..,sk)
d i ≤ d ic . i = 1,2……k
si ≥ 0, ∀i
2.3. Formulation
(s1,s2,…..,sk) qui minimisent le coût de stockage des produits finis, sous la contrainte que pour chaque type i de
demande, le temps moyen d’attente soit inférieur à une
i
tq :
type i
Deux types de formulations sont possibles. Le problème
peut tout d'abord être formulé comme la minimisation de
la somme du coût de stockage des produits et du coût
d’attente des demandes qui ne sont pas satisfaites immédiatement. Une formulation alternative consiste à minimiser le coût de stockage, sous la contrainte de satisfaire
un certain taux de service.
Dans ce travail on va adopter le second type. Plus précisément, on s’intéressera à la détermination des stocks
optimaux (s1* , s 2* ,...., s k* ) qui sont les valeurs respectives de
∑ h .x
Min Zi (si) = hi .x i (si)
d i ≤ d ic .
si ≥ 0
tq :
i = 1,2……k
Chaque sous-problème possède alors une solution analytique. En particulier (Buzacott et Shanthikumar, 1993)
ont obtenu l'expression des lois stationnaires des variables aléatoires Xi et Yi à partir de la loi stationnaire de Ni.
On peut, à partir de cela, calculer l'expression analytique
des valeurs de xi ( s i ) et de y i ( s i ) :
- 618 -
MOSIM’01 – du 25 au 27 avril 2001 - Troyes (France)
xi = si −
yi =
où :
(
ρˆ i
s
1 − ρˆ i i
1 − ρˆ i
)
y (s + a ) = [∇(− a ).Ps (X = 0etY = 0 )]
+
s +1
ρˆ i i
1 − ρˆ i
ρ̂ i =
µ − ∑λ j
j ≠i
)
  ln λ .d c (1 − ρˆ )
 
i
si* = MAX   i i
− 1,0 

 
ln ρˆ i
+∞
i = −∞
i =1
Où : ∇(x) = x si x > 0
= 0 si non
λi
Il est alors possible d'identifier pour chaque type de
produit le stock optimal si* solution du problème. (Hadj
youssef, 2000) a démontré que si* est donné par
l’expression suivante :
(
−1
∑ ∇(i − a ).Ps (X = i ) + ∑ ∇(i − a ).Ps (Y = i )
 
On peut donc calculer le coût optimal pour chaque classe
par l’expression :

ρˆ i 
s*  
Zi(si*) = hi .x i = hi.  s i* −
1 − ρˆ i i  
ˆ
1 − ρi 


Le coût total optimal associé à la politique FIFO est alors
et Ps(X=0 et Y=0) =1- [Ps(X ≠ 0) + Ps(Y ≠ 0)]
= Ps(X=0)+Ps(Y=0) - 1
En complément, d (s ) sera ensuite calculée directement
1
par la loi de Little : d ( s ) = y ( s ) .
λ
Cette propriété est très intéressante, car elle permet
d’évaluer les paramètres optimaux si* à partir d'une seule
simulation. Il nous suffit après de calculer le coût optimal pour chaque classe de produit par l’expression :
Zi(si*) = hi .x i puis d’en déduire le coût total optimal
engendré si on emploi la politique de la priorité, qui
k
n’est autre que : ZPRE =
∑ Z i ( si* ) .
i =1
k
donné par : ZFIFO =
∑ Z i ( si* ) .
i =1
4.
4.1. Hypothèses
3.2. Étude de la stratégie Priorité avec préemption
Dans le cas de la stratégie Priorité Préemptive, il n'existe
aucune expression analytique pour le coût total optimal
ZPRE. On a donc eu recours à une approche de simulation
pour estimer les valeurs numériques de ce coût. Une
propriété intéressante, liée à la structure du problème,
rend l'approche d'optimisation via simulation très efficace. En effet, soient Ps ( X = i ) la probabilité d’avoir i
pièces dans le stock de produits finis sachant qu’on a un
stock nominal de s pièces et Ps (Y = i ) la probabilité
d’avoir i demandes en attente sachant qu’on a un stock
nominal de s pièces. (Hadj youssef, 2000) a montré qu’il
suffit de connaître les distributions de probabilité stationnaires Ps ( X = i ) et Ps (Y = i ) ∀ i = 0, 1, 2…. , pour une
valeur particulière du paramètre s, pour pouvoir évaluer
les expressions x (s ) et y (s ) pour toutes les valeurs de
ce paramètre. Il a montré en effet, que pour tout entier a
(positif ou négatif) on a :
x (s + a ) = [∇(a ).Ps (X = 0etY = 0 )]
+
−1
+∞
i =−∞
i =1
∑ ∇(i + a ).Ps (Y = i ) + ∑ ∇(i + a ).Ps (X = i )
ETUDE NUMERIQUE
Les développements théoriques présentés ci-dessus ont
été illustrés sur un exemple numérique via une simulation à l’aide du logiciel Arena.
Les données numériques de l'exemple sont les suivantes :
kHV = 1, soit une classe unique de produits à demandes
élevées. kLV = 10, soit 10 classes distinctes de produits à
demandes faibles. Le taux de service de la machine est
fixé à µ = 10.
Le coût unitaire de stockage est de h=1 quelle que soit la
classe du produit.
Le taux d’utilisation de la machine ρ est fixé à 80%,
avec une répartition de la charge égale entre les deux
catégories des produits : les taux d'utilisation par les
deux classes sont donc ρHV = ρLV = 0.4
On suppose, en plus, que toutes les demandes de type
LV ont comme taux d’arrivée λi=0.4 , i =2,3...11.
4.2. Résultats numériques
4.2.1. La courbe de gain
La figure suivante présente la courbe du gain G en fonction du délai critique d’attente dc, définissant la
contrainte du modèle.
On rappelle qu’un gain positif signifie que la politique
de Priorité avec préemption est plus efficace, alors qu’un
gain négatif signifie le contraire.
- 618 -
MOSIM’01 – du 25 au 27 avril 2001 - Troyes (France)
100
80
60
40
20
gain%
0
0
0,05
0,1
0,15
0,2
0,25
0,3
0,35
0,4
0,45
-20
-40
Figure 2. Courbe de gain
-60
dc
La figure fait bien apparaître, que pour ce cas précis, le
gain est fortement positif dans certaines plages de valeurs du délai dc, mais négatif dans d'autres plages. La
structure de la politique optimale n'est donc pas évidente.
En particulier, il est faux de supposer que la stratégie de
Priorité avec préemption surpasse toujours la simple
stratégie FIFO.
25
20
15
S.HV_FIFO
S.LV_FIFO
S.HV_PRE
S.LV_PRE
10
5
0
0
0,05
0,1
0,15
0,2
0,25
dc
0,3
Figure 3. Valeurs des stocks optimaux
- 618 -
0,35
0,4
0,45
MOSIM’01 – du 25 au 27 avril 2001 - Troyes (France)
4.2.2. Les valeurs des stocks optimaux
La figure ci-dessous présente, en fonction du délai dc, les
valeurs de S.HV_FIFO, S.LV_FIFO, S.HV_PRE et S.LV_ PRE : les
stocks optimaux des produits HV et LV suivant les deux
politiques considérées ici.
On observe ici que le stock optimal des produits à volume élevé est plus grand si on emploie la priorité préemptive que si on emploie la politique FIFO (S.HV_PRE >
S.HV_FIFO). Ceci est bien expliqué par le fait qu’on leur a
réservé moins de capacité en faisant la priorité. On remarque par contre que le stock optimal des produits à
volume faible a baissé en faisant la priorité (S.LV_PRE ≤
S.LV_FIFO), ce qui est évidant du moment où on leur a
donné une priorité totale.
Si on observe ce qui se passe en un point particulier de la
courbe, pour dc = 0.35 par exemple, on constate bien que
l’emploi de la politique de la priorité au lieu de FIFO à
engendré la diminution d’une pièce pour chaque classe
de produits à volume faibles, étant donné qu’on a dix
classes de ce type, on a pu en total diminuer les stocks
initiaux de cette catégorie de dix pièces. On constate par
contre que l’augmentation du stock de la classe des produits à volume élevé causé par l’emploi de cette politique, n’est que de trois pièces, ce qui explique le fait
qu’on a un gain total positif pour dc=0.35
En suivant le même raisonnement pour le point dc =
0.12, on observe que l’emploi de la politique de la priorité n’a pas baissé le niveaux des stocks des produits à
volumes faibles (SLV_FIFO = SLV_PRE) par contre, il a causé une augmentation du stock initial de la classe des
produits à volume élevé, ceci engendre évidemment un
gain total négatif.
L'explication de cette situation est sans doute liée à l'aspect discret des valeurs possibles pour les niveaux de
stock. On peut postuler que si les stocks pouvaient prendre des valeurs réelles, on trouverait SLV_FIFO > SLV_PRE
pour toutes les valeurs de dc.
5.
Il convient toutefois de signaler que de nombreuses hypothèses ont été posées. Tout d'abord, on n'a pas considéré de coût fixe au niveau des coûts de stocks. De tels
coûts fixes favoriseraient la politique PP, en ce sens que
cette politique permet d'éliminer complètement certains
stocks de produits LV.
De plus, on n'a pas introduit de coût de changement de
série, ni de notion de délai client qui peuvent influencer
la nature des résultats obtenus. De tels problèmes font
l'objet de nouvelles recherches, en cours actuellement.
REFERENCES
Buzacott J.A. and J.G. Shanthikumar, 1993. Stochastic
models of manufacturing systems, Prentice Hall.
Hadj youssef K., 2000. Analyse d’un système de pilotage
mixte. Mémoire de DEA, Laboratoire ProductiqueLogistique, Ecole Centrale Paris, France.
Liberopoulos G. and Y. Dallery, 2000. A unified framework for pull control mecanisms in multi-stage manufacturing systems, Annals of Operations Research,
Volume on Performance Evaluation Of Production
Lines, 93, Pages 325-355.
CONCLUSION
Cette recherche étudie et compare les performances de
deux politiques de gestion des flux (la politique FIFO et
la politique de la priorité avec préemption ) dans un
cadre multi-produit.
Des résultats analytiques sont disponibles pour caractériser la politique FIFO, alors que les performances de la
politique PP ont été estimées par simulation, aucune
approche analytique n'étant disponible. Il a ainsi été
possible de calculer les stocks optimaux (et les coûts
totaux correspondants) pour ces deux politiques.
Cette étude présente un exemple numérique évaluant le
gain que peut apporter le passage d'une politique FIFO
vers une politique PP. Les résultats obtenus dans ce cas
précis, montrent que ce gain n’est pas toujours positif,
contrairement à ce que pourrait laisser supposer l'intuition. Cependant, dans certaines plages de valeurs pour
les données, on observe un gain très important au niveau
du coût total (de l'ordre de 80%).
- 618 -