Está en la página 1de 13

Unidad 1 / Escenario 2

Lectura fundamental

Entornos de manufactura y
restricciones en Scheduling

Contenido

1 Notación básica en Scheduling

Palabras clave: Scheduling, planeación, programación, nomenclatura.


1. Notación básica en Scheduling
En los últimos 50 años una considerable cantidad de esfuerzos de investigación se ha enfocado
en el Scheduling determinístico. El número y variedad de modelos es impresionante y con base al
sinnúmero de combinaciones entre ambientes de procesamientos, establecimientos de funciones y
máquinas, se logró categorizar los problemas planteados de los modelos determinísticos que han sido
considerados en la literatura.

La programación de tareas que van desde las más pequeñas y simples hasta las más complejas,
ajustadas a las velocidades de las máquinas. Un problema de Scheduling se describe por α|β|γ donde:

Tabla 1. Notación de Graham (1979)

Símbolo /
Nombre del entorno Descripción
Notación
Trabajo n Número de trabajos (tareas)
Máquinas m Número de máquinas
Índice de trabajo j índice que se refiere a los trabajos o tareas
Índice de trabajo i índice que se refiere a las máquinas o agentes
Processing time pij Tiempo de procesamiento
Release date rj Fecha de liberación
Due date dj Fecha comprometida o deseada
Peso wj Peso o ponderación
Describe el ambiente de las máquinas y contiene solo
El campo α α
una entrada
Detalles de las características de procesamiento y
El campo β β restricciones, podría no contener entradas, contener
solo una entrada o contener múltiples entradas
Describe el objetivo a ser minimizado y también tiene
El campo γ γ
una sola entrada
Single Machine 1 Una máquina

POLITÉCNICO GRANCOLOMBIANO 2
Máquinas paralelas Pm P: máquinas paralelas y m: número de máquinas
Máquinas paralelas
Q: máquinas paralelas con diferentes velocidades y m:
con diferentes Qm
número de máquinas
velocidades
Flow Shop Fm F: Flow shop y m: número de máquinas
Job Shop Jm F: Job shop y m: número de máquinas
Open Shop Om F: Open shop y m: número de máquinas
Makespan Cmax
Máximo retardo Lmax
Tiempo de
culminación total
ponderada ∑wjcj
Tardanza total
ponderada
∑WjTj
Tiempo de
culminación total
∑cj

Fuente: elaboración propia

Los objetivos de estos tipos de problemas consistente en lograr con el Scheduling:

a. Cumplir con las fechas deseadas o fechas de vencimientos (due date).

b. Minimizar plazos.

c. Minimizar los costos de preparación (set up).

d. Minimizar el inventario en proceso.

POLITÉCNICO GRANCOLOMBIANO 3
1.1. Ambientes de las máquinas

Para el campo α las posibles entradas corresponden a los entornos de manufactura y son:

Una máquina: el sistema consiste en una sola máquina que procesa todos los pedidos y es el menos
complejo de los demás entornos.

Máquinas en paralelo (Pm): se tienen m máquinas idénticas que trabajan en paralelo. El trabajo j
requiere una sola operación y dicha operación puede ser procesada en cualquiera de las m máquinas.
Si el trabajo j no puede ser procesado en cualquier máquina, sino solo en alguna perteneciente a un
subconjunto específico Mj, la entrada Mj aparece en el campo β.

Máquinas en paralelo con diferentes velocidades (Qm): se tienen m máquinas que trabajan en
paralelo con diferentes velocidades. La velocidad de la máquina i se denotará como vi. El tiempo pij
que el trabajo j permanece en la máquina i es igual a pj/vi, donde se asume que toda la operación sobre
el trabajo j sucede en la máquina i. Este ambiente es conocido como máquinas uniformes. Si todas las
máquinas tienen la misma velocidad, por ejemplo, vi = 1 para todo i y pij = pj, entonces el ambiente es
igual al anterior (Pm).

Máquinas en paralelo no relacionadas (Rm): se tienen m máquinas diferentes en paralelo. La máquina


i puede procesar el trabajo j con velocidad vij. El tiempo pij que el trabajo j dura en la máquina i es igual
a pj/vij (asumiendo nuevamente que el trabajo i recibe todo su procesamiento en la máquina i). Si las
velocidades de las máquinas son independientes de los trabajos, por ejemplo, vij = vi para todo i y j,
entonces el ambiente es igual al anterior (Qm).

