140
1 Planeación jerárquica de la producción

Secuenciacion 2005 PDF

Embed Size (px)

Citation preview

1

Planeación jerárquica de la producción

2

Plan

eació

n jer

árqu

ica d

e la

prod

ucció

n

3

PMPPropuesto

BOMLista de

Materiales

Registrosde

inventarios

Órdenes de compra de materia primas

Sistema MRP

Órdenes de producción de componente

•Datos de transacciones de inventarios

• Informes

Dis

poni

bilid

ades

–R

PPL

Maestrode ítems

Datos de Proveed.

MRP Entradas y salidas

4

PLANES DE PRODUCCIÓN

LÍNEAS DE PRODUCTOS

PRODUCTOSINDIVIDUALES

COMPONENTES

OPERACIONES

PLANEACIÓNAGREGADA

PROGRAMA MAESTRODE LA PRODUCCIÓN

REQUERIMIENTOS DEMATERIALES (PLAN)

PROGRAMACIÓNDEL TALLER

5

MRP Entradas y salidasCT1

05

Pulido

CT2

0206

Corte y ac.

CT3

07

Ensamblado

Madera Cajonera

CT3

01

Montaje

CT1

0215

Pintura y acabado

14Armario

CT2

0211

Corte yacanalado

CT4

12

Pegado

Madera Estructura Al

CT3

13

Montaje bisagras y cerraduras en puertas

4 puertascompletas

4 Puertas

1 Cajonera

CT4

01

Pegado

10Puerta

CT3

08

Ensamblado

Estructura

CT1

09

Pulim. Barniz. paños

PañosMadera

Madera

T. Lote =400

T. Lote =1000

T. Lote =50

EJEMPLO

6

PROGRAMACIÓN DE OPERACIONES

RECURSO

RECURSO

TRABAJO 1

TRABAJO 2

TRABAJO N

DISTRIBUCIÓNDE TAREAS

DEPENDENCIA RECURSO

24/03/20067

PROGRAMACIÓN A CORTO PLAZO DE OPERACIONES

SCHEDULING

8

OBJETIVOS

Continuar con el proceso de planeación jerárquica hasta el nivel más fino.

Proporcionar antecedentes para los problemas, modelos y algoritmos de programación.

Analizar el entorno de la programación.

Definir la terminología y la notación empleada para programar los trabajos en las máquinas

9

Planeación Corto plazo

El Scheduling o planeación a corto plazo específica la organización de la producción de acuerdo a las órdenes emitidas en el mediano plazo (MRP), considerando la disponibilidad de recursos y restricciones, controlando las operaciones y ajustando la capacidad del sistema para asegurar que se cumplan los requerimientos del programa maestro de producción y el MRP

10

Programación de Operaciones

“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”

Lo anterior implica que, si los recursos no están limitados no

existe el problema. Y en el contexto de la definición las

actividades son los trabajos u operaciones y los recursos son

las máquinas o las hora hombre

MORTON Y D. W. PENTICO (1993)

11

Programación de Operaciones

El problema de scheduling implica realizar las siguientes actividades

1. Asignación de trabajos a las máquinas o a los centros de trabajo.

2. Determinación de la secuencia de realización de las actividades

3. Programación de las fechas de comienzo y finalización de las operaciones.

12

SchedulingScheduling: Asignación, secuenciación y programación de tareas (u operaciones) en agentes (maquinas, trabajadores,..) respetando restricciones de operación.Aplicaciones del Scheduling

Paralelización de TareasComputación Distribuida de Algoritmos H.E.Asignación de Tareas en RobóticaProgramación de ProyectosProgramación de OperariosProgramación de TripulacionesProgramación de Producción

13

Planeación Corto plazo

14

DEFINICIONESPROGRAMA:

Es la definición del tiempo de inicio y finalización de cada trabajo en cada máquina, al igual que cualquier recurso adicional que se necesite

SECUENCIA:Orden simple de trabajos que indica que trabajo se realiza primero y cuales son los siguientes. Si cada trabajo se procesa tan pronto como es posible y 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

15

SECUENCIACIÓN

PROBLEMÁTICA

Los problemas de secuenciación son muy comunes y no solamente están inscritos dentro de la manufactura, si no que están presentes en diferentes escenarios.

Un grupo de aviones esperando pista para aterrizar

Un grupo de clientes en un banco

Un conjunto de programas a ser corridos en un centro de computo (Hiererchical sheduling)

Un grupo de clientes en una peluquería

Un grupo de clientes en una clínica

Muchos casos son resueltos de manera a apropiada de acuerdo al momento en que se presentan las actividades (FIFO) razonamiento lógico en algunos ambiente pero no en todos

16

SECUENCIACIÓN

PROBLEMÁTICA

La idea es determinar la mejor secuencia de trabajos y para ellose podría enumerar todas las secuencias posibles y elegir aquella que optimiza alguna medida de desempeño.

Este proceso para 23 trabajos implicaría 23! = 2.59*1022 > (23)23 Secuencias posibles, si un equipo pudiera examinar un Billón por segundo, tardaría 8.2 siglos para examinarlas todas, eso sin considerar restricciones asociadas a los recursos adicionales, (mano de obra y materia prima) y las dependencias entre trabajos (como la preparación), que le dan un mayor grado de dificultad.

17

PROBLEMÁTICAEn general, en un problema de scheduling intervienen los siguientes elementos:- Trabajos

disponibilidadfecha de entregatiempo de procesoprioridadtiempo de alistamiento (setup)OperacionesPatrones de flujo.

- Máquinas o recursosConfiguraciónCapacidad

- Tipos de scheduling.- Objetivos- Criterios

18

DEFINICIONESTRABAJOS: Conjunto de operaciones a realizar, con un tiempo de proceso definido, y que se supone que una vez se comienza una operación, debe procesarse continuamente hasta terminar, es decir sin interrupciones. Los trabajos pueden tener una fecha deentrega o una de finalización

Un trabajo puede depender de otro ya sea por la precedencia o por que el tiempo necesario para llevarlo a cabo depende de que el trabajo anterior sea procesado como en el caso de tiempos de alistamiento que dependen de la secuencia. Si los tiempos de alistamiento no dependen de la secuencia pueden introducirse en los tiempos de operación (carga)

19

DEFINICIONESMÁQUINAS:Son las encargadas de procesar los trabajos. los entornos de máquinas se dividen así:

Una sola máquina: En la cual se deben procesar todos los trabajos y esta solo puede procesar un solo trabajo a la vez. (Producción en línea)

Máquinas en paralelo: Varias máquinas que pueden realizar el mismo tipo de procesamiento, un trabajo se puede realizar en cualquiera de las máquinas, en caso de que no se diga lo contrario se supone que las máquinas son idénticas es decir es decir el tiempo de realizar el trabajo es independiente de la máquina en que se haga.

20

DEFINICIONESMÁQUINAS:Taller de producción en línea: Contiene máquinas diferentes y cada trabajo debe procesarse, en cada máquina exactamente una vez y cada trabajo sigue el mismo orden de visita a las máquinas, un trabajo no puede comenzar su proceso en la segunda maquina hasta no terminar el de la primera. (Líneas de ensamble)

Taller de producción intermitente: es más general que el taller de producción continua, cada trabajo tiene una ruta única y pueden no pasar por todas la máquinas.

Taller de producción abiertos: Los trabajos no tiene una ruta en particular y muchas veces el orden carece de importancia.

21

Enfocada al producto – Flow shop

Enfocada al proceso – Job Shop

Configuración productiva

El desarrollo de la programación con lleva a variar notablemente en función del tipo de configuración productiva.

Configuración continua.

Configuración productiva por lotes.

Configuración por proyectos

22

Configuración continua.

23

Configuración productiva por lotes.

Enfocada al producto – flow shop

24

Configuración productiva por lotes.

Enfocada al proceso – Job Shop

25

Configuración productiva

Máquinas paralelas

26

TERMINOLOGÍA Y NOTACIÓN

VARIABLES QUE DESCRIBEN EL PROBLEMA: Se asumen dadas, es decir son proporcionadas por etapas anteriores de planeación

m (machine) = Número de máquinas, cada maquina se identifica con un entero en 1,2, m

n (jobs) = Número de trabajos que serán procesados, identificados desde 1,2, i, hasta n, los atributos relevantes delos trabajos son denotados por las siguientes variables

27

TERMINOLOGÍA Y NOTACIÓNVARIABLES QUE DESCRIBEN EL PROBLEMA:ATRIBUTOS DE LOS TRABAJOS

ri (ready-time, release-time or arrival-time)= Tiempo de la liberación de la orden (o fecha de distribución) del trabajo i. Significa el momento más temprano a partir del cual el trabajo ise puede empezar a procesar, generalmente viene del MRP en HPP

di (due-date) = Fecha de entrega del trabajo i. Es el tiempo en que se esperara el trabajo este terminado, tiempo más lejano en que la ultima operación del trabajo i puede ser terminada

ai (allowance) = Tolerancia o tiempo total permitido para el trabajo en el taller

ai = di - ri

28

TERMINOLOGÍA Y NOTACIÓN

VARIABLES QUE DESCRIBEN EL PROBLEMA:ATRIBUTOS DE LOS TRABAJOS

Un trabajo i esta constituido por un conjunto gi de operaciones, entonces cada trabajo i es descrito por gi pares de valores de la forma. (mi,1;pi,1) ,.. (mi,j;pi,j) , ..(mi,gi;pi, gi) dondemi,j identifica el número de maquina requerido para realizar la operación j del trabajo i 1<=mi,j<=mpi,j (procesing time) es el tiempo de proceso de la operación i del trabajo j, indica el tiempo que se demora máquina mi,j en desarrollar la operación

29

TERMINOLOGÍA Y NOTACIÓN

VARIABLES QUE DESCRIBEN EL PROBLEMA:ATRIBUTOS DE LOS TRABAJOS

El tiempo de proceso total para un trabajo se define como:

Otra variable que describe el problema de scheduling es la importancia o el valor planteada por el programador, que tienen un trabajo con respecto a otro, que denotaremos wei (WEIGHT).

∑=igenj

jii pP ,

30

TERMINOLOGÍA Y NOTACIÓNVARIABLES QUE DESCRIBEN SOLUCIÓN: Para una solución

del problema se debe definir cuando cada operación de cada trabajo será terminada. Lo cual es equivalente a definir cuanto tiempo espera cada operación de cada trabajo antes de ser procesada, este tiempo lo denotaremos como Wi,j , (waiting-time before procesingbegins )

1. Wi,j= Tiempo de espera que precede la realización de la operación j del trabajo i, es decir tiempo entre la terminaciónde la operación (j-1) y el inicio de la operación j

2. El tiempo total que ha esperado un trabajo es la suma de los tiempos de espera de sus operaciones

∑=igenj

jii wW ,

31

TERMINOLOGÍA Y NOTACIÓNVARIABLES QUE DESCRIBEN SOLUCIÓN: La solución de un problema de scheduling esta completamente especificada y definida por el conjunto de Wi,j , pero existen otras variables que se puede derivar y que compactan y facilitan la notación las cuales son:

El tiempo en que un trabajo sale (o se termina) del taller

El tiempo que un trabajo consume (está) dentro del taller

La diferencia entre el tiempo en que un trabajo sale del

taller y su supuesto tiempo planeado de terminación

32

TERMINOLOGÍA Y NOTACIÓNVARIABLES QUE DESCRIBEN SOLUCIÓN:

El tiempo en que un trabajo sale (o se termina) del taller: generalmente se conoce como el tiempo de

terminación del trabajo i y se denota como Ci

(completion-time), o tiempo en el cual son procesadas

todas la operaciones del trabajo i

iii

genjji

genjjii

gigiiiiii

wprCi

wprCi

pwpwpwrCi

ii

ii

++=

++=

+++++++=

∑∑ ,,

,,2,2,1,1, ..

33

TERMINOLOGÍA Y NOTACIÓNVARIABLES QUE DESCRIBEN SOLUCIÓN:

El tiempo que un trabajo consume (está) dentro del taller, se conoce como el tiempo de flujo del trabajo i y se

denota como Fi (flow time). También llamado el intervalo

de manufactura (manufacturing interval) o tiempo de taller

(shop time)

iii

iii

genjji

genjjii

gigiiiiii

rCFwpF

wpF

pwpwpwF

ii

ii

−=+=

+=

++++++=

∑∑ ,,

,,2,2,1,1, ..

34

TERMINOLOGÍA Y NOTACIÓNVARIABLES QUE DESCRIBEN SOLUCIÓN:

La diferencia entre el tiempo en que un trabajo sale del taller y su supuesto tiempo planeado de terminación, se conoce como retraso y denota Li

(lateness), retraso del trabajo i

También existen: La tardanza del trabajo i Ti , (tardiness),

que indica si el trabajo se paso la fecha de entrega, valor

positivo de la tardanza

y el adelanto del trabajo i, Ei, (earliness)

