Modelaje del Sistema de Producci¶on Bucket Brigades

76
Modelaje del Sistema de Producci´on Bucket Brigades Trabajo de Tesis Presentado al Departamento de Ingenier´ ıa Industrial por Diego Rojas P´ aez Para optar al T´ ıtulo de Ingeniero Industrial Ingenier´ ıa Industrial Universidad de los Andes 27 de enero de 2004

Transcript of Modelaje del Sistema de Producci¶on Bucket Brigades

Page 1: Modelaje del Sistema de Producci¶on Bucket Brigades

Modelaje del Sistema de Produccion Bucket

Brigades

Trabajo de TesisPresentado al

Departamento de Ingenierıa Industrial

por

Diego Rojas Paez

Para optar al Tıtulo deIngeniero Industrial

Ingenierıa IndustrialUniversidad de los Andes

27 de enero de 2004

Page 2: Modelaje del Sistema de Producci¶on Bucket Brigades

Modelaje del Sistema de Produccion Bucket

Brigades

Aprobado por:

Profesor German Riano Ph.D., Asesor

Profesor Fernando Palacios Ph.D.

Fecha de Aprobacion

Page 3: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

RESUMEN

En el presente documento se modela el sistema de produccion “Bucket

Brigades” como una cadena de Markov de tiempo continuo (CMTC). El modelaje

es implementado en el lenguaje de programacion Java, permitiendo el analisis de

las caracterısticas del sistema. Con base en los resultados obtenidos, se propone un

algoritmo para configurar cualquier sistema de produccion tipo “Bucket Brigades”

bajo los supuestos hechos en el modelo.

iii

Page 4: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

TABLA DE CONTENIDO

RESUMEN III

I. INTRODUCCION 4

II. DEFINICION DEL PROBLEMA 6

III. OBJETIVOS 7

IV. METODOLOGIA 8

V. MARCO TEORICO 9

5.1. Generalidades del Sistema Bucket Brigades . . . . . . . . . . . . . . 9

5.2. Movimiento de los Trabajadores en el Sistema . . . . . . . . . . . . 9

5.3. Utilizacion del Sistema Bucket Brigades . . . . . . . . . . . . . . . . 11

5.4. Ventajas y Desventajas del Sistema Bucket Brigades . . . . . . . . . 11

5.5. Literatura Existente Acerca de Bucket Brigades . . . . . . . . . . . 13

5.5.1. Bartholdi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

5.5.2. Bishak . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

5.6. Fundamento Teorico de las Cadenas de Markov de Tiempo Continuo 15

5.6.1. Procesos Estocasticos . . . . . . . . . . . . . . . . . . . . . . 15

5.6.2. Procesos de Markov . . . . . . . . . . . . . . . . . . . . . . . 16

5.6.3. Cadenas de Markov . . . . . . . . . . . . . . . . . . . . . . . 16

5.6.4. Cadenas de Markov de Tiempo Discreto - CMTD . . . . . . 16

5.6.5. Cadenas de Markov de Tiempo Continuo - CMTC . . . . . . 17

5.6.6. CMTC - Colas Circulares . . . . . . . . . . . . . . . . . . . . 18

1

Page 5: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

VI. MODELAJE DEL SISTEMA BUCKET BRIGADES 21

6.1. Supuestos del Modelo . . . . . . . . . . . . . . . . . . . . . . . . . . 21

6.2. Medidas de Desempeno del Sistema . . . . . . . . . . . . . . . . . . 23

VII. PAQUETE “J MARKOV” 24

7.1. Algoritmo BuildRS . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

7.2. “J Markov” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

VIII.PAQUETE “BUCKETBRIGADES” 28

8.1. BucketBrigades.java . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

8.2. OptWorkerAlign.java . . . . . . . . . . . . . . . . . . . . . . . . . . 29

8.3. BucketBuffers.java . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

IX. RESULTADOS DEL MODELO Y CONCLUSIONES 35

9.1. Comparacion de Resultados con Modelo de Bishak . . . . . . . . . . 35

9.2. Caracterısticas Generales de Bucket Brigades como una CMTC . . . 36

9.2.1. Estados y Probabilidades del Sistema en el Largo Plazo . . . 36

9.2.2. Eventos: Tasa de Produccion . . . . . . . . . . . . . . . . . . 37

9.2.3. Medidas de Desempeno . . . . . . . . . . . . . . . . . . . . . 38

9.3. Respuesta del Modelo a Cambios en sus Parametros . . . . . . . . . 43

9.3.1. Numero de Trabajadores por Lınea de Produccion . . . . . . 43

9.3.2. Numero de Lıneas de Produccion . . . . . . . . . . . . . . . . 44

9.3.3. Numero de Maquinas por Lınea de Produccion . . . . . . . . 44

9.3.4. Velocidad de Proceso de los Trabajadores en las Maquinas . . 46

9.3.5. Uniformidad de los Operarios . . . . . . . . . . . . . . . . . . 49

9.3.6. Orden de los Trabajadores con Distintas Velocidades de Pro-ceso en la Lınea de Produccion . . . . . . . . . . . . . . . . . 51

9.3.7. Cantidad de Espacios de Bufer en la Lınea de Produccion . . 53

9.3.8. Posicion de Espacios de Bufer en Lınea de Produccion . . . . 55

2

Page 6: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

9.4. Resumen de Resultados y Conclusiones - Reglas de uso general . . . 56

9.5. Sugerencias para Investigaciones Posteriores . . . . . . . . . . . . . . 58

X. HEURISTICO PARA CONFIGURAR LINEAS DE PRODUC-CION TIPO BUCKET BRIGADES 59

10.1. Heurıstico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

10.2. Ejemplo de Aplicacion del Heurıstico . . . . . . . . . . . . . . . . . 59

10.3. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

XI. MANUAL DEL USUARIO - BUCKETBRIGADES 68

11.1. Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

11.2. Instalacion del Paquete BucketBrigades . . . . . . . . . . . . . . . . 68

11.3. Uso de BucketBrigades.java . . . . . . . . . . . . . . . . . . . . . . . 69

11.4. Uso de OptWorkerAlign.java . . . . . . . . . . . . . . . . . . . . . . 70

11.5. Uso de BucketBuffers.java . . . . . . . . . . . . . . . . . . . . . . . . 71

3

Page 7: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Capıtulo I

INTRODUCCION

En el presente proyecto de grado se hace un aporte al estudio del sistema de

produccion “Bucket Brigades”.

Bucket Brigades fue desarrollado en la decada de los 70‘s por la companıa Toyota

Sewn Products con el fin de optimizar la manufactura de forros para carros, recibien-

do inicialmente el nombre de “Toyota Sewn Products System” o “TSS”. La primera

implementacion de TSS en los Estados Unidos fue hecha en Carolina del Sur en

1989. En la actualidad, Bucket Brigades es ampliamente utilizado por la industria

de confecciones (en ingles “Apparel Manufacturing”), por empresas como Toyota

Sewn Products, Wrangler y Blue Bell, entre muchos otros; en procesos de “order

picking” y otros procesos industriales simples. Las secciones 5.1 - 5.4 presentan la

descripcion y algunas caracterısticas generales de este sistema de produccion.

Los grandes contribuyentes al estudio del sistema Bucket Brigades son Bartholdi

y Eisenstein[1, 2, 3], y Bishak [4], quienes han propuesto modelos del sistema Bucket

Brigades con fuertes supuestos, como se muestra en la seccion 5.5.

En este proyecto de grado se modela el sistema Bucket Brigades como una cadena

de Markov de tiempo continuo (CMTC), cuyo fundamento teorico se presenta en

la seccion 5.6. El capıtulo 6 explica las caracterısticas adicionales del modelaje

del sistema. Los supuestos hechos en este caso difieren de aquellos utilizados por

Bartholdi y Bischak en sus estudios.

El modelaje de Bucket Brigades como una CMTC es implementado en el lenguaje

de programacion Java. El capıtulo 7 presenta el paquete “J Markov”, creado por

el Profesor German Riano para modelar y resolver computacionalmente cualquier

4

Page 8: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

cadena de Markov finita. El “J Markov” sirve como base para la implementacion

del sistema Bucket Brigades por el paquete “BucketBrigades”, que se presenta en el

capıtulo 8.

Los resultados del modelaje computacional, resumidos en el capıtulo 9, permiten

llegar a conclusiones sobre las caracterısticas principales de BucketBrigades, y tam-

bien proponer un heurıstico para configurar cualquier sistema de produccion tipo

BucketBrigades bajo el conjunto de supuestos hechos. La propuesta del heurıstico

se presenta en el capıtulo 10.

La aplicacion del heurıstico propuesto a un caso practico requiere de los resulta-

dos computacionales de la implementacion del modelo de Bucket Brigades en Java.

Por tal razon, se incluye en los Anexos un breve manual del usuario, en donde se

dan consejos para una adecuada instalacion de Java en el computador y el uso del

paquete “BucketBrigades”.

5

Page 9: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Capıtulo II

DEFINICION DEL PROBLEMA

No se han conducido analisis del sistema Bucket Brigades bajo el siguiente con-

junto de supuestos:

a. Los trabajadores pueden no ser consistentemente rapidos o lentos.

b. Peden existir espacios de bufer disponibles en la lınea de produccion

c. Los trabajadores pueden quedar en estado de espera si no pueden avanzar a

la siguiente maquina con la unidad que actualmente estan trabajando.

d. Los tiempos de proceso en las maquinas del sistema son aleatorios, suponiendo

que estan distribuidos de forma exponencial.

Los anteriores supuestos (a− d) hacen que el modelaje del sistema Bucket Bri-

gades sea mas fiel a la realidad, otorgando significado al desarrollo de un modelo

que los incluya.

6

Page 10: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Capıtulo III

OBJETIVOS

1. Conocer mejor las caracterısticas del sistema de produccion Bucket Brigades,

modelandolo bajo un nuevo conjunto de supuestos.

2. Apalancarse en el modelo y las conclusiones obtenidas a partir de este para

proponer un heurıstico que permita encontrar una configuracion razonable

para cualquier sistema de produccion Bucket Brigades, teniendo en cuenta el

conjunto de supuestos hechos.

7

Page 11: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Capıtulo IV

METODOLOGIA

1. Modelar al sistema de Bucket Brigades como una cadena de Markov de tiempo

Continuo (CMTC).

2. Implementar el modelo en un lenguaje de programacion.

3. Investigar las caracterısticas del sistema Bucket Brigados bajo el conjunto de

supuestos, por medio de la realizacion de experimentos con el programa creado.

Evualuar efectos de la variacion de los parametros del sistema, como lo son el

numero de operarios, maquinas y espacios de bufer, la ubicacion de operarios

y buferes en la lınea de produccion, entre otros.

4. Analizar los resultados del modelo y deducir reglas de uso general, que pue-

dan servir para configurar los sistemas estilo Bucket Brigades de una forma

razonable.

8

Page 12: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Capıtulo V

MARCO TEORICO

5.1. Generalidades del Sistema Bucket Brigades

Bucket Brigades es una forma de organizar trabajadores en una lınea de produc-

cion en la cual hay un mayor numero de maquinas que de operarios.

En este sistema, cada maquina puede ser operada solamente por un trabajador

a la vez, y cada trabajador puede procesar solamente una unidad al mismo tiempo.

Cada maquina puede tener espacios de bufer, en donde se almacenan unidades de

producto en proceso.

Los trabajadores conservan una secuencia definida, y estan ordenados de forma

tal que ninguno puede adelantar a otro a lo largo de la lınea de produccion. Todos

los trabajadores estan en capacidad de operar cualquiera de las maquinas de la lınea

de produccion.

5.2. Movimiento de los Trabajadores en el Sis-

tema

En el sistema Bucket Brigades todos los trabajadores conservan su orden inicial.

Por consiguiente, se puede asignar un ındice a cada trabajador j, (j = 1, 2, ..., J).

El orden de las maquinas en el esquema de produccion tambien es constante, y se

puede dar un ındice a cada maquina m, (m = 1, 2, ..., M).

Los movimientos de los trabajadores a lo largo de la lınea de produccion se

pueden dividir en dos grupos: movimientos hacia delante (en la misma direccion del

flujo de trabajo de la lınea)y movimientos hacia atras.

9

Page 13: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Movimiento Hacia Delante:

Supongase que en la lınea de produccion un trabajador j se encuentra trabajando

una pieza en la maquina mj. Cuando termina el proceso, el trabajador avanza en la

lınea de produccion hasta la siguiente maquina, mj + 1.

a. Si la maquina mj +1 se encuentra disponible, el trabajador j puede continuar

el proceso de la pieza en mj + 1.

b. Si la maquina mj +1 se encuentra ocupada, el trabajador j tiene dos opciones:

Dejar la unidad que tiene en las manos en el bufer de la maquina mj + 1

(si existe un bufer y si este no esta lleno) y devolverse a lo largo de la lınea

de produccion para tomar otra unidad (ver Movimiento Hacia Atras)

Esperar en la maquina mj + 1(estado de bloqueo o inactivo) hasta que

esta se desocupe, y luego continuar el proceso.

c. Si el trabajador es el ultimo de la lınea (j = J), y si termina el proceso en

la ultima maquina (mj = M), el operario va automaticamente hacia atras en

busqueda de una nueva unidad para trabajar ( ver Movimiento Hacia Atras).

Este evento se denomina “Reset”.

Movimiento Hacia Atras

Supongase que en la lınea de produccion un trabajador j se encuentra en la

