You are on page 1of 28

Parallel Machine Models

Docente: Julián Rodriguez


Total Earliness and Tardiness
• Es un caso especial donde es considerado como
𝑑𝑗 = 𝑑 para todos los trabajos j

Propiedades del caso especial:


Sin ociosidad o demoras entre dos trabajo es el
mejor esquema.
El primer trabajo no necesariamente tiene que
iniciarse en el tiempo 0.
Total Earliness and Tardiness
La programación se divide en 2 conjuntos distintos:

Terminación más
Terminación más tardía
temprana
𝐶𝑗 > 𝑑
𝐶𝑗 ≤ 𝑑
Seleccionar el trabajo J₂
Seleccionar el trabajo J₁
Total Earliness and Tardiness
• Supongamos que el primer trabajo puede iniciar su tratamiento después
de 𝑡 = 0 𝑦 𝑃₁ ≥ 𝑃₂ ≥ … ≥ 𝑃𝑛 entonces:
PASO 1: Seleccione 𝑇1 = 𝑑 𝑦 𝑇2 = 𝑝𝑗 − 𝑑
Seleccione 𝑘 = 1
PASO 2:
• Si 𝑇1 ≥ 𝑇2 , asignar k trabajo a la primera posición sin llenar en la secuencia
y establecer 𝑇1 = 𝑇1 − 𝑝𝑘 .
• Si 𝑇1 < 𝑇2 , asignar k trabajo a la última posición sin llenar en la secuencia y
establecer 𝑇2 = 𝑇2 − 𝑝𝑘
PASO 3: Si 𝑘 < 𝑛, establecer 𝑘 = 𝑘 + 1 e ir al Paso 2.
Si 𝑘 = 𝑛, STOP.
Total Earliness and Tardiness
Total Earliness and Tardiness
Ejercicio: Considere los siguientes siete trabajos con
sus respectivos tiempos de procesamiento y fecha de
entrega que es 𝑑 = 150
Jobs 1 2 3 4 5 6 7
𝑃𝑗 30 120 80 50 20 10 5

T₁ T₂ Asignación Secuencia
Primary and Secondary
Objectives
Un problema de programación se resuelve por lo
general con respecto al objetivo primario. Si hay
varias soluciones óptimas, la mejor de esas
soluciones se selecciona de acuerdo con el objetivo
secundario.
Primary and Secondary
Objectives
Ejemplo:
Consideramos el problema 1 Σ 𝐶𝑗 (𝑂𝑃𝑇), 𝐿𝑚𝑎𝑥

• Todos los trabajos se programan de acuerdo a SPT.


• Si hay varios trabajos que tienen el mismo tiempo
de procesamiento, se utiliza EDD para ordenar
estos puestos de trabajo.
• Regla SPT / EDD
Parallel Machine Models
Un problema de programación para máquinas en paralelo consta de
dos pasos:
1. Asignación de trabajo a las máquinas.
2. Generación de la secuencia de los trabajos en cada máquina.
• Un makespan mínimo representa una carga equilibrada en las
máquinas.
• Se puede mejorar un schedule incluso si todos los trabajos se
liberan al mismo tiempo.
• La mayoría de schedules óptimos para máquinas en paralelo no
tienen demora.
 Excepción: 𝑅𝑚 Σ 𝐶𝑗
• Suposición general para todos los problemas: 𝑃1 ≥ 𝑃2 ≥ … ≥ 𝑃𝑛
Parallel Machine Models
𝑃𝑚 || 𝐶𝑚𝑎𝑥
• El problema es NP-hard.
Algoritmo Heurístico: Mayor tiempo de
procesamiento primero regla (LPT) siempre que una
máquina está libre, el trabajo más largo entre los que
aún no está procesado se pone en esta máquina.
Ejemplo:
Jobs 1 2 3 4 5 6 7 8 9
𝑃𝑗 7 7 6 6 5 5 4 4 4

• 4 maquinas en paralelo.
Parallel Machine Models
𝑃𝑚 || 𝐶𝑚𝑎𝑥
Ejemplo:
• 4 maquinas en paralelo.
Jobs 1 2 3 4 5 6 7 8 9
𝑃𝑗 7 7 6 6 5 5 4 4 4

