2. Planeación del proceso
Planeación estratégica de la capacidad
Planeación agregada
Programa maestro de producción
Planeación de requerimientos de
materiales
Programación de pedidos Programación semanal de fuerza
laboral y clientes
Programación diaria de fuerza
laboral y clientes
Largo
plazo
Mediano
plazo
Corto
plazo
Manufactura Servicios
4
3. PARÁMETROS
n = número de trabajos que serán procesados
m = número de máquinas
pik = tiempo de procesado del trabajo i en la máquina k
(pi si m = 1)
ri = tiempo de liberación de la orden (o fecha de
distribución) del trabajo i
di = fecha de entrega del trabajo i
wi = ponderación (importancia o valor) del trabajo
i respecto a los otros trabajos.
4. MEDICIONES
Ci = tiempo de terminación del trabajo i
Fi = Ci – ri, tiempo de flujo del trabajo i (Fi>0)
Li = Ci – di, retraso del trabajo i (Li < 0 denota anticipación
Ti = máx {0,Li}, tardanza del trabajo i
Ei = máx {0, -Li}, adelanto del trabajo i
δi = 1 si el trabajo i se atrasa (es decir, si Ti > 0)
δi = 0 si el trabajo i está a tiempo o se adelanta (es decir,
si Ti = 0)
Cmáx = máx i=1,n {Ci}, tiempo máximo de terminación de
todos los trabajos o lapso
Lmáx = máx i=1,n {Li}, retraso máximo de todos los trabajos
Tmáx = máx i=1,n {Ti}, tardanza máxima de todos los
trabajos
5. GRÁFICAS DE GANTT
Trabajo Tiempo procesamiento / núm. máquina Fecha de
distribución
Fecha de
entregaOperación 1 Operación 2 Operación 3
1
2
3
4
4/1
1/2
3/3
3/2
3/2
4/1
2/2
3/3
2/3
4/3
3/1
1/1
0
0
0
0
16
14
10
8
Considere la secuencia 2-1-4-3 en la máquina 1, la secuencia 2-4-3-1 en la
máquina 2 y la 3-4-2-1 en la máquina 3
M1 2(2) 1(1) 4(3) 3(3)
M2 2(1) 4(1) 3(2) 1(2)
M3 3(1) 4(2) 2(3) 1(3)
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
7. EJERCICIO
Utilice el programa descrito en la gráfica de Gantt y (16, 10, 14, 8) como el vector
de fechas de entrega para dar los valores de
a) Lapso
b) Tiempo de flujo total
c) Tardanza total
d) Retraso total
e) Número de trabajo tardíos
M1 3 4 1 2
M2 1 3 2 4
M3 2 3 1 4
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
8. M = 1 ----------- MINIMIZAR TIEMPO DE FLUJO
¿Cómo programo los trabajos de manera que se minimice el
tiempo de flujo total?
Si se tienen n trabajos programados, 1-2-…-(n-1)-n, el
tiempo de flujo total F es:
F = p1 + (p1+p2) + (p1+p2+p3) + … + (p1+p2+p3+…pn)
Arreglando los términos se tiene:
F = np1 + (n-1)p2 + (n-2)p3 + … + pn
Parece lógico que el trabajo en la primera posición tenga el
menor tiempo de procesamiento, porque entra en la cuenta n
veces.
La mejor secuencia es ordenarlos de acuerdo con el tiempo de
procesado más corto (TPC)
9. SECUENCIA TPC
La secuencia TPC minimiza el tiempo total que
tardan todos los trabajos en el sistema, ya que
los tiempos en que se mandan las órdenes son
cero y, por lo tanto, minimiza el tiempo de
espera total.
El TPC también minimiza el número promedio
de trabajos esperando a ser procesados, o sea
el inventario promedio de trabajo en proceso,
medido en número de trabajos.
10. M = 1 ------------- MINIMIZAR RETRASO TOTAL
Li = Ci – di
ΣLi = Σ(Ci – di) = Σci – Σdi
Como Σdi es constante para cualquier programa,
al minimizar el tiempo de terminación total
también se minimiza el retraso total.
Entonces el TPC minimiza el retraso total
11. M = 1 -------------- MINIMIZAR TIEMPO DE FLUJO
PONDERADO
Sea wi el peso o valor del trabajo i, donde un peso más grande significa
que el trabajo es más importante o más valioso.
Sea [i] el índice del trabajo programado en la i-ésima posición
C[i] = p[1] + p[2] + … + p[i]
ΣwiCi = w1C1 + w2C2 + … + wnCn
Si todos los trabajos tienen el mismo peso, la secuencia TPC es óptima.
Si todos los trabajos tienen el mismo tiempo de procesado, parece
natural realizar el de mayor peso primero, el segundo más grande
después, etc.
Entonces, un trabajo con tiempo de procesado pequeño y peso alto
debe programarse primero.
Se puede lograr calculando la razón de tiempo de procesado entre peso
y ordenar los trabajos según el orden no decreciente de estas razones:
secuencia de tiempo de procesado ponderado más corto (TPPC), que
minimiza el tiempo de flujo ponderado.
12. M = 1 ---- MINIMIZAR TARDANZA Y RETRASO MÁXIMOS
Cuando la satisfacción del cliente es la medida de
desempeño importante.
TPC no considera las fechas de entrega.
Tmáx es medida orientada a las fechas de entrega. Se
quiere que el trabajo más tardío tenga la menor
tardanza posible. (“El grito más sonoro del cliente sea
tan bajo como sea posible”).
Se puede demostrar el teorema que indica que
colocando primero el trabajo con la fecha de entrega
más cercana, después la siguiente más cercana, etc.
Secuencia fecha de entrega más cercana (FEC),
minimiza Tmáx y Lmáx.
13. M = 1 ------ MINIMIZAR NÚMERO DE TRABAJOS
TARDÍOS
Con FEC aunque ningún trabajo salga demasiado tarde, muchos pueden
salir algo tarde. Se puede querer minimizar el número de trabajos tardíos.
Algoritmo de Hodgson:
1. Calcular tardanza para cada trabajo en secuencia FEC. Se hace NT = 0;
sea k la primera posición que contiene un trabajo tardío. Si ningún trabajo
está tarde, se va al paso 4.
2. Encontrar trabajo con tiempo de procesado más largo en las posiciones 1
a k. Sea p[j] = máx i=1,k p[i]; entonces j* = [j] es el índice del trabajo con el
tiempo de procesado más largo entre los primeros k trabajos.
3. Quitar el trabajo j* de la secuencia, se hace NT = NT + 1, y se repite el
paso 1.
4. Los NT trabajos que se quitaron se colocan al final de la secuencia, en
cualquier orden. Esta secuencia minimiza el número de trabajos tardíos.
14. M = 1 ------- MINIMIZAR NÚMERO PONDERADO DE
TRABAJOS TARDÍOS
Heurística: Aplicar el algoritmo de Hodgson,
quitando, entre los primeros k trabajos,
aquellos con el mayor cociente de tiempo de
procesado entre el peso, en lugar del tiempo
de procesado más largo.
Este método, en general, no minimiza el
número ponderado de trabajos tardíos, pero
con frecuencia proporciona buenas soluciones.
15. M = 1 --------- MINIMIZAR TIEMPO DE FLUJO SIN
TRABAJOS TARDIOS
Si las fechas de entrega son más importantes, se querrá
tener un tiempo de flujo lo más pequeño posible para
mantener todos los trabajos a tiempo.
Para que todos los trabajos estén a tiempo, el último trabajo
debe estar a tiempo.
Conjunto programable de trabajos contiene aquellos que tienen
fechas de entrega mayores o iguales que la suma de todos los
tiempos de procesado.
Entre los trabajos programables se elige el que tiene el tiempo de
procesamiento más largo y se programa como el último.
Se quita el trabajo programado del problema y se resuelve el
problema de programación de nuevo con los trabajos restantes.
El resultado es el programa óptimo que se construye eligiendo
primero el último trabajo, después el penúltimo, etc.
16. M=1 ---------- PROGRAMA DINÁMICO
• Problema estático con fechas de liberación distintas de
cero
• El TPC no necesariamente minimiza el tiempo de flujo.
• El mejor programa no es evidente y debe recurrirse a
enfoques heurísticos o enumerativos.
• El conjunto de trabajos programables contiene trabajos con
tiempo de liberación menor o igual que la fecha actual.
• Si se permiten interrupciones, se minimiza el tiempo de flujo
al programar el trabajo más corto disponible e interrumpir el
que está en proceso, si hay un trabajo con tiempo de
procesado más corto que el tiempo que le falta al trabajo en
proceso.
17. M=1 --------------- PROGRAMA DINÁMICO
• Situación dinámica
• Cada vez que se termina un trabajo, se programa el “mejor”
trabajo en el conjunto programable. El conjunto
programable se actualiza cuando llega un nuevo trabajo.
• Una desventaja de este enfoque es que un trabajo con
prioridad baja sólo se programará cuando no haya otros
trabajos que realizar, por lo que podría nunca hacerse.
• Una vez determinados los pesos, se ordenan los trabajos
según el TPPC. Una máquina disponible toma el primer
trabajo en la lista. Cuando llega un nuevo trabajo, se
vuelven a calcular los pesos y las prioridades y se hace una
nueva lista.
18. MAQUINAS PARALELAS
Maq. 1
Maq. 2
Maq. m
.…
.….…
Trabajos
1 2 …… n
¿Qué máquina procesa el trabajo y en qué orden?
Solución: Lista programada. Una lista es una secuencia de todos los trabajos.
Para crear un programa, se asigna el siguiente trabajo en la lista a la máquina
con la menor cantidad de trabajo asignado, y se continúa hasta que todos los
trabajos en la lista se asignan.
19. MÁQUINAS PARALELAS --- MÍNIMO TIEMPO DE
FLUJO
TPC minimiza el tiempo de flujo en una máquina y
es probable que la lista TPC sea un buen punto de
partida.
Se programa el trabajo con el menor tiempo de
procesado en cualquier máquina, después el
trabajo con el siguiente tiempo de procesado más
pequeño, para que comience en cuanto sea
posible en la máquina con el menor tiempo total
de procesado.
Se continúa hasta que todos los trabajos estén
programados y se obtiene un programa óptimo.
20. MÁQUINAS PARALELAS --- MÍNIMO LAPSO DE
PRODUCCIÓN
No se cuenta con un algoritmo eficiente para
minimizar el lapso. Sin embargo, la lista del
programa proporciona un buen heurístico.
Se usa primero una lista de tiempo de
procesado más largo (TPL) y se asigna el
siguiente trabajo en la lista a la maquina con el
menor tiempo de procesado total asignado.
21. MÁQUINAS PARALELAS --- OTROS MODELOS
Si la medida no es el lapso o el tiempo de flujo, el
problema de programar maquinas paralelas
idénticas es mucho más difícil.
Si la medida es Tmáx la lista FEC parece adecuada.
Para tiempo de flujo ponderado se usa TPPC.
Para número de trabajos tardíos se puede aplicar
una extensión del algoritmo de Hodgson.
Desafortunadamente ninguno de ellos garantiza
programas óptimos. Si los procesadores
(máquinas) no son idénticos, el problema puede
complicarse todavía más.
22. MÁQUINAS SECUENCIALES
Máq. 1 Máq. 2 Máq. m
Trabajos
1 2 n
…. ….
El procesado de trabajos de manera secuencial en varias máquinas, recibe el
nombre de producción continua.
23. M=2 SECUENCIAL ---- MÍNIMO LAPSO
Minimizar el lapso es equivalente a minimizar
el tiempo ocioso.
Algoritmo de Johnson:
Si un trabajo tiene un tiempo de procesado corto
en la máquina 1, debe ir al principio del programa,
mientras que uno con un tiempo corto en la
segunda máquina debe programarse al final.
El algoritmo de Johnson siempre genera un
programa óptimo.
24. LAPSO DE PRODUCCIÓN MÍNIMO CON MÁS DE
DOS MÁQUINAS
Si se tiene más de dos máquinas, el algoritmo de
Johnson no funciona excepto en casos especiales.
Un caso especial ocurre cuando la maquina intermedia
está dominada, ya sea por la primera o por la tercera.
Una máquina está dominada cuando su tiempo de
procesado más largo no es mayor que el tiempo de
procesado más corto de otra máquina. Es decir, para la
máquina intermedia: p12 <= máx{min pi1, min pi3}
Entonces se puede formar un problema equivalente de
dos máquinas con tiempos de procesado p’i1 = pi1 + pi2
y p’i2 = pi2 + pi3
25. MÁQUINAS SECUENCIALES --- OTRAS MEDIDAS
El lapso de producción se centra en la utilización
de la máquina. La utilización ha sido la medida de
desempeño más común; pero el cambio rápido en
el entorno de producción ha hecho que otras
medidas sean importantes, en particular las de
servicio al cliente como tardanza, número de
trabajos tardíos, tiempo de flujo ponderado y
adelanto.
Existen pocos resultados para otras medidas. Se
pueden encontrar heurísticas relacionadas con
fechas de entrega.
27. PRODUCCIÓN INTERMITENTE EN DOS
MÁQUINAS
Algoritmo de Jackson:
Máquina A: trabajos {AB} ordenados según el algoritmo
de Johnson, después los trabajos {A} en cualquier
orden, seguidos de los {BA} en orden inverso al
algoritmo de Johnson.
Máquina B: trabajos {BA} en orden inverso de Johnson,
trabajos {B} en cualquier orden y trabajos {AB} en el
orden de Johnson.
{A}: trabajos procesados sólo en A
{B}: trabajos procesados sólo en B
{AB}: trabajos procesados en A y después en B
{BA}: trabajos procesados en B y después en A
28. DESPACHO
(Producción intermitente m máquinas)
El enfoque más común para la producción intermitente es usar reglas de
despacho con prioridades. La idea básica es programar una operación de un
trabajo tan pronto como se pueda; si hay más de un trabajo que espera ser
procesado por la misma máquina, se programa el que tienen la mejor
prioridad.
A = conjunto de máquinas ociosas
Jk = índice del último trabajo programado en la máquina k
𝒊 𝒕
={𝑖|𝐽 𝑘 = i, k ∈ 𝐾}
Uk = conjunto de trabajos que se pueden procesar en la máquina k
Hk = tiempo de terminación del trabajo que se está procesando en la máquina
k
uit = urgencia, o prioridad, del trabajo i en el tiempo t
sij y cij son los tiempos de inicio y terminación de la operación j del trabajo i,
respectivamente.
29. DESPACHO ------Prioridades
TPC: Tiempo de procesado más corto.
PEPS: Primero en entrar, primero en servir.
MTR: Mayor trabajo restante.
FEC: Fecha de entrega más cercana.
HLG: Holgura: Tiempo hasta que el trabajo debe
entregarse.
RC: Razón crítica: Holgura entre tiempo que
queda para entregar el trabajo.
HLG/OP: Operación con holgura: Razón de holgura.
entre el número de operaciones que quedan.