maquina mj y no tiene una unidad de producto en proceso en sus manos. El tra-

bajador j se debe mover en sentido contrario al flujo de proceso en la lınea con

el unico objetivo de tomar la primera unidad de trabajo en proceso que encuentre

para trabajar en ella. Esta unidad puede estar contenida en un bufer, o puede estar

siendo procesada por otro operario (j − 1).

a. Si la primera unidad que encuentra el operario j esta en el bufer de la maquina

mb, el operario la toma y sigue el proceso en la maquina mb.

b. Si la primera unidad que encuentra el operario j esta en manos del operario

j − 1, en la maquina mj−1 se aplica la “preemption rule”. Segun esta regla, el

10

Page 14: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

trabajador j debe tomar el trabajo del trabajador j − 1, y continuarlo en la

maquina mj−1. El trabajador j − 1, ahora inactivo, debe moverse hacia atras

en busca de otra pieza para trabajar.

c. Para el caso en que m = 1, se asume que en la primera maquina existe un

bufer que contiene una cantidad inagotable de unidades de materia prima,

proveyendo al sistema constantemente.

5.3. Utilizacion del Sistema Bucket Brigades

Bucket Brigades es tıpicamente utilizado en lıneas de produccion donde hay un

mayor numero de maquinas que de operarios, y por consiguiente, su uso es mas

frecuente en paıses donde el factor de produccion capital es relativamente barato en

comparacion con el factor laboral.

Este sistema es bastante ventajoso para casos en los cuales la demanda por un

producto es muy difıcil de preducir y la produccion debe responder rapidamente

a cambios de diseno del producto, como en el caso de las confecciones. Bajo estas

circunstancias es recomendable mantener un bajo inventario de producto en proceso

para poder minimizar las perdidas si la demanda por productos cambia subitamente.

Generalmente, las lıneas de produccion Bucket Brigades se organizan en forma

de “U”, facilitando el desplazamiento de los trabajadores dentro de la lınea. Los

operarios trabajan normalmente de pie en estaciones de trabajo (maquinas) que

quedan a la altura del pecho. De esta forma, los operarios pueden desplazarse mas

rapidamente, siguiendo las reglas de movimiento de operarios expuestas en la seccion

5.2.

Se han observado sistemas Bucket Brigades con 2 a 16 operarios, pero los sistemas

con 12 o mas operarios son generalmente vistos como suboptimos. Usualmente hay

2,5 maquinas por cada operario [4].

5.4. Ventajas y Desventajas del Sistema Bucket

Brigades

Ventajas

11

Page 15: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

a. Flexibilidad en el ajuste del volumen de produccion. La mas importan-

te de las ventajas de Bucket Brigades es su alta flexibilidad en el cambio de la

tasa de produccion, al simplemente adicionar o retirar trabajadores de la lınea

de produccion. El ajuste de la tasa de produccion serıa mas difıcil para siste-

mas en los cuales los trabajadores estan fijos en las maquinas, y se tendrıan

que modificar los tiempos de trabajo o rebalancear las lıneas de produccion.

b. Reducido nivel de inventario de producto en proceso El sistema Bucket

Brigades es de tipo pull, lo que significa que la entrada de una unidad de

materia prima a la lınea de produccion esta condicionada por la salida de

una unidad de producto terminado. Cada trabajador constituye a su vez un

subsistema que tambien es de tipo pull, ya que un trabajador solamente puede

tomar una pieza nueva cuando ha terminado o entregado la que tiene en sus

manos. Muchos otros sistemas son de tipo push, en los cuales la entrada de

unidades de materia prima al sistema se permite si el sistema no esta saturado,

manteniendo niveles promedio de producto en proceso mas altos.

c. Elevada productividad del personal Con Bucket Brigades, los trabaja-

dores permanecen mas tiempo ocupados que en otros sistemas de produccion

convencionales [4]. De esta forma, la productividad de los trabajadores se man-

tiene en niveles elevados.

d. Se facilita el monitoreo de la productividad de cada trabajador En

una lınea de produccion, los trabajadores mas rapidos tienden a aportar una

mayor proporcion del trabajo total realizado en el proceso de produccion en

comparacion con los demas operarios. Este es un hecho visible que puede ser

facilmente identificado por los administradores de produccion.

e. Se facilita la deteccion de problemas de calidad El bajo nivel de pro-

ducto en proceso permite que un problema de calidad pueda ser rastreado mas

rapidamente.

f. Mayor motivacion para los trabajadores. Bucket Brigades requiere de un

12

Page 16: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

buen trabajo en grupo. Cada trabajador se desplaza para cambiar de maqui-

na y desarrolla varias tareas distintas, haciendo que su trabajo sea menos

monotono y que el trabajador sea menos propenso a sufrir lesiones fısicas co-

mo producto de errores de postura, en compoaracion con otros sistemas de

produccion.

Desventajas

a. El entrenamiento de trabajadores para operar varias maquinas (crosstraining)

puede ser costoso.

b. La introduccion de trabajadores no entrenados al sistema de produccion puede

reducir la tasa de produccion de toda la lınea hasta que el nuevo trabajador

este entrenado completamente.

5.5. Literatura Existente Acerca de Bucket Bri-

gades

Dos de las mas importantes fuentes bibliograficas acerca de Bucket Brigades son

Bartholdi et al. [1],[2], [3] y Bishak [4].

5.5.1. Bartholdi

Bartholdi y Eisenstein [1] modelan los trabajadores de un sistema Bucket Bri-

gades como heterogeneos, con la propiedad de que pueden ser consistentemente

ordenados del mas rapido al mas lento.

En el modelaje de Bartholdi no se distinguen maquinas a lo largo de la lınea

de produccion. Esta es modelada como una distancia de longitud fija L que cada

trabajador j recorre con una velocidad conocida y constante vj, que depende del

numero de maquinas del sistema y de las habilidades del operario j.

El sistema se balancea automaticamente, sin importar la posicion inicial de los

operarios en la lınea de produccion, si y solo si los operarios de la lınea son ordenados

13

Page 17: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

de forma ascendente de acuerdo a su velocidad, tal que el ultimo trabajador siempre

tenga la velocidad mas alta.

Una vez el sistema esta balanceado, Bartholdi demuestra formalmente que tiene

las siguientes propiedades:

Cada operario vuelve a una posicion fija despues de cada “Reset”.

Cada operario aporta una fraccion constante de trabajo en el sistema.

La tasa de produccion alcanza su maximo.

Los resultados de Bartholdi [1]se resumen en sus 4 teoremas:

Teorema 1. Para cualquier lınea de produccion Bucket Brigades existe una posi-

cion xi dentro de la lınea de produccion para cada trabajador i, tal que cada

i retorna a la posicion xi despues de un “Reset” en el sistema.

Teorema 2. Para cualquier lınea de produccion Bucket Brigades, si los trabajado-

res son ordenados del mas lento al mas rapido, cualquier posicion inicial xi0

de cada trabajador i converge a un posicion unica xi despues de un “Reset”

en el sistema.

Teorema 3. Si las velocidades de los operarios son constantes con v1 < · · · < vJ ,

entonces la lınea converge exponencialmente rapido a un unico punto fijo en

el cual:

1. El trabajador i ejecuta repetidamente el intervalo de trabajo

[∑i−1j−1 vj∑Jj=1 vj

,

∑ij−1 vj∑Jj=1 vj

]

2. La tasa de produccion es la maxima posible, e igual a:—

TasaProd. =J∑

j=1

vj

Teorema 4. Si los operarios de una lınea de produccion Bucket Brigades son orde-

nados del mas lento al mas rapido, entonces el anadir un operario o incrementar

su velocidad nunca disminuira la tasa de produccion.

14

Page 18: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

5.5.2. Bishak

Bischak [4] modela los trabajadores en una lınea de produccion Bucket Brigades

como identicos, y los tiempos de proceso en las maquinas como aleatorios, adoptando

una distribucion exponencial(con alta variabilidad)o una distribucion uniforme (con

menor variabilidad).

En su investigacion, Bishak utiliza la simulacion como herramienta de analisis y

encuentra que el sistema Bucket Brigades muestra caracterısticas sobresalientes en

cuanto a productividad por empleado, en comparacion con otros sistemas que tienen

un numero definido de operarios en cada maquina. De hecho, en sistemas grandes

con una alta variabilidad de los tiempos de proceso, un sistema Bucket Brigades con

M maquinas puede obtener una mayor tasa de produccion con J operarios(J < M)

que otro sistema con las mismas maquinas y con M operarios sentados en las M

maquinas.

Los modelos de simulacion de Bishak incluyen la existencia de espacios de bufer

en el sistema. Concluye que los buferes son utiles en sistemas con alta variabilidad

en el tiempo de procesamiento, y tienen un efecto marginal en sistemas con baja

variabilidad del tiempo de procesamiento, y que en todo caso pueden aumentar

dramaticamente el tiempo de ciclo.

5.6. Fundamento Teorico de las Cadenas de Mar-

kov de Tiempo Continuo

5.6.1. Procesos Estocasticos

Un proceso estocastico esta definido por una familia de variables aleatorias

{X(t), t ≥ o, tεT} , donde cada variable aleatoria esta indexada por un parametro t,

generalmente conocido como el parametro del tiempo. El conjunto de parametros T

puede ser continuo o discreto, en cuyo caso se hace referencia a procesos estocasticos

continuos o discretos.

15

Page 19: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

5.6.2. Procesos de Markov

Los procesos de Markov son un subconjunto de los procesos estocasticos {X(t), t ≥o, tεT}, que cumplen con la “propiedad de Markov”, es decir:

Propiedad de Markov Para todos los ındices 0 = t0 ≤ t1 ≤ t2 ≤ ... ≤ tn, para el

vector de estados S = {s1, s2, ..., sn} y para el conjunto de variables aleatorias

{X0, X1, ..., Xt, Xt+1, ...} se cumple:

(Xt+1 = sn+1|Xt = sn, Xt−1 = sn−1, ..., X0 = s0) = P (Xt+1 = sn+1|Xt = sn)

El estado en el periodo t + 1 depende unicamente del estado en el periodo

inmediatamente anterior, t, y es independiente de los estados anteriores al

periodo t.

5.6.3. Cadenas de Markov

Una cadena de Markov es un subconjunto de los procesos de Markov que se

caracteriza por que el conjunto de los posibles estados del sistema, es decir, los

posibles valores que pueden tomar las variables aleatorias, es discreto. Este conjunto

puede ser finito o infinito.

Las cadenas de Markov pueden ser de tiempo discreto o de tiempo continuo,

como se menciona a continuacion.

5.6.4. Cadenas de Markov de Tiempo Discreto - CMTD

Las cadenas de Markov de tiempo discreto se caracterizan por que los eventos

ocurren en puntos discretos y conocidos del tiempo. Se puede entonces hablar de

“pasos” de un estado a otro estado despues de un intervalo definido de tiempo.

Un ejemplo puede ser la cantidad de inventario terminado al final de un dıa de

trabajo, en donde el estado es discreto (numero de unidades de inventario terminado)

y el sistema puede cambiar de estado solamente en intervalos discretos y conocidos

(al final de cada dıa de trabajo).

Para el cambio de estado i al estado j despues de cada “paso” se asigna una

probabilidad pij ≥ 0 . Para tener consistencia, se debe garantizar que∑

j pij = 1

16

Page 20: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Las probabilidades pij para todos los estados i, j, se resumen en una matriz de

transicion P.

5.6.5. Cadenas de Markov de Tiempo Continuo - CMTC

En el presente documento se modela el sistema de produccion Bucket Brigades

como una CMTC, y por consiguiente, se introducen las CMTC con una profundidad

mayor que las CMTD.

Una CMTC es un subconjunto de las cadenas de Markov, que se caracterizan

porque los eventos o transiciones entre estados pueden ocurrir en un intervalo con-

tinuo de tiempo, y no unicamente despues de un periodo determinado como en una

CMTD.

En las CMTC el sistema permanece en el estado i durante un tiempo distribuido

de forma exponencial con tasa qi, y cuando sale del estado i pasa al estado j con

probabilidad pij. Se debe garantizar que∑

j pij = 1.

Matriz de Probabilidades de Transicion

Para las CMTC se definen las probabilidades de transicion de un estado i al

estado j en el intervalo de tiempo [u, v), con u, v ε T y u ≤ v, como:

pij(u, v) = Prob.(Xv = j|Xu = i) (1)

Si u = v se tiene entonces que pij = 1 si i = j, y pij = 0.

Las probabilidades de transicion pij se agrupan en la matriz de transicion P(u, v).

Matriz de tasas

La matriz de tasas Q tiene como componentes

qij =

−qi, i = j

qi ∗ pij, i 6= j(2)

donde qij es la tasa de la variable exponencial a la cual el sistema pasa del estado

i al estado j, y qi es la tasa a la cual el sistema abandona el estado i hacia otros

estados.

17

Page 21: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Entonces se vuelve evidente que

qi =∑

j

qij, i 6= j (3)

Es logico pensar que la tasa a la cual se sale de un estado i es igual a la suma de

las tasas a las cuales se pasa del estado i a todos los otros posibles estados j. Esta

es la unica forma en que se puede garantizar coherencia y estabilidad en la cadena

de Markov.

En las CMTC se suele expresar la matriz de probabilidades de transicion P como

una funcion de la matriz de tasas Q,P = f(Q) de la siguiente forma:

pij =qij

qi

=qij∑

