Академический Документы
Профессиональный Документы
Культура Документы
RESUMEN
**
ABSTRACT
TITLE2: Ant Colony, theoretical bases and application on logistics route systems optimization with
time Windows and maximum service time
AUTHOR: TOLOSA BARON, Jose Luis**
KEY WORDS: Ant Colony Optimization,
pheromone, Routing, Logistic.
DESCRIPTION: The current study shows the application of a methodology known as Ant Colony
Optimization (ACO), on the assemble of an algorithm to solve a multiobjective routing problem.
This study do not attempt to be a new revolutionary design, but a exemplification of the use of OCH
algorithms in the construction of particulars cases rout problems. The faced problem establish the
necessity of founding a set of tours that must follow a group of trucks to satisfy the material request
of a collection of clients that has reception, while four objectives are being optimize: truck number,
distance traveled, total time used and maximum service time. The applied methodology includes a
bibliographic extent review of the rout problems and ACO, the creation of a math model, the
creation of a math algorithm, an statistic study focused to determine the most influential parameters
on the quality of the answered solutions by the algorithm and the determination of optimal values
which the performance of algorithm is better. As a new purpose, the current study uses the concept
of Best/worst ant algorithm and also utilize multiobjective search concepts on an ant colony that
builds solutions on linear virtual time (all ants leave de nest at the same time). The final algorithm
has been tested yet on an only one instance, the same one that was used for parameter tuning,
resulting on very promising results.
Research work.
Facultad de Ingenieras Fsicomecnicas, Escuela de Estudios Industriales y Empresariales, Project
management: Ing. Carlos Diaz
**
TABLA DE CONTENIDO
INTRODUCCIN ............................................................................................................... 12
OBJETIVOS ........................................................................................................................ 15
OBJETIVO GENERAL ....................................................................................................... 15
OBJETIVOS ESPECFICOS............................................................................................... 15
1.
6.7.
6.8.
6.9.
6.10.
6.11.
6.12.
7.
LISTA DE FIGURAS
Figura 1. Uso de feromona para la consecucin de la ruta mas corta................................. 63
Figura 2. Espacio de las soluciones factibles ..................................................................... 100
Figura 3. Esquema de valores escalado para la matriz de feromona ................................. 108
Figura 4. Esquema Bloque de iniciacin ........................................................................... 112
Figura 5. Esquema Bloque de actividades de creacin de soluciones ............................... 113
Figura 6. Esquema bloque de actualizacin de feromona (Actualizacin)........................ 114
Figura 7.Esquema bloque de actualizacin de feromona (Reiniciacin)........................... 114
Figura 8. Esquema bloque de mutacin ............................................................................. 115
Figura 9. Esquema bloque de optimizacin local .............................................................. 116
Figura 10. Esquema de evaluacin de soluciones.............................................................. 117
Figura 11. Interfase del algoritmo computacional creado.................................................. 121
Figura 12. Esquema de instancia requerido ....................................................................... 122
LISTA DE TABLAS
Tabla 1. Parmetros constantes utilizados en la ANOVA ................................................. 124
Tabla 2. Parmetros variables utilizados en la ANOVA.................................................... 124
Tabla 3. Resultados de la prueba ANOVA ........................................................................ 126
Tabla 4. Mejores valores para los parmetros segn prueba ANOVA .............................. 126
Tabla 5. Mejores resultados obtenidos para el problema C101 ......................................... 127
Tabla 6. Comparacin de resultados obtenidos con el algoritmo propuesto,..................... 127
10
LISTA DE ANEXOS
11
INTRODUCCIN
12
13
varios aspectos son mejorados en forma paralela con la ejecucin del algoritmo.
De esta manera no solamente los problemas que tradicionalmente preocupan a
las empresas de transporte (Tamao de la flota y distancias a recorrer) son
tenidos en cuenta, sino que aspectos como la calidad del servicio y los costos
secundarios, pueden ser manejados en un solo algoritmo a la vez.
La metodologa aplicada contempla adems un estudio estadstico encaminado a
determinar los parmetros que mas influyen en la calidad de las respuestas
obtenidas por el algoritmo, y a la determinacin de los valores ptimos para los
cuales el desempeo del algoritmo es mayor.
Los resultados obtenidos mediante experimentacin una vez finalizado el
algoritmo son muy dicientes y satisfactorios ya que sin ser este un estudio
profundo, se logro obtener resultados muy cercanos al optimo para el problema
estudiado, sirviendo este algoritmo como punto de partida para programas
realmente orientados a usuarios logsticos.
El potencial demostrado durante el proyecto por esta metodologa, enmarca el
primer paso en lo que seguramente sern algoritmos mas rpidos y precisos en la
solucin de problemas de transporte y enrutamiento.
14
OBJETIVOS
OBJETIVO GENERAL
Desarrollar un modelo general para la optimizacin de sistemas logsticos de ruteo
con intervalos de recepcin y control del tiempo de atencin mximo basado en la
metodologa heurstica de colonia de hormigas como una muestra del potencial de
esta metodologa en la solucin de problemas de transporte y enrutamiento.
OBJETIVOS ESPECFICOS
15
1.
Los avances mostrados por los sistemas logsticos a nivel mundial reflejan una
tendencia de las empresas a reducir costos y aumentar la satisfaccin del cliente
mediante un gerenciamiento logstico respaldado en sistemas cada vez ms
complejos de soporte para la toma de decisiones.
En el entorno logstico, el transporte de mercancas en camiones es una actividad
tpica, utilizada para la distribucin de productos en ciudades y un problema
comn a la mayora de las organizaciones que deben atender un nmero elevado
de clientes.
Con el fin de agilizar el proceso de recepcin de materiales y la descongestin de
los puertos de desembarque, cada vez son ms las empresas que asignan a sus
proveedores un horario o intervalo de tiempo4 (ventanas de tiempo) para realizar
el proceso de entrega en un lugar especfico. Las empresas transportadoras ahora
deben incluir a sus planes de distribucin, las medidas necesarias para evitar faltar
a uno de estos intervalos de recepcin o el llegar demasiado temprano y generar
costos adicionales por esperas.
El problema que se enfrenta en este proyecto se plantea como un depsito central
que cuenta con una flota de m vehculos de capacidad limitada y que debe atender
a un conjunto de n clientes geogrficamente distribuidos que se conectan por una
red de vas simtrica5. El objetivo es entregar artculos a este conjunto de clientes
con demandas individuales y conocidas, cumpliendo con unos intervalos de
tiempo conocidos para cada cliente en el que debe ser atendido, cada cliente debe
se atendido una sola vez por un solo vehiculo y todos los clientes deben ser
atendidos. Adems cada cliente requiere de un tiempo de servicio en el cual el
vehiculo descargan los artculos. Se debe aclarar que los vehculos no vuelven a
salir una vez han regresado a la bodega.
4
Lase el numeral 1.4.5. Uso de intervalos de recepcin (ventanas de tiempo) para una descripcin mas
detallada.
5
En la forma simtrica de un problema de ruteo, la nica ruta directa entre dos clientes permite moverse tanto
en una direccin como en otra. Esta forma es la predilecta para realizar anlisis por permitir una serie
importante de optimizaciones al momento de hacer experimentos prcticos.
Se busca crear m rutas cada una con k clientes atendidos en un orden especifico,
las cuales minimicen a la vez el nmero de vehculos, la distancia total recorrida,
el tiempo total en que se incurre para terminar todas las rutas y el tiempo mximo
de servicio6. El problema puede definirse entonces como un problema de ruteo7 de
optimizacion8 con intervalos de recepcin (conocido en la literatura por sus siglas
en ingles VRPTW9) de tipo multiobjetivo10.
En un medio en el que mas clientes exigen horarios de entrega, las flotas de
entrega crecen, las entregas son mas frecuentes y las peticiones, horarios y
condiciones cambian diariamente, la necesidad de herramientas que permitan una
asignacin optima de los recursos de una forma rpida, hace que los mtodos
convencionales de planeacin que se caracterizan por ser de difcil escalado11,
sean poco eficientes, o inaplicables por el esfuerzo computacional asociado para
encontrar la solucin12.
Se trata de un problema tipo NP-Duro13, lo que garantiza solamente una solucin
deterministica en un tiempo exponencial. Por tanto la solucin debe ser un
algoritmo heurstico que pueda ser ejecutado por un computador personal en un
tiempo aceptable para ser util.
Los sistemas creados con algoritmos basados en Optimizacin por Colonias de
Hormigas 14 han demostrado una gran eficiencia y menor complejidad que los
mtodos exactos, por lo que pueden ser implementados con requerimientos
tecnolgicos mnimos.
Considerando la importancia del estudio de nuevos mtodos y sus aplicaciones a
la industria colombiana, este proyecto busca mostrar una fundamentacion terica
acerca de los sistemas de colonias de hormigas en forma general y su aplicacin
al problema particular planteado.
6
En el numeral 8.3 Definicin del objetivo puede encontrarse una definicin detallada de cada objetivo.
Lase definicin en el numeral 2.1. Definicin de ruteo y scheduling.
8
Vase el numeral 2.3. Tipos de Problemas de Ruteo de Vehculos.
9
Una descripcin se encuentra en 2.4. Descripcin de Problemas de Ruteo con Mismo Origen y Destino
10
En el numeral 4.5. Optimizacin multiobjetivo se presenta una esquematizacin detallada.
11
Que se dificultan a mediada que ms variables se integran al problema. (no pueden manejar un gran nmero
de variables)
12
Vase el numeral 4.6.Esfuerzo computacional asociado a los problemas de ruteo
13
Vase definicin en 4.2.1.Clasificacin de los problemas de decisin.
14
Vase definicin en el numeral 5.Los sistemas de colonia de hormigas
7
17
15
En el desarrollo del modelo presentado, se utiliza el axioma de que siempre encontrar una solucin
aproximada a un modelo exacto ser mejor que encontrar una solucin exacta a un modelo aproximado.
18
2. SISTEMAS LOGSTICOS
2.1.
SISTEMAS LOGSTICOS
16
TEJADA, Carlos. Ideas orientadoras sobre el sistema logstico del componente ejercito en el teatro de operaciones. En
revista Military Review, p. 44. Buenos Aires:Escuela superior de guerra, Diciembre 2001
17
Ibid., p 45
18
ANAYA, Julio. ARBONES, Eduardo. BALLOW, Ronald. BITLE, L y RAMSEY, J. Logstica Integral(1991),
Logstica Empresarial (1994). Enciclopedia del management. En PREZ, Marisol. De la Gestin de la
Produccin a la Gestin de la Cadena de Suministro (Online) Holgun: Editorial Uho, 2003. www.monografias.com
(consultado: 6 de abril de 2005).
20
ESPARCIA, Anna y SHARMAN, Ken. Algoritmos Bio-inspirados En Revista Actualidad Tic (On line),
2004 ; p. 2, http://www.iti.upv.es/cas/ (consultado: 8 de mayo de 2005)
20
ANGULO, Cesar, La Logistica (Online), 2005; p. 2, www.monografias.com (consultado: 11 de abril de
2005)
21
2.3.
DISTRIBUCIN FSICA
22
Las decisiones errneas sobre la distribucin fsica pueden provocar altos costos.
An las grandes compaas a veces utilizan poco las modernas herramientas de
decisin para coordinar los niveles de inventario, las formas de transporte y la
localizacin de la planta, la bodega y las tiendas.
Adems, la distribucin fsica no es slo un costo, sino una poderosa herramienta
de creacin de demanda.
Las compaas pueden atraer ms clientes
otorgndoles mejor servicio o precios ms bajos por medio de una mejor
distribucin fsica. En cambio, pierden clientes cuando no logran suministrarles los
bienes a tiempo22.
2.3.1. Medios de transporte. Es un elemento de mucha importancia dentro de
la distribucin fsica. Para transportar productos dentro de una ciudad y a otras se
utiliza las diferentes vas de comunicacin. Los medios mas comunes son:
Camin Los camiones han ido aumentando constantemente su participacin en
el transporte y representan el mayor porcentaje de movilizacin del total de carga
movilizada. Se encargan de la mayor parte del transporte dentro de las ciudades.
Pueden llevar productos de puerta a puerta, lo cual ahorra a los compradores la
necesidad de transferir sus productos de un lugar a otro23.
Vas Fluviales El medio ms econmico para transportar grandes cargas24. El
inconveniente de este mtodo son las limitaciones naturales de estas vas y la
necesidad de puertos de cargue.
Ferrocarril: es uno de los medios ms eficientes con relacin a su costo para
enviar grandes volmenes de productos como carbn, arena, minerales o
productos agrcolas. Su principal limitacin en Colombia es la limitada extensin
de su infraestructura.
Ibid., p. 6
CHAMOSO, Raul. Sist. de Control y Distribucin de Ventas (Online), 2004; p 3. www.monografias.com
(consultado: 10 de abril de 2005)
24
Ibid., p 3.
23,
23
Lneas areas
25
Ibid., p 8.
Se toma textualmente de CHAMOSO, Ral. Sist. de Control y Distribucin de Ventas (Online), 2004; p 3.
www.monografias.com (consultado: 10 de abril de 2005)
26
24
25
hacer contacto con los minoristas que venden los productos al pblico y hacen los
pedidos despus de lo cual los venden al consumidor final.
Productores mayoristas minoristas o detallistas: este tipo de canal se utiliza
para distribuir productos tales como medicina, ferretera y alimentos. Se usa con
productos de gran demanda ya que los fabricantes no tienen la capacidad de
hacer llegar sus productos a todo el mercado consumidor.
Productores intermediarios mayoristas consumidores: este es el canal mas
largo, se utiliza para distribuir los productos y proporciona una amplia red de
contactos; por esa razn, los fabricantes utilizan a los intermediarios o agentes.
Esto es muy frecuente en los alimentos perecederos.
2.4.
27
26
Tomadas de: PREZ, Marisol. De la Gestin de la Produccin a la Gestin de la Cadena de Suministro (Online)
Holgun: Editorial Uho, 2003. www.monografias.com (consultado: 6 de abril de 2005).
27
ESA- Efficient Store Assortment. Las decisiones tomadas por el detallista para
maximizar las ventas (como la distribucin del espacio de exposicin,
localizacin del producto, gama de productos, poltica de precio, marcas, etc)
son compartidas con el proveedor. De esta manera se obtienen beneficios
ms importantes, ya que este aporta su conocimiento especializado sobre el
producto y el tipo de consumidor.
EP- Efficient Prmotion. Suministrador y detallista colaboran en campaas de
promocin que pueden abarcar tres mbitos diferentes:
- Desarrollo de las ventas a travs de campaas orientadas al consumidor.
- Reduccin de costos utilizando tcnicas promocionales ms racionales
(couponing y eliminacin de packs especiales)
- Reduccin de las compras especulativas que dificultan la programacin
logstica eficiente.
EPD- Efficient Product Launch and Development. La introduccin de nuevos
productos es imprescindible en la actividad comercial puesto que mejora la
posicin del suministrador frente a la competencia y permite la detallista
ofrecer productos ms adaptados a las necesidades del cliente. La
colaboracin entra ambos en este campo se centra en los frentes:
- Lanzamiento y desarrollo de nuevos productos.
- Desarrollo de marcas blancas (marcas con el nombre del distribuidor y no del
fabricante)
29
28
30
29
31
30
Las ventanas de tiempo exigen una adecuada planeacion para el ruteo de los
proveedores ya que el arribo de la mercanca muy temprano supone costos de
oportunidad debidos a la espera y el arribo tardo supone la perdida de la entrega.
32
31
2.6.
Ibid., p. 305
DOMNGUEZ, Jos A. y otros. Direccin de Operaciones. Aspectos tcticos y operativos en la produccin
y los servicios, Espaa: Editorial MC Graw Hill; 1999. 305p
36
BARROS,Oscar. VARGAS, Samuel. WEBER, Richard. Evaluacin de Prcticas de Gestin en la Cadena
de Valor de Empresas Chilenas. (Online) En Revista Serie Gestion N44, p. 40 Enero, 2004; www.obarros.cl
(consultado: 9 de Mayo 2005)
35
32
las relaciones entre sus componentes y los roles que desempean. Estas
relaciones se basaran en compromisos a largo plazo edificados sobre la confianza
entre la totalidad de los componentes de la cadena37.
Las principales ventajas que pueden derivarse de la integracin son las siguientes:
37
Ibid., p 42
33
38
PAEZ, Bernardo. GONZALES, Pedro. Router: Ambiente Amigable Para Ruteo Y Scheduling De
Vehiculos (online) En Congreso Encuentro de jvenes Investigadores (Sexta edicion: 2005:Rosario), p 2 ,
www.universia.com.ar/contenidos/investigacion/unl/TECNOLOGIA/ingenieria/63.htm (consultado: 8 de
mayo de 2005)
39
Ibid., p. 4
3.2.
Tipos de Vehculos:
Pasajeros
Buses
Taxis.
Sistemas de viajes:
Recoger y entregar
Circuito
Por Prioridades
Ida y vuelta entre orgenes y destinos
Flota:
Un vehculo
Mltiples vehculos:
Vehculos iguales
35
En volumen
En localizacin
En tiempo de viaje
Componentes de Costo:
Costos fijos:
De inversin
36
Enlace cliente-vehculo
Transbordos: camin-tren
Prohibicin de transitar ciertos vehculos en ciertas reas a determinadas horas
Adems de entregar se requiere recoger artculos.
Limitacin en el tiempo total del viaje.
Limitaciones de precedencia entre clientes.
Entrega a ciertos clientes es opcional incurrindose en castigo.
Enfoques de Solucin:
Mtodos manuales: Usando mapas, afiches, cartas Gantt, pizarras...
Solucin por lgica o experiencia
Modelos heursticos
Modelos matemticos exactos
3.3.
Encontrar una ruta en una red donde el origen es diferente al punto destino.
Definir rutas de transporte entre mltiples orgenes y destinos.
Rutear vehculos cuando el origen y el punto destino son los mismos.
37
3.4.
43
Tomados de: COMAS, Jose. Ruteo de vheiculos. (online). Valencia:Universidad politecnica Diapositiva
16-19 www.mat.up.es/%7Eeqvm/opp.html (Consultado: 8 de mayo de 2005)
38
REAL ACADEMIA ESPAOLA. Diccionario de la Lengua Espaola; edicin 21, Madrid: Editorial
Espasa, 1992.
45
CRDOVA, Juan. Optimizacin a travs de colonias de hormigas. San Carlos:Universidad de San Carlos,
p 2. 2004.
40
CRDOVA, Juan. Optimizacin a travs de colonias de hormigas. San Carlos:Universidad de San Carlos,
p 2. 2004.
50
GAREY, M. JOHNSON ,D. Computers andIntractability A Guide to the Theory of NP-Completeness;
New York :W. H. Freeman and Company, 1997
51
CRDOVA, Juan. Op. cit., P 4.
52
Ibid., p 4
53
GAREY, M. JOHNSON ,D. Op. cit., p 23
41
4.3.
54
MERELO, J.J. Tcnicas heursticas de resolucin de problemas: computacin evolutiva y redes neuronales
(online) Espaa: Grupo GeNeura, 2005. http://geneura.ugr.es (consultado: 7 de Mayo de 2005)
55
Ibid., p. 3
42
4.5.
OPTIMIZACIN MULTIOBJETIVO
MERELO, J.J. Tcnicas heursticas de resolucin de problemas: computacin evolutiva y redes neuronales
(online) Espaa: Grupo GeNeura, 2005. http://geneura.ugr.es (consultado: 7 de Mayo de 2005)
43
estamos mejorando uno de los criterios, al menos vamos a estar empeorando otro
(u otros), haciendo imposible que exista dicha alternativa57, por tanto, es necesaria
una metodologa que permita desarrollar el problema como un Problema de Ruteo
Multiobjetivo.
La optimizacin multiobjetivo (u optimizacin multicriterio, multiprestaciones o
optimizacin vectorial) se define como el problema de encontrar un vector de
variables de decisin que satisfagan unas restricciones y optimicen una funcin
vectorial cuyos elementos representan a la funcin objetivo. Estas funciones
forman una descripcin matemtica de criterios de evaluacin que generalmente
estn en conflicto unos con otros. Por tanto, el trmino "optimizar" implica
encontrar una solucin que dara los valores de todas las funciones objetivo
aceptables para el diseador58.
En general no existir una combinacin que sea a la vez solucin de todos los
objetivos. De esta forma el primer concepto que se pierde es el de ptimo tal y
como se entiende en la programacin monoobjetivo tradicional, y lo que
buscaremos para solucionar nuestro problema sern las denominadas soluciones
eficientes o Pareto (soluciones que presentan un equilibrio entre los objetivos) .
El concepto de ptimo fue propuesto originalmente por Edgeworth, y ms adelante
replanteado por Pareto por lo que se le suele denominar ptimo Pareto u ptimo
tipo Pareto. Un vector es ptimo Pareto si no existe ninguno cuyos valores sean
mejores para cada uno de los componentes (estrictamente, si son menores o
iguales para todos, y al menos menor estricto para uno de ellos) o descrito de otra
manera, es un optimo que responde a la representacin de las preferencias de un
decisor por un orden parcial de tipo paretiano Lo ms habitual es que no exista un
solo ptimo Pareto, sino un conjunto de ellos; a este conjunto de soluciones se le
suele denominar conjunto no dominado, y a su grfico se le suele llamar frente
Pareto59. .
57
44
60
45
ABC
ACB
Se evala la distancia para cada uno y se escoge el menor.
Ahora, el agente debe viajar por 4 ciudades: A, B, C, D, los recorridos posibles
sern:
ABCD
ABDC
ACBD
ACDB
ADBC
ADCB
TORRES, Marcelo. Algoritmos heursticos para resolucin del vendedor viajero. (online) Santiago de
Chile: USACH , 2004. http://optimos2.diinf.usach.cl/VendedorViajero/Teoria.htm (Consultado: 16 de Mayo
de 2005)
63
47
POLYA. Mathematics and Plausible Reasoning. Volume II Patterns of Plausible Inference. p 54 Princeton
:University Press, 1968.
66
Tomados de: ATOCHA Aliseda Heurstica, hiptesis y demostracin en matemticas (online) Mexico
D.F.:Instituto de Investigaciones Filosficas. http://minerva.filosoficas.unam.mx/ (consultado: 12 de mayo de
2005)
48
67
49
68
50
5.5.
METAHEURSTICAS
5.6.
HIPERHEURSTICAS
71
TORRES, Marcelo. Algoritmos heursticos para resolucin del vendedor viajero. (online) Santiago de
Chile: USACH , 2004. http://optimos2.diinf.usach.cl/VendedorViajero/Teoria.htm (Consultado: 16 de Mayo
de 2005)
51
72
TORRES, Marcelo. Algoritmos heursticos para resolucin del vendedor viajero. (online) Santiago de
Chile: USACH , 2004. http://optimos2.diinf.usach.cl/VendedorViajero/Teoria.htm (Consultado: 16 de Mayo
de 2005)
73
Ibid.
52
5.7.
MERELO, J.J. Tcnicas heursticas de resolucin de problemas: computacin evolutiva y redes neuronales
(online) Espaa: Grupo GeNeura, 2005. http://geneura.ugr.es (consultado: 7 de Mayo de 2005)
75
MERELO, J.J. Tcnicas heursticas de resolucin de problemas: computacin evolutiva y redes neuronales
(online) Espaa: Grupo GeNeura, 2005. http://geneura.ugr.es (consultado: 7 de Mayo de 2005)
53
MERELO, J.J. Tcnicas heursticas de resolucin de problemas: computacin evolutiva y redes neuronales
(online) Espaa: Grupo GeNeura, 2005. http://geneura.ugr.es (consultado: 7 de Mayo de 2005)
54
en cada iteracin vari, adems, en vez de tomar cualquier mejora, prueba varias
y se queda con la mejora de mayor valor77.
5.7.3. Mtodos que usan soluciones parciales.
Estos mtodos van
construyendo soluciones variable a variable, no obteniendo una solucin completa
al problema hasta que todas las variables han sido asignadas.
En el caso del Agente Viajero, un algoritmo voraz comenzara con una ciudad
elegida aleatoriamente, y elegira la ciudad ms cercana a sta. Para esta
segunda ciudad, elegira la ms cercana, y as sucesivamente. En este caso, el
problema estara simplemente parametrizado con la ciudad inicial elegida.
El algoritmo representativo es el de Kart & Thompson, que es el que ha perdurado
por su flexibilidad para considerar restricciones de diversa naturaleza. En este
algoritmo las ciudades no se incluyen necesariamente al final del recorrido que se
esta creando sino en la posicin mas conveniente. En el anexo uno puede verse el
esquema de funcionamiento de este mtodo mediante un ejemplo de un problema
del Agente viajero.
Otros mtodos consisten en dividir el problema general en problemas ms
simples, y hallar la solucin a estos problemas ms simples; el mtodo se
denomina divide y vencers; en algunos casos, la solucin a un problema de
orden n puede venir resolver a otro problema de orden n-x. En el anexo dos se
presenta un ejemplo de este tipo de mtodos: el mtodo de Barrido(sweep)
aplicado al problema de ruteo con mltiples vehculos.
Uno de los mtodos ms conocidos son los algoritmos greedy, que funcionan de la
forma siguiente: para cada variable, se asigna aqul valor que maximice alguna
funcin de utilidad. Los algoritmos greedy sustituyen un criterio de optimalidad
global por un criterio en cada paso, no siempre los dos se corresponden, y por
tanto, no tienen porqu hallar el mximo global del problema78.
77
LEVINE, John. DUCATELLE, Frederick. Ant Colony Optimisation and Local Search for Bin Packing
and Cutting Stock Problems. Edinburgh: Centre for Intelligent Systems and their Applications. 2003.
78
BRAYSY, Olli. Efficient Local Search Algorithms for the Vehicle Routing Problem with Time Windows
(On line). Finlandia:University of Vaasa. En Cuarta Conferencia Internacional de Metaheursticas, Porto,
Portugal, julio de 2001. (Documento encontrado directamente a travs de www.google.com)
55
MERELO, J.J. Tcnicas heursticas de resolucin de problemas: computacin evolutiva y redes neuronales
(online) Espaa: Grupo GeNeura, 2005. http://geneura.ugr.es (consultado: 7 de Mayo de 2005)
56
80
MERELO, J.J. Tcnicas heursticas de resolucin de problemas: computacin evolutiva y redes neuronales
(online) Espaa: Grupo GeNeura, 2005. http://geneura.ugr.es (consultado: 7 de Mayo de 2005)
57
6.1.
81
CRDOVA, Juan. Optimizacin a travs de colonias de hormigas. San Carlos:Universidad de San Carlos,
p 2. 2004.
82
BENTLEY, Meter. Digital Biology.
83
CRDOVA, Juan. Optimizacin a travs de colonias de hormigas. San Carlos:Universidad de San Carlos,
p 3. 2004.
84
BONABEAU, E. DORIGO M. THERAULAZ, G.. Swarm Intelligence: From Natural to Artificial
Systems. Oxford University Press, New York, NY, 1999.
85
CRDOVA, Juan. Op. cit. p.2.
59
6.2.
Las hormigas son insectos sociales que viven en colonias y que tienen un
comportamiento dirigido al desarrollo de la colonia como un todo ms que a un
desarrollo individual. Atrados por este comportamiento los mirmeclogos PierrePaul Grass y Edward O. Wilson, realizaron un estudio donde se define la colonia
de hormigas como un solo organismo, cuyos rganos son las hormigas en si. Los
componentes de una colonia se comportan de tal forma que la conducta de la
misma es mucho mas que lo que cabria deducir de la suma de sus partes, o
incluso de la inteligencia de cada una de sus partes. Para explicar este fenmeno,
Pierre Paul Grass introdujo el concepto de Estimergia, que consiste en la sinergia
por la comunicacin que se realiza entre los miembros de la colonia a travs del
ambiente en el que se mueven86.
MERELO, J.J. Tcnicas heursticas de resolucin de problemas: computacin evolutiva y redes neuronales
(online) Espaa: Grupo GeNeura, 2005. http://geneura.ugr.es (consultado: 7 de Mayo de 2005).
87
CRDOVA, Juan. Optimizacin a travs de colonias de hormigas. San Carlos:Universidad de San Carlos,
p 2. 2004.
60
DENEUBOURG, J. GOSS, S. Collective patterns and decision making; Ethology, Ecology, Evolution,
Vol. 1, 1989, pgs. 295-311.
89
ALONSO, Sergio. CORDN, Oscar. DE VIANA, Iaki. HERRERA, Francisco La Metaheurstica de
Optimizacin Basada en Colonias de Hormigas: Modelos y Nuevos Enfoques. p. 50. Granada: Departamento
de Ciencias de la Computacin e Inteligencia Artificial. 2002.
61
90
DORIGO, Marco. DI CARO, Gianni. GAMBARDELLA, Luca. Ant Algorithms for Discrete
Optimization. En Revista Artificial Life, Bruselas: MIT Press, 1999.
91
BARN, Benjamn. ALMIRN, Marta. Colonia de Hormigas en un Ambiente Paralelo Asncrono. p.
11. San Lorenzo: Centro Nacional de Computacin. 2003
62
92
63
6.3.
Tanto las colonias de hormigas y otros insectos, como los algoritmos que las
imitan, se basan en tres principios:
Retroalimentacin positiva: mediante la feromona que se deposita
Retroalimentacin negativa: mediante la evaporacin de la feromona
Fluctuaciones mltiples: debido a la toma de decisin probabilstica de las
hormigas.
93
64
6.4.
MERELO, J.J. Tcnicas heursticas de resolucin de problemas: computacin evolutiva y redes neuronales
(online) Espaa: Grupo GeNeura, 2005. http://geneura.ugr.es (consultado: 7 de Mayo de 2005).
95
DORIGO, M., MANIEZZO, COLORNi A. An investigation of some properties of an Ant algorithm.
proceedings of the parallel problem solving from nature conference. Bruselas - Blgica, 1992.
96
MERELO, J.J Op., cit.
97
OTERO, Juan. GUERRERO, Danilo. Clasificacin Automtica Mediante Colonia De Hormigas. La
Habana: Universidad de la habana. P 12.
65
DORIGO, Marco. DI CARO, Gianni. GAMBARDELLA, Luca. Ant Algorithms for Discrete
Optimization. En Revista Artificial Life, Bruselas: MIT Press, 1999.
66
6.5.
99
67
68
101
DORIGO, Marco. DI CARO, Gianni. GAMBARDELLA, Luca. Ant Algorithms for Discrete
Optimization. En Revista Artificial Life, Bruselas: MIT Press, 1999.
69
102
DORIGO, Marco. DI CARO, Gianni. GAMBARDELLA, Luca. Ant Algorithms for Discrete
Optimization. En revista Artificial Life, Bruselas: MIT Press, 1999.
103
ALONSO, Sergio. CORDN, Oscar. DE VIANA, Iaki. HERRERA, Francisco La Metaheurstica de
Optimizacin Basada en Colonias de Hormigas: Modelos y Nuevos Enfoques. p. 50. Granada: Departamento
de Ciencias de la Computacin e Inteligencia Artificial. 2002.
70
Una hormiga estar tentada a seguir una ruta corta hacia alguna ciudad no
visitada, pero esto compite con su tendencia a transitar por caminos que ya han
sido frecuentados por otras hormigas. Es decir que la probabilidad de tomar una
ruta (hacia una ciudad no visitada) es inversamente proporcional a la distancia y
directamente proporcional a la cantidad de feromona depositada en la ruta.
104
71
En este punto se debe tener en cuenta que los algoritmos OCH presentan una
doble perspectiva:
72
opcionales, para implementar tareas desde una perspectiva global que no pueden
llevar a cabo las hormigas por la perspectiva local que ofrecen.
Algunos ejemplos de acciones del demonio son:
Observar la calidad de todas las soluciones generadas y depositar una
nueva
cantidad
de
feromona
adicional
slo
en
las
transiciones/componentes asociadas a algunas soluciones.
Aplicar un procedimiento de bsqueda local a las soluciones generadas
por las hormigas antes de actualizar los rastros de feromona.
En ambos casos, el demonio reemplaza la actualizacin en lnea a posteriori de
feromona y el proceso pasa a llamarse actualizacin fuera de lnea de rastros de
feromona.
73
74
75
() y Acciones del demonio (). En cualquier caso, la lnea de accin general de los
algoritmos de OCH actuales sigue el flujo de actividades expuesto anteriormente.
Por otra parte, la metaheurstica OCH no es lo suficientemente general como para
cubrir la familia completa de algoritmos de hormigas, que pueden definirse como
mtodos aproximados para solucionar problemas combinatorios basados en
caractersticas del comportamiento genrico de las hormigas naturales. Algunos
ejemplos de algoritmos de hormigas que no estn incluidos en la metaheurstica
OCH son el SH-rpido (Fast Ant System) un algoritmo de construccin que se
basa en el modo de operacin de una nica hormiga y que no utiliza de manera
explicita la evaporacin de feromona, y el SH-Hbrido (Hybrid Ant System) un
procedimiento de bsqueda local que hace uso de la informacin de los rastros de
feromona para generar soluciones vecinas.
En particular, el presente proyecto utiliza un algoritmo metaheurstico OCH por lo
que en lo sucesivo se considerara que tanto la feromona como la informacin
heurstica estn asociadas nicamente a las conexiones(nodos), el cual es el caso
de la gran mayora de las aplicaciones de la OCH a problemas de ruteo o
asignacin.
76
77
78
106
Deben existir los costos explcitos cij asociados con cada arista (Matriz
de Costos/Pesos).
Las componentes o las conexiones deben tener asociados rastros de
feromona , que representan un tipo de memoria indirecta y a largo
plazo del proceso de bsqueda como valores heursticos , que
representan la informacin heurstica disponible en el problema a
resolver.
El contenido de este capitulo fue obtenido principalmente de una sola fuente, a pesar de que gran parte la
notacin fue cambiada para unificarla a la utilizada en este proyecto, la mayor parte del capitulo es tomado
textualmente debido a las caractersticas de la informacin que contiene. La fuente es:
ALONSO, Sergio. CORDN, Oscar. DE VIANA, Iaki. HERRERA, Francisco La Metaheurstica de
Optimizacin Basada en Colonias de Hormigas: Modelos y Nuevos Enfoques. p. 50. Granada: Departamento
de Ciencias de la Computacin e Inteligencia Artificial. 2002.
[ ][ ]
[ ][ ]
ij . ij
, si j N mi (i )
mi
Pij = N n ij . ij
i
0, si otro _ caso
donde N mi (i ) es el vecindario alcanzable por la hormiga mi cuando se encuentra
80
ij (1 ). ij
ij ij + ijm , aij sm
i
Donde
81
Pijmi
6
[ ][ ]
[ ][ ]
ij . ij
=
N n ij . ij
i
, si j N mi (i )
Siguiente_est=aplicar_poltica_de_decisin (P, N mi (i ) )
7
r = siguiente_est; S mi = <S mi , i>
8
L mi =L mi u i
9 Fin mientras
{se ejecuta el procedimiento Evaporacin_de_feromona() se lanza y
evapora la feromona en cada arco aij: ij (1 ). ij
10 Para cada arco aij S m hacer
i
11
ij= ij+ f (C(S mi ))
12 Fin para
13 liberar_recursos_hormiga(id_Hormiga)
14 Fin Procedimiento
Los creadores del SH tambin propusieron una versin extendida del algoritmo
que normalmente mejoraba los resultados obtenidos, llamada SH elitista. En el SH
elitista, una vez que las hormigas han depositado feromona en las conexiones
asociadas a sus respectivas soluciones, el demonio realiza una deposicin
adicional de feromona en las aristas que pertenecen a la mejor solucin
encontrada hasta el momento en el proceso de bsqueda (esta solucin se
denomina la mejor global de aqu en adelante). La cantidad de feromona
depositada, que depende de la calidad de la mejor solucin global, se incrementa
en un factor e, que se corresponde con el nmero de hormigas elitistas que se
consideran, tal como sigue:
82
Pijmi
Si no (q > q0):
Pijmi
[ ][ ]
[ ][ ]
ij . ij
, si j N mi (i )
= N n ij . ij
i
0, si otro _ caso
Como puede observarse, la regla tiene una doble intencin: cuando q q0, explota
el conocimiento disponible, eligiendo la mejor opcin con respecto a la informacin
heurstica y los rastros de feromona. Sin embargo, si q > q0 se aplica una
exploracin controlada, tal como se hacia en el SH. En resumen, la regla
establece un compromiso entre la exploracin de nuevas conexiones y la
explotacin de la informacin disponible en ese momento.
En Segundo lugar, slo el demonio (y no las hormigas individualmente) actualiza
la feromona, es decir, se realiza una actualizacin de feromona fuera de lnea de
los rastros. Para llevarla a cabo, el SCH slo considera una hormiga concreta, la
que gener la mejor solucin global, Smejor-global.
La actualizacin de la feromona se hace evaporando primero los rastros de
feromona en todas las conexiones utilizadas por la mejor hormiga global (es
importante recalcar que, en el SCH, la evaporacin de feromona slo se aplica a
las conexiones de la solucin, que es tambin la usada para depositar feromona)
tal como sigue:
83
ij (1 ). ij + . 0
donde (0,1] es un segundo parmetro de disminucin de feromona. Como
puede verse, la regla de actualizacin en lnea paso a paso incluye tanto la
evaporacin de feromona como la deposicin de la misma. Ya que la cantidad de
feromona depositada es muy pequea (de hecho, 0 es el valor del rastro de
feromona inicial y se escogiese de tal manera que, en la prctica, corresponda con
el lmite menor de rastro de feromona, esto es, con la eleccin de las reglas de
actualizacin de feromona del SCH ningn rastro de feromona puede caer por
debajo de 0), la aplicacin de esta regla hace que los rastros de feromona entre
las conexiones recorridas por las hormigas disminuyan. As, esto lleva a una
tcnica de exploracin adicional del SCH ya que las conexiones atravesadas por
un gran nmero de hormigas son cada vez menos atractivas para el resto de
hormigas que las recorren en la iteracin actual, lo que ayuda claramente a que no
todas las hormigas sigan el mismo camino.
Los procedimientos Nueva_hormiga y Acciones_del_demonio (que en este caso
interacta con el procedimiento de evaporacin_de_feromona) para el SCH son
como sigue:
1 Procedimiento Nueva_Hormiga (id_Hormiga)
2 mi = id_Hormiga; r = Generar_Estado_Inicial; S mi = r
3 L mi = r
4 Mientras (estado_actual estado_objetivo)
84
q = generar_valor_aleatorio_en_[0,1]
si (q q0)
siguiente_estado = max( bij, N mi
si no
para cada s N mi (i) hacer
bij = ij . ij
(i)
Pijmi =
bij
iu
uN mi (i )
ij = (1 ). ij + . 0
Lmi = Lm i
i
10 Fin mientras
11 liberar_recursos_hormiga (id_Hormiga)
12 Fin Procedimiento
1 Procedimiento Acciones_del_demonio
2 para cada S mi hacer bsqueda_local(S mi ) {opcional}
3 Smejor-actual = mejor_solucion(S mi )
4 si (mejor (Smejor-actual, Smejor-global))
5
Smejor-global = Smejor-actual
6 Fin si
7 para cada arista aij Smejor-global hacer
{se ejecuta el procedimiento evaporacin_de_feromona() se lanza y
evapora feromona en la arista aij :
8
ij = ij + . f (C ( S Mejor Global ))
9 Fin para
10 fin Procedimiento
85
ij = (1 ). ij }
ij = (1 ). ij
Los valores posibles para los rastros de feromona estn limitados al rango
[ min, max]. Por lo tanto, la probabilidad de un estancamiento del algoritmo
disminuye al darle a cada conexin existente una probabilidad, aunque
bastante pequea, de ser escogida. En la prctica, existen heursticas para fijar
los valores de min y max. Se puede ver que, a causa de la evaporacin de la
feromona, el nivel mximo de feromona en los rastros est limitado a
*Max = 1 /( .C ( S *)) , donde S* es la solucin ptima. Basndonos en este
resultado, la mejor solucin global puede usarse para estimar max
sustituyendo S* por Smejor-global en la ecuacin de *max. Para min,
normalmente slo es necesario escoger su valor de tal manera que sea un
factor constante menor que max.
86
max
87
+ .
Donde
Mg
ij
ijorden
1
( ). f (C (S )), si aij S
= =1
0, si otro _ caso
ij = ij + . f (C ( S _ mejor global ))
14 Fin para
88
15 Fin Procedimiento
7.2.5. El Sistema de la Mejor - Peor Hormiga (SMPH). Este algoritmo es
otra extensin del SH, propuesto por Cordn et. al. en 1999, es un algoritmo de
OCH que incorpora conceptos de computacin evolutiva.
El SMPH es el algoritmo de OCH que ha obtenido los mejores resultados en la
mayora de la pruebas realizadas.
El SMPH utiliza la misma regla de transicin de estados que el SH, as como la
misma regla de evaporacin de feromona que, al igual que en el SHordenacin y el
SHMM, se aplica a todas las transiciones.
Tal como hace el SHMM, el SMPH siempre considera la explotacin sistemtica
de optimizadores locales para mejorar las soluciones de las hormigas.
Formando el ncleo del SMPH podemos encontrar las siguientes tres acciones del
demonio:
La regla mejor-peor de actualizacin de rastros de feromona, basada en la
regla de actualizacin del vector de probabilidades de PBIL, refuerza las aristas
que se encuentran en la mejor solucin global. Adems, penaliza cada
conexin de la peor solucin generada hasta el momento, Speor-actual, que no se
encuentre en la mejor global realizando una evaporacin de feromona adicional
de esos rastros. Por tanto, la regla de actualizacin de feromona en el SMPH
se convierte en:
89
90
19
si (z Pm)
20
j = generar_valor_aleatorio_en_[1,,k]
21
a = generar_valor_aleatorio_en_{0,1}
22
si (a = 0) ij = ij + mut
23
si no ij = ij - mut
24
fin si
25 Fin para
26 si (condicin_de_estancamiento)
27
para cada arista aij hacer ij = 0
28 Fin si
29 Fin Procedimiento
91
(ii)
(iii)
(iv)
(v)
(vi)
(vii)
(viii)
(ix)
Extender
el
modelo
bsico
al
modelo
completo
que
sean
diseado.
(x)
(xi)
(xii)
(xiii)
Debe quedar claro que los pasos mostrados slo dan una idea a grosso modo
sobre la implementacin del algoritmo de OCH. Adems, en muchas ocasiones la
implementacin es un proceso iterativo, en el que a medida que se obtiene una
visin ms profunda del problema y del comportamiento del algoritmo, se deben
revisar algunas de las decisiones iniciales. Por ltimo, es importante insistir en el
hecho de que los pasos ms importantes son los primeros cinco, ya que una
eleccin poco acertada en esos puntos no suele poder arreglarse con un buen
refinamiento del algoritmo.
93
9.1.
con una
[ei , li ] representa
Se asume una velocidad constante y unitaria para los vehculos, con lo que puede
asumirse para facilitar el entendimiento, que el tiempo tij necesario para ir de vi a vj
es igual a la distancia cij .
El intervalo [e0 , l 0 ] en el depsito, es conocido como horizonte de planeacin y
hace referencia al tiempo en el que la bodega estar en operacin.
9.2.
DEFINICIN DE COSTOS
95
v0i = v ki i +1 = 0 .
Donde
v ij
donde v ij V y
cual tiene a su vez un total de k clientes atendidos. Los clientes denotados iguales
a cero(0), son la bodega al inicio de la ruta y al final de esta.
Las rutas a establecer estarn regidas por algunas condiciones, propias del
problema:
q
j =1
i
j
Q, i = 1,2...m.
ev i bv i lv i , i = 1,2,....m, j = 1,2,...k + 1.
j
Para definir el valor de bvi , se establece que todo vehiculo viajara al cliente vji
j
bv i = max{ev i ; bv i + v i + cv i
j
j 1
i
j 1 , v j
j 1
Para efectos prcticos se considera b0i = e0 = 0 , es decir, los vehculos parten del
depsito en el mismo instante. Tambin es practico considerar a 0i = 0 puesto que
el vehiculo no debe descargar nada en la bodega al iniciar el recorrido.
Los tiempos de espera w estarn entonces definidos por:
j 1
96
j 1
i
j 1 ,v j
El tiempo de espera que este trabajo hace referencia se define como el tiempo
que un vehiculo debe esperar en la ubicacin de un cliente antes de poder
entregar su carga de acuerdo al intervalo de recepcin establecido.
Finalmente podemos definir el costo asociado al tiempo requerido en la ruta
Ri como108:
ki
ki
ki
9.3.
j +1
j =1
j =1
F = [F1 , F2 , F3 , F4 ]
F1 = m
108
97
ki
F2 = cvi ,vi
j
i =1 j =0
j +1
ki
ki
F3 = F2 + v i + wv i
i =1 j =1
i =1 j = 0
F4 = max i (bvik +1 ) , se desea minimizar el tiempo de la ruta mas larga, con lo que
i
98
P * = {x / x f ( x) f ( x)}
109
CRICHIGNO Jorge, TALAVERA Francisco, PRIETO Joel, BARN Benjamn, Enrutamiento Multicast
Utilizando Optimizacin Multiobjetivo, Asuncin: Centro Nacional de Computacin. 2002
110
TORO, Andrs. GIRN, JM. BESADA, E., FERNNDEZ, P. LPEZ, JA. Aplicacin del diseo de
control multiobjetivo y multivariable, con algoritmos genticos, al proceso de la fermentacin de la cerveza,
Departamento de Arquitectura de Computadores y Automtica, Universidad Complutense de Madrid.
99
Las ventajas principales del uso de este enfoque son la facilidad con que se puede
lidiar con un nmero progresivo de objetivos y que disminuye el riesgo de caer en
ptimos locales. Adems, por tratarse en realidad de un conjunto mltiple de
soluciones equivalentes entre s, el usuario tiene libertad de escoger la que ms
se ajuste a un determinado compromiso.
111
Ibid. P.16
Tomada de: NESMACHNOW, Sergio. Una Versin Paralela del Algoritmo Evolutivo para Optimizacin
Multiobjetivo NSGA-II y su Aplicacin al Diseo de Redes de Comunicaciones Confiables. En Actas del
Tercer Congreso Espaol de Metaheursticas, Algoritmos Evolutivos y Bioinspirados. Crdoba:
Espaa.2004.
112
100
102
10.1.1.
Estrategia Heurstica. La informacin heurstica esta dada por los
factores de visibilidad 118 . Expresin utilizada para denotar la deseabilidad de
escoger una ruta para satisfacer un objetivo. El modelo propuesto busca optimizar
cuatro objetivos pero el primero es totalmente ajeno en la escogencia del siguiente
cliente por lo que se plantean tres factores de visibilidad, uno para cada uno de los
objetivos restantes.
La visibilidad para el objetivo F2 (tiempo de viaje total) esta dada por:
L (i, j ) = 1 / cij
o = 1 / g ij
La preferencia de clientes donde la llegada este despus de la apertura de la
ventana y lo mas cerca posible del cierre de la ventana hace que el tiempo de
espera en general disminuya para todos los clientes.
La visibilidad para el objetivo F4 (Tiempo de ruta ms larga) esta dado por:
h = 1/ d j
La preferencia a escoger cientes con menos demanda hace que las rutas se
nivelen haciendo mas corto el tiempo de la ruta mas larga.
118
CASAL Ricardo, TONCOVICH Adrin, LPEZ Nancy, CORRAL Rafael, Estudio comparativo de
estrategias heursticas para un problema de secuenciamiento multiobjetivo. P. 43 Baha Blanca:Universidad
Nacional del Sur. Argentina 1998
119
103
mayor probabilidad
Pijk .
104
Pij
[ ]
[ ]
ij .[ L* o* h ]
, si j N k (i )
= N n ij .[ L* o* h* ]
i
0, si otro _ caso
pues su Pij ser siempre alta. Para optimizar tiempo de ejecucin y memoria se
introduce el concepto de vecinos factibles, los vecinos factibles son los G
(parmetro) por ciento clientes factibles ms cercanos. De esta manera el conjunto
N k (i ) es ahora menor, y se requiere menos tiempo de clculo con una probabilidad
muy escasa de perder una buena solucin. Para evitar que el conjunto N k (i ) sea
muy pequeo, la opcin de limitar a los vecinos aplica nicamente cuando se
tengan ms de 20 clientes factibles. El concepto de Vecino es tambin utilizado en
la bsqueda local.
105
El algoritmo itera tantas veces como sea especificado con la feromona inicial,
si despus de este numero de iteraciones no se encuentra una solucin mejor
que la global, la matriz de feromona se modifica premiando la ruta con la mejor
solucin hasta el momento (Global actual) segn:
ij = ij + * Solucion _ indicador
ij = ij * (1 )
106
En un trabajo previo
realizado por Almirn se propone una mejora en los algoritmos OCH mediante
el scalamiento lineal en iniciacin de la matriz de feromonas. Con esto, se
privilegian los caminos ms cortos en la probabilidad de que una hormiga elija
cierta ciudad, dando a las hormigas un conocimiento previo del problema, al riesgo
de poder perder alguna solucin globalmente ptima, que utiliza caminos largos
entre algunos pares de ciudades.
Rmax Rmin
* (cmax cij )
cmax cmin
ij (0) = Rmin +
120
107
Figura tomada de: ALMIRN, Marta. VIVEROS, Enrique. BARN, Benjamn, Sistema distribuido de
hormigas para el problema del cajero viajante. p. 12 Asuncion: Universidad Nacional de Asuncin. 2004
108
ia = bi (i = 0,1,2....n 1)
123
BRYSY, Olli. BERGER, Jean. BARKAOUI, Mohamed. A New Hybrid Evolutionary Algorithm For
The Vehicle Routing Problem With Time Windows. p. 28 Vaasa: University of Vaasa.2002
109
124
GARDEL, Pedro. GMEZ, Osvaldo. BARN, Benjamn . Estudio del Espacio de Soluciones del
Problema del Cajero Viajante. P. 12. San lorenzo: Centro Nacional de Computacin. 2001.
110
Bloque de Iniciacin
Bloque de actividades de creacin de soluciones
Bloque de actualizacin de feromona
Bloque de mutacin
Bloque de bsqueda local
Bloque de evaluacin de soluciones al problema multiobjetivo
10.9.1. Bloque de iniciacin. En esta fase se realizan los ajustes para que el
algoritmo pueda iniciar sus funciones. El algoritmo lee los parmetros definidos por
el usuario que se consideraran mas adelante en el algoritmo como los contadores,
el coeficiente de evaporacin de la feromona...etc, se lee la matriz de distancias
C , el vector de demandas d , valores [e , l ] de los intervalos de recepcin de los
i i
clientes, los tiempos de descarga para cada cliente, ...etc.
En este mismo bloque se realizan algunos clculos como las distancias de la
matriz de costos, se calcula los valores iniciales de la matriz de feromona,
111
Leer parmetros
Leer archivo con datos del problema
Establecer contadores a cero
Crear
Calcular distancias para todas las ciudades ingresadas en el problema y crear la matiz de costos C
Asignar a la matriz 0 los valores iniciales del rastro de feromona segn definicin del usuario
112
Existen clientes
factibles?
No
Si
q Q0 ?
Si
Pijk
para los
clientes factibles
Pijk
como
Existen camones
disponibles?
No
Bloque de evaluacin de
soluciones al problema
multiobjetivo
Si
113
114
115
Repetir n veces
Bloque de
evaluacin de
las soluciones
No
Se encontr
sustituto?
Si
No
Se cumplen las
restricciones?
Si
Si
Se mejoro la
solucin?
No
116
Si
No
Si
No
Si
No
F2 = F2 _ Mejor _ global
Si
F3 = F3 _ Mejor _ global
F4 = F4 _ Mejor _ global
Bloque de
creacin de
soluciones
No
Reiniciacin de
feromona
117
/*Iniciacin*/
Ingresar datos del problema y Parmetros del algoritmo
Para cada ciudad v {1,....n} hacer
Calcular
distancias
formula Cij =
todos
los
dems
clientes
segn
(i x j x ) 2 + (i y j y ) 2
Fin para
Calcular valores de la matriz de feromona inicial segn
min
ij (0) = Rmin + max
* (c max cij )
c
c
max min
118
Calcule
Compute Pij
Fin Para
S optimizada encontrada
S actual S optimizada
Si no
Restablecer
S actual
F1 , F2 , F3 , F4 (actuales)
Calcular
Indicador _ Solucion
Si
F1( actual ) < F1( global ) , F1( actual ) < F1( global ) ,
F1( actual ) < F1( global ) , F1( actual ) < F1( global )
119
Asignar
x Mejor _ global P
Borrar soluciones anteriores de
ij = 0
/*Reiniciacin de feromona*/
Si no
Si
hacer
/*Solucin igual*/
x Actuall P
Si no
Si no
Eliminar solucin
Fin si
Fin si
Si no
Generar dos valores aleatorios a, b
ia = bi (i = 0,1,2....n 1)
ij bj = jb ( j = 0,1,2....n 1)
/*realiza la mutacin*/
Fin si
Hasta completar H veces
ij = ij + * Solucion _ indicador
ij = ij * (1 )
120
10.11.1.
Lenguaje Utilizado.
121
10.11.2. Instancias.
SOLOMON, M.M. Algorithms for Vehicle Routing and Scheduling Problems with time window
constraints. p. 326 Northeastern: Universidad de Boston, 1985.
122
Los datos deben ser ingresados en el orden en que se encuentran aqu ya que el
algoritmo no tendr en cuenta si el encabezado de las columnas se cambia.
10.12.
123
Definicin
# Ciclos Independientes
# Iteraciones en cada ciclo
# iteraciones requeridas
para actualizar feromona
Tiempo mximo por ciclo
Valor
10
200
50
ilimitado
Definicin
Tipo de mutacin
Tipo de Matriz
inicial
Alfa
Peso de la feromona
124
Valor
Fila/Columna, Dos
valores
Proporcional
escalonada, Valor
constante(uniforme)
0.5, 1, 2
Beta
Rho
Q0
G
0.5, 1, 2
0.2, 0.5, 0.9
0.9, 0.99
25, 50
125
Type II Sum
of Squares
1.419+202b
3.920+202
2.924+200
3.674+200
6.944+197
9.074+199
5.912+201
2.204+201
4.167+198
4.805+201
5.820+202
1.900+202
df
10
1
2
2
2
1
1
1
1
853
864
863
Mean Square
1.4190+201
3.9204+202
1.4618+200
1.8368+200
3.4722+197
9.0741+199
5.9116+201
2.2042+201
4.1667+198
5.6335+198
F
251.892
6959.059
25.948
32.605
.062
16.107
1049.353
391.258
.740
Sig.
.000
.000
.000
.000
.940
.000
.000
.000
.390
Noncent.
Parameter
2518.915
6959.059
51.896
65.210
.123
16.107
1049.353
391.258
.740
Observed
a
Power
1.000
1.000
1.000
1.000
.059
.980
1.000
1.000
.138
De acuerdo con los resultados, se observa que los valores mas significativos son
alfa, beta, Qo y la feromona. Los valores menos significativos son Rho y el tipo de
mutacin.
La prueba tambin muestra que la feromona con un valor constante y Qo con un
valor cercano a 1, generan mejores resultados. Los valores para los cuales se
encontraron mejores respuestas son
Tabla 4. Mejores valores para los parmetros segn prueba ANOVA
Alfa
Beta
Rho
G
Qo
Feromona
Mutacin
1,2
0.5,1
0.9,0.5
.25
.99
Constante
2 valores
126
10.13.
864
864
864
864
Minimum
849.64
9859.34
1162.03
Maximum
1.00+100
1.00+100
1.00+100
Mean
6.74E+99
6.74E+99
6.74E+99
Std. Deviation
4.6916E+99
4.6916E+99
4.6916E+99
Los resultados son comparados con el valor ptimo126 y heurstico mejor conocido
para la instancia C101:
Algoritmo Propuesto
Optimo
Mejor Heurstico
Camiones
Distancia total
recorrida
Camiones
Distancia total
recorrida
camiones
Distancia
total
recorrida
10
849.64
10
827.3
10
828.94
126
127
128
BIBLIOGRAFA
p. 2, www.monografias.com
129
AUTOR DESCONOCIDO.
Gestin de Operaciones.
Logstica
transporte(Online); www.monografias.com (consultado: 7 de Mayo de 2005).
del
130
BRAYSY, Olli. Efficient Local Search Algorithms for the Vehicle Routing Problem
with Time Windows (On line). Finlandia:University of Vaasa.
En Cuarta
Conferencia Internacional de Metaheursticas, Porto, Portugal, julio de 2001.
(Documento encontrado directamente a travs de www.google.com)
BRYSY, Olli.
BERGER, Jean. BARKAOUI, Mohamed. A New Hybrid
Evolutionary Algorithm For The Vehicle Routing Problem With Time Windows. p.
28 Vaasa: University of Vaasa.2002
CASAL Ricardo, TONCOVICH Adrin, LPEZ Nancy, CORRAL Rafael, Estudio
comparativo de estrategias heursticas para un problema de secuenciamiento
multiobjetivo. P. 43 Baha Blanca:Universidad Nacional del Sur. Argentina 1998
CHAMOSO, Raul. Sist. de Control y Distribucin de Ventas (Online), 2004; p 3.
www.monografias.com (consultado: 10 de abril de 2005)
COLORNI A., Dorigo M., and Maniezzo V. An investigation of some properties of
an Ant algorithm. Brucelas 1992.
COMAS, Jose. Ruteo de vheiculos. (online). Valencia:Universidad politecnica
Diapositiva 4 www.mat.up.es/%7Eeqvm/opp.html (Consultado: 8 de mayo de
2005)
CONSUELO, Ana Daz.
Respuesta estratgica de los operadores logsticos
europeos frente a los cambios en el entorno Lic. CC. Empresariales, TooL ULEE.
CORDN, O. HERRERA , F. MORENO,L..Integracin de Conceptos de
Computacin Evolutiva en un Nuevo Modelo de Colonias de Hormigas. En VIII
Conferencia de la Asociacin Espaola para la Inteligencia Artificial, Murcia
(Espaa), 1999, Vol. II, pginas 98-105.
CRDOVA, Juan. Optimizacin a travs de colonias de hormigas.
Carlos:Universidad de San Carlos, p 2. 2004.
131
San
132
133
134
SERRA, Daniel.
Investigacin operativa y logstica empresarial (Online),
Fabra:Organizacin de Empresas GREL-IET. 2004, p.2. www.almacenar.com
(Consultado: 8 de mayo de 2005)
SOLOMON, M.M. Algorithms for Vehicle Routing and Scheduling Problems with
time window constraints. p. 326 Northeastern: Universidad de Boston, 1985.
TEJADA, Carlos. Ideas orientadoras sobre el sistema logstico del componente
ejercito en el teatro de operaciones. En revista Military Review, p. 44. Buenos
Aires:Escuela superior de guerra, Diciembre 2001
TORO, Andrs. GIRN, JM. BESADA, E., FERNNDEZ, P. LPEZ, JA.
Aplicacin del diseo de control multiobjetivo y multivariable, con algoritmos
genticos, al proceso de la fermentacin de la cerveza, Departamento de
Arquitectura de Computadores y Automtica, Universidad Complutense de
Madrid.
TORRES, Marcelo. Algoritmos heursticos para resolucin del vendedor viajero.
(online)
Santiago
de
Chile:
USACH
,
2004.
http://optimos2.diinf.usach.cl/VendedorViajero/Teoria.htm (Consultado: 16 de
Mayo de 2005)
SITIOS DE INTERNET
http://duncan.cup.edu/~bro754/sci.htm
http://mat.gsia.cmu.edu/orclass/integer/node17.html
http://neo.lcc.uma.es/radi-aeb/WebVRP/
http://optimos2.diinf.usach.cl/swc/Inicio.htm
http://www.ctc.dcu.ie/ctcweb/courses/heuristics/course/vehicle.html
http://www.gestiopolis.com
135
http://www.inwap.com/pdp10/hbaker/hakmem/algorithms.html
http://www.logistpilot.com
http://www.nwrel.org/sky/Classroom/Science*Problem_Solving/Problem_Solving.ht
ml
http://www.spcomm.uiuc.edu/projects/vta/PSG/psgl3-ov.html
136
ANEXOS
137
ANEXO A127
Mtodo Heurstico de Kart & Thompson128. A continuacin se presenta un
enfoque aplicado al problema del agente viajero, se utiliza este problema clsico
por ser parte fundamental de algoritmos de solucin del problema de Ruteo de
Vehculos. El problema consiste en encontrar la secuencia de puntos que el
agente debe visitar iniciando y regresando al mismo punto, minimizando la
distancia o tiempo total.
Proceso:
127
Tomados de: COMAS, Jose. Ruteo de vheiculos. (online). Valencia:Universidad politecnica Diapositiva
36-45 www.mat.up.es/%7Eeqvm/opp.html (Consultado: 8 de mayo de 2005)
128
Es importante entender la metodologa aplicada hasta hace unos aos en la solucin del problema de ruteo.
138
31
D
48
67
26
34
34
23
34
17
47
Para j = 2
= 34 + 47 17 = 64.
Para j = 2:
Para j = 3 = k:
139
= 23 + 48 - 34 = 37.
= 48 + 34 - 47 = 35.
= 34 + 31 - 26 = 39.
= 31 + 23 - 34 = 20.
140
ANEXO B129
Mtodo Heurstico de Barrido (sweep) para los problemas de ruteo con
mltiples vehculos. El objetivo es el de asignar m vehculos a n consumidores y
definir la secuencia de visitas de cada uno.
Esta metodologa Contempla 2 fases:
Asignacin de clientes a vehculos
La definicin de la secuencia para visitar cada cliente de cada ruta.
Proceso:
Ejemplo:
Se pide solucionar el siguiente problema con camiones de capacidad de 10.000
unidades.
129
Tomados de: COMAS, Jose. Ruteo de vheiculos. (online). Valencia:Universidad politecnica Diapositiva
29-35 www.mat.up.es/%7Eeqvm/opp.html (Consultado: 8 de mayo de 2005
141
1000
4000
2000
2000
3000
3000
3000
W
1000
2000
2000
2000
2000
Camin 1:
Camin 2:
Camin 3:
= 8000
C1 = 3000 + 2000 + 3000
= 10000
C2 = 4000 + 1000 + 3000 + 2000
C3 = 1000 + 2000 + 2000 + 2000 + 2000 = 9000
1000
4000
2000
2000
3000
3000
3000
W
1000
2000
2000
2000
2000
Se utiliza un mtodo de solucin del problema del agente viajero para cada
camin tomando a W como punto de inicio.
142
1000
4000
2000
2000
3000
3000
3000
W
1000
2000
2000
2000
2000
143