Poductividad con Excel

Aprende Excel resolviendo problemas reales de ingeniería industrial. Cada artículo te guía desde cero con datos reales, fórmulas explicadas y ejercicios prácticos diseñados para que apliques lo que aprendes en clase.

Análisis de Redes de Transporte: Ruta más corta con Solver o Dijkstra

Análisis de Redes de Transporte: Ruta más corta con Solver o Dijkstra

En el dinámico mundo de la logística y la ingeniería industrial, la eficiencia es sinónimo de rentabilidad. Determinar la ruta óptima para el transporte de mercancías o la asignación de recursos es un problema central. Este artículo técnico te guiará a través de dos metodologías potentes —el uso de Solver en Excel y el algoritmo de Dijkstra— para resolver el desafío de encontrar la ruta más corta en una red de transporte.

Definición del problema

El Análisis de Redes de Transporte se enfoca en modelar sistemas complejos (como redes de distribución, cadenas de suministro o sistemas de comunicación) como un grafo, donde los nodos representan ubicaciones (almacenes, clientes, centros de distribución) y las aristas representan las rutas de conexión. El objetivo primordial, en este contexto, es resolver el problema de la Ruta más corta. Operacionalmente, esto significa minimizar el costo total, la distancia recorrida o el tiempo de tránsito entre un punto de origen y un punto de destino, considerando las capacidades y distancias asociadas a cada enlace de la red.

Explicación técnica

Existen dos enfoques principales para abordar este problema, cada uno con sus fortalezas:

Solver (Programación Lineal)

Cuando se utiliza Solver en Excel, el problema se formula como un modelo de Programación Lineal (PL). Aquí, las variables de decisión son los flujos que pasan por cada arco de la red. La Función ObjetivoRestricciones

Algoritmo de Dijkstra

Dijkstra es un algoritmo de búsqueda de caminos más cortos diseñado para grafos con pesos de arista no negativos. Funciona de manera voraz, construyendo progresivamente el camino más corto desde un nodo fuente hasta todos los demás nodos. Mantiene una tabla de distancias acumuladas, seleccionando iterativamente el nodo no visitado con la distancia más corta conocida hasta el origen, y relajando (actualizando) las distancias de sus vecinos.

Guía paso a paso

A continuación, detallamos cómo aplicar ambos métodos con un ejemplo práctico de una red de 6 nodos (Almacén A, Clientes C1 a C5).

Desarrollo paso a paso con Solver (Enfoque de Flujo)

Asumamos que queremos enviar una unidad de producto desde el Almacén (A) hasta el Cliente 5 (C5), minimizando la distancia total.

Configuración en Excel:

ABCDEF
1NodoAC1C2C3C4C5
2Distancia (Ejemplo)–105812–
3Flujo (Variable)1X1X2X3X4X5
4Distancia Total (Objetivo)=SUMA(Distancia*Flujo)=B2*C3=C2*D3………

Implementación en Solver:

  • Establecer Objetivo: Celda de Distancia Total (Minimizar).
  • Variables de Decisión: Las celdas de Flujo (X1, X2, etc.).
  • Restricciones:

Desarrollo paso a paso con Dijkstra (Enfoque de Búsqueda)

Este método es más directo para encontrar la ruta única más corta sin considerar capacidades de flujo complejas.

Tabla de Distancias Acumuladas:

NodoDistancia AcumuladaNodo PredecesorEstado
A (Origen)0N/ANo Visitado
C1$infty$N/ANo Visitado
C2$infty$N/ANo Visitado
C3$infty$N/ANo Visitado
C4$infty$N/ANo Visitado
C5 (Destino)$infty$N/ANo Visitado

Proceso Iterativo:

  1. Seleccionar el nodo no visitado con la distancia mínima (Inicialmente, A con distancia 0). Marcarlo como visitado.
  2. Repetir hasta que C5 sea visitado.

Ejercicio propuesto

Para consolidar el aprendizaje, implementa la siguiente extensión al caso de ejemplo:

Escenario: Se introduce un nodo intermedio obligatorio, $M$ (Centro de Distribución), que debe estar en la ruta entre el Almacén (A) y el Cliente 5 (C5). Las distancias de conexión son: $A to M$ (Distancia 5), $M to C5$ (Distancia 15). Además, existen rutas directas $A to C5$ (Distancia 30) y $A to C1 to C5$ (Distancia 25).

Tarea: Utiliza el algoritmo de Dijkstra para determinar la ruta más corta de A a C5, forzando el paso por $M$ y comparando el costo total con la ruta directa más corta encontrada inicialmente.

Errores habituales

Al aplicar estas técnicas, es común caer en trampas conceptuales:

  • Confundir Modelos: Usar Dijkstra cuando el problema requiere optimización de flujo (capacidad limitada). Dijkstra solo encuentra el camino más corto; Solver encuentra la asignación óptima de recursos bajo múltiples restricciones.
  • Restricciones de Flujo Incompletas (Solver): Olvidar la restricción de conservación de flujo en los nodos intermedios. Si no se cumple, el modelo no representa un sistema de transporte cerrado.
  • Pesos Negativos (Dijkstra): El algoritmo de Dijkstra falla catastróficamente si existen aristas con pesos negativos. Para esos casos, se debe recurrir al algoritmo de Bellman-Ford.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *