Está en la página 1de 8

ALGORITMOS GENTICOS

Arranz de la Pea, Jorge Parra Truyol, Antonio


Universidad Carlos III Universidad Carlos III
100025106@alumnos.uc3m.es 100023822@alumnos.uc3m.es

En este documento se pretende analizar los algoritmos genticos


descubriendo su funcionamiento y sus secretos. ESTRUCTURA DE UN ALGORITMO
GENTICO SIMPLE (AGS)
1. INTRODUCCION
Cuando hablamos de algoritmos genticos, hay que hablar de
110010 1010
John Holland que en 1962 asienta las bases para sus posteriores Codificacin
Codificacin
Cromosomas
101110 1110 Cruce
Cruce
desarrollos hasta llegar a lo que se conoce hoy por algoritmos 1100101010
Soluciones 1011101110 1100101110
genticos.
0011011001
Un algoritmo gentico es un mtodo de bsqueda que imita la 1100110001 Mutacin
Mutacin
teora de la evolucin biolgica de Darwin para la resolucin de 0011011001
0011011001

problemas. Para ello, se parte de una poblacin inicial de la cual Seleccin


Seleccin
0011001001
0011001001
Evaluacin
Evaluacin
se seleccionan los individuos ms capacitados para luego
1100101110
1100101110
reproducirlos y mutarlos para finalmente obtener la siguiente
1011101010
1011101010
generacin de individuos que estarn ms adaptados que la 0011001001
0011001001
Clculo
Clculo Aptitud
Aptitud

anterior generacin. Rueda


Rueda de
de la
la Ruleta
Ruleta Decodificacin
Decodificacin Soluciones
Soluciones

2. ESQUEMA BSICO Figura1. Esquema de un algoritmo gentico simple.


En la naturaleza todo el proceso de evolucin biolgica se hace de
forma natural pero para aplicar el algoritmo gentico al campo de
la resolucin de problemas habr que seguir una serie de pasos.
3. PARMETROS DE LOS ALGORITMOS
Una premisa es conseguir que el tamao de la poblacin sea lo GENTICOS.
suficientemente grande para garantizar la diversidad de Para el estudio de los algoritmos genticos hay que tener en
soluciones. Se aconseja que la poblacin sea generada de forma cuenta una serie de parmetros:
aleatoria para obtener dicha diversidad. En caso de que la
poblacin no sea generada de forma aleatoria habr que tener en 3.1 Tamao de la Poblacin
cuenta que se garantice una cierta diversidad en la poblacin Este parmetro nos indica el nmero de cromosomas que tenemos
generada. Los pasos bsicos de un algoritmo gentico son: en nuestra poblacin para una generacin determinada. En caso de
que esta medida sea insuficiente, el algoritmo gentico tiene pocas
Evaluar la puntuacin de cada uno de los cromosomas posibilidades de realizar reproducciones con lo que se realizara
generados. una bsqueda de soluciones escasa y poco ptima. Por otro lado si
la poblacin es excesiva, el algoritmo gentico ser excesivamente
Permitir la reproduccin de los cromosomas siendo los
lento. De hecho estudios revelan que hay un lmite a partir del
ms aptos los que tengan ms probabilidad de
cual es ineficiente elevar el tamao de la poblacin puesto que no
reproducirse.
se consigue una mayor velocidad en la resolucin del problema.
Con cierta probabilidad de mutacin, mutar un gen del
nuevo individuo generado. 3.2 Probabilidad de Cruce
Indica la frecuencia con la que se producen cruces entre los
Organizar la nueva poblacin. cromosomas padre es decir, que haya probabilidad de
Estos pasos se repetirn hasta que se de una condicin de reproduccin entre ellos. En caso de que no exista probabilidad de
terminacin. Se puede fijar un nmero mximo de iteraciones reproduccin, los hijos sern copias exactas se los padres. En caso
antes de finalizar el algoritmo gentico o detenerlo cuando no se de haberla, los hijos tendrn partes de los cromosomas de los
produzcan ms cambios en la poblacin (convergencia del padres. Si la probabilidad de cruce es del 100% el hijo se crea
algoritmo). Esta ltima opcin suele ser la ms habitual. totalmente por cruce, no por partes.
Veamos el esquema general de un algoritmo gentico simple: 3.3 Probabilidad de Mutacin
Nos indica la frecuencia con la que los genes de un cromosoma
son mutados. Si no hay mutacin, los descendientes son los
mismos que haba tras la reproduccin. En caso de que haya
mutaciones, parte del cromosoma descendiente es modificado y si
la probabilidad de mutacin es del 100%, la totalidad del
cromosoma se cambia. En este caso, no se cambian simplemente
unos bits del cromosoma sino que se cambian todos, lo que
significa que se produce una inversin en el cromosoma y no una o valores sea mxima y que la suma de los pesos no supere el de
mutacin por lo que la poblacin degenera muy rpidamente. la capacidad de la mochila.

