1. ALGORITMOS GENÉTICOS EVOLUTIVOS
Andres Felipe Trujillo Madrigal
Cuando no referimos a los algoritmos genéticos (AGs) no podemos dejar de pensar en las
magnificas soluciones que pueda alcanzar algún sistema biológico y un ejemplo de ello es
la como es la evolución.
Inspirados en Darwin la evolución biológica es el proceso por el cual una especie esta en
continua transformación a través de cambios producidos por unas series de generaciones
que se ve reflejado es su estructura genética y puede llevar a la aparición de nuevas
especies o la adaptación a distintos entornos.
En la teoría que plantea Darwin, describe un conjunto de técnicas que están basadas en
la selección utilizada por la naturaleza por la cual los individuos más aptos de una
población son lo que pueden llegar a sobrevivir y adaptarse mas fácil a los cambios que se
producen en su medio. En este contexto los más adaptados van desplazando lentamente a
los menos adaptados y conduce a una acumulación lenta de cambios favorables para la
población. La selección natural puede llegar a cambiar los atributos básicos de una
población original pero la evolución no es posible sin la variación genética de alguna o de
otra manera debe haber mutación y a menudo recombinación para que se generen los
diferentes genotipos que forman a un individuo único.
Un investigador de la Universidad de Michigan llamado Jhon Holland propuso en 1975 un
modelo de optimización que tratara de encontrar la mejor solución a un problema dado
entre un conjunto de soluciones posibles, siguiendo el mismo patrón de la selección
natural Holland propuso los objetivos alrededor de los AGs:
Imitar los procesos adaptativos de los sistemas naturales
Diseñar sistemas artificiales (por lo general un programa) que contenga los
mecanismos importantes de los sistemas naturales.
Los AGs son métodos que se van adaptando según las condiciones dadas por su creador
(el desarrollador) y que a medida de algunas iteraciones podemos resolver problemas de
2. búsqueda o de optimización. Están inspirados en el proceso genético del organismo vivo y
por estas razones lo podemos considerar un sistema bioinspirado en su totalidad.
Siguiendo con los principios de evolución explicados anteriormente los AGs son capaces
de ir creando soluciones para el mundo real y la evolución de estas soluciones hacia
valores óptimos dependerá de la adecuada codificación por parte de su creador.
En la naturaleza los individuos compiten entre sí en la búsqueda de recursos como
comida, agua y refugio, incluso compiten con los mismos de su especie en busca de un
compañero. Aquellos individuos que tiene más éxito de sobrevivir y tiene más éxito en
atraer compañeros tendrán la mayor probabilidad de generar la gran un gran número de
descendientes. La combinación de buenas características proveniente de individuos
dominantes puede llegar a producir seres de un nivel superior (superindividuos) cuya
adaptación es mayor a cualquiera de sus antecesores.
Los AGs trabajan de una manera sencilla como primer objetivo es establecer un conjunto
de individuos la cual consideramos como la población inicial y que por lo general es
seleccionada de forma aleatoria y cada uno de ellos representa una solución factible al
problema dado. Cada ser creado tendrá un cierto grado de adaptabilidad el cual
dependerá de su composición genética que en la naturaleza equivaliera al grado de
efectividad que una especie puede sobrevivir y luego evolucionar.
ALGORITMO GENÉTICO CANÓNICO
Luego de inspeccionar un poco acerca de los principios básicos de los AGs explicare el
algoritmo que utilizaremos para tener un poco de idea a la hora de sentarnos a codificar.
Generar una población inicial.
Iterar hasta un criterio de parada.
Evaluar cada individuo de la población.
Seleccionar los padres.
Aplicar algún criterio de cruce y mutación
Incluir la nueva generación.
CODIFICACIÓN
Un individuo se puede representar como un conjunto de parámetros los cuales lo
podemos definir como genes los cuales agrupados forma una tira que denominamos
3. cromosoma. La forma de representar un gen lo podemos definir entre el conjunto {0,1} y
el cromosoma será una hilera de un tamaño definido por el creador.
El conjunto de parámetros representado un cromosoma en particular se le denomina
fenotipo. El fenotipo contiene la información requería para construir un organismo él se le
denomina genotipo que puede llegar a se evaluada según el fenotipo.