𝐶𝑚𝑎𝑥 𝐿𝑃𝑇 = 15 = 7 + 4 + 4
Parallel Machine Models
𝑝∞ | 𝑝𝑟𝑒𝑐 | 𝐶𝑚𝑎𝑥
𝑝𝑚 𝑝𝑟𝑒𝑐 𝐶𝑚𝑎𝑥 𝑐𝑜𝑛 2 ≤ 𝑚 < ∞ es fuertemente NP-
hard incluso para las cadenas.

Caso especial 𝑚 ≥ 𝑛: 𝑝∞ | 𝑝𝑟𝑒𝑐 | 𝐶𝑚𝑎𝑥


a) Iniciar todos los trabajos sin antecesor en el
tiempo 0.
b) Cada vez que termina un trabajo, comenzar de
inmediato a todos sus sucesores para los que se
han completado todos los predecesores.
Critical Path Method (CPM)
Project Evaluation and Review Technique (PERT)
Parallel Machine Models
𝑝∞ | 𝑝𝑟𝑒𝑐 | 𝐶𝑚𝑎𝑥
 Critical Path Method (CPM)
El trabajo en la cabecera de la cadena más larga de puestos de
trabajo en el gráfico de restricciones de precedencia tiene la más
alta prioridad.
𝑃𝑚 | 𝑝𝑗 = 1, 𝑡𝑟𝑒𝑒 | 𝐶𝑚𝑎𝑥 es solucionable con la regla CPM

Largest Number of Successors first (LNS)


El trabajo con el mayor número total de sucesores en el gráfico de
restricciones de precedencia tiene la más alta prioridad.
LNS es también optimo para 𝑃𝑚 | 𝑝𝑗 = 1, 𝑜𝑢𝑡𝑡𝑟𝑒𝑒 | 𝐶𝑚𝑎𝑥
Para arboles y cadenas, LNS es idéntica a la regla CPM.
Parallel Machine Models
Ejemplo: CPM para
Parallel Machine Models
Ejemplo: LNS para
Parallel Machine Models
𝑝𝑚 |𝑝𝑟𝑚𝑝| 𝐶𝑚𝑎𝑥
• Se utiliza formulación de programación lineal.
• La variable 𝑿𝒊𝒋 representa el tiempo total que gasta el
trabajo j en la máquina i.
Parallel Machine Models
𝑝𝑚 |𝑝𝑟𝑚𝑝| 𝐶𝑚𝑎𝑥
• La solución de un problema de programación lineal produce
el procesamiento de cada trabajo en cada máquina.
• Un programa de operaciones se genera en adición.

Algoritmo para Minimizar el makespan con preemptions:


1. Procesar sin retardo todos los trabajos en una sola
máquina y sin preferencia ⇒ 𝑚𝑎𝑘𝑒𝑠𝑝𝑎𝑛 ≤ 𝑚 • 𝐶 ∗𝑚𝑎𝑥
2. Cortar la programación en m partes.
3. La ejecución de cada parte en una maquina diferente.
Parallel Machine Models
𝑝𝑚 |𝑝𝑟𝑚𝑝| 𝐶𝑚𝑎𝑥
Longest Remaining Processing Time first (LRPT)
• Versión de preferencia Longest Processing Time
first (LPT)
• Este método puede generar un número infinito de
preemptions.

Ejemplo: Consideremos dos máquinas y tres trabajos


1, 2 y 3, con tiempos de procesamiento 8, 7 y 6.
Parallel Machine Models
𝑝𝑚 |𝑝𝑟𝑚𝑝| 𝐶𝑚𝑎𝑥
Longest Remaining Processing Time first (LRPT)

Ejemplo: Consideremos dos máquinas y tres trabajos


1, 2 y 3, con tiempos de procesamiento 8, 7 y 6.

𝐶𝑚𝑎𝑥 (𝐿𝑅𝑃𝑇) = 11
Parallel Machine Models
𝑃𝑚 |𝑝𝑟𝑚𝑝| 𝐿𝑚𝑎𝑥
Longest Remaining Processing Time first (LRPT)

