• No results found

DEPARTMENT OF THE NAVY

en un intercambio por pares.

Esto implica que el tiempo de flujo total de 5" es menor que el de S, lo que contradice la suposición de que S es óptimo. Por lo tanto, un programa óptimo debe estar en el orden TPC, lo que completa la prueba.

Ejemplo 8-2. Tiempo de flujo en una sola máquina. Andre maneja SpeedCopy y tiene cinco tra- bajos en espera. Los tiempos de procesado están dados en la tabla 8-2. Al terminar los trabajos se no- tifica por teléfono a los clientes para que vengan a recogerlos. ¿En qué secuencia debe asignar Andre los trabajos para que el tiempo de espera de los clientes sea el menor posible?

Solución. Minimizar la espera total es equivalente a minimizar el tiempo de flujo; así, Andre debe

usar el TPC. Aplicando TPC a los datos se obtiene la secuencia 2-4-3-1-5. Los tiempos de termina- ción para los trabajos son C2 = 2, C4 = (2 + 2) = 4, C3 = (2 + 2 + 3) = 7, C, = (2+2 + 3 + 4) = 11 yC5 =

(2+ 2 + 3 + 4 +4) =15. Como todos los tiempos de liberación de órdenes son cero, el tiempo de flujo total es la suma de los tiempos de terminación, o sea (2 + 4 + 7 + 11 + 15) = 39. Observe que los tra- bajos 2 y 4 tienen el mismo tiempo de procesado y podrían intercambiarse sin afectar el objetivo. Es- to también es cierto para los trabajos 1 y 5.

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, puesto que todos los tiempos de procesado son constantes. Esto hará felices a los clientes si están esperando su trabajo. El TPC también minimiza el número promedio de traba- jos esperando ser procesados o, de manera equivalente, el inventario promedio de trabajo en proceso, medido en número de trabajos.

3.1.1 Retraso

Recuerde que el retraso de un trabajo i se define como L¡ = C¡ - d¡. El retraso total es

Como L d¡ 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. Con el retraso, la compensación por adelanto anula la sanción por tardanza, lo cual es poco común. Por ejem- plo, muchos profesores sancionan el trabajo entregado tarde, pero pocos dan crédito adicional por entregarlo antes del tiempo límite.

3.1.2 Tiempo de flujo ponderado

Un problema con el tiempo de flujo total mínimo es que debe suponerse que todos los trabajos tienen la misma importancia o valor, lo cual no siempre es cierto. Puede ser más importante ter- minar un trabajo a tiempo para un cliente constante que para un cliente eventual. Recuerde que

minimizar el tiempo de flujo es equivalente a minimizar el número de trabajos en inventario. Sin embargo, en general, el valor del inventario es más importante que su tamaño. Por fortuna, este problema también se puede manejar.

Sea w¡ 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. En inventarios, el peso puede ser el valor del trabajo. El valor del inventario en cualquier punto en el tiempo es el valor de los trabajos que esperan ser proce- sados. Sea [i] el índice del trabajo programado en la i-ésima posición; si el trabajo 3 se progra- ma primero, [1] = 3. El tiempo de terminación del trabajo programado en la j-ésima posición es la suma de los tiempos de procesamiento de los trabajos en las posiciones la i, o C{i] =

pm + p[2] + —H /?{,-]. Si las órdenes de todos los trabajos se mandan en el tiempo cero, el

tiempo de terminación es también el tiempo que pasan en inventario. El valor total del inventa- rio para un programa es

Como se vio en la sección 2.3, el tiempo de flujo se relaciona con el tiempo de espera del clien- te; así, si la importancia de los clientes o de los trabajos no es la misma, la medida de peso es adecuada. Por ejemplo, el peso puede ser proporcional al volumen de negocios anual en dinero que un cliente hace con la compañía.

Si todos los trabajos tienen el mismo peso, la secuencia TPC es óptima. Si todos los traba- jos tienen el mismo tiempo de procesado, parece natural realizar el de mayor peso primero, el segundo más grande después, etc. ¿Cómo pueden combinarse estas dos ideas?

Un trabajo con un tiempo de procesado pequeño y un peso alto debe programarse al frente, mientras que uno con un tiempo de procesado grande y un peso bajo debe programarse atrás. Una manera de hacer esto es observar la razón de tiempo de procesado entre peso y ordenar los trabajos según el orden no decreciente de estas razones. Por lo común, esto recibe el nombre de secuencia de tiempo de procesado ponderado más corto (TPPC). Aunque no se demostrará, el TPPC minimiza el tiempo de flujo ponderado y la prueba es análoga a la del TPC.

Ejemplo 8-3. Programación TPPC. Suponga, en el ejemplo 8-2, que no todos los trabajos tienen el mismo valor. En ese caso, al minimizar el tiempo de flujo no se minimiza el valor del servicio a los clientes, entonces se quiere usar un programa TPPC. Se puede usar el valor real en dólares de los tra- bajos, o determinar sus valores relativos. Suponga que los trabajos 1 y 4 tienen el mismo valor, los trabajos 3 y 5 tienen un valor tres veces más grande que 1 o 4, y el trabajo 2 vale cuatro veces más que 1 o 4. Entonces, los pesos que se usan son w, = 1, w2 = 4, wy = 3, w4 = 1 y w5 = 3. El cálculo de la razón del tiempo de procesamiento entre el peso da 4/1, 2/4, 3/3, 2/1 y 4/3. El trabajo 2 tiene el cociente más pequeño y se debe programar primero; la secuencia TPPC es 2-3-5-4-1, que da tiempos de ter- minación C, = 2, C, = 5, C5 = 9, C, = 11 y C. = 15. El valor del tiempo de flujo ponderado es

3.2 Tardanza máxima y retraso máximo

Si la satisfacción del cliente es la medida de desempeño importante, se deben tomar en cuenta las fechas de entrega. La secuencia TPC no considera estas fechas de entrega, por lo que los programas que son buenos respecto al tiempo de flujo, pueden ser malos para una medida

orientada a las fechas de entrega. Una medida orientada a las fechas de entrega es la tardanza máxima, 7máx. Aquí se quiere que el trabajo más tardío tenga la menor tardanza posible. Si el volumen de los gritos de un cliente es proporcional a la tardanza de su trabajo, minimizar la tar- danza máxima es hacer que el grito más sonoro sea tan bajo como sea posible (Woolsey y Swanson, 1975).

¿Cómo se ordenan los trabajos para minimizar la tardanza máxima? Sin duda, las fechas de entrega deben tomar parte, y del análisis del tiempo de flujo parece razonable colocar primero el trabajo con la fecha de entrega más cercana, después la siguiente más cercana, etc. Esta se- cuencia se llama de fecha de entrega más cercana (FEC). De nuevo, la intuición es correcta y la FEC minimiza Tmix. La demostración es similar a la prueba de que TPC minimiza la suma de

los tiempos de terminación —se supone un programa en el que FEC no es óptimo, y se usa el intercambio de pares adyacentes para demostrar que el programa FEC es mejor—. El mismo argumento demuestra que la secuencia FEC minimiza Z.máx.

Ejemplo 8-4. Tmax mínimo. Suponga que los clientes tienen fechas de entrega (16,10,7,7,5)

para los cinco trabajos del ejemplo 8-2. La secuencia FEC sería 5-3-4-2-1, y la tardanza de los trabajos es (0,0,2, 1,0), lo que da rmfa= 2.

3.3 Número de trabajos tardíos

Si es posible tener todos los trabajos a tiempo, la secuencia FEC no tiene trabajos tardíos. Sin embargo, si no todos los trabajos pueden estar a tiempo, uno de los problemas con FEC es que, aunque ningún trabajo salga demasiado tarde, muchos (o incluso todos) pueden salir algo tar- de. Cuando domina la componente de costo fijo de los trabajos retrasados, se puede querer te- ner tantos trabajos a tiempo como sea posible o, de manera equivalente, minimizar el número de trabajos tardíos. Para resolver este modelo se usó el algoritmo de Hodgson. Se da un análisis intuitivo y después se hace una presentación mucho más formal.

Primero se colocan los trabajos en el orden FEC y se calcula su tardanza. Si todos los tra- bajos van a tiempo, se termina; de otra manera se encuentra el primer trabajo tardío en la se- cuencia, al menos uno debe estar tarde en cualquier secuencia. Es necesario determinar cuál de los trabajos de este conjunto mover y en qué lugar de la secuencia debe colocarse. Como sólo se trata de minimizar el número de trabajos tardíos, cualquiera de ellos puede ponerse al final del programa, sin importar qué tan tarde esté. Esto permite que los otros trabajos tengan tiem- pos de terminación más cortos y, se espera, estén más a tiempo. Al mover el trabajo con el tiem- po de procesado más largo, se reducen los tiempos de terminación de los trabajos restantes lo más posible. Por lo tanto, de los trabajos en este conjunto, se quita el trabajo con tiempo más largo y se coloca al final de la secuencia. Los empates se pueden romper de manera arbitraria.

Recuerde que [i] es el índice del trabajo programado en la posición i. El tiempo de termina- ción para el trabajo programado en la posición i es la suma de los tiempos de procesamiento de los trabajos en las posiciones 1 a i,o C[(] = pm +p[2] + •" +/?[,] La tardanza es T[t] = máx{0, Cm -

d[n}. El algoritmo formal es:

Paso 1. Se calcula la tardanza para cada trabajo en la secuencia FEC. Se hace NT = O, sea k la

primera posición que contiene un trabajo tardío. Si ningún trabajo está tarde, se va al paso 4. Paso 2. Se encuentra el trabajo con el tiempo de procesado más largo en las posiciones 1 a

k. Sea pm = máxf=u /?[f]; entonces j* = [j] es el índice del trabajo con el tiempo de procesado más largo entre los primeros k trabajos.

Paso 3. Se quita el trabajo j* de la secuencia, se hace NT = NT+ l,y se repite el paso 1.

Paso 4. Los NT trabajos que se quitaron se colocan al final de la secuencia, en cualquier or-

den. Esta secuencia minimiza el número de trabajos tardíos.

El algoritmo es intuitivo; pero la prueba es bastante complicada y por tanto no se dará aquí. Ejemplo 8-5. Algoritmo de Hodgson. Considere el ejemplo anterior. Recuerde que la secuencia FEC era 5-3-4-2-1, de manera que [1] = 5, [2] = 3, [3] = 4, [4] = 2 y [5] = 1.

Paso 1. NT =0, los tiempos de terminación son (4,7,9,11,15) y las tardanzas son (0,0,2,1,0).

Existe un trabajo tardío. El trabajo 4, en la tercera posición, es el primero; así, k = 3.

Paso 2. Los tiempos de procesado de los trabajos 5,3 y 4 (los trabajos en las primeras tres posi- ciones) son 4, 3 y 2, respectivamente. El tiempo más largo de procesado es 4; así, j* = 5.