iii dCL −=

)0,max( ii lT =

)0,max( ii lE −=

35

TERMINOLOGÍA Y NOTACIÓN

VARIABLES DEL PROBLEMA

n = Número de trabajos que serán procesados

m = Número de máquinas

Pk = Tiempo de proceso del trabajo i

ri = Tiempo de la liberación de la orden del trabajo i.

di = Fecha de entrega del trabajo i.

WEi = Ponderación (importancia o valor) del trabajo i respecto a los otros trabajos

VARIABLES DE LA SOLUCIÓN

Ci = Tiempo de terminación del trabajo i

Fi = Ci – ri, tiempo de flujo del trabajo i.Li = Ci – di, retraso del trabajo i 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 δi = 0 si el trabajo i esta a tiempo o se adelantaCmáx = Máxi=1,n (Ci), tiempo máximo de terminación de todos los trabajos o lapsoLmáx = Máxi=1,n (Li), retraso máximo de todos los trabajos.Tmáx = Máxi=1,n (Ti), tardanza máxima de todos los trabajos.

RESUMEN

36

TERMINOLOGÍA Y NOTACIÓN

VARIABLES DE PROBLEMA:

EJEMPLO

M(1,j) P(1,j) M(2,j) P(2,j)OPER OPER

M 3 1 1 4 1 2 1N 4 2 2 3 2 1 4

3 3 2 3 3 4TRABAJO ri diT1 0 16T2 0 14 M(3,j) P(3,j) M(4,j) P(4,j)T3 0 10 OPER OPERT4 0 8 1 3 3 1 2 3

2 2 2 2 3 33 1 3 3 1 1

Dada la solución constituida por el programa que sale al iniciar las operaciones los más témpano posible conservando la siguiente secuencia, en las maquinas M1 (T2,T1, T4,T3) M2(T2,T4,T3,T1) Y M3(T3,T4,T2,T1), hacer el grafico de Gantt y hallar todas las variables de la solución

37

TERMINOLOGÍA Y NOTACIÓN

VARIABLES DE PROBLEMA:

EJEMPLO

M1 ( T2, T1, T4, T3)

M2 ( T2, T4, T3, T1)

M3 ( T3, T4, T2, T1),

TRABAJO 1 OPER 1 OPER 2 OPER 3 ri diT1 4/1 3/2 2/3 0 16T2 1/2 4/1 4/3 0 14T3 3/3 2/2 3/1 0 10T4 3/2 3/3 1/1 0 8

38

TERMINOLOGÍA Y NOTACIÓNGRAFICO DE GANTT:

VARIABLES DE LA SOLUCIÓN

EJEMPLO

M3

M2 T2 01

M1 T4 O31 2 3 4 5 6 7 8 9 10 11 12 13 14 15

T2 O2

T3 O1

T1 O1

T4 O1

T4 O2

T3 O2

T2 O3

T3 O3

T1 O2

T1 03

T1 T2 T3 T4W1j W2j W3j W4j

OPER 1 5 0 0 1OPER 2 0 0 1 0OPER 3 0 2 4 2Wi 5 2 5 3Pi 9 9 8 7ri 0 0 0 0Ci 14 11 13 10Fi 14 11 13 10di 16 14 10 8Li -2 -3 3 2Ti 0 0 3 2Ei 2 3 0 0δ 0 0 1 1

39

OBJETIVOS

Tres tipos de metas han sido predominantes en la medición y valoración del scheduling (Baker, 1974)

1. La utilización eficiente de recursos.2. La respuesta rápida a la demanda 3. La conformidad con los plazos previstos. Cumplir fechas

de entrega

Otros1. Minimizar el trabajo en proceso (WIP)2. Minimizar el tiempo de flujo3. Reducir demora por tiempos de alistamiento4. Minimizar costos de producción

40

MEDIDAS DE DESEMPEÑOEspecificar la medida de desempeño en un problema de scheduling es especificar un conjunto de soluciones equivalentes y un ordenamiento preferido para estas.

Ejemplo: Definir el tiempo promedio de terminación como medida de desempeño en un problema de scheduling significa:

1. Que todos los programas que tengan el mismo Ĉ son equivalentes, así que es indiferente cual de estos se selecciona.

2. Si en un par de programas, Ĉ1<Ĉ2 , el programa con Ĉ1 es preferido al programa con Ĉ2.

Un programa es óptimo con respecto a una medida de desempeño si no existe ningún otro programa que sea preferido a este.

41

MEDICIÓNPara hablar del mejor programa o la mejor secuencia se requiere una medida de desempeño. Maximizar la ganancia o minimizar el costo, Es difícil estimar parámetros financieros que de una manera directa relacionen los programas con los costos o la ganancia y no se conocen muchos modelos que trabajen alrededor de estas ideas. Por tal motivo se emplean objetivos sustitutos en función del tiempo de terminación para un programa dado y la mayoría de las medidas sustitutas son de nominadas medidas normales.

42

MEDICIÓNMedida normal: Es una función del tiempo de

terminación de los trabajos que incrementa sólo

si al menos un tiempo de terminación en el

programa aumenta. El objetivo es minimizar la

funciónM = F (C1, C2, C3……Cn)M2 = F (C1

2, C22, C3

2……Cn2)

M2 > M si solo sí Ci2 > Ci Para al menos un i,

1<=i<=n

43

MEDICIÓNMedida normal:Son medidas normales el promedio o el máximo de los tiempos de terminación, el tiempo de flujo, el retraso y la tardanza, además promedios ponderados y máximos de las anteriores también son medidas normales. Pero el promedio o el máximo del adelanto no es una medida no es una medida normal, al igual que la diferencia entre el tiempo de terminación más largo y el segundo más largo.

44

Objetivos sustitutos comunes

Minimizar el tiempo de flujo total (Σ Fi)Minimizar la tardanza total (ΣTi) Minimizar el tiempo máximo de terminación (Cmax)Minimizar la tardanza máxima (Tmax)Minimizar el número de trabajos tardíos . (Σδi)Minimizar el retrazo máximo (Lmax)

Todos (excepto Cmáx, Lmáx, y Tmáx) son simplemente sumas, sobre todos los trabajos, de las cantidades respectivas para cada trabajo. Si los trabajos no tienen todos la misma importancia, se puede calcular una medida ponderada multiplicando la medida por el peso apropiado para el trabajo.

MEDIDAS NORMALES

45

MEDIDAS NORMALES MÁS COMUNES

Makespan O Lapso: Tiempo total requerido para completar los trabajos. Cmax

Average Flow Time: Es el tiempo promedio que un trabajo está en el área de trabajo.

Ejercicio: Calcular las medidas normales para el problema planteado

46

MEDICIÓN

Los promedios de las medidas de desempeño son fácilmente relacionados con estos: para el caso del retraso, por definición tenemos que.

Para un problema de n trabajos tendremos

Dividiendo cada término entre n

iiiiiiii dCarCaFL −=−−=−=

∑∑∑∑∑∑∑∑========

−=−−=−=n

ii

n

ii

n

ii

n

ii

n

ii

n

ii

n

ii

n

ii dCarCaFL

11111111

dCarCaFL −=−−=−=

47

MEDICIÓN

Para un problema dado â, ř y đ, son constantes

que no se afectan por la decisión de secuencia,

Ĺ es la diferencia de F^ y â; y F^ es la diferencia

entre Ĉ y đ, lo cual no indica que si un programa

es òptimo con respecto a F^ lo es también con

respecto a Ĉ y Ĺ

dCarCaFL −=−−=−=

48

MEDICIÓN

Dado que todas las medidas de desempeño son derivadas del tiempo de espera de las operaciones, el promedio de este también es derivado de estas medidas

Para un problema dado ri y pi son constantes, minimizar el tiempo promedio de terminación de dos trabajos es equivalente a minimizar el tiempo promedio de espera de los trabajos

nP

nW

rC

piWrCn

i in

i i

iii

∑∑ == ++=

++=

11

49

MEDICIÓN

El promedio de los retrasos, el promedio de las tardanzas, y el promedio de los adelantos, se relaciona de la siguiente manera:

En general esto no implica que un programa que minimice el promedio del retraso también minimice el promedio de la tardanza, sin embargo para programas con fechas muy estrechas, es decir sin adelantos, el retraso y la tardanza son medidas equivalentes, por otro lado si las fechas son muy amplias el adelanto es simplemente el valor negativo del retraso.

LET

LET iii

=−

=−

50

MEDICIÓN

Las relaciones entre las medidas de desempeño antes planteadas no implican nada con respecto a los máximos valores de tales medidas para un problema de scheduling, es decir un programa que es óptimo con respecto a F^ lo es también con respecto a L^ , pero eso no significa que un programa que es óptimo con respecto a la minimización de L max es óptimo con respecto a la minimización de F max

51

MEDIDAS DE DESEMPEÑO PARA EL TALLER

Además de las medidas de desempeño para las soluciones es importante también definir medidas de desempeño relacionadas con los talleres o centros de trabajo. Las más usadas son:

La utilización de la planta

Inventario producto en proceso

52

MEDIDAS DE DESEMPEÑO PARA EL TALLER

La utilización de la planta: Es la fracción de la capacidad disponible que es requerida para el procesamiento de las operaciones, esta es la razón entre la suma de los tiempos de proceso de todos los trabajos y el tiempo disponible.

La suma de los tiempos de proceso es una constante cuando estos no dependen de la secuencia.

53

MEDIDAS DE DESEMPEÑO PARA EL TALLER

La utilización de la planta: si los tiempos de proceso no se ven afectados por el programa, entonces la capacidad disponible es el factor relevante, dado que el programa define cuando se inicia y se termina el proceso en cada máquina. Asumiendo que todos las máquinas están disponibles en el mismo momento la utilización esta definida por:

max1

mFpi

Un

i∑ ==

54

MEDIDAS DE DESEMPEÑO PARA EL TALLER

Inventario en proceso: Hay dos formas de establecer el inventario en proceso una es el número de trabajos en el taller y la otra es la suma de los tiempos de proceso de estos trabajos.La siguiente notación es usada para el inventario en proceso: N(t) = Número de trabajos en el taller en el tiempo tN^(t1, t2)= Número promedio de trabajos en el taller durante el intervalo de t1 a t2

dttNtt

ttNt

t∫−= 2

1

)(1),(12

21

55

MEDIDAS DE DESEMPEÑO PARA EL TALLER

Inventario en proceso:P(t) = suma de los tiempos de proceso de todas las operaciones en el taller durante el tiempo t, denominada también trabajo contenido (work content) o trabajo total ( total work).P^(t1, t2) = trabajo promedio contenido durante el intervalo t1, t2

dttPtt

ttPt

t∫−= 2

1

)(1),(12

21

)()()( tqp NtNtN =+

56

MEDIDAS DE DESEMPEÑO PARA EL TALLER

Inventario en proceso:

dttNC

CNc

∫=max

0maxmax )(1),0(

dttNF

FNF

∫=max

0maxmax )(1),0(

57

MEDIDAS DE DESEMPEÑO PARA EL TALLER

Inventario en proceso:

∑∫

=

=

−−−−+−−+−−+=

n

ii

F

F

FdttN

FnFnnnFFnFFnnFdttN

n

n

10

231210

)(

)1))(1(.......())(2())(1()(

nn-1n-2

N(t)321

F1 F2 F3 ,,,,,,,,Fn

Time

58

MEDIDAS DE DESEMPEÑO PARA EL TALLERInventario en proceso:

∑∫=

=n

ii

F

FdttNn

10

)(dttNF

FNF

∫=max

0maxmax )(1),0(

maxmax

1max *),0(

FFn

F

FFN

n

ii

==∑

=

nFoN

FF ),( max

max

=

Lo anterior Nos indica que razón entre el número promedio de trabajos en el taller de trabajos en el taller y el número de trabajos es igual a la razón entre el tiempo de flujo promedio y el máximo tiempo de flujo, es decir que dado un F max el promedio de trabajos en el taller es directamente proporcional al promedio del tiempo de flujo

59

RELACIÓN DE LAS MEDIDAS NORMALESDado que la suma de los tiempos de procesamiento es constante, minimizar el lapso Cmáx es equivalente a minimizar el tiempo ocioso o maximizar la utilización de las máquinas.

Si los costos de mantener el inventario dominan, el tiempo de flujo ponderado es una medida equivalente. Minimizar el tiempo de flujo es lo mismo que minimizar los tiempo de terminación y los tiempos de espera de los trabajos el cual equivale a inventario en proceso, de manera que minimizar el tiempo de flujo equivale a minimizar el número de trabajos en proceso. El tiempo de flujo ponderado corresponde al valor del inventario en proceso.

El número de trabajos retrasados, la tardanza máxima y la tardanza total son medidas de servicio al cliente y son indispensables en los sistemas que trabajan sobre pedido

60

Notación del Scheduling

Un problema de Scheduling se describe por una tripleta α / β / γ.

• En el campo α se describe el ambiente de máquinas y contiene una entrada.

• El campo β provee detalles de las características de procesamiento y restricciones; puede contener múltiples entradas o ninguna.

• El campo γ describe el objetivo que se minimizará y contiene generalmente una entrada.

61

Notación del Scheduling

Campo α. Ambientes de máquina. 1 : 1 máquinaPm : Máquinas idénticas en paralelo Qm : Máquinas en paralelo con velocidades diferentesRm :Máquinas en paralelo no relacionadas.Fm : m Máquinas en serieFFc : flowshop flexible (híbrido) con c estaciones en serie Jm : Jobshop con m máquinasFJc : jobshop flexible (híbrido) con c estaciones de mcccccccc máquinas idénticas

62

Notación del SchedulingCampo α. Ambientes de máquina.

Una sola máquina (1). Es el más simple de todos los casos posibles y se puede considerar como un caso especial de todos los demás ambientes más complicados.

Idénticas máquinas en paralelo (Pm). Hay m máquinas idénticas en paralelo. El trabajo j requiere una operación y puede ser procesado en cualquiera de las m máquinas o de un conjunto incluido en ellas. Si el trabajo solamente puede ser procesado en un subconjunto Mj, entonces, la entrada Mj debe aparecer en el campo β.

63

Notación del SchedulingCampo α. Ambientes de máquina.

Máquinas en paralelo con velocidades diferentes (Qm). Se tienen m máquinas en paralelo, las cuales tienen velocidades diferentes. La velocidad de la máquina i se denota por vi. El tiempo pij que el trabajo j requiere en la máquina i es igual a pj / vi. Este ambiente también se conoce como máquinas uniformes.

Máquinas en paralelo no relacionadas (Rm). Es una generalización del ambiente anterior. En éste, hay m máquinas diferentes en paralelo. La máquina i puede procesar el trabajo ja una velocidad vij. El tiempo pij que el trabajo j requiere en la máquina i es pj / vij.

64

Notación del SchedulingCampo α. Ambientes de máquina.

Flow shop (Fm). Hay m máquinas en serie. Cada trabajo tiene que ser procesado en cada una de las mmáquinas. Los trabajos siguen la misma ruta. Una vez terminado el procesamiento de un trabajo en una máquina pasa a la cola de la máquina siguiente. Generalmente se trabaja bajo la regla FIFO (primeros en entrar primeros en salir), es decir, que un trabajo no pasa a otro que este en la fila. Cuando esto se hace, se incluye la entrada prmu en el campo β y se denomina permutation flow shop.

65

Notación del SchedulingCampo α. Ambientes de máquina.

Flexible flow shop (FFc). Es una generalización del anterior. En lugar de m máquinas en serie, hay cetapas en serie con un número de máquinas idénticas en paralelo en cada etapa. Cada trabajo debe ser procesado primero en la etapa 1 y después en la etapa 2 y así hasta terminar todas las etapas. En cada etapa, el trabajo j requiere ser procesado en solo una de las máquinas y puede ser cualquiera de ellas.

66

Notación del Scheduling

Campo α. Ambientes de máquina.

Job Shop (Jm). En un job shop con m máquinas,

cada trabajo tiene su propio ruta predeterminada. Se

distinguen los job shops en los cuales los trabajos

visitan las máquinas una sola vez de los que pueden

visitar la misma máquina más de una vez. En el ultimo

caso, se incluye la entrada recrc en el campo β para

significar la recirculación.

67

Notación del SchedulingCampo α. Ambientes de máquina.

Flexible Job Shop (FJc). Es una generalización del job shop y

el ambiente de máquinas paralelas. En lugar de m máquinas,

hay c centros de trabajo con un número de máquinas idénticas

en paralelo en cada centro de trabajo. Cada trabajo tiene su

propia ruta a través del shop, cada trabajo debe ser procesado

en cada centro en una sola máquina, y puede ser en cualquiera

de las máquinas. Si un trabajo puede visitar más de una vez la

misma máquina, se incluye la entrada recrc en el campo β para

indicar la recirculación..

68

Notación del Scheduling

Campo α. Ambientes de máquina.

Open Shop (Om). Hay m máquinas. Cada trabajo

tiene que ser procesado en cada una de las m

máquinas. Sin embargo, el tiempo de proceso puede

ser cero. No hay restricciones frente a la ruta de cada

trabajo a través del taller. Se debe determinar una

ruta para cada trabajo y diferentes trabajos pueden

tener diferentes rutas

69

Notación del Scheduling

Campo β. Restricciones .

r i : Tiempo de liberación de la orden del trabajo iSjk : Tiempos de preparación dependientes de la secuenciaPrpm : ∃ la posibilidad de culminar la operación sobre un trabajo (orden) en diferentes máquinas prec : Restricciones de precedenciabrkdwn: Fallas en los recursos Mj : Elegibilidad de recursos (para problemas Pm)Nwt : Sin esperarecrc : Recirculación

70

Notación del Scheduling

Campo β. Restricciones .

Fechas de liberación (rj). Si este símbolo aparece en el campo β, el trabajo j no puede iniciar su proceso antes de dicha fecha. Si el símbolo no aparece, significa que los trabajos pueden iniciar encualquier momento.

Tiempo de alistamientos dependientes de la secuencia (sjk). El valor sjk representa el tiempo de alistamiento dependiente de la secuencia entre los trabajos j y k; s0k se utiliza cuando el trabajo k es el primero de la secuencia y análogamente sj0 cuando el trabajo j es el último de la secuencia. Si estos alistamientos dependen de la máquina, debe incluirse el subíndice i (sijk). Si este valor no se incluye, se asumen todos los tiempos de alistamiento como 0.

71

Notación del Scheduling

Campo β. Restricciones .

Interrupciones (prpm). Significa que el trabajo no debe permanecer en la máquina hasta finalizar el procesamiento. Si el trabajo se interrumpe, cuando inicie nuevamente, solo requerira el tiempo faltante para su operación. Si no se incluye en el campo β, significa que las interrupciones no son permitidas.

Restricciones de precedencia (prec). Se dan cuando un trabajo debe esperar que otro trabajo haya finalizado para poder iniciar su procesamiento. Hay algunas casos particulares: cuando cada trabajo tiene al menos un predecesor y un sucesor, se considera una cadena (chains); Si cada trabajo tiene al menos un predecesor se considera (outtree); si cada trabajo tiene al menos un sucesor se considera (intree).

72

Notación del Scheduling

Campo β. Restricciones .

Paradas (brkdwn). Una máquina parada implica que ésta no se encuentra disponible todo el tiempo.

Restricción de elegibilidad de máquina (Mj). Cuando aparece Mjsignifica que no todas las máquinas pueden procesar el trabajo j.

Sin espera (nwt). Este fenómeno sucede en los flow shops, y hace referencia a trabajos que no pueden esperar entre operaciones, por tanto, se deberán programar de manera tal que una vez terminen de ser procesados en la máquina 1 puedan pasar a la máquina 2 sin tener que esperar entre procesos.

73

Notación del Scheduling

Campo β. Restricciones .

Recirculación (recrc). Ocurre cuando un trabajo visita una máquina o centro de trabajo en más de una ocasión.

Pueden aparecer en el campo β notas de carácter aclaratorio, tales como pj = p, que denota que todos los tiempos de proceso son iguales, o dj = d que significa que todos los trabajos deberán estar listos para la misma fecha.

74

Notación del Scheduling

Campo γ. Funciones objetivo.

Makespan (Cmax) : Tiempo de terminación del ultimo trabajo en el sistema.Lmax : Máximo retraso

: Tiempo de terminación total ponderado.: Tardanza total ponderada ().: Número ponderado de trabajos tardíos

75

Notación del SchedulingCampo γ. Funciones objetivo.

Makespan (Cmax). Es equivalente al tiempo de terminación del ultimo trabajo en el sistema. Un mínimo makespan implica generalmente una alta utilización de los recursos (máquinas).

Máximo retraso (Lmax). Es la máxima diferencia entre la fecha de entrega y la fecha de terminación de un trabajo.

Tiempo de terminación total ponderado (). La suma de los tiempos de terminación ponderados de los n trabajos dan una idea sobre el costo total de mantener inventarios incurridos con el programa. También se denomina, tiempo de flujo ponderado.

76

Notación del SchedulingCampo γ. Funciones objetivo.

Tardanza total ponderada (). La tardanza difiere del retraso, en que ésta nunca es negativa (en el retraso esto ocurre cuando el trabajo finaliza antes de la fecha de entrega); y esta función indica una forma más general del costo que la presentada por el tiempo de flujo ponderado.

Número ponderado de trabajos tardíos (). Es una medida de interés práctico de fácil referencia, muy vinculada con los niveles de servicio al cliente.

77

Métodos de solución

1.Métodos de programación manual • Interval scheduling• Dispatch scheduling• prioridades determinada heurísticamente

2.Métodos de simulación en computador

3.Métodos de programación matemática• programación entera

Branch-and-Bound• programación dinámica

4.métodos heurísticos

78

Métodos de programación heurística1. Neighborhood search2. Lagrangian relaxation3. Beam search4. Tabu search5. Simulated annealing6. Genetic algorithms7. Neural networks8. Bottleneck dynamics

Métodos de solución

79

Métodos de programación manualEn este caso se programan los trabajos en las maquinas empíricamente. La programación puede hacerse de dos formas:

a) Tomando como punto de partida la fecha de entrega y regresando hacia atrás las unidades de tiempo correspondientes al tiempo de procesamiento, a este método se le conoce como programación de intervalos. (Interval scheduling)

b) Programar tomando como criterio de decisión cualquier prioridad determinada heurísticamente, en este caso los trabajos se organizan cumpliendo alguna regla de decisión simple, esta programación se conoce como programación de despachos (Dispatch scheduling).

Métodos de solución.

80

Métodos de simulación en computadorMediante la simulación es posible modelar sistemas reales y analizar su comportamiento con ayuda del computador a un costo razonable y con una calidad aceptable.Métodos de programación matemáticaSe clasifican en métodos de programación entera y dinámica. En ambos casos es posible encontrar soluciones optimas pero para problemas de bajo volumen. Los problemas de gran tamaño pueden resultar intratables porque el tiempo requerido para encontrar una solución optima se puede representar por una expresión que crece en forma exponencial (nopolinomial). Por esta razón se han empezado a desarrollar diferentes métodos heurísticos para encontrar soluciones aproximadas para los problemas de gran tamaño.

Métodos de solución

81

Métodos de programacion entera1. Branch-and-Bound : Consiste en hacer un bosquejo de todas las posibles soluciones de un problema, mediante la elaboración de un árbol de decisión en cuyas ramas se representan diferentes alternativas de solución. Se inicia el árbol con tantas ramas como trabajos se van a programar, lo que indica que en cada rama o alternativa, se procesa cada trabajo de primero (primer nivel).A continuación se divide cada rama en n .

El método no sugiere analizar todas las alternativas de solución, sino ir desechando aquella ramas que con determinados criterios muestran que no pueden producir una solución optima.

Métodos de soluciónMétodos de simulación en computador

82

Métodos de programación entera

Programación dinámicaEs utilizada para la secuenciación, mediante la enumeración de todas las posibilidades de organización de los trabajos como elementos del espacio de soluciones.Por ejemplo, si se van a secuenciar n trabajos, lo que se hace es tomar cada trabajo en un scheduling individual, suponiendo que llega de primero y por lo tanto debe ser procesado de primero.

Métodos de solución

24/03/200683

Secuenciación de la Producción

84

SECUENCIACIÓN

Consiste en determinar el orden o secuencia en la que se procesarán los trabajos en un área de trabajo.

Si los trabajos a procesar llegan simultáneamente encontrándose el área disponible para trabajar, entonces el problema de secuenciación se denomina estático.

Si los trabajos llegan a largo del programa, el problema de secuenciación se denomina dinámico.

El problema de secuenciación se presenta en Job shops (taller), líneas de producción y proyectos.

85

N TRABAJOS EN UNA MÁQUINA

Los modelos desarrollados para este tipo de problema muchas veces se emplean para múltiples máquinas

Por ejemplo en procesos en serie con una máquina cuello de botellaO en casos en los que varias máquina pueden ser consideradas como una.

El problema puede considerarEntornos estáticos o dinámicosTiempos de preparación dependientes de la secuencia

86

SUPUESTOS BÁSICOSLas decisiones de que y como ya han sidos tomadas.

Los trabajos que se desarrollaran están bien definidos y son

completamente conocidos, es decir las características y las magnitudes

estas han sido determinadas previamente (Una trabajo representa una

preestablecida secuencia de operaciones)

Los recursos o maquinas que pueden ser empleados en la realización de

los trabajos han sido completamente definidos, en cuanto a cantidad y

disponibilidad

La orden de la realización de operaciones de un trabajo es conocido y se

conocen (tiempos) cada uno de los recursos empleados para su

realización

N TRABAJOS EN UNA MÁQUINA

87

SUPUESTOS INICIALESCertidumbre en los datos.

Cada máquina esta continuamente disponible para ser asignada (no

mantenimiento o fallas) y solo puede procesar un trabajo a la vez

los tiempos de preparación son independientes del orden del procesado

todos los trabajos están disponibles de inmediato (ri = 0)

No existe precedencia entre los trabajos

una vez que comienza el procesado de un trabajo, no se puede

interrumpir (no Preemption).

Cada operación de un trabajo solo puede ser desarrollada en una sola

maquina a la vez

Un trabajo no puede tener más de una operación en ejecución.

N TRABAJOS EN UNA MÁQUINA

88

N TRABAJOS EN UNA MÁQUINA

89

N TRABAJOS EN UNA MÁQUINA

CARACTERÍSTICAS

Determinar la secuencia óptima de procesar n trabajos en una máquina.

Todas las secuencias tienen el mismo makespan.

Representemos los tiempos de proceso de los trabajos i como pi (i = 1,n).

En la mayoría de los casos las secuencia que representa el orden, es igual al programa, es decir, la secuencia establece las fechas de inicio y finalización de las ordenes.

90

N TRABAJOS EN UNA MÁQUINA

Los diferentes algoritmos se han desarrollados para logras algunas medidas de desempeño.

TIEMPO DE FLUJO MÍNIMOTIEMPO DE FLUJO PONDERADORETRASO TOTAL MÍNIMOTARDANZA MÁXIMA Y RETRASO MÁXIMONÚMERO PONDERADO DE TRABAJOS TARDÍOSTIEMPO DE FLUJO MÍNIMO SIN TRABAJOS TARDÍOSTARDANZA MÁXIMAADELANTO Y TARDANZA MÍNIMOS CON FECHAS DE ENTREGA EN COMÚN

91

N TRABAJOS EN UNA MÁQUINATIEMPO DE FLUJO MÍNIMO

Minimizar el flow time es el criterio a satisfacer.

Este criterio es de gran importancia para empresas en las que los costos de mantener inventario dominan a los demás.Los productos son de alto costo y dejan la planta una vez se terminan.Se asume que los costos unitarios de los productos son similaresSe asume que el tiempo de liberación es cero.

∑∑ ∑∑ == ==−+==

n

i in

i

i

j jn

i i PinPF11 11

)1(

Se puede demostrar por contra ejemplo que la secuencia que minimiza el criterio es aquella en la que los trabajos se ordenan del menor tiempo al mayor. TCP (SPT).El SPT minimiza el tiempo total que todos los trabajos tardan en el sistema, con lo que minimiza el tiempo de espera total.SPT minimiza el número promedio de trabajos esperando a ser procesados.SPT minimiza el inventario promedio de trabajos en proceso. (medido en número de trabajos)T 1 2 3 4Pi 15 17 24 11

SPT 4 1 2 3 TTFCi 11 26 43 67 147

92

Se establece como criterio el Minimizar el tiempo de flujo promedio ponderado en los siguientes caso:

Cuando los trabajos tienen diferente prioridad o peso, establecidos por aspectos comerciales. (pago en efectivo) Cuando el valor de los trabajos no es similar.

Para estos casos se emplea el índice Wi, que puede indicar importancia del trabajo o su valor. Mayor valor del índice Wi, el trabajo es más importante o más valioso.La secuencia óptima sería ordenando los trabajos de menor pi/wi al mayor.

N TRABAJOS EN UNA MÁQUINAMÍNIMO TIEMPO DE FLUJO PONDERADO

93

N TRABAJOS EN UNA MÁQUINA

Trabajo pi wi pi/wi1 10 5 2,002 6 10 0,603 5 5 1,004 4 1 4,005 2 3 0,67

• La secuencia óptima es (2,5,3,6,1,4).Trabajo 2 5 3 6 1 4 totalci 6 8 13 21 31 35 114Fi*wi 60 24 65 105 155 35 444

MÍNIMO TIEMPO DE FLUJO PONDERADO

94

N TRABAJOS EN UNA MÁQUINA

T 4 1 2 3SPT total

Pi 11 15 17 24 67di 20 26 15 40 101ci 11 26 43 67 147Li -9 0 28 27 46

∑∑∑∑ ====−=−= n

i in

i in

i iin

i i dCdCL 1111 )(

MÍNIMO RETRASO TOTALEl retraso se conoce como: Li = Ci - di. El retraso total es:

Dado que la sumatoria de los tiempos de proceso es constante para cualquier programa de producción, minimizar el tiempo de terminación total, minimiza el retraso total. En consecuencia lasecuencia SPT minimiza la tardanza total. El retraso total es una medida poco común ya que los adelantos se anulan con las tardanzas

T 2 4 1 3DDT total

Pi 17 11 15 24 67di 15 20 26 40 101ci 17 28 43 67 155Li 2 8 17 27 54

95

N TRABAJOS EN UNA MÁQUINA

T 4 1 2 3SPT total

Pi 11 15 17 24 67di 20 26 15 40 101ci 11 26 43 67 147Li -9 0 28 27 46Ti 0 0 28 27 55

TARDANZA MÁXIMA Y RETRASO MÁXIMOEste par de indicadores son de gran uso en los ambientes de fabricación en los cuales el servicio al cliente es una medida de desempeño muy importante, lo que concentra la atención en las fechas de entrega. Organizar los trabajos de tal modo que queden de primero los que tienen la fecha de entrega más cercana -secuencia FEC (EDD)- hace que el trabajo más tardío tenga la menor tardanza posible

T 2 4 1 3DDT total

Pi 17 11 15 24 67di 15 20 26 40 101ci 17 28 43 67 155Li 2 8 17 27 54Ti 2 8 17 27 54

96

N TRABAJOS EN UNA MÁQUINANÚMERO DE TRABAJOS TARDÍOS

Este indicador es de gran uso en ambientes de fabricación en los que los costos por cada trabajo tardío son dominantes (industria del GLP)

La secuencia EDD (FEC), hace que ningún trabajo salga demasiadotarde con respecto a otras secuencias, pero muchos o incluso todos los trabajos pueden salir algo tarde. Lo cual no implica que se minimicen el número de trabajos tardíos.

Si es posible tener todos los trabajos a tiempo, la se secuencia EDD cumple con esto. En el caso en que no es posible tener todos lostrabajos a tiempo, además de las fechas de entrega, es importante tener en cuenta los tiempos de proceso de los trabajos y en especial los de aquellos que se demoran más, ya que moverlos al final podría generar que los de menor tiempo de proceso estén a tiempo

97

N TRABAJOS EN UNA MÁQUINANÚMERO DE TRABAJOS TARDÍOS

El algoritmo de Hudgson permite minimizar el número de trabajos tardíos.

1. Se realiza la secuencia EDD y se calculan las tardanzas de cada trabajo, si no hay trabajos tarde se finaliza

2. Se identifica el primer trabajo tardío, se selecciona del conjunto formado por los trabajos que están a tiempo y el primer tardío, el trabajo de mayor tiempo de proceso, los empates se rompen arbitrariamente (cuando el N. tardíos es único indicador. )

3. El trabajo de mayor tiempo de proceso seleccionado anteriormentese retira de la secuencia y se repite de nuevo el proceso.

4. Los trabajos que se retina de la secuencia se colocan luego al final en cualquier orden (cuando el N. tardíos es único indicador. )

98

N TRABAJOS EN UNA MÁQUINANÚMERO DE TRABAJOS TARDÍOS

Algoritmo de Hudgson1. DDT

2. MAX(Pi)= T2

3. RETIRO T2

1. DDT

T 2 4 1 3DDT total

Pi 17 11 15 24 67di 15 20 26 40 101ci 17 28 43 67 155Li 2 8 17 27 54Ti 2 8 17 27 54δi 1 1 1 1 1

T 4 1 3Pi 11 15 24di 20 26 40ci 11 26 50Li -9 0 10Ti 0 0 10δi 0 0 1

2. MAX(Pi)= T3

3. RETIRO T3

4. T2 Y T3 AL FINAL

T 4 1 2 3HDS2total

Pi 11 15 17 24 67di 20 26 15 40 101ci 11 26 43 67 147Li -9 0 28 27 46Ti 0 0 28 27 55δi 0 0 1 1 2

T 4 1 3 2HDStotal

Pi 11 15 24 17 67di 20 26 40 15 101ci 11 26 50 67 154Li -9 0 10 52 53Ti 0 0 10 52 62δi 0 0 1 1 2

El orden en el cual se colocan los trabajos finales puede afectar otros indicadores

T 1 2 3 4 5Pi 4 2 3 2 4di 16 10 7 7 5

TALLER

99

N TRABAJOS EN UNA MÁQUINANÚMERO PONDERADO DE TRABAJOS TARDÍOS

Este indicador es empleado en el caso en el no todos los trabajos son igual de importantes o los costos de los trabajos tardíos son diferentes. Se pretende que los trabajos de mayor costo o importancia en lo posible no estén tardíos.

Minimizar el indicador de número ponderado de trabajos tardíos es un problema NP- DURO, no se tiene algoritmo que o modelo que minimice en tiempo considerable el indicador.

Como modelo heurístico se tiene un adaptación del algoritmo de Hodgson, que proporciona buenas soluciones. En este modelo en lugar de retirar (de los trabajos tempranos y el primer tardío) el trabajo de mayor tiempo de proceso, se retira el de mayor cociente entre el tiempo de proceso y el peso

100

N TRABAJOS EN UNA MÁQUINA

Adaptación Hudgson1. DDT

2. MAX(Pi/ / wi)= T2

3. RETIRO T2

1. DDT

2. MAX(Pi/ / wi)= T4

3. RETIRO T4

4. T2 Y T4 AL FINAL

T 1 3 4 2HDSMtotal 2

Pi 15 24 11 17 67 di 26 40 20 15 101 ci 15 39 50 67 171 Wi 3 9 2 6 20 Pi/ Wi 5,0 2,7 5,5 2,8 16 Li -11 -1 30 52 70 Ti 0 0 30 52 82 δi 0 0 1 1 8

NÚMERO PONDERADO DE TRABAJOS TARDÍOS

T 2 4 1 3DDTtotal

Pi 17 11 15 24 67di 15 20 26 40 101ci 17 28 43 67 155Wi 6 2 3 9 20Pi/ Wi 2,8 5,5 5,0 2,7 16Li 2 8 17 27 54Ti 2 8 17 27 54δi 1 1 1 1 20

T 4 1 3Pi 11 15 24di 20 26 40ci 11 26 50Wi 2 3 9Pi/ Wi 5,5 5,0 2,7Li -9 0 10Ti 0 0 10δi 0 0 1

T 1 2 3 4 5Pi 4 2 3 2 4di 16 10 7 7 5wi 1 4 3 1 3

TALLER

101

N TRABAJOS EN UNA MÁQUINATARDANZA MÍNIMA

En ambientes de fabricación en los que, el cumplimiento de las fechas de entrega de los clientes es un indicador de gran importancia, muchas veces se plantea como indicador la minimización del número de trabajos tardíos o la minimización de la máxima tardanza, en la búsqueda de estos indicadores es común que la tardanza total no necesariamente sea tan baja como se esperaría, aspecto preocupante cuando el costo de tardanza es un costo dominante.

Para el caso de la minimización del número de trabajos tardíos la secuencia obtenida presenta pocos trabajos tardíos pero con tardanzas muy grandes. Ejemplo secuenciar (A.H)

T1 T2 T3 T4di 6 11 8 3pi 4 5 2 5

102

N TRABAJOS EN UNA MÁQUINATARDANZA MÍNIMA

Mínimo de trabajos tardíos A. H. ( tardanza 13)

103

N TRABAJOS EN UNA MÁQUINA

T1 T2 T3 T4di 6 11 8 3pi 4 5 2 5

TARDANZA MÍNIMA

Cuando se minimiza la máxima tardanza se pueden obtener muchos trabajos tardíos.

Mínima tardanza máxima, Tmax = 5, (EDD)

104

N TRABAJOS EN UNA MÁQUINATARDANZA MÍNIMA

Como medida alternativa en cuanto a objetivos de cumplimiento de los clientes, se propone la tardanza total para el caso de trabajados con igual importancia o la tardanza total ponderada para trabajos con diferentes importancias.

Aunque todos los pesos de los trabajos sean iguales no existe un algoritmo que resuelva de manera eficiente el problema general de la tardanza, el cual es considerado NP- Hard.

En casos especiales se pueden encontrar soluciones optimas de manera sencilla:

CASO 1: Todos los trabajos tienen los mismos pesos y la misma fecha de entrega T1 T2 T3 T4

di 11 11 11 11pi 4 5 2 5

105

N TRABAJOS EN UNA MÁQUINATARDANZA MÍNIMA

SPT minimiza la tardanza total para el caso 1

106

N TRABAJOS EN UNA MÁQUINATARDANZA MÍNIMA

CASO 2: Todos los trabajos tienen los mismos pesos y el mismo tiempo de proceso, en este caso la secuencia EDD, es óptima T1 T2 T3 T4

di 6 11 8 3pi 5 5 5 5

107

N TRABAJOS EN UNA MÁQUINA

T1 T2 T3 T4di 6 11 8 3pi 5 5 5 5

TARDANZA MÍNIMA

CASO 3: Cuando mediante la secuencia DDT se obtiene, como máximo un trabajo tardío, esta secuencia será el optima para la tardanza mínima.

Según caso 1 y 2 si DDT= SPT la secuencia que se obtenga es optima

108

CASO 4: Cuando todos los trabajos son tardíos, en este caso minimizar la tardanza total es equivalente a minimizar el tiempo de flujo total, para lo cual la secuencia SPT proporciona el optimo.

N TRABAJOS EN UNA MÁQUINATARDANZA MÍNIMA

109

Combinado la información de los casos anteriores Morton y Rachamadugu en 1983 desarrollan un algoritmo heurístico, apoyándose en la siguiente en la proposición:

Dados dos trabajos adyacentes Ji y Jj en una sola maquina, la secuencia Ji,Jj es una secuencia optima si cumple la siguiente propiedad.

N TRABAJOS EN UNA MÁQUINATARDANZA MÍNIMA

Si los trabajos tienen ponderaciones diferentes y todos son tardíos, minimizar la tardanza ponderada es equivalente a minimizar el tiempo de flujo ponderado T Wi di Pi Wi/Pi

1 2 3 7 0,29 2 1 7 15 0,07 3 3 8 13 0,23 4 6 5 13 0,46

110

La secuencia que minimiza el tiempo de flujo ponderado es TPPC, en la secuencia de primero el trabajo con el menor (Pi/Wi). Lo anterior es equivalente a decir que se secuencia primero el trabajo con mayor razón (Wi/Pi), esta secuencia se conoce como (RPTP) Razón Peso entre Tiempo de Proceso.

N TRABAJOS EN UNA MÁQUINATARDANZA MÍNIMA

111

Cuando no todos los trabajos están tardíos la RPTP, no debe ser la única regla o criterio de secuenciación, dado que la secuencia DDT proporcionar resultados óptimos en algunos caso.

Para una mejor aproximación se define la holgura de un trabajo i, como, Si = di-Pi-t, que en problemas estáticos indica el número de unidades de tiempo que el trabajo se puede desplazar hacia adelante sin que tenga tardanza, desde el momento en que esta disponible.

Entre mayor sea entonces la holgura de un trabajo este debería de programarse al final. Lo cual le restaría importancia a la RPTP.

N TRABAJOS EN UNA MÁQUINATARDANZA MÍNIMA

112

Si la holgura es negativa indica que el trabajo es tardío y en consecuencia para su secuenciación la RPTP debe tener toda su importancia como criterio

En caso de que la holgura sea positiva la importancia del criterio RPTP debe disminuir a medida que la holgura sea mayor.

Si define Si+=max{0,Si}, la función EXP(-f(S+)), nos permite modelar el

comportamiento de la importancia asignada al indicador RPTP.

N TRABAJOS EN UNA MÁQUINATARDANZA MÍNIMA

0,00

0,20

0,40

0,60

0,80

1,00

1,20

-5 -4 -3 -2 -1 0 1 2 3 4 5

Holgura

Ipor

tanc

ia d

e R

PTP

113

Dado que la función EXP(-(S+)), decrece muy rápidamente, los autores proponen una normalización de la holgura. Para ello definen

N TRABAJOS EN UNA MÁQUINATARDANZA MÍNIMA

prom

i

n

iiprom

PS

Pn

P

+

=∑=

1]