Ejemplo: Consideremos 2 máquinas y 4 trabajos con


los siguientes tiempos de procesamiento.
Parallel Machine Models
𝑃𝑚 || Σ 𝐶𝑗 y 𝑃𝑚 |𝑝𝑟𝑚𝑝| Σ 𝐶𝑗
La regla SPT es óptima para 𝑃𝑚 || Σ 𝐶𝑗
• La prueba se basa en el mismo argumento que en
una sola máquina.
Ejemplo: Jobs 1 2 3 4
𝑃𝑗 3 6 5 4
• 2 maquinas en paralelo
1 3

4 2
Parallel Machine Models
𝑄𝑚 𝑝𝑟𝑚𝑝 𝐶𝑚𝑎𝑥
Longest Remaining Processing Time on the Fastest Machine
first (LRPT – FM) produce una programación óptima con
infinitamente preemptions para 𝑄𝑚 𝑝𝑟𝑚𝑝 𝐶𝑚𝑎𝑥

En cualquier punto en el tiempo se le asigna el trabajo con


el mayor tiempo de procesamiento restante a la máquina
más rápida.
Un trabajo puede procesarse en más de una máquina en
paralelo, si las máquinas se derivan de la misma máquina.
La regla LRPT-FM también es optima si se aplica a:
𝑄𝑚 𝑟𝑗 , 𝑝𝑟𝑚𝑝 𝐶𝑚𝑎𝑥
Parallel Machine Models
𝑄𝑚 𝑝𝑟𝑚𝑝 𝐶𝑚𝑎𝑥
Ejemplo de aplicación de la regla LRPT-FM:
• 2 máquinas con velocidades 𝑉1 = 2 ; 𝑉2 = 1
• 3 trabajos con tiempos de procesamiento 8, 7 y 6.
Parallel Machine Models
𝑄𝑚 𝑝𝑟𝑚𝑝 Σ 𝐶𝑗
𝑄𝑚 𝑝𝑟𝑚𝑝 Σ 𝐶𝑗 pueden solucionarse con la regla Shortest
Remaining Processing Time on the Fastest Machine (SRPT-FM)

Supuesto: hay n máquinas.


 Si hay más trabajos que máquinas, entonces se añaden las
máquinas faltantes con velocidad 0.
 Si hay más máquinas que trabajos, entonces no se utilizan
las máquinas más lentas.
 Preemptions sólo se les permite en puntos enteros en el
tiempo.
Parallel Machine Models
Ejemplo: 𝑄𝑚 𝑝𝑟𝑚𝑝 Σ 𝐶𝑗
Parallel Machine Models
𝑃𝑚 || Σ 𝑤𝑗 𝐶𝑗
La regla WSPT es óptima para 𝑃𝑚 || Σ 𝑤𝑗 𝐶𝑗

Ejemplo:
• 2 maquinas en paralelo y 4 trabajos
Jobs 1 2 3 4
𝑝𝑗 5 3 4 8
𝑤𝑗 1 3 2 4
𝑤𝑗 /𝑝𝑗 0,2 1 0,5 0,5
Parallel Machine Models
𝑃𝑚 || Σ 𝑤𝑗 𝐶𝑗
Solución Ejemplo:
• 2 maquinas en paralelo y 4 trabajos
Jobs 2 3 4 1
𝑝𝑗 3 4 8 5
𝑤𝑗 3 2 4 1
𝑤𝑗 /𝑝𝑗 1 0,5 0,5 0,2
𝐶𝑗1 3 0 11 0
𝐶𝑗2 0 4 0 9
𝑤𝑗 𝑐𝑗 9 8 44 9
Σ 𝑤𝑗 𝐶𝑗 = 70
Parallel Machine Models
𝑅𝑚 Σ𝐶𝑗
𝑹𝒎 : m máquinas independientes en paralelo.

Ejemplo: 2 máquinas y 3 trabajos.


Jobs 1 2 3
𝑃1 4 5 3
𝑃2 8 9 3

You might also like