Optimización para el trazamiento de rutas turísticas implementando

Anuncio
OPTIMIZACIÓN PARA EL TRAZAMIENTO DE RUTAS TURÍSTICAS IMPLEMENTANDO EL
ALGORITMO DE COLONIA DE HORMIGAS
Claudia Rodríguez Lemusa, María del Socorro Ríos Castroa, José Luis Camargo Orduñoa,
Jorge A. Hernández del Razoa, Francisco Gutiérrez Verab
aInstituto
Tecnológico de Roque, Celaya, Gto.
Instituto Tecnológico de Celaya
[email protected]
b
RESUMEN
México cuenta con variados sitios turísticos para el visitante más exigente tanto nacional como
extranjero. Específicamente el estado de Guanajuato cuenta con ciudades coloniales a las que se
puede visitar para conocer sitios históricos, su gastronomía y sus artesanías.
El prototipo de Optimización para el Trazamiento de Rutas Turísticas pretende ser una herramienta
en web para servir de guía a los visitantes, ofreciéndoles propuestas de rutas que incluyen
nombres de calles y sus sentidos, paradas de microbuses, estacionamientos, sitios turísticos,
tiendas de artesanías, restaurantes y hoteles que se encuentren dentro de esas rutas propuestas.
El prototipo además mostrará los costos aproximados de los sitios que incluye la ruta, que le
permitirán al turista planear sus gastos con anticipación.
Para el presente proyecto se realizó una investigación de algoritmos de optimización que
permitieran el trazamiento de rutas, encontrando al algoritmo de la colonia de hormigas como el
adecuado, el cual simula un sistema artificial de hormigas inspirado en la conducta de hormigas
reales, las cuales al buscar su alimento dejan un rastro de feromona el cual es seguido por las
otras hormigas, tomando en cuenta para el presente proyecto, el punto de origen del turista y su
punto de destino para, de esta forma, trazar las posibles rutas turísticas y de esta forma mostrar la
propuesta al visitante.
1. INTRODUCCIÓN
En la actualidad en la ciudad de San Miguel de Allende, se cuenta con una gran afluencia turística,
lo que obliga de alguna manera a la mejora de algunos de sus servicios, como el de información
para la localización de los principales sitios turísticos que no alcanza a cubrir las necesidades de la
afluencia turística; por tanto el presente proyecto plantea una mejora del proceso de ubicación y
transporte a turistas a través del sistema automatizado para el trazamiento de rutas turísticas
implementando el Algoritmo de Colonia de Hormigas, el cual interaccionará con los turistas
proponiéndoles rutas personalizadas de sitios turísticos o comercios, de acuerdo al interés del
visitante, ofreciéndoles además, recomendaciones en caso de necesitar transporte público.
El sistema además promoverá comercios cercanos a las rutas elegidas por el visitante, lo que
servirá de publicidad hacia esos comercios y una entrada económica por el cobro de servicio de
difusión para esos negocios.
La implantación del sistema, apoyará al servicio turístico en San Miguel de Allende, Gto., sirviendo
como una eficaz guía automática de sitios turísticos y comercio de la ciudad para los visitantes,
además de que apoyará al fomento económico de la región al ser promotor de su comercio.
Actualmente, la ciudad no cuenta con un sistema automatizado que sirva como guía turística a los
visitantes, provocando el desconocimiento de los lugares históricos, así como de atractivos
turísticos y comerciales de la región.
También beneficiará a la región, ya que el Sistema, promoverá la visita tanto al comercio local,
como a comercio de municipios cercanos, lo que traerá como consecuencia el crecimiento de este
rubro.
2. TEORÍA
El elemento fundamental del turismo es el poner en contacto directo al individuo con su medio
natural. La finalidad de la actividad turística es proporcionar la infraestructura, los medios y las
facilidades para su cumplimiento.
1
Fines primarios:
 Satisfacer al individuo.
 Crear nuevas expectativas de conocimiento e interés.
 Mejorar la calidad de vida.
 Propiciar la integración de los pueblos.
Fines secundarios:
 Crear una estructura socioeconómica sólida.
 Contribuir al desarrollo económico y cultural de los pueblos.
Turismo: una actividad esencial de la vida de las naciones por sus consecuencias directas para los
sectores sociales, culturales, educativos y económicos de las sociedades nacionales y para sus
relaciones internacionales (Declaración de Manila).
Minería de datos.
La minería de datos forma parte del conjunto de técnicas de extracción de conocimiento a partir de
bases de datos, conocidas como kdd (por sus siglas en inglés, Knowledge Discovery in
Databases). Fallad, Piatestsky, Smith y Uthurusamy definen la minería de datos como la
“extracción no trivial de la información implícita, desconocida previamente, y potencialmente útil,
desde los datos”. Es decir, información útil que no ha sido correlacionada para su uso.
La minería de datos (así como el descubrimiento de conocimientos a partir de esos datos), integra
desarrollos y concepciones provenientes de la estadística, el aprendizaje automático, la
visualización de datos y la teoría de bases de datos. La fusión de disciplinas tan diversas ha estado
motivada (entre otras cosas) por el significativo incremento en el volumen de información generada
en todas las esferas de la actividad humana.
La minería de datos es un proceso iterativo de búsqueda de información no trivial en grandes
volúmenes de datos, con el propósito de generar información similar a la que podría generar un
analista humano: patrones, asociaciones, cambios, anomalías y estructuras significativas.
Algoritmos Evolutivos.
En general, cualquier tarea abstracta a realizar puede considerarse como la resolución de un
problema que, a su vez, puede verse como un proceso de búsqueda a través de un espacio de
soluciones potenciales, que es lo que se conoce como espacio de búsqueda. Cuando el objetivo
consiste en encontrar la mejor solución posible, nos encontramos ante un problema de
optimización.
En otras ocasiones se desea encontrar una solución o un conjunto de soluciones para problemas
cuyos espacios de búsqueda son pequeños o simples. Pueden utilizarse métodos de optimización
y búsqueda clásicos, como son los métodos de tipo directo o basados en el gradiente. Sin
embargo, este tipo de técnicas presentan ciertas limitaciones, entre las que podemos mencionar
como más comunes:
- La convergencia a una solución óptima depende de la solución inicial de la que parte la
búsqueda.
- Muchos algoritmos son propensos a verse atrapados en un óptimo local.
- Falta de robustez, es decir, un algoritmo eficaz en la resolución de un determinado problema
puede no ser adecuado para otro tipo diferente de problema.
- Algunos algoritmos no son capaces de tratar adecuadamente problemas con variables discretas.
- No son propicios a implementaciones en máquinas paralelas.
Algoritmos Culturales.
2
Los algoritmos culturales (ac) son modelos computacionales derivados de la observación del
proceso de evolución cultural en la naturaleza. Los ac tienen tres componentes principales: un
espacio de población, un espacio de creencias, y un protocolo que describe cómo el conocimiento
es intercambiado entre los dos primeros componentes.
Los algoritmos culturales son una técnica de cómputo evolutivo, que utiliza el conocimiento
generado en varias épocas (mismos individuos, pero en diferente espaciotiempo) para una misma
población, utilizando un espacio de creencias; y, en el nivel micro-evolutivo, el que ocurre en el
espacio de población. El conocimiento es producido por los cambios que ocurren en el espacio de
creencias. Este conocimiento se puede entonces utilizar para influenciar los cambios a realizar por
la población en la generación siguiente.
Los algoritmos culturales usan cinco fuentes de conocimiento básico para generar una solución al
espacio de búsqueda en donde se representa el problema a solucionar: el conocimiento normativo
(gamas de comportamientos aceptables); el conocimiento circunstancial (los ejemplares o las
memorias de soluciones exitosas o fallidas, entre otros); el conocimiento del dominio (conocimiento
de los objetos del dominio, de las relaciones de ellos y sus interacciones); el conocimiento histórico
(patrones temporales del comportamiento), y el conocimiento topográfico (patrones espaciales del
comportamiento).
Algoritmo Colonia de Hormigas.
La observación de la naturaleza ha sido una de las principales fuentes de inspiración para la
propuesta de nuevos paradigmas computacionales. Así nacieron diversas técnicas de Inteligencia
Artificial Algoritmos Genéticos (Genetic Algorithms), Templado Simulado (Simulated Annealing),
Redes Neuronales (Neural Networks), y entre ellas, el sistema basado en Colonias de Hormigas
(Ant System).
Las feromonas son un sistema de comunicación química entre animales de una misma especie,
que transmiten información a través de señales odoríferas acerca del estado fisiológico,
reproductivo y social, así como sobre la edad, el sexo y el parentesco del animal emisor, las cuales
son recibidas en el sistema olfatorio del animal receptor, quien interpreta esas señales, jugando un
papel importante en la organización y la supervivencia de muchas especies. Este sistema natural
de comunicación se ha estudiado más en las llamadas especies inferiores como son las hormigas,
las abejas y otros insectos.
Resulta especialmente interesante entender como animales casi ciegos como las hormigas pueden
establecer el camino más corto desde su colonia hasta la fuente de alimento y regresar.
El algoritmo de la colonia de hormigas para la búsqueda de la información importante, tiene dos
objetivos: Maximizar los recursos encontrados y minimizar los pasos dados. Este algoritmo guía las
consultas hacia los nodos que tienen la mejor conectividad usando la métrica del Coeficiente del
Grado de Dispersión (DDc por sus siglas en inglés). El DDC mide las diferencias entre el grado de
un vértice y los grados de sus vecinos con el fin de reducir al mínimo los saltos. Por lo tanto, la
consulta más frecuente a un recurso, será la mejor ruta seleccionada.
Algoritmo Basado en Cúmulo de Partículas.
Un Algoritmo Basado en Cúmulos de Partículas o Particle Swarm Optimization es una técnica
metaheurística basada en poblaciones e inspirada en el comportamiento social del vuelo de las
bandadas de aves o el movimiento de los bancos de peces. PSO fue originalmente desarrollado
por el psicólogosociólogo Jammes Kennedy y por el ingeniero electrónico Russell Eberhart en
1995, basándose en un enfoque conocido como la metáfora social, que describe a este algoritmo y
3
que se puede resumir de la siguiente forma: los individuos que conviven en una sociedad tienen
una opinión que es parte de un conjunto de creencias (el espacio de búsqueda) compartido por
todos los posibles individuos.
Cada individuo puede modifcar su propia opinión basándose en tres factores:
 Su conocimiento sobre el entorno (su valor de fitness).
 Su conocimiento histórico o experiencias anteriores (su memoria).
 El conocimiento histórico o experiencias anteriores de los individuos situados en su
vecindario.
Siguiendo ciertas reglas de interacción, los individuos en la población adaptan sus esquemas de
creencias al de los individuos con más éxito de su entorno. Con el tiempo, surge una cultura cuyos
individuos tienen un conjunto de creencias estrechamente relacionado.
El cúmulo de partículas (swarm) es un sistema multiagente, es decir, las partículas son agentes
simples que se mueven por el espacio de búsqueda y que guardan (y posiblemente comunican) la
mejor solución que han encontrado.
Cada partícula tiene un fitness, una posición y un vector velocidad que dirige su movimiento. El
movimiento de las partículas por el espacio está guiado por las partículas óptimas en el momento
actual.
3. PARTE EXPERIMENTAL
Para el desarrollo se utilizó software libre bajo el lenguaje de programación java y el manejador de
base de datos MySQL. Se basa en un algoritmo ACs (Algoritmo de Colonia de Hormigas. Por sus
siglas en inglés: Ant Colony System), el cual es una técnica probabilística utilizada para solucionar
problemas de cómputo; este algoritmo está inspirado en el comportamiento que presentan las
hormigas para encontrar las trayectorias desde la colonia hasta el alimento (ver figura 1).
Figura 1: Selección de la ruta más corta por mayor densidad de feromona.
FASE 1:
El prototipo solicita el sitio de destino, después realiza la búsqueda creando las rutas a través de
los nodos por medio de las calles y las colonias contenidas en la base de datos, dejando la
feromona en aquellos nodos que cumplan con la condición de la ruta.
Al encontrar la hormiga el origen y el destino; el prototipo almacena la ruta destino completa en un
arreglo y la ruta destino en otro, para comenzar la búsqueda del destino en la misma, si existe;
termina el algoritmo.
FASE 2:
4
Se selecciona la ruta donde hay más incidencias de trazado. En principio siguen rutas aleatorias,
pero las que han utilizado las de menor longitud pueden regresar más rápidamente (pues transitan
a una velocidad uniforme), y repetir el camino, dejando una mayor densidad de huellas de
feromona. Las depositadas en las otras rutas se van evaporando, y dejan de tener interés en los
nuevos recorridos.
4. CONCLUSIONES
El prototipo de Optimización para el Trazamiento de Rutas Turísticas implementando el algoritmo
de colonia de hormigas, permitió trazar recorridos a través de la filosofía del algoritmo de colonia
de hormigas que marca la información necesaria contenida en la base de datos con feromonas
para su localización, dando como resultado un prototipo que procesa las calles como nodos que la
aplicación sigue de acuerdo al algoritmo, para formar rutas de turísticas que se presentan al
usuario así como recomendaciones de comercios que se encuentran dentro del trayecto
BIBLIOGRAFÍA
1. Ochoa Ortiz Zezzatti, Alberto; “Algoritmos Culturales”; Ideas CONCYTEG, Año no. 3, 21
de enero del 2008.
2. Barán, Benjamín; Almirón, Martha (2002). “Colonia de Hormigas en un Ambiente Paralelo
Asíncrono”. Centro Nacional de computación, Universidad de Asunción.
3. Barán, Benjamín;
http://www.cnc.una.py/cms/invest/download.php?id=104917,101,1
4. Gómez Santillán, Claudia; Cruz Reyez, Laura; Meza Conde, Eustorgio; Amaro Martínez,
Claudia; Aguirre Lam, Marco Antonio, Ochoa Ortiz Zezzatti Carlos Alberto; “Performance
Analysis of the Neighboring-Ant Search Algorithm through Design of Experiment”;
5
Descargar