Algoritmos Evolutivos

  • 3,579 views
Uploaded on

aplicación de algoritmos evolutivos.

aplicación de algoritmos evolutivos.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
3,579
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
119
Comments
0
Likes
3

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • El desarrollo de un algoritmo evolutivo para la generación de reglas de predicción es la implementación típica del algoritmo evolutivo donde existen varias sentencias que permiten generar una solución a un respectivo problema. Este tipo de algoritmo utiliza dos tipos de individuos: la población total que existe que será analizada debido a parámetros introducidos de búsqueda y el otro a la selección de los individuos que serán obtenidos como resultado. Posteriormente se seleccionan los padres que aplicando un operador generan los hijos, se actualiza la población y se seleccionan los mas idóneos.
  • El proceso de extracción de características que son relevantes del problema depende de los datos. Una vez extraídos los atributos representativos del conjunto de datos conviene reducir este número de características, debido a que no es posible conocer a priori cuales de entre los atributos extraídos serán realmente relevantes. El incluir características irrelevantes aumenta la complejidad para seleccionar los atributos.    

Transcript

  • 1.  
  • 2.
    • Los algoritmos evolutivos poseen una gran ventaja con respecto a otros algoritmos en la generación de reglas de predicción para el descubrimiento de nueva información, estos permiten realizar una búsqueda global sobre la población existente y obtener de esta la mejor o la información más idónea.
  • 3.  
  • 4.
    • Función Objetivo
    • Los algoritmos evolutivos son utilizados para resolver problemas de optimización los que utilizan la función objetivo que es la función que se quiere optimizar. Tanto los algoritmos genéticos como evolutivos utilizan la función objetivo para asignar a cada individuo (x) de una población un valor optimo que le corresponda utilizando para este mecanismos de selección que identifican las mejores soluciones.
  • 5.
    • La selección es lo más importante dentro de un algoritmo evolutivo ya que permite obtener la mejor respuesta dentro de espacios de búsquedas que son óptimas. Aunque existen diversos métodos de selección de los mejores resultados y descartar los que no son óptimos, la mayoría de métodos de selección son estocásticos y determinísticos.
  • 6.
    • Es la forma en que el usuario representa los resultados de la ejecución del algoritmo con la selección del mejor(es) individuo(s). Para la representación de soluciones de problemas existen muchas formas de hacerlo la más sencilla es a través de datos binarios se les asigna a un conjunto de datos un peso y utilidad la selección de cada objeto se puede representar con un 0 o 1.
    • Otro método consiste en codificar las soluciones como cadenas de enteros o números decimales , donde cada posición representa algún aspecto particular de la solución. Este método permite una mayor precisión y complejidad que el método comparativamente restringido de utilizar sólo números binarios, y a menudo “está intuitivamente más cerca del espacio de problemas''.
  • 7.
    • Una vez que la selección ha elegido a los individuos aptos, éstos deben ser alterados aleatoriamente con la esperanza de mejorar su aptitud para la siguiente generación. Existen dos estrategias básicas para llevar esto a cabo. La primera y más sencilla se llama mutación , el segundo método se llama cruzamiento
  • 8.
    • El termino mutación quiere decir “cambio”, así como en la naturaleza las especies cambian para sobrevivir en un entorno cambiante, en la IA se busca obtener las mejores soluciones a través de la variación de dichas soluciones esto se realiza variando ciertos cromosomas de la solución.
    • Al igual que una mutación en los seres vivos cambia un gen por otro, una mutación en un algoritmo genético también causa pequeñas alteraciones en puntos concretos del código de un individuo.
  • 9. Fig. Ejemplo de mutación
  • 10.
    • Implica elegir a dos individuos para que intercambien segmentos de su código, produciendo una “descendencia'' artificial cuyos individuos son combinaciones de sus padres.
    Fig. Ejemplo de Cruzamiento
  • 11.  
  • 12.
    • Aplicación Algoritmos Genéticos y Dijkstra para encontrar Rutas de caminos más cortas
    • La determinación de rutas cortas en cualquier ciudad se lleva a diario por cualquier individuo, donde la ciudad está formada por algunas vías interconectadas donde cada vía posee una dirección única. Para ir de un lugar a otro entre un punto inicial y final (X1, X2), se determina el camino más corto para optimizar los recursos. La optimización de cualquier tarea conlleva a la reducción de los tiempos utilizados en la resolución de cualquier tipo de problema lo que permite mejorar la productividad en cualquier área, Utilizando la herramienta Genetic Algorit Vehicle Routing Simulation permite obtener las rutas entre dos puntos, el problema que está planteado es la determinación de la mejor ruta entre un punto inicial O y el punto final D.
    •  
    • Problema
    • En una determinada ciudad las calles se pueden representar mediante una determinada red donde circulan vehículos que se puede representar matemáticamente mediante grafos que representan las vías y sus intercesiones. Para resolver el problema se representan mediante grafos donde las intersecciones de calles representan los vértices (nodos), y las calles que los unen se denominan aristas.
  • 13. Fig. Mapa de rutas
  • 14.
    • Algoritmo
    • Teniendo un grafo dirigido ponderado de N nodos no aislados, sea x el nodo inicial, un vector D de tamaño N guardará al final del algoritmo las distancias desde x al resto de los nodos.
    • Inicializar todas las distancias en D con un valor infinito relativo ya que son desconocidas al principio, exceptuando la de x que se debe colocar en 0 debido a que la distancia de x a x sería 0.
    • Sea a = x (tomamos a como nodo actual).
    • Recorremos todos los nodos adyacentes a menos los nodos marcados, llamaremos a estos v i .
    • Si la distancia desde x hasta v i guardada en D es mayor que la distancia desde x hasta a sumada a la distancia desde a hasta v i ; esta se substituye con la segunda nombrada, esto es: si (D i > D a + d(a,v i )) entonces
    • D i = D a + d(a,v i )
    • Marcamos como completo el nodo a.
    • Tomamos como próximo nodo actual el de menor valor en D (puede hacerse almacenando los valores en una cola de prioridad) y volvemos al paso 3 mientras existan nodos no marcados.
  • 15.
    • Datos de entrada
    • Para que funcione el programa se deben ingresar varios parámetros deben ser siempre antes de realizar la simulación del proceso para resolver el problema. Los parámetros son básicamente como el tamaño de la población, Cross-Over Tasa de mutación y número de generación. Las necesidades de los usuarios para determinar el origen y destino en el mapa antes de simular las soluciones. En la siguiente figura 11, se indica la opción para ingresar los datos requeridos:
    Fig. La figura muestra el punto de partida y el de llegada
  • 16. Numero Nodo Distancia Velocidad N1 N1<->N9 2.9 21 N2 N2<->N4 12.5 2 N3 N3<->N8 7.4 14 N4 N4<->N2 12.5 2 N5 N5<->N21 11.6 4 N6 N6<->N12 4.8 3 N7 N7<->N20 7.1 16 N8 N8<->N6 15.5 10 N9 N9<->N15 10.2 3 N10 N10<->N1 6.9 15 N11 N11<->N13 3.3 27 N13 N12<->N2 7.9 7 N13 N13<->N11 3.3 27 N14 N14<->N17 3 22 N15 N15<->N9 10.2 3 N16 N16<->N24 17.2 26 N17 N17<->N1 13 5 N18 N18<->N15 5 22 N19 N19<->N7 5.1 1 N20 N20<->N5 15.1 9 N21 N21<->N3 17.8 8 N22 N22<->N25 13.1 19 N23 N23<->N21 30 17 N24 N24<->N16 172 26 N25 N25<->N14 5.3 23
  • 17.
    • Fig. Resultados con todos los caminos y distancias
  • 18.
    • Resultados
    • Para ir del nodo origen al destino (N0, N6), seleccionando el origen y destino en el programa la ruta más corta es por los nodos (N0 -> N3 -> N10 -> N13 ->N6) en la siguiente tabla se indican los resultados obtenidos y en la siguiente figura el resultado gráficamente obtenido
    Los turistas que viajan a otros lugares donde no conocen las ciudades visitadas pueden utilizar este tipo de herramienta para determinar rutas más cortas desde su lugar origen al destino. Fig. La figura muestra la mejor ruta con la menor distancia
  • 19.
      • Aplicación de Algoritmos Evolutivos para la Selección de Instancias
    • La aplicación pretende obtener modelos o patrones con información importante para realizar mejoras a los sitios Web de cada Universidad.
  • 20.
    • Fig. Datos de Universidades rankeadas en el internet
    • Fuente : http://www.handelsblatt.com/pshb?fn=relhbi&sfn=buildframe&strucid=PAGE_200014&pageid=PAGE_301100&cnct=3&cframe =
    • http://uniranking.vnoffice.de&frameheight=5000
  • 21.
    • Fig 10. Aplicaci ó n de la herramienta utilizando algoritmos evolutivos
    • Máximo número de generaciones 10
    • Total de la población 72
    • Probabilidad mutación 0.2
    • Probabilidad cruzamiento 0.2
  • 22.
    • Fig. Resultados
    • El proceso consiste en descubrir relaciones importantes entre los datos de utilización recogidos durante las ejecuciones de los distintos usuarios. Esta información puede ser de gran utilidad para el administrador de la página, que puede decidir qué modificaciones son las más adecuadas para mejorar las visitas.
  • 23.
    • La implementación de algoritmos evolutivos para la resolución de problemas de AVR obtiene la mejor ruta con la distancia más corta en el recorrido que una persona realice.
    • IA Solver da libertad al usuario para formular problemas, creando datos de entrenamiento y prueba, donde cada línea representa un dato y prueba las soluciones luego de cada interacción de entrenamiento en un momento dado.
    • La utilización de herramientas que permitan la carga de datos correspondiente a la información de las calles de una determinada ciudad permite que los individuos que utilizan estas herramientas obtengan los beneficios de la optimización del tiempo utilizado para ir de un lugar origen a un destino.
    • La Aplicación de algoritmos evolutivos como técnica de minería de datos puede servir para la mejora de recursos Hipermedia basados en web
    • La calidad de resultados depende del tamaño de información, mientras más datos se tengan de entrada habrá una mejor selección de características.
    • El trabajar con el mínimo número de características que son relevantes es beneficioso que el trabajar con un rango elevado que puede contener características irrelevantes.
  • 24.
    • [1] M.J., González, P., Herrera, F. and Mesonero, M., Evolutionary fuzzy rule induction process for subgroup discovery: a case study in marketing. IEEE Trans. Fuzzy Systems.
    •  
    • [2] M.J., González, P., and Herrera, F., Inducción evolutiva multiobjetivo de reglas de descripción de subgrupos en un problema de marketing. IV Congreso Español sobre Metaheurísticas, Algoritmos Evolutivos y Bioinspirados, pp. 661-669, Granada. 2005.
    •  
    • [3] Jose Ramon Cano, Francisco Herrera, and Manuel Lozano, A Study on the Combination of Evolutionary Algorithms and Stratied Strategies for Training Set Selection in Data Mining.
    • [4] http://www.freedownloadmanager.org/es/downloads/A.I._Estudio_de_Solucionista_46361_p/
    • [5] http://rapid-i.com/content/blogcategory/38/69/ .
    • [6] http://www.geneticalgorithm.ahyeek.com/index.php
    • [7] http://www.rapidminer.com/index.php
    • [8] http://www. es.wikipedia.org/wiki/Algoritmo_de_Dijkstra