Bits y ácido desoxirribonucleico

Cuando estaba en la primaria me llamaban la atención los libros con fórmulas y gráficos complejos. Sobresalían con respecto a los compuestos solo por texto: un esquema ininteligible era un plus, un lenguaje más.
Mi viejo tenía varios de tapa dura, de su época universitaria. Uno era sobre biología vegetal, otro de química general y otro de genética. Éste último era enorme, imponente. Él me decía que fue una de las materias más difíciles que cursó, pero que la genética era apasionante. Siempre usa esa palabra cuando se refiere a algún campo del conocimiento. Apasionante.
Recuerdo que comencé a leer el libro de Química General, porque me pareció más accesible. Habré cortado en la página treinta, pero me sentí muy orgulloso de haber entendido ciertos conceptos que juzgaba avanzados para mi edad. Además, complementaba la lectura con búsquedas en Encarta, que era la principal fuente de acceso al saber de un chico de diez años.
El libro de genética apenas lo abrí, para ver si tenía fórmulas o dibujos. Estaba lleno. Entre ellos, obviamente, encontré el esquema del ADN: esas dos líneas que se van entrelazando y una cantidad increíble de flechas o anotaciones sobre cada componente del esquema. Era apasionante, como decía papá, pero me dio miedo. Si es difícil para él, grande y con título universitario, trabajo y una vida encaminada, qué sería para mí, un pendejo. Además, el libro pesaba varios kilos. Me resultaba difícil traerlo de la biblioteca hasta el escritorio. Un libro mostruoso.
Me limité a buscar información en Encarta sobre los elementos del ADN y le pregunté a mi papá si me lo regalaba. Me dijo que sí y desde entonces lo tengo en un estante, con el lomo hacia delante. Cada vez que paso la mirada por ahí se observa, en mayúsculas, ‘GENÉTICA’. Una más en mi diccionario de palabras importantes.
Es por eso que, cuando tuve que elegir entre varias materias optativas de mi carrera, el año pasado, no dudé ni un segundo en anotarme a una que se llama ‘Algoritmos Genéticos’. Sonaba muy bien. Una combinación desconocida entre código, computadoras, software y esa disciplina apasionante.
Los Algoritmos Genéticos son una rama de la Inteligencia Artificial. En general, se encargan de resolver problemas de optimización, es decir, problemas en los cuales la idea está en encontrar la mejor solución dentro de un conjunto de soluciones disponibles. Lo más llamativo es su funcionamiento. Lo que hacen es analizar estas posibles soluciones en base a un mecanismo que es una imitación del proceso de selección natural, que estudió en profundidad Charles Darwin.
¿En qué consistía eso de la ‘selección natural’? Existen una serie de especies en el planeta. Esas especies viven y se desarrollan en un determinado entorno o medio ambiente. Dicho entorno ejerce presión selectiva sobre las especies, lo que quiere decir, más o menos, que las ‘pone a prueba’. Frente a un determinado cambio en el entorno, el destino de las especies se divide en dos: por un lado están las que se adaptan (desarrollan habilidades nuevas o modifican su fisiología con el objetivo de superar dicho cambio) y por el otro, las que no. Las primeras sobreviven gracias a la adaptación, las segundas no. Y así sucesivamente. De esta manera, las especies mejor dotadas son las que perduran. Cuando se reproducen, crean generaciones de seres vivos que heredan las características genéticas que posibilitaron a sus antecesores el hecho de sobrevivir al entorno. De esta manera se logra la evolución en la naturaleza.
Ejemplos de adaptación al entorno son el pelaje blanco de los animales que viven en el ártico (les permite ocultarse en la nieve), el cuello largo de las jirafas (gracias a ellos pueden alcanzar el alimento de las copas de los árboles), la deformación en la mandíbula de la serpiente (para tragar presas más grandes) y millones de casos más. Como dijimos, las especies extinguidas forman parte del grupo que no pudo adaptarse a las exigencias del medio ambiente. Tal es el caso del dodo, que poseía alas demasiado pequeñas como para levantar vuelo, no pudo desarrollarlas y por ende fue presa fácil de los cazadores de la época.
Resulta interesante observar la analogía que hacen los algoritmos genéticos de este comportamiento natural. Un algoritmo genético consta de un conjunto de soluciones (población) a un determinado problema. Estas soluciones suelen expresarse en lenguaje binario, es decir, son tiras de ceros y unos, denominadas cromosomas. Cada cromosoma puede resolver el problema en cuestión de mejor o peor manera que otro. La idea consiste en hacer prevalecer las mejores soluciones y descartar las peores.
Para esto, el algoritmo consta de una gran cantidad de repeticiones. En cada una de ellas se le asigna un valor a cada cromosoma que representa qué tan bueno es y se realizan modificaciones sobre la población con el objeto de mejorar la calidad de sus miembros. Existen dos operaciones muy interesantes que se inspiran en la naturaleza:
- Reproducción: consiste en tomar cromosomas que tengan un buen puntaje y cruzarlos para crear otros cromosomas que se supone serán mejores que sus predecesores.
- Mutación: su objetivo es insertar cambios aleatorios en algunos cromosomas con la esperanza de lograr un avance evolutivo en el mismo.
De esta manera, se espera que al final de las iteraciones del algoritmo, la población de soluciones haya convergido en la solución más óptima del problema.
Al comienzo de la materia, propusieron un ejercicio muy simple dentro del ámbito de los algoritmos genéticos: usarlos para maximizar el valor de una función (por ejemplo, x^2) en un determinado rango (por ejemplo, de 1 a 4). En este caso, la solución óptima sería 16 (4^2=16). Se comenzaba con una población inicial generada de manera aleatoria, de tiras de números binarios que representaban números enteros. Programamos las rutinas correspondientes a la reproducción y mutación, y después de varias iteraciones observamos cómo el programa convergía en el número que estábamos esperando. Fue extraño, revelador.
Otros problemas que nos asignaron fueron el del viajante, el de la mochila y uno que consistía en que el algoritmo genético logre resolver un sudoku. Eran desafíos muy interesantes y que tenían un nivel de complejidad considerable, pero que vistos desde la lente de una persona que no está dentro del ámbito de la informática, no producían mucho valor.
En la actualidad, medio año después de rendir la materia, comencé a leer el libro El auge de los robots, de Martin Ford, que consiste, para ser breves, en un conjunto enorme de datos y estadísticas que apoyan la idea de que la Inteligencia Artificial y la robótica se están comiendo no sólo los puestos de trabajo operativos, rutinarios, sino que también avanzan a pasos agigantados sobre los trabajos con requerimientos creativos o intelectuales considerables.
En el capítulo 4, “Los puestos de trabajo de cuello blanco están en riesgo”, Ford dedica una sección a la explicación de los algoritmos genéticos. Y señala, por medio de ejemplos, aplicaciones de los mismos en dos campos que me interesan mucho: la ciencia y el arte.
Un científico muy particular
Los créditos de la obra son para Hod Lipson, director del Laboratorio de Máquinas Creativas de la Universidad de Cornell, y su estudiante de doctorado, Michael Schmidt. El proyecto que llevaron a cabo trata de un software, llamado Eureqa, que analiza determinados comportamientos de la naturaleza y deduce las leyes matemáticas que los gobiernan. Se trata, básicamente, de un científico artificial capaz observar fenómenos que ocurren en la realidad, encontrar patrones y describirlos por medio del lenguaje matemático.
El programa consiste en un algoritmo genético que genera un conjunto de soluciones en forma de ecuaciones, a partir de la observación -a través de sensores- de, por ejemplo, un objeto moviéndose. Estas soluciones evolucionan gracias a los mecanismos descritos de reproducción y mutación, que desembocan en fórmulas de una exactitud puntillosa. Con Eureqa, las leyes de movimiento de Newton podrían haber sido deducidas en cuestión de horas.
En este vídeo se observa a Michael Schmidt explicando el poder de su creación en una charla TEDx:
Además, subió una introducción al software, al estilo vídeos tutoriales de YouTube como “cómo hackearle la cuenta de Facebook a tu ex” o “cómo formatear la pc e instalar Windows 10”, solo que un poco más interesante:
Cabe destacar que muchos científicos están utilizando Eureqa como complemento para sus investigaciones.
Un músico muy particular
Ford introduce a nuestro invitado con una frase muy picante:
“La gran mayoría tendemos a asociar el concepto de creatividad exclusivamente al cerebro humano, pero vale la pena recordar que el cerebro en sí mismo -con mucha diferencia, el invento más sofisticado que existe- es producto de la evolución. Por lo que no es sorprendente que en los intentos para construir máquinas creativas se incorporen técnicas de programación genética”.
En este caso, las cabezas detrás del invento provienen de la Universidad de Málaga, España. Ellos crearon Iamus, “un grupo de ordenadores que ejecutan un algoritmo de inteligencia artificial especializado en la música”. Consiste, nuevamente, en una analogía de la selección natural: el software posee conocimientos sobre las reglas del lenguaje musical. Se le comunica la cantidad de instrumentos que interpretarán la obra y, a partir de ello, crea generaciones de soluciones (es decir, obras completas de música clásica, por ejemplo) que luego compiten en el entorno con el objeto de hacer prevalecer a las más idóneas y descartar las que poseen errores.
No sé con certeza cuáles son los mecanismos de selección que posee Iamus, aparte de las restricciones gramaticales del lenguaje musical y de la conciencia que debe tener la máquina para hacer obras que sean posibles de interpretar por humanos (“we have informed the computer that it is impossible for a pianist to play a 10 note chord with one hand. We only have five fingers on one hand.”), pero lo cierto es que musicólogos, como Peter Russell, elogiaron las obras de Iamus, calificándolas de “artísticas y encantadoras”. Incluso la Orquesta Sinfónica de Londres interpretó música compuesta por la máquina.(1)
En la Universidad de Málaga llevaron a cabo un memorial de la muerte de Alan Turing, en 2012. Iamus, que podría considerarse una de sus hijas o nietas, compuso música. Los resultados se observan en este vídeo emocionante y extraño:
Un mundo muy particular
Es evidente que la actualidad nos presenta un reto importante. Estos dos ejemplos, sumadas las toneladas de datos que presenta Ford en su libro, nos hacen dar de cara contra una realidad: esto que estamos construyendo no sirve solamente para optimizar el trabajo de un oficinista que usa Excel. Va demasiado más allá. Implica creatividad, intelectualidad, sentido de la belleza. Nos molesta un poco.
El reto es duro: redefinir qué nos hace realmente humanos.
