Menu Close

Algoritmos evolutivos: cuando la inteligencia artificial se inspira en la selección natural

Arthur Samuel en el Laboratorio de Inteligencia Artificial de la Universidad de Standford en 1970. Standford InfoLab

En 1959, Arthur Samuel (1901-1990), trabajador de IBM y graduado por el Instituto Técnico de Massachussets, escribió un artículo que cambió el modo de programar los ordenadores.

El problema que afrontó Samuel no era de capital importancia: se trataba simplemente de desarrollar un programa capaz de jugar al juego de damas. Analizaba una posición del tablero en la que tenía en cuenta diversos factores. A cada uno de ellos le daba una mayor o menor importancia mediante un valor numérico, y producía el movimiento con más probabilidad de ganar la partida a partir de esa configuración analizada.

El inconveniente era que se desconocía qué factores eran más importantes para determinar el mejor movimiento a realizar. Y aquí es donde reside la gran aportación de Samuel.

Un jugador de damas muy perspicaz

En vez de asignar valores concretos, los asignó de manera aleatoria. Claro que de esta forma el resultado sería un programa con un pésimo rendimiento en el juego. La idea brillante fue la de hacerle jugar contra contrincantes humanos e intentar modificar los valores a partir de la experiencia en las partidas.

Cuando el software perdía una jugada, la analizaba poniéndose en la piel del humano, comparando la acción que este realizó en cada movimiento con la que el programa hubiera hecho en su lugar. Así, mejoraba su rendimiento estudiando al adversario y aprendiendo de los errores cometidos.

Las investigaciones de Samuel fueron el punto de partida para el desarrollo de la inteligencia artificial en IBM durante la década de 1990. IBM

Samuel no había programado un algoritmo para jugar a las damas, lo había diseñado para que aprendiera a jugar a las damas. Y fue capaz de hacerlo incluso por encima de las capacidades de su programador.

Fue una experiencia pionera de lo que hoy se conoce como aprendizaje automático, que está detrás de avances tan extendidos como el diagnóstico médico por inteligencia artificial, el reconocimiento de voz, los vehículos autónomos, los asistentes virtuales o los últimos modelos del lenguaje.

Autonomía para aprender

Muchos de ellos se han nutrido del perfeccionamiento de unos modelos, también paramétricos, que llamamos redes neuronales. En estos nuevos modelos no hay una función fija como en el programa de Samuel, sino que se puede aproximar cualquier función, y se pasa de unos pocos parámetros a cientos de millones de ellos.

Además, ya no hace falta un humano para que el programa aprenda de él: los sistemas actuales aprenden a partir de la miríada de datos que están disponibles en todos los dominios del conocimiento.

Sin embargo, la tecnología que hay detrás de todos estos modelos recientes no es demasiado revolucionaria. La manera de ajustar sus parámetros es una modificación del método de ajuste mediante descenso de gradiente, que data de finales del siglo XIX, aplicado a las redes neuronales en la década de los 80.

El éxito reciente reside en la sofisticación de los modelos y su complejidad, además de la enorme disponibilidad de datos de entrenamiento. Pero los científicos no han pasado por alto otro aspecto importante del aprendizaje automático: la evolución.

Algoritmos genéticos

Los seres vivos pueden, de manera simplificada, describirse también como funciones parametrizadas, cuyos parámetros son los genes. Dependiendo de los valores que tomen dichos genes, se produce un ser vivo u otro, con unas u otras características.

Es la evolución la que, de manera similar al programa de Samuel, ha ido seleccionado los valores adecuados de los genes, para generar seres vivos con mayor probabilidad de sobrevivir, descartando por el camino ingentes cantidades de valores inapropiados.

John Henry Holland desarrolló el primer programa de aprendizaje evolutivo en 1975. Wikimedia Commons, CC BY

Incluso los sistemas neuronales de los seres vivos son el producto de un proceso que ha ido probando soluciones alternativas, durante millones de años, hasta dar con la combinación más eficaz desde el punto de vista evolutivo.

Es a partir de esta idea que John Holland (1929-2015) diseñó, en el año 1975, el primer programa de aprendizaje evolutivo y desarrolló lo que denominó algoritmos genéticos.

La idea de un algoritmo evolutivo es la de expresar el programa mediante un código, a imagen del código genético, capaz de representar un determinado comportamiento. Si se modifica el código, el programa se comporta de manera diferente.

Si damos con una determinada codificación, será capaz de mostrar un comportamiento altamente eficaz. Como en los sistemas neuronales, se parte de un código aleatorio que se va mejorando mediante una versión artificial de la selección natural.

Los programas que tengan mejores rendimientos cruzarán su codificación, generando nuevos programas, en una versión computacional de la reproducción sexual.

Desde su aparición, se han producido innumerables avances en este tipo de algoritmos. Asimismo, se han aplicado con éxito en la selección de parámetros en problemas que son inabordables de otra manera.

La antena 2006 de la nave espacial de la NASA ST5. Esta forma complicada fue encontrada por un programa evolutivo del diseño de computadora para crear el mejor patrón de la radiación. Wikimedia Commons, CC BY

El futuro de la inteligencia artificial podría estar en combinar estas dos perspectivas, la neuronal y la evolutiva. Los sistemas evolutivos podrían ser útiles en la generación automática de modelos neuronales cada vez más complejos o, incluso, nuevos métodos de aprendizaje.

De la misma manera que la selección natural ha sido capaz de producir sistemas neuronales capaces de generar comportamientos más y más complejos a partir de una evolución gradual de los mismos, los algoritmos evolutivos podrían ser la clave para producir modelos de inteligencia artificial cada vez más sofisticados, mejor adaptados a los requerimientos que se necesiten y más inteligentes.

El campo de los sistemas evolutivos y los sistemas de inspiración biológica tiene un gran potencial que apenas estamos vislumbrando. Sin duda, será objeto de gran atención en los años venideros.

Want to write?

Write an article and join a growing community of more than 185,700 academics and researchers from 4,983 institutions.

Register now