Practica 5

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 14

Computación Bioinspirada

Dr. Edward Hinojosa Cárdenas


ehinojosa@unsa.edu.pe
Algoritmos Meméticos

Es una población de agentes que alternan períodos de auto-


mejora (mediante búsqueda local) con periodos de
cooperación y competición (mediante selección).

Significado: Unidad de imitación, análoga a un gen pero en


el contexto de la “evolución cultural”

El Término fue introducido por Richard Dawkins en el libro


“The Selfish Gene” (“El Gen Egoista”) (University Press, 1976)

2
Algoritmos Meméticos

Un algoritmo memético es una combinación es:


Una búsqueda global basada en poblaciones
Una heurística de búsqueda local (realizada por cada individuo)

En la literatura, aparecen como sinónimos:


Algoritmos Genéticos Híbridos
Buscadores Locales Genéticos
Algoritmos Genéticos Lamarckianos
Algoritmos Genéticos Baldwinianos
Algoritmos Meméticos

3
Algoritmos Meméticos

Inicialización de la población

Puede ser:
Aleatoria
Predeterminada
Aplicando alguna heurística

4
Algoritmos Meméticos

Cada individuo realiza una búsqueda local


Analogía con Evolución Cultural  Aprendizaje

Puede ser:
Hasta encontrar un óptimo local
Hasta lograr una mejora determinada
Equivalente a la mutación en un Algoritmo Genético
Diferencia: la exploración local es guiada

5
Algoritmos Meméticos

6
Algoritmos Meméticos

7
Algoritmos Meméticos

Para optimizar la población inicial podemos considerar el


siguiente mecanismo:
Generar un número M de soluciones mayor a N (N tamaño de la
población) de las M soluciones selecionamos N soluciones.

Como algoritmo de búsqueda local podemos utilizar una


variantes del método de búsqueda local hill-climbing
(búsqueda por escalada) llamada Escala de primera opción
con un número H de vecinos.

8
Búsqueda por escalada

Es un algoritmo voraz, que no mantiene un árbol de


búsqueda, sino sólo la representación del estado actual y el
valor de su función objetivo

No se mira más allá de los vecinos inmediatos del estado


actual

Escoge el vecino que tiene un mejor valor de la función


objetivo .

9
Búsqueda por escalada

Finaliza cuando alcanza un “extremo” (máximo o mínimo,


depende del planteamiento)
Obviamente no garantizan encontrar la solución óptima, la
búsqueda se puede quedar atascada:
en un máximo o mínimo local
en una meseta, en una terraza
en una cresta

Pero es capaz de encontrar soluciones rápidamente

10
Búsqueda por escalada

Escalada estocástica: escoge aleatoriamente entre todos los


sucesores con mejor valoración que el estado actual
Escalada de primera opción: generan aleatoriamente
sucesores, escogiendo el primero con mejor valoración que el
estado actual
Escalada con reinicio aleatorio: se repite varias veces la
búsqueda, partiendo cada vez de un estado inicial distinto,
generado aleatoriamente:
“si no te sale a la primera, inténtalo otra vez”
si la probabilidad de éxito de una búsqueda individual es p, entonces
el número esperado de reinicios es 1/p.

11
Práctica 05 (0 a 20)

Implementar un Algoritmo Memético para resolver el


siguiente TSP:

12
Práctica 05 (0 a 20)

Utilizar codifición de permutación.


Utilizar cruzamiento PBX.
Utilizar como búsqueda loca búsqueda por escalada de primera
opción (Todos los agentes hijos la realizan).
Optimizar la población inicial con M >= 3N.
Mostrar los valores de aptitud, los padres e hijos generados (y
después de usar búsqueda local) con H >= 5,
Cualquier lenguaje de programación.

13
GRACIAS
Dr. Edward Hinojosa Cárdenas
ehinojosa@unsa.edu.pe

También podría gustarte

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy