Vous êtes sur la page 1sur 41

Programación de

operaciones
LUIS VILLARREAL LÓPEZ
Contenido del Tema

1. Entorno de la programación de operaciones


2. Programación de una máquina
3. Programación de varias máquinas
4. Programación Job Shop
5. Programación Flow Shop
6. Algoritmo de Johnson
7. Algoritmo de cuello de botella móvil
Introducción
Introducción

 Programar es el proceso de organizar, elegir y dar tiempos al uso de recursos para llevar a
cabo todas las actividades necesarias, para producir las salidas deseadas en los tiempos
deseados, satisfaciendo a la vez un gran número de restricciones de tiempo y relaciones
entre las actividades y los recursos.

 Un programa especifica el tiempo en el que comienza y termina cada trabajo en cada


máquina, al igual que en cualquier otro recurso adicional que se necesite,

 Una secuencia es un orden simple de trabajos; 3-1-2 indica que el trabajo 3 se hace
primero, luego el 1 y por último el trabajo 2.
Introducción

 Si cada trabajo comienza tan pronto como es posible y se procesa sin interrupción para un
tiempo dado de procesamiento, la secuencia determina los tiempos de inicio y terminación
y, por lo tanto, determina la programación.

 Determinar la "mejor" secuencia parece sencillo; sólo se enumeran todas las secuencias y se
elige la que optimiza alguna medida de desempeño. Para 32 trabajos, el número de
secuencias posibles es:
32! ≈ 2,63 × 1035
 Suponga que un computador puede revisar 1000 millones de secuencias por segundo. ¿En
cuanto tiempo se revisarían todas las secuencias (en siglos)?
8,34 × 1016 siglos

ES UN PROBLEMA NP-HARD
1. Entorno de la programación de operaciones

 Trabajos

 Máquinas

 Medición
1.1 Trabajos

 Los trabajos son actividades a realizar. Una orden de producción especifica el numero de
partes idénticas que deben hacerse y una fecha de entrega para el trabajo.

 Los trabajos pueden tener diferentes interpretaciones de acuerdo con el contexto: clientes
para atender en un restaurante, aviones que van a aterrizar en un aeropuerto, clientes a ser
atendidos en un banco…

 Se supone que cada trabajo tiene un tiempo de procesamiento conocido.

 A menos que se establezca de otra manera, una vez que comienza a realizarse un trabajo,
debe procesarse continuamente hasta terminarlo; es decir, no se permiten interrupciones.
1.1 Trabajos

 Un trabajo también puede tener una fecha de inicio (o fecha de distribución de la orden),
antes de la cual el procesamiento no puede comenzar.

 Un trabajo puede depender de otro. Un tipo de dependencia ocurre cuando un trabajo


debe preceder a otro.

 Otro tipo de dependencia ocurre cuando el tiempo necesario para un trabajo depende de
que el trabajo anterior sea procesado. Si el trabajo 1 necesita un conjunto de herramientas
en una máquina y el trabajo 2 necesita otro, entonces después de procesar el trabajo 1
debe cambiarse el herramental antes de procesar el trabajo 2. Si el trabajo 3 necesita las
mismas herramientas que el trabajo 1, entonces la secuencia 1-2-3 requiere más
preparaciones que la secuencia 1-3-2. Esto se conoce como tiempo de preparación
dependiente de la secuencia
1.1 Trabajos

 Si los tiempos de preparación no dependen de la secuencia, se pueden incluir en el tiempo


de procesado.

 Se supone que los trabajos son independientes a menos que se diga lo contrario.

 Se supone además que, si debe procesarse un trabajo en más de una máquina, el trabajo
sólo puede procesarse en una máquina a la vez; es decir, no se puede hacer otro trabajo al
mismo tiempo
1.2 Máquinas

 Las máquinas procesan trabajos. En la manufactura, una máquina puede ser un equipo
que realiza una operación específica. (un taladro, un torno, una fresadora)

 Las máquinas pueden tener diferentes interpretaciones de acuerdo con el contexto: un


cajero en un banco, una pista de aterrizaje, un mesero en un restaurante…

 Los entornos de las máquinas se dividen en varias clases:


 una sola máquina
 máquinas paralelas
 talleres de producción continua (Flow Shop)
 producción intermitente (Job Shop)
 plantas abiertas
1.2.1 Una sola máquina

 Se tiene una sola máquina y deben


procesarse en ella todos los trabajos.

 La máquina puede procesar solamente un


trabajo a la vez.

 Una vez que el trabajo se ha procesado en


la maquina, esta queda disponible para
recibir otro trabajo.

 Ejemplos…
1.2.2 Máquinas paralelas

 Cuando varias máquinas (servidores) pueden realizar el mismo tipo de procesamiento se llaman
máquinas paralelas.

 Un trabajo se puede procesar en cualquiera de las máquinas, y una vez procesado por
cualquiera de ellas, queda terminado.

 A menos que se diga lo contrario, se supone que todas las máquinas paralelas son idénticas.

 El tiempo para procesar un trabajo en una de varias máquinas idénticas es independiente de


qué máquina lo haga

 Ejemplos…
1.2.2 Máquinas paralelas
1.2.3 Taller de producción continua – Flow Shop

 Un taller de producción continua contiene máquinas diferentes. Cada trabajo debe


procesarse en cada máquina exactamente una vez.

 Más aún, todos los trabajos siguen la misma ruta; esto es, deben visitar las máquinas en el
mismo orden.

 Se pueden numerar las máquinas de manera que la 1 sea la primera, la 2 la segunda, y así
sucesivamente. Un trabajo no puede comenzar su procesado en la segunda máquina
hasta no terminar el de la primera

 Las líneas de ensamble y las células son ejemplos típicos de producción continua.
1.2.3 Taller de producción continua – Flow Shop
1.2.4 Taller de producción intermitente – Job Shop

 Un taller de producción intermitente es más


general que el de producción continua:
cada trabajo tiene una ruta única.

 Los talleres de metalmecánica son con


frecuencia intermitentes.

 Un trabajo debe pasar por el torno,


después por un taladro y luego a un
molino; mientras que otro irá al molino y
luego al torno, pero nunca pasa por el
taladro
1.2.5 Talleres abiertos

 Los talleres abiertos son aquellos en los que los trabajos no tienen una ruta específica.

 Un ejemplo sería un taller mecánico (de reparación de automóviles).

 Los vehículos necesitan reparaciones múltiples que requieren distintos equipos, pero el
orden de las reparaciones carece de importancia.

 Los talleres abiertos son poco usuales en el mundo de la manufactura.


1.3 Medición

 El mejor programa implica una medida de desempeño. Maximizar la ganancia o minimizar


el costo son medidas obvias.

 Desafortunadamente, es difícil estimar los parámetros financieros que relacionen un


programa con costo o ganancia.

 Por otro lado, no se conocen algoritmos eficientes para optimizar la ganancia o el costo en
modelos de programación de la producción.

 Se usan objetivos sustitutos para aproximar algunos costos relevantes. Las medidas sustituías,
por lo general, son funciones de tiempos de terminación para un programa dado.
1.3 Medición

 La mayoría de los sustitutos son medidas normales.

 Una medida normal es una función del tiempo de terminación, en la que el objetivo es
minimizar la función y donde esa función sólo se incrementa si al menos un tiempo de
terminación en el programa aumenta.
1.3 Medición

𝑛= número de trabajos que serán 𝐶𝑗 = tiempo de terminación del trabajo 𝑗