Línea de flujo - Flow shop (Fm): se tienen m máquinas en serie y cada trabajo tiene que ser procesado
en cada una de las m máquinas. Todos los trabajos tienen que seguir la misma ruta, por ejemplo, cada
trabajo debe ser procesado primero en la máquina 1, luego en la máquina 2, y así sucesivamente.
Una vez un trabajo termina en una máquina, pasa a la cola de la siguiente máquina. Usualmente, se
asume que todas las colas funcionan bajo la regla FIFO (First In First Out – Primero en Entrar Primero
en Salir). Si se usa la regla FIFO, entonces se denomina que la línea de flujo es una línea de flujo de
permutación y en el campo β se incluye la entrada prmu.

Línea de lujo flexible - Flexible flow shop (Ffc): una línea de flujo flexible es una generalización de la
línea de flujo (Fm) y los entornos de máquinas en paralelo (Pm). En lugar de m máquinas en serie, hay
c etapas en serie donde en cada etapa hay varias máquinas idénticas en paralelo. Cada trabajo debe
procesarse primero en la etapa 1, luego en la etapa 2 y así sucesivamente. Un escenario funciona
como un conjunto de máquinas paralelas; en cada etapa, el trabajo j requiere procesamiento en una

POLITÉCNICO GRANCOLOMBIANO 4
sola máquina y cualquier máquina puede hacerlo. Las colas entre las distintas etapas pueden o no
funcionar de acuerdo con la disciplina FCFS (First Come First Served – Primero en Llegar, Primero
en Atender). (Las líneas de flujo flexible en la literatura a veces también se denominan líneas de flujo
híbrido o líneas de flujo de múltiples procesadores).

Ambientes tipo taller - Job shop (Jm): en un ambiente tipo taller con m máquinas cada trabajo tiene su
propia ruta a seguir. Se debe diferenciar entre un ambiente tipo taller en donde cada trabajo pasa por
cada máquina por mucho una vez y un ambiente tipo taller en donde cada trabajo puede pasar por cada
máquina más de una vez. En el segundo caso el campo β contiene la entrada rcrc para recirculación.

Taller flexible - Flexible job shop (Fjc): un taller flexible es una generalización del job shop y máquinas
en paralelo. En lugar de m máquinas en series, se tienen c centros de trabajo y cada uno de ellos tiene
un número de máquinas idénticas en paralelo. Cada trabajo tiene su propia ruta a seguir a través del
taller. El trabajo j se debe procesar en todos los centros de trabajos en cualquiera de las máquinas. Si
un trabajo visita más de una vez el mismo centro, el ambiente se conoce como recirculación y en el
campo β debe aparecer rcrc.

Open shop (Om): se tienen m máquinas. Cada trabajo debe ser procesado nuevamente en cada una
de las m máquinas. Sin embargo, algunos de estos tiempos de procesamiento pueden ser cero. No
hay restricciones con respecto a las rutas que sigue cada trabajo. El programador puede determinar
una ruta para cada trabajo y diferentes trabajos pueden tener diferentes rutas.

1.2. Restricciones de procesamiento

Las restricciones de procesamiento y restricciones especificadas en el campo β pueden incluir


múltiples entradas. Las posibles entradas en el campo β son las siguientes:

Fechas de liberación - Release dates (Rj): si este símbolo aparece en el campo β, indica que el
procesamiento del trabajo no puede iniciarse antes de su fecha de liberación rj. Si el release date no
aparece, entonces el procesamiento del trabajo j puede comenzar en cualquier momento.

Preferencias - Preemptions (Prmp): implica que el procesamiento de un trabajo se puede interrumpir


para atender otro. La cantidad de tiempo que había recibido el trabajo antes de que se interrumpiera
su procesamiento no se pierde, cuando se retoma el trabajo que se interrumpió, se debe procesar
por la cantidad de tiempo que le faltaba. Cuando se coloca prmp en el campo β quiere decir que se
permiten las preferencias, si no se coloca en el campo, no se admiten preferencias.

