Está en la página 1de 9

Unidad 2 / Escenario 4

Lectura fundamental

Otros algoritmos de secuenciación


monómaquina

Contenido

1 Contextualización

2 Otros algoritmos de secuenciación monómaquina

Palabras clave: Scheduling, programación, secuenciaciones dinámicas de tareas, reglas de despacho, tiempo de
terminación ponderado con cadenas.
1. Contextualización
La programación de tareas (scheduling) se ha dedicado a evaluar la pertinencia de las reglas o
algoritmos, cuando toda la información del grupo de tareas por ejecutar se conoce de manera
anticipada, es decir, que es conocida desde el instante inicial del horizonte de programación, o los
bien conocidos tipos estáticos (offline). No obstante, las condiciones actuales de competencia
de mercados y algunas aplicaciones específicas en sistemas de producción han obligado a los
investigadores a considerar nuevos modelos de algoritmos dinámicos (online), los cuales llevan a tomar
decisiones de ejecución de las tareas en tiempo real con tan solo la información disponible en ese
instante para la toma de dichas decisiones. En este apartado, se evidenciarán secuenciaciones on-line
de tareas en un recurso único aparte de las reglas (offline) SPT (Shortest processing time), LPT (Largest
processing time), EDD (Earliest due) y FIFO (First in, First out) analizadas en el anterior Escenario. Los
modelos y algoritmos propuestos están basados tanto en reglas clásicas utilizadas desde hace mucho
tiempo por los industriales, como en estrategias más sofisticadas (Sgall, 1999, pp. 196-231).

El entorno de una sola máquina es muy simple, y un caso especial del resto de los demás ambientes.
Los modelos de máquina única a menudo tienen propiedades que ni máquinas en paralelo ni máquinas
en serie tienen. Los resultados que se pueden obtener para los modelos de máquina única no solo
proporcionan información sobre el entorno de una sola máquina, sino que también proporcionan
una base para la heurística que se aplica a entornos de máquina más complicados. En la práctica, los
problemas de programación en entornos de máquina más complicados a menudo se descomponen en
subproblemas que tratan con máquinas individuales. Por ejemplo, un entorno de máquina complicado
con un solo cuello de botella puede dar lugar a un único modelo de máquina.

La mayoría de los modelos considerados en este capítulo caen en la categoría de los llamados
problemas de programación offline. En un problema de programación offline, todos los datos se
conocen de antemano y se pueden tener en cuenta en el proceso de optimización. Por el contrario,
en un problema de programación en línea, los datos del problema no se conocen con anterioridad.
Por ejemplo, una fecha de lanzamiento solo se conoce en el momento en que se libera un trabajo
(no de antemano). Incluso el número de puestos de trabajo no se conoce de antemano, solo se
hace conocido en el lanzamiento del último trabajo. Claramente, los algoritmos para problemas
de programación en línea tienden a ser muy diferentes de los algoritmos para problemas de
programación sin conexión.

POLITÉCNICO GRANCOLOMBIANO 2
2. Otros algoritmos de secuenciación monómaquina

2.1. (WSPT) - The Total Weighted Completion Time

El primer objetivo para considerar es el tiempo total de terminación ponderada, es decir, ∑wjCj. El
peso del Job j puede considerarse un factor de importancia, puede representar un coste de tenencia
por unidad de tiempo o el valor ya agregado al Job j. Este problema da lugar a la llamada regla del
tiempo de procesamiento más corto ponderado primero (WSPT). De acuerdo con esta regla, los
trabajos se ordenan en orden decreciente de WJ/PJ.

Una programación S, que no es WSPT, es óptima. En Scheduling debe haber al menos dos trabajos
adyacentes, es decir, Job j seguido de Job k, de tal manera que:

Wj < Wk
Pj Pk
El trabajo j comienza su procesamiento en el momento t. Realizar un llamado intercambio de parejas
adyacentes en los trabajos j y k que llame a la nueva programación S. Mientras se baja el trabajo
original de la programación S j comienza su procesamiento en el tiempo t y es seguido por el trabajo k,
bajo el nuevo trabajo de la programación S k comienza su procesamiento en el tiempo t y es seguido
por el trabajo j. Todos los demás trabajos permanecen en su posición original. El tiempo total de
finalización ponderada de los trabajos procesados antes de los trabajos j y k no se ven afectados por el
intercambio. Tampoco es el tiempo total ponderado de finalización de los trabajos procesados después
de los trabajos j y k. Así pues, la diferencia en los valores de los objetivos de las listas S y S se debe
únicamente a los trabajos j y k. Bajo S el tiempo total de finalización ponderada de los trabajos j y k es:

