UNIVERSITAT POLITÈCNICA DE CATALUNYA BARCELONATECH OPE ORGANIZACIÓN DE LA PRODUCCIÓN Y DE EMPRESA (ASPECTOS TÉCNICOS, JURÍDICOS Y ECONÓMICOS EN PRODUCCIÓN ) Sistemas Avanzados de Producción. Equilibrado de líneas de producción II SISTEMAS AVANZADOS DE PRODUCCIÓN 0EO16 Máster Universitario en Ingeniería de Organización (0MUEO) - ETSEIB Joaquín Bautista-Valhondo OPE-PROTHIUS OPE-MSc.016/ 0EO16 (0160) - http://futur.upc.edu/ope - www.prothius.com - Departamento de Organización de Empresas ETSEIB UPC SAP 16 ALBP (II) 0
Contenido Entorno : Planta de fabricación, procesos, suministros y líneas Líneas de producción Tipología Problemas de equilibrado de líneas. Elementos, descripción, clasificación, variantes SALBP y eficiencia Ejemplo 1. Presentación Modelos SALBP. Hipótesis, objetivos y formulación SALBP-1: Programa matemático, Heurística HB-1, resolución Ejemplo-1 SALBP-: Programa matemático, Heurísticas HB- y HB-, resolución Ejemplo-1 SALBP-E: Programa matemático, Heurística HB-, resolución Ejemplo-1 SALBP-F: Programa matemático GALBP: Restricciones adicionales Líneas en forma de U Ejemplo. Líneas en U Presentación Modelos GALBP-U. Formulación GALBP-U1: Programa matemático, Heurística HB-6, resolución Ejemplo- Programas matemáticos: GALBP-U, GALBP-UE y GALBP-UF Procedimientos de resolución problemas ALB SAP 16 ALBP (II) 1
WC Entorno (1): Planta de fabricación P P CARPA PLANTA TRANSMISIONES A A PAP NC B ET (MONT) X8 (MONT) X8 (AÉREA) X8 (VEST) ET (VEST) C C HM (LINEA FINAL) HM (UNDER FLOOR) DOOR LESS HM (VESTIDO) E PINTURA 1 EWALS PINTURA CARROCERIAS ET - HM CARROCERIAS X8 F ILM K G P SAP 16 ALBP (II)
Entorno (): Procesos Carrocería Pintura Montaje Información a los proveedores de la secuencia prevista desde el inicio del proceso. Producción secuenciada Suministro según secuencia prevista Proveedor L Suministro según secuencia prevista Proveedor L1 SAP 16 ALBP (II)
Entorno (): Suministro a líneas Áreas de Sincro Interno Suministro manual Líneas de Montaje SAP 16 ALBP (II)
Entorno (): Líneas SAP 16 ALBP (II)
Líneas de producción Tipología Clasificación: Línea MONOMODELO (single model line), diseñada para fabricar un sólo producto o modelo. Líneas de carrocería especializadas; montaje de vagones, etc Línea MULTIMODELO (multimodel line), dos o más modelos se fabrican por lotes sucesivamente (setups). Líneas de envasado de líquidos, detergentes..; líneas de fabricación de bastidores, contrapuertas, parachoques etc. Línea MODELOS MIXTOS (mixed model line), dos o más modelos se fabrican unidad a unidad. Líneas de vestido de distintas variantes de un modelo de vehículo; ensamblado de asientos, etc. SAP 16 ALBP (II) 6
Problemas de equilibrado de líneas. Elementos (1) Elementos de los problemas básicos: Estación: Parte elemental y especializada del proceso. La línea queda constituida por un número de estaciones de trabajo, m, dispuestas en serie y/o en paralelo, a través de las cuales fluye la obra en curso de un producto. Tarea: Parte elemental del trabajo. La fabricación de una unidad de producto se divide en un conjunto J de tareas. Carga de una estación: Subconjunto de tareas S k perteneciente a J que se asigna a la estación k. Toda tarea j sólo puede estar asignada a una estación. Tiempo de operación: Toda tarea j requiere un tiempo de operación t j >0 que es función de las tecnologías de fabricación, de los recursos empleados y de la actividad de los operarios. Tareas Precedentes: La tecnología y la propia naturaleza del producto hacen que cada tarea j pueda estar vinculada a un conjunto de tareas precedentes inmediatas, P j, las cuales deben estar concluidas antes de que se inicie la tarea j. SAP 16 ALBP (II) 7
Problemas de equilibrado de líneas. Elementos () Elementos de los problemas básicos: Tiempo de carga de estación: Suma de las duraciones de las tareas asignadas a la estación: t(s k ), k=1,.., m. Tiempo de carga total: Suma de tiempos de carga de estación: t sum = Sum k t(s k ). Trabajo total para completar una unidad de producto. Tiempo de ciclo: Tiempo concedido a cada estación para realizar las tareas de una unidad de producto que tiene asignadas: c, max k {t(s k )} <= c <= t sum. Tasa de producción de la línea: Número de unidades de producto que completa la línea en la unidad de tiempo: r ; r=1/c. Tiempo muerto de estación: Diferencia entre el tiempo de ciclo y tiempo de carga de la estación: I k = c- t(s k ), k=1,., m. Tiempo muerto de la línea: Suma de tiempos muertos de estación que se vincula a la ineficiencia de la línea: I sum = Sum k I k = m c- t sum. SAP 16 ALBP (II) 8
Problemas de equilibrado de líneas. Descripción y Clasificación Descripción: Los problemas de equilibrado de líneas de montaje ALBP (Assembly Line Balancing Problem) están enfocados a agrupar de manera eficiente y coherente las tareas del conjunto J en estaciones de trabajo. Clasificación: SALBP (Simple Assembly Line Balancing Problem): dados un conjunto de n tareas con sus atributos y un grafo de precedencias, cada tarea debe asignarse a una sola estación de manera que se satisfagan todas las restricciones de precedencia y que ningún tiempo de carga de estación, t(s k ), sea mayor que el tiempo de ciclo c. GALBP (General Assembly Line Balancing Problem): se añade a SALBP restricciones adicionales como: la consideración de estaciones en paralelo, las agrupaciones forzadas de tareas y las posibles incompatibilidades entre tareas, la limitación de espacio en las estaciones de trabajo, entre otras. SAP 16 ALBP (II) 9
Problemas de equilibrado de líneas. Variantes SALBP Variantes de SALBP: SALBP-1: minimizar el número de estaciones m dado un valor fijo del tiempo de ciclo c. SALBP-: minimizar el tiempo de ciclo c (maximizar la tasa de producción r) dado un número fijo de estaciones m. SALBP-E: minimizar simultáneamente c y m considerando su relación con el tiempo muerto total o la ineficiencia de la línea. SALBP-F: dados m y c determinar si el problema es factible, y en caso afirmativo hallar una solución. Objetivo: Maximizar la eficiencia de la línea SAP 16 ALBP (II) 10
Problemas de equilibrado de líneas. Eficiencia Medidas de eficiencia básicas: - Número mínimo de estaciones para un ciclo c: " m min (c) = # 1 # c J! - Eficiencia para m estaciones y ciclo c:!( m, c) = 1 mc j=1 - Eficiencia máxima para un ciclo c: t j! max ( c) =!( m min (c),c) = $ % (1) % J! t j () j=1 1 m min (c) & c J! t j () j=1 SAP 16 ALBP (II) 11
Ejemplo 1. Presentación Ejemplo 1: Línea de producción 10 tareas Tarea Tiempo Prec. (1) a - () b - () c a () d 6 b () e c, d (6) f e (7) g e (8) h f, g a b c 6 d e f g h i j (9) i h (10) j h 9 Determinar los límites del tiempo de ciclo c; el número mínimo de estaciones m min y la eficiencia máxima de la línea para los ciclos 10, 1 y 0 ut. SAP 16 ALBP (II) 1
Modelos SALBP. Hipótesis y objetivos Hipótesis generales: 1. Una unidad de producto se puede descomponer en un conjunto de tareas elementales.. Cada tarea tiene asociado un conjunto de atributos, entre ellos el tiempo de proceso, supuesto determinista y medido a actividad normal.. Las estaciones de trabajo están dispuestas en serie y el producto fluye progresivamente entre ellas, de una a su siguiente, a carencia constante.. A toda estación se concede el mismo tiempo para efectuar las tareas que tiene asignadas, dicho tiempo recibe el nombre de tiempo de ciclo.. Las estaciones requieren recursos tecnológicos y humanos homogéneos con unos costes muy similares. Objetivos: 1. Maximizar la eficiencia de la línea.. Maximizar la tasa de producción.. Minimizar el requerimiento de recursos. SAP 16 ALBP (II) 1
Modelos SALBP. Formulación Nomenclatura: Parámetros: J, j Conjunto de tareas elementales Índice de tarea j!j j = 1,.., J K, k Conjunto de estaciones de trabajo Índice de estación de trabajo k!k k = 1,.., K t j P j, P j c min c max m min Tiempo de proceso de la tarea j : j = 1,.., J Conjuntos de tareas precedentes de j : j = 1,.., J ( ) ( ) ( ) ( ) inmediatas y transitivas. Tiempo de ciclo mínimo valor inverso de la tasa de producción máxima Tiempo de ciclo máximo valor inverso de la tasa de producción mínima Número mínimo de estaciones de trabajo condicionado por la tasa de demanda Número máximo de estaciones de trabajo condicionado por la disponibilidad de recursos Variables: c Tiempo de ciclo de la línea Tiempo concedido a cada estación para realizar sus tareas m Número de estaciones de trabajo requeridas por la línea Variable binaria que vale 1 si la tarea j!j se asigna a la estación k!k, y 0 en caso contrario. x j,k SAP 16 ALBP (II) 1
Modelo SALBP-1. Programa matemático SALBP-1 Formulación: PM-SALBP-1: Min z 1 = m (0) s.a.:! x j,k =1 "j =1,., J (1) k=1 m # J! kx j,k $ 0 "j =1,., J () k=1! t j x j,k % c max "k =1,., () j=1! k( x j,k # x i,k ) $ 0 " i, j k=1 { } & J :i ' P j () x j,k ' {0,1} "j =1,., J,"k =1,., () SAP 16 ALBP (II) 1
Modelo SALBP-1. Resolución orientación tareas (1) SALBP-1 Resolución Heurística HB-1: Paso! 0 :Inicializar I sum = 0;k = 1;S k = ";T = c (T : tiempo disponible); J = J (J : conjunto de tareas no asignadas). Paso!1: Construcción del conjunto de tareas candidatas a asignar (Ĵ # J ) sea : Ĵ = { j $J : ( t j % T ) & ( P j ' J = ")} Paso! : Test de cierre y apertura de estación si Ĵ = 0 (cierre), hacer: I sum ( I sum + T;T = c;k ( k +1;S k = ";Ir a Paso!1. si _ no, continuar. SAP 16 ALBP (II) 16
Modelo SALBP-1. Resolución orientación tareas () SALBP-1 Resolución Heurística HB-1 (continuación): Paso! : Elección de la tarea asignar (dada una regla! "#) ( ) & j $, si % j $ "Ĵ j! = : t j $ = T ( ( ' + )( argmax j" v Ĵ (! ( j) ), si _ no,( Paso! : Asignación de j! hacer : T - T! t j! ;S k - S k. j! { } ;J - J! { j! } Paso! : Test de finalización (todas las tareas asignadas) si J = 0, hacer : m = k; mostrar resultados : S k (k = 1,.., m); finalizar. si _ no, Ir a Paso!1. SAP 16 ALBP (II) 17
Modelo SALBP-1. Resolución orientación tareas () SALBP-1 Reglas de prioridad Paso HB-1: Siguientes inmediatas : F j = j! "J : j "P j! Siguientes transitivas : F j = j! "J : j "P j! Primera estación asignable: e j = 1 $ c t + t ', + & j # j! ) - % j!"p + j ( - { } ( j = 1,.., J ) { } ( j = 1,.., J ) Última estación asignable: l j = m +1. 1 $ c t ', + & j + # t j! ) - % j!"f + j ( - Nivel: n j = max! n j! j "P j ( j = 1,.., J ) ( j = 1,.., J ) ( ) +1 ( j = 1,.., J ) SAP 16 ALBP (II) 18
Modelo SALBP-1. Resolución orientación tareas () SALBP-1 Reglas de prioridad Paso HB-1 (Continuación): Dados Ĵ! J (tareas candidatas! tareas no_asignadas), "(conjunto de reglas) y! "(pesos)#" $": Seleccionar j " : j " = argmax j$ Ĵ v " ( j) ( ) : #! $" 0.v 0 ( j) = Rnd(0 %1). v ( j) = t j + ' j & $F j t j & ( ) 1+ F j 10. v 10 ( j) = m % l j % e j 1. v 1 ( j) = t j 6. v 6 ( j) = m % l j 11. v 11 ( j) = F j l j % e j. v ( j) = F j 7. v 7 ( j) = m % l j 1. v 1 ( j) = t j + F j 1+ F j. v ( j) = F j 8. v 8 ( j) = t j l j 1. v 1 ( j) = max j & $ Ĵ ( n j& ) % n j v. v ( j) = t j + ' t j& 9. v 9 ( j) = m % e j 1.v 1 ( j) =! " ( j) " j & $F j '!$" max j & $ Ĵ ( v " ( j &)) SAP 16 ALBP (II) 19
Ejemplo 1. Resolución HB-1 (1) Ejemplo 1: Línea de producción 10 tareas Resolución HB-1 (c=10) Dados Ĵ! J y una regla! "# : Seleccionar j! : j! = argmax j" v Ĵ (! ( j) ). Sea! =.. v ( j) = t j + t $ j % &j "J; regla(carga transitiva pendiente - Helgeson&Birnie) j $ "F j Tarea Tiempo Prec. (1) a - () b - () c a () d 6 b () e c, d (6) f e (7) g e (8) h f, g (9) i h (10) j h 9 a b c 6 d e f g h i j SAP 16 ALBP (II) 0
Ejemplo 1. Resolución HB-1 () Ejemplo 1: Línea de producción 10 tareas Resolución HB-1 (c=10) Dados Ĵ! J y una regla! "# : Seleccionar j! : j! = argmax j" v Ĵ (! ( j) ). Sea! =.. v ( j) = t j + t $ j % &j "J; regla(carga transitiva pendiente - Helgeson&Birnie) j $ "F j Tarea Tiempo Prec. (1) a - () b - () c a () d 6 b () e c, d (6) f e (7) g e (8) h f, g (9) i h (10) j h 9 a 9 b 9 c 6 d e 19 f 1 g 1 h 10 i j SAP 16 ALBP (II) 1
Ejemplo 1. Resolución HB-1 () Ejemplo 1: Línea de producción 10 tareas Resolución HB-1 (c=10). v ( j) = t j + t! # j $j "J; regla(carga transitiva pendiente - Helgeson&Birnie) k T Ĵ 1 10 0 10 6 0 10 8 1 10 0 j!"f j a, b b, c - b d - e f, g g - h i, j i j a c b d e f g h j i v 9 sat - - - 1 - - - t I j sum 6 0 0 1 1 a 9 b 9 c 6 d c = 10! m = # m min (c) = $ 1 $ c! max ( c) = J " j=1 1 m min c!( m,c) = 1 mc J t j e 19 f 1 g 1 % # &; m min (10) = 9 % & $ 10 & = J " t j ;! max 10 j=1 " t j ;!,10 j=1 ( ) = 9 ( ) = 9 h 10 0 = 0.97 0 = 0.97 i j SAP 16 ALBP (II)
Ejemplo 1. Resolución HB-1 () Ejemplo 1: Línea de producción 10 tareas Resolución HB-1 (c=10) Inverso Dados Ĵ! J y una regla! "# : Seleccionar j! : j! = argmax j" v Ĵ (! ( j) ). Sea! =.. v ( j) = t j + t $ % j &j "J; regla(carga transitiva pendiente - Helgeson&Birnie) j $ "F j Tarea Tiempo Prec. (1) a - () b - () c a () d 6 b () e c, d (6) f e (7) g e (8) h f, g (9) i h (10) j h 9 Grafo valoración inversa: a c 10 6 b d 10 e f 6 g h i 6 j 7 SAP 16 ALBP (II)
Ejemplo 1. Resolución HB-1 () Ejemplo 1: Línea de producción 10 tareas Resolución HB-1 (c=10) Inverso. v ( j) = t j + t! # j $j "J; regla(carga transitiva pendiente - Helgeson&Birnie)%Inverso k T Ĵ 1 10 7 0 10 6 1 10 0 10 0 j!"f j i, j i h - f, g g e - c, d a - d b j j i h f g e c a d b v 7 - - 6 - - 10 - - - t I j sum 6 0 1 1 1 a b c 10 6 c = 10! m = # m min (c) = $ 1 $ c! max ( c) = J d " j=1 10 1 m min c!( m,c) = 1 mc J t j e f 6 g % # &; m min (10) = 9 % & $ 10 & = J " t j ;! max 10 j=1 " t j ;!,10 j=1 ( ) = 9 ( ) = 9 h 0 = 0.97 0 = 0.97 i 6 j 7 SAP 16 ALBP (II)
Modelo SALBP-. Programa matemático SALBP- Formulación: PM-SALBP-: Min z = c (0) s.a.:! x j,k =1 "j =1,., J (1) k=1 J c #! t j x j,k $ 0 "j =1,., J () j=1! k( x j,k # x i,k ) $ 0 " i, j k=1 { } % J :i & P j () x j,k & {0,1} "j =1,., J,"k =1,., () SAP 16 ALBP (II)
Modelo SALBP-. Resolución orientación tareas Bisección (1) SALBP- Resolución Heurística HB- Bisección asistida por HB-1: Paso! 0 :Inicialización fijar ( :1 < < J,! "# J, µ = 0.); ( $ t c 1 = max t max, sum & + % m '- ) max, ; ( m 1, S k (k = 1,.., m 1 )). HB_1(c 1,!);! c = t sum ;m = 1 Paso!1: Test inicial si m 1 /, hacer : c = c 1 ;m = m 1 ;0 = { S k (k = 1,.., m) };Ir a Paso! (finalizar). si _ no, continuar. SAP 16 ALBP (II) 6
Modelo SALBP-. Resolución orientación tareas Bisección () SALBP- Resolución Heurística HB- Bisección asistida por HB-1 (Continuación): Paso! :Reducción del rango del ciclo ( ) " 1, hacer : mientras c! c 1 c # = c 1 + µ ( c! c 1 ); ( m #, S k (k = 1,.., m #)) $ HB_1( c #,!)! fin _ mientras si m # >, hacer : c 1 = c# si _ no, hacer : { } c = c #;c = %& c '(;m = m #;) = S k (k = 1,.., m) Paso! :Finalización mostrar resultados : c, m, { S k (k = 1,.., m) }; finalizar. SAP 16 ALBP (II) 7
Ejemplo 1. Resolución HB- (1) Ejemplo 1: Línea de producción 10 tareas Resolución HB- (m=) Dados Ĵ! J y una regla! "# : Seleccionar j! : j! = argmax j" v Ĵ (! ( j) ). Sea! =.. v ( j) = t j + t $ j % &j "J; regla(carga transitiva pendiente - Helgeson&Birnie) j $ "F j Tarea Tiempo Prec. (1) a - () b - () c a () d 6 b () e c, d (6) f e (7) g e (8) h f, g (9) i h (10) j h 9 a b c 6 e d g Ciclo tentativo: 1. Bisección c1=10 y c=1 f h i j SAP 16 ALBP (II) 8
Modelo SALBP-. Resolución orientación tareas Áurea (1) SALBP- Resolución Heurística HB- Áurea asistida por HB-1: Paso! 0 :Inicialización ( ) $ fijar (1 < < J ),! "# J," = 1 % & 1+ ' $ ( ) ;c 1 = max& t max, + % ( m 1,. 1 = { S k (k = 1,.., m 1 )}) / HB_1(c 1,!);c! = t sum ;m = 1;. = J Paso!1: Test inicial si m 1 0, hacer : si _ no, hacer : c = c 1 ;m = m 1 ;. =. 1 ;Ir a Paso! (finalizar). c = c ;m = m ;. =. ;continuar. Paso! :Segmentación inicial c 1 = c! (!!1)( c! c 1 ); c 1 = c 1 + (!!1)( c! c 1 ); ( ) / HB_1( 1 m 1,. 1 ( ) / HB_1( 1 c 1,!);! m 1,. c,!!) { } t sum,' -) ( ; SAP 16 ALBP (II) 9
Modelo SALBP-. Resolución orientación tareas Áurea () SALBP- Resolución Heurística HB- Áurea asistida por HB-1 (Continuación): Paso! :Reducción del rango del ciclo ( ) " 1, hacer : mientras c! c 1 si m 1 # >, hacer : c 1 = c 1 #; c 1 # = c #; c # = c 1 + (!!1)( c! c 1 ); fin _ mientras Paso! :Finalización: ( ) % HB_1( # m 1 # = m #;$ 1 = $ ; m #, $ c,!)! si _ no, hacer : c = c 1 #; c # = c 1 + ("!1)( c! c 1 ); c 1 # = c! (!!1)( c! c 1 ); c = &' c ();m = m 1 #;$ = $ 1 ; ( ) % HB_1( # m 1 #, $ 1 mostrar resultados : c, m, $; finalizar. ( ) % HB_1( # c 1,!);! m #, $ c,!!) SAP 16 ALBP (II) 0
Ejemplo 1. Resolución HB- (1) Ejemplo 1: Línea de producción 10 tareas Resolución HB- (m=) Dados Ĵ! J y una regla! "# : Seleccionar j! : j! = argmax j" v Ĵ (! ( j) ). Sea! =.. v ( j) = t j + t $ j % &j "J; regla(carga transitiva pendiente - Helgeson&Birnie) j $ "F j Tarea Tiempo Prec. (1) a - () b - () c a () d 6 b () e c, d (6) f e (7) g e (8) h f, g (9) i h (10) j h 9 a b c 6 e d g Ciclo tentativo: 1. Bisección c1=10 y c=1 f h i j SAP 16 ALBP (II) 1
Modelo SALBP-E. Programa matemático SALBP-E Formulación: PM-SALBP-E: Min z = m! c (0) s.a.: m " m min (1) # x j,k =1 $j =1,., J () k=1 m % # kx j,k " 0 $j =1,., J () J k=1 c %# t j x j,k " 0 $j =1,., J () j=1 # k( x j,k % x i,k ) " 0 $ i, j k=1 { } & J :i ' P j () x j,k ' {0,1} $j =1,., J,$k =1,., (6) SAP 16 ALBP (II)
Modelo SALBP-E. Resolución orientación tareas Barrido (1) SALBP-E Resolución Heurística HB- Barrido de m asistido por HB-: Paso! 0 :Inicialización fijar ( m min, (1 < m min " < J ),! #$ J ); ( c min, % max = { S k (k = 1,.., )}) & HB_(,!);! ( c max, % min = { S k '(k = 1,.., m min )}) & HB_(m min,!)! Paso!1: Test inicial de mínimo si c min " c max m min, hacer : z = c min ;c = c min ;m = ;% = % max si _ no, hacer : fin _ si z = c max m min ;c = c max ;m = m min ;% = % min SAP 16 ALBP (II)
Modelo SALBP-E. Resolución orientación tareas Barrido () SALBP-E Resolución Heurística HB- Barrido de m asistido por HB- (Cont.): Paso! :Barrido sobre el número de estaciones m " = m min +1 mientras m " <, hacer : ( c ", S k (k = 1,.., m ")) # HB_( m ",!)! si m " c " $ z, hacer : fin _ si m " # m " +1 fin _ mientras Paso! :Finalización { } z = m " c ";c = c ";m = m ";% = S k (k = 1,.., m ") mostrar resultados : z, c, m, %; finalizar. SAP 16 ALBP (II)
Ejemplo 1. Resolución HB- (1) Ejemplo 1: Línea de producción 10 tareas Resolución HB- ( m =: [, 10] ) Dados Ĵ! J y una regla! "# : Seleccionar j! : j! = argmax j" v Ĵ (! ( j) ). Sea! =.. v ( j) = t j + t $ j % &j "J; regla(carga transitiva pendiente - Helgeson&Birnie) j $ "F j Tarea Tiempo Prec. (1) a - () b - () c a () d 6 b () e c, d (6) f e (7) g e (8) h f, g (9) i h (10) j h 9 a b c 6 e d g f Barrido: m min = y = 10 h i j SAP 16 ALBP (II)
Modelo SALBP-F. Programa matemático SALBP-F Formulación: PM-SALBP-F: Satisfacer restricciones (1)-() Restricciones:! x j,k =1 "j =1,., J (1) k=1 J! t j x j,k # c max "j =1,., J () j=1! k( x j,k $ x i,k ) % 0 " i, j k=1 { } & J :i ' P j () x j,k ' {0,1} "j =1,., J,"k =1,., () SAP 16 ALBP (II) 6
GALBP Restricciones adicionales GALBP Incompatibilidad entre tareas: Sea!el conjunto de pares de tareas incompatibles (sin transitividad):!= {( j, j" ) # J :( j # S k )$( j " # S ") % k & k ",'k, k " =1,.., m k max } add : ) k( x j,k ( x j ",k ) 1 '( j, j ") #! (1) k=1 Selectividad entre tareas (ILU-NISSAN) de una misma familia Sea! j la familia de tareas alternativas a la representante (estándar) j: & 1. Rectificar: t j x j,k $ % t! j x! j,k (k =1,.., ) (! "j # J :! j >1 Hacer: j #! j ( ' + (. Añadir: % x! j,k = x j,k (k =1,.., )( )(! j #! j,( SAP 16 ALBP (II) 7
GALBP Líneas en forma de U Líneas en U Características: (1) Cercanía entre los puntos de entrada y de salida de WIP de la línea. () Posibilidad de hacer estaciones abiertas. () Posibilidad de concentrar los requerimientos de espacio y de reducir movimientos. () Comodidad en la reorganización ante cambios del tiempo de ciclo. PARTE B Máquinas Parte A PARTE A Máquinas Parte B SAP 16 ALBP (II) 8
Ejemplo. Líneas en U Presentación Ejemplo : Línea de producción 1 tareas Forma de U 1 7 6 7 10 7 1 6 6 6 8 9 11 c = 10 : t sum = 60, 60 60 60 mmin (10) = 6, max = 10 = η 6 10 6 10 ( 10) = = 1.00, η( 6,10) = 1. 00 Determinar los límites del tiempo de ciclo c; el número mínimo de estaciones m min y la eficiencia máxima de la línea para los ciclos 10, 1 y 0 ut. SAP 16 ALBP (II) 9
Modelos GALBP-U. Formulación Nomenclatura: Parámetros: J, j Conjunto de tareas elementales Índice de tarea j!j j = 1,.., J K, k Conjunto de estaciones de trabajo Índice de estación de trabajo k!k k = 1,.., K t j P j, P j F j, F j c min c max m min Tiempo de proceso de la tarea j : j = 1,.., J Conjuntos de tareas precedentes de j : j = 1,.., J ( ) ( ) ( ) ( ) inmediatas y transitivas. ( ) inmediatas y transitivas. Conjuntos de tareas siguientes de j : j = 1,.., J Tiempo de ciclo mínimo valor inverso de la tasa de producción máxima Tiempo de ciclo máximo valor inverso de la tasa de producción mínima Número mínimo de estaciones de trabajo condicionado por la tasa de demanda Número máximo de estaciones de trabajo condicionado por la disponibilidad de recursos Variables: c, m Tiempo de ciclo de la línea Número de estaciones de trabajo requeridas por la línea x j,k Variable binaria que vale 1 si la tarea j!j se asigna a la estación k!k, y 0 en caso contrario. m j, y j Estación a la que se asigna la tarea j!j y j Variable binaria auxiliar de asignación de los conjuntos P j y F j en función de m j SAP 16 ALBP (II) 0
Modelo GALBP-U1. Programa matemático GALBP-U1 Formulación: PM-GALBP-U1: Min z 1 = m (0) s.a.:! x j,k = 1 "j = 1,., J (1) k=1 m #! kx j,k $ 0 "j = 1,., J () J k=1! t j x j,k % c max "k = 1,., () j=1! kx j,k = m j "j = 1,., J () k=1 m i # m j % (1# y j ) m j # m i % (1# y j ) m j # m i % y j { } & J : i 'P j { } & J : i 'F j { } & J : i 'P j { } & J : i 'F j " i, j " i, j " i, j ( ) () ( ) (6) ( ) (7) ( ) (8) m i # m j % y j " i, j x j,k, y j '{0,1} "j = 1,., J, "k = 1,., (9) SAP 16 ALBP (II) 1
Modelo GALBP-U1. Resolución orientación tareas (1) GALBP-U1 Resolución Heurística HB-6 Regla 1: argmax(t j ) Paso! 0 :Inicialización I sum = 0;k = 1;S k = ";T = c (T : tiempo disponible); J = J (J : conjunto de tareas no asignadas). Paso!1: Construcción del conjunto de tareas candidatas a asignar (Ĵ # J ) sea : Ĵ = { j $J : ( t j % T ) & (( P # J! J j ) ' ( F # J! J j ))} Paso! : Test de cierre y apertura de estación si Ĵ = 0 (cierre), hacer: I sum ( I sum + T;T = c;k ( k +1;S k = ";Ir a Paso!1. si _ no, continuar. SAP 16 ALBP (II)
Modelo GALBP-U1. Resolución orientación tareas () GALBP-U1 Resolución Heurística HB-6 Regla 1: argmax(t j ) (Continuación): Paso! : Elección de la tarea asignar j! = ( ) % j ", si # j " $Ĵ : t j " = T ) ' ' & (' argmax j$ v Ĵ ( 1 ( j) = t j ), si _ no +' Paso! : Asignación de j! hacer : T, T! t j! ;S k, S k - j! { } ;J, J! { j! } Paso! : Test de finalización (todas las tareas asignadas) si J = 0, hacer : m = k; mostrar resultados : S k (k = 1,.., m); finalizar. si _ no, Ir a Paso!1. SAP 16 ALBP (II)
Ejemplo. Resolución HB-6 Ejemplo : Línea de producción forma U 1 tareas GALBP-U1 HB-6 (c=10) 1 7 6 6 6 7 8 9 10 7 1 11 6 c = 10! m = 6 t sum = 60!( 6,10) = 60 6 "10 = 1.00 I sum = 0 7 6 6 1 6 Estación 1 Estación Estación Estación Estación 6 Estación 11 1 9 10 8 7 6 7 SAP 16 ALBP (II)
Modelo GALBP-U. Programa matemático GALBP-U Formulación: PM-GALBP-U: Min z = c (0) s.a.:! x j,k = 1 "j = 1,., J (1) k=1 c #! t j x j,k $ 0 "j = 1,., J () k=1! kx j,k = m j "j = 1,., J () k=1 m i # m j % (1# y j ) m j # m i % (1# y j ) m j # m i % y j { } & J : i 'P j { } & J : i 'F j { } & J : i 'P j { } & J : i 'F j " i, j " i, j " i, j ( ) () ( ) () ( ) (6) ( ) (7) m i # m j % y j " i, j x j,k, y j '{0,1} "j = 1,., J, "k = 1,., (8) SAP 16 ALBP (II)
Modelo GALBP-UE. Programa matemático GALBP-UE Formulación: PM-GALBP-UE: Min z E = m! c (0) s.a.: m " m min (1) # x j,k = 1 $j = 1,., J () k=1 m % # kx j,k " 0 $j = 1,., J () k=1 c % # t j x j,k " 0 $j = 1,., J () k=1 # kx j,k = m j $j = 1,., J () k=1 m i % m j & (1% y j ) m j % m i & (1% y j ) m j % m i & y j { } ' J : i (P j { } ' J : i (F j { } ' J : i (P j { } ' J : i (F j $ i, j $ i, j $ i, j ( ) (6) ( ) (7) ( ) (8) ( ) (9) m i % m j & y j $ i, j x j,k, y j ({0,1} $j = 1,., J,$k = 1,., (10) SAP 16 ALBP (II) 6
Modelo GALBP-UF. Programa matemático GALBP-UF Formulación: PM-GALBP-UF: Satisfacer (1) - (8)! x j,k = 1 "j = 1,., J (1) k=1 J! t j x j,k # c max "k = 1,., () j=1! kx j,k = m j "j = 1,., J () k=1 m i $ m j # (1$ y j ) m j $ m i # (1$ y j ) m j $ m i # y j { } % J : i &P j { } % J : i &F j { } % J : i &P j { } % J : i &F j " i, j " i, j " i, j ( ) () ( ) () ( ) (6) ( ) (7) m i $ m j # y j " i, j x j,k, y j &{0,1} "j = 1,., J, "k = 1,., (8) SAP 16 ALBP (II) 7
Procedimientos de resolución problemas ALB Procedimientos Exactos: Programación matemática Programación dinámica Procedimientos heurísticos: Metaheurísticos - híbridos computación evolutiva algoritmos genéticos algoritmos meméticos algoritmos bioinspirados colonias de hormigas algoritmos basados en colonias/ enjambres sistemas inmunes computación natural búsqueda tabú búsqueda dispersa enfriamiento simulado GRASP búsqueda basada en entornos búsqueda local iterada búsqueda por vecindarios otros. SAP 16 ALBP (II) 8