POLITÉCNICO GRANCOLOMBIANO 5
Restricciones de precedencia - Precedence constraints (Prec): las restricciones de precedencia pueden
aparecer en ambientes de una o varias máquinas. Establecen que uno o más trabajos deben ser
completados antes que se pueda iniciar el procesamiento de otro. Hay varias formas de precedencias:
si cada trabajo tiene a lo sumo un predecesor y un sucesor, las limitaciones se refieren como cadenas
(chains). Si cada trabajo tiene a lo sumo un sucesor, las limitaciones se denominan intree. Si cada
trabajo tiene a lo sumo un predecesor, las restricciones se refieren como un outtree. Si no aparece
prec en el campo β, el trabajo no está sujeto a restricciones de precedencia.

Tiempos de alistamiento dependientes de la secuencia - Sequence dependent setup times (sjk):


el sjk representa el tiempo de alistamiento dependiente de la secuencia que se requiere entre el
procesamiento de los trabajos j y k; s0j denota el tiempo de alistamiento para el trabajo k si el trabajo k
es el primero en la secuencia y sj0 el tiempo de limpieza después del trabajo j si el trabajo j es el último
en la secuencia (por supuesto s0k y sj0 pueden ser cero). Si el tiempo de alistamiento entre los trabajos
j y k depende de la máquina, entonces el subíndice i es incluido, por ejemplo, sijk. Si no aparece sjk en el
campo β, se asume que todos los tiempos de alistamiento son cero o de secuencia independiente, en
cuyo caso los alistamientos son incluidos en el tiempo de proceso.

Familias de trabajos - Job families (Fmls): los n trabajos considerados pueden pertenecer a F familias
diferentes. Los trabajos de la misma familia pueden tener diferentes tiempos de procesamiento, pero
ser procesados unos tras otros en la misma máquina sin necesidad de tener que incurrir en ningún
tiempo de alistamiento (setup time). Cuando una máquina pasa de atender una familia g a una familia
h, se incurre en un tiempo de alistamiento. Si el tiempo de alistamiento entre las dos familias depende
de la secuencia, entonces se denota con sgh. Si el tiempo de alistamiento solo depende de la familia
que va a iniciar, por ejemplo, la familia h, entonces se denota con sh. Si no es de ninguna familia, se
denota solo con s.

Procesamiento en lotes - Batch processing (batch«b»): una máquina puede ser capaz de procesar un
número de trabajos b simultáneamente, esto quiere decir que se puede procesar un lote de hasta b
trabajos en el mismo tiempo. Los tiempos de proceso de los trabajos contenidos en el lote (batch)
pueden diferir y el procesamiento del lote se completa cuando se cumple el procesamiento del último
trabajo, esto implica que el tiempo de procesamiento del lote está determinado por el trabajo que
tiene el tiempo de procesamiento más largo. Si b = 1, entonces el problema se reduce a un ambiente
de Scheduling convencional. Otro caso especial es cuando b = ∞, por ejemplo, no hay límite para la
cantidad de trabajos que pueden ser procesados en cualquier momento.

Rupturas - Breackdowns (Brkdwn): implica que una máquina puede no estar disponible continuamente.
Los periodos en que la máquina no está disponible son asumidos como fijos (por ejemplo, debido

POLITÉCNICO GRANCOLOMBIANO 6
a turnos o mantenimientos programados). Si hay un número de máquinas idénticas en paralelo, el
número de máquinas disponibles en cualquier momento está en función del tiempo, por ejemplo,
m(t). Las rupturas algunas veces son consideradas como restricciones de disponibilidad.

Machine eligibility restrictions (Mj): el símbolo Mj puede aparecer en el campo β cuando se tiene un
ambiente de m máquinas en paralelo (Pm). Cuando Mj está presente, no todas las m máquinas son
capaces de procesar el trabajo j. Si el campo β no contiene Mj, el trabajo j puede ser procesado en
cualquiera de las m máquinas.

Permutación - Permutation (Prmu): una restricción que puede aparecer en el ambiente flow shop que
indica que las colas en cualquier máquina operan de acuerdo con la disciplina FIFO. Esto implica que
el orden en que los trabajos van a través de la primera máquina se mantiene en todo el sistema.

Bloqueo - Blocking (Block): es un fenómeno que puede ocurrir en los flow shops. Si un flow shop tiene
una capacidad máxima de almacenamiento de WIP (Work In Process - Trabajo en proceso) entre dos
máquinas sucesivas A y B, entonces podría suceder que cuando esa capacidad de almacenamiento
de WIP esté utilizada por completo, la máquina A no esté en habilidad de completar más trabajos.
Esto implica que el trabajo completado debe permanecer en la máquina A, lo que no permite que
se procesen más trabajos en ella. Se asume que en los modelos con bloque las máquinas operan de
acuerdo con FIFO. Esto quiere decir que block implica prmu.

