Ejercicios Resueltos Metodo Hungaro



Comments



Description

Fundamentos de Investigaci´ on de Operaciones Asignaci´ on y Vendedor Viajero23 de mayo de 2004 Si bien la resoluci´ on del problema de transporte mediante tableau parece ser muy expedita, existen ciertos tipos de problemas de transporte, para los cuales el m´ etodo no es eficiente. Estos problemas son los llamados Problemas de Asignaci´ on. 1. Formulaci´ on del Problema de Asignaci´ on A modo de ejemplo, construyamos el modelo de programaci´ on lineal para el siguiente problema. Ejemplo 1 Una f´ abrica dispone de cuatro obreros para completar cuatro trabajos. Cada obrero s´ olo puede hacer uno de los trabajos. El tiempo que requiere cada obrero para completar cada trabajo se entrega en el Cuadro 1.1. Tiempo (Horas) Trabajo 2 Trabajo 3 5 8 12 6 8 3 4 6 Obrero Obrero Obrero Obrero 1 2 3 4 Trabajo 1 14 2 7 2 Trabajo 4 7 5 9 10 Cuadro 1.1: Tiempos requeridos por obreros La f´ abrica desea minimizar el tiempo total dedicado a los cuatro trabajos. Formule y resuelva un modelo que determine la mejor asignaci´ on de los obreros. En primer lugar debemos definir las variables de decisi´ on necesarias para representar las posibles alternativas de asignaci´ on. Evidentemente, de acuerdo a la naturaleza del problema conviene emplear variables binarias. Sea: xij = asignaci´ on de obrero i a trabajo j La variable binaria xij valdr´ a 1 si se asigna al obrero i al trabajo j y 0 en caso contrario. Por lo tanto, la formulaci´ on del problema queda: (1.1) 1 Se puede demostrar que como las ofertas y demandas tienen valores num´ ericos enteros. Trabajo 1 14 Obrero 1 2 Obrero 2 7 Obrero 3 2 Obrero 4 Demanda 1 1 0 1 4 0 1 1 8 1 6 10 1 3 Trabajo 2 5 1 12 Trabajo 3 8 Trabajo 4 7 0 5 1 9 1 1 Oferta 1 6 Cuadro 1. . incurriendo en un tiempo total de 5 + 5 + 3 + 2 = 15 horas.t. Las restricciones de obreros imponen que s´ olo puede ser asignado un trabajo a cada obrero. la soluci´ on ´ optima debe corresponder a un conjunto de valores enteros. 4. En general. Las restricciones de trabajos obligan a que todo trabajo deba ser asignado a un obrero.2) Donde cij representa el costo (tiempo) de la asignaci´ on del obrero i al trabajo j . Como a la derecha de cada restricci´ on se tiene un 1. 1} (i = 1 . se asigna el obrero 1 al trabajo 2. 4) (i = 1 . Siguiendo ese camino. .2: Tableau de Transporte para el Ejemplo 1 Por lo tanto. j = 1 . . . Olvidando la naturaleza de las variables. 4) (j = 1 .2. 4 i=1 n j =1 cij xij j =4 j =1 xij i=4 i=1 xij xij = 1 = 1 = {0. un problema de asignaci´ on es un problema de transporte balanceado con oferta y demanda igual a 1. 4) (Restricciones de obreros) (Restricciones de trabajos) (Variables binarias) (1. el 2 al 4. los u ´nicos valores posibles para las variables son 1 y 0. podemos olvidarnos de la condici´ on de que las variables deben ser enteras y resolver el problema mediante un tableau de transporte.Primer Semestre 2004 Asignaci´ on m´ ın s. . 2 . . el 3 al 3 y el 4 al 1. . . Luego. podemos decir que el problema anterior es un problema de transporte balanceado donde cada punto de oferta entrega una unidad y cada punto de demanda requiere una unidad. se obtiene el Cuadro 1. Ejemplo de Resoluci´ on A continuaci´ on se resuelve el problema del ejemplo mediante el M´ etodo H´ ungaro. haciendo algunas modificaciones puede ser m´ as vers´ atil: 1. Vuelva al Paso 1. repita la fila o columna seg´ un corresponda cuantas veces sea necesario. Paso 3 Determine el menor costo de la matriz reducida que no est´ a tarjado por las l´ ıneas del Paso 2. Sea dicho costo k . Si se puede hacer una asignaci´ on m´ as de una vez. Los costos de las filas o columnas artificiales deben ser id´ enticos para todas las combinaciones de forma de no generar preferencias. Si se requieren m l´ ıneas. balancee la matriz agregando filas o columnas artificiales seg´ un corresponda. el problema de asignaci´ on no est´ a balanceado. el m´ etodo Simplex para problemas de transporte es poco eficiente para resolver problemas de asignaci´ on. multiplique la matriz de costos por −1 y resuelva el problema de minimizaci´ on. Por ello. 2. Sin embargo. La principal ventaja es que el m´ etodo h´ ungaro es considerablemente m´ as simple que el m´ etodo Simplex del problema de transporte. los ceros de la matriz reducida indican la asignaci´ on o ´ptima. 2. reste a todos los coeficientes no tarjados el valor k y sume a todos los coeficientes tarjados por dos l´ ıneas el valor k . A continuaci´ on determine el costo m´ ınimo en cada columna de la matriz resultante.2. En primer lugar se busca el m´ ınimo por filas en la matriz de costos.1. Construya una nueva matriz restando a cada costo el costo menor de esa fila. M´ etodo H´ ungaro Descripci´ on En general. Construya una nueva matriz (matriz de costos reducidos) restando a cada costo el menor costo de esa columna. Paso 2 Trace el n´ umero m´ ınimo de l´ ıneas (horizontales o verticales) que son necesarias para cubrir todos los ceros de la matriz reducida. Si se requieren menos de m l´ ıneas. 2. Para aplicar el m´ etodo se deben seguir los siguientes pasos: Paso 1 Determine el menor elemento en cada fila de la matriz de costos (m × m). Similarmente al problema de transporte. 14 2 7 2 5 12 8 4 8 6 3 6 7 5 9 10 M´ ınimo por fila 5 2 3 2 Luego se resta el valor determinado en cada fila y se busca el m´ ınimo por columna: 3 . especialmente en problemas de gran tama˜ no. Luego.Primer Semestre 2004 Asignaci´ on 2. El m´ etodo H´ ungaro resuelve un problema de minimizaci´ on a partir de una matriz de costos cuadrada. Para resolver un problema de asignaci´ on cuyo objetivo es maximizar la funci´ on objetivo. siga al Paso 3. para resolver problemas de asignaci´ on (minimizaci´ on) se emplea normalmente el M´ etodo H´ ungaro. Balancee el problema. 3. Si el n´ umero de filas y columnas en la matriz de costos no son iguales. el cero de la primera fila y cuarta columna puede ser descartado pues ya existe una asignaci´ on obligatoria en la primera fila. Por ejemplo. Por otro lado. 4 . luego x41 = 1. por lo tanto x24 = 1. 10 0 5 0 0 9 5 1 3 3 0 3 0 0 4 5 Luego. Para interpretar la asignaci´ on debemos buscar aquellas filas y columnas que posean un u ´nico cero. de los coeficientes no tarjados el menor es 1. 10 0 5 0 0 9 5 1 3 3 0 3 0 0 4 5 Como el n´ umero de l´ ıneas trazadas es igual a la dimensi´ on de la matriz se ha encontrado el ´ optimo. la segunda columna posee un u ´nico cero en la primera fila. Volvemos a trazar el n´ umero m´ ınimo de l´ ıneas que cubran todos los ceros. 10 0 5 0 0 9 5 1 3 3 0 3 0 0 4 5 A continuaci´ on se puede descartar el cero de la segunda fila y la primera columna pues ya existe una asignaci´ on obligatoria en esa fila. luego x12 = 1. De esta forma. luego x33 = 1. la fila y columna 3 posee un u ´nico 0. en la primera columna y cuarta fila s´ olo queda un cero. 10 0 5 0 0 9 5 1 3 3 0 3 0 0 4 5 El resultado verifica la soluci´ on obtenida mediante el tableau de transporte. Finalmente.Primer Semestre 2004 Asignaci´ on M´ ınimo por columna 9 0 4 0 0 0 10 5 2 0 3 4 0 4 0 2 3 6 8 2 Se resta el menor costo por columna y se trazan el menor n´ umero de l´ ıneas que cubran todos los ceros de la matriz de costos reducida: 9 0 4 0 0 10 5 2 3 4 0 4 0 1 4 6 Luego. el u ´nico cero restante en la cuarta columna es el de la segunda fila. Restamos a todos los no tarjados 1 y sumamos 1 a los tarjados dos veces. Se puede aplicar el mismo argumento a cualquier otra fila o columna. el paso 3 tambi´ en crea una nueva matriz con la misma soluci´ on ´ optima que la matriz original.1. Existen 3 obreros disponibles para ejecutar dichas labores. es necesario discutir el siguiente resultado: Si se suma una constante a cada costo de una fila o de una columna de un problema de transporte balanceado. Justificaci´ on Intuitiva del M´ etodo H´ ungaro Para entregar una justificaci´ on intuitiva de c´ omo trabaja el M´ etodo H´ ungaro. cuando el paso 2 indica que se requieren m l´ ıneas para cubrir todos los ceros de la matriz. considerando un problema de asignaci´ on con costos no negativos. supongamos que se agrega una constante k a cada costo en la primera fila del ejemplo en estudio. la soluci´ on ´ optima no cambia si se agrega una constante k a cada costo de la primera fila. Los obreros 2 y 3 pueden ejecutar hasta dos trabajos. Ejemplos Adicionales Ejercicio 1 Una constructora debe contratar obreros para realizar 4 trabajos. Luego.3. Por lo tanto. Entonces: Nuevo valor de la funci´ on objetivo = valor anterior + k (x11 + x12 + x13 + x14 ) Como cualquier soluci´ on factible del problema debe cumplir que: x11 + x12 + x13 + x14 = 1 Nuevo valor de la funci´ on objetivo = valor anterior + k Debido a que minimizar el valor de una funci´ on m´ as una constante es equivalente a minimizar la funci´ on.Primer Semestre 2004 Asignaci´ on 2. 2. la soluci´ on al problema es invariante. Los pasos 1 y 3 tambi´ en aseguran que todos los costos sean no negativos. Trabajos 2 3 4 46 42 40 48 44 47 45 45 Obrero 1 Obrero 2 Obrero 3 1 50 51 - Cuadro 2. Para mostrar que el resultado es correcto.4. el efecto neto de los pasos 1 y 3 del M´ etodo H´ ungaro es crear una secuencia de problemas de asignaci´ on (con costos no negativos) tal que todos ellos poseen la misma soluci´ on ´ optima al problema de asignaci´ on original. se ha encontrado una soluci´ on ´ optima para el problema original. Por lo tanto. Cada vez que se realiza el paso 3. 5 . En suma. Determine la asignaci´ on que minimiza los costos de ejecutar los cuatro trabajos.1: Montos para realizar trabajos El obrero 1 tiene disponibilidad para ejecutar s´ olo un trabajo. el paso 1 crea una nueva matriz de costos que posee la misma soluci´ on ´ optima que el problema original. se crea al menos un nuevo cero en la matriz de costos. Entonces. cualquier asignaci´ on factible para la cual todos los xij iguales a 1 tienen un costo asociado nulo. El paso 3 del m´ etodo es equivalente a sumar k a cada costo de una fila tarjada y restar k a cada costo de las columnas no tarjadas (o viceversa). El monto (en miles de pesos) cobrado por cada obrero para realizar cada trabajo se indica en el Cuadro 2. El paso 1 del M´ etodo H´ ungaro consiste (para cada fila y columna) en restar una constante a cada elemento de la fila o columna. deben ser una soluci´ on ´ optima. Volvemos a identificar el n´ umero m´ ınimo de l´ ıneas y al menor valor no tarjado: 0 0 0 M M 0 1 1 0 0 0 1 1 2 2 0 M M 4 4 1 0 0 0 0 En este caso el n´ umero m´ ınimo de l´ ıneas para cubrir todos los ceros es 5. la matriz queda de 5 filas. por simplicidad emplearemos el cero. repetiremos una vez las filas dos y tres. 0 1 1 M M 0 2 2 1 1 0 0 2 M 2 M 3 5 3 5 0 0 0 0 0 Restamos a los coeficientes no tarjados el 1 y se los sumamos a los tarjados dos veces. lo que obliga a hacer otras asignaciones: 6 . As´ ı. cuadramos la matriz agregando una columna ficticia. De la cuarta columna podemos asignar inmediatamente un cero. Los costos de dicha columna deben ser id´ enticos para no generar preferencias. pues en cada fila hay un cero. Restando por columnas se obtiene: 0 1 1 M M 0 2 2 1 1 0 0 2 M 2 M 3 5 3 5 0 0 0 0 0 Luego. El menor valor no tarjado es 1. descartando el de la primera fila: 1 0 0 M M 1 1 1 0 0 0 0 0 M 0 M 1 3 1 3 2 0 0 0 0 A continuaci´ on. Luego. Luego. se obtiene que el m´ ınimo de l´ ıneas para cubrir todos los ceros es 2. Arbitrariamente asignaremos un cero en la primera celda de la segunda fila. ni por filas ni por columnas existe un u ´nico cero. por lo que pueden existir soluciones alternativas. por lo que se est´ a en el ´ optimo.Primer Semestre 2004 Asignaci´ on Como los obreros 2 y 3 pueden realizar hasta dos trabajos. la matriz de costos queda (las M indican asignaci´ on imposible): 50 51 51 M M 46 48 48 47 47 42 44 44 45 45 40 M M 45 45 0 0 0 0 0 Restando por filas la matriz no cambia. agregaremos dos columnas artificiales para cuadrar la matriz. Determine el mejor equipo que se podr´ ıa enviar al campeonato. por lo tanto se debe plantear como un problema de maximizaci´ on. Adem´ as. N 8 7 5 3 4 8 E 5 4 4 2 5 3 S 8 2 7 4 4 7 O 5 6 5 4 4 4 Juan Pedro Ra´ ul Sergio Arturo Carlos Cuadro 2. multiplicaremos por −1 la matriz de ganancias.2.2: Rendimientos de los jugadores En este caso interesa maximizar el rendimiento del equipo. la asignaci´ on queda: Obrero 1 Obrero 2 Obrero 3 → → → Trabajo 4 Trabajo 1 y 3 Trabajo 2 1 1 1 0 0 0 0 0 1 1 0 M M 3 3 2 0 0 0 0 Buscando las otras asignaciones alternativas. Ejercicio 2 Para participar en el pr´ oximo campeonato de bridge. luego la matriz de costos queda: -8 -7 -5 -3 -4 -8 -5 -4 -4 -2 -5 -3 -8 -2 -7 -4 -4 -7 7 -5 -6 -5 -4 -4 -4 0 0 0 0 0 0 0 0 0 0 0 0 . Hay seis jugadores disponibles. Dado que el M´ etodo H´ ungaro s´ olo minimiza.Primer Semestre 2004 Asignaci´ on 1 0 0 M M 1 1 1 0 0 0 0 0 1 1 0 M M 3 3 2 0 0 0 0 Para completar la asignaci´ on volvemos a asignar arbitrariamente el cero de la cuarta fila y la segunda columna: 1 0 0 M M Por lo tanto. el Club universitario debe enviar un equipo de 4 personas. se repite la misma soluci´ on ´ optima. cuyos rendimientos relativos en cada una de las posiciones se indican en el Cuadro 2. las dos opciones de asignaci´ on posibles representan que Ra´ ul y Sergio no integrar´ an el equipo. la asignaci´ on ´ optima tiene un rendimiento esperado de 27. la tercera y cuarta fila (o quinta y sexta columna) no est´ an asignadas.Primer Semestre 2004 Asignaci´ on A continuaci´ on se resta el m´ ınimo costo por filas y por columnas y se busca el n´ umero m´ ınimo de l´ ıneas que cubran todos los ceros: 0 0 2 1 1 0 3 3 3 2 0 5 0 5 0 0 1 1 3 1 2 0 1 4 4 3 3 0 1 4 4 3 3 0 1 4 Restando 1 a las celdas no tarjadas y sum´ andoselo a las tarjadas dos veces se obtiene el siguiente tableau. A continuaci´ on se procede a asignar: 0 0 2 4 3 0 1 1 1 3 0 3 0 5 0 3 3 1 2 0 1 2 2 3 1 0 0 0 0 1 1 0 0 0 0 1 Si bien en el tableau anterior. 8 . luego se ha alcanzado el ´ optimo. Se vuelve a buscar el n´ umero m´ ınimo de l´ ıneas que cubran todos los ceros y se identifica el coeficiente menor no tarjado: 0 0 2 2 2 0 2 2 2 2 0 4 0 5 0 1 2 1 2 0 1 0 1 3 3 2 2 0 1 3 3 2 2 0 1 3 Se vuelve a aplicar el m´ etodo a la matriz siguiente: 0 0 2 3 2 0 2 2 2 3 0 4 0 5 0 2 2 1 2 0 1 1 1 3 2 1 1 0 0 2 2 1 1 0 0 2 En la nueva matriz de costos no es posible trazar un n´ umero inferior a 6 l´ ıneas para cubrir todos los ceros. Luego: Juan Pedro Arturo Carlos → → → → S O E N 8 6 5 8 27 Por lo tanto. 1 0.3 0.5 Prof 0.5 0.4 Dormeur 0. La tabla 2. Sampras y Kuerten.3 0. Cada uno debe jugar al menos un partido.1 Grincheux 0.1 0. Se cuenta con 3 tenistas: Agassi. Se pide determinar la mejor estrategia para ganar el torneo.3: Probabilidad de ganar de cada tenista Ejercicio 3 Se est´ a organizando un torneo de tenis en donde se deben jugar 5 partidos.2 0.4 0.4 0.3 muestra la probabilidad de ganar de cada tenista dependiendo de su rival.2 0.2 Atchoum 0. 9 .Primer Semestre 2004 Asignaci´ on Agassi Sampras Kuerten Simplet 0.3 Cuadro 2.5 0. 3. i = 2 . Definamos: xij = 1 la soluci´ on indica ir desde la ciudad i a la j 0 en caso contrario (3. Las restricciones (c) aseguran que se parta desde cada ciudad. se debe determinar el orden en que se deben recorrer las 5 ciudades partiendo desde la ciudad 1.1. Las restricciones (b) aseguran que se llegue s´ olo una vez a cada ciudad. N ) (i = j . . . . 1} 0 (j = 1 . En primer lugar. N . . Las restricciones (d) son las fundamentales. se cii = M . Las distancias (km) entre las ciudades donde se ubican sus almacenes se entrega en el Cuadro 3. formularemos un modelo de programaci´ on lineal entera. N ) (j = 1 . .Primer Semestre 2004 Asignaci´ on 3.1) En forma alternativa simplemente se puede eliminar las variables xii del modelo para evitar las asignaciones no deseadas. Ejemplo 2 El propietario de una peque˜ na cadena de almacenes visita una vez al mes todas sus tiendas. N . j = 2 . . minimizando el camino total recorrido. Veamos un ejemplo. El due˜ no de los almacenes vive en la Ciudad 1. N ) (b) (c) (d) (3. problemas que poseen un conjunto finito de soluciones factibles. . Para todo i = j se tiene c ij = distancia desde la ciudad i a la ciudad j .2) ui − uj + N xij ≤ N −1 La funci´ on objetivo (a) refleja la longitud total del camino recorrido.1: Distancias entre ciudades Claramente. . De acuerdo a las variables definidas. 3.1. ¿ Qu´ e recorrido debe seguir para minimizar la distancia total recorrida ? Ciudad 1 0 132 217 164 58 Ciudad 2 132 0 290 201 79 Ciudad 3 217 290 0 113 303 Ciudad 4 164 201 113 0 196 Ciudad 5 58 79 303 196 0 Ciudad Ciudad Ciudad Ciudad Ciudad 1 2 3 4 5 Cuadro 3. es decir. Supongamos que se deben visitar las ciudades 1. sin pasar dos veces por un mismo lugar. El Problema del Vendedor Viajero Descripci´ on General El problema del Vendedor viajero pertenece a la familia de problemas de optimizaci´ on combinatoria. . N . . . donde M es un n´ umero muy grande en relaci´ on a las distancias del problema. . ellas aseguran que: 10 . j = 1 . En t´ erminos generales. N ) (i = 1 . . . N ) (i = 1 . el modelo de programaci´ on lineal queda: Min st i=N i=1 j =N j =1 i=1 j =1 cij xij (a) xij xij xij uj = = = ≥ 1 1 {0. . volviendo al punto desde donde se parti´ o. el problema del vendedor viajero consiste en determinar c´ omo se debe recorrer la totalidad de un conjunto de puntos. 2. . . pase por todos los puntos sin repetir. En el ejemplo. Para ilustrar el funcionamiento del modelo. Supongamos ahora que la Ciudad 1 fue la primera visitada. Por ejemplo. comience y termine en el mismo punto.7) (3. Esta asignaci´ on contiene 2 subtours: 1 − 5 − 2 − 1 y 3 − 4 − 3. supongamos que se tiene como soluci´ on al problema del ejemplo x15 = x21 = x34 = x43 = x52 = 1. que comienza y termina en la misma ciudad. con una distancia total recorrida de: 217 + 113 + 196 + 79 + 132 = 737 [km]. A modo de ejemplo. . Consideremos: t i = posici´ on en el tour cuando la ciudad i es visitada. un tour podr´ ıa ser: 1 − 3 − 4 − 5 − 2 − 1. se tiene que ui ≤ 5 y ui > 1 (i = 2. consideremos el tour 1 − 3 − 4 − 5 − 2 − 1.8) Como las variables ui representan la posici´ on en el tour. La restricci´ on de x32 queda: u3 − u2 + 5x32 ≤ 4 → u 3 − u2 ≤ 4 (3.4) y u4 − u3 + 5x43 ≤ 4 (3. Cualquier conjunto de valores de xij que conformen un subtour no sean soluciones factibles. u4 = 3 y u5 = 4. por lo tanto el subtour 3 − 4 − 3 no es una soluci´ on factible para el modelo de programaci´ on lineal. Luego. es decir. Llamaremos tour a cualquier camino que satisfaga todas las condiciones del problema del vendedor viajero.Primer Semestre 2004 Asignaci´ on 1. N ). Un subtour es un camino cerrado. la restricci´ on (d) de x52 se satisface ya que: −1 + 5 ≤ 4 (3. la restricci´ on correspondiente a x52 es: u5 − u2 + 5x52 ≤ 4 Como la Ciudad 2 es la que sigue inmediatamente a la Ciudad 5 se tiene: u5 − u2 = −1 Por lo tanto. En este caso: u3 ≤ 5 u2 > 1 → u3 − u2 ≤ 5 − 2 = 3 11 (3. 2. . Cualquier conjunto de valores de xij que conformen un tour sea una soluci´ on factible. un subtour podr´ ıa ser 1 − 5 − 2 − 1.9) . . Si escogemos el subtour que no contiene a la Ciudad 1 (3-4-3) y escribimos las restricciones (d) correspondiente a estas asignaciones se obtiene: u3 − u4 + 5x34 ≤ 4 Sumando ambas restricciones se obtiene: 5(x34 + x43 ) ≤ 8 (3.3) La restricci´ on anterior no se puede satisfacer para la combinaci´ on x 43 = x34 = 1. por ejemplo x32 de acuerdo al tour escogido. Se puede verificar que las restricciones (d) son violadas por cualquier subtour posible. u2 = 5. Consideremos ahora cualquier restricci´ on (d) que contenga un x ij = 1. las otras variables son: u 1 = 1.6) (3. En el ejemplo.5) Consideremos ahora una restricci´ on correspondiente a un xij = 0. pero que no pasa por todas las ciudades. Entonces. si ui = ti cualquier tour satisface las restricciones (d). u3 = 2. Para el problema del ejemplo. el modelo efectivamente elimina cualquier secuencia de N ciudades que comiencen en la Ciudad 1 y que contengan un subtour.u5 + 5 x25 <= 4 u3 .u4 + 5 x34 <= 4 u3 .u2 + 5 x32 <= 4 u3 . Luego.u5 + 5 x45 <= 4 u5 .u3 + 5 x43 <= 4 u4 .Primer Semestre 2004 Asignaci´ on Por lo tanto. Evidentemente. por lo tanto tiende a ser poco eficiente. Por lo tanto. el modelo resuelve el problema del Vendedor Viajero.u4 + 5 x54 <= 4 end int x12 int x13 int x14 int x15 int x21 int x23 int x24 int x25 int x31 int x32 int x34 int x35 12 .u3 + 5 x53 <= 4 u5 .u2 + 5 x42 <= 4 u4 .u4 + 5 x24 <= 4 u2 .u5 + 5 x35 <= 4 u4 . las restricciones (d) para las variables xij = 0 tambi´ en se satisfacen cuando las variables contienen un tour. el modelo en LINDO queda: min 132 x12 + 217 x13 + 164 x14 + 58 x15 + 132 x21 + 290 x23 + 201 x24 + 79 x25 + 217 x31 + 290 x32 + 113 x34 + 303 x35 + 164 x41 + 201 x42 + 113 x43 + 196 x45 + 58 x51 + 79 x52 + 303 x53 + 196 x54 st x12 + x13 + x14 + x15 = 1 x21 + x23 + x24 + x25 = 1 x31 + x32 + x34 + x35 = 1 x41 + x42 + x43 + x45 = 1 x51 + x52 + x53 + x54 = 1 x21 + x31 + x41 + x51 = 1 x12 + x32 + x42 + x52 = 1 x13 + x23 + x43 + x53 = 1 x14 + x24 + x34 + x54 = 1 x15 + x25 + x35 + x45 = 1 u2 .u2 + 5 x52 <= 4 u5 .u3 + 5 x23 <= 4 u2 . el modelo crece r´ apidamente seg´ un aumente el n´ umero de ciudades incluidas en el problema. 000000 132.000000 0.000000 201.000000 0.000000 217.000000 0.000000 0.000000 0.000000 0.000000 0.000000 113.000000 0. el ´ optimo encontrado corresponde al tour 1 → 5 → 2 → 4 → 3 → 1 con una distancia total a recorrer de 668.000000 0.000000 1.0000 VALUE 0.000000 0.000000 0.000000 REDUCED COST 132.000000 1.000000 0.000000 290.000000 0.Primer Semestre 2004 Asignaci´ on int int int int int int int int x41 x42 x43 x45 x51 x52 x53 x54 La instrucci´ on int xij de LINDO permite definir como variable binaria a xij..000000 0.000000 0.000000 290.000000 113.000000 0. ya que el modelo podr´ ıa tambi´ en haber entregado la misma secuencia en sentido inverso.000000 79.000000 196.000000 58.000000 164.000000 Por lo tanto.000000 1.000000 2.000000 1.000000 164. OBJECTIVE FUNCTION VALUE 1) VARIABLE x12 x13 x14 x15 x21 x23 x24 x25 x31 x32 x34 x35 x41 x42 x43 x45 x51 x52 x53 x54 u2 u3 u4 u5 668.000000 1.000000 303. Al resolver el modelo con LINDO. La soluci´ on encontrada no es u ´nica..000000 1.000000 0.000000 79.000000 0.000000 4.000000 0.000000 303.000000 217.000000 201. 13 .000000 58.000000 196. luego de una serie de iteraciones se obtiene: LAST INTEGER SOLUTION IS THE BEST FOUND RE-INSTALLING BEST SOLUTION. existe un m´ etodo m´ as simple que permite resolver el problema manualmente a trav´ es una combinaci´ on del M´ etodo H´ ungaro y la t´ ecnica de Ramificaci´ on y Acotamiento (Branch-and-Bound). . N ). se obtiene la matriz reducida del problema original (Cuadro 3.2. es decir.4). es decir. se verifica que una es hacer el recorrido en el sentido opuesto a a la otra. Se resta el menor valor por filas y luego por columnas. De todas maneras. si la soluci´ on del problema de asignaci´ on constituye un tour. Resolviendo. tambi´ en ser´ a soluci´ on al problema del vendedor viajero. Luego se asigna y se verifica 14 .3 y aplicamos el M´ etodo H´ ungaro a la nueva matriz (Cuadro 3.Primer Semestre 2004 Asignaci´ on Si bien el planteo anterior permite resolver el problema mediante Simplex.3 presenta dos soluciones alternativas. por lo tanto no es ´ optima. incluiremos en la diagonal de la matriz de costos c ii = M (i = 1 . Buscando el n´ umero menor de l´ ıneas que cubran todos los ceros se determina que se est´ a en el ´ optimo (Cuadro 3. La asignaci´ on es: 1 → 2 → 5 → 1 y 3 → 4 → 3. A continuaci´ on se procede a ramificar rompiendo el subtour de menor longitud. Para resolver el Subproblema 1 incorporamos una M al Cuadro 3. x34 = 0 y c34 = M sobre el problema original. es decir. podemos comenzar a construir el ´ arbol de ramificaci´ on (Figura 3. . 3.5).3: Matriz de Costos Reducida Si bien el Cuadro 3.3). x43 = 0 y c43 = M sobre el problema original.2: Matriz de Costos del Problema Original La resoluci´ on del problema anterior como un problema de asignaci´ on constituye una relajaci´ on del problema original. Luego. con un largo total: z = 132 + 79 + 58 + 113 + 113 = 495. donde se incluyan las distancias c ij (i = j ) desde cada ciudad i a cada ciudad j . M 0 104 51 0 0 M 156 67 0 106 158 M 0 245 53 69 0 M 138 0 0 243 136 M Cuadro 3. Para ello construiremos una matriz de costos. para evitar la asignaci´ on de una ciudad a si misma como se muestra en el Cuadro 3.2. Resoluci´ on del Problema del Vendedor Viajero A continuaci´ on se resolver´ a el problema del Vendedor Viajero como un problema de asignaci´ on. Adem´ as.1). Subproblema 2 Se impone 4 →3. ya que no incorpora restricciones adicionales para evitar que en la asignaci´ on aparezcan subtours. resolveremos dos suproblemas: Subproblema 1 Se impone 3 →4. La soluci´ on contiene dos subtours. M 132 217 164 58 132 M 290 201 79 217 290 M 113 303 164 201 113 M 196 58 79 303 196 M Cuadro 3. Antes de volver a ramificar debemos verificar que soluci´ on entrega la otra rama (Subproblema 2). la soluci´ on obtenida tampoco es factible. Luego restamos el menor valor por fila y luego por columna. Para resolver el Subproblema 2 incorporamos al Cuadro 3. con un largo total: z = 217 + 113 + 164 + 79 + 79 = 652 (Cuadro 3. el Subproblema 1 genera como soluci´ on los subtours 1 → 4 → 3 → 1 y 2 → 5 → 2.3 una M en la asignaci´ on 4 → 3 (Cuadro 3. deberemos escoger aquel Subproblema con menor valor de funci´ on objetivo y volver a ramificar.Primer Semestre 2004 Asignaci´ on z = 495 1→2→5→1 3→4→3 3 →4 Subproblema 1 4 →3 Subproblema 2 ´ Figura 3.5: Matriz Final Subproblema 1 Luego. La asignaci´ on obtenida corresponde a la secuencia 1 → 3 → 4 → 1 y 2 → 5 → 2. Como el camino obtenido por ambas ramas es de id´ entica longitud. el n´ umero menor de l´ ıneas que cubran todos los ceros es 5 por lo tanto se est´ a en el ´ optimo y se procede a asignar.4: Matriz de Costos Subproblema 1 si la asignaci´ on corresponde a un tour. En este caso. escogeremos arbitrariamente abrir la rama de la izquierda. M 0 0 51 0 0 M 52 67 0 106 158 M 0 245 0 16 M M 85 0 0 139 136 M Cuadro 3. interrumpiremos el subtour 2 → 5 → 2. Por lo tanto. En caso que dicha rama tampoco genere una soluci´ on factible. La soluci´ on encontrada tampoco es un tour.6).7). es decir generamos los 15 . Nuevamente.1: Arbol de Ramificaci´ on M 0 104 51 0 0 M 156 67 0 106 158 M 0 245 53 69 M M 138 0 0 243 136 M Cuadro 3. con un largo total: z = 164 + 113 + 217 + 79 + 79 = 652. 9 en cual se puede asignar.6: Matriz de Costos Subproblema 2 M 0 104 0 0 0 M 156 16 0 0 52 M M 139 53 69 0 M 138 0 0 243 85 M Cuadro 3.2. la soluci´ on ´ optima para el Subproblema 3 corresponde a la secuencia 1 → 5 → 2 → 4 → 3 → 1 con una distancia total asociada de: z = 58 + 79 + 201 + 113 + 217 = 668.5. Subproblema 4 Se impone 5 →2.2: Arbol de Ramificaci´ on Actualizado Para resolver el Subproblema 3 agregamos una M en la combinaci´ on 2 − 5 en el Cuadro 3. El ´ arbol de ramificaci´ on hasta este punto se ilustra en la Figura 3. es decir. Iterando se obtiene el Cuadro 3.Primer Semestre 2004 Asignaci´ on M 0 104 51 0 0 M 156 67 0 106 158 M M 245 53 69 0 M 138 0 0 243 136 M Cuadro 3. x52 = 0 y c52 = M sobre el Subproblema 1. es decir. El tableau deja de ser final ya que el n´ umero m´ ınimo de l´ ıneas para cubrir todos los ceros es 4 (Cuadro 3.8). z = 495 1→2→5→1 3→4→3 3 →4 Subproblema 1 z = 652 1→4→3→1 2→5→2 2 →5 5 →2 Subproblema 3 Subproblema 4 ´ Figura 3.7: Matriz Final Subproblema 2 subproblemas: Subproblema 3 Se impone 2 →5. x25 = 0 y c25 = M sobre el Subproblema 1. La secuencia anterior 4 →3 Subproblema 2 z = 652 1→3→4→1 2→5→2 16 . Luego. 7) debemos escoger uno de los subtour e M 0 0 51 0 0 M 52 67 M 106 158 M 0 245 0 16 M M 85 0 0 139 136 M Cuadro 3.Primer Semestre 2004 Asignaci´ on M 0 0 51 0 0 M 52 67 0 106 158 M 0 245 0 16 M M 85 0 M 139 136 M Cuadro 3. con un largo total: z = 217 + 113 + 164 + 79 + 79 = 652 (Cuadro 3. el valor de la funci´ on objetivo est´ a por debajo de la cota superior. Como por el momento es la mejor soluci´ on disponible fijaremos 668 como cota superior para el problema. Una vez m´ as podemos trazar un n´ umero inferior a 5 l´ ıneas por lo que debemos volver a iterar (Cuadro 3.9: Matriz Final Subproblema 3 conforma un tour. Finalmente podemos asignar. pero por debajo de la cota superior. obteniendo la secuencia 1 → 4 → 3 → 2 → 5 → 1 con una distancia total asociada de: z = 164+113+290+79+58 = 704 (Cuadro 12).11). Nuevamente se puede volver a trazar 4 l´ ıneas y volver a iterar (Cuadro 3. Como en la rama de la derecha (Subproblema 2). por lo que representa una soluci´ on factible. Para resolver el Subproblema 4 incorporamos una M a la combinaci´ on 5 − 2 del Cuadro 3.5.10). ya que a´ un es posible encontrar una soluci´ on que sea mayor a 652.10: Matriz Inicial Subproblema 4 17 . pero inferior a 668. Como la secuencia obtenida en el Subproblema 2 es 1 → 3 → 4 → 1 y 2 → 5 → 2. por la tanto constituye una soluci´ on factible para el problema del Vendedor Viajero. La secuencia encontrada constituye un tour. El resultado anterior no evita resolver el Subproblema 4. la soluci´ on obtenida est´ a por sobre la cota superior por lo que puede ser desechada.8: Matriz Inicial Subproblema 3 M 0 0 67 16 0 M 36 67 0 106 142 M 0 245 0 0 M M 85 0 M 123 136 M Cuadro 3. debemos completar la ramificaci´ on pues a´ un es factible encontrar una soluci´ on que sea igual o mayor a 652. Sin embargo. Primer Semestre 2004 Asignaci´ on M 0 0 67 0 0 M 36 67 M 106 142 M 0 229 0 0 M M 69 16 0 139 152 M Cuadro 3. es decir. Siguiendo la metodolog´ ıa empleada anteriormente. no representa una soluci´ on ´ optima. La Figura 3. debemos interrumpir el subtour 2 → 5 → 2. 18 . La soluci´ on constituye un tour. La soluci´ on del Subproblema 6 genera la secuencia: 1 → 3 → 1 y 2 → 5 → 4 → 2. no conviene seguir ramificando pues el valor de la funci´ on objetivo est´ a muy por sobre la cota superior y al ramificar s´ olo se obtendr´ an valores iguales o peores al de partida. pero est´ a por sobre la cota superior. En suma. con una distancia total asociada de z = 910. la mejor soluci´ on es la obtenida a trav´ es del Subproblema 3. por ejemplo el m´ as m´ as corto. Adem´ as. Subproblema 6 Se impone 5 →2. por lo que puede ser descartada. es decir generamos los subproblemas: Subproblema 5 Se impone 2 →5.3 muestra el ´ arbol de ramificaci´ on completo.12: Matriz final Subproblema 4 impedirlo. La soluci´ on del Subproblema 5 genera la secuencia: 1 → 5 → 2 → 3 → 4 → 1. reemplazamos la M respectiva en cada problema en la matriz final del Subproblema 2 e iteramos en caso de ser necesario. Como la soluci´ on obtenida contiene dos subtours. x52 = 0 y c52 = M sobre el Subproblema 2. Por lo tanto. x25 = 0 y c25 = M sobre el Subproblema 2. es decir.11: Segunda Iteraci´ on Subproblema 4 M 36 0 103 0 0 M 0 67 M 106 142 M 0 229 0 0 M M 69 16 0 103 152 M Cuadro 3. dada por la secuencia: 1 → 5 → 2 → 4 → 3 → 1 con una distancia total asociada de: z = 58 + 79 + 201 + 113 + 217 = 668. con una distancia total asociada de z = 704. 3: Arbol de Ramificaci´ on Final Subproblema 6 z = 910 2→5→4→2 1→3→1 19 .Primer Semestre 2004 Asignaci´ on z = 495 1→2→5→1 3→4→3 3 →4 Subproblema 1 z = 652 1→4→3→1 2→5→2 2 →5 Subproblema 3 z = 668 1→5→2→4→3→1 5 →2 4 →3 Subproblema 2 z = 652 1→3→4→1 2→5→2 2 →5 5 →2 Subproblema 4 z = 704 1→4→3→2→5→1 Subproblema 5 z = 704 1→5→2→3→4→1 ´ Figura 3. Documents Similar To Ejercicios Resueltos Metodo HungaroSkip carouselcarousel previouscarousel nextEjercicios Resueltos _ Investigacion de Operaciones IEjemplo de aplicación del método húngaroChediak Investigacion de OperacionesEjemplo del método de Vogelejemplos metodo hungaroProblemas de AsignaciónMETODO DE TRANSPORTEEjercicios Resueltos Programacion Linealejercicios-resueltos-mc3a8todo-esquina-noroeste.pdfEL MÉTODO HÚNGAROModelo de transportes y sus variantesEjercicios Modelo Transporte Resueltosmetodo hungaroInvestigacion de Operaciones Transporte y TransbordoMODELOS DE ASIGNACIÓNModelo de TrasbordoProgramacion LinealEjercicios_Metodo_HungaroLibro de Investigacion Operativa iLibrodeinvestigacion Francisco Chediakejercicios impares del capitulo de 2 del libro de Taha1 Manual de Ejercicios PLOpEjerciciosSolucionario Investigacion de Operaciones 9na EdicionMétodo Hungaro Problemas ResueltosModelo de Transporte (Vogel)Ejercicios Resueltos Programacion DinamicaGuia de ejercicios MRP 2012.pdfEjercicios de Programacion Lineal Resueltos Mediante El Metodo SimplexMore From juancc2916Skip carouselcarousel previouscarousel nextInforme de Laboratorio No 3LABORATORIO de OndasLaboratorio Electrostáica - Hielera de FaradayDirect and Indirect Speechppt coligativasInforme de Dureza y Traccionejercicios_resueltos_de_MAS.pdfDisoluciones TestEjericicios Resueltos Arbol de DesicionPERT CPM Gestion de ProyectosProblemas Resueltos Del Tema 1tema6_IIEjemplo s Formulas Nombretema6_IIAdmon Proyectos Con Pert y CpmIOTreeplanMenú del pie de páginaVolver arribaAcerca deAcerca de ScribdPrensaNuestro blog¡Únase a nuestro equipo!ContáctenosRegístrese hoyInvitar amigosObsequiosLegalTérminosPrivacidadCopyrightAsistenciaAyuda / Preguntas frecuentesAccesibilidadAyuda de compraAdChoicesEditoresRedes socialesCopyright © 2018 Scribd Inc. .Buscar libros.Directorio del sitio.Idioma del sitio: English中文EspañolالعربيةPortuguês日本語DeutschFrançaisTurkceРусский языкTiếng việtJęzyk polskiBahasa indonesiaSign up to vote on this titleUsefulNot usefulUsted está leyendo una previsualización gratuita.DescargarCerrar diálogo¿Está seguro?This action might not be possible to undo. Are you sure you want to continue?CANCELARAceptar
Copyright © 2024 DOKUMEN.SITE Inc.