Problema de programación de operaciones y herramientas en ...
Transcript of Problema de programación de operaciones y herramientas en ...
100 El Hombre y la Máquina No. 30 • Enero - Junio de 2008
Resumen
En el presente artículo se presenta una solución heurística para el problema de progra-mación de tareas y herramien-tas dentro de un Sistema de Manufactura Flexible (FMS) buscando objetivos como el de balanceo de la carga de trabajo, flexibilización de los flujos de producción y disminución de los intercambios de material entre máquinas. Se muestra la solución de un caso mediante la aplicación de la Fase I de la Heurística, cuyo objetivo solo es el de programar operaciones a tipos de máquinas de tal ma-nera que exista balance entre las cargas de trabajo asignadas.
Palabras clave
Balanceo de cargas de traba-jo, clúster, flexibilidad de flujos
Problema de programación de operaciones y herramientas en un Sistema de Manufactura Flexible: Heurística de carga fase I
pedro daniel Medina v.*eduardo arturo Cruz t.**
Jorge Hernán reStrepo***
* Ingeniero Mecánico, Ms.C, Profesor Auxiliar, Universidad Tecnológica de Pereira, [email protected].** Ingeniero Industrial, Ms.C, Profesor Asistente, Universidad Tecnológica de Pereira. [email protected].*** Ingeniero Industrial, Ms.C, Profesor Asistente, Universidad Tecnológica de Pereira. [email protected] de recibo: septiembre 27 de 2007 Fecha de aceptación: marzo 14 de 2008
Foto tomada en la celda de manufactura flexible de la Facultad de Ingeniería Industrial de la Univer-sidad Tecnológica de Pereira (en primer plano brazo robot MITSUBISHI RV-2AJ y en segundo plano
Fesa CNC)
101El Hombre y la Máquina No. 30 • Enero - Junio de 2008
de producción, heurística de carga, sistemas de ma-nufactura flexible.
Abstract
In this article presents a heuristic solution to the problem of scheduling tasks and tools within a Flexible Manufacturing System (FMS) looking for goals as balancing the workload, easing the flow of production and decline in exchange of material between machines. It shows the resolution of a case through the implementation of Phase I of Heuristics, whose only goal is to schedule operations types of machines so that there is balance between workloads assigned.
Key words
Balancing work loads, cluster, routing flexibility, loading heuristics, flexible manufacturing systems.
ylj, representa una variable binaria que tomará un valor de 1 si la herramienta l es asignada a la máquina j y un valor de 0 si ocurre lo contrario.
Teniendo en cuenta que los parámetros relevantes son:
cij, es el costo de realizar la operación i en la máquina j.
l(i), es la herramienta requerida para la operación
nl, es el número de herramientas tipo l disponibles.
pij, Tiempo de realización de operación i en la máquina j.
Pj, Tiempo disponible de operación de la máquina j.
kij, portaherramientas necesarios si la operación i es asignada a la máquina j.
Kj, portaherramientas disponibles en la máquina j.
En un contexto productivo, las rutas de fabricación de cada parte están comprendidas por un conjunto de operaciones interrelacionadas que tendrán como resul-tado final una pieza terminada. A su vez cada operación requiere de una herramienta específica y cuenta con un conjunto de máquinas a las cuales puede ser asignada. El parámetro cij refleja el hecho de que aunque varias máquinas pueden desempeñar una operación específica, ciertas máquinas pueden ser más eficientes que otras. El modelo que minimiza el costo será:
Introducción
Históricamente el hombre siempre ha sentido la necesidad de producir elementos que permitan satisfacer sus requerimientos, de tal manera que su adaptación al contexto ambiental sea más eficiente. Los sistemas de producción de estos elementos han sufrido una substancial evolución, al pasar de procesos netamente artesanales a procesos altamente automatizados, basados en soporte computacional.1
En los últimos años, las exigencias de los consumi-dores han cambiado de tal manera que las empresas han empezado a sufrir la llamada personalización del pro-ducto, que cambia el concepto de producción en masa a una producción en pequeños lotes, es en este contexto donde los sistemas de manufactura flexible surgen como una buena solución que permite la producción de peque-ños lotes de forma ágil y económicamente viable.5
El problema
El problema de carga en el contexto de un Sistema de Manufactura Flexible (FMS) tiene como objetivo prin-cipal asignar las operaciones y herramientas necesarias para la fabricación de diferentes piezas a máquinas, de tal manera que se minimice el costo de realización de las tareas.2 En el planteamiento del problema se supone que el lote de partes que se producirán en el periodo es conocido. Para el planteamiento del modelo que repre-senta al problema se definen las siguientes variables de decisión:
xij, representa la proporción de la operación i que es asignada a la máquina j.
1010
,0
1
min
1
)(
1
1
1
1 1
oyyx
lny
jiyx
jKjyk
jPxp
ix
aSujeto
xc
ljij
J
jllj
jilij
L
lljlj
I
ijijij
J
jij
I
i
J
jijij
=≤≤
∀≤
∀≤−
∀≤
∀≤
∀=
∑
∑
∑
∑
∑∑
=
=
=
=
= =
Problema de programación de operaciones y herramientas en un Sistema de Manufactura Flexible: Heurística de carga fase I
Pedro Daniel Medina V. • Eduardo Arturo Cruz T. Jorge Hernán Restrepo
102 El Hombre y la Máquina No. 30 • Enero - Junio de 2008
las cargas de trabajo. Si el objetivo es el de minimizar los movimientos entre máquinas, una buena estrategia podría ser secuenciar las operaciones a realizar sobre cada parte de manera que puedan desempeñarse largas cadenas de tareas sobre la misma máquina. Es así que se puede usar una regla que plantee que una vez que una parte sea asignada a una máquina, se deberán llevar tantas operaciones como sean posibles antes de retirar la pieza.
Si se considera como objetivo la flexibilidad en la ruta de producción, una estrategia sería el de tratar de que tantas máquinas sean capaces de llevar a cabo una operación. Se podrían dividir las máquinas de cada tipo en el menor número de grupos posible y asignar el mismo conjunto de herramientas a cada máquina dentro de un grupo, de esta manera los recursos dentro del mis-mo conjunto serán intercambiables. Si la inversión en herramientas es el criterio que domina, simplemente se debe limitar el número de las herramientas de cada tipo. De esta manera algunas máquinas pueden tener porta herramientas vacíos. Cada una de estas reglas es simple de implementar y útil para lograr los objetivos, por lo tanto, es posible generar un procedimiento heurístico enlazándolas.
La heurística de carga se divide en dos fases. La fase I asigna operaciones a tipos de máquinas. Esta fase solo se necesita cuando las operaciones se pueden realizar en más de un tipo de máquina y busca balancear las cargas de trabajo. Las operaciones deben de ser ordenadas de acuerdo con el número de tipos de máquinas diferentes a los que se pueda asignar. De las operaciones con el menor número de alternativas se selecciona la operación con el mayor tiempo total de procesamiento (tiempo total de proceso para el lote) y se asigna al tipo que tendría la más baja utilización después de asignada la tarea.
La fase II envuelve tres pasos. En la primera etapa, las operaciones son combinadas para formar una pseudo-operación que se denomina cluster, de tal manera que se reduzca el manejo y transferencia de materiales entre máquinas. El clúster es manejado como una sola opera-ción que requiere de todas las herramientas necesarias para llevar a cabo las tareas que lo forman, haciendo así que las partes no se muevan entre máquinas, excepto cuando todas las operaciones del clúster hayan finaliza-do. En el segundo paso, se forman grupos de máquinas montando las mismas herramientas en recursos del mismo tipo, la formación de grupos de máquinas provee flexibilidad de flujo de producción pero incrementa el costo asociado a las herramientas necesarias. El número de grupos es determinado por el número de portaherra-mientas necesarios por las operaciones asignadas a ese tipo de máquina. Por último los clúster son asignados a
La función objetivo indica que el objetivo es la mi-nimización del costo variable de producción. La primera restricción asegura que cada operación es asignada a mínimo una máquina, si se agrega la restricción de que xij sea entera, se forzaría a que el modelo asigne cada operación a solo una máquina. La segunda restricción indica que el tiempo de operación de las tareas asigna-das a cada máquina no sea mayor al tiempo disponible durante el periodo de planificación. La tercera restric-ción asegura el suficiente espacio en el magazine de herramientas para almacenar las herramientas asignadas a la máquina j. La cuarta restricción asegura que las herramientas están realmente montadas en la máquina necesaria. Finalmente, la quinta restricción plantea un límite para el número de herramientas disponibles por cada tipo.
Existen reglas heurísticas que pueden ser útiles en la obtención de soluciones que cumplan con múltiples criterios sin requerir un gran esfuerzo de cálculo. El problema de carga busca la asignación de operaciones y herramientas a máquinas, teniendo en cuenta objetivos simultáneos como balancear las cargas de trabajo, mini-mizar movimiento entre máquinas, generar flexibilidad en las rutas de producción y minimizar inversión en herramientas.
En la aplicación de técnicas heurísticas al problema de carga, el primer objetivo perseguido es el de balan-cear las cargas de trabajo, para esto es de recordar que la teoría del shedulling plantea que ordenar las tareas en orden decreciente de acuerdo con sus tiempos de procesamiento para ser asignadas de manera secuen-cial a la primera máquina disponible tiende a balancear
Problema de programación de operaciones y herramientas en un Sistema de Manufactura Flexible: Heurística de carga fase I
Pedro Daniel Medina V. • Eduardo Arturo Cruz T. Jorge Hernán Restrepo
Imagen obtenida del MITSUBISHI INDUSTRIAL ROBOT. INSTRUC-TION MANUAL: deatiled explanations of Functions and Operations.
103El Hombre y la Máquina No. 30 • Enero - Junio de 2008
grupos de máquinas dentro de cada tipo, de tal manera que se logre balancear la carga de trabajo. Esta secuen-cia de decisiones provee un mecanismo para dividir el problema de carga en un conjunto de problemas más simples que pueden ser resueltos en secuencia.
La notación que se seguirá en la descripción de la heurística será:mj, número de máquinas tipo j en el FMS.
kij, espacio de herramientas requerido si el clúster de operaciones i es asignado al tipo de máquina j.
κj, portaherramientas no asignados por máquina tipo j por periodo.
τ, tiempo máximo permitido para las operaciones en un clúster.
ψj, tiempo disponible sin asignación por máquina tipo j por periodo.
Δkij, número de tipos diferentes de herramientas que deben asignarse a la máquina tipo j para llevar a cabo las operaciones del clúster i.
pij, Tiempo total de procesamiento si operación i se asigna a máquina tipo j
Pj, Tiempo de procesamiento disponible por máquina tipo j por periodo.
Kj, Espacio de herramental disponible por máquina tipo j por periodo.
A continuación se plantea la Fase I de la Heurística de Carga, para luego ser aplicada a un caso concreto:
Paso 0: Inicializar ψj = Pj y kj = Kj
Paso 1: Para cada operación sin asignar de cada parte, determine el número de tipos de máquinas facti-bles a producirlas. El tipo j es factible si ψj ≥ pij/mj y kj ≥ Δkij/mj.
Paso 2: Del conjunto de operaciones con el menor número de tipos de máquinas factibles a asignar. Selec-cione i* = argmaxi ( minj pij). Asigne la operación i* a j*=argmax ( ψj – pi*j/mj). actualice ψj* = ψj - pi*j/mj y kj* = kj – ki*j/mj. Si faltan operaciones por asignar vaya al paso 1, de lo contrario fin fase I.
Tabla 1. Datos
Tipo de parte Demanda Operación
Tiempo de procesamiento por unidad Herramienta
A B C1 12 11 10 a
1 40 2 13 15 7 b3 14 14 7 c
2 100 1 2 4 7 a2 2 6 6 c1 4 7 7 d
3 100 2 5 7 8 e3 7 7 4 f
Tabla 2. Iteración 1 heurística de carga fase I.
Operación Tipo de máquina Pij/mj ∆Kij/mj Ψj Kj Factible Tipos
factibles
111111
ABC
240220400
½½1
800800800
314
SíSíSí
3
121212
ABC
260300
-
½½-
800800800
314
SíSíNo
2
131313
ABC
280280
-
½½-
800800800
314
SíSíNo
2
212121
ABC
100200
-
½½-
800800800
314
SíSíNo
2
222222
ABC
100300600
½½1
800800800
314
SíSiSí
3
313131
ABC
200--
½--
800800800
314
SíNoNo
1
323232
ABC
250-
800
½-1
800800800
314
SíNoSí
2
333333
ABC
--
400
--1
800800800
314
NoNoSí
1
Problema de programación de operaciones y herramientas en un Sistema de Manufactura Flexible: Heurística de carga fase I
Pedro Daniel Medina V. • Eduardo Arturo Cruz T. Jorge Hernán Restrepo
y C pueden almacenar tres, una y cuatro herramientas, respectivamente. Se espera que cada máquina esté dispo-nible durante 800 minutos en este periodo. Es necesario desarrollar un programa de asignación de herramientas y operaciones a máquinas.
Planteamiento de la solución
Para este caso como se tienen que asignar 8 opera-ciones se requiere realizar 8 iteraciones del paso 1 para determinar la asignación de herramientas y operaciones a máquinas.
Paso 0: iniciar ψA = ψB = ψC = 800, kA = 3, kB = 1 y kC = 4
Paso 1: de acuerdo con las condiciones de factibili-dad de tipo de máquinas J a operaciones I se establece la siguiente Tabla 2:
El caso
Un grupo de máquinas va a ser cargado para producir tres tipos de partes. Los datos relevantes son mostrados en la tabla siguiente. Ciertas operaciones pueden ser llevadas a cabo por más de un tipo de máquina. Solo un tipo de máquina será elegido para cada operación. El grupo de máquinas tiene dos máquinas de tipo A, dos de tipo B y una de tipo C. Las máquinas de tipo A, B
104 El Hombre y la Máquina No. 30 • Enero - Junio de 2008
Tabla 3. Iteración 2 heurística de carga fase
Operación Tipo de máquina Pij/mj ∆kij/mj Ψj kj Factible Tipos
factibles
111111
ABC
240220400
½½1
600800800
2,514
SíSíSí 3
121212
ABC
260300
-
½½-
600800800
2,514
SíSíNo 2
131313
ABC
280280
-
½½-
600800800
2,514
SÍSÍNo 2
212121
ABC
100200
-
½½-
600800800
2,514
SíSíNo 2
222222
ABC
100300600
½½1
600800800
2,514
SíSíSí 3
323232
ABC
250-
800
½-1
600800800
2,514
SíNoSí
2
333333
ABC
--
400
--1
600800800
2,514
NoNoSí 1
En esta iteración se podrían asignar 31 ó 33, por te-ner solo un tipo de máquina factible para procesamiento y poseen los mismos valores para el tiempo unitario de procesamiento. Se decide seleccionar la operación 31, porque el tiempo de procesamiento disponible no asignado por máquina es mayor (600 por máquina tipo A comparado con 400 por máquina tipo C).
Operación asignada : 31
Herramienta : d
ΨA = 800 - 200 = 600
KA = 3 – 0.5 = 2.5
Iteración 2
Tabla 4. Iteración 3 heurística de carga fase I
Operación Tipo de máquina Pij/mj ∆kij/mj Ψj kj Factible Tipos
factibles
111111
ABC
240220400
½½1
600800400
2,513
SíSíSí 3
121212
ABC
260300
-
½½-
600800400
2,513
SíSíNo 2
131313
ABC
280280
-
½½-
600800400
2,513
SÍSÍNo 2
212121
ABC
100200
-
½½-
600800400
2,513
SíSíNo 2
222222
AB
C, Tiempo
100300600
½½1
600800400
2,513
SíSíNo 2
323232
AB
C, Tiempo
250-
800
½-1
600800400
2,513
SíNoNo 1
En esta iteración se tiene una operación con solo 1 tipo de máquina factible de manufacturarla (operación 33), por lo cual se selecciona la operación 33, operación que se asigna al tipo de máquina C, por ser su única opción.
Operación asignada : 33Herramienta :fΨC = 800 - 400 = 400kC = 4 – 1 = 3Iteración 3
Se selecciona la operación 32 y se asigna al tipo de máquina A, por ser la única opción.
Operación asignada : 32
Herramienta : e
ΨA =600 - 250 = 350
kA = 2.5 – 0.5 = 2.0
Iteración 4
Se tienen 4 posibles operaciones a asignar, pues son las que menos tipos de máquinas factibles tienen de procesamiento (solo 2). De estas se selecciona una siguiendo el criterio:
i* = argmaxi ( minj pij) = argmaxi (min j p12, min j p13, min j p21, min j p22) = argmaxi (520, 560, 200, 200).
Criterio que selecciona la operación 13, y la asigna según criterio j*=argmax ( ψj – pi*j/mj), a la máquina tipo B por ser la clase que quedaría con mayor tiempo disponible por máquina (520 minutos por máquina, comparados con los 70 minutos por máquina que restaría para el tipo A).
Problema de programación de operaciones y herramientas en un Sistema de Manufactura Flexible: Heurística de carga fase I
Pedro Daniel Medina V. • Eduardo Arturo Cruz T. Jorge Hernán Restrepo
Imagen obtenida delMITSUBISHI INDUSTRIAL ROBOT. INSTRUCTION
MANUAL: deatiled explanations of Functions and Operations.
105El Hombre y la Máquina No. 30 • Enero - Junio de 2008
Tabla 5. Iteración 4 heurística de carga fase
Operación Tipo de máquina Pij/mj ∆kij/mj Ψj kj Factible Tipos
factibles
111111
ABC
240220400
½½1
350800400
2,013
SíSíSí 3
121212
ABC
260300
-
½½-
350800400
2,013
SíSíNo 2
131313
ABC
280280
-
½½-
350800400
2,013
SíSÍNo 2
212121
ABC
100200
-
½½-
350800400
2,013
SíSíNo 2
222222
AB
C, Tiempo
100300600
½½1
350800400
2,013
SíSíNo 2
Tabla 7. Iteración 6 heurística de carga fase I.
Operación Tipo de máquina Pij/mj ∆kij/mj Ψj kj Factible Tipos
factibles
111111
AB,
espacio hmta
C
240220400
½½1
350220400
2,00,03
SíNoSí 2
212121
AB,
espacio hmta
C
100200
-
½½-
350220400
2,00,03
SíNoNo 1
222222
AB,
tiempo C,
tiempo
100300600
½01
350220400
2,00,03
SíNoNo 1
Operación asignada : 12
Herramienta : b
ΨB =520 - 300 = 220
kB = 0.5 – 0.5 = 0.0
Iteración 6
Tabla 8. Iteración 7 heurística de carga fase I.
Operación Tipo de máquina Pij/mj ∆kij/
mj Ψj kj Factible Tipos factibles
111111
AB,
espacio hmta
C
240220400
0½1
250220400
1,50,03
SíNoSí 2
222222
AB,
tiempo C,
tiempo
100300600
½01
250220400
1,50,03
SíNoNo 1
Se podrían asignar cualquiera de las operaciones 21 o 22, teniendo en cuenta los criterios de selección, se selecciona la operación 21 de forma aleatoria. Esta operación se envía a procesamiento a la máquina A, por ser la única elección posible.
Operación asignada : 21
Herramienta : a
ΨA =350 - 100 = 250
kA = 2.0 – 0.5 = 1.5
Iteración 7
Problema de programación de operaciones y herramientas en un Sistema de Manufactura Flexible: Heurística de carga fase I
Pedro Daniel Medina V. • Eduardo Arturo Cruz T. Jorge Hernán Restrepo
Operación asignada : 13
Herramienta : c
ΨB =800 - 280 = 520
kB = 1.0 – 0.5 = 0.5
Iteración 5Tabla 6. Iteración 5 heurística de carga fase I.
Operación Tipo de máquina Pij/mj ∆kij/
mj Ψj kj Factible Tipos factibles
111111
ABC
240220400
½½1
350520400
2,00,53
SíSíSí 3
121212
ABC
260300
-
½½-
350520400
2,00,53
SíSíNo 2
212121
ABC
100200
-
½½-
350520400
2,00,53
SíSíNo 2
222222
AB
C, Tiempo
100300600
½01
350520400
2,00,53
SíSíNo 2
Se tienen 3 posibles operaciones a asignar, pues son las que menos tipos de máquinas factibles tiene de procesamiento (solo 2). De estas se selecciona una siguiendo el criterio:
i* = argmaxi ( minj pij) = argmaxi (min j p12j, min j p21j, min j p22j) = argmaxi (520, 200, 200).
Criterio que selecciona la operación 12, y la asigna según criterio j*=argmax ( ψj – pi*j/mj), a la máquina tipo B por ser la clase que quedaría con mayor tiempo disponible por máquina (220 minutos por máquina, comparados con los 90 minutos por máquina Tipo A).
106 El Hombre y la Máquina No. 30 • Enero - Junio de 2008
Tabla 10. Programación final.
Operación Tipo de máquina asignado Herramienta asignada
11 C a
12 B b
13 B c
21 A a
22 A c
31 A d
32 A e
33 C f
Se selecciona la operación 11 y se asigna a la má-quina tipo C.
Operación asignada : 11
Herramienta : a
Ψc =400 - 400 = 0
kc = 3.0 – 1 = 2.0
Para resumir la programación obtenida es:
Problema de programación de operaciones y herramientas en un Sistema de Manufactura Flexible: Heurística de carga fase I
Pedro Daniel Medina V. • Eduardo Arturo Cruz T. Jorge Hernán Restrepo
Tabla 9. Iteración 8 heurística de carga fase I.
Operación Tipo de máquina Pij/mj ∆kij/
mj Ψj kj Factible Tipos factibles
111111
A, tiem-poB,
espacio hmta
C
240220400
0½1
150220400
1,00,03
NoNoSí 1
Foto tomada en la celda de manufactura flexible de la Facultad de Ingenie-ría Industrial de la Universidad Tecnológica de Pereira (en primer plano
brazo robot MITSUBISHI RV-2AJ y en segundo plano Fesa CNC)
Se selecciona la operación 22 (por ser la de menor número de tipos de máquina factibles para su manu-factura) y se trabajará en la máquina tipo A por ser la única opción.
Operación asignada : 22
Herramienta : c
ΨA =250 - 100 = 150
kA = 1.5 – 0.5 = 1.0
Iteración 8
Conclusiones y recomendaciones
El método aquí presentado surge como una alterna-tiva de rápida ejecución para obtener una solución a un problema de programación de un FMS, además de fácil implementación. Un aspecto importante de la heurística radica en la simplificación de un problema complejo a través de la solución secuencial de problemas de menor complejidad.
El alcance de la Fase I se limita solo a la asignación de operaciones y herramientas a tipos de máquinas, sin preocuparse por la asignación específica a una máqui-na en particular, por lo tanto, el objetivo es obtener un balance en la carga de trabajo entre los diferentes tipos de máquinas.
Sin embargo, este enfoque es corto y se hace nece-saria la aplicación de la Fase II para mejorar la solución de acuerdo con criterios como flexibilidad en las rutas de producción y disminución de movimientos de material entre máquinas.
107El Hombre y la Máquina No. 30 • Enero - Junio de 2008
Problema de programación de operaciones y herramientas en un Sistema de Manufactura Flexible: Heurística de carga fase I
Pedro Daniel Medina V. • Eduardo Arturo Cruz T. Jorge Hernán Restrepo
Bibliografía1. Askin, Ronald G. y Goldberg, Jeffrey B. Design and Analysis
of Lean Production Systems. Jhon Wiley & Sons. 2001.
2. Askin, Ronald G. y Standridge, Charles R. Modeling and Analisis of Manufacturing Systems. Jhon Wiley & Sons. 1998.
3. Ferre Masip, Rafael. La fábrica flexible. Productica. Mar-combo Boixareu Editores. 1988.
4. Irani, Shahruk. Hanbook of Cellular Manufacturing Systems. John Wiley & Sons. 2002.
5. Levasseur, Gerald. An Applications-Oriented Procedure for Cell Formation. Production and Inventory Management Journal. First Quarter 1996. pags 7 – 11.
6. The productivity development team. Cellular Manufacturing: One-Piece For for Workteams. Shopfloor Series. Producti-vity Press. 1999.
7. Schonberger, Richard. Manufactura de clase mundial: Apli-cación de las últimas técnicas para optimizar la producción. Grupo Editorial Norma. 1989.