Sin espera - No-wait (Nwt): el requerimiento de no espera es otro fenómeno que puede ocurrir en los
flow shops. No se permite que un trabajo tenga tiempo de espera entre dos máquinas sucesivas. Esto
implica que el tiempo de inicio del trabajo en la primera máquina debe ser retrasado para asegurar
que el trabajo pueda ir a través de todo el flow shop sin tener que esperar en cualquier máquina. Un
ejemplo de esta restricción es el proceso de laminado de acero, en donde la lámina de acero no
puede esperar entre procesos porque podría enfriarse. Es claro que bajo la restricción de no-wait las
máquinas deben operar de acuerdo con la regla FIFO.

Recirculación - Recirculation (Rcrc): puede ocurrir en un job shop o en un flexible job shop cuando un
trabajo puede pasar por una máquina o centro de trabajo más de una vez.

Cualquier otra entrada puede aparecer en el campo β y debe ser autoexplicativa. Por ejemplo, pj = p
implica que todos los tiempos de procesamiento son iguales y dj = d implica que todas las fechas de
entrega son iguales. Las fechas de entrega usualmente no se especifican explícitamente en este campo,
el tipo de función objetivo da suficiente información cuando los trabajos tienen o no fecha de entrega.

POLITÉCNICO GRANCOLOMBIANO 7
1.3. Funciones objetivo

El objetivo está en función de los tiempos de terminación de los trabajos, en donde, por supuesto, se
depende de la programación. El tiempo de terminación del trabajo j en la máquina i se denota como
Cij. El tiempo en el que el trabajo j es terminado en el sistema se denota con Cj. La función objetivo
puede estar en función de las fechas de entrega. El retraso (Lj - Lateness) del trabajo j se define como:

Lj = Cj - dj
Donde Lj es positivo si el trabajo se termina después de la fecha de entrega y negativo cuando es
terminado antes. La tardanza (Tj - Tardiness) del trabajo j se define como:

Tj = max (Lj,0)

La diferencia entre retraso y tardanza es que la tardanza nunca es negativa. La unidad de penalización
(Uj – unit penalty) del trabajo j se define como:

El retraso, la tardanza y la unidad de penalización son tres funciones básicas de la fecha de entrega.

Figura 1. Gráfica de las funciones objetivo Lj, Tj y Uj


Fuente: Pinedo (2016)

POLITÉCNICO GRANCOLOMBIANO 8
Makespan (Cmax): el makespan, definido como max(C1, …, Cn), es igual al tiempo de terminación
del último trabajo en el sistema. Un valor bajo de Cmax usualmente indica que se hace una buena
utilización de las máquinas.

Retraso máximo - Maximum lateness (Lmax): mide el retraso máximo con respecto a las fechas de
entrega y se define como max(L1, …, Ln).

Tiempo de terminación total ponderado - Total weighted completion time (∑wj CJ): es la suma de los
tiempos de terminación ponderados de n trabajos que indica los costos de inventario incurridos por la
programación. La suma de los tiempos de terminación también se encuentra en la literatura como flow
time. Entonces, el tiempo total de terminación ponderado se encontraría como weighted flow time.

Tiempo total de terminación ponderado descontado - Discounted total weighted completion time
(∑wj(1-e-rCj ) ): esta es una función de costos más general que la anterior, donde los costos son
descontados a una tasa r, donde 0 < r < 1, por unidad de tiempo. Esto quiere decir que, si el trabajo
j no es completado en el tiempo t, un costo adicional es incurrido desde t hasta que se entregue el
trabajo. Si el tiempo j es entregado en el tiempo t, el costo total incurrido en el periodo [0, t] es wj(1 -
e-rt). El valor de r usualmente es cercano a 0, por ejemplo, 0,1.

Tardanza total ponderada - Total weighted tardiness (∑wj TJ): esta es una función de costos más general
que el tiempo total de terminación ponderado.

Número de trabajos tardíos ponderado - Weighted number of tardy jobs (∑wj UJ): no es solo una medida
de interés académica, también es una medida que en la práctica puede ser grabada fácilmente.