procesados 𝑗 = 1, … , 𝑛
𝐹𝑗 = 𝐶𝑗 − 𝑟𝑗 tiempo de flujo del trabajo 𝑗
𝑚= número de máquinas 𝑖 = 1, … , 𝑛 𝐿𝑗 = 𝐶𝑗 − 𝑑𝑗 retraso del trabajo 𝑗 𝐿𝑗 < 0 denota
anticipación
𝑝𝑖𝑗 = tiempo de procesamiento del
𝑇𝑗 = 𝑚𝑎𝑥 0, 𝐿𝑗 tardanza del trabajo 𝑗
trabajo 𝑗 en la máquina 𝑖
𝐸𝑗 = 𝑚𝑎𝑥 0, −𝐿𝑗 adelanto del trabajo 𝑗
𝑟𝑗 = tiempo de liberación de la orden
del trabajo 𝑗 (momento en el que se 𝑈𝑗 = variable binaria. 1 si el trabajo 𝑗 se atrasa y 0 si
encuentra disponible) está a tiempo o se adelanta

𝐶𝑚𝑎𝑥 = 𝑚𝑎𝑥𝑗=1,𝑛 𝐶𝑗 tiempo máximo de finalización


𝑑𝑗 = fecha de entrega del trabajo 𝑗 de todos los trabajos

𝑤𝑗 = ponderación (importancia) del 𝐿𝑚𝑎𝑥 = 𝑚𝑎𝑥𝑗=1,𝑛 𝐿𝑗 retraso máximo de todos los


trabajos
trabajo 𝑗 respecto a los otros
trabajos 𝑇𝑚𝑎𝑥 = 𝑚𝑎𝑥𝑗=1,𝑛 𝑇𝑗 tardanza máxima de todos los
trabajos
2. Programación de una máquina

 El proceso de determinar el pedido en una máquina o en un centro de trabajo se llama


secuenciación o también secuenciación por prioridades.

 Las reglas de prioridad son reglas usadas para obtener una secuenciación de los trabajos. Las
reglas pueden ser muy simples y pedir únicamente que los trabajos se ordenen de acuerdo con
un dato, como el tiempo de procesamiento, plazo u orden de llegada.

 Otras reglas, aunque también simples, requieren más datos, casi siempre para obtener un
número indicador, como la regla del menor margen de tiempo y la regla de la proporción crítica
(que se definen más abajo).

 Otras más, como la regla de Johnson, se aplican a la programación de trabajos en una


secuencia de máquinas y requieren un procedimiento de cómputo para especificar el orden de
desempeño
2.1 Reglas de secuenciación
2.2 Objetivos

1. Tiempo de flujo total: σ 𝐹𝑗 = σ 𝐶𝑗 − 𝑟𝑗 =


σ 𝐶𝑗 − σ 𝑟𝑗 si 𝑟𝑗 = 0 entonces σ 𝐶𝑗
Trabajo j 1 2 3 4 5
a. SPT minimiza σ 𝐹𝑗 y σ 𝐶𝑗 pj 4 2 3 2 4 suma de Cj 39
dj 16 10 7 7 5 Cj promedio: 7,8
b. También resulta de interés calcular el
σ 𝐹𝑗
Tiempo de flujo promedio: SPT 2 4 3 1 5 suma de Lj -6
𝑛
Cj 2 4 7 11 15 Lj promedio: -1,2
Lj -8 -3 0 -5 10
2. Retraso total: σ 𝐿𝑗 = σ 𝐶𝑗 − 𝑑𝑗 = σ 𝐶𝑗 − σ 𝑑𝑗
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
a. SPT minimiza σ 𝐿𝑗 Gantt
2 4 3 1 5
b. También resulta de interés calcular el
σ 𝐿𝑗
Retraso promedio:
𝑛
2.2 Objetivos

3. Tiempo de flujo total ponderado: σ 𝑤𝑗 𝐹𝑗


