miércoles, 17 de julio de 2013

Problema del camino mínimo

Los problemas conocidos como problemas del camino mínimo o camino más corto, tratan como su nombre indica de hallar la ruta mínima o más corta entre dos puntos. Este mínimo puede ser la distancia entre los puntos origen y destino o bien el tiempo transcurrido para trasladarse desde un punto a otro. Se aplica mucho para problemas de redes de comunicaciones.
Este tipo de problemas pueden ser resueltos por el método del Simplex, sin embargo existen otros métodos más eficientes como por ejemplo el algoritmo de Dijkstra o el de Bellman-Ford.
 
Ejemplo
Una persona tiene que desplazarse a diario de un pueblo 1 a otro 7. Está estudiando cual es el trayecto más corto usando un mapa de carreteras. Las carreteras y sus distancias están representadas en la figura siguiente:
 
Problema del camino mínimo

Se determinan las variables de decisión, en este caso:
  • Xij: acción de desplazarse del pueblo i al j (0 indica que no hay desplazamiento y 1 que sí hay desplazamiento)
Se determinan las restricciones y se expresan como ecuaciones o inecuaciones de las variables de decisión. Dichas restricciones se deducen del balance entre los posibles caminos que parten desde cada pueblo y los que llegan hasta él (obviando los caminos que nos devuelvan al punto de partida y los que provengan del punto de destino):
  • Balance de caminos del pueblo 1: X12 + X13 = 1
  • Balance de caminos del pueblo 2: X24 + X25 - X12 - X42 - X52 = 0
  • Balance de caminos del pueblo 3: X34 + X36 - X13 - X43 - X63 = 0
  • Balance de caminos del pueblo 4: X42 + X43 + X45 - X24 - X34 - X54 = 0
  • Balance de caminos del pueblo 5: X52 + X54 + X57 - X25 - X45 = 0
  • Balance de caminos del pueblo 6: X63 + X67 - X36 = 0
  • Balance de caminos del pueblo 7: - X57 - X67 = -1
Se expresan todas las condiciones implícitamente establecidas por la naturaleza de las variables: que no puedan ser negativas, que sean enteras, que solo puedan tomar determinados valores, ... En este caso las restricciones son que las variables deben ser booleanas (0 no se toma el camino, 1 se toma), y por lo tanto no pueden ser negativas:
  • Xij ≥ 0
  • Xij es booleano
Se determina la función objetivo:
  • Minimizar Z = 12·X12 + 4·X13 + 5·X24 + 3·X25 + 2·X34 + 10·X36 + 5·X42 + 2·X43 + 10·X45 + 3·X52 + 10·X54 + 2·X57 + 10·X63 + 4·X67

No hay comentarios:

Publicar un comentario