1 Tiempo promedio del tiempo de proceso de los trabajo

Número trabajos de tiempo promedio que se podría programar primero que el trabajo i sin que este sea tardío

114

N TRABAJOS EN UNA MÁQUINATARDANZA MÍNIMA

Dado que se plantea la holgura como elemento de asignación de la importancia concedida al indicador RPTP Rachamadugu y Morton proponen como criterio de prioridad para programar un trabajo la siguiente expresión

⎥⎦

⎤⎢⎣

⎡−

+

⎟⎟⎠

⎞⎜⎜⎝

⎛= prom

iPK

s

i

ii e

Pw ..γ

El factor lo plantean como 2, determinado a partir de estudios experimentales, buscando mejorar el decrecimiento de la importancia

115

N TRABAJOS EN UNA MÁQUINATARDANZA MÍNIMA

Ti 7 3 1 4 8 9 5 6 2 10

Pi 9 6 8 10 11 13 3 11 12 7

Wi 5 6 4 5 9 8 1 4 1 1di 8 32 26 35 51 53 38 48 28 64

W/P 0,56 1,00 0,50 0,50 0,82 0,62 0,33 0,36 0,08 0,14

s -1,00 26,00 18,00 25,00 40,00 40,00 35,00 37,00 16,00 57,00

S* - 26,00 18,00 25,00 40,00 40,00 35,00 37,00 16,00 57,00

