RUTEO DE VEH - PowerPoint PPT Presentation

About This Presentation
Title:

RUTEO DE VEH

Description:

Title: No Slide Title Author: I.T.A.M. Last modified by: I.T.A.M. Created Date: 11/30/1999 9:07:54 AM Document presentation format: On-screen Show Other titles – PowerPoint PPT presentation

Number of Views:80
Avg rating:3.0/5.0
Slides: 47
Provided by: ITAM3
Category:

less

Transcript and Presenter's Notes

Title: RUTEO DE VEH


1
RUTEO DE VEHÍCULOS
  • IMPORTANCIA el costo de transportación
    constituye de 1 a 2 tercios del costo logístico
    total.

1
2
RUTEO DE VEHÍCULOS
  • El tiempo que los bienes se encuentran en
    tránsito determina el número de envíos que un
    vehículo puede realizar en un período de tiempo y
    el costo de transportación total para todos los
    envíos

3
BENEFICIOS
  • Reducir el costo de transporte es de interés de
    la empresa (micro) y del país (macro)
  • Mejor utilización de recursos y de personal
  • Mejora el ambiente
  • Menor gasto energético
  • Reduce problemas de tránsito

4
OBJETIVO
  • EL OBJETIVO EN EL PROBLEMA DE RUTEO DE VEHÍCULOS
    ES LA MINIMIZACIÓN DE TIEMPO, DINERO Y DISTANCIA
    DADOS CIERTOS PARÁMETROS RELEVANTES
  • Minimizar la distancia recorrida en
  • Entrega de órdenes semanales o diarias a clientes
    dispersos en una zona geográfica
  • Entregas a partir de un Centro de Distribución
  • Uso de un solo vehículo

5
RESTRICCIONES
  • CAPACIDAD DE LOS VEHÍCULOS
  • LÍMITE DEL TIEMPO TOTAL QUE UN VEHÍCULO OCUPA EN
    LA RUTA
  • ASIGNACIÓN DE UN CIERTO NÚMERO DE VEHÍCULOS A
    CIERTOS CLIENTES
  • VENTANAS DE TIEMPO

6
CLASIFICACIÓN DE PROBLEMAS
  • RUTEO DE UN ORIGEN A UN DESTINO
  • RUTEO DE MÚLTIPLES ORÍGENES Y DESTINOS
  • RUTEO CON VARIOS PUNTOS Y EL MISMO ORIGEN Y
    DESTINO (ROUND-TRIP)
  • RUTEO Y PROGRAMACIÓN

7
UN ORIGEN A UN DESTINO
  • PROBLEMA DEL CAMINO MÁS CORTO.
  • El camino mas corto de un origen a diferentes
    destinos
  • ALGORITMO RUTA MÁS CORTA (DIJKSTRAS)
  • EJEMPLO DE PLANTA A AGENCIA(s)

8
EJEMPLO
  • Un camión debe ser enviado de Guadalajara a
    Mérida. Se tienen diferentes trayectos posibles
    pasando por ciudades intermedias. El objetivo es
    minimizar la distancia recorrida. Se conoce
  • Las ciudades intermedias posibles
  • La distancia entre cada ciudad posible

9
ORIGEN Y DESTINOS MÚLTIPLES
  • PROBLEMA DE FLUJO EN REDES, DE TRANSPORTE, DE
    ASIGNACIÓN
  • ALGORITMOS FLUJO EN REDES, PROGRAMACIÓN LINEAL
    ENTERA Y/O BINARIA.
  • EJEMPLO ENTREGA DE PLANTAS A AGENCIAS

10
EJEMPLO
  • Una empresa tiene tres plantas desde las cuales
    debe abastecer del mismo producto a tres clientes
    .Se conoce la demanda de cada cliente y la oferta
    de cada planta.
  • Oferta P1400 ton, P2700, P3500
  • Demanda C1600 ton, C2500, C3300
  • Costo transportacióndesde P14, 7, 6 desde
    P25, 5, 5 desde P39, 5, 8 resp.

11
EJEMPLO
  • LOS COSTOS DE TRANSPORTACIÓN SON EN DÓLARES POR
    TONELADA
  • SOLUCIÓN 400 TON DE P1 A C1
  • 200 TON DE P2 A C1
  • 200 TON DE P2 A C2
  • 300 TON DE P2 A C3
  • 300 TON DE P3 A C2
  • COSTO6,600

12
ROUND-TRIP
  • PROBLEMA DEL AGENTE VIAJERO
  • UN CAMINO HAMILTONIANO
  • PROBLEMA DIFÍCIL SI EL NÚMERO DE PUNTOS A TOCAR
    ES GRANDE
  • SE APLICAN HEURÍSTICAS
  • encontrar un camino inicial con el método del
    vecino mas cercano
  • mejorar el camino eliminando cruces

13
EJEMPLO
C
31
D
34
26
48
23
A
67
34
17
34
W
B
47
SOLUCIÓN W ---D----C----B----A
14
RUTEO Y PROGRAMACIÓN
  • RUTEO CON RESTRICCIONES
  • En cada parada hay un volumen a cargar y/o
    descargar
  • Múltiples vehículos con capacidades distintas
  • Tiempo total permitido limitado a horas
    laborables
  • Ventanas de tiempo para entrega en cada punto
  • Carga en una ruta solo después de descarga
  • Tiempo de descanso limitado en tiempo y horario

15
ALGUNOS PRINCIPIOS
  • Cargar vehículos con el volumen correspondiente a
    los sitios mas cercanos
  • Separar los sitios en cluster independientes y
    programar cada cluster por separado
  • Comenzar la ruta en el punto mas alejado del
    origen al cluster
  • Evitar cruces en la ruta
  • La ruta mas eficiente es la que realiza el
    vehículo de mayor carga

16
ALGUNOSPRINCIPIOS
  • La carga y la descarga debe mezclarse en lugar de
    dejar la carga para el final
  • Los puntos aislados de los cluster que requieren
    poco volumen deben alcanzarse con rutas
    alternativas en vehículos más pequeños
  • Evitar ventanas de tiempo muy restringidas

17
PROBLEMA DEL AGENTE VIAJERO
  • Sea GN,A,C una red donde N es el conjunto de
    nodos, A son los arcos y C(cij) es la matriz de
    costos (o distancia) de mover un vehículo desde
    el nodo i al nodo j. El problema del Agente
    Viajero consiste en encontrar un ciclo
    Hamiltoniano en la red, esto es, un ciclo que
    pasa por todos los nodos exactamente una vez.

18
PROBLEMA DEL AGENTE VIAJERO (PL entera)
  • (INEFICIENTE PARA PROBLEMAS GRANDES)
  • xij n número de nodos
  • min ?? cij xij
  • s.a Cada ciudad j debe ser visitada una sola vez
    ?xij1 para j1,,n
  • Cada ciudad i debe dejarse una sola vez
    ?xij1 para i1,,n
  • No debe haber ciclos en ningún
    subconjunto S de ciudades que incluya la
    ciudad origen ?xij? S-1
  • . indica la cardinalidad del conjunto
  • .

1 si el circuito pasa por el arco (i,j)
0 en caso contrario
i?j
j?i
i,j?S
19
PROBLEMA DEL AGENTE VIAJERO
  • Las restricciones sobre no formación de ciclos
    son del orden de 2n, pero pocas (?n) son activas
    en el óptimo lo que facilita un proceso
    iterativo. Ejemplo para 2000 ciudades se ha
    encontrado el óptimo con esta formulación (varias
    horas de computadora)
  • Una forma alternativa uj?ui1-(1-xij)n,
    j2,..,n j?i
  • requiere del orden de n-1 restricciones. Pero
    es poco eficiente para problemas grandes.
  • uj el número secuencial de la ciudad j en el
    camino

20
Secuenciación de trabajos como PAV
  • El problema de secuenciar n trabajos en una
    máquina puede plantearse como un problema de
    agente viajero con n1 ciudades las ciudades
    i1,,n corresponden a los trabajos i y la ciudad
    0 es el inicio del trayecto. La distancia entre
    las ciudades j y k es el tiempo de arranque para
    j,k?1. La distancia entre la ciudad 0 y k es el
    tiempo de preparación para el primer trabajo (k).

21
Secuenciación de trabajos como PAV
  • Minimizar el tiempo total de completar todos los
    trabajos (makespan) es equivalente a encontrar el
    mínimo ciclo en la red
  • Para estos problemas existen heurísticas llamadas
    reglas de despacho o de secuenciación, por
    ejemplo secuenciar primero el trabajo con menor
    tiempo de arranque. Esta regla es equivalente a
    la heurística del vecino más cercano

22
PROBLEMA DEL AGENTE VIAJERO
  • En la práctica puede ser importante obtener una
    buena solución en lugar del óptimo (una solución
    en pocos segundos o minutos en lugar de una mejor
    solución en horas)
  • Puede usarse Branch and Bound para resolver el
    problema. Se resuelve el problema relajado (sin
    la condición de que no haya ciclos) que es un
    problema de asignación.