j qij, i 6= j(4)

La probabilidad de pasar de un estado i a otro j es proporcional a la tasa a la

cual el sistema pasa de i a j.

5.6.6. CMTC - Colas Circulares

Habiendo introducido las CMTC, es importante presentar una de sus aplica-

ciones, que servira posteriormente como herramienta de validacion del modelaje

computacional del sistema Bucket Brigades.

La teorıa de colas estudia sistemas en los cuales existe un proceso de llegada de

unidades, que son procesadas por estaciones de servicio con servidores.

En estos sistemas, si los servidores estan ocupados, las unidades que arriban al

sistema pueden esperar en colas que tienen una capacidad maxima definida. Cuando

los tiempos de arribo de las unidades al sistema y los tiempos de servicio por los

servidores estan distribuıdos de forma exponencial, el sistema se puede modelar

como una Cadena de Markov de Tiempo Continuo (CMTC).

Un sistema de colas circulares es una red cerrada de colas, en donde hay un

numero constante de unidades en proceso. Las unidades pasan en forma secuencial

por K estaciones de trabajo (k1, k2, ..., kK), donde hay un solo servidor por estacion,

y despues de ser procesadas por la estacion kK son atendidas de nuevo por la estacion

k1.

18

Page 22: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Las ecuaciones que describen una red de colas circulares sirven para validar los

resultados del modelaje del sistema BucketBrigades, para el caso en que todos los

operarios tengan la misma velocidad de proceso en cada maquina y que no existan

espacios de bufer dentro de este.

Si los operarios son identicos, cuando se presenta un reset y se aplica la Preemp-

tion Rule, es equivalente a que el ultimo operario que termino proceso en la ultima

maquina se deshaga de la pieza ya terminada y vaya al comienzo de la lınea para

tomar una nueva unidad de materia prima y comenzar su proceso.

La tasa de produccion (TP)y tiempo promedio de ciclo (TC)para un sistema

de colas circulares con m estaciones de una maquina y n operarios (por ende una

cantidad constante n unidades en el sistema), en donde cada operario tiene una

velocidad de proceso de µ en cada maquina, se calculan por medio de las ecuaciones

( 5) y ( 6):

TP =n ∗ µ

m + n− 1(5)

TC =n

TP=

nn∗µ

m+n−1

=m + n− 1

µ(6)

Las anteriores formulas pueden ser demostradas utilizando el “Mean - Value

Analysis Model”[6].

En el MVA, el tiempo de ciclo TCj de una unidad debe esperar para ser proce-

sada en una estacion j de un sistema de colas circulares tiene dos componentes: el

tiempo de proceso en la maquina j, 1µj

, y el tiempo promedio en cola. Este ultimo

es equivalente al tiempo promedio de proceso de las demas unidades en la estacion

j en un momento. En un sistema de colas cerradas la todas las unidades tienen la

misma probabilidad de encontrarse en cualquiera de las estaciones en algun momen-

to, por lo que se espera que de n − 1 unidades, haya en promedio n−1m

unidades en

cada estacion. Por consiguiente, el tiempo esperado de proceso de las demas n − 1

unidades en la estacion j es equivalente a n−1m∗ 1

µj.

TCj = [1 +(n− 1)

m] ∗ 1

µj

=m + n− 1

m ∗ µj

(7)

19

Page 23: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Como se supone que todas las estaciones son identicas, el tiempo total de ciclo

para el sistema, TC, es:

TC =∑

j

CTj = m ∗ m + n− 1

m ∗ µj

=m + n− 1

µ(8)

Aplicando la ley de Little, se tiene entonces que para el sistema la tasa de pro-

duccion promedio TP sera:

TP =n

TC=

nm+n−1

µ

=n ∗ µ

m + n− 1(9)

20

Page 24: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Capıtulo VI

MODELAJE DEL SISTEMA BUCKET

BRIGADES

En el modelaje de todo sistema real se deben hacer abstracciones y generar mo-

delos matematicos simplificados que permitan recoger los aspectos mas importantes

a analizar.

En la presente seccion se describen las caracterısticas del modelo estocastico

utilizado para modelar el sistema Bucket Brigades.

6.1. Supuestos del Modelo

Los desplazamientos de los trabajadores entre maquinas toman un tiempo

despreciablemente corto. Este supuesto es aceptable si se consideran varias

maquinas alineadas en forma de “U”, y muy cerca entre sı. Se supone, por

ende, que los trabajadores no se chocan durante sus desplazamientos.

El movimiento de los empleados sigue las reglas previamente expuestas en la

seccion 5.2.

Existe una cantidad infinita de piezas al comienzo de la lınea de produccion, y

una bodega de capacidad infinita al final de esta donde se almacena el producto

terminado. Se abstrae ası de todos los problemas que puede traer en la realidad

la consecucion de materia prima y el bodegaje de producto terminado.

Se deja de lado el problema de las reparaciones y las fallas de las maquinas,

suponiendo que esto nunca ocurre.

21

Page 25: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Bucket Brigades como una CMTC

Se presentan algunos supuestos adicionales del modelaje de Bucket Brigades

como una CMTC.

El tiempo t es continuo, y t ε [0,∞)

Cada estado s del conjunto finito y discreto de estados posibles en el sistema,S,

se caracteriza por dos vectores que indican en cual maquina se encuentra cada

trabajador y cuantas unidades hay en el bufer de cada maquina, en caso de

haberlos. Esta informacion recibe el nombre de “atributos”.

Los atributos del sistema son discretos, enteros y no negativos.

El sistema permanece en un estado i por un tiempo aleatorio distribuido ex-

ponencialmente antes de pasar a otro estado j, a una tasa que depende exclu-

sivamente del estado en el cual se encuentra el sistema.

Los eventos del sistema son la terminacion del proceso en cada una de las

maquinas (m = 1, 2, ...., M). El conjunto E de eventos posibles es finito y

discreto, y contiene exactamente M elementos.

El conjunto de eventos que pueden ocurrir en cada estado s, Es, depende del

estado s en el cual se encuentra el sistema

Todos los eventos tienen efectos conocidos sobre el sistema. Es decir, si se

conoce el estado inicial del sistema i, y el evento e | e ∈ Es, se puede decir

con certeza en cual estado final j adopta el sistema.

No pueden ocurrir dos o mas eventos de forma exactamente simultanea.

Los tiempos de proceso de cada operario j en cada maquina m tienen una dis-

tribucion exponencial con tasa conocida µjm, que depende las caracterısticas

de la maquina m y del trabajador j. La distribucion exponencial es utiliza-

da para modelar procesos cuya duracion tiene una alta variabilidad, ya que

la desviacion estandar es igual a la media. Por consiguiente, al utilizar este

22

Page 26: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

supuesto en el modelo, se estarıa suponiendo un “worst case” con respecto a

la variabilidad de los tiempos de proceso.

Las tasas qij son los componentes de la matriz de tasas Q y equivalen a las

µjm.

6.2. Medidas de Desempeno del Sistema

Las medidas que van a permitir comparar las distintas configuraciones de un

sistema de Bucket Brigades son las siguientes:

a. Tasa de produccion Equivale a la tasa promedio o “de largo plazo” a la

cual las maquinas terminan de procesar unidades. Es importante mencionar

que en Bucket Brigades todas las maquinas deben producir a la misma tasa.

Lo contrario significarıa un aumento o disminucion infinito en la cantidad de

unidades promedio en el sistema.

b. Tasa de ocupacion de los operariosIndica el porcentaje del tiempo en que

los operarios activos en las maquinas.

c. Tasa de ocupacion de las maquinasIndica el porcentaje del tiempo en que

una maquina es utilizada.

d. Cantidad promedio de unidades en buferes. En caso de existir buferes,

esta cantidad debe ser sumada al numero de operarios en el sistema para

obtener la cantidad total promedio de unidades en la lınea de produccion.

e. Tiempo promedio que tarda una pieza en ser procesada. En todo

sistema de produccion se cumple la ley de Little. Segun esta, si λses la tasa de

produccion de un sistema y L es el numero promedio de unidades en el mismo

sistema, entonces W, el tiempo promedio de una pieza en el sistema, es igual

a:

W =L

λs

23

Page 27: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Capıtulo VII

PAQUETE “J MARKOV”

“J Markov” es el paquete de programas creado por German Riano en el lenguaje

de programacion Java y que aporta las bases para la formulacion del sistema Bucket

Brigades en el presente proyecto de grado.

En la primera seccion de este capıtulo se presenta el algoritmo BuildRS [5], que

constituye una herramienta basica en la construccion del paquete. En la segunda

seccion se introducen las principales clases del “J Markov” [7].

7.1. Algoritmo BuildRS

El algoritmo BuildRS permite la construccion computacional del modelo de un

sistema como una cadena de Markov. Se presenta en el algoritmo (1).

7.2. “J Markov”

J Markov es un paquete, o conjunto de programas en el lenguaje Java, que provee

las herramientas basicas para implementar computacionalmente cualquier cadena

de Markov de tiempo discreto o continuo, que tenga un espacio de estados finito.

Cada programa consta de “clases”, que continen funciones especıficas. Las clases

pueden ser complementadas o “extendidas” por otras clases de otros programas en

el lenguaje Java.

Cuando una clase “extiende” a otra, puede tambien utilizar las funiciones de

la clase que es extendida. Esta es la forma como el paquete “J Markov” puede ser

utilizado por otro paquete para implementar el modelaje de cualquier cadena de

Markov.

24

Page 28: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Algoritmo 1 BuildRS

Require: Un conjunto E de todos los posibles eventos en el sistema.Require: Un estado inicial del sistema i0.Require: Reglas que definan si un evento e puede ocurrir en un estado i.1: Al conjunto U se le adiciona i0.2: while U 6= ∅ do3: Se substrae el primer estado si del conjunto U y se adiciona al conjunto S.

Este estado esta siendo “explorado”.4: for Para cada elemento e ∈ E do5: if Evento e es posible o “activo” en el estado si then6: Definir su tasa de ocurrencia.7: Definir el nuevo estado sd del sistema tras la ocurrencia del evento e.8: if sd /∈ (S ∪ U) then9: Adicional sd al conjunto U

10: end if11: end if12: end for13: end while

Datos de entrada del J Markov

Como datos de entrada, J Markov necesita reglas que le permiten modelar un

sistema como una cadena de Markov y desarrollar el algoritmo BuildRS. Estas reglas

deben ser claramente definidas por el paquete que extiende a las clases de J Markov,

y son las siguientes:

Definicion de los estados del sistema que se desea modelar como una cadena

de Markov.

Definicion de los eventos posibles que pueden ocurrir en el sistema.

Reglas que permitan determinar si un evento puede ocurrir dado un estado

(funcion active).

Reglas que indiquen el estado final que adopta el sistema, dados un estado

inicial y un evento (funcion dests)

Definicion de la tasa de ocurrencia de cada evento posible para cada estado

del sistema (funcion rates).

25

Page 29: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Definicion de las medidas de desempeno del sistema que deben ser calculadas.

Datos de Salida

Medidas de desempeno del sistema.

Probabilidades de estado estable para el sistema (πi).

Las clases principales de J Markov son MarkovProcess, State, Events y Eventsset,

que se presentan a continuacion.

Clase MarkovProcess

La clase MarkovProcess.class es la encargada de construir la cadena de Markov

y de realizar todos los calculos que permitan obtener las medidas de desempeno

del sistema. Para tal fin, invoca a las demas clases y funciones de J Markov. Sus

principales acciones son las siguientes:

Comanda la creacion de las funciones active, dests y rates, que son indispen-

sables datos de entrada de J Markov y permiten el desarrollo del algoritmo

BuildRS.

Construye, por medio de la funcion “generate( )”, la cadena de Markov reali-

zando el algoritmo BuildRS.

Computa las probabilidades del estado estable, resolviendo las ecuaciones P ∗Q = Q , como se explica en la seccion 5.6.5.

Calcula medidas de desempeno, utilizando las probabilidades del estado esta-

ble.

Calcula la tasa promedio de ocurrencia de cada evento en el sistema.

Clase State

Designa que los estados de un sistema deben ser definidos por medio de una

cadena de numeros, abriendo la posibilidad a multiples definiciones de estados

de un sistema.

26

Page 30: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Ordena en una lista todos los estados posibles del sistema, siguiendo un criterio

que debe ser definido para cada caso.

Ayuda a la generacion de la matriz de tasas Q al procesar la tasas de entrada

y salida de cada estado del sistema.

Permite al usuario la definicion de las medidas de desempeno del sistema que

se quieren conocer.

Clases Event y EventsSet

La clase Event designa que los eventos posibles en un sistema se definen por

medio de un conjunto de valores numericos enteros.

Crea una instancia de otra clase de Java denominada EventsSet, donde se

agrupan y ordenan todos los eventos posibles en el sistema, para todos los

estados en que este puede adoptar.

Event tiene una funcion que ordena crear una descripcion para cada evento.

Registra la frecuencia de ocurrencia de cada evento en el sistema.

27

Page 31: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Capıtulo VIII

PAQUETE “BUCKETBRIGADES”

BucketBrigades es el paquete, o conjunto de programas en Java, que se apalanca

en el paquete J Markov para implementar el modelajde del sistema de produccion

Bucket Brigades. Para esto, BucketBrigades extiende las clases del paquete J Markov

y crea funciones adicionales.

El paquete BucketBrigades contiene 3 programas: BucketBrigades.java, Bucket-

Buffers.java y OptWorkerAlign.java, que se presentan a continuacion.

8.1. BucketBrigades.java

BucketBrigades.java es un programa que modela un sistema de produccion tipo

Bucket Brigades, en el cual no existen espacios disponibles de bufer.

Datos de Entrada

BucketBrigades.java requiere de la matriz µmj que contiene las velocidades de

proceso de cada operario j, j = 1, 2, 3, · · · J en cada maquina m, m = 1, 2, 3, · · ·M .

Datos de Salida

El programa calcula la tasa promedio de produccion del sistema, la tasa a la cual

ocurre cada evento posible, y una serie de medidas de desempeno del sistema, que

incluyen la ocupacion promedio de los operarios y las maquinas, y la proporcion de

tiempo que cada operario permanece en cada una de las maquinas.

En BucketBrigades.java, cada estado esta definido por un vector de numeros

enteros que compone de tres vectores concatenados:

28

Page 32: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

1. MaqOp Indica en cual maquina se ubica cada uno de los trabajadores del

sistema.

2. StatusOp Para cada operario, registra 1 si esta activo y 0 de lo contrario.

3. StatusMaq Para cada maquina, registra 1 si la maquina esta activa y 0 de lo

contrario.

Los dos ultimos vectores, StatusOp y StatusMaq, pueden ser construidos a partir

del primer vector, ya que los operarios permanecen en estricto orden entre sı. Sin

embargo, se incluyen en la definicion de cada estado para facilitar el calculo de las

medidas de desempeno del sistema.

Las operaciones fundamentales que ejecuta Bucket Brigades se presentan en el

algoritmo 2.

8.2. OptWorkerAlign.java

OptWorkerAlign.java es un programa que determina el orden optimo de los ope-

rarios en una lınea de produccion tipo Bucket Brigades.

Datos de Entrada

OptWorkerAlign.java requiere de la matriz µmj que contiene las velocidades de

proceso de cada operario j, j = 1, 2, 3, · · · J en cada maquina m, m = 1, 2, 3, · · ·M .

Datos de Salida

El programa calcula el orden optimo de los trabajadores dentro de la lınea de

produccion y todas las medidas de desempeno del sistema con esta configuracion.

Adicionalmente, reporta una lista ordenada del desempeno del sistema para cada

una de las posibles configuraciones de los trabajadores.

Las operaciones ejecutadas por OptWorkerAlign.java se muestran en el algoritmo

3.

29

Page 33: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Algoritmo 2 BucketBrigades.java

Require: Matriz µmj de velocidades de proceso de cada operario j, j = 1, 2, 3, · · · Jen cada maquina m, m = 1, 2, 3, · · ·M

1: Construye un conjunto E de los eventos posibles en el sistema. Estos son laterminacion de proceso una maquina m del sistema, por lo que se llama a cadaevento em,m = 1, 2, ..., M

2: Construye estado inicial s0, en el cual todos los operarios se encuentran en laprimera maquina y solo el ultimo esta activo

3: Adiciona s0 al conjunto U de estados inexplorados4: while U 6= ∅ do5: Substrae el primer estado del conjunto U , denotado como el estado inicial si,

y se adiciona al conjunto S. Este estado esta siendo “explorado”6: for Para cada elemento em ∈ E do7: if Maquina m, correspondiente al evento em, esta activa en el estado inicio

si (funcion active) then8: Determina cual trabajador j ha terminado el proceso en la maquina m9: Define la tasa de ocurrencia del evento em como µj,m (funcion rates)

10: if Maquina m, correspondiente al evento em, es la ultima mauqina Mthen

11: Aplica la “preemption rule”: Cada operario j toma el trabajo de j− 1.El primer operario toma una unidad de materia prima y se ubica en laprimera maquina (funcion dests)

12: else13: Operario j, que termina proceso en maquina m avanza a la maquina

m + 1 (funcion dests)14: end if15: Describe el nuevo estado destino sd del sistema tras la ocurrencia del

evento em se por medio de un nuevo vector que indica en cual maquinase ubica cada operario

16: if sd /∈ S then17: Adiciona el estado destino sd al conjunto U18: end if19: end if20: end for21: end while22: Construye la matriz de tasas Q, a partir de las tasas definidas por la funcion

rates23: Encuentra vector ~p de probabilidades del estado estable24: Calcula medidas de desempeno del sistema, utilizando el vector de probabilida-

des del estado estable ~p25: Calcula la tasa promedio de ocurrencia de cada evento, utilizando el vector de

probabilidades del estado estable ~p26: Invoca una interfaz grafica para mostrar los resultados de los calculos hechos

30

Page 34: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Algoritmo 3 OptWorkerAlign.java

Require: Matriz µmj de velocidades de proceso de cada operario j, j = 1, 2, 3, · · · Jen cada maquina m, m = 1, 2, 3, · · ·M

1: Construye un conjunto C con todas las posibles configuraciones de operarios enla lınea de produccion ci, i = 1, 2, 3, · · · J !

2: while C 6= ∅ do3: Se substrae un primer elemento ci del conjunto C4: Reordena la matriz µmj, para reflejar el orden de los operarios en la lınea de

produccion dado por ci. Llamemos a esta nueva matriz µmj(i)5: Invoca al programa BucketBrigades.java, con la matriz µmj(i) como datos de

entrada.6: Registra los datos de salida del programa BucketBrigades.java en una lista L.7: end while8: Ordena la lista L en orden descendiente de acuerdo a la tasa de produccion

obtenida para cada configuracion de operarios.9: Invoca una interfaz grafica para mostrar la lista L.

8.3. BucketBuffers.java

El programa BucketBuffers.java es una modificacion del programa BucketBriga-

des.java. Analiza el comportamiento de un sistema Bucket Brigades para el caso en

que se permitan espacios de bufer en el sistema.

Los casos en los cuales no se permiten espacios de bufer en la lınea de produccion

pueden tambien ser resueltos con BucketBuffers.java, aunque con un mayor tiempo

de ejecucion debido a que el algoritmo desarrollado por BucketBuffers.java es mas

complejo que el de BucketBrigades.java.

Un espacio de bufer crea la posibilidad de que un operario coloque una unidad

del producto en proceso en un espacio fısico y pueda tomar otra unidad distinta

de producto en proceso para seguir trabajando. En el modelaje del sistema Bucket

Brigades se hace el supuesto de que los espacios de bufer pueden estar ubicados

solamente al pie de cada maquina. Es importante recordar que en la primera maquina

se supone la existencia de una cantidad infinita de unidades en bufer.

Datos de Entrada

BucketBuffers.java requiere de la matriz µmj que contiene las velocidades de

proceso de cada operario j, j = 1, 2, 3, · · · J en cada maquina m, m = 1, 2, 3, · · ·M ,

31

Page 35: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

y del vector ~bm que contiene la capacidad maxima de los buferes que se encuentran

al pie de cada maquina.

Datos de Salida

El programa calcula las mismas medidas de desempeno que el programa Buc-

ketBrigades.java, esta vez para un sistema en donde existen espacios de bufer. Adi-

cionalmente arroja el numero promedio de unidades que se encuentran en bufer al

pie de cada maquina m, m = 1, 2, 3, · · ·M .

La nueva forma de definir un estado en BucketBuffers.java es a traves de un

vector de numeros enteros que se compone de cuatro partes:

1. MaqOp Indica en cual maquina se ubica cada uno de los trabajadores del

sistema.

2. StatusOp Para cada operario, registra 1 si esta activo y 0 de lo contrario.

3. StatusMaq Para cada maquina, registra 1 si la maquina esta activa y 0 de lo

contrario.

4. NumInBuffers. Registra el numero de espacios de bufer que se encuentran

ocupados al pie de cada maquina, para las maquinas 2, 3, ..., M .

Los vectores StatusOp y StatusMaq pueden ser construidos a partir del primer

vector, ya que los operarios permanecen en estricto orden entre sı. Sin embargo,

se incluyen en la definicion de cada estado para facilitar el caclulo de medidas de

desempeno del sistema.

La diferencia mas significativa entre BucketBuffers.java y BucketBrigades.java

es la funcion dests, que desarrolla los algoritmos 4 y 5.

La funcion dests de BucketBuffers.java incorpora las nuevas reglas de movimiento

de los operarios cuando existen espacios de bufer en el sistema, como se explico en

la seccion 5.2.

32

Page 36: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Algoritmo 4 Funcion dests de BucketBuffers.java

Require: Matriz µmj de velocidades de proceso de cada operario j, j = 1, 2, 3, · · · Jen cada maquina m, m = 1, 2, 3, · · ·M .

Require: Vector ~bm que indica la capacidad maxima de los buferes en cada maquinam, m = 1, 2, 3, · · ·M .

1: Determina cual operario j ha terminado el proceso en la maquina m, correspon-diente a un evento em.

2: Determina el numero de unidades que se encuentran en cada bufer del sistema.3: {Caso 1:}4: if Maquina m < M and Maquina m + 1 no esta siendo utilizada then5: Operario j avanza a la maquina m + 1 y sigue trabajando.6: end if7: {Caso 2:}8: if Maquina m < M and Maquina m+1 esta siendo utilizada and no hay espacio

en el bufer de la maquina m + 1 then9: Operario j avanza a la maquina m + 1 y queda inactivo.

10: end if11: {Caso 3:}12: if Maquina m < M and Maquina m + 1 esta siendo utilizada and hay espacio

en el bufer de la maquina m + 1 then13: Operario j deja la unidad que esta procesando en el bufer de la maquina m+114: Operario j retrocede en la lınea de produccion en busqueda de otra unidad

para trabajar. Dests invoca la funcion Backwards(ver algoritmo 5), que de-termina la nueva posicion del operario.

15: end if16: {Caso 4:}17: if Se presenta un reset. Es decir, el ultimo operario (j = J) termina su proceso

en la ultima maquina (m = M) then18: Operario J retrocede en la lınea de produccion en busqueda de otra unidad

para trabajar. Dests invoca la funcion Backwards(ver algoritmo 5), que de-termina la nueva posicion del operario.

19: end if

33

Page 37: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Algoritmo 5 Funcion Bacwards de BucketBuffers.java

Require: Identificar el operario j, que busca una nueva unidad.Require: Vector MaqOp, que registra las posiciones actuales de todos los operariosRequire: Numero de unidades que se encuentran en cada bufer del sistema.Require: Vector ~bm que indica la capacidad maxima de los buferes en las maquinas

m, m = 1, 2, 3, · · ·M .1: {Caso 1:}2: if j > 1 and operario j − 1 esta inactivo en la misma maquina que el operario

j then3: Operario j toma la pieza que tiene el operario j − 1.4: Invoca recursivamente la misma funcion Backwards para el operario j − 1.5: end if6: {Caso 2:}7: if Operario j encuentra una unidad en bufer en la maquina m donde se encuentra

posicionado then8: Operario j toma la unidad del bufer y se queda en la maquina m.9: end if

10: {Caso 3:}11: if Operario no encuentra unidad en bufer en la maquina m donde se encuentra

and operario j − 1 no esta inactivo en la maquina m and maquina m − 1esta inactiva then

12: Operario j retrocede a la maquina m− 1.13: Se actualiza el vector MaqOp14: Se invoca recursivamente la funcion Backwards para el mismo operario j.15: end if16: {Caso 4:}17: if Operario no encuentra unidad en bufer en la maquina m donde se encuentra

and maquina m− 1 esta siendo utilizada por el operario j − 1 then18: Operario j toma la pieza que esta trabajando el operario j − 1, aplicando la

“Preemption Rule”.19: Se actualiza el vector MaqOp20: Se invoca recursivamente la funcion Backwards para el operario j − 1.21: end if22: {Caso 5:}23: if Operario j es el primero en la lınea de produccion (j = 1) and Operario j se

encuentra en la primera maquina de la lınea (m = 1) then24: Operario j se queda en su lugar.25: end if26: Backwards actualiza las posiciones de los operarios en el sistema y el numero de

unidades en cada bufer.

34

Page 38: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Capıtulo IX

RESULTADOS DEL MODELO Y

CONCLUSIONES

El presente capıtulo presenta los resultados de los experimentos realizados com-

putacionalmente.

En la seccion 9.1 se comparan los resultados obtenidos por Bishak [4] con los re-

sultados de BucketBrigades.java. En la seccion 9.2 se presentan algunas caracerısti-

cas generales sistema Bucket Brigades, mientras que en la seccion 9.3 se muestran

resultados adicionales referentes al cambio de diferentes parametros del modelo. Por

ultimo, la seccion 9.4 presenta un resumen de resultados y conclusiones.

9.1. Comparacion de Resultados con Modelo de

Bishak

Los resultados obtenidos por Bishak al simular una lınea de produccion con tiem-

pos de proceso distribuidos exponencialmente coinciden con los resultados arrojados

por la implementacion en java de Bucket Brigades, que a su vez cumplen las formulas

de Colas Circulares (ver seccion 5.6.6).

Los resultados de Bishak de la simulacion de una lınea con tiempos de proceso

distribuidos uniformemente muestran mayor tasa de produccion que para el caso

exponencial. Este resultado es razonable, dado una menor variabilidad de los tiempos

de proceso implica una menor proporcion del tiempo en que los operarios permanecen

bloqueados.

En la Tabla 1 se presenta la tasa de produccion de una lınea de produccion tipo

35

Page 39: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Numero de operarios por lınea de produccion (J)J=M J=M-1 J=M-2 J=M-3