s*/(2.Pprom) - 1,44 1,00 1,39 2,22 2,22 1,94 2,06 0,89 3,17

exp(s*/(2.Pprom)) 1,00 0,24 0,37 0,25 0,11 0,11 0,14 0,13 0,41 0,04 Ri 0,56 0,24 0,18 0,12 0,09 0,07 0,05 0,05 0,03 0,01

P prom 9

K 2

116

N TRABAJOS EN UNA MÁQUINATARDANZA MÍNIMA

117

N TRABAJOS EN UNA MÁQUINAADELANTO Y TARDANZA MÍNIMOS CON FECHAS DE

ENTREGA EN COMÚN (D)

En los ambientes de fabricación donde se manejan restricciones de almacenamiento de productos terminados, o en el caso de productos perecederos, los adelantos pueden resultar tan costos como las tardanzas.

Dado que la sumatoria de los retrasos: ∑ Li = ∑ (Ci-di), puede ser cero por la presencia de anticipaciones (-) y tardanzas (+). Se requiere la definición de una medida anormal, que consiste en la suma de los adelantos y las tardanzas: Z=∑ (Ei+Ti), por ser Z una medida anormal, la presencia de tiempos ociosos puede mejorar el desempeño, lo cual implica que no necesarimente una secuencia representa un programa.

118

N TRABAJOS EN UNA MÁQUINAADELANTO Y TARDANZA MÍNIMOS CON FECHAS DE

ENTREGA EN COMÚN (D)

De manera especifica se presenta el caso de fechas de entrega en común cuando las ordenes son para fechas especiales, para alguna promoción temporal, para un mismo cliente o se despachan en un mismo medio de transporte. Para este problema se conoce que:

• No hay tiempo ocioso entre los trabajos, pero es posible que lo haya al inicio del programa.

• El programa dominante tiene los trabajos a tiempo en LPT y los tardíos en SPT

119

N TRABAJOS EN UNA MÁQUINAADELANTO Y TARDANZA MÍNIMOS CON FECHAS DE

ENTREGA EN COMÚN (D)1. Los trabajos se deben ordenar inicialmente LPT para ser

enumerados

2. Luego se secuencian de tal modo que los trabajos pares (según la enumeración anterior) quede al final en orden descendiente y los impares al inicio en orden ascendente, (se conoce como la secuencia en V)

3. En esta secuencia se halla el trabajo en la posición redondear.mas (n/2), Denominado j*

4. Se suman los tiempos de procesos de la secuencia hasta el trabajo j* . Cj* = ∆=P1+P3+P5+..Pj*

5. Si D ≥ ∆, el problema es no restringido, en el caso contrario el problema es restringido.

