Director:
Msc. LVARO JUNIO CAICEDO ROLN
Ingeniero Industrial Docente UFPS
1.1. TITULO
Diseo y programacin de rutas de vehculos en un canal de distribucin tradicional
(tienda a tienda) para la empresa Pasteurizadora La Mejor S.A. de la ciudad de Ccuta.
1.2. PLANTEAMIENTO DEL PROBLEMA
El problema del agente viajero (TSP) es una de las modalidades del problema de ruteo
de vehculos (VRP) y ha sido estudiado durante muchos aos; se dice que es un
problema NP-duro ya que a medida en que aumenta el nmero de variables y
restricciones el tiempo para encontrar la solucin crece de forma polinmial.
Es por esto, que se han desarrollado en el rea de la investigacin de operaciones
metodologas que pueden dar soluciones ptimas o acercarse a ellas, estas pueden ser
mtodos determinsticos como la programacin lineal entera (PLE) o mtodos hbridos
como las heursticas: mtodo de barrido, mtodo de los ahorros o de insercin; y
metodologas
permiten mejorar en una segunda etapa las soluciones, entre estas se encuentran:
algoritmo de colonia de hormigas, algoritmo de bsqueda tab y algoritmo del vecino
ms cercano. Lo importante de conocer estas tcnicas, es saber cul es la ms apropiada
para cada modelo, su validacin mediante la evaluacin en un sistema real (la empresa)
y su comparacin con otros estudios, para as alcanzar nuevos conocimientos.
Incluir prrafos del ruteo de vehculos de artculos internacionales.
La planeacin de las actividades de distribucin comercial implica necesariamente
la toma de decisiones sobre el ruteo de vehculos, lo cual involucra: administrar
personas, vehculos, tiempo y otras variables importantes respecto de cmo, cundo,
dnde y a travs de qu tipo de vehculo se debe atender algn cliente en el tiempo, de la
manera ms adecuada. (Seplveda et al, 2014).
profesionales experimentados,
1.5.2. Especficos
Colombia; (b) cognitivas, ya que a medida que las tcnicas de solucin para este tipo de
problemas se especializan
2. MARCO REFERENCIAL
2.3. MARCO TERICO
Segn Bosque (1992) citado por Madrid A. y Ortiz L. (2007). Una red es un
sistema interconectado de elementos lineales, que forman una estructura espacial por la
que pueden pasar flujos de algn tipo: personas, mercancas, energa, informacin. Esta
definicin no slo hace referencia a la parte material de la red, que podra relacionarse
directamente con la infraestructura de transportes, el sistema de acueducto y
alcantarillado, el cableado, etc., y los puntos de destino y origen de los mismos. De ella
se puede inferir, el aspecto funcional de una red, que siendo estrictamente artificial, no
puede existir sin la dinmica que le imprime la sociedad a partir de las relaciones
polticas, informacionales, econmicas y culturales que operan sobre ella; como afirma
Santos (2000) citado por Madrid A. y Ortiz L. (2007). la red tambin es social y
poltica, por las personas, mensajes, valores que las frecuentan. Sin esto, y a despecho
de la materialidad con que se imponen nuestros sentidos, la red es, en verdad, una mera
abstraccin
En trminos grficos la red est constituida por un conjunto de puntos (nodos,
vrtices) y lneas (arcos, aristas) conectados entre s. En el anlisis espacial de acuerdo
con Segu (1995) citado por Madrid A. y Ortiz L. (2007). los nodos o vrtices de la red
pueden venir constituidos por los puntos de origen y destino de los intercambios
(ciudades, puertos, aeropuertos o centros de zona -denominados centroides, si
trabajamos a una escala urbana, a los que se les atribuyen las caractersticas del rea que
representan). Los arcos o aristas se identifican con las rutas, tanto si tienen estructura
fsica de soporte (rutas terrestres) como si no cuentan con ella (rutas martimas, areas o
referidas a tele flujos), o con los flujos (pasajeros, mercancas, flujos telemticos...) que
por ellas circulan cuando se trata de redes valorizadas. Al tratar de identificar los
componentes bsicos de una red (puntos y lneas) a partir de determinada relacin, se
pueden establecer redes a diferente escala: local, regional y mundial.
Segn Lupien, Moreland y Dangermond (1987) citados por Madrid A. y Ortiz L.
(2007).), el anlisis de redes, permite plantear y resolver un amplio conjunto de
problemas prcticos como son: la determinacin de rutas ptimas para vehculos que
deben moverse en una red de carreteras, la localizacin de servicios e instalaciones (por
ejemplo urgencia mdica) de modo eficaz en cuanto a costes de recorridos para su
Los habitantes solan dar largos paseos por la ciudad los domingos, y hubo quien se
pregunt si sera posible comenzar el paseo en algn sitio de la ciudad, atravesar todos
los puentes sin cruzar ninguno dos veces y regresar al punto de partida. El matemtico
Leonhard Euler plante una solucin a este problema, la cual fue publicada en 1736 y es
posiblemente la primera ocasin en que se utiliz la teora de grafos. Euler model con
un grafo el problema de los 7 puentes de la siguiente manera: Las 4 zonas que deban
unir los 7 puentes las represent mediante vrtices (nodos), y los 7 puentes los
represent mediante aristas (arcos), como se muestra en la figura XY. (Rosen K.H,
2003). Antes de avanzar en el problema planteado en la ciudad de Knisgberg, es
necesario aclarar los conceptos de grafo, vrtice y arista.
Segn De la Hoz A & De la Hoz E & Ariza P (2009) Un grafo G= (V, E) est
conformado por un conjunto de vrtices, V, y un conjunto de aristas, E. Cada arista es un
par (u, v) donde u, v V. En ocasiones los vrtices se denominan nodos y las aristas
arcos. Un grafo no es ms que un conjunto de puntos y un conjunto de
relaciones entre pares de puntos (Del Canto, et. al. 1993). Como todo
modelo es una abstraccin de la realidad, para hacer ms fcil su
estudio y anlisis.
Como ya se mencion, los componentes de los grafos son los
vrtices y las aristas. Arista es una lnea que une dos vrtices de un
grafo, formando un camino entre ellos. Se dice que dos aristas son
adyacentes si convergen o se encuentran en un mismo vrtice, y son
paralelas cuando tanto el vrtice final como el vrtice inicial coinciden
o es el mismo. Una arista es cclica o forma un bucle, cuando el
vrtice de origen y el de destino es el mismo. Dos vrtices (u, v) son
adyacentes si existe una arista que los une; donde u seria el vrtice
inicial y v seria el vrtice adyacente. El grado del vrtice es el nmero
de aristas que inciden en l. El grado mximo en un grafo es el grado
del vrtice ms alto entre todos sus vrtices. (De la Hoz A & De la Hoz E &
Ariza P, 2009).
Grafos dirigidos son aquellos cuyas aristas tienen un sentido u
orientacin
especfico
generalmente
indicado
por
flechas,
xn (ya que al
si y solo si,
Denotaremos
Esta formulacin fue propuesta por Dantzig, Fulkerson y Johnson. Las variables
binarias xij indican si el arco (i, j) es utilizado en la solucin. La funcin objetivo (1.1)
establece que el costo total de la solucin es la suma de los costos de los arcos
utilizados. Las restricciones (1.2) y (1.3) indican que la ruta debe llegar y abandonar
cada nodo exactamente una vez. Finalmente, las restricciones (1.4)
son llamadas
La funcin
(1.9)
es
restricciones
el
objetivo
costo
total
de
la
solucin.
Las
la cantidad de vehculos utilizados en la solucin y que todos los vehculos que parten
del depsito deben regresar. Las restricciones (1.12) y (1.13) aseguran que todo cliente
es un nodo intermedio de alguna ruta. Finalmente, la restriccin (1.14) acta como
Las variables binarias xkij indican si el arco (i, j) es utilizado por el vehculo k y las
variables ri positivas indican la carga acumulada en la ruta correspondiente hasta el nodo
i (inclusive). La funcin objetivo (1.15) mide el costo total de la solucin incluyendo
costos fijos y variables. Las restricciones (1.16) establecen que todo cliente debe ser
visitado por algn vehculo. En (1.17) se indica que si un vehculo de tipo k visita al
nodo i, entonces un vehculo del mismo tipo debe abandonarlo. Las restricciones (1.18)
y (1.19) fijan los valores de las variables r i y actan como restricciones de eliminacin
de subcircuitos, mientras que la capacidad de los vehculos se impone en (1.20).
(Olivera A, 2004).
Segn Olivera A. (2004) En esta formulacin se asume que la cantidad de vehculos
de cada tipo es ilimitada. El problema correspondiente se denomina Fleet Size and Mix
Vehicle Routing Problem (o FSMVRP). No solo se debe decidir las rutas, sino la
composicin de la flota de vehculos a utilizar. Usualmente, al tratar con problemas de
flota heterognea, se opta por utilizar este modelo aun cuando en algunos casos no
refleja la realidad. Si la cantidad de vehculos disponibles de cada tipo k fuera v k,
conocida de antemano, debera agregarse las restricciones:
Las variables xkij indican si el arco (i, j) es recorrido por el vehculo k. Las variables yki
indican la hora de arribo al cliente i cuando es visitado por el vehculo k (si el cliente no
es visitado por dicho vehculo el valor de la variable no tiene significado). La funcin
objetivo (1.21) es el costo total de las rutas. La restriccin (1.22) indica que todos los
clientes deben ser visitados. Las restricciones (1.23) y (1.24) determinan que cada
vehculo k K recorre un camino de 0 a n + 1. La capacidad de cada vehculo es
impuesta en (1.25). Siendo M una constante lo suficientemente grande, la restriccin
(1.26) asegura que si un vehculo k viaja de i a j, no puede llegar a j antes que y i + si +
tkij, y actan adems como restricciones de eliminacin de subcircuitos. Finalmente, los
lmites de las ventanas de tiempo son impuestos en (1.27). (Olivera A, 2004).
Para el caso del VRP se debe tener una solucin factible inicial con una distancia total
recorrida asociada y as realizar el rbol cortando las ramas que superen esta distancia.
(Barajas W. 2009)
Supngase un caso del TSP en el cual hay 5 puntos y la matriz de
costos
asociada
es
la siguiente:
0
1
2
3
4
0
0
8.67
17.19
32.25
15.15
1
8.67
0
13.74
25.62
17.55
2
17.19
13.74
0
35.81
30.81
3
32.25
25.62
35.81
0
26.19
4
15.15
17.55
30.81
26.19
0
Con una distancia total asociada de 99,92. Y como se observa, una solucin:
para explorar todas y cada una de las soluciones. Sin embargo esta tcnica no es muy
utilizada ya que an sigue gastando bastantes recursos y tiene limitaciones en cuanto al
tamao de n. (Barajas W. 2009).
Las heursticas son procedimientos simples que realizan una exploracin limitada
del espacio de bsqueda y dan soluciones de calidad aceptable en tiempos de clculo
generalmente moderados. Las soluciones obtenidas con esta clase de procedimientos
pueden, en general, ser mejoradas utilizando mtodos de bsqueda ms sofisticados,
pero incurriendo en elevados tiempos de ejecucin. Muchas de estas heursticas pueden
ser extendidas para manejar restricciones adicionales a las del VRP.
El Algoritmo de Ahorros
Uno de los algoritmos ms difundidos para el VRP es el Algoritmo de Ahorros de
Clarke y Wright. Si en una solucin dos rutas diferentes (0, . . . , i, 0) y (0, j, . . . , 0)
pueden ser combinadas formando una nueva ruta (0, . . . , i, j, . . . , 0) como se muestra
en la Figura WW, el ahorro (en distancia) obtenido por dicha unin es:
Pues en la nueva solucin los arcos (i, 0) y (0, j) no sern utilizados y se agregar el
arco (i, j). En este algoritmo se parte de una solucin inicial y se realizan las uniones que
den mayores ahorros siempre que no violen las restricciones del problema. Existe una
versin paralela en la que se trabaja sobre todas las rutas simultneamente, y otra
secuencial que construye las rutas de a una por vez.
Heursticas de Insercin
Las heursticas de insercin son mtodos constructivos en los cuales se crea una
solucin mediante sucesivas inserciones de clientes en las rutas. En cada iteracin se
tiene una solucin parcial cuyas rutas solo visitan un subconjunto de los clientes y se
selecciona un cliente no visitado para insertar en dicha solucin.
En las heursticas de insercin secuencial slo se considera insertar clientes en la
ltima ruta creada. La principal desventaja de este enfoque es que los ltimos clientes no
visitados tienden a estar dispersos y por lo tanto las ltimas rutas construidas son de
costo muy elevado. Las heursticas de insercin en paralelo surgen para remediar esta
deficiencia, permitiendo insertar un cliente en cualquiera de las rutas de la solucin.
Cualquier heurstica de insercin para el TSP puede ser utilizada para el VRP siempre
que se verifique la factibilidad antes de realizar las inserciones.
Insercin Secuencial de Mole & Jameson
En esta heurstica se utilizan dos medidas para decidir el prximo cliente a insertar en
la solucin parcial. Por un lado, para cada cliente no visitado se calcula la mejor
posicin para ubicarlo en la ruta actual teniendo en cuenta solamente las distancias y sin
reordenar los nodos que ya estn en la ruta. Se tiene una ruta (v 0, v1,. . ., vt, vt+1) donde v0
= vt+1 = 0. Si w es un cliente no visitado, el costo de insertar w entre v i y vi+1 (0 i t) se
define como:
La mejor posicin para insertar el cliente w en la ruta actual est dada por:
iteraciones finales del algoritmo, es decir, cuando sean las nicas alternativas factibles.
Por lo tanto, es necesario utilizar un incentivo adicional para la insercin de clientes
lejanos al depsito. Se define c2(vi, w) = c0w c1(vi, w) para cada cliente w. En cada
iteracin se busca el cliente que maximiza la medida c 2 (llamada medida de urgencia) y
se lo inserta en la posicin dada por el mnimo valor de c1.
Adems de las medidas anteriores, debe considerarse la factibilidad de las
inserciones. Cuando ninguna insercin es factible y si an quedan clientes sin visitar, se
selecciona un cliente para comenzar una nueva ruta. El algoritmo es el siguiente.
Algoritmo de Mole & Jameson
Paso 1 (creacin de una ruta). Si todos los clientes pertenecen a alguna ruta, terminar. Si
no, seleccionar un cliente no visitado w y crear la ruta r = (0, w, 0).
Paso 2 (insercin). Sea r = (v0, v1,. . ., vt, vt+1) donde v0 = vt+1 = 0. Para cada cliente no
visitado w, calcular i(w) = arg min i=0,...,t c1(vi, w). Si no hay inserciones factibles, ir al
paso 1. Calcular w = arg maxw c2(vi(w), w). Insertar w luego de vi (w ) en r.
Paso 3 (optimizacin). Aplicar el algoritmo 3-opt sobre r. Ir al paso 2.
Para seleccionar el cliente que iniciara una ruta pueden utilizarse diferentes
alternativas, por ejemplo, el ms lejano al depsito. El algoritmo utiliza dos parmetros
y para modificar sus criterios de seleccin de clientes. Al hacer crecer el parmetro
se favorece la insercin de clientes entre nodos lejanos; y al aumentar el valor de , se
privilegia la insercin de clientes lejanos al depsito.
En general, los ltimos clientes no visitados son lejanos entre s y por ende, las
ultimas rutas construidas son de mala calidad. Para corregir esta deficiencia, se propone
utilizar un procedimiento de intercambio de clientes entre las rutas una vez que el
algoritmo finaliza su ejecucin. Primero se busca reasignar clientes de modo de
disminuir el costo de la solucin. Luego, cuando todos los cambios aumentan el costo,
se prosigue realizando intercambios buscando una solucin que utilice menos vehculos.
Insercin en Paralelo de Christofides, Mingozzi y Toth
El algoritmo propuesto por Christofides, Mingozzi y Toth opera en dos fases. En la
primera fase se determina la cantidad de rutas a utilizar, junto con un cliente para
inicializar cada una de las rutas. En la segunda fase se crean dichas rutas y se inserta el
resto de los clientes en ellas.
En la primera fase del algoritmo se aplica un algoritmo de insercin secuencial para
obtener rutas compactas. No se presta especial atencin a la ubicacin de los clientes
dentro de cada ruta, pues de esta fase solo se conservan los clientes iniciales de cada ruta
y la cantidad de rutas de la solucin final.
Para inicializar la k-sima ruta se selecciona un cliente v k dentro de los no visitados.
Se define el costo de insertar el cliente w en la ruta que contiene a vk como w,vk = c0w +
cw,vk (si el cliente no puede ser insertado, la funcin toma el valor ) y se asignan
clientes a la ruta comenzando por los menores valores de hasta que no haya
inserciones factibles, en cuyo caso se crea una nueva ruta o se termina el algoritmo.
Algoritmo de Christofides, Mingozzi y Toth. Fase 1
Paso 1 (nueva ruta). Hacer k := 1.
Paso 2 (cliente inicial). Seleccionar un cliente no visitado vk para insertar en la ruta. Para
cada cliente no visitado w, calcular w,vk .
Paso 3 (inserciones). Calcular w = arg minw w,vk sobre los clientes no visitados w.
Insertar w en la ruta y aplicar el algoritmo 3-opt. Si quedan clientes no visitados que
puedan insertarse en la ruta, ir a 3.
Paso 4 (siguiente ruta). Si todos los clientes pertenecen a alguna ruta, terminar. Si no,
hacer k := k + 1 e ir a 2.
En la segunda fase del algoritmo se crean k rutas y se las inicializa con los clientes
seleccionados en el paso 2 de la fase 1. Cada cliente no visitado se asocia con la ruta en
la que el costo de insertarlo es minimizado. Luego se selecciona una ruta cualquiera en
la que se insertan los clientes que tiene asociados. Para decidir el orden en que se
insertan los clientes asociados a una ruta se calcula, para cada cliente, la diferencia entre
el costo de realizar la insercin en esa ruta y en la segunda mejor opcin para l. Cuanto
mayor es esa diferencia, mayor es la urgencia por insertar dicho cliente en esta ruta.
Algoritmo de Christofides, Mingozzi y Toth. Fase 2
Paso 5 (inicializacin). Crear k rutas r t = (0, vt, 0) para t = 1,. . ., k, siendo k la cantidad
de rutas obtenidas en la fase 1. Sea J = {r1,. . ., rk}.
Paso 6 (asociacin). Para cada cliente w que no haya sido visitado calcular t w = arg mint|
rtJ
w,vt .
Paso 7 (urgencias). Seleccionar rt J y hacer J := J \ {rt}. Para cada cliente w tal que tw
= t, calcular tw = arg mint| rtJ w,vt y w = tw tw.
Paso 8 (insercin). Calcular w = arg maxw| tw =t w. Insertar w en la ruta rt y aplicar el
algoritmo 3-opt. Si quedan clientes asociados a rt que pueden ser insertados, ir a 8.
Paso 9 (finalizacin). Si J 6= , ir a 6. Si todos los clientes han sido visitados, terminar.
Si no, aplicar el algoritmo nuevamente (incluyendo la fase 1) sobre los clientes no
visitados.
Mtodos Asignar Primero - Rutear Despus
Los mtodos asignar primero y rutear despus (cluster first - route second) proceden
en dos fases. Primero se busca generar grupos de clientes, tambin llamados clsters,
que estarn en una misma ruta en la solucin final. Luego, para cada clster se crea una
ruta que visite a todos sus clientes. Las restricciones de capacidad son consideradas en la
primera etapa, asegurando que la demanda total de cada clster no supere la capacidad
del vehculo. Por lo tanto, construir las rutas para cada clster es un TSP que,
dependiendo de la cantidad de clientes en el clster, se puede resolver en forma exacta o
aproximada.
o Heurstica de Barrido o Sweep
En la heurstica de barrido, los clusters se forman girando una semirrecta con origen
en el depsito e incorporando los clientes barridos por dicha semirrecta hasta que se
viole la restriccin de capacidad. Cada clster es luego ruteado resolviendo un TSP de
forma exacta o aproximada.
Este algoritmo puede aplicarse en problemas planos, es decir, en los que cada nodo se
corresponde con un punto en el plano y las distancias entre ellos se definen como la
distancia eucldea. Se supone que cada cliente i est dado por sus coordenadas polares
(i, i) en un sistema que tiene al depsito como origen.
Algoritmo heurstica de barrido
Paso 1 (inicializacin). Ordenar los clientes segn de manera creciente. Si dos clientes
tienen igual valor de , colocar primero el de menor valor de . Seleccionar un cliente w
para comenzar y hacer k := 1 y Ck := {w}
Paso 2 (seleccin). Si todos los clientes pertenecen a algn clster, ir a 3. Si no,
seleccionar el siguiente cliente wi. Si wi puede ser agregado Ck sin violar las
En los mtodos rutear primero - asignar despus tambin se procede en dos fases.
Primero se calcula una ruta que visita a todos los clientes resolviendo un TSP. En
general esta ruta no respeta las restricciones del problema y se particiona en varias rutas,
cada una de las cuales s es factible.
Dada r = (0, v1,. . ., vn, 0), la solucin del TSP obtenida en la primera fase, se determina
la mejor particin de r que respete la capacidad del vehculo. Este problema se puede
formular como el de hallar un camino mnimo en un grafo dirigido y acclico. Para ello,
se construye un grafo G = (X, V, W) donde X = {0, v 1,. . ., vn}. Los arcos del G conectan
todo par de clientes vi y vj con i < j y tales que la demanda total de los clientes vi+1,. . ., vj
no supera la capacidad del vehculo:
Cada arco (vi, vj) se pondera con el costo de la ruta (0, vi+1,. . ., vj, 0), es decir:
Un arco (v i, vj) representa la ruta (0, vi+1,. . ., vj, 0). Cada camino de 0 a v n en G
representa una posible particin de la ruta r en rutas que respetan las restricciones de
demanda. Por lo tanto, el camino de costo mnimo entre 0 y v n representa la particin de
costo mnimo de la ruta original en rutas que respetan la restriccin de capacidad. Como
el grafo es acclico (slo hay arcos (v i, vj) con i < j), puede utilizarse el Algoritmo de
Dijkstra para hallar dicho camino. En la Figura HH se presenta un posible ordenamiento
de los clientes de un problema y su grafo asociado. Si el camino ms corto de 0 a 4 en el
grafo fuera (0, 2, 4), la solucin dada por el algoritmo seran las rutas (0, 1, 2, 0) y (0, 3,
5, 4, 0), como se indica.
Una vez que se tiene una solucin para el problema, se puede intentar mejorarla
mediante algn procedimiento de bsqueda local. Para cada solucin s se define un
conjunto de soluciones vecinas N(s). Un procedimiento de Bsqueda Local parte de una
solucin s, la reemplaza por una solucin s N(s) de menor costo y repite el
procedimiento hasta que la solucin no pueda ser mejorada. Al terminar, se obtiene una
solucin localmente ptima respecto a la definicin de la vecindad. Para obtener s
puede buscarse la mejor solucin de N(s) (estrategia best improvement) o simplemente
tomar la primera solucin de N(s) que mejore el costo (estrategia first improvement).
Usualmente se define N(s) como las soluciones que pueden obtenerse aplicando a s
alguna regla o procedimiento sencillo llamado movida. Las movidas para el VRP
pueden clasificarse en movidas de una ruta y movidas multi-ruta.
En las movidas de una ruta los clientes que se visitan en una ruta no varan luego de
la aplicacin del operador, lo que vara es el orden en que se realizan las visitas. En las
movidas multi-ruta, adems de cambios en el orden de las visitas suele modificarse el
conjunto de clientes visitados en cada ruta.
El operador -intercambio
Uno de los operadores de bsqueda local para una ruta ms conocidos es el intercambio definido por Lin. Un -intercambio consiste en eliminar arcos de la
solucin ( > 1) y reconectar los segmentos restantes. Una solucin se dice -optima
si no puede ser mejorada utilizando -intercambios. Se llama -opt a un algoritmo de
bsqueda local que utiliza -intercambios hasta alcanzar una solucin -ptima.
En una ruta que visita n clientes, hay
dada una eleccin de arcos a eliminar, hay 21( 1)! Maneras de reconectar la ruta
(incluyendo la reconexin que vuelve a generar la misma ruta). Por lo tanto, la cantidad
de -intercambios posibles es
vk+1) y se reconecta la ruta agregando tres arcos ms. De esta manera se asegura que al
menos uno de los arcos agregados tiene menor costo que alguno de los arcos eliminados.
Como siempre se agrega el arco de menor costo entre (v 1, vk+1) y (vu, vk+1), los segmentos
que se debe reconectar son tres y no cuatro. Por lo tanto la cantidad de alternativas para
la reconexin es 8 y no 48 como en el 4-opt original. En la Figura ZZ se muestra todas
las posibles maneras de reconectar una ruta, en el caso que c v1, vk+1 cvu, vk+1; las lneas
punteadas representan caminos y las lneas llenas representan arcos.
En el mismo trabajo, se propone buscar movidas que mejoren la solucin partiendo
de u = 1 e incrementndolo en 1 cada vez que no se encuentren mejoras, hasta que u =
w. Cuando eso ocurre, se vuelve a comenzar con u = 1 hasta realizar una ronda completa
de bsquedas infructuosas, en cuyo caso se dice que la solucin es 4-ptima.
Chequear si una solucin es 4-ptima requiere un tiempo O(wn2), por lo tanto
utilizando valores de w que sean pequeos en comparacin con n se obtiene un
algoritmo con tiempo de ejecucin O(n2).
Figura XX. El nico 2-intercambio posible para los arcos marcados
Figura YY. Todos los 3-intercambios posibles para los arcos marcados
Figura ZZ. Todos los 4-intercambios posibles para los arcos marcados si cv1
,vk+1
cvu,vk+1 .
El algoritmo de Lin-Kernigham
Un problema que surge al aplicar -intercambios es que debe fijarse el valor de de
antemano. El algoritmo propuesto por Lin y Kernigham [38] utiliza la idea de
intercambiar un conjunto de arcos por otro, pero determinando dichos conjuntos (y su
cardinalidad) dinmicamente durante la ejecucin del algoritmo. Dada una ruta, la idea
es determinar dos conjuntos de arcos {x1 , . . . , xk} e {y1 , . . . , yk} tales que su
intercambio disminuya el costo de la solucin. Los arcos x deben ser parte de la ruta,
ambos conjuntos deben ser disjuntos y, adems, eliminar los arcos x y agregar los arcos
y debe formar una ruta cerrada.
Algoritmo 3-opt
Metaheursticas
Las Metaheursticas son procedimientos genricos de exploracin del espacio de
soluciones para problemas de optimizacin y bsqueda. Proporcionan una lnea de
diseo que, adaptada en cada contexto, permite generar algoritmos de solucin. En
general, las metaheursticas obtienen mejores resultados que las heursticas clsicas,
pero incurriendo en mayores tiempos de ejecucin (que de todos modos, son inferiores a
los de los algoritmos exactos).
Las tcnicas metaheursticas se pueden clasificar en: metaheursticas basadas en
trayectoria y metaheursticas basadas en poblacin.
La Bsqueda Tab
Los orgenes de la Bsqueda Tab (Tabu Search, TS) pueden situarse en diversos
trabajos publicados a finales de los 70 (Glover, 1977). Oficialmente, el nombre y la
metodologa fueron introducidos posteriormente por Fred Glover (1989). Numerosas
aplicaciones han aparecido en la literatura, as como artculos y libros para difundir el
cono cimiento terico del procedimiento (Glover and Laguna, 1997).
TS es una tcnica para resolver problemas combinatorios de gran dificultad que est
basada en principios generales de Inteligencia Artificial (IA). En esencia es un
metaheursticos que puede ser utilizado para guiar cualquier procedimiento de bsqueda
lo cal en la bsqueda agresiva del optimo del problema. Por agresiva nos referimos a la
estrategia de evitar que la bsqueda quede atrapada en un ptimo lo cal que no sea
global. A tal efecto, TS toma de la IA el concepto de memoria y lo implementa mediante
estructuras simples con el objetivo de dirigir la bsqueda teniendo en cuenta la historia
de esta. Es decir, el procedimiento trata de extraer informacin de lo sucedido y actuar
en consecuencia. En este sentido puede decirse que hay un cierto aprendiza je y que la
bsqueda es inteligente. El principio de TS podra resumirse como:
Es mejor una mala decisin basada en informacin que una buena decisin al azar, ya
que, en un sistema que emplea memoria, una mala eleccin basada en una estrategia
proporcionara claves tiles para continuar la bsqueda.
Una buena eleccin fruto del azar no proporcionara ninguna informacin para
posteriores acciones.
TS comienza de la misma forma que cualquier procedimiento de bsqueda local,
procediendo iterativamente de una solucin x a otra y en el entorno de la primera: N(x).
Sin embargo, en lugar de considerar todo el entorno de una solucin, TS define el
entorno reducido N(x) como aquellas soluciones disponibles del entorno de x. As, se
considera que a partir de x, slo las soluciones del entorno reducido son alcanzables.
N(x) N(x)
Existen muchas maneras de definir el entorno reducido de una solucin. La ms
sencilla consiste en etiquetar como tab las soluciones previamente visitadas en un
pasado cercano. Esta forma se conoce como memoria a corto plazo (short term memory)
y est basada en guardar en una lista tab T las soluciones visitadas recientemente
(Recency). As en una iteracin determinada, el entorno reducido de una solucin se
obtendra como el entorno usual eliminando las soluciones etiquetadas como tab.
N(x) = N(x) \ T
El objetivo principal de etiquetar las soluciones visitadas como tab es el de evitar
que la bsqueda se cicle. Por ello se considera que tras un cierto nmero de iteraciones
la bsqueda est en una regin distinta y puede liberarse del status tab (pertenencia a T)
a las soluciones antiguas. De esta forma se reduce el esfuerzo computacional de calcular
el entorno reducido en cada iteracin. En los orgenes de TS se sugeran listas de tamao
pequeo, actualmente se considera que las listas pueden ajustarse dinmicamente segn
la estrategia que se est utilizando.
Se define un nivel de aspiracin como aquellas condiciones que, de satisfacerse,
permitiran alcanzar una solucin aunque tenga status tab. Una implementacin
sencilla consiste en permitir alcanzar una solucin siempre que mejore a la mejor
almacenada, aunque est etiquetada tab. De esta forma se introduce cierta flexibilidad
en la bsqueda y se mantiene su carcter agresivo.
3. DISEO METODOLGICO
3.2.1. Poblacin
El nmero total de clientes distribuidos en toda la ciudad, incluye los centros de
distribucin.
3.2.2. Muestra
Se tomar una muestra necesaria para obtener un nivel confianza del 95% y un error
admisible del 5%, aleatorizada.
3.3.
INSTRUMENTOS
TCNICAS
PARA
LA
RECOLECCIN
DE
INFORMACIN
3.3.1. Fuentes primarias
Excel
Solver de Excel
WinQSB
VRP Solver v1.3
Google earth
MS Project
Matlab
4. CONTENIDO TENTATIVO
histricos de los pedidos realizados por los clientes, capacidades de los vehculos, costos
fijos y variables de operacin de los vehculos, caractersticas de los pedidos como
frecuencias y requisitos de entrega en tiempo y cantidad.
Se procede a tomar una muestra aleatoria de clientes a visitar y se seleccionan las
variables y las restricciones ms importantes para este proceso.
Se diligencia la matriz de distancias usando la herramienta de mapas de Google.
Se realiza la recoleccin de datos durante una semana de operaciones y se tabulan para
su posterior anlisis.
PRIMERA FASE DE