23
PROBLEMA DEL AGENTE VIAJERO
  • Una solución factible para el problema puede ser
    una solución óptima para el problema de
    asignación pero que contenga subciclos. Un
    subciclo es un ciclo que no contenga todos los
    nodos de la red. En la red
  • la solución x15x21x34x43x521 tiene dos
    subciclos

24
PROBLEMA DEL AGENTE VIAJERO
  • Si es posible eliminar todas las soluciones
    factibles del problema de asignación que
    contengan subciclos y se resuelve este problema
    de asignación, se obtendrá la solución óptima del
    problema del agente viajero. No es fácil hacerlo.
    Se puede hacer con B and B ramificando de manera
    de eliminar los subciclos. Por ejemplo en el caso
    anterior ramificar con x340 o c34M

25
PROBLEMA DEL AGENTE VIAJERO
  • Cuando no se puede encontrar la solución óptima
    en un tiempo razonable usamos una Heurística
  • Una Heurística es un método que mejora la
    solución obtenida pero no encuentra
    necesariamente el óptimo. En problemas prácticos
    (por ej. secuenciación de operaciones en máquinas
    controladas por computadoras) las heurísticas
    pueden encontrar soluciones con un costo no mayor
    al 2 del costo del óptimo.
  • La eficiencia de una heurística se puede medir
    por
  • desempeño garantizado
  • análisis probabilístico
  • análisis empírico

26
PROBLEMA DEL AGENTE VIAJERO
  • Desempeño garantizado es una cota del peor de
    los casos que garantiza que tan lejos de la
    solución óptima podemos encontrarnos
  • Análisis probabilístico se supone que la
    localización de las ciudades sigue una
    distribución de probabilidad conocida. Por
    ejemplo que las ciudades son v.a. uniformemente
    distribuídas en un cuadrado unitario para cada
    heurística se calcula
  • Longitud esperada del camino encontrado
    por la heurística
  • Cuanto más cerca de 1 esté el cociente
    mejor es la heurística
  • Análisis empírico la solución obtenida por la
    heurística se compara con la solución óptima de
    un número de problemas con solución conocida

Longitud esperada del camino óptimo
27
PROBLEMA DEL AGENTE VIAJERO
  • Un proceso de solución típico para este problema
    sigue los siguientes pasos (hay varios
    algoritmos para cada paso)
  • Crear un subciclo inicial
  • Convex Hull
  • Sweep (barrido)
  • Vecino más cercano
  • Insertar nodos restantes
  • El más barato
  • El más cercano
  • El más lejano
  • Mejorar el circuito
  • Algoritmos de intercambio 2-opt, 3-opt, etc

28
PROBLEMA DEL AGENTE VIAJERO
  • Las heurísticas pueden consistir en
  • Construir un subciclo inicial y/o insertar puntos
    restantes si es necesario
  • Mejorar un ciclo existente
  • Una combinación de los dos anteriores.
    Procedimientos Compuestos

29
REGLAS MIOPES Y BUSQUEDA LOCAL
  • Las heurísticas pueden también clasificarse en
  • REGLAS MIOPES la solución se construye de manera
    progresiva. En cada iteración se tiene una
    solución parcial y se extiende esta solución
    seleccionando una de las posibles opciones. Solo
    considera la mejor opción en el
  • paso siguiente sin tomar en cuenta lo ocurrido
    antes.Ejemplo la heurística del vecino más
    cercano
  • BUSQUEDA LOCAL busca una mejor solución en un
    entorno de la solución actual. Ejemplo. 2-opt,
    3-opt. Recocido Simulado (Simulated Annealing),
    Búsqueda Tabú (Tabu Search), Algoritmos Genéticos

30
Subciclo inicial Convex Hull
  • La envoltura convexa (Convex Hull) es el convexo
    más pequeño que contiene a todos los puntos

31
ALGORITMO INCREMENTAL
  • Agrega puntos de uno en uno y actualiza la
    envolvente.
  • Si el nuevo punto está en el interior no hace
    nada, en caso contrario se eliminan todos los
    arcos que ese punto puede ver
  • Agregar dos arcos que conecten el nuevo punto con
    el resto de la envolvente
  • Repetir el proceso hasta que no queden puntos
    fuera

32
(No Transcript)
33
Gift Wrapping
  • Encontrar el punto A (con la menor coordenada en
    Y) como punto inicial
  • Encontrar el punto B tal que todos los puntos
    estén a la izquierda del arco AB (por escaneo de
    todos los puntos)
  • Encontrar C tal que todos los puntos estén a la
    izquierda del arco BC
  • Repetir el procedimiento