120

N TRABAJOS EN UNA MÁQUINAADELANTO Y TARDANZA MÍNIMOS CON FECHAS DE

ENTREGA EN COMÚN (D)

1.CASO NO RESTRINGIDO: Las dos siguientes características se cumplen para alguno de los posibles programas óptimos:

• Cj*= D

• La posición de j* es redondear.mas (n/2), cuando n es par se tienen igual cantidad de trabajos arriba y debajo de la fecha deentrega, cuando es impar hay un trabajo más antes de la fecha de entrega que después

Para este caso los trabajos se programan de tal modo que Cj*= D, para ello se puede requerir de tiempo ocioso al inicio del programa, una de las secuencias optimas es la secuencia en v con Cj*= D

121

N TRABAJOS EN UNA MÁQUINAADELANTO Y TARDANZA MÍNIMOS CON FECHAS DE

ENTREGA EN COMÚN (D)

2. CASO RESTRINGIDO: Este problema es NP-duro, pero se conoce un procedimiento heurístico desarrollado por Sundararaghavan y otros, el cual consiste en construir una secuencia en v empezando en cero, en la que el trabajo más largo del programa se coloca la inicio si hay más tiempo entre inicio y la fecha de entrega que entre la fecha de entrega y la suma de los tiempos de proceso de todos los trabajos , y secoloca al final se es el caso contrario, lo anterior se repite para todos los trabajos ordenados inicial mente en LPT.