J Exp. Unif. Exp. Unif. Exp. Unif. Exp. Unif.3 0.060 0.092 0.050 0.0664 0.057 0.091 0.050 0.074 0.040 0.0505 0.056 0.091 0.050 0.078 0.043 0.059 0.033 0.0406 0.055 0.090 0.050 0.081 0.044 0.066 0.038 0.0507 0.054 0.090 0.050 0.083 0.045 0.070 0.040 0.056

Tabla 1: Tasa de produccion de lınea tipo Bucket Brigades para distintas combi-naciones de maquinas y operarios por lınea, y tiempos de proceso con distribucionexponencial(0.1) y uniforme (8.27,11.73)

[1 0,5 1,5

2,5 3,1 1,3

]

Tabla 2: Ejemplo 1. Matriz µjm de velocidades de proceso.

Bucket Brigades con M maquinas y J operarios, en el cual los tiempos de proceso

siguen una distribucion uniforme (8.27,11.73) y una distribucion exponencial (0.1).

En los dos casos, la media de los tiempos de proceso es 0.1.

9.2. Caracterısticas Generales de Bucket Briga-

des como una CMTC

Se utilizan ejemplos para explicar mas facilmente algunas caracterısticas basicas

del sistema de produccion Bucket Brigades bajo el conjunto de supuestos resumidos

en el capıtulo 6.

El primer ejemplo consiste en una lınea de produccion con 4 maquinas y 2 ope-

rarios identicos, que tienen velocidades de proceso como se indica en la Tabla 2

9.2.1. Estados y Probabilidades del Sistema en el Largo Plazo

Cada estado tiene una probabilidad mayor que cero de ocurrir en el estado es-

table. Se puede decir, entonces, que todos los estados del sistema Bucket Brigades

36

Page 40: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Estado Probabilidad Operarios Maquinas

Largo P. Activos(j) Activas(m)

00/01/1000 : 0.03 2 101/11/1100 : 0.05 1,2 1,202/11/1010 : 0.19 1,2 1,303/11/1001 : 0.06 1,2 1,411/01/0100 : 0.02 2 212/11/0110 : 0.22 1,2 2,313/11/0101 : 0.11 1,2 2,422/01/0010 : 0.18 2 323/11/0011 : 0.10 1,2 3,433/01/0001 : 0.02 2 4

Suma 1.00

Tabla 3: Ejemplo 1. Probabilidades del estado estable

Nombre de Evento Tasa OcurrenciaEnd of process on machine 0 0.38873End of process on machine 1 0.38873End of process on machine 2 0.38873Reset 0.38873

Tabla 4: Ejemplo 1. Tasa de ocurrencia de eventos del sistema

constituyen una sola clase comunicante cerrada. Los estados del Ejemplo 1 y sus

respectivas probabilidades en el estado estable se muestran en la Tabla 3

9.2.2. Eventos: Tasa de Produccion

Los eventos, es decir, la finalizacion de los procesos en cada maquina de la lınea

de produccion, ocurren siempre a la misma tasa. Este es un resultado logico, ya que

esto garantiza que la cantidad de producto en proceso sea constante.

Si una maquina terminara su proceso en promedio mas rapido o mas lento que

las demas, implicarıa un desbalanceo del sistema.

La Tabla 4 resume la tasa de ocurrencia de eventos para el Ejemplo 1.

37

Page 41: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Nombre de Medida de Desempeno Valor Medio Desv.Est.Machine 1used by worker 1 0.340 0.474Machine 2 used by worker 1 0.348 0.476Machine 3 used by worker 1 0.288 0.453Machine 4 used by worker 1 0.024 0.153Machine 1 used by worker 2 0.033 0.178Machine 2 used by worker 2 0.072 0.259Machine 3 used by worker 2 0.596 0.491Machine 4 used by worker 2 0.299 0.458Status Worker 1 0.741 0.438Status Worker 2 1.000 0.000Status Machine 1 0.340 0.474Status Machine 2 0.403 0.490Status Machine 3 0.700 0.458Status Machine 4 0.299 0.458Number of active workers in the system 1.741 0.438

Tabla 5: Ejemplo 1. Medidas de desempeno calculadas por BucketBrigades.java

9.2.3. Medidas de Desempeno

En la Tabla 5 se presentan los resultados de medidas de desempeno arrojados

por el programa BucketBrigades.java para el mismo Ejemplo 1.

Porcentaje de Tiempo que los Operarios Permanecen en las Maquinas

Dado que los operarios tienen un orden fijo dentro de la lınea de produccion,

el porcentaje del tiempo que cada operario trabaja en cada maquina es diferente.

La figura 1 muestra esta tendencia. Notese como el operario 1 tiende a pasar una

mayor parte de su tiempo en las maquinas 1 y 2, mientras que el operario 2 en las

maquinas 3 y 4.

Ocupacion de los Operarios

En una lınea de produccion tipo Bucket Brigades el ultimo operario siempre

estaactivo. Los operarios precedentes tienden a estar activos una proporcion inferior

de tiempo. Esto es una consecuencia directa de los bloqueos que ocurren dentro del

sistema, cuando un operario espera a que el siguiente operario desocupe la maquina

38

Page 42: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

P o rc e n ta j e d e t i e m po qu e l o s o p e ra r i o s

p e rm a n e ce n e n ca d a m á qu i n a

0% 20% 40% 60%

1

2

3

4

qu

ina

P o rc e n ta j e

Operario 1 Operario 2

Figura 1: Ejemplo 1. Porcentaje de tiempo que cada operario permanece en cadamaquina.

39

Page 43: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

1,0 1,0 1,0 1,0 1,0 1,0 1,0 1,01,0 1,0 1,0 1,0 1,0 1,0 1,0 1,01,0 1,0 1,0 1,0 1,0 1,0 1,0 1,01,0 1,0 1,0 1,0 1,0 1,0 1,0 1,0

Tabla 6: Ejemplo 2. Matriz µjm de velocidades de proceso.

Ocupacion Promedio de los Operarios (%)Occ. Worker 1 0.6364Occ. Worker 2 0.6364Occ. Worker 3 0.6364Occ. Worker 4 1.0000

Tabla 7: Ejemplo 2. Ocupacion promedio de los operarios

en la cual esta trabajando.

Este comportamiento se puede observar en la Tabla 5. El operario 2 esta activo

el 100 % de su tiempo, con una desviacion estandar igual a cero, mientras que el

operario 1 esta activo un 74.1% de su tiempo.

Para observar otra caracterıstica de la ocupacion de los operarios, se han disenado

los Ejemplos 2 y 3, consistentes en una lınea de produccion con 8 maquinas y 4

operarios. La matriz de velocidades de proceso µjm para el Ejemplo 2 se muestra en

la Tabla 6

En el Ejemplo 2 se observa un patron de ocupacion de los operarios como en la

Tabla 7.

La ocupacion promedio de los trabajadores 1,2, y 3 del Ejemplo 2 es identica,

dado que todos tienen la misma velocidad de produccion en todas las maquinas,

y por consiguiente, permanecen bloqueados o en espera por fracciones de tiempo

equivalentes.

Si se supone que los operarios no son homogeneos, es decir, que tienen velocidades

distintas en las maquinas, los operarios tienden a estar activos en una proporcion

decreciente de su tiempo.

Para mostrar este comportamiento, se diseno el Ejemplo 3, de una lınea de pro-

duccion con 8 maquinas y 4 operarios, cuya matriz de velocidades µjm se presenta

40

Page 44: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

1,0 1,0 1,0 1,0 1,0 1,0 1,0 1,01,5 1,5 1,5 1,5 1,5 1,5 1,5 1,52,0 2,0 2,0 2,0 2,0 2,0 2,0 2,02,5 2,5 2,5 2,5 2,5 2,5 2,5 2,5

Tabla 8: Ejemplo 3. Matriz µjm de velocidades de proceso.

Ocupacion Promedio de los Operarios (%)Occ. Worker 1 0.6364Occ. Worker 2 0.7331Occ. Worker 3 0.7547Occ. Worker 4 1.0000

Tabla 9: Ejemplo 3. Ocupacion promedio de los operarios

en la Tabla 8:

La ocupacion promedio de los operarios del Ejemplo 3, presentada en la Tabla 9

muestra una tasa de ocupacion distinta (decreciente)para todos los operarios.

Ocupacion de las Maquinas

La proporcion de tiempo que cada maquina permanece ocupada depende del

tiempo promedio que dura el proceso en la misma.

Volvamos al Ejemplo 2, cuya matriz µjm de velocidades de proceso se muestra en

la Tabla 6. En este ejemplo los tiempos promedio de proceso en todas las maquinas

es igual. Por esta razon, las maquinas permanecen ocupadas, en promedio, la misma

fraccion de tiempo, como lo muestra la Tabla 10.

Para una lınea de produccion, en la cual los tiempos de proceso en las maquinas

son diferentes, se observa un comportamiento distinto. Este se muestra mediante el

Ejemplo 4, que tiene una matriz de velocidades de proceso µjm como se muestra en

la Tabla 11.

Para la lınea de produccion del Ejemplo 4 se observa una ocupacion promedio

de las maquinas como se muestra en la Tabla 12.

Las maquinas que requieren de mayor tiempo de proceso, o lo que es equivalente,

tienen una menor velocidad promedio de proceso, permanecen ocupadas por una

proporcion mayor de tiempo.

41

Page 45: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Ocupacion Promedio de las Maquinas (%)Occ. Machine1 0.3636Occ. Machine2 0.3636Occ. Machine3 0.3636Occ. Machine4 0.3636Occ. Machine5 0.3636Occ. Machine6 0.3636Occ. Machine7 0.3636Occ. Machine8 0.3636

Tabla 10: Ejemplo 2. Ocupacion promedio de las Maquinas

1,0 2,0 3,0 4,0 4,0 3,0 2,0 1,01,0 2,0 3,0 4,0 4,0 3,0 2,0 1,01,0 2,0 3,0 4,0 4,0 3,0 2,0 1,01,0 2,0 3,0 4,0 4,0 3,0 2,0 1,0

Tabla 11: Ejemplo 4. Matriz µjm de velocidades de proceso.

Ocupacion Promedio de las Maquinas (%)Occ. Machine1 0.63123Occ. Machine2 0.31562Occ. Machine3 0.21041Occ. Machine4 0.15781Occ. Machine5 0.15781Occ. Machine6 0.21041Occ. Machine7 0.31562Occ. Machine8 0.63123

Tabla 12: Ejemplo 4. Ocupacion promedio de las Maquinas

42

Page 46: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

MaquinaOcupacionPromedio

VelocidadPromedio

OcupacionPromedio*Velocidad

1 0.631 1.0 0.6312 0.316 2.0 0.6313 0.210 3.0 0.6314 0.158 4.0 0.6315 0.158 4.0 0.6316 0.210 3.0 0.6317 0.316 2.0 0.6318 0.631 1.0 0.631

Tabla 13: Ejemplo 4. El producto de ocupacion promedio y la velocidad de procesopromedio para cada maquina es constante, e igual a la tasa de produccion del sistema

Por otro lado, la tasa de ocupacion promedio de cada maquina multiplicada

por la velocidad promedio de proceso en la misma, da como resultado la tasa de

produccion de la lınea, tal como se muestra en la Tabla 13.

9.3. Respuesta del Modelo a Cambios en sus Parame-

tros

9.3.1. Numero de Trabajadores por Lınea de Produccion

La contribucion marginal del numero de trabajadores por lınea de produccion es

decreciente. Para mostrar esta caracterıstica, se diseno el Ejemplo 5.

En el Ejemplo 5 se tiene una lınea de produccion tipo Bucket Brigades con

4 maquinas. Se tienen varios operarios, todos con velocidad de proceso en cada

maquina igual a 1.0. Se registra el cambio en la tasa de produccion del sistema vs.

el numero de operarios que trabajan en la lınea de produccion. Los resultados se

muestran en la figura 2.

Se puede apreciar que la contribucion de nuevos operarios a la lınea de produccion

es marginalmente decreciente.

43

Page 47: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

0.25

0.3

0.35

0.4

0.45

0.5

0.55

0.6

0.65

0.7

0.75

1 2 3 4 5 6 7 8 9

Tas

a de

Pro

ducc

ion

Numero de Trabajadores en Linea de Produccion

Figura 2: Ejemplo 5. La tasa de produccion de la lınea tiene crecimientos marginal-mente decrecientes causados por la adicion de operarios.

9.3.2. Numero de Lıneas de Produccion

Aunque pueda parecer obvio, es importante mencionar que la tasa de produccion

de un conjunto de lıneas de produccion Bucket Brigades crece linealmente con el

numero de lıneas de produccion identicas, como se muestra en la figura 3.

Si se tienen varios operarios y varias lıneas de produccion, la tasa de produc-

cion conjunta puede variar considerablemente de acuerdo al numero de lıneas de

produccion utilizadas y la cantidad de operarios en cada una de ellas.

La Tabla 14 muestra los resultados de utilizar 1,2 o 4 lıneas de produccion iguales

a las del Ejemplo 5 en un sistema con 8 operarios.

9.3.3. Numero de Maquinas por Lınea de Produccion

Un aumento de maquinas en una lınea de produccion Bucket Brigades incrementa

necesariamente el tiempo esperado de proceso T , disminuyendo la tasa de produccion

de la lınea.

La cantidad de unidades L en el sistema Bucket Brigades es constante, e igual al

44

Page 48: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

0

0.5

1

1.5

2

2.5

1 2 3 4 5 6 7 8 9 10

Tas

a de

Pro

ducc

ion

Numero de Lineas de Produccion

Figura 3: Ejemplo 5. La tasa de produccion de un sistema Bucket Brigades crecelinealmente con el numero de lıneas de produccion identicas en operacion

Numero deLıneas deProduc-cion

Numero deOperariospor Linea deProduccion

Tasa de Pro-duccion porLınea

Tasa de Pro-duccion Total

1 8 0.73 0.732 4 0.57 1.144 2 0.40 1.60

Tabla 14: La tasa de produccion de 8 operarios cambia significativamente con ennumero de lıneas de produccion en las cuales se reparten los operarios

45

Page 49: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

0.15

0.2

0.25

0.3

0.35

0.4

0.45

0.5

0.55

0.6

0.65

0.7

2 3 4 5 6 7 8 9 10

Tas

a de

Pro

ducc

ion

Numero de Maquinas por Linea de Produccion

Figura 4: La tasa de produccion de una lınea de produccion tipo Bucket Brigadesdecrece con un aumento del numero de maquinas en la lınea

numero de operarios mas las unidades en bufer, por ser este un sistema estilo “pull”.

Recordemos la Ley de Little:

TasaProd = L/T

Segun la ley de Little, la tasa de produccion del sistema disminuye con un aumen-

to en T , si L permanece constante.

En la figura 4, se puede observar esta tendencia. Se modela una lınea de pro-

duccion tipo Bucket Brigades con 2 operarios, que tienen una velocidad de proceso

igual a 1 en todas las maquinas.

9.3.4. Velocidad de Proceso de los Trabajadores en las Maquinas

Cambios en la velocidad de proceso de los trabajadores en las diferentes maquinas

de una lınea de produccion tienen efectos directos sobre la tasa de produccion del

sistema y la ocupacion promedio de los demas trabajadores.

Los cambios de velocidad en todas las maquinas para el ultimo operario de la

lınea de produccion tienen efectos marginales constantes sobre la tasa de produccion

46

Page 50: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

[1,0 1,0 1,0 1,01.0 1.0 1.0 1.0

]

Tabla 15: Ejemplo 6. Matriz µjm de velocidades de proceso.

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

2

2.2

1 2 3 4 5 6 7 8

Tas

a de

Pro

ducc

ion

Velocidad de Operario No. 2 en todas las Maquinas

Figura 5: Ejemplo 6. La tasa de produccion de una lınea de produccion tipo BucketBrigades crece linealmente con un aumento de velocidad del ultimo operario en todaslas maquinas

de la lınea, modificando la ocupacion promedio de los otros operarios.

Esta caracterıstica se ilustra por medio del Ejemplo 6. En este ejemplo, se tiene

una lınea de produccion con 4 maquinas y una matriz µjm de velocidades de proceso

como se muestra en la Tabla 15.

Se procede a incrementar la velocidad del operario 2 (resaltado en negrilla en la

Tabla 15), obteniendo resultados resumidos en la figura 5

Al mismo tiempo, la ocupacion promedio de los operarios anteriores tiende a

aumentar con un aumento de la velocidad de proceso del ultimo operario en todas

las maquinas, como se muestra en la figura 6.

47

Page 51: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

0.58

0.6

0.62

0.64

0.66

0.68

0.7

0.72

0.74

0.76

0.78

1 2 3 4 5 6 7 8

Ocu

paci

on P

rom

edio

del

Ope

rari

o N

o. 1

Velocidad de Proceso del Operario No. 2 en todas las Maquinas

Figura 6: Ejemplo 6. La ocupacion del primer operario aumenta con aumentos develocidad del ultimo operario en todas las maquinas

[1,0 1,0 1,0 1,01,0 1,0 1,0 1.0

]

Tabla 16: Ejemplo 6. Matriz µjm de velocidades de proceso. Se incrementa velocidaddel operario 2 en la maquina 4.

Por el contrario, los cambios de velocidad de un operario especıfico en una maqui-

na especıfica muestran contribuciones marginales decrecientes en la tasa de produc-

cion al mismo tiempo que reducen la ocupacion promedio de los otros operarios.

Esta caracterıstica se puede observar en el Ejemplo 6. Supongamos, que en vez

de incrementar la velocidad de proceso del ultimo operario en todas las maquinas,

solamente se incrementa su velocidad de proceso para la maquina 4. En la Tabla 16

se encuentra resaltada en negrilla la velocidad de proceso que se incrementa.

Los efectos de incrementar la velocidad de proceso del operario 2 en la maquina

4 se presentan en las figuras 7 y 8.

En la figura 7 se aprecia como el aumento de velocidad de proceso del operario

2 en la maquina 4 tiene efectos marginales decrecientes sobre la tasa de produccion.

48

Page 52: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

0.4

0.41

0.42

0.43

0.44

0.45

0.46

0.47

0.48

0.49

1 2 3 4 5 6 7 8

Tas

a de

Pro

ducc

ion

Velocidad del Operario No. 2 en la Maquina No. 4

Figura 7: Ejemplo 6. La tasa de produccion de la lınea tiene aumentos marginalesdecrecientes producidos por incrementos en la velocidad de proceso del operario 2en la maquina 4.

Al mismo tiempo, el aumento de velocidad de proceso del operario 2 en la maqui-

na 4 reduce la ocupacion promedio del primer operario, como se muestra en la figura

8.

Este fenomeno tiene sentido si se piensa que el operario 2 permanece en promedio

una mayor fraccion de su tiempo en las maquinas 1, 2 y 3 segun su velocidad en la

maquina 4 aumenta, bloqueando al operario 1 mas frecuentemente.

9.3.5. Uniformidad de los Operarios

Para una lınea de produccion, no es lo mismo tener trabajadores con velocidades

de proceso iguales a V , que tener trabajadores con velocidades de proceso que en

promedio son iguales a V .

Este resultado se muestra mediante el Ejemplo 7, en el cual se modela una lınea

de produccion con 4 maquinas y tres trabajadores.

En el primer caso (Ejemplo 7a), todos los trabajadores tienen una velocidad de

proceso igual a 1.0 para todas las maquinas, como se muestra en la Tabla 17. En el

49

Page 53: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

0.52

0.53

0.54

0.55

0.56

0.57

0.58

0.59

0.6

1 2 3 4 5 6 7 8

Ocu

paci

on P

rom

edio

del

Ope

rari

o N

o. 1

Velocidad de Proceso del Operario No.2 en la Maquina No. 4

Figura 8: Ejemplo 6. La tasa de ocupacion promedio del operario 1 se reduce debidoa incrementos en la velocidad de proceso del operario 2 en la maquina 4.

1,0 1,0 1,0 1,01,0 1,0 1,0 1,01,0 1,0 1,0 1,0

Tabla 17: Ejemplo 7a. Matriz µjm de velocidades de proceso.

segundo y en el tercer caso (Ejemplos 7b y 7c), los trabajadores tienen velocidades

de proceso que en promedio son iguales al Ejemplo 7a, como se muestra en las Tablas

18 y 19.

Los resultados del modelo indican que las tasas de produccion para cada caso

(Ejemplos 7a, 7b y 7c) son distintas, como lo indica la Tabla 20

La explicacion de esta caracterıstica, es que cada trabajador tiende a estar mas

ocupado que el anterior. Si los trabajadores que estan ocupados una mayor parte

del tiempo operan con una velocidad mayor, esto aumenta necesariamente la tasa

de produccion.

50

Page 54: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

0,5 0,5 0,5 0,51,0 1,0 1,0 1,01,5 1,5 1,5 1,5

Tabla 18: Ejemplo 7b. Matriz µjm de velocidades de proceso.

0,2 0,2 0,2 0,21,0 1,0 1,0 1,01,8 1,8 1,8 1,8

Tabla 19: Ejemplo 7c. Matriz µjm de velocidades de proceso.

9.3.6. Orden de los Trabajadores con Distintas Velocidades de Procesoen la Lınea de Produccion

Se ha visto que en una lınea de produccion cada trabajador tiende a estar mas

ocupado que el anterior. Suponiendo que cada trabajador tiene un conjunto diferente

de velocidades de proceso en las maquinas de la lınea de produccion, el orden en que

se encuentren los operarios modifica la tasa de produccion del sistema.

Esta caracterıstica se muestra mediante el Ejemplo 8, en donde se modela una

lınea de produccion con 4 maquinas y 4 operarios. La matriz µjm de velocidades de

proceso de cada operario del Ejemplo 8 se presenta en la Tabla 21. En este ejemplo

cada operario es especialmente rapido en una maquina distinta.

Para cada forma de ordenar los operarios en la lınea de produccion del Ejemplo

8 se obtiene una tasa de produccion distinta, como se observa en la Tabla 22. Este

comportamiento se debe a que cada operario distribuye su tiempo en las maquinas

de forma diferente y a que cada operario tiene un conjunto distinto de velocidades

Ejemplo Numero Tasa de Produccion7a 0.507b 0.607c 0.65

Tabla 20: La tasa de produccion de la lınea es diferente para los Ejemplos 7a, 7b y7c

51

Page 55: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

1,0 1,0 1,0 2,01,0 1,0 2,0 1,01,0 2,0 1,0 1,02,0 1,0 1,0 1,0

Tabla 21: Ejemplo 8. Matriz µjm de velocidades de proceso.

Orden de losOperarios

Tasa de ProduccionNumero Promedio deOperarios Activos

{2, 4, 3, 1} 0.721 2.261{4, 3, 2, 1} 0.719 2.098{2, 3, 1, 4} 0.600 2.250{3, 2, 1, 4} 0.592 2.215

Tabla 22: El orden de los operarios heterogeneos en una lınea de produccion alterala tasa de produccion de la lınea. Una mayor ocupacion promedio de los empleadosno implica necesariamente una mayor tasa de produccion para la lınea.

de proceso. La configuracion optima de operarios en la lınea se da cuando cada

operario se ubica primordialmente en aquellas maquinas en donde es relativamente

mas rapido que los demas operarios.

De este ejemplo se puede obtener una conclusion adicional: una mayor ocupacion

promedio de los empleados no implica necesariamente una mayor tasa de produccion

para la lınea. En la Tabla 22 se puede observar esto para las filas 2 y 3 (celdas

resaltadas en negrilla).

Si bien en la configuracion de operarios de la fila 2 de la Tabla 22 (4, 3, 2,

1) los operarios permanecen ocupados por una menor fraccion de su tiempo, estos

tienden a estar ocupados en maquinas en las cuales son relativamente mas rapidos

que los demas. En la configuracion de operarios (2,3,1,4), los operarios pueden estar

ocupados una mayor fraccion de su tiempo, pero esto no compensa por el hecho de

que estos tienden a ubicarse en maquinas en las cuales no son relativamente tan

rapidos como en la configuracion (4, 3, 2, 1).

Por medio del programa combinatoria.java, se puede determinar para cualquier

caso el orden optimo de los operarios en una lınea de produccion.

52

Page 56: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

[1,0 1,0 1,0 1,01,0 1,0 1,0 1,0

]

Tabla 23: Ejemplo 9. Matriz µjm de velocidades de proceso.

9.3.7. Cantidad de Espacios de Bufer en la Lınea de Produccion

La cantidad de espacios de bufer surte un efecto sobre la tasa de produccion de

una lınea tipo Bucket Brigades.

Esta caracterıstica se muestra mediante el Ejemplo 9, en el cual se modela una

lınea de produccion con 6 maquinas y 4 operarios. La matriz µjm de velocidades de

proceso para el Ejemplo 9 se muestra en la Tabla 23.

En la lınea de produccion del Ejemplo 9 se activan espacios de bufer al pie de

maquinas 2, 3 y 4 del sistema de produccion. El desempeno de la lınea cuando hay

0,1,..., 8 espacios disponibles de bufer para las maquinas 2, 3 y 4 se presenta en las

figuras 9, 10 y 11.

En la figura 9 se puede observar como el aumento de la tasa de produccion

causado por un aumento de espacios de bufer en las maquinas es marginalmente

decreciente.

La explicacion de este comportamiento, es que un mayor numero de espacios

disponibles de bufer aumenta la ocupacion promedio de los operarios del sistema, en

cuanto permite a los trabajadores deshacerse de la unidad de producto en proceso

que tienen en sus manos cuando estos se encuentran inactivos. Este efecto es a su vez

marginalmente decreciente porque Bucket Brigades es un sistema de tipo “pull”, en

donde la entrada de unidades al sistema esta condicionada por la salida de unidades

de producto terminado, manejandose bajos niveles de producto en proceso. Por

consiguiente, la capacidad en buferes tiende a no ser utilizada en su totalidad y

aumentos en capacidad en buferes traen beneficios marginalmente decrecientes al

sistema.

En la figura 10 se muestra como efectivamente la ocupacion del primer operario

aumenta con los espacios de bufer en la lınea, aunque tambien marginalmente. Es

importante recordar que el operario 2 se mantiene siempre ocupado.

53

Page 57: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

0.4

0.41

0.42

0.43

0.44

0.45

0.46

0.47

0.48

0 1 2 3 4 5 6 7 8

Tas

a de

Pro

ducc

ion

Numero de Espacios de Bufer disponibles en Maquinas 2,3 y 4

Figura 9: Ejemplo 9. La tasa de produccion de la lınea de produccion aumentacon las unidades de bufer disponibles en la lınea. Este aumento es, sin embargo,marginalmente decreciente.