4. OPERACIONES DE LOS ALGORITMOS 4.1.2 Codificacin Numrica


GENTICOS. En este tipo de codificacin se utilizan cadenas de nmeros que
representan un nmero en una secuencia. Se utiliza en problemas
Tras parametrizar el problema en una serie de variables, se
en los que hay que ordenar algo, donde resulta muy til. En
codifican en un cromosoma. Todos los operadores utilizados por
algunos casos tambin es necesario como en el caso anterior
un algoritmo gentico se aplicarn sobre estos cromosomas, o
realizar correcciones tras relaciones o mutaciones.
sobre poblaciones de ellos. En el algoritmo gentico va implcito
el mtodo para resolver el problema. Hay que tener en cuenta que Un ejemplo clsico de este tipo de codificacin es el problema del
un algoritmo gentico es independiente del problema, lo cual lo viajante de comercio. En este caso tenemos una serie de ciudades
hace un algoritmo robusto, al resultar til en cualquier mbito de por las que el comerciante debe pasar y las distancias entre ellas.
accin, pero a la vez dbil, pues no est especializado en ninguno. El objetivo es que el comerciante, partiendo de una ciudad origen,
Las soluciones codificadas en un cromosoma compiten para ver recorra todas las ciudades y vuelva al punto de partida pero
cul constituye la mejor solucin (aunque no necesariamente la recorriendo el menor nmero de kilmetros, por lo que habr que
mejor de todas las soluciones posibles). El ambiente, constituido localizar la combinacin de ciudades que minimice dicho
por las otras soluciones, ejercer una presin selectiva sobre la recorrido.
poblacin, de forma que slo los mejor adaptados (aquellos que
resuelvan mejor el problema) sobrevivan o leguen su material
gentico a las siguientes generaciones, igual que en la evolucin
de las especies. La diversidad gentica se introduce mediante
mutaciones y reproduccin sexual.
Por lo tanto, un algoritmo gentico consiste en hallar de qu
parmetros depende el problema, codificarlos en un cromosoma, y
aplicar los mtodos de la evolucin: seleccin y reproduccin
sexual con intercambio de informacin y mutaciones que generen
diversidad.

4.1 Codificacin de las Variables


Los cromosomas de alguna manera debern contener informacin Figura 2. Esquema del problema del viajante
acerca de la solucin que representa. La codificacin se puede
realizar de varias formas. La ms utilizada es mediante una cadena 4.1.3 Codificacin por Valor Directo
de nmeros binarios (1s o 0s). Pero tambin se puede realizar la Este tipo de codificacin ser el utilizado en caso de resolucin de
codificacin mediante nmeros enteros o incluso cadenas de problemas en el que se requiera del uso de valores de cifrado
palabras. complicado como podra ser en el uso de nmeros reales, cuya
La eleccin de la codificacin depender tambin del problema a codificacin con nmeros binarios sera muy complejo. En
resolver pues puede darse la situacin en la que la resolucin de codificacin por valor directo cada cromosoma es una cadena de
un caso sea ms ptimo el uso de una codificacin basada en valores relacionados con el problema a estudiar, pudiendo ser
nmeros reales mientras que esa codificacin complique la desde nmeros decimales, cadenas de caracteres o incluso una
solucin en otro caso. As pues hay que estudiar la codificacin combinacin de varios de ellos. Su aplicacin es muy buena en
ms ptima segn el caso que se est estudiando. ciertos problemas concretos. Por el contrario para la utilizacin de
esta codificacin, normalmente es necesario desarrollar nuevas
tcnicas de reproduccin y mutacin especificas hacia la
4.1.1 Codificacin Binaria resolucin del problema.
Es la codificacin ms extendida debido a que los primeros Una aplicacin de esta codificacin se da en la resolucin de
algoritmos genticos utilizaron este tipo de codificacin. En este problemas para la bsqueda de pesos para las redes neuronales.
caso, cada cromosoma es una cadena de bits (0 o 1). A su favor En este asunto se trata de encontrar el peso de las neuronas para
tiene que puede abarcar muchos cromosomas incluso con un ciertas entradas y as entrenar a la red para obtener la salida
nmero reducido de genes. Sin embargo por otro lado esta opcin deseada. El valor del peso de las entradas vendr representado en
no es la idnea para muchos problemas y en algunas ocasiones es el propio cromosoma con dicha codificacin.
necesario realizar correcciones despus de la reproduccin y/o
mutacin.
Este tipo de codificacin se utiliza por ejemplo en el problema de
la mochila. En este problema tenemos una mochila con una cierta
capacidad y una serie de objetos que queremos introducir. Estos
objetos tendrn un peso y un beneficio o un valor para nosotros.
La capacidad de la mochila es inferior a la suma del peso de todos
los objetos. El objetivo es conseguir que la suma de los beneficios
Figura 3. Esquema red neuronal Figura 4. Rueda de ruleta de seleccin.

4.2.2 Seleccin por Rango


4.1.4 Codificacin en rbol En este mtodo a cada cromosoma se le asigna un rango numrico
Este tipo de codificacin se utiliza principalmente en el desarrollo basado en su aptitud y la seleccin se realiza en base a este
de programas o expresiones para programacin gentica. Cada ranking. Veamos la diferencia entre el caso anterior y este a travs
cromosoma ser en este caso un rbol con ciertos objetos. de un ejemplo grfico.
En este mtodo, los cambios aleatorios pueden generarse
cambiando el operador, alterando el valor de un cierto nodo del
rbol o simplemente sustituyendo un subrbol por otro.

4.2 Seleccin
Como ya hemos visto anteriormente es necesario hacer una
seleccin con los individuos ms capacitados para que stos sean
los que se reproduzcan con ms probabilidad de acuerdo con la
teora de Darwin en la cual los ms capacitados son los que deben
sobrevivir y crear una nueva descendencia ms facultada.
Por lo tanto una vez evaluado cada cromosoma y obtenida su
puntuacin, se tiene que crear la nueva poblacin teniendo en
Figura 5. Caso de seleccin por ruleta.
cuenta que los buenos rasgos de los mejores se transmitan a sta.
Esta seleccin se puede realizar de varias formas como se ver a
continuacin.

4.2.1 Seleccin por Rueda de Ruleta


Se crea para esta seleccin una ruleta con los cromosomas
presentes en una generacin. Cada cromosoma tendr una parte de
esa ruleta mayor o menor en funcin a la puntuacin que tenga
cada uno. Se hace girar la ruleta y se seleccin el cromosoma en el
que se para la ruleta. Obviamente el cromosoma con mayor
puntuacin saldr con mayor probabilidad. En caso de que las
probabilidades difieran mucho, este mtodo de seleccin dar
problemas puesto que si un cromosoma tiene un 90% de Figura 6. Caso de seleccin por ranking.
posibilidades de ser seleccionado, el resto apenas saldr lo que
reducira la diversidad gentica. Vemos como en este ltimo caso se va a producir una variedad
gentica mucho ms rica que en el primer caso. El problema de
esta seleccin es que la convergencia puede ser ms lenta ya que
no existe tanta diferencia entre el mejor cromosoma y el resto
como ocurra antes.

4.2.3 Seleccin Elitista


En ciertas ocasiones puede suceder que tras el cruce y la
mutacin, perdamos el cromosoma con mejor adaptacin. Este
mtodo de seleccin copia el mejor cromosoma o alguno de los
mejores en la nueva poblacin. El resto se realiza de la misma
forma que hemos visto anteriormente. El elitismo puede mejorar
el funcionamiento de los algoritmos genticos al evitar que se
pierda la mejor solucin. Una variacin del elitismo es que el de que ese cromosoma dominante presente algunos genes no
mejor cromosoma solo se copie a la siguiente generacin en caso deseados. Hay diferentes formas de realizar los cruces para cada
de que tras una reproduccin/mutacin no se haya generado un codificacin siendo algunas tcnicas aplicables indistintamente a
cromosoma mejor. las distintas codificaciones como veremos a continuacin.

4.2.4 Seleccin por Estado Estacionario 4.3.1 Crossover 1 Punto


La descendencia de los individuos seleccionados en cada Los dos cromosomas padres se cortan por un punto. Se copia la
generacin vuelve a la poblacin gentica preexistente, informacin gentica de uno de los padres desde el inicio hasta el
reemplazando a algunos de los miembros menos aptos de la punto de cruce y el resto se copia del otro progenitor. Es una de
anterior generacin. Se conservan algunos individuos entre las formas clsicas de crossover.
generaciones. Veamos algunos ejemplos grficos:
4.2.5 Seleccin por Torneo
Se escogen de forma aleatoria un nmero de individuos de la
poblacin, y el que tiene puntuacin mayor se reproduce,
sustituyendo su descendencia al que tiene menor puntuacin.

4.2.6 Seleccin Escalada


Al incrementarse la aptitud media de la poblacin, la fuerza de la
presin selectiva tambin aumenta y la funcin de aptitud se hace
ms discriminadora. Este mtodo puede ser til para seleccionar
ms tarde, cuando todos los individuos tengan una aptitud
relativamente alta y slo les distingan pequeas diferencias en la
aptitud.

4.2.7 Seleccin Jerrquica


En esta seleccin, los individuos atraviesan mltiples rondas de
seleccin en cada generacin. Las evaluaciones de los primeros
niveles son ms rpidas y menos discriminatorias, mientras que
los que sobreviven hasta niveles ms altos son evaluados ms
rigurosamente. La ventaja de este mtodo es que reduce el tiempo
total de clculo al utilizar una evaluacin ms rpida y menos
selectiva para eliminar a la mayora de los individuos que se
muestran poco o nada prometedores, y sometiendo a una
evaluacin de aptitud ms rigurosa y computacionalmente ms
costosa slo a los que sobreviven a esta prueba inicial.
Figura 7. Crossover 1 punto para codificacin binaria.
4.2.8 Otras Selecciones
Existen otras tcnicas de seleccin que simplemente se
comentarn a continuacin.
Una de ellas es la seleccin por prueba de aptitud en las que los
cromosomas con ms aptitud tienen ms posibilidad de ser
seleccionados pero no la certeza.
La seleccin generacional en la que ningn miembro de la
poblacin anterior se encuentra en la nueva.

4.3 Reproduccin o Crossover


Una vez se realiza la seleccin de los cromosomas se procede a Figura 8. Crossover punto para codificacin por valor directo.
realizar la reproduccin o cruce entre dos de estos cromosomas
Ms concretamente, el crossover consiste en el intercambio de
material gentico entre dos cromosomas. El objetivo del cruce es
conseguir que el descendiente mejore la aptitud de sus padres.
Para aplicar el cruce habr que seleccionar con anterioridad dos
individuos de la poblacin con una de las diversas tcnicas de
seleccin que hemos mencionado en el punto anterior. Adems
esta seleccin puede elegir el mismo padre para un descendiente.
Esto no es ningn problema pues se asegura la perpetuacin del
cromosoma ms dominante pero si este cruce se produjese con
mucha frecuiencia podra acarrear consecuencias adversas en caso
este nmero supera un cierto umbral se elegir un padre
determinado y si no lo supera se elige al otro.
Veamos algn ejemplo:

Figura 9. Crossover punto para codificacin en rbol.


Figura 12. Crossover uniforme para codificacin binaria.
4.3.2 Crossover 2 Puntos
Se trata de la misma filosofa que en el caso anterior peo en este
caso los padres se cortan por dos puntos. Se copiar al
descendiente los genes de un cromosoma progenitor desde el
principio hasta el primer punto de cruce, los genes del otro
progenitor desde el primer punto de cruce hasta el segundo y del
segundo punto de cruce hasta el final se copiar del otro
progenitor.
Figura 13. Crossover uniforme para codificacin por valor
Viendo unos ejemplos grficos: directo.
Otra opcin es seleccionar una mscara. En caso de que el bit
correspondiente a la mscara est a 1, se copia el gen de un
progenitor y en caso de que est a 0 se copia el gen del otro
progenitor.
Veamos un ejemplo:

Figura 10. Crossover 2 puntos para codificacin por valor directo

Figura 14. Codificacin uniforme con mscara para codificacin


binaria.
4.3.4 Crossover Aritmtico
Los progenitores se recombinan segn algn operador aritmtico
para generar su descendiente.
Figura 11. Crossover 2 puntos para codificacin binaria Veamos algunos ejemplos:
4.3.3 Crossover Uniforme
Cada gen del descendiente se obtiene de cualquiera de los padres
de forma aleatoria. Una opcin es generar un nmero aleatorio. Si
Figura 17. Mutacin simple para una codificacin binaria.

Figura 15. Crossover aritmtico genrico.

Figura 16. Crossover realizado con un operador AND.

4.4 Mutacin
Tras el cruce, tiene lugar la mutacin. Si nos referimos en
trminos de evolucin, la mutacin se manifiesta de forma
extraordinaria, nada comn. Las mutaciones suelen en promedio
ser beneficiosas pues contribuyen a la diversidad gentica de la
Figura 18. Mutacin de rama para una codificacin en rbol.
especie. Adems previenen a las soluciones de la poblacin de
verse limitadas por un ptimo local. Por lo tanto la mutacin
consiste en modificar ciertos genes de forma aleatoria atendiendo 5. OTROS OPERADORES
a la probabilidad de mutacin establecida con anterioridad. La En algunos problemas se pueden utilizar otro tipo de operadores
mutacin depende de la codificacin y de la reproduccin. Si se que buscan soluciones de forma ms ordenada o que actan en las
abusa de la mutacin podemos caer en el uso del algoritmo ltimas fases para optimizar la solucin.
gentico como una simple bsqueda aleatoria. Por lo tanto antes
de aumentar las mutaciones, conviene estudiar otras soluciones 5.1 Cromosomas de longitud variable.
que aporten diversidad a la poblacin como podra ser el aumento Puede suceder que para ciertas aplicaciones como en las redes
del tamao de la poblacin o garantizar la aleatoriedad de la neuronales no se conozca de antemano el nmero de neuronas que
poblacin inicial. vamos a utilizar por lo que habr que disponer de alguna tcnica
Para el caso de una codificacin binaria, la mutacin consiste para solventar el problema.
simplemente en la inversin del gen mutado que corresponder
con un bit. En el caso de una codificacin numrica, la mutacin En estos casos, necesitamos dos operadores ms: aadir y
podra consistir en sustituir un nmero por otro o intercambiar un eliminar. Estos operadores se utilizan para aadir un gen, o
nmero por otro que est en otra posicin del cromosoma. En el eliminar un gen del cromosoma. La forma ms habitual es
caso de codificacin por valor directo en el que por ejemplo duplicar uno ya existente, el cual sufre mutacin y se aade al
usemos nmeros reales, la mutacin puede consistir simplemente lado del anterior. En este caso, los operadores del algoritmo
en modificar el valor en unos decimales. Por ltimo, en una gentico simple (seleccin, mutacin, crossover) funcionarn de
codificacin en rbol, la mutacin podra radicar en el cambio de la forma habitual, salvo, claro est, que slo se har crossover en
operador, de un nmero o incluso en la mutacin de una rama la zona del cromosoma de menor longitud. Estos operadores
entera. permiten, adems, crear un algoritmo gentico de dos niveles: a
nivel de cromosoma y a nivel de gen.
Veamos unos ejemplos para analizar el fenmeno de la mutacin:
5.2 Operadores de Nicho
Estos operadores estn encaminados a mantener la diversidad
gentica de la poblacin, de forma que cromosomas similares
sustituyan slo a cromosomas similares, y son especialmente
tiles en problemas con muchas soluciones. Un algoritmo
gentico con estos operadores es capaz de hallar todos los
mximos, dedicndose cada especie a un mximo. Ms que
operadores genticos, son formas de enfocar la seleccin y la
evaluacin de la poblacin.
6. VENTAJAS DE LOS ALGORITMOS poblacin demasiado pronto, provocando que el
algoritmo converja hacia el ptimo local que representa
GENTICOS ese individuo, en lugar de rastrear el paisaje adaptativo
Una clara ventaja es que los algoritmos genticos son lo bastante a fondo para encontrar el ptimo global.
intrnsicamente paralelos, es decir, operan de forma Esto es un problema especialmente comn en las
simultnea con varias soluciones, en vez de trabajar de poblaciones pequeas, donde incluso una variacin
forma secuencial como las tcnicas tradicionales. Esto aleatoria en el ritmo de reproduccin puede provocar
significa que mientras tcnicas tradicionales slo que un genotipo se haga dominante sobre los otros.
pueden explorar el espacio de soluciones hacia una
solucin en una direccin al mismo tiempo, y si la 8. APLICACIONES DE LOS
solucin que descubren resulta subptima, no se puede
hacer otra cosa que abandonar todo el trabajo hecho y ALGORITMOS GENTICOS
empezar de nuevo. Sin embargo, los algoritmos La aplicacin ms comn de los algoritmos genticos ha sido la
genticos simplemente desechan esta solucin solucin de problemas de optimizacin, en donde han mostrado
subptima y siguen por otros caminos. ser muy eficientes. Sin embargo, no todos los problemas pudieran
ser apropiados para esta tcnica. Se recomienda en general tomar
Cuando se usan para problemas de optimizacin
en cuenta las siguientes caractersticas del mismo antes de intentar
resultan menos afectados por los mximos locales
usarla:
(falsas soluciones) que las tcnicas tradicionales.
Muchos algoritmos de bsqueda pueden quedar Su espacio de bsqueda debe estar delimitado dentro de
atrapados en los ptimos locales: si llegan a lo alto de un cierto rango.
una colina del paisaje adaptativo, descubrirn que no Debe poderse definir una funcin de aptitud que nos
existen soluciones mejores en las cercanas y concluirn indique qu tan buena o mala es una cierta respuesta.
que han alcanzado la mejor de todas, aunque existan
picos ms altos en algn otro lugar del mapa, situacin Las soluciones deben codificarse de una forma que
que no sucede para algoritmos genticos. resulte relativamente fcil de implementar en la
computadora.
Otra ventaja es su habilidad para manipular muchos
parmetros simultneamente. Resulta interesante en Dentro de los distintos problemas de optimizacin podemos
caso de tener varios objetivos a resolver. encontrar unas reas de aplicacin:
No necesitan conocimientos especficos sobre el Diseo por computadora de nuevos materiales que
problema que intentan resolver. Realizan cambios cumplan mltiples objetivos.
aleatorios en sus soluciones candidatas y luego utilizan
la funcin de aptitud para determinar si esos cambios
Optimizacin del la carga de containers.
producen una mejora o no.
Resulta sumamente fcil ejecutarlos en las modernas Asignacin de procesos en topologas de redes con
arquitecturas masivas en paralelo. procesamiento distribuido.
Usan operadores probabilsticos, en vez de los tpicos
operadores determinsticos de las otras tcnicas. Ubicacin de archivos en sistemas de almacenamiento
distribuido.
7. DESVENTAJAS DE LOS ALGORITMOS
Diseo de circuitos integrados.
GENETICOS
Definir una representacin del problema. El lenguaje Optimizacin de la infraestructura de telefona celular.
utilizado para especificar soluciones candidatas debe ser
robusto, debe ser capaz de tolerar cambios aleatorios Ingeniera Aeroespacial.
que no produzcan constantemente errores fatales o
resultados sin sentido. Se puede solucionar mediante la Juegos.
definicin de los individuos como listas de nmeros
donde cada nmero representa algn aspecto de la
Robtica
solucin candidata.
Pueden tardar mucho en converger, o no converger en 9. EJEMPLOS PRCTICOS
absoluto, dependiendo en cierta medida de los En el siguiente enlace, se puede apreciar de forma prctica los
parmetros que se utilicen -tamao de la poblacin, conocimientos expuestos en relacin a los algoritmos genticos.
nmero de generaciones http://homepage.sunrise.ch/homepage/pglaus/gentore.htm#Applet
Pueden converger prematuramente debido a una serie de En esta pgina se encuentra un applet de Java en el que se muestra
problemas. Si un individuo que es ms apto que la un relieve de un determinado paisaje generado de forma aleatoria.
mayora de sus competidores emerge muy pronto en el Se puede elegir la poblacin inicial. Al ejecutar el programa, el
curso de la ejecucin, se puede reproducir tan algoritmo trata de buscar la mxima altura a la que podemos
abundantemente que merme la diversidad de la ascender.
Otro ejemplo de algoritmo gentico se puede encontrar en 11. REFERENCIAS
http://www.rennard.org/alife/english/gavgb.html donde el
[1] http://es.wikipedia.org/wiki/Algoritmo_gen%C3%A9tico
algoritmo trata de buscar una copia de una figura partiendo de
otras generadas de forma aleatoria. [2] http://www.redcientifica.com/doc/doc199904260011.html
[3] http://geneura.ugr.es/~jmerelo/ie/ags.htm
10. CONCLUSIONES
Como hemos podido ver a lo largo del documento los algoritmos [4] http://www.lsi.upc.es/~iea/transpas/9_geneticos/index.htm
genticos son actualmente una fuerte fuente de resolucin de [5] http://casa.ccp.servidores.net/genetico.html
problemas complejos al realizar su ejecucin en paralelo pudiendo
[6] http://homepage.sunrise.ch/homepage/pglaus/gentore.htm#A
as obtener diferentes soluciones al problema.
pplet
Sin embargo, como se ha podido observar, no hay ninguna
[7] http://the-geek.org/docs/algen/
estrategia que sea siempre invencible, sino que hay un conjunto
de estrategias que suelen dar buenos resultados. As pues, habr [8] http://www.alfredorahn.com/docs/AG_Clase_3.ppt
que ajustar los parmetros de accin en funcin de cada problema [9] http://www.alfredorahn.com/docs/AG_Clase_4.ppt
a modelar para obtener una solucin que se adapte mejor a unas
determinadas condiciones. Sin embargo, en una situacin real [10] http://www.fiec.espol.edu.ec/investigacion/topico/algoritmos
puede suceder que no se conozcan los parmetros iniciales o que geneticos.pdf
no se sepa la duracin del algoritmo. [11] http://www.rennard.org/alife/english/gavgb.html
Por lo tanto habr que elegir con sumo cuidad los parmetros
iniciales. Un crossover elevado es recomendable para la mayora
de los problemas aunque hay situaciones en las que un crossover
menor dar mejores resultados. La mutacin deber ser baja,
entorno al 1%. Para una ptima resolucin, el resto de parmetros
habr que determinarlos en funcin del problema. La poblacin a
elegir debe atender a un valor ptimo (no por tener una poblacin
mayor, se va a tener una solucin mejor), la codificacin
depender del problema a resolver como se ha visto con
anterioridad y por ltimo el mtodo de seleccin ms utilizado es
el de seleccin por rueda de ruleta, aunque como se ha
comentado, depender de la cuestin que nos trate.
Por ltimo, se pretende que estos algoritmos se parezcan lo ms
posible a lo que en realidad sucede en la naturaleza. Por ejemplo,
cuando una poblacin queda aislada en la naturaleza, como
sucede, por ejemplo, con los linces de Doana, se pierde
diversidad al haber un grupo reducido que se reproduce entre si
constantemente perdindose esa tan necesaria diversidad para
sobrevivir. De hecho se ha comprobado que no evolucionan y que
su adaptacin a las condiciones no mejora en funcin del cambio
de stas.
Por lo tanto hay que tener cuidado con la perdida de diversidad en
nuestra poblacin, que se puede conseguir entre otras formas
mediante la mutacin.

También podría gustarte