
|
La programación por evolución se sirve de una versión computerizada, se parte de millares de objetos de ensayo generados al azar, se van seleccionando los mas actos se le aplican mutaciones para obtener diferentes versiones, a lo largo de generaciones se van cumpliendo los criterios deseados, al final se toma la versión mas idónea que soluciona el problema planteado
Los dos circuitos que aquí se muestran son generadores de función cúbica, el primero de los circuitos es un proyecto de un ser humano, las secciones de color verde y de color morado del segundo de obtuvieron evolutivamente mediante programación evolutiva. El circuito obtenido evolutivamente funciona mejor que el de concepción humana pero no sabemos como funciona, no solo es mas complicado si no que contiene elementos redundantes como el transistor de color morado que no contribuye a nada en su funcionamiento. Este circuito ha sido pensado por una red de ordenadores que empezando por uno de ellos han ido sucesivamente mutando y entrelazándose y eliminando los circuito inservibles hasta llegar a este el cual tardo varios días con 1000 ordenadores P4 1G.
En este ejemplo el programa empezara por cruzar aleatoriamente los circuitos (1) posteriormente se cruzaran(2) creando nuevos circuitos (3) se prueban y se cruzan los mas adecuados(4) el mas adecuado se refinara gracias a las mutaciones (6) obteniendo el circuito final mas adecuado y definitivo.
El objetivo es crear una inteligencia artificial que sean capaces de aprender a partir de una formulación de lenguaje de alto nivel con una mínima participación humana en cada nuevo problema y capaza de competir con los humanos
|