martes, 11 de enero de 2011

Algoritmo Evolutivo (AE)

Un Algoritmo Evolutivo, podría definirse como una potente técnica de busqueda y optimización, permitiendo así mismo resolver gran cantidad de problemas propios de los procesos de aprendizaje.

Un AE tipicamente mantiene una población de soluciones potenciales (individuos) del problema, las cuales evolucionan de acuerdo a reglas de selección y otros operadores, tales como combinación y mutación. Cada individuo es evaluado, recibiendo una medida de adecuación (fitness) en su entorno. La selección enfoca su atención en los individuos de adecuación alta, explotando así la información de las adecuaciones disponibles. La recombinación y mutación modifican los individuos, proporcionando una heurística general de exploración.

Se pude definir un AE que trabaja sobre una población (P) como:
1) Inicializar (P(0));
2) Generación = 0;
3) mientras (no criterio de parada) hacer
4)     Evaluar (P(generación));
5)     Padres = Seleccionar (P(generación));
6)     Hijos = Aplicar Operadores Evolutivos (padres);
7)     NuevaPoblación = Reemplazar (hijos, P(generación));
8)     Generación ++;
9)     P(generación) = NuevaPoblación;
10) fin
11) retornar MejorSoluciónEncontrada;

Como hemos comentado anteriormente, un AE trabaja sobre individuos que representan potenciales soluciones al problema,  codificados de acuerdo a un mecanismo prefijado. Los individuos son evaluados de acuerdo a una función de fitness que toma en cuenta la adecuación de cada solución al problema que intenta resolver.

La operativa del AE comienza con una etapa de inicialización de los individuos, que puede ser completamente aleatoria o guiada de acuerdo a características del problema a resolver.

La evolución propiamente dicha se lleva a cabo en el ciclo que genera nuevos individuos a partir de la población actual mediante un procedimiento de aplicación de operadores estocásticos. En este ciclo se distinguen 4 etapas:
1) Evaluación.
     Etapa que consiste en asignar un valor de adecuación (fitness) a cada individuo de la población.
2) Selección.
     Proceso que determina candidatos adecuados, de acuerdo a sus valores de fitness, para la aplicación de los operadores evolutivos con el obejtivo de engendrar la siguiente generación de individuos.
3) Apliación de los operadores evolutivos.
     Etapa que genera un conjunto de descendientes a partir de los individuos seleccionados en la etapa anterior.
4) Reemplazo.
     Mecanismo que realiza el cambio generacional, sustituyendo individuos de la generación anterior por descendientes creados en la etapa anterior.

No hay comentarios:

Publicar un comentario