El heurístico también existe para fechas de entrega diferentes y para costos diferentes entre los adelantos y las tardanzas

122

Los n trabajos se procesan en 2 máquinas con el mismo orden. El criterio es el de minimizar el makespan.

El procedimiento a utilizar es el de Johnson.

Si pij es el tiempo de proceso del trabajo i en la máquina j, seleccione el mínimo y si éste corresponde a la máquina 1, asígnelo a la primera posición de la secuencia.

Si corresponde a la máquina 2, el trabajo se asigna a la última posición de la secuencia.

Elimine el trabajo asignado del set y repita el procedimiento con los trabajos no asignados.

N TRABAJOS EN 2 MÁQUINAS (EN SERIE)

123

Programación en dos CT (n/2 )

La regla de Johnson

124

PROCEDIMIENTO DE JOHNSON

Determine la secuencia de proceso que minimice el makespan

Tra ba jos M á quina 1 M á quina 21 4 32 1 23 5 44 2 35 5 6

La secuencia es (2,4,5,3,1).

125

0 5 10 15 20 25

Máq 1

Máq 2

2 4 5 3 1

21

17

GRÁFICA GANTT DE SECUENCIA

126

Algoritmo de Jackson.

Formar 4 sets de trabajos;

{A} = Los procesados solamente en la máquina 1.

{B} = Los procesados en máquina 2 solamente.

{AB} = Los procesados primero en máquina 1 y luego en la 2.

{BA} = Los procesados primero en máquina 2 y luego en la 1.

Secuenciar los trabajos de {AB} y {BA}, por separado, con algoritmo de Johnson.

N TRABAJOS CON RUTA DIFERENTE EN 2 MÁQ.(INTERMITENTE)

127

Defina secuencias arbitrarias para los trabajos

{A} y {B}. (Puede ser minimizar el Tft)

Combine las secuencias de la siguiente

manera.

Máquina 1: {AB} antes de {A} antes de {BA}.

Máquina 2: {BA} antes de {B} antes de {AB}.

N TRABAJOS CON RUTA DIFERENTE EN 2 MÁQ.

128

N TRABAJOS EN 3 MÁQUINASTodos los trabajos tienen la misma secuencia de proceso.Puede resolverse con el algoritmo de Johnson si:

min {pi1} > máx { pi2 }, omin { pi3 } >máx { pi2 }.La máquina 2 es dominada completamente por la máquina 1 o 3.Se aplica el procedimiento formando 2 máquinas dummy, 1´y 2´, con tiempos de proceso:pi1´ = pi1 + pi2 y pi2´ = pi2 + pi3.El procedimiento proporciona una secuencia factible y “buena” aún cuando no se cumplan las condiciones.

129

Trabajos Máq 1 Máq 2 Máq 31 8 2 42 5 4 53 6 1 34 7 3 2

Trabajos Máq 1́ Máq 2´1 10 62 9 93 7 44 10 5

n Trabajos en 3 Máquinas

Secuenciar los siguientes trabajos.

Secuencia óptima es {2,1,4,3}.

130

N TRABAJOS EN M MÁQUINAS

No existe un método eficiente que proporcione una solución exacta.

Se utilizan métodos heurísticos tales como las Reglas de Despacho.

Éstas son reglas que determinan qué trabajo procesar al quedar éste disponible de manera secuencial en el tiempo, en lugar de suponer que todos los trabajos están disponibles.

Se maneja el concepto de prioridad en los trabajos.

131

SECUENCIACIÓN DINÁMICA DE TRABAJOS

Los trabajos llegan a procesarse al azar durante un intervalo de tiempo.Su secuencia se determina mediante el uso de reglas de despacho que proporcionan prioridades a los mismos.Las reglas se derivan a través de análisis de líneas de espera, experimentación y simulación.La regla de secuenciación y despacho mas importante es la del tiempo de proceso mas corto (SPT).Otras reglas se derivan del SPT , así como del tamaño de las líneas de espera y la fecha prometida a los clientes.

132

REGLAS DE DESPACHO

Basadas en tiempo de proceso.

Menor Trabajo Remanente (LWKR): Considera la

suma de los tiempos de proceso para todas las

operaciones por realizarse en el trabajo.

Trabajo Total (TWK): Considera la suma de los

tiempos de proceso de todas las operaciones del

trabajo.

Menor Cantidad de Operaciones por Realizarse (FOPR): Considera el número de operaciones a

133

Basadas en Fechas de Entrega:Fecha Prometida (DDATE): La prioridad se asigna en base a la fecha prometida.Tiempo de Holgura (SLACK): La prioridad se asigna en función del tiempo que falta para la fecha prometida menos el tiempo de proceso faltante.Holgura/ Operación Faltante (S/ROP):La prioridad se determina por el cociente entre el SLACK y el número de operaciones faltantes.

Otras Reglas de Despacho

134

Ejemplo

Se tienen las siguientes tareas a programarse en un taller de producción (Nota: A/5 significa que el trabajo se programa en la máquina A y dura 5 unidades de tiempo)

B/6A/53

A/3B/12B/2A/41

Operación 2Operación 1Trabajo

135

Regla SPT

3x373

1,21,2

Elección

Máquina

3x12

12,3421,30

BATIEMPO

trabajos disponibles

Cuando haya más de un trabajo disponible en una máquina se programa el que tenga menor tiempo de proceso para esa máquina

Por ejemplo. En t=0 se pueden programar 2 trabajos en A (1 y 3). Se elige el trabajo 1 porque su tiempo de proceso en A es 4 y el del trabajo 3 es de 5. En t=0 hay sólo un trabajo: Ese es el que se programa

136

Gráfica de Gantt (regla SPT)

333333112B

333332221111A

137

Regla LPT

11x112x29

1,32,3

Elección

Máquina

31,2521,30

BATIEMPO

trabajos disponibles

Cuando haya más de un trabajo disponible en una máquina se programa el que tenga mayor tiempo de proceso para esa máquina

Por ejemplo. En t=0 se pueden programar 2 trabajos en A (1 y 3). Se elige el trabajo 3 porque su tiempo de proceso en A es 5 y el del trabajo 1 es de 4. En t=0 hay sólo un trabajo (el 2): Ese es el que se programa

138

Gráfica de Gantt (regla LPT)

113333332B

222111133333A

139

Regla MWR

11x112x29

1,32,3

Elección

Máquina

31,2521,30

BATIEMPO

trabajos disponibles

Cuando haya más de un trabajo disponible en una máquina se programa el que tenga mayor tiempo de proceso REMANENTE.

Por ejemplo. En t=0 se pueden programar 2 trabajos en A (1 y 3). Se elige el trabajo 3 porque su tiempo de proceso remanente es de 11 (5 + 6) y el del trabajo 1 es de 6 (4 + 2). En t=0 hay sólo un trabajo (el 2): Ese es el que se programa.

En t=5 se programa el trabajo 1 en A. El tiempo remanente del trabajo 1 antes de empezar a ser procesado en A es de 6 (4+2) y el del trabajo 2 es de 3 (le quedan 3 unidades de tiempo por procesarse en A). Note que el tiempo de proceso total para el trabajo 2 es 4 (3+1) pero el tiempo remanente en t=5 es de 3 porque ya se programó una operación con duración 1.

140

Gráfica de Gantt (regla MWR (LWKR):)

113333332B

222111133333A

Nótese que esta gráfica es la misma que para LPT