6. Experimentaci´ on
6.1.2. Cruce
El cruce es el proceso mediante el cual dos individuos intercambian su c´odigo gen´etico. Como bien es sabido, es el proceso equivalente a la repro- ducci´on sexual de los mam´ıferos.
Existen diversas formas de implementar el cruce y todas ellas son v´alidas, aunque unas opciones se adaptan mejor a unas situaciones que a otras. Como se coment´o en el cap´ıtulo anterior, se han implementado tres tipos de cruce diferentes y se han realizado las pruebas correspondientes con cada uno de ellos con el fin de comprobar cual de ellas funciona mejor en el contexto en el que se est´a trabajando.
Se cruzar´an todos los individuos de la poblaci´on salvo el mejor de la generaci´on anterior que, como se comentaba y debido al elitismo, se encuen- tra exento de pasar por los diferentes operadores gen´eticos. Para asegurar que todos los individuos sean cruzados se ha procedido a realizar el cruce siempre entre individuos consecutivos de la poblaci´on cogidos de dos en dos empezando por el segundo. Si se trata de un n´umero par de individuos (no se debe olvidar el extra´ıdo por el elitismo) se dejar´a sin cruzar el ´ultimo individuo de la poblaci´on.
A continuaci´on se realizar´an una serie de pruebas que permitir´an deter- minar el tipo de cruce m´as adecuado para las pruebas sucesivas. Para todas ellas los par´ametros de configuraci´on de la canci´on y del algoritmo gen´eticos son los mismos:
101 individuos 3000 generaciones 3 pistas por canci´on 100 notas por pista Comp´as 2/4
Selecci´on por torneo de 5 individuos Porcentaje de mutaci´on de 0,01
Los resultados obtenidos tras estas pruebas quedan reflejados en las gr´afi- cas que se presentan seguidamente. Todas ellas est´an ponderadas, siendo 100 el m´aximo que se puede alcanzar:
Experimentaci´on 89 1. En primer lugar se presenta la figura 6.1 correspondiente a la evoluci´on
del cruce simple.
Figura 6.1: Evoluci´on de la poblaci´on utilizando cruce simple Como se puede comprobar en la figura 6.1, su evoluci´on es positiva, acerc´andose bastante al m´aximo en promedio con aproximadamente un 90 %, aunque tal vez algo m´as lenta de lo que se desear´ıa. A´un as´ı, existen individuos buenos que se acercan a´un m´as al m´aximo alcan- zable y que proporcionar´ıan resultados aceptables, pero la distancia existente entre los par´ametros estudiados puede indicar grandes dife- rencias entre los individuos de la poblaci´on, en las que se encontrar´ıan individuos buenos y otros nada aceptables. Tambi´en comentar que la evoluci´on parece que a´un no se ha estancado y que podr´ıa mejorar los resultados si se dejase ejecutar un n´umero m´as alto de generaciones. 2. El siguiente cruce a estudiar ser´a el multipunto.
Experimentaci´on 90
Figura 6.2: Evoluci´on de la poblaci´on utilizando cruce multipunto Es sencillo ver en la figura 6.2como en este caso la evoluci´on sigue una tendencia similar pero con una curva m´as pronunciada y obteniendo mejores resultados. Tambi´en es importante remarcar el hecho de que las distancias existentes entre el promedio, el m´aximo y el m´ınimo son mucho menores que en el experimento anterior lo que indica que los individuos obtenidos finalmente son m´as adecuados y parejos, y no dependen tanto del hecho de encontrar un individuo muy cercano al m´aximo sino que es fruto de la evoluci´on de la poblaci´on completa. Como en el caso anterior, la tendencia sigue siendo positiva y es claro que dej´andolo ejecutar un n´umero algo m´as elevado de generaciones se podr´ıan mejorar los resultados obtenidos.
Experimentaci´on 91
Figura 6.3: Evoluci´on de la poblaci´on utilizando cruce por comp´as Las diferencias con las pruebas anteriores es clara como se puede apre- ciar en la figura 6.3. La evoluci´on es much´ısimo m´as r´apida, aproxi- madamente en la generaci´on 1000 ya se encuentra rozando el m´aximo, y alcanza cotas de resultados mucho m´as altas. El ”problema” de este tipo de cruce es la alta probabilidad de que los individuos resultan- tes sean muy similares entre s´ı, ya que al cruzar compases enteros, en cuanto se encuentra uno de ellos que funciona bien en varios de los individuos, ´este se propaga con rapidez al resto de la poblaci´on. A´un con este ”problema”, los resultados obtenidos son muy buenos y no debe suponer una limitaci´on debido a las m´ultiples opciones de crea- ci´on que tiene el sistema que hacen que sea muy complicado que en distintas ejecuciones se produzcan los mismos individuos, eliminando este problema planteado.
Para ver y comparar de forma m´as clara los resultados obtenidos por cada uno de los tipos de cruce, se presenta la tabla resumen 6.1:
Experimentaci´on 92
Cuadro 6.1: Tabla resumen de pruebas de operador de cruce (30 experimen- tos)
En ella se pueden corroborar las afirmaciones realizadas y observar como el cruce por comp´as es bastante m´as eficiente que los otros, alcanzando un valor de fitness promedio superior al 99 %. Por esta raz´on se emplear´a el cruce por comp´as en el resto de pruebas, aunque en alg´un momento se mostrar´a c´omo funcionan el cruce simple y el multipunto bajo otro tipo de configuraci´on.