Mientras que bajo S es:

POLITÉCNICO GRANCOLOMBIANO 3
Figura 1. Un intercambio de trabajos en parejas j y k
Fuente: elaboración propia

2.2. The Maximum Lateness

Están relacionados con la fecha de vencimiento. El primer modelo relacionado con la fecha de
vencimiento es de carácter bastante general, a saber, con el problema |prec | hmax, donde:

h = max (h (c ),...,h (c ))
max 1 1 n n

Con hj, j = 1..., n, siendo funciones de coste no decreciente. Este objetivo está claramente relacionado
con la fecha de vencimiento, ya que las funciones hj pueden tomar cualquier forma. Este problema
permite un algoritmo de programación dinámica hacia atrás eficaz, incluso cuando los trabajos están
sujetos a restricciones de precedencia arbitrarias. Está claro que la finalización del último trabajo
se produce en el makespan Cmax = PJ, que es independiente de la programación. Denotar J en el
conjunto de trabajos ya programados, que se procesan durante el intervalo de tiempo:

[c - ∑p , c ]
max j max

j∈J

2.3. The Number of Tardy Jobs

Otro objetivo relacionado con la fecha de vencimiento es ∑Uj. Este objetivo puede aparecer en
un principio algo artificial y sin interés práctico. Sin embargo, en el mundo real es una medida de
rendimiento que a menudo se supervisa, según la cual se miden los gerentes. Equivale al porcentaje
de envíos a tiempo. Una programación óptima para ∑UJ adopta la forma de un conjunto de trabajos
que cumplen con sus fechas de vencimiento, y que se programan primero seguidos por el conjunto de

POLITÉCNICO GRANCOLOMBIANO 4
trabajos restantes que no cumplen con sus fechas de vencimiento y que están programados en último
lugar. De los resultados de la sección anterior se desprende que el primer conjunto de trabajos debe
programarse según EDD, para asegurarse de que Lmax es negativo, el orden en el que se programa el
segundo conjunto de trabajos es irrelevante.

El problema ∑UJ se puede resolver fácilmente utilizando un algoritmo de avance. Reordenar los
trabajos de tal manera que D1 ≤ D2 ≤ · · · ≤ DN. El algoritmo pasa por n iteraciones. En la iteración k
de los trabajos del algoritmo se toman en consideración 1, 2..., k. De estos trabajos k y el subconjunto
j, se refieren a los trabajos que, en una programación óptima, pueden completarse antes de sus fechas
de vencimiento, y el subconjunto JD se refiere a los trabajos que ya se han descartado y no cumplen
sus fechas de vencimiento en la programación óptima. En la iteración k el conjunto JC se refiere a los
trabajos k + 1, k + 2..., n.

2.4. The Total Tardiness - Dynamic Programming

El objetivo ∑Tj es también importante en la práctica. La minimización del número de puestos de


trabajo tarde, en la práctica, no puede ser el único objetivo de medir acerca de cómo se cumplen
las fechas de vencimiento. Algunos trabajos pueden tener que esperar un tiempo inaceptablemente
largo si se minimiza el número de trabajos tardíos. Si en cambio la suma de tardinesses (demora) se
minimiza, es menos probable que la espera de un trabajo determinado sea inaceptablemente larga.
El modelo ∑TJ ha recibido una enorme cantidad de atención en la literatura. Durante muchos años
su complejidad computacional permaneció abierta, hasta que su dureza NP se estableció en 1990.
Como ∑TJ es NP-Hard en el sentido ordinario que permite un algoritmo de tiempo seudo-polinomio,
basado en la programación dinámica. El algoritmo se basa en dos resultados preliminares.

2.5. The Total Tardiness - An Approximation Scheme

Paso 1. Aplique EDD y determine Tmax.

Si Tmax = 0, entonces ∑Tj = 0 y EDD es óptimo; STOP

POLITÉCNICO GRANCOLOMBIANO 5
De lo contrario, establezca:

Paso 2. Reescalar los tiempos de procesamiento y las fechas de vencimiento de la siguiente manera:

Paso 3. Aplique el algoritmo a los datos remuestreados.

La secuencia generada por este algoritmo, digamos la secuencia S, satisface:

2.6. The Total Weighted Tardiness

El problema ∑wjTj es una generalización importante de la ∑TJ, discutido en las secciones


anteriores. Decenas de investigadores han trabajado en este problema y han experimentado con
muchos enfoques diferentes. Dichos enfoques abarcan desde técnicas intensivas informáticas
muy sofisticadas, hasta heurísticas bastante rudimentarias diseñadas, principalmente, para la
implementación en la práctica. El algoritmo de programación dinámica para ∑TJ descrito en la sección
anterior también puede tratar con pesos agradables, es decir, PJ ≥ PK = ⇒ WJ ≤ wk.

2.7. Online Scheduling

En todos los problemas considerados hasta ahora, se asume que todos los datos del problema (por
ejemplo, el número de puestos de trabajo, tiempos de procesamiento, fechas de lanzamiento, fechas
de vencimiento, pesos, etc.) se conocen de antemano. El tomador de decisiones puede determinar en
el momento cero, con toda la información a mano, toda la programación. Este paradigma estándar se
conoce a menudo como Offline Scheduling.

POLITÉCNICO GRANCOLOMBIANO 6
En un problema de programación en línea, el tomador de decisiones no sabe de antemano cuántos
trabajos se van a procesar y cuáles serán sus tiempos de procesamiento. El tomador de decisiones
se hace consciente de la existencia de un trabajo solo cuando el trabajo se libera y se le presenta.
Si se asume que los puestos de trabajo van a ser liberados en diferentes momentos, entonces el
tomador de decisiones no sabe en ningún momento durante el proceso cuántos trabajos más van
a ser liberados en el futuro y cuáles serán sus fechas de lanzamiento. Este tipo de problema de
programación en línea se encuentra en la literatura que normalmente se conoce como un problema
de Online-Over-Time Scheduling.

Las funciones objetivas en la programación en línea son similares a las de la programación sin
conexión. La efectividad de un algoritmo de programación en línea se mide por su ratio competitivo.
Un algoritmo en línea es ρ-competitivo si para cualquier caso problema el valor objetivo de la
programación generada por el algoritmo es más ρ veces mayor que el valor objetivo óptimo, en caso
de que la programación se había creado de forma offline con todos los datos conocidos de antemano,
incluidas las fechas de lanzamiento. La relación competitiva es básicamente equivalente a un caso de
peor límite.

Una contraparte en Online-Over-Time es clarividente de rj PRMP ∑CJ, con el objetivo de ser la


minimización del tiempo total de finalización. El tomador de decisiones no sabe de antemano cuándo
los trabajos van a ser liberados y no sabe cuántos van a ser liberados. Sin embargo, en el momento
en que se libera un trabajo, se le dice al creador de la decisión cuál es su tiempo de procesamiento.
Considere en este entorno en línea la aplicación de la versión preferente de la regla Shortest
Remaining Processing Time First (SRPT). Después de esta regla, el creador de la toma de decisiones
se compara. Si el nuevo trabajo tiene un tiempo de procesamiento más pequeño, el tomador de
decisiones anticipa el trabajo en la máquina y lo reemplaza con el trabajo recién liberado.

Se puede verificar fácilmente que para cualquier conjunto de trabajos que se liberen con cualquier
conjunto de tiempos de procesamiento, la realización de la programación bajo SRPT en el entorno
en línea es exactamente la misma que la realización de la programación bajo SRPT en un entorno
offline, con el mismo conjunto de trabajos, las mismas fechas de lanzamiento y los mismos tiempos
de procesamiento.

POLITÉCNICO GRANCOLOMBIANO 7
Referencias
Chase, 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. (2016). Scheduling. New York: Springer.

Sgall, J. (1999). Online Scheduling - A Survey. In A. Fiat & G.I. Woeginger (Eds.), On-line Algorithms:
The State of the Art. Vol. 1442 (pp. 196-231). Berlin: Springer-Verlag

POLITÉCNICO GRANCOLOMBIANO 8
INFORMACIÓN TÉCNICA

Módulo: Scheduling e Inventarios


Unidad 2: Secuenciación de tareas en entornos
monomáquina
Escenario 4: Secuenciación de tareas en ambientes
monomáquina - parte 2

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 9

También podría gustarte