Trabajo j 1 2 3 4 5
si 𝑟𝑗 = 0 entonces σ 𝑤𝑗 𝐶𝑗
pj 4 2 3 2 4
wj 1 4 3 1 3
wj / pj 0,25 2 1 0,5 0,75
a. WSPT minimiza σ 𝑤𝑗 𝐹𝑗 y σ 𝑤𝑗 𝐶𝑗
WSPT 2 3 5 4 1
Cj 2 5 9 11 15 suma de wj Cj 76
b. WSPT es asignar en orden decreciente
𝑤 wj Cj 8 15 27 11 15 wj Cj promedio 15,2
de acuerdo al indicador 𝑗ൗ𝑝𝑗
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Gantt
2 3 5 4 1
c. También resulta de interés calcular el
σ 𝑤𝑗 𝐹𝑗
Tiempo de flujo promedio:
𝑛
2.2 Objetivos

4. Makespan – máximo tiempo de Trabajo j 1 2 3 4 5


finalización: 𝐶𝑚𝑎𝑥 = 𝑚𝑎𝑥𝑗=1,𝑛 𝐶𝑗
pj 4 2 3 2 4
a. SPT minimiza 𝐶𝑚𝑎𝑥 dj 16 10 7 7 5

EDD 5 3 4 2 1
Cj 4 7 9 11 15
5. Retraso máximo: 𝐿𝑚𝑎𝑥 = 𝑚𝑎𝑥𝑗=1,𝑛 𝐿𝑗
Lj -1 0 2 1 -1 Lmax 2
a. EDD minimiza 𝐿𝑚𝑎𝑥
Tj 0 0 2 1 0 Tmax 2

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Gantt
5 3 4 2 1
6. Tardanza máxima 𝑇𝑚𝑎𝑥 = 𝑚𝑎𝑥𝑗=1,𝑛 𝑇𝑗
donde 𝑇𝑗 = 𝑚𝑎𝑥 0, 𝐿𝑗
a. EDD minimiza 𝑇𝑚𝑎𝑥
2.2 Objetivos

7. Número de trabajos tardíos: σ 𝑈𝑗 Trabajo j 1 2 3 4 5


pj 4 2 3 2 4
Si es posible tener todos los trabajos a tiempo, EDD no dj 16 10 7 7 5
genera trabajos tardíos. Sin embargo, si no todos los
EDD 5 3 4 2 1
trabajos pueden salir a tiempo, aunque ningún trabajo
Cj 4 7 9 11 15
salga demasiado tarde, muchos (o incluso todos)
pj 4 3 2 2 4
pueden salir tarde. Para evitar esto, se puede utilizar el
Tj 0 0 2 1 0
algoritmo de Hodgson:
Uj 0 0 1 1 0 suma de U j 2
a. Primero se aplica EDD
3 4 2 1 5
b. Luego, se busca el primer trabajo con tardanza; de Cj 3 5 7 11 15
los trabajos anteriores se busca el trabajo con Tj 0 0 0 0 10
mayor tiempo de producción y se elimina de la Uj 0 0 0 0 1 suma de U j 1
secuencia (pasa al final).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
c. De los trabajos que quedan se calcula la tardanza. Gantt
3 4 2 1 5
Si todos van a tiempo, se termina el procedimiento,
sino se repite el proceso,
2.2 Objetivos

8. Número de trabajos tardíos ponderados: Trabajo j 1 2 3 4 5


σ 𝑤𝑗 𝑈𝑗 pj 4 2 3 2 4
dj 16 10 7 7 5
Para esta función se puede utilizar el algoritmo wj 1 4 3 1 3

de Hodgson: wj / pj 0,25 2 1 0,5 0,75

a. Primero se aplica EDD EDD 5 3 4 2 1


Cj 4 7 9 11 15
b. Luego, se busca el primer trabajo con wj / pj 0,75 1 0,5 2 0,25
tardanza; de los trabajos anteriores se Tj 0 0 2 1 0
𝑤
busca el trabajo con menor 𝑗ൗ𝑝𝑗 y se Uj 0 0 1 1 0 suma de U j 2
elimina de la secuencia (pasa al final).
5 3 2 1 4
c. De los trabajos que quedan se calcula la Cj 4 7 9 13 15
tardanza. Si todos van a tiempo, se termina Tj 0 0 0 0 8