0.55

0.6

0.65

0.7

0.75

0.8

0.85

0.9

0 1 2 3 4 5 6 7 8

Ocu

paci

on P

rom

edio

del

Ope

rari

o N

o.1

Numero de Espacios de Bufer disponibles en las Maquinas 2,3 y 4

Figura 10: Ejemplo 9. La ocupacion del operario 1 aumenta con las unidades de buferdisponibles en la lınea de produccion. Este aumento es, sin embargo, marginalmentedecreciente.

54

Page 58: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

4.8

5

5.2

5.4

5.6

5.8

6

6.2

6.4

6.6

6.8

0 1 2 3 4 5 6 7 8

Tie

mpo

Pro

med

io d

e Pr

oces

o

Numero de Espacios de Bufer disponibles en las Maquinas 2,3 y 4

Figura 11: Ejemplo 9. El tiempo promedio de ciclo aumenta con las unidades debufer disponibles en la lınea de produccion. Este aumento es, sin embargo, margi-nalmente decreciente.

Otro efecto de un aumento en las unidades de bufer del sistema es el aumento

del tiempo promedio de ciclo para la lınea de produccion. Este aumento tambien es

marginalmente decreciente, como se muestra en la figura 11.

El incremento en el tiempo de ciclo depende, segun la ley de Little, del incremento

en la tasa de produccion y de la variacion de la cantidad promedio de unidades en

el sistema.

9.3.8. Posicion de Espacios de Bufer en Lınea de Produccion

La posicion de los espacios de bufer en una lınea de produccion afecta la tasa de

produccion del sistema, aunque muy marginalmente.

Volvamos al Ejemplo 9, con matriz de velocidades de proceso µjm como se mues-

tra en la Tabla 23. En la lınea de produccion se activa un espacio de bufer solamente

en la sengunda maquina, luego solo en la tercera y despues solo en la cuarta. Los

resultados se muestran en la Tabla 24.

La tasa de produccion varıa porque el espacio de bufer modifica de forma distinta

55

Page 59: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Bufer enMaquinaNumero

Tasa de Pro-duccion

Ocupaciondel OperarioNumero 1(%)

Numero pro-medio deUnidades enBufer

Tiempo pro-medio de Ci-clo

2 0.420 0.680 0.838 6.763 0.430 0.720 0.403 5.594 0.432 0.726 0.158 5.00

Tabla 24: Ejemplo 9. No es lo mismo activar 8 espacios de bufer en frente de lasmaquinas 2, 3 o 4

la ocupacion de los operarios en cada caso.

9.4. Resumen de Resultados y Conclusiones -

Reglas de uso general

Esta seccion tiene como objetivo resumir los hallazgos descritos en las secciones

9.2 y 9.3 del presente capıtulo. Estos son reformulados en forma de reglas de uso

general que posteriormente se utilizan como base para proponer un heurıstico que

permita encontrar una configuracion razonable para cualquier sistema tipo Bucket

Brigades, dados los supuestos del presente modelaje.

Resultados - Reglas de uso general

Si los operarios pueden ser ordenados consistentemente de acuerdo a su veloci-

dad, estos deben seguir un orden descendiente con respecto a este parametroEl

operario mas veloz deberıa siempre ocupar el ultimo lugar en la lınea de pro-

duccion.

Si los operarios no son consistentemente mas rapidos o mas lentos, es ne-

cesario encontrar el orden optimo de los operarios por medio del programa

OptWorkerAlign.java. Suponiendo que cada trabajador tiene un conjunto di-

ferente de velocidades de proceso en las maquinas de la lınea de produccion,

el orden en que se encuentren los operarios modificara la tasa de produccion

del sistema. La tasa de produccion crece en cuanto los operarios permanecen

56

Page 60: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

mayor tiempo trabajando en aquellas maquinas en las que son relativamen-

te mas rapidos que los demas. El orden optimo de los opearios no maximiza

necesariamente la tasa de ocupacion de estos, ya que la maxima ocupacion

promedio no necesariamente una mayor tasa de produccion para la lınea.

La contribucion marginal del numero de trabajadores por lınea de produccion

sobre la tasa de produccion es decreciente. Por consiguiente, es importante

comparar la adicion de trabajadores a una lınea de produccion con la operacion

de lıneas de produccion adicionales en terminos de tasa de produccion y costos.

Si se va a dar capacitacion a un empleado para que aumente la productivi-

dad de la lınea de produccion, se deberıa incrementar su velocidad de proce-

so idealmente en todas las maquinas. Los cambios de velocidad en todas las

maquinas para el ultimo operario de una lınea de produccion tienen efectos

marginales constantes sobre la tasa de produccion de la lınea, y a la vez incre-

mentan la ocupacion promedio de los otros operarios de la lınea. Por contrario,

los cambios de velocidad de un operario especıfico en una maquina especıfica

muestran contribuciones marginales decrecientes en la tasa de produccion al

mismo tiempo que pueden reducir la ocupacion promedio de los operarios que

se encuentran antes de este en la lınea de produccion.

En una lınea de produccion es preferible tener operarios muy rapidos y muy

lentos que tener operarios homogeneos promedio. La tasa de produccion de

una lınea con operarios heterogeneos con velocidades de proceso que en pro-

medio son iguales a V , es mayor que la de otra lınea con operarios que tienen

velocidades de proceso iguales a V .

Es necesario evaluar la conveniencia de buferes en la lınea de produccion. Un

aumento en espacios de bufer disponibles en una lınea de produccion aporta

contribuciones marginales decrecientes a la productividad del sistema, dado

que incrementa la ocupacion promedio de los operarios del sistema. Al mismo

tiempo, mas unidades de bufer aumentan el tiempo promedio de ciclo y la

cantidad de trabajo en proceso.

57

Page 61: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Si se van a utilizar espacios de bufer, es conveniente analizar su ubicacion

dentro de la lınea de produccion. La posicion de los espacios de bufer en una

lınea de produccion tiene un efecto pequeno sobre la tasa de produccion del

sistema, debido a que los espacios de bufer en cada maquina tienen efectos

diferentes sobre la tasa de ocupacion de los operarios.

9.5. Sugerencias para Investigaciones Posterio-

res

Implementar distribuciones de fase para modelar el sistema Bucket Brigades

bajo el supuesto de que los tiempos de proceso en la lınea de produccion siguen

una funcion de densidad de probabilidad distinta a la exponencial. Esta nueva

distribucion puede ser menos variable (como en el caso de una distribucion

Erlang)o mas variable (como en el caso de una distribucion hiperexponencial).

Estas modificaciones al modelo crearıan, sin embargo, una gran cantidad adi-

cional de estados posibles en el sistema.

Crear un algoritmo que permita reducir el esfuerzo computacional que implica

encontrar el orden optimo de los operarios en una lınea de produccion. En

el presente proyecto de grado se evaluo la tasa de produccion para cada con-

figuracion posible de operarios en el sistema. Por consiguiente, el tiempo de

computacion del orden optimo crece de manera exponencial con el numero de

operarios en el sistema.

58

Page 62: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Capıtulo X

HEURISTICO PARA CONFIGURAR LINEAS

DE PRODUCCION TIPO BUCKET BRIGADES

El modelaje y la experimentacion con una lınea de produccion tipo Bucket Briga-

des tienen el objetivo ultimo de poder tener una aplicacion practica. En la presente

seccion se propone un heurıstico para configurar lıneas de produccion tipo Bucket

Brigades, y se ilustra por medio de un ejemplo.

10.1. Heurıstico

El heurıstico propuesto se presenta en el algoritmo 6. Este heurıstico no nece-

sariamente encuentra un optimo global para el problema de configuracion de una

lınea de produccion, pero valiendose de las herramientas desarrolladas en el presente

proyecto de grado, puede producir soluciones eficaces.

En el desarrollo del heurıstico para casos practicos requiere de cierto grado de

subjetividad. Decisiones como la conveniencia de utilizar buferes o la conformacion

de equipos de trabajo, entre otras, pueden ser influenciadas por factores subjetivos.

10.2. Ejemplo de Aplicacion del Heurıstico

Parametros

Una fabrica de camisas, que utiliza el sistema de produccion Bucket Brigades,

requiere ajustar la tasa de produccion como respuesta a un inesperado incremento

en la demanda por sus productos.

Los parametros del problema se presentan en la Tabla 10.2.

59

Page 63: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Algoritmo 6 Configuracion de Sistema de Produccion tipo Bucket Brigades

Require: Lıneas de produccion tipo Bucket Brigades identicas entre sı.Require: Medir o estimar la velocidad de proceso de cada trabajador en cada

maquina de la lınea de produccion.Require: Paquete BucketBrigades.java para modelar sistemas de produccion tipo

Bucket Brigades.1: Encontrar la velocidad de proceso promedio de todos los operarios para cada

maquina de la lınea de produccion. Crear un “operarios promedio” con veloci-dades de proceso iguales a los promedios encontrados.

2: Computar tasas de produccion de una lınea con diferentes cantidades de “ope-rarios promedio”. Para cada caso, estimar el numero de lıneas de produccionidenticas necesarias para cumplir con la tasa de produccion objetivo.

3: Encontrar la combinacion de numero de lıneas de produccion y el numero de“operarios promedio” mas favorable en terminos de costos.

4: De acuerdo con el resultado anterior, distribuir los operarios reales de la empresaen las diferentes lıneas de produccion de forma tal que los operaarios de cadalınea tengan un conjunto similar de habilidades.

5: Computar el orden optimo de operarios para cada lınea de produccion y sutasa de produccion respectiva. Calcular la tasa de produccion de las lıneas delsistema.

6: while Tasa de produccion < valor objetivo do7: for Fine-tuning. Para cada lınea de produccion do8: Ajustar numero de operarios.9: Ajustar numero de espacios de bufer disponibles.

10: Computar orden optimo de operarios en la lınea y su respectiva tasa deproduccion.

11: end for12: Calcular la suma de tasas de produccion de las lıneas individuales13: end while

60

Page 64: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Parametros del EjemploTasa de produccion requerida (unidades/u.tiempo) 4Lıneas de produccion disponibles 10Numero de maquinas por lınea de produccion 4Capacidad maxima de buferes por maquina 1Numero de operarios disponibles 20Opcion de contratar operarios adicionales SıSalario de trabajadores ($/u.tiempo) 50Costo variable de lınea produccion ($/u.tiempo) 125

Tabla 25: Costos variables para el ejemplo

Desarrollo del Heurıstico

Medir o estimar la velocidad de proceso de cada trabajador en cada maquina

de la lınea de produccion

Se midieron las velocidades promedio de cada empleado en cada maquina, que

se presentan en la Tabla 10.2.

1. Encontrar la velocidad de proceso promedio de todos los operarios para cada

maquina de la lınea de produccion. Crear un “operarios promedio” con veloci-

dades de proceso iguales a los promedios encontrados.

El “operario promedio” tiene velocidades de proceso en cada maquina iguales

a las velocidades promedio de todos los operarios, que se muestran en la ultima

fila de la Tabla 10.2.

2. Computar tasas de produccion de una lınea con diferentes cantidades de “ope-

rarios promedio”. Para cada caso, estimar el numero de lıneas de produccion

identicas necesarias para cumplir con la tasa de produccion objetivo.

La Tabla 2 nuestra la relacion existente entre el numero de operarios por lınea

y el numero redondeado de lıneas de produccion requeridas para cumplir con

la tasa de produccion objetivo.

61

Page 65: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Matriz µjm

mj 1 2 3 4 5 61 0.9 2.3 2.2 2.6 3.3 3.42 0.6 2.0 1.9 3.3 2.8 3.53 1.1 1.8 1.9 3.0 3.1 2.64 1.4 1.7 1.8 2.8 2.9 2.85 1.4 1.8 1.9 3.3 3.2 3.26 1.5 2.1 1.5 2.8 2.6 2.97 0.5 2.0 1.9 2.8 3.2 3.18 0.9 1.8 1.6 2.9 2.7 3.39 1.4 1.5 2.1 2.8 2.7 3.010 0.6 1.6 2.2 2.7 2.9 3.111 0.7 2.1 2.4 3.2 2.9 3.012 0.5 2.4 1.8 2.5 2.7 2.913 0.5 2.1 1.7 2.9 3.4 3.314 0.7 2.1 2.1 3.5 2.5 3.515 0.7 1.8 1.9 2.9 3.2 3.516 0.5 1.9 1.9 3.0 2.8 2.917 0.8 1.6 2.4 3.3 3.4 2.818 0.8 2.3 2.0 3.1 2.5 3.419 1.1 1.7 1.9 3.4 2.9 3.020 0.9 1.8 2.5 3.3 2.9 3.1

Promedio 0.9 1.9 2.0 3.0 2.9 3.1

Tabla 26: Matriz de velocidades de proceso

Numero de Ope-rarios por Lınea

Tasa Produccionpor Lınea

Numero deLıneas Requeri-das

Costo Total($)

1 0.32 13 22752 0.53 8 18003 0.66 6 16504 0.75 5 16255 0.81 5 18756 0.85 5 2125

Tabla 27: Combinaciones Numero de Operario por Lınea de Produccion y Numerode Lıneas de Produccion

62

Page 66: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

3. Encontrar la combinacion de numero de lıneas de produccion y el numero de

“operarios promedio” mas favorable en terminos de costos.

La Tabla 2 muestra la relacion numero de oprerarios por lınea de produccion

