You are on page 1of 18

MODELAMIENTO Y OPTIMIZACIN DE PROCESOS

EL PROBLEMA DE ASIGNACION

EL PROBLEMA DE ASIGNACION

El Problema de la Asignacin es un problema clsico del modelamiento de procesos y corresponde a un caso particular del Problema del Transporte. Este problema se trata de asignar una serie de Recursos a una serie de tareas. Su limitante es que a cada tarea se le puede asignar slo un recurso, por ejemplo si se tienen tres operarios con diferentes tiempos de operacin en cuatro mquinas el modelo nos dira como asignar los tres operarios a tres mquinas (nos sobrara una) de manera que se minimice el tiempo total, Es requerido que sea as (un recurso para cada tarea), sino ser necesario modelarlo como un Programa Lineal y resolverlo con el Simplex.

EL PROBLEMA DE ASIGNACION
Ejemplos de Asignaciones: Operarios a Tareas, Mquinas a Operarios, Nadadores a Estilos, Ayudantes a Ctedras, etc, etc, etc.
El Problema de la Asignacin se basa en una informacin comparativa para tomar la decisin de que asignar a que (una matriz de costos, una matriz de tiempos, de ingresos, etc.) Cuando la matriz no est balanceada, es decir, cuando no es cuadrada, (sobran filas o columnas), se debe balancear mediante la inclusin de filas o columnas ficticias, con valores de cero en dicha matriz.
Formulacin de Programacin Lineal:
Supongamos el siguiente ejemplo: Existen cuatro operarios que se pueden asignar al trabajo con tres mquinas. Un estudio de tiempos y movimientos ha arrojado los siguientes tiempos por operario para las tres mquinas. Indicar que operario debe trabajar en que mquina y cul de ellos no ser asignado a ninguna.

EL PROBLEMA DE ASIGNACION

Cmo la matriz no esta balanceada, es necesario incluir una mquina ficticia: (esto es fundamental para asegurar que haya una respuesta. Si la matriz no est balanceada, el problema no ser factible de resolver)

EL PROBLEMA DE ASIGNACION

Xij

= Se debe asignar el operario i a la mquina j? S o no? En matemticas existen dos nmeros cuyas propiedades hacen que puedan representar estas respuestas son el 1 y el 0, debido a que todo nmero multiplicado por 1 da el mismo nmero entonces el 1 se puede reemplazar por la respuesta S y como todo nmero multiplicado por cero da cero entonces se puede reemplazar por la respuesta No. As por ejemplo: 10X11 + 7X12 + 9 X13 + 0X14 representa el tiempo Total que empleara el operario1 en operar las mquinas, pero solo una variable de las tres anteriores puede tomar el valor de S, o sea de 1 las dems tendrn que tomar el valor de 0, y eso es debido a que el operario 1 slo puede ser asignado a una mquina, (el tiempo que utilice el operario 1 puede ser de "10" de "7" o de "9).

EL PROBLEMA DE ASIGNACION
Con base en esto podemos formular la funcin objetivo: MIN Z = 10X11 + 7X12 + 9X13 + 7X21 + 5X22 + 8X23 + 9X31 + 8X32 + 10X33 +8X41 + 9X42 + 7X43 Sujeto a: Como cada operario slo puede estar asignado a una mquina.... X11 + X12 + X13 + X14 = 1 X21 + X22 + X23 + X24 = 1 X31 + X32 + X33 + X34 = 1 X41 + X42 + X43 + X44 = 1 Y como cada mquina solo puede tener un operario asignado... X11 + X21 X12 + X22 X13 + X23 X14 + X24 + X31 + X41 = 1 + X32 + X42 = 1 + X33 + X43 = 1 + X34 + X44 = 1

Xij = 1 o 0 para toda i,j.

EL PROBLEMA DE ASIGNACION
Al resolver utilizando Software, por ejemplo el Solver del Excel, la respuesta que se obtiene es la siguiente:

Esto significa que el Operario 1 queda asignado a la Mquina Ficticia (es decir, es el que sobra), El operario 2 se asigna a la mquina 2, El operario 3 se asigna a la mquina 1 y El operario 4 se asigna a la mquina 3. Costo total Mnimo de la Solucin = 5 + 9 + 7 = 21

SOLUCION DE LINDO
LP OPTIMUM FOUND AT STEP 11 OBJECTIVE FUNCTION VALUE 1) 21.00000 VALUE 0.000000 1.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 1.000000 0.000000 REDUCED COST 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 0.000000 1.000000 1.000000 1.000000 4.000000 0.000000 0.000000 2.000000 0.000000 2.000000 VARIABLE X11 X12 X13 X21 X22 X23 X31 X32 X33 X41 X42 X43 X14 X24 X34 X44

ROW SLACK OR SURPLUS DUAL PRICES 2) 0.000000 0.000000 3) 0.000000 2.000000 4) 0.000000 0.000000 5) 0.000000 2.000000 6) 0.000000 -9.000000 7) 0.000000 -7.000000 8) 0.000000 -9.000000 9) 0.000000 0.000000

EL PROBLEMA DE ASIGNACION

Algoritmo Hngaro Mtodo de Kning


El Algoritmo Hngaro sirve para reemplazar los mtodos tradicionales de la Programacin Binaria, que implican muchos clculos, aprovechando la forma especial que tienen los problemas de Asignacin. El Algoritmo que se presenta a continuacin sirve para minimizar, pero con algunas modificaciones se puede emplear tambin para maximizar. Si la matriz no est balanceada, balancearla incluyendo las filas o columnas ficticias necesarias.

EL PROBLEMA DE ASIGNACION ALGORITMO 1. De cada elemento de la matriz restar el mnimo valor de cada fila 2. De cada elemento de la matriz restar el mnimo valor de cada columna 3. Cubrir todos los ceros existentes con el mnimo numero de lneas posible (solo Horizontales y/o Verticales) 4. Si el menor nmero de lneas es igual al nmero de asignaciones a realizar. Detener el proceso pues se ha encontrado la solucin optima, procediendo a asignar por filas o columnas con ceros nicos. Si el menor Numero de lneas es menor que el numero de asignaciones a realizar ir al paso 5. 5. Ubicar el mnimo valor de todos los elementos no cubiertos, restar ese valor a todos los elementos no cubiertos y sumarlo a las intersecciones. Volver al Paso 3. (Mtodo de Flood, tambin se llama condicin de Kning)
9

EL PROBLEMA DE ASIGNACION
Ejemplo de Asignacin utilizando el Algoritmo Hngaro: Existen cuatro operarios que se pueden asignar al trabajo con tres mquinas. Un estudio de tiempos y movimientos ha arrojado los siguientes tiempos por operario para las tres mquinas. Indicar que operario debe trabajar en que mquina y cul de ellos no ser asignado a ninguna.

Si la matriz no est balanceada, balancearla incluyendo las filas o columnas ficticias necesarias

EL PROBLEMA DE ASIGNACION

De cada elemento de la matriz restar el mnimo valor de cada fila. De cada fila el menor valor es el 0 por lo tanto al restarle 0 queda la misma matriz.

EL PROBLEMA DE ASIGNACION
De cada elemento de la matriz restar el mnimo valor de cada columna

Como el menor numero de lneas es a su vez menor que el numero de asignaciones a realizar (3 lneas 4 asignaciones). Se debe buscar el menor elemento de los no cubiertos (2) y restarlo a los no cubiertos sumando esa cantidad a la intersecciones, resultando:

EL PROBLEMA DE ASIGNACION

Maquina1

Maquina2

Maquina3

Maquina4 Ficticia

Operario1

0
1

0
2

Operario2

0
0
1

0
1

Operario3

0
2

Operario4

Menor Numero de lneas es igual al Numero de asignaciones a realizar, por tanto se ha encontrado la solucin optima

EL PROBLEMA DE ASIGNACION

Maquina1

Maquina2

Maquina3

Maquina4 Ficticia

Operario1

0 0 0

Operario2

Operario3

0
0

Operario4

Se asigna por filas o columnas con ceros nicos


Operario 4 a Maquina 3 7 de costo

EL PROBLEMA DE ASIGNACION

Maquina1

Maquina2

Maquina4 Ficticia

Operario1

0 0 0

Operario2

Operario3

No hay ceros nicos lo que implica ptimos alternativos (mas de un optimo)

EL PROBLEMA DE ASIGNACION

Maquina1

Maquina2

Maquina4 Ficticia

Operario1

Operario2

0
0

0
0
7 de costo 7 de costo

Operario3

Operario 1 a Maquina 2 Operario 2 a Maquina 1

Operario 3 a Maquina 4 Ficticia es decir, el operario 3 no tiene asignada actividad) Costo de la alternativa = 7 + 7 + 7 = 21

EL PROBLEMA DE ASIGNACION

Maquina1

Maquina2

Maquina4 Ficticia

Operario1

0 0 0 0

Operario2

Operario3

Operario 1 a Maquina 4 (sin trabajo)


Operario 3 a maquina 1 Operario 2 a Maquina 2 Costo Total Alternativa = 7 + 9 + 5 = 21 9 de costo 5 de costo