34
(No Transcript)
35
Reglas de Decisión
  • Los algoritmos anteriores requieren determinar
    si un punto está a la izquierda de un arco o si
    un punto puede ver un arco.
  • Las pruebas son iguales y se pueden implementar
    calculando el área de un triángulo. El área del
    triángulo PoP1P2 donde Po(xo,yo), P1(x1,y1),
    P2(x2,y2) es
  • xo x1 x2
  • 1/2 yo y1 y2
  • 1 1 1

Si el área es distinta de cero P2 está a la
izquierda de PoP1 (GW) si el área es distinta
de cero y PoP1 es un arco de la envoltura P2
puede ver a PoP1 Area positiva o negativa indica
que nos movemos en el sentido contrario al reloj
36
VECINO MÁS CERCANO
  • Paso 1 Comenzar con cualquier nodo como nodo
    inicial
  • Paso 2 Encontrar el nodo no visitado más cercano
    al último nodo visitado y agregarlo al camino.
  • Paso 3 Repetir el Paso 2 hasta que todos los
    nodos de la red estén contenidos en el camino.
    Unir el primer nodo con el último visitado.

37
Desempeño Garantizado y Número de Iteraciones
  • El método es de orden O(n2), es decir el número
    de iteraciones requeridas no es mayor a n2

38
MÉTODOS PARA INSERTAR PUNTOS LIBRES
  • Un método de inserción toma un subciclo en la
    iteración k y determina cuál de los restantes n-k
    nodos debe ser insertado
  • (paso de selección) en el circuito y entre que
    nodos (paso de inserción).
  • El más cercano
  • El más barato
  • El más alejado

39
EL MÁS CERCANO
  • Paso 1 comenzar con un subgrafo consistiendo
    solo del nodo i
  • Paso 2 encontrar el nodo r tal que cir es mínimo
    y formar el subciclo i-r-i.
  • Paso 3 (Selección) a partir de un subciclo,
    encontrar el nodo r que no está en el subciclo y
    que esté más cerca de cualquier nodo j del
    subciclo (min crj).
  • Paso 4 (Inserción) encontrar el arco (i,j) que
    minimiza circrj-cij. Insertar r entre i y j
  • Paso 5 Si todos los nodos han sido agregados
    parar, sino regresar al Paso 3.

40
Desempeño Garantizado y Número de Iteraciones
Número de iteraciones no mayor a n2.
41
EL MÁS BARATO
  • Paso 1 comenzar con una subgráfica que contiene
    solo el nodo i
  • Paso 2 encontrar el nodo r tal que cir es mínimo
    y formar el sub-ciclo i-r-i
  • Paso 3 encontrar el arco(i,j) en el sub-ciclo
    que no contenga a r tal que circrj-cij sea
    mínimo. Insertar el nodo r entre i y j
  • Tiene el mismo desempeño que el anterior y es del
    orden

42
EL MÁS LEJANO
  • Paso 1 comenzar con un subgrafo que contenga
    solo el nodo i
  • Paso 2 encontrar el nodo r tal que cir se máximo
    y formar el subciclo i-r-i.
  • Paso 3 (Selección) dado un subciclo, encontrar
    el nodo r que no esté en el subciclo y lo más
    alejado de cualquier nodo en el subciclo (max
    crj).
  • Paso 4(Inserción) Encontrar el arco (i,j) en el
    subciclo que minimice circrj-cij. Insertar r
    entre i y j
  • Paso 5 si todos los nodos están en el ciclo
    parar, sino repetir el paso 3.

43
Desempeño Garantizado y Número de Iteraciones
  • No más de n2 iteraciones

44
Método de ahorros de Clark and Wrigth
  • Paso 1 seleccionar cualquier nodo como el nodo
    central y notarlo como nodo 1.
  • Paso 2 Calcular ahorros sijc1ic1j-cij para
    i,j2,3,....,n
  • Paso 3 ordenar los ahorros del mayor al menor
  • Paso 4 comenzar por el primero de la lista y
    moverse hacia abajo formando subciclos más
    grandes ligando nodos i y j apropiados
  • Paso 5 repetir hasta que se tenga el ciclo.

45
Desempeño Garantizado y Número de Iteraciones
  • No se conoce el peor de los casos. Para una
    versión modificada donde se selecciona el mejor
    ahorro para el último nodo agregado, el desempeño
    es tal que la razón está acotada por una función
    lineal de
  • log2 (n). Es del orden O(n2 log2 (n))

46
Un ejemplo
  • La localización de los puntos es la siguiente
  • X Y
  • 1 0 0
  • 2 100 600
  • 3 400 400
  • 4 500 700
  • 5 900 400
  • 6 800 900

USAR DISTANCIA EUCLIDEANA
Write a Comment
User Comments (0)
About PowerShow.com