perturbations des temps opératoires
Transcription
perturbations des temps opératoires
8e Conférence Internationale de MOdélisation et SIMulation - MOSIM’10 - 10 au 12 mai 2010 - Hammamet - Tunisie «Évaluation et optimisation des systèmes innovants de production de biens et de services» ANALYSE DE SENSIBILITÉ DU PROBLEME DE L’ÉQUILIBRAGE DES LIGNES D’USINAGE : PERTURBATIONS DES TEMPS OPÉRATOIRES Evgeny Gurevsky, Olga Guschinskaya, Alexandre Dolgui LSTI / École Nationale Supérieure des Mines de Saint-Étienne 158, cours Fauriel, 42023 Saint-Étienne Cédex 2, France [email protected], [email protected], [email protected] RÉSUMÉ : Dans cet article, nous considérons le problème d’équilibrage des lignes d’usinage à boı̂tiers multibroches dans le cadre de la conception de ces lignes en avant-projet. À cette étape de la conception, la pièce à fabriquer subit souvent des modifications de la part du client. Par conséquent, les concepteurs des systèmes d’usinage ont besoin des outils d’évaluation de la sensibilité des solutions qu’ils développent à ces changements. L’objectif de cet article est d’analyser la sensibilité des solutions optimales (réalisables) trouvées pour le vecteur des temps opératoires initial aux variations de ces derniers. Nous proposons des conditions nécessaires et suffisantes de la stabilité des solutions optimales et de la promesse pour les solutions réalisables ainsi que des techniques de calcul du rayon de promesse pour les solutions réalisables et du rayon de stabilité pour les solutions optimales. MOTS-CLÉS : Équilibrage des lignes d’usinage, Optimisation combinatoire, Analyse de sensibilité. 1 INTRODUCTION Les lignes d’usinage à boı̂tiers multibroches sont constituées d’une chaı̂ne de postes de travail reliés par un dispositif de transfert de pièce. Ainsi, chaque pièce chargée sur la ligne passe par tous les postes de travail dans l’ordre de leur disposition. Toutes les pièces se trouvant sur la ligne sont déplacées simultanément vers le poste de travail suivant et cela à intervalle de temps régulier, appelé le temps de cycle de la ligne. Afin d’assurer le déplacement synchrone de piéces et d’éviter l’utilisation de stocks tampons entre les postes, le temps d’usinage sur chaque poste de travail doit être inférieur au temps de cycle objectif, désigné par T0 . La pièce subit des opérations d’usinage sur chaque poste de travail de la ligne. Pour cela, chaque poste de travail est muni d’au moins un boı̂tier. Les boı̂tiers peuvent comporter un ou plusieurs outils. Dans le dernier cas, il s’agit des boı̂tiers multibroches qui sont utilisés pour effectuer simultanément un ensemble d’opérations. Un tel ensemble est appelé bloc d’opérations. Les boı̂tiers de chaque poste sont activés en séquence. L’ordre de déclenchement de boı̂tiers et l’affectation d’outils à chaque boı̂tier sont à définir lors de la conception de la ligne. A l’étape de la conception en avant-projet, considérée dans cet article, les concepteurs cherchent à trouver, pour une pièce donnée, la configuration de la ligne minimisant son coût. Les décisions à prendre sont alors les suivantes : • Combien de d’installer ? postes de travail convient-il • Combien de boı̂tiers mettre à chaque poste de travail ? • Quelles opérations exécuter par chaque boı̂tier ? • Dans quel ordre activer les boı̂tiers installés sur chaque poste de travail ? Afin de trouver une solution efficace, il convient de considérer toutes les solutions possibles d’affectation des opérations (des outils) à des boı̂tiers et à des postes de travail tout en respectant les régles technologiques et techniques liées d’une part au processus de fabrication et d’autre part aux caractéristiques des équipements. Ce problème d’optimisation est connu sous le nom TLBP (Transfer Line Balancing Problem). Le modèle mathématique utilisé pour ce problème est donné de manière plus rigoureuse dans la section suivante. Un ensemble de méthodes d’optimisation a été proposé dans la littérature pour la résolution de ce problème. Une étude comparant ces méthodes a été présentée dans (Guschinskaya et Dolgui, 2009). MOSIM’10 - 10 au 12 mai 2010 - Hammamet - Tunisie Le but de cet article n’est donc pas de développer une nouvelle méthode de résolution, mais d’analyser la stabilité (la promesse) des solutions optimales (réalisables) qui peuvent être obtenues en utilisant une des méthodes exactes (approchées) déjà proposées pour ce problème. Dans le modèle utilisé jusqu’à présent, les temps opératoires ont été considérés déterministes. Dans notre étude, nous évaluons la sensibilité des solutions optimales aux variations possibles des temps opératoires. Cette étude rejoint les travaux présentant l’analyse de sensibilité du problème d’équilibrage des lignes d’assemblage : de type SALBP-1 (Simple Assembly Line Balancing Problem of type 1) étudié dans (Sotskov et al., 2006) et de type SALBP-2 (Gurevsky et al., 2009b). Par ailleurs, des travaux similaires ont été effectués pour des problèmes d’ordonnancement (Guinand et al., 2004), (Hall et Posner, 2004), (Herroelen et Leus, 2005) ainsi que pour d’autres problèmes d’optimisation, par exemple, (Belgacem et Hifi, 2008) et (Kılınç-Karzan et al., 2009). Le reste de cet article est organisé comme suit. Dans la section 2 nous présentons le modèle mathématique du TLBP. Ensuite, nous introduisons les définitions et propriétés de base du problème utilisées dans le cadre de l’analyse de sensibilité. Un exemple démonstratif est donné dans la section 4. L’analyse de sensibilité du TLBP est etudiée dans la section 5. Section 6 présente des conclusions et des perspectives. 2 FORMULATION DU PROBLÈME Nous supposons que les données suivantes sont connues pour une instance du problème TLBP : • V = {1, 2, . . . , n} est l’ensemble des opérations d’usinage nécessaires pour la fabrication de la pièce ; • tj ∈ R> , est le temps opératoire de l’opération j, j ∈ V ; • t = (t1 , t2 , . . . , tn ), est le vecteur des temps opératoires (vecteur temporel) de toutes les opérations de l’ensemble V ; • T0 est le temps de cycle d’usinage à ne pas dépasser (calculé sur la base de la productivité requise et du rendement de la ligne d’usinage) ; • C1 et C2 sont les coûts d’un poste de travail (poste) et d’un boı̂tier (bloc), respectivement ; Les contraintes suivantes doivent être prises en compte : • Les contraintes de précédence exprimant l’ordre du déroulement des opérations, imposé par la technologie d’usinage utilisée. Ce type de contraintes est modélisé par un graphe orienté G = (V, D), dans lequel un arc (i, j) ∈ D ⊆ V × V si l’opération i ne peut pas être exécutée après l’exécution de l’opération j. Les contraintes de précédence sont « non strictes », cela signifie que les opérations i et j, telles que (i, j) ∈ D, peuvent être affectées au même bloc, c’est-à-dire peuvent être exécutées simultanément par le même boı̂tier. • Les contraintes d’inclusion qui traduisent la nécessité d’exécuter certaines opérations sur le même poste, notamment afin de respecter la tolérance de position requise. Ce type de contraintes peut être représenté par une collection I p de sous-ensembles e ⊂ V d’opérations, tels que toutes les opérations appartenant à l’ensemble e doivent être impérativement affectées au même poste. • Les contraintes d’exclusion au niveau des postes qui traduisent l’impossibilité d’exécuter certaines opérations sur le même poste. Ce type de contraintes peut être représenté par une collection E p de sous-ensembles e ⊂ V d’opérations, tels qu’au moins une opération de chaque ensemble e ∈ E p ne doit pas être affectée au même poste que les autres opérations de cet ensemble. • Les contraintes d’exclusion au niveau des blocs qui viennent de l’impossibilité d’exécuter certaines opérations par le même boı̂tier. Par exemple, les opérations correspondantes à deux faces différentes de la pièce ne peuvent pas être réalisées par le même boı̂tier. Ce type de contraintes peut être représenté par une collection E b de sous-ensembles e ⊂ V d’opérations, tels qu’au moins une opération de chaque ensemble e ∈ V ne doit pas être affectée au même bloc que les autres opérations de cet ensemble. Pour modéliser la contrainte sur le temps de cycle, nous avons besoin des notations supplémentaires : • P s = {1, . . . , ps }, ps ≤ p0 , est l’ensemble de postes de la solution s qui définit une des affectations possibles des opérations aux postes et aux blocs ; • p0 est le nombre maximum autorisé de postes sur la ligne d’usinage ; • Bks = {1, . . . , bsk }, bsk ≤ b0 , est l’ensemble des blocs du k-ème poste de la solution s ; • b0 le nombre total maximum autorisé de blocs par poste. • Vks , k ∈ P s , est l’ensemble des opérations affectées au k-ème poste de la solution s ; MOSIM’10 - 10 au 12 mai 2010 - Hammamet - Tunisie • Vkls , k ∈ P s , l ∈ Bks , est l’ensemble des opérations affectées au l-ème bloc du k-ème poste de la solution s ; • tb (V ) = max{tj : j ∈ V } est le temps d’usinage nécessaire pour exécuter un bloc d’opérations V , défini comme le temps opératoire maximal parmi les opérations qui lui appartiennent. Par la suite, nous supposons que tb (∅) = 0. En utilisant ces notations, la contrainte du temps de cycle peut être introduite comme suit : tp (Vks ) = X tb (Vkls ) ≤ T0 , k ∈ P s , l∈Bks ou bien t(s) = maxs tp (Vks ) ≤ T0 , k∈P où tp (Vks ) est le temps d’usinage sur le k-ème poste. Ce temps est calculé comme la somme des temps d’usinage de tous les blocs sur un poste de travail, car les boı̂tiers d’usinage sont activés de façon séquentielle. Le temps de cycle réel de la ligne est défini par la valeur de t(s). Ainsi une solution s pour une instance du TLBP peut être représentée comme une collection Vs = s s s s , . . . , V1b {{V11 s }, . . . , {Vps 1 , . . . , Vps bs }} déterminant 1 ps l’affectation de l’ensemble d’opérations V aux postes et aux blocs. Le problème TLBP consiste à minimiser le coût d’investissement que la ligne d’usinage necessite et qui peut être représenté de la façon suivante : C(s) = C1 ps + C2 X k∈P s bsk → min , s∈Sr (t) où Sr (t) est l’ensemble de toutes les solutions réalisables pour le vecteur temporel t. Dans la formulation de base du TLBP, le temps d’exécution des opérations est déterministe. Cette hypothèse ne représente pas toujours la réalité industrielle. Dans cet article, nous considérons que l’ensemble V contient deux types d’opération : • les opérations à temps variable : leurs temps d’exécution peuvent varier durant la période de la conception de la ligne. L’ensemble de ces e ; opérations est dénoté V • les opérations à temps fixe : leur temps d’exécution peuvent être considérés invariables durant la période de la conception de la ligne. Ces opérations constituent l’ensemble V = V \ e V. e = Sans perte de generalité, nous supposons que V {1, 2, . . . , ñ} et V = {ñ + 1, ñ + 2, . . . , n}, où 0 < ñ ≤ n. Ainsi t = (t1 , t2 , . . . , tñ , tñ+1 , . . . , tn ) et V = {1, 2, . . . , ñ, ñ + 1, . . . , n}. Dans cette étude, nous cherchons à répondre aux questions suivantes : est-ce que la solution optimale (réalisable) trouvée garde son optimalité (sa réalisation) aux petites variations des temps opératoires ? Et si oui, alors, quel est son rayon de stabilité (de promesse), quelle est la valeur maximale de ces perturbations permettant à la solution garder son optimalité (sa réalisation) ? Avant de présenter les techniques que nous proposons pour trouver des réponses à ces questions, nous introduisons quelques propriétés du problème étudié. 3 DÉFINITIONS ET PROPRIÉTÉS DE BASE Définition 1. Une solution s est considérée quasiréalisable (s ∈ Sqr ), si elle satisfait toutes les contraintes de précédence, d’inclusion, d’exclusion, mais ne satisfait pas forcement la contrainte sur le temps de cycle. Etant donné que la contrainte sur le temps de cycle n’est pas vérifiée pour les solutions de l’ensemble Sqr , cet ensemble ne dépend pas du vecteur t. Soit Sopt (t) l’ensemble de toutes les solutions optimales pour le vecteur temporel initial t, soit : Sopt (t) = {s ∈ Sr (t) : C(s) = Cmin (t)}, où Cmin (t) = min{C(s) : s ∈ Sr (t)} est le coût minimal parmi toutes les solutions réalisables pour le vecteur temporel t. Évidemment, Sopt (t) ⊆ Sr (t) ⊆ Sqr . b qr (t) l’ensemble des solutions quasi-réalisables Soit S dont le coût est inférieur au coût optimal des solutions qui respectent toutes les contraintes : b qr (t) = {s ∈ Sqr : C(s) < Cmin (t)}. S b qr (t) ⊆ Sqr \ Sr (t). Il est évident que S Les variations possibles des temps opératoires sont modélisées par le vecteur ξ = (ξ1 , ξ2 , . . . , ξñ , 0, 0, . . . , 0) ∈ Rn . De cette façon, le vecteur temporel perturbé à un moment donné du fonctionnement de la ligne peut être représenté par le vecteur t∗ = (t1 + ξ1 , t2 + ξ2 , . . . , tñ + ξñ , tñ+1 , . . . , tn ). Remarque 1. Vu la non-négativité du temps opérae toire, nous supposons que t∗j = max{0, tj +ξj }, j ∈ V. Remarque 2. Nous pouvons constater que les variations des temps opératoires ne modifient ni contraintes de précédence, ni celles d’inclusion ou MOSIM’10 - 10 au 12 mai 2010 - Hammamet - Tunisie d’exclusion, mais peuvent rendre une solution optimale pour le vecteur temporel initial irréalisable pour un vecteur perturbé. De même façon, une solution irréalisable pour le vecteur temporel initial peut devenir réalisable et même optimale pour un vecteur perturbé. Pour simplifier la suite du développement, nous introduisons les notations suivantes : • d(t, t0 ) = max{|tj −t0j | : j ∈ V} définit la distance entre deux vecteurs temporels t, t0 ∈ Rn> ; • Ω(ε, t) = {t0 ∈ Rn≥ : tj = t0j , j ∈ V & d(t, t0 ) < ε}, ε > 0, définit ε-voisinage de t dans l’espace des vecteurs temporels tel que la distance entre un vectuer de ce voisinage et t ne dépasse pas ε ; 0. D’autre part, si la solution s ∈ Sopt (t) est stable (ρst (s, t) > 0), elle est prometteuse, car ρpr (s, t) > 0. 4 Pour simplifier la compréhension des définitions et des notations précédemment introduites, nous présentons un exemple numérique. Les données suivantes sont e = {1, 2, 3, 4}, t = (0.5, 0.4, 0.4, 0.4), utilisées : V = V T0 = 0.89, C1 = 1.0, C2 = 0.5, p0 = 2, b0 = 2. Les contraintes de précédence sont présentées dans la Figure 1, E b = {{1, 2}, {1, 3}}, E p = {∅}, I p = {{2, 3, 4}}. t2 = 0.4 2 t1 = 0.5 1 • Ξr (s, t) = {ε > 0 : ∀t0 ∈ Ω(ε, t) (s ∈ Sr (t0 ))} est un ensemble des valeurs de ε telles que si t0 se trouve dans ε-voisinage de t, alors la solution s reste réalisable pour t0 aussi ; • Ξopt (s, t) = {ε > 0 : ∀t0 ∈ Ω(ε, t) (s ∈ Sopt (t0 ))} est un ensemble des valeurs de ε telles que si t0 se trouve dans ε-voisinage de t, alors la solution s garde son optimalité pour t0 aussi. Définition 2. La solution s ∈ Sr (t) est dite prometteuse, si l’ensemble Ξr (s, t) n’est pas vide et appelée critique, si cet ensemble est vide. Définition 3. La solution s ∈ Sopt (t) est considérée stable, si l’ensemble Ξopt (s, t) n’est pas vide et instable sinon. En utilisant ces notations, nous pouvons définir les rayons de promesse et de stabilité des solutions réalisables et optimales, respectivement. Définition 4. Le rayon de promesse ρpr (s, t) de la solution s ∈ Sr (t) est défini de la façon suivante : ρpr (s, t) = sup Ξr (s, t), si Ξr (s, t) 6= ∅ et ρpr (s, t) = 0 sinon. Définition 5. Le rayon de stabilité ρst (s, t) de la solution s ∈ Sopt (t) est défini comme suit : ρst (s, t) = sup Ξopt (s, t), si Ξopt (s, t) 6= ∅ et ρst (s, t) = 0 sinon. Les rayons de promesse (de stabilité) d’une solution réalisable (optimale) donne la valeur maximale des pérturbations indépendantes des temps opératoires pour laquelle la solution reste réalisable (optimale). La propriété suivante est immédiate. Propriété 1. Pour chaque s ∈ Sopt (t) : ρst (s, t) ≤ ρpr (s, t). Par conséquent, si la solution s ∈ Sopt (t) est critique (ρpr (s, t) = 0), alors elle est instable, car ρst (s, t) = EXEMPLE t4 = 0.4 4 3 t3 = 0.4 Figure 1: Contraintes de précédence. Pour le problème considéré, il existe cinq solutions quasi-réalisables Sqr = {s1 , s2 , s3 , s4 , s5 }, à savoir : s1 s1 s1 : V11 = {1} V21 = {2, 3, 4} s1 s1 tb (V11 ) = 0.5 tb (V21 ) = 0.4 C(s1 ) = 3 t(s1 ) = 0.5 s2 s2 = {2, 3, 4} = {1} V12 s2 : V11 s2 s2 ) = 0.4 tb (V11 ) = 0.5 tb (V12 C(s2 ) = 2 t(s2 ) = 0.9 s3 s3 s3 s3 : V11 = {1} V21 = {2} V22 = {3, 4} s3 s3 s3 tb (V11 ) = 0.5 tb (V21 ) = 0.4 tb (V22 ) = 0.4 C(s3 ) = 3.5 t(s3 ) = 0.8 s4 s4 s4 = {2, 4} = {3} V22 = {1} V21 s4 : V11 s4 s4 s4 ) = 0.4 tb (V11 ) = 0.5 tb (V21 ) = 0.4 tb (V22 C(s4 ) = 3.5 t(s4 ) = 0.8 s5 s5 s5 s5 : V11 = {1} V21 = {2, 3} V22 = {4} s5 s5 s5 ) = 0.4 tb (V11 ) = 0.5 tb (V21 ) = 0.4 tb (V22 C(s5 ) = 3.5 t(s5 ) = 0.8 En analysant ces solutions, nous constatons que Cmin (t) = 3, Sr (t) = {s1 , s3 , s4 , s5 }, Sopt (t) = {s1 }, b qr (t) = {s2 }. La solution s2 n’est pas optimale S malgré C(s2 ) < Cmin (t), car elle ne vérifie pas la contrainte sur le temps de cycle : t(s2 ) = 0.9 > T0 = 0.89. Néanmoins, elle devient optimale pour le vecteur perturbé t∗ = (t1 − 0.005, t2 − 0.005, t3 − 0.005, t4 − 0.005). Pour ce vecteur, Cmin (t∗ ) = 2, Sr (t∗ ) = {s1 , s2 , s3 , s4 , s5 }, Sopt (t∗ ) = {s2 }, b qr (t∗ ) = ∅. S 5 ANALYSE DE SENSIBILITÉ Dans cette section, nous présentons les résultats de l’analyse de sensibilité du TLBP aux perturbations des temps opératoires. Pour cela, nous introduisons les notations suivantes : MOSIM’10 - 10 au 12 mai 2010 - Hammamet - Tunisie • Pes = {k ∈ P s : Veks 6= ∅} est l’ensemble des numéros des postes contenant au moins une opération à temps variable ; e s = {l ∈ B s : Ve s 6= ∅} est l’ensemble des • B k k kl numéros des blocs du k-ème poste contenant au moins une opération à temps variable ; es , • ∆skl (t) = tb (Vkls ) − tb (Vekls ), k ∈ Pes , l ∈ B k est l’écart temporel entre le temps d’usinage du l-ème bloc du k-ème poste de la solution s et le temps opératoire maximal des opérations à temps variable affectées à ce bloc ; e s } est l’ensemble des • ∆sk (t) = {∆skl (t) : l ∈ B k écarts temporels du k-ème poste de la solution s. Compte tenu de l’hypothèse que 0 < ñ ≤ n, les ene s , k ∈ Pes , ne sont pas vides. sembles Pes et B k es , Propriété 2. Si ∆skl (t) > 0, où k ∈ Pes , l ∈ B k alors ∀ε ≤ ∆skl (t) ∀t0 ∈ Ω(ε, t) (t0b (Vkls ) = tb (Vkls )). Lemme 1. Pour chaque k ∈ Pes tel que tp (Vks ) < T0 : ∃ε > 0 ∀t0 ∈ Ω(ε, t) (t0p (Vks ) < T0 ). Démonstration. Admettons ε = pour chaque t0 ∈ Ω(ε, t) : X X t0p (Vks ) = t0b (Vkls ) = l∈Bks = X + es l∈B k (tb (Vkls ) t0b (Vkls )+ es l∈Bks \B k tb (Vkls ) + es l∈Bks \B k X T0 −tp (Vks ) , es | |B k X X + ε) = t0b (Vkls ) = tb (Vkls )+ es l∈Bks \B k tb (Vkls ) es l∈Bks \B k eks | = tp (Vks ) + +ε|B X + X tb (Vkls )+ es l∈B k T0 − tp (Vks ) e s |Bk | = T0 . ¥ es | |B k Lemme 1 démontre que s’il existe un poste k ∈ Pes dans la solution s avec le temps d’usinage inférieur au temps de cycle objectif T0 , alors il existe un voisinage de t dans l’espace des vecteurs temporels tel que le temps d’usinage de ce poste reste inferieur à T0 pour un vecteur perturbé appartenant à ce voisinage. es Lemme 2. Soit k ∈ Pes , si pour chaque l ∈ B k s ∆kl (t) > 0, alors ∃ε > 0 ∀t0 ∈ Ω(ε, t) (t0p (Vks ) = tp (Vks )). l∈Bks = X es l∈Bks \B k tb (Vkls ) + es l∈Bks \B k X es l∈B k tb (Vkls ) = tp (Vks ). ¥ es l∈B k Théorème 1. La solution s ∈ Sr (t) est critique si et seulement s’il existe un poste k ∗ ∈ Pes et un bloc e s∗ appartenant à ce poste tels que l∗ ∈ B k ∆sk∗ l∗ (t) = 0 et tp (Vks∗ ) = T0 . (1) Démonstration. Critère de suffisance. Étant donné que ∆sk∗ l∗ (t) = 0, nous constatons qu’il existe une opération j ∗ ∈ Veks∗ l∗ telle que tj ∗ = tb (Vks∗ l∗ ). En admettant ε > 0 et en construisant les composants du vecteur temporel t∗ comme suit : ( tj + δ, si j = j ∗ , ∗ tj = tj sinon, où 0 < δ < ε, nous obtenons que t∗ ∈ Ω(ε, t) et, en prenant en compte la partie droite de la condition (1), nous avons : X X t∗b (Vks∗ l )+ t∗b (Vks∗ l ) = t∗ (s) ≥ t∗p (Vks∗ ) = l∈Bks∗ alors es l∈B k t0b (Vkls ) < es l∈B k X Démonstration. Admettons ε = min{∆skl (t) : l ∈ e s }. Compte tenu de la Propriété 2, nous obtenons B k que pour chaque t0 ∈ Ω(ε, t) : X X X t0p (Vks ) = t0b (Vkls ) = t0b (Vkls )+ t0b (Vkls ) = +t∗b (Vks∗ l∗ ) = X l∈Bks∗ \{l∗ } tb (Vks∗ l ) + tb (Vks∗ l∗ ) + δ = l∈Bks∗ \{l∗ } = tp (Vks∗ ) + δ > T0 . Nous constatons que la solution s n’est plus réalisable, c’est-à-dire : ∀ε > 0 ∃t∗ ∈ Ω(ε, t) (s ∈ / Sr (t∗ )). Alors Ξr (s, t) = ∅, selon la Définition 2 il en découle que s est critique. Critère de nécessité. Supposons que s est critique, e s : ∆s (t) > 0 soit mais pour chaque k ∈ Pes et l ∈ B kl k tp (Vks ) < T0 . Considérons deux cas possibles pour chaque k ∈ Pes . Cas 1 : tp (Vks ) < T0 . Alors d’après le Lemme 1, nous avons ∃ε1 (k) > 0 ∀t0 ∈ Ω(ε1 (k), t) (t0p (Vks ) < T0 ). Cas 2 : tp (Vks ) < T0 n’est pas vérifié. Alors tp (Vks ) = es T0 (car s est réalisable) et pour chaque l ∈ B k s ∆kl (t) > 0. Selon le Lemme 2, nous obtenons ∃ε2 (k) > 0 ∀t0 ∈ Ω(ε2 (k), t) (t0p (Vks ) = T0 ). MOSIM’10 - 10 au 12 mai 2010 - Hammamet - Tunisie En résumant ces deux cas, nous pouvons constater que pour chaque k ∈ Pes : ∃ε(k) > 0 ∀t0 ∈ Ω(ε(k), t) (t0p (Vks ) ≤ T0 ), où ( ε1 (k), ε(k) = ε2 (k) si tp (Vks ) < T0 , sinon. Compte tenu de la continuité de la fonction t(·), la propriété suivante est évidente : b qr (t) : Propriété 3. Pour chaque s0 ∈ S ∃ε > 0 ∀t0 ∈ Ω(ε, t) (s0 ∈ / Sr (t0 )). Par conséquent, il existe ε∗ = min{ε(k) : k ∈ Pes }, tel que pour chaque t0 ∈ Ω(ε∗ , t) nous obtenons Théorème 2. La solution s ∈ Sopt (t) est instable si et seulement si elle est critique. t0 (s) = maxs t0p (Vks ) = max{ max t0p (Vks ), Démonstration. Critère de suffisance. Soit s ∈ Sopt (t) est critique, alors ρpr (s, t) = 0. Selon la Propriété 1, ρst (s, t) = 0, autrement dit s est instable. k∈P es k∈P s \P max tp0 (Vks )} ≤ max{ max tp (Vks ), T0 } ≤ T0 . es k∈P s \P es k∈P Autrement dit, ∃ε∗ > 0 ∀t0 ∈ Ω(ε∗ , t) (s ∈ Sr (t0 )). Par conséquent, selon la Définition 2, Ξr (s, t) 6= ∅, c’est-à-dire s est prometteuse. ¥ Les Lemmes 1, 2 et Théorème 1 nous permettent de proposer l’Algorithme 1 pour le calcul exact du rayon de promesse d’une solution réalisable. pour chaque k ∈ Pes faire Initialiser i = 0, cur = 1, Rks = 0, ∆skl0 (t) = 0, Tint = tp (Vks ). Trier par ordre ascendant l’ensemble ∆sk (t) = {∆skl1 (t), ∆skl2 (t), . . . , ∆skl|∆s (t)| (t)}. tant que cur ≤ |∆sk (t)| faire δ = ∆sklcur (t) − ∆sklcur−1 (t) si Tint + iδ ≤ T0 alors Tint = Tint + iδ Rks = Rks + δ i=i+1 sinon Quitter cur = cur + 1 si Tint < T0 alors int Rks = Rks + T0 −T i ρpr (s, t) = min{Rks Critère de nécessité. Supposons que s est instable, mais elle est prometteuse. Alors d’après la Définition 2, nous avons ∃ε1 > 0 ∀t0 ∈ Ω(ε1 , t) (s ∈ Sr (t0 )). En prenant en compte la Propriété 3, nous constatons b qr (t) ∀t0 ∈ Ω(ε, t) (s0 ∈ ∃ε2 > 0 ∀s0 ∈ S / Sr (t0 )). Cela signifie qu’il existe un ε-voisinage du vecteur temporel t où ε = min{ε1 , ε2 } tel qu’aucune solub qr (t) ne devient réalisable pour le tion d’ensemble S vecteur perturbé. Dans le cadre de ce voisinage, la solution s reste alors optimale, par conséquent, elle est stable. ¥ k : k ∈ Pes }. Algorithme 1. Calcul du rayon de promesse pour s ∈ Sr (t). Cet algorithme est P polynomial avec la complexité égale à O(|V| + k∈Pes |∆sk (t)| log2 |∆sk (t)|). Ce fait rend possible l’utilisation de cet algorithme dans un environnement industriel lors de la conception des lignes d’usinage à boı̂tiers multibroches en avantprojet. Pour l’exemple présenté dans la section 4, nous avons : ρpr (s1 , t) = 0.39, ρpr (s3 , t) = ρpr (s4 , t) = ρpr (s5 , t) = 0.045. Pour calculer le rayon de stabilité d’une solution optimale, il faut également tenir compte de la possibilité b qr (t) deviennent que certaines solutions d’ensemble S réalisables. Quelques notations supplémentaires sont utilisées pour ce calcul effectué avec l’Algorithme 2 : • Pbs = {k ∈ P s : tp (Vks ) > T0 } est l’ensemble des postes de la solution s où le temps d’usinage est supérieur au temps de cycle objectif T0 ; b s (t) = tb (Ve s ) − tb (V skl ), k ∈ Pbs , l ∈ B e s , est • ∆ kl kl k l’écart temporel entre le temps opératoire maximal des opérations à temps variable et de celles à temps fixe appartenant au l-ème bloc du k-ème poste de la solution s ; e s } est l’ensemble b s (t) > 0 : l ∈ B b s (t) = {∆ • ∆ k kl k des écarts temporels positifs du k-ème poste de la solution s. L’algorithme 2 est aussi polynomial avec la complexP b s (t)| log2 |∆ b s (t)|). ité qui est égale à O(|V|+ k∈Pbs |∆ k k Les Théorèmes 1, 2 et la Remarque 2 impliquent le théorème suivant. MOSIM’10 - 10 au 12 mai 2010 - Hammamet - Tunisie pour chaque k ∈ Pbs faire e s = ∅ ou ∆ b s (t) = ∅ alors si B k k s b Rk = ∞, Stop /* La solution s ne peut jamais être réalisable b s (t)|, cur = 1, R bs = 0, Initialiser i = |∆ k k s s b ∆kl0 (t) = 0, Tint = tp (Vk ). Trier à l’ascendance l’ensemble b s (t) = {∆ b s (t), ∆ b s (t), . . . , ∆ bs ∆ (t)}. k kl1 kl2 kl b s |∆ (t)| k b s (t)| faire tant que cur ≤ |∆ k s b b bs δ = ∆klcur (t) − ∆ klcur−1 (t) b si Tint − iδ ≥ T0 alors Tint = Tint − iδb Rks = Rks + δb i=i−1 sinon Quitter cur = cur + 1 b s (t)| alors si cur > |∆ k s b Rk = ∞, Stop /* La solution s ne peut jamais être réalisable si Tint > T0 alors bs = R bs + T0 −Tint R k k i bs = min{R bs : k ∈ Pbs }. R k Algorithm 2. Calcul des perturbations minimales pour b qr (t) lui permettant devenir réalisable. s∈S Théorème 3. Le rayon de stabilité de la solution s ∈ Sopt (t) est calculé comme suit : b qr (t)}}. b s 0 : s0 ∈ S ρst (s, t) = min{ρpr (s, t), min{R Malheureusement, pour obtenir la valeur exacte de b qr (t), ce rayon, il faut connaı̂tre l’ensemble complet S ce qui est un problème N P -difficile. Pour l’exemple presenté dans la section 4, nous bs2 = 0.005 et, par conséquent, ρst (s1 , t) = avons R min{0.39, 0.005} = 0.005. 6 CONCLUSIONS Dans cet article, nous avons considéré le problème d’équilibrage des lignes d’usinage à boı̂tiers multibroches. Des méthodes de résolution de ce problème ont été déjà développées dans la littérature. Notre but était alors de proposer des outils pour l’analyse de sensibilité des solutions réalisables ou bien optimales aux variations des temps opératoires possibles. Les résultats que nous avons obtenus peuvent être utilisés dans la pratique afin de déterminer les solutions stables (prometteuses) parmi celles qui sont optimales (réalisables). Les rayons de stabilité et de promesse dont le calcul a été présenté peuvent être employés en tant qu’une mesure possible de la robustesse des solutions caractérisant leur fléxibilité. Il est à noter que les algorithmes proposés pour le calcul de ces rayons demandent un temps d’exécution polynomial. La vérification de stabilité (de promesse) d’une solution optimale (réalisable) est de complexité O(|V|) (Théorèmes 1 et 2). Nous associons nos recherches futures avec l’intégration de ces résultats dans les méthodes de résolution proposées pour le TLBP. L’analyse de stabilité des solutions optimales peut être utilisée pour les méthodes exactes, telles que l’approche par graphe (Dolgui et al., 2008) ou l’algorithme par séparation et évaluation (Dolgui et Ihnatsenka, 2009) afin de construire des solutions optimales déjà stables. L’évaluation des rayons de promesse peut être integrée dans des approches heuristiques présentées, par exemple, dans (Guschinskaya and Dolgui, 2009) ou dans (Gurevsky et al., 2009a) pour fournir des solutions réalisables qui sont prometteuses. REFERENCES Belgacem T. and M. Hifi, 2008. Sensitivity analysis of the optimum to perturbation of the profit of a subset of items in the binary knapsack problem. Discrete Optimization, 5(4), p. 755-761. Dolgui A., B. Finel, N. Guschinsky, G. Levin and F. Vernadat, 2006. MIP approach to balancing transfer lines with blocks of parallel operations. IIE Transactions, 38(10), p. 869-882. Dolgui A., N. Guschinsky, G. Levin and J.-M. Proth, 2008. Optimisation of multi-position machines and transfer lines. European Journal of Operational Research, 185(3), p. 1375-1389. Dolgui A. and I. Ihnatsenka, 2009. Branch and bound algorithm for a transfer line design problem : Stations with sequentially activated multispindle heads. European Journal of Operational Research, 197(3), p. 1119-1132. Guinand F., A. Moukrim and E. Sanlaville, 2004. Sensitivity analysis of tree scheduling on two machines with communication delays. Parallel Computing, 30(1), p. 103-120. Gurevsky E., O. Guschinskaya, A. Eremeev and A. Dolgui, 2009a. Balancing machining transfer lines using genetic algorithms. Proceedings of the 39th International Conference on Computers & Industrial Engineering (CIE39). Troyes, France, p. 1850-1855. Gurevsky E., O. Guschinskaya and A. Dolgui, 2009b. Qualitative stability analysis of an optimal balance for an assembly line with fixed stations number. 14th IEEE International Conference on Emerging Techonologies and Factory Automation (ETFA’2009). Palma de Mallorca, Spain, CD-ROM, 6 pages. MOSIM’10 - 10 au 12 mai 2010 - Hammamet - Tunisie Guschinskaya O. and A. Dolgui, 2009. Performance comparison of exact and heuristic methods for a transfer line balancing problem. International Journal of Production Research, 120(2), p. 276286. Hall G.H. and M.E. Posner, 2004. Sensitivity analysis for scheduling problems. Journal of Scheduling, 7(1), p. 49-83. Herroelen W. and R. Leus, 2005. Project scheduling under uncertainty, survey and research potentials. European Journal of Operational Research, 165(2), p. 289-306. Kılınç-Karzan F., A. Toriello, S. Ahmed, G. Nemhauser and M. Savelsbergh, 2009. Approximating the stability region for binary mixedinteger programs. Operations Research Letters, 37(4), p. 250-254. Sotskov Yu.N., A. Dolgui and M.-C. Portmann, 2006 Stability analysis of an optimal balance for an assembly line with fixed cycle time. European Journal of Operational Research, 168(3), p. 783797.