el procedimiento, sino se repite el proceso. Uj 0 0 0 0 1 suma de U j 1

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Gantt
3 4 2 1 5
3. Programación de máquinas paralelas

 Se supone que cualquier trabajo se puede procesar en cualquiera de las máquinas.

 El tiempo para procesar el trabajo es el mismo en cualquiera de ellas.

 Los trabajos consisten en una sola operación y una vez que comienza el procesamiento
debe terminarse

 La decisión comprende dos aspectos: ¿Qué máquina procesa el trabajo? Y ¿En qué orden?
3.1 Tiempo de flujo y retraso

 Se puede aplicar SPT minimiza σ 𝐹𝑗 , σ 𝐶𝑗 y σ 𝐿𝑗 realizando la asignación a la máquina con


menor tiempo acumulado de procesamiento.
 Asimismo, WSPT minimiza σ 𝑤𝑗 𝐹𝑗 y σ 𝑤𝑗 𝐶𝑗
Trabajo j 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
pj 1 3 4 6 9 10 10 11 12 13 13 14 16 18 19

Máquina 1 Máquina 1 Máquina 1


j pj Cj j pj Cj j pj Cj
1 1 1 2 3 3 3 4 4
4 6 7 5 9 12 6 10 14
7 10 17 8 11 23 9 12 26
10 13 30 11 13 36 12 14 40
13 16 46 14 18 54 15 19 59

suma de Cj 372
Cj promedio: 24,8
3.1 Tiempo de flujo y retraso

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
M1
1 4 7 10 13

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
M2
2 5 8 11 14

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
M3
3 6 9 12 15
3.2 Lapso de producción

 Si se quiere minimizar el tiempo durante el cual la planta tiene que trabajar, LPT (Longest
processing time – tiempo de producción más largo) genera una buena aproximación
aunque no es óptimo en muchos casos:
Trabajo j 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
pj 1 3 4 6 9 10 10 11 12 13 13 14 16 18 19

Máquina 1 Máquina 1 Máquina 1


j pj Cj j pj Cj j pj Cj
15 19 19 14 18 18 13 16 16
10 13 32 11 13 31 12 14 30
7 10 42 8 11 42 9 12 42
4 6 48 5 9 51 6 10 52
3 4 52 2 3 54 1 1 53

suma de Cj 582
Cj promedio: 38,8
3.2 Lapso de producción

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
M1
15 10 7 4 3

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
M2
14 11 8 5 2

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
M3
13 12 9 6 1

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
M1
15 10 7 4 3 1

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
M2
14 9 8 5 2

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
M3
13 12 11 6
3.3 Lapso de producción y Tiempo de flujo

 Si ambas medidas son importantes: primero se aplica LPT y luego SPT para cada máquina

Trabajo j 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
pj 1 3 4 6 9 10 10 11 12 13 13 14 16 18 19

Máquina 1 Máquina 1 Máquina 1 Máquina 1 Máquina 1 Máquina 1


j pj Cj j pj Cj j pj Cj j pj Cj j pj Cj j pj Cj
15 19 19 14 18 18 13 16 16 3 4 4 2 3 3 1 1 1
10 13 32 11 13 31 12 14 30 4 6 10 5 9 12 6 10 11
7 10 42 8 11 42 9 12 42 7 10 20 8 11 23 9 12 23
4 6 48 5 9 51 6 10 52 10 13 33 11 13 36 12 14 37
3 4 52 2 3 54 1 1 53 15 19 52 14 18 54 13 16 53

suma de Cj 582 suma de Cj 372


Cj promedio: 38,8 Cj promedio: 24,8
3. Flow Shop

 El proceso consta de varias operaciones que se desarrollan de manera secuencial

 Todos los trabajos se procesan en el mismo orden, de manera que se pueden numerar las
máquinas: 1 para la primera operación, 2 para la segunda y así sucesivamente.

 Las células dedicadas son buenos ejemplos de Flow Shop (producción continua), donde una
familia, o grupo de partes se produce en una célula.

 Se supone que cada trabajo debe procesarse en todas las máquinas en el mismo orden, aunque
los tiempos pueden ser diferentes.

 Si un trabajo no debe pasar por una máquina, el tiempo de procesamiento es cero.

 El objetivo es minimizar el lapso de producción. También minimiza el tiempo promedio de flujo.


3.1 Lapso de producción - Flow Shop con
dos máquinas: algoritmo de Johnson

Trabajos
Máquinas 1 2 3 4
M1 M2 1 5 4 3 2
2 2 5 2 6

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
M1
1 2 3 4

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
M2
1 2 3 4
3.1 Lapso de producción - Flow Shop con
dos máquinas: algoritmo de Johnson

Trabajos
Máquinas 1 2 3 4
M1 M2 1 5 4 3 2
2 2 5 2 6

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
M1
1 2 3 4

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
M2
1 2 3 4
3.1 Lapso de producción - Flow Shop con
dos máquinas: algoritmo de Johnson

 La solución es una permutación

 𝑝𝑖𝑗 = tiempo de procesamiento del trabajo 𝑗 en la máquina 𝑖

 Regla: el trabajo 𝑗 precede al trabajo 𝑗 + 1 si: 𝑚𝑖𝑛 𝑝1𝑗 , 𝑝2𝑗+1 < 𝑚𝑖𝑛 𝑝1𝑗+1 , 𝑝2𝑗 . Esta regla se
puede implementar de la siguiente manera:

1. Hacer una lista de los valores 𝑝1𝑗 𝑦 𝑝2𝑗 en dos columnas (filas)
2. Buscar el menor 𝑝𝑖𝑗 . Si esta en la máquina 1 programarlo como primer trabajo, si está en la máquina
2 programarlo de último.
3. Tachar los trabajos cuando se programan. El procedimiento termina cuando se programen todos
los trabajos.
3.1 Lapso de producción - Flow Shop con
dos máquinas: algoritmo de Johnson

Trabajos
Máquinas 1 2 3 4
1 5 4 3 2 Primero el trabajo 4
2 2 5 2 6 se envia el trabajo 1 al final
se envia el trabajo 3 de penultimo
Johnson 4 2 3 1 se deja el trabajo 2 de segundo

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
M1
4 2 3 1

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
M2
4 2 3 1
3.2 Algoritmo de Johnson para tres máquinas

 La solución es una permutación si el objetivo es minimizar el flujo

 El problema de tres máquinas puede reducirse a uno de dos máquinas si se satisface la


siguiente condición: min 𝑝1𝑗 ≥ max 𝑝2𝑗 o bien que min 𝑝3𝑗 ≥ max 𝑝2𝑗

 Solo es necesario que satisfaga cualquiera de las condiciones. Si es así, el problema se


reduce a uno de dos máquinas: de la siguiente manera:

1. Sea 𝑝𝐴𝑗 = 𝑝1𝑗 + 𝑝2𝑗 y 𝑝𝐵𝑗 = 𝑝2𝑗 + 𝑝3𝑗


2. Resuelva el problema de dos máquinas con 𝑝𝐴𝑗 y 𝑝𝐵𝑗
3.2 Algoritmo de Johnson para tres máquinas

Máquinas Máquinas
1 2 3 1 2
1 4 5 8 1 9 13 Último el trabajo 3
2 9 6 10 2 15 16 primero el trabajo 1
Trabajos 3 8 2 6 Trabajos 3 10 8 segundo el trabajo 4
4 6 3 7 4 9 10 tercero el trabajo 5
5 5 4 11 5 9 15 cuarto el trabajo 2

min(p1j) 4 Johnson 1 4 5 2 3
max(p2j) 6
min(p3j) 6
4. Job Shop

 Existe cierto número de trabajos que usan las mismas máquinas pero en orden diferente

 Algoritmo de Jackson

Vous aimerez peut-être aussi