Closed mariosky closed 8 years ago
Great!
La implementación de xover de https://github.com/JJ/2016-ea-languages-wcci/blob/master/c/xover.c intercambia los genes de manera aleatoria, digamos unas length/2 veces en promedio. Pero recorre todo el array.
Pero la de php https://github.com/JJ/2016-ea-languages-wcci/blob/master/php/bxover.php Intercambia a partir de un punto aleatorio, digamos también unas length/2 veces en promedio. Pero no recorre todo el arreglo siempre, solo recorre un length/2 en promedio.
Esta puede ser otra razón por la que C y C++ son más lentos. En el caso de C#, si es más lento.
On Fri, Nov 27, 2015 at 11:37 PM, Juan Julián Merelo Guervós < notifications@github.com> wrote:
Great!
— Reply to this email directly or view it on GitHub https://github.com/JJ/2016-ea-languages-wcci/issues/4#issuecomment-160257678 .
Hola. En realidad, me fijé en la implementación que había hecha en Java. Esta es la de Java: int initial_point = r.nextInt(length); int final_point = r.nextInt(length); if (initial_point > final_point) { int t = initial_point; initial_point = final_point; final_point = t; }
Y esta la de PHP: // Initial point for xover $p1=rand(0,$l-2); // Final point for xover $p2=rand($p1+1, $l-1); $tmpB1=$b1; // INterchanging information: values at positions $p1 and $p2 are also interchanged $b1=substr_replace ( $b1, substr($b2, $p1, $p2-$p1+1), $p1, $p2-$p1+1 ); $b2=substr_replace ( $b2, substr($tmpB1, $p1, $p2-$p1+1), $p1, $p2-$p1+1 );
Avisadme si tengo que cambiar la versión PHP. Saludos
El 28 de noviembre de 2015, 22:47, Mario Garcia Valdez < notifications@github.com> escribió:
La implementación de xover de https://github.com/JJ/2016-ea-languages-wcci/blob/master/c/xover.c intercambia los genes de manera aleatoria, digamos unas length/2 veces en promedio. Pero recorre todo el array.
Pero la de php https://github.com/JJ/2016-ea-languages-wcci/blob/master/php/bxover.php Intercambia a partir de un punto aleatorio, digamos también unas length/2 veces en promedio. Pero no recorre todo el arreglo siempre, solo recorre un length/2 en promedio.
Esta puede ser otra razón por la que C y C++ son más lentos. En el caso de C#, si es más lento.
On Fri, Nov 27, 2015 at 11:37 PM, Juan Julián Merelo Guervós < notifications@github.com> wrote:
Great!
— Reply to this email directly or view it on GitHub < https://github.com/JJ/2016-ea-languages-wcci/issues/4#issuecomment-160257678
.
— Reply to this email directly or view it on GitHub https://github.com/JJ/2016-ea-languages-wcci/issues/4#issuecomment-160338563 .
Victor Manuel Rivas Santos
Impleméntalo de la forma que veas más conveniente en cada lenguaje, no hay problema.
Please do.