Ir a Inicio

Motor de Vida Artificial: Motor 11

En las anteriores pruebas se enfrentaron cual de las dos formas de acercamiento a una serie era mejor: simple expresión vs algoritmo. Se llegó a la conclusión que en series ascendentes y descendentes las expresiones simples era lo que debía usarse, en cambio, en series alternas, debía usar algoritmos, como puede observarse en las pruebas.

Se ocurrió entonces, en vez de enfrentarlos, unirlos.

El proceso de unión se hace de la siguiente manera:

  1. Se genera aleatoriamente la expresión simple.
  2. Se muta sutilmente la expresión simple.
  3. Se genera aleatoriamente un algoritmo con la expresión simple como primera instrucción.
  4. Se muta algoritmo, excepto la primera instrucción.
  5. Se muta sutilmente el algoritmo, excepto la primera instrucción.

El programa esta escrito en C++, tiene dos caminos para probarlo:

  1. Descargar el programa ejecutable (Windows 95/98/NT/2000). De clic aquí.
  2. Descargar el programa fuente (C++). De clic aquí.

Conclusiones:

Con esta estrategia se obtendrá lo mejor de ambos mundos, la rápida aproximación de una expresión simple (series ascendentes y descendentes) y la capacidad de un algoritmo.

Aquí podemos observar un comportamiento en la naturaleza, la cual es unir las fortalezas de diferentes organismos (dando una mejor adaptación) y hábilmente lograr la neutralización o disminución de las debilidades de estos. La simbiosis debe ser un buen negocio en el cual la sumatoria de la adaptación (fuerza, ventaja) debe ser mayor a la sumatoria de la desadaptación (debilidades, desventajas).