Todas las funciones objetivo-mencionadas anteriormente son conocidas como medidas regulares de
desempeño. Una medida regular de desempeño es una función que es no decreciente en C1, …, Cn.
Recientemente los investigadores han empezado a estudiar funciones objetivo que no son regulares.
Por ejemplo, cuando el trabajo j tiene una fecha de entrega dj, esto puede estar sujeto a una penalidad
de entrega temprana (earliness), donde la earliness del trabajo j se define como:

Ej=max(dj-Cj,0)

Esta penalidad de entrega temprana no es creciente en Cj. Un objetivo como la suma del tiempo total
de entregas tempranas y el tiempo total de entregas tardías, por ejemplo:
n n
Ej + Tj
j=1 j=1

POLITÉCNICO GRANCOLOMBIANO 9
Es entonces no regular. Otro objetivo que tampoco es regular es la suma del tiempo total de entregas
tempranas ponderadas y el tiempo total de entregas tardías ponderadas, por ejemplo:

n n
+
j=1 j=1

Donde el peso asociado con las entregas tempranas del trabajo j (wj') puede ser diferente del peso
asociado con las entregas tardías del trabajo j (wj'').

1.4. Ejemplo de aplicación

Una fábrica que produce bolsas de papel para cemento, carbón vegetal, alimentos para perros, y
así sucesivamente. La materia prima básica para tal operación son rollos de papel. El proceso de
producción consta de tres etapas: la impresión del logotipo, el pegado del lado de la bolsa y la costura
de un extremo o ambos extremos de la bolsa. Cada etapa consiste en una serie de máquinas que no
son necesariamente idénticas. Las máquinas en una etapa pueden diferir ligeramente en la velocidad
a la que operan, el número de colores que pueden imprimir, o el tamaño de la bolsa que pueden
producir. Cada pedido de producción indica una cantidad determinada de una bolsa específica que se
debe producir y enviar por una fecha de envío confirmada o una fecha de vencimiento. Los tiempos
de procesamiento para las diferentes operaciones son proporcionales al tamaño de la orden, es decir,
el número de bolsas ordenadas. Una entrega tardía implica una penalización en forma de pérdida de
fondo de comercio y la magnitud de la penalización depende de la importancia del pedido o del cliente
y la tardanza de la entrega.

Uno de los objetivos del sistema de programación es minimizar la suma de estas sanciones. Cuando
se conmuta una máquina de un tipo de bolsa a otra, se requiere una configuración. La longitud
del tiempo de configuración en la máquina depende de las similitudes entre las dos órdenes
consecutivas (el número de colores en común, las diferencias en el tamaño de la bolsa, y así
sucesivamente). Un objetivo importante del sistema de programación es la minimización del tiempo
total invertido en configuraciones.

(A Flexible Flow Shop).FFc | RJ | denota una tienda de flujo flexible. Los trabajos tienen fechas de
lanzamiento y fechas de vencimiento, el objetivo es la minimización de la tardanza total ponderada;
también, tiene algunas características adicionales como tiempos de configuración dependientes
de la secuencia en cada una de las tres etapas. Además, el tiempo de procesamiento del trabajo j

POLITÉCNICO GRANCOLOMBIANO 10
en la máquina i tiene una estructura especial: depende del número de bolsas y de la velocidad de la
máquina.

POLITÉCNICO GRANCOLOMBIANO 11
Referencias
Hase, R., Jacobs, R. y Aquilano, N. (2009). Administración de operaciones. México: McGraw-Hill.
Hopp, W. y Spearman, M. (2008). Factory Physics. Long Grove: Waveland Press.
Krajewski, L., Ritzman, L. y Malhotra, M. (2008). Administración de operaciones. México: Pearson.
Pinedo, M. L. (2016). Scheduling - Theory, Algorithms, and Systems (Fifth Edition).

POLITÉCNICO GRANCOLOMBIANO 12
INFORMACIÓN TÉCNICA

Módulo: Scheduling e Inventarios


Unidad 1: Introducción al Scheduling
Escenario 2: Tipos de problemas de Scheduling y sus
restricciones

Autor: Ronald Bahamon Ortiz

Asesor Pedagógico: Estefanía Ferrero Marciales


Diseñador Gráfico: Lady Marcela Montoya Fonseca
Asistente: Ginna Paola Quiroga Espinosa

Este material pertenece al Politécnico Grancolombiano.


Prohibida su reproducción total o parcial.

POLITÉCNICO GRANCOLOMBIANO 13

También podría gustarte