costos totales, dados los parametros del ejemplo (Tabla 10.2).

4. De acuerdo con el resultado anterior, distribuir los operarios reales de la em-

presa en las diferentes lıneas de produccion de forma tal que los operaarios de

cada lınea tengan un conjunto similar de habilidades.

Pueden existir muy diversas formas de asignar operarios a lıneas de produc-

cion y de conformar equipos de trabajo, de acuerdo a propiedades medibles o

subjetivas de los operarios. La idea central es crear equipos de trabajo equili-

brados.

En el ejemplo todos los operarios son heterogeneos y ademas no pueden ser

ordenados consistentemente del mas lento al mas rapido. El criterio utilizado

en la conformacion de equipos es la sumatoria de las velocidades de proceso en

cada maquina, que se puede entender como un indicador global de habilidades

de cada operario. En la Tabla 4 se presenta la lista de operarios ordenados

en forma creciente con respecto a este indicador, y la manera en que fueron

asignados a las lıneas de produccion.

5. Computar el orden optimo de operarios para cada lınea de produccion y su

tasa de produccion respectiva. Calcular la tasa de produccion de las lıneas del

sistema.

Utilizando el programa OptWorkerAlign.java, se encuentra para cada lınea de

produccion, el orden optimo de operarios. La Tabla 5 muestra los resultados

y las tasas de produccion alcanzadas.

6. whileTasa de produccion ! ≈ valor objetivodo for Cada lınea de produccion

63

Page 67: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Matriz µjm

m

j. 1 2 3 4 5 6∑m=6

m=1 µjm

Lınea de Pro-duccion asigna-da

12 0.5 2.4 1.8 2.5 2.7 2.9 12.8 110 0.6 1.6 2.2 2.7 2.9 3.1 13.0 216 0.5 1.9 1.9 3.0 2.8 2.9 13.0 38 0.9 1.8 1.6 2.9 2.7 3.3 13.2 46 1.5 2.1 1.5 2.8 2.6 2.9 13.4 59 1.4 1.5 2.1 2.8 2.7 3.0 13.5 14 1.4 1.7 1.8 2.8 2.9 2.8 13.5 23 1.1 1.8 1.9 3.0 3.1 2.6 13.5 37 0.5 2.0 1.9 2.8 3.2 3.1 13.6 4

15 0.7 1.8 1.9 2.9 3.2 3.5 14.0 519 1.1 1.7 1.9 3.4 2.9 3.0 14.0 12 0.6 2.0 1.9 3.3 2.8 3.5 14.1 2

13 0.5 2.1 1.7 2.9 3.4 3.3 14.1 318 0.8 2.3 2.0 3.1 2.5 3.4 14.2 414 0.7 2.1 2.1 3.5 2.5 3.5 14.3 511 0.7 2.1 2.4 3.2 2.9 3.0 14.3 117 0.8 1.6 2.4 3.3 3.4 2.8 14.4 220 0.9 1.8 2.5 3.3 2.9 3.1 14.5 31 0.9 2.3 2.2 2.6 3.3 3.4 14.8 45 1.4 1.8 1.9 3.3 3.2 3.2 14.9 5

Tabla 28: Distribucion de operarios en lıneas de produccion

64

Page 68: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Lınea de Pro-duccion

Orden Optimode Operarios

Tasa de Produc-cion

1 {12,9,19,11} 0.792 {10,17,4,2} 0.733 {16,3,13,20} 0.694 {7,8,18,1} 0.715 {15,6,5,14} 0.85

T.Pr. Total 3.78T.Pr. Requerida 4.00

Diferencia -0.23

Tabla 29: La tasa de produccion objetivo todavıa no ha sido alcanzada

Ajustar numero de operarios

Ajustar numero de espacios disponibles de bufer

Computar orden optimo de operarios en la lınea y su respectiva tasa de

produccion. endfor

Despues de encontrar el orden optimo de operarios para cada lınea de produc-

cion, es evidente que existe un faltante en la tasa de produccion del sistema,

como se aprecia en la Tabla 5.

Ahora comienza el proceso de “fine-tuning” de las lıneas de produccion has-

ta alcanzar la tasa de produccion deseada. La Tabla 6 muestra el resultado

de contratar un “trabajador promedio” adicional y asignarlo a una lınea de

produccion.

En la configuracion de la Tabla 6 aun existe un pequeno faltante en la tasa

de produccion. El siguiente paso de “fine-tuning” puede ser la introduccion

de buferes en las lıneas de produccion, hasta alcanzar la tasa de produccion

deseada. La Tabla 6 muestra la configuracion resultante.

La configuracion del sistema presentada en la Tabla 6 cumple con los requeri-

mientos de tasa de produccion.

65

Page 69: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Lınea de Pro-duccion

Orden Optimode Operarios

Tasa de Produc-cion

1 {12,9,19,11} 0.792 {10,17,4,2} 0.733 {16,3,13,20} 0.694 {7,8,18,1} 0.715 {15,21,6,5,14} 0.92

T.Pr. Total 3.84T.Pr. Requerida 4.00Diferencia -0.16

Tabla 30: Se ha introducido un trabajador adicional. La tasa de produccion objetivotodavıa no ha sido alcanzada

Lınea de Pro-duccion

Orden Optimode Operarios

Tasa de Produc-cion

1 {12,9,19,11} 0.842 {10,17,4,2} 0.783 {16,3,13,20} 0.734 {7,8,18,1} 0.745 {15,21,6,5,14} 0.92

T.Pr. Total 4.02T.Pr. Requerida 4.00Diferencia 0.02

Tabla 31: Configuracion razonable para sistema Bucket Brigades

66

Page 70: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

10.3. Conclusion

Las herramientas computacionales desarrolladas en el paquete BucketBrigades,

junto con las conclusiones y reglas de uso general de la seccion 9.4, pueden ser

aplicables a casos reales de configuracion de lıneas tipo Bucket Brigades.

67

Page 71: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Capıtulo XI

MANUAL DEL USUARIO -

BUCKETBRIGADES

11.1. Software

De la pagina de internet www.sun.com descargar e instalar el programa lla-

mado j2sdk-1.4

De la pagina www.eclipse.org descargar e instalar el programa llamado Eclip-

seMirror

Paquetes en java “J Markov” y “BucketBrigades”

11.2. Instalacion del Paquete BucketBrigades

Abrir el programa EclipseMirror, en adelante “Eclipse”.

Seleccionar File → new → Project → Java Project.

Dar un nombre al proyecto. Sugerencia : “BucketBrigades”. Presionar Next

En la pestana Libraries presionar Add External Jars. Seleccionar el archivo

“JMarkov.zip”.

Seleccionar la pestana “Order and export”. Chequear todos los archivos que

aparecen en la lista.

Presionar Finish.

68

Page 72: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

[1,1 1,2 1,32,1 2,2 2,3

]

Tabla 32: Matriz de Velocidades de Proceso µjmpara ejemplo de utilizacion delheurıstico.

En la ventana Package Explorer de Eclipse seleccionar el paquete BucketBri-

gades. Hacer click derecho con el mouse y seleccionar import → file system.

Seleccionar la carpeta “BucketBrigades”. Chequear todos archivos con exten-

sion .class. Tener precaucion de chequear el subfolder “BucketFiles”.

Presionar Finish

11.3. Uso de BucketBrigades.java

En la ventana “Package Explorer” de Eclipse seleccionar Bucket→ BucketFiles

→ Mu.txt. Hacer doble click sobre Mu.txt

Insertar la matriz de velocidad de proceso de los operarios µjm en las maquinas,

de la siguiente forma:

1. Todos los valores deben estar separados horizontalmente por un espacio

de tabulacion.

2. Si los valores son no enteros, los decimales deben ser expresados por un

punto. Por ejemplo, “2.5”

3. Las columnas correspoden a las maquinas, y las filas a los operarios.

4. Por ejemplo, la matriz µ3,2 de la tabla 32 corresponde a un sistema de

3 maquinas y 2 operarios, en el cual el primer operario tiene velocidades

de 1.1,1.2 y 1.3 en las maquinas 1,2, y 3 respectivamente, mientras que

el segundo operario velocidades de 2.1, 2.2 y 2.3 respectivamente .

Correr el programa BucketBrigades.java. Par esto, en la ventana “Package

Explorer” de Eclipse hacer click sobre BucketBrigades →(default package)→BucketBrigades.java. Seleccionar del menu Run→ Run As→ Java Application

69

Page 73: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Automaticamente se abre una ventana llamada “JMarkov”, que tiene una serie

de pestanas.

1. En la pestana “Main” se encuentra la descripcion del sistema Bucket

Brigades.

2. En la pestana “States” se encuentra un listado de todos los estados po-

sibles del sistema, su descripcion y su probabilidad en el estado estable.

3. En la pestana “Rates” se encuentra la matriz de tasas Q del sistema

4. En la pestana “MOPs” se encuentran las medidas de desempeno del sis-

tema, incluıda la ocupacion promedio de las maquinas y operarios, y el

porcentaje promedio de tiempo que cada operario permanece en cada

maquina.

5. En la pestana “Events” se encuentra la tasa de produccion del sistema.

6. En la pestana “Output” se encuentra un log de los calculos hechos por el

programa.

11.4. Uso de OptWorkerAlign.java

En la ventana “Package Explorer” de Eclipse seleccionar BucketBrigades →BucketFiles → Mu.txt. Hacer doble click sobre Mu.txt

Insertar la matriz de velocidad de proceso µjmde cada operario en cada maqui-

na, de la misma forma que para BucketBrigades.java. Los operarios pueden

tener cualquier orden. OptWorkerAlign encuentra el orden optimo de los ope-

rarios en el sistema.

Correr el programa OptWorkerAlign.java. Par esto, en la ventana “Package

Explorer” de Eclipse hacer click sobre BucketBrigades →(default package) →OptWorkerAlign. Seleccionar del menu Run → Run As → Java Application

El programa genera dos ventanas automaticamente. Una ventana, llamada

“JMarkov” contiene la informacion descrita en el caso de BucketBrigades.java

70

Page 74: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

para el orden optimo de trabajadores. La ventana llamada “BucketBrigades

- Optimal Worker Alignment” contiene dos pestanas. La primera, llamada

“S.Description”, contiene la descripcion del sistema. La segunda, llamada

“MOPs”, contiene una lista de las principales medidas de desempeno para

cada uno de los ordenes posibles de operarios en el sistema. La lista se encuen-

tra ordenada de forma descendiente con respecto a la tasa de produccion de

cada orden de operarios del sistema.

Es importante anotar que el orden de los operarios se expresa mendiante nume-

ros entre corchetes. Por ejemplo {2, 1, 3}. Estos numeros corresponen a los ope-

rarios 2, 1 y 3, respectivamente, que aparecen en la pestana “S.Description”.

11.5. Uso de BucketBuffers.java

En la ventana “Package Explorer” de Eclipse seleccionar BucketBrigades →BucketFiles → Mu.txt. Hacer doble click sobre Mu.txt

Insertar la matriz de velocidad de proceso µjm de cada operario en cada maqui-

na, de la misma forma que para BucketBrigades.java.

En la ventana “Package Explorer” de Eclipse seleccionar Bucket→ BucketFiles

→ Buf.txt. Hacer doble click sobre Buf.txt. Insertar la cantidad de espacios

de bufer disponibles en cada maquina de la siguiente forma:

1. Digitar solamente una fila de numeros, separados horizontalmente entre

sı por un espacio de tabulacion.

2. La cantidad de columnas es equivalente al numero de maquinas del sis-

tema menos 1 (M − 1). Se debe recordar que en elmodelaje del sistema

se supone que la primera maquina cuenta un una cantidad infinita de

unidades de materia prima en su bufer.

3. El primer numero de izquierda a derecha corresponde a la cantidad de

espacios de bufer disponible para la segunda maquina, mientras que el

numero M − 1, o el ultimo de izquierda a derecha corresponde al bufer

de la ultima maquina M .

71

Page 75: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

Correr el programa BucketBuffers.java. Par esto, en la ventana “Package Ex-

plorer” de Eclipse hacer click sobre BucketBrigades0.→(default package)→BucketBuffers.

Seleccionar del menu Run → Run As →Java Application.

Automaticamente se abre una ventana llamada “JMarkov”, que tiene las mis-

mas pestanas que el resultado del programa BucketBrigades.java. La unica

diferencia es que en la pestana MOPs, se encuentra el numero promedio de

unidades en bufer al pie de cada maquina.

72

Page 76: Modelaje del Sistema de Producci¶on Bucket Brigades

II.03(2)116

REFERENCIAS

[1] Bartholdi and Eisenstein, “A production line that balances itself,” Opera-

tions Research, Enero 1996.

[2] Bartholdi, Eisenstein, and Foley, “Performance of bucket brigades when

work is stochastic,” Operations Research, vol. 49, Septiembre 2001.

[3] Bartholdi, Eisenstein, Jacobs, and Ratliff, “Design of bucket brigade

production lines,” Georgia Institute of Technology, 1995.

[4] Bischak, D. P., “Performance of a manufacturing module with moving wor-

kers,” IIE Transactions, vol. 28, pp. 723–733, 1996.

[5] Grassmann, W. K., Computational probability. Kluwer Academic, 2000.

[6] Reiser and Lauenverger, “M.V.A. of closed multichain queuing networks,”

Journal of ACM., vol. 27, no. 2, 1980.

[7] Riano, G., JMarkov Package. Universidad de Los Andes, julio 2003.

73