Páginas

lunes, 16 de noviembre de 2015

La Ciencia como Algoritmo Genético

“... somos como enanos a los hombros de gigantes. Podemos ver más y más lejos que ellos, no por la agudeza de nuestra vista, ni por la altura de nuestro cuerpo, sino porque somos levantados por su gran altura.”
Bernardo de Chartres (s.XII) [1]

“... lo que hace falta es un equilibrio exquisito entre dos necesidades contrapuestas: un análisis escrupulosamente escéptico de todas las hipótesis que se nos presenten y, al mismo tiempo, una enorme disposición a aceptar ideas nuevas.”
Carl Sagan [2]
La ciencia se construye a base de hombros de gigantes [3]. Los nuevos conocimientos que logra cada nueva generación, parten de la base heredada de los saberes de generaciones (o investigaciones) anteriores, en un ciclo sin fin.

Pero el equilibrio exquisito entre las dos necesidades que menciona Carl Sagan, también es muy importante. Pues son tan necesarias las nuevas ideas (para impedir el estancamiento de la ciencia) como analizarlas junto a esos conocimientos heredados, y así poder evaluar, desde un sentido escéptico, cuál de ellos es el más válido.

Estos tres conceptos (los conocimientos heredados, generar nuevas ideas y seleccionar las mejores) subyacen en una visión de la ciencia que ya ha sido tratada por algunos filósofos [4]. Pero personalmente, supongo que por defecto profesional (soy informática de formación y de profesión), me ha sido inevitable enfocar este mecanismo de una forma algo diferente: la ciencia como Algoritmo Genético [5].

Asombra ver cómo trabajan estos algoritmos, pues es entonces cuándo se puede comprobar cómo una idea tan simple puede ser tan efectiva y potente. 

Hace años trabajé en un proyecto que se basaba en este mecanismo y, aunque ya entonces era consciente de la efectividad de la evolución, esta experiencia me hizo entender, de forma clara, el gran poder y versatilidad que ostentaba la reiteración del azar (aplicado a datos funcionales) por el hecho de que sea dirigido por una selección. Algo parecido me pasa con la ciencia, sus paralelismos con los Algoritmos Genéticos me hacen entender mejor su funcionamiento, efectividad y sus logros.

No voy a tratar sobre el “método científico”, pues no estoy completamente de acuerdo con una visión generalizada de esta expresión, que la define como un modo de ordenar y estructurar el trabajo del investigador para obtener la verdad.

Del oficio de investigador, lo único que se debe tener en cuenta es que incremente el conocimiento y que lo difunda. Es decir: el resultado final (que es lo que será evaluado). Para el trabajo previo, los únicos límites que debe tener el científico (si quiere hacer buena ciencia) son los que le impone la evidencia de la disciplina en cuestión y su creatividad.

¿Y a qué me refiero cuando hablo de incrementar el conocimiento? Pues no solo al fin último de la ciencia, que es la de producir teorías que expliquen y generalicen la realidad. Sino que incluyo también otros conocimientos muy útiles y necesarios, como por ejemplo: los resultados experimentales, las técnicas de investigación, las construcciones teóricas sin previa evidencia, la refutación de hipótesis, etc. Es decir, todo aquello que pueda contribuir, sin serlo propiamente, a la búsqueda de teorías que generalicen la realidad.

Breve introducción a los Algoritmos Genéticos

La cita: "Los organismos vivientes son consumados resolvedores de problemas" [6] es de John Henry Holland [7], y sintetiza el trabajo que realizó este profesor, de la Universidad de Míchigan, entre las décadas de 1960 y 1980, que sentó las bases de una técnica computacional llamada Algoritmos Genéticos.

Y es que los algoritmos, frecuentemente, se utilizan para resolver los problemas que pueden ser planteados de forma matemática o modelada. Pero hay problemas que son más complejos que otros. Unos pueden tener una única solución, óptima e inmejorable (que son las generadas por técnicas llamadas deterministas
[8]), y además en tiempos razonables. Pero existen otros problemas que son demasiado complejos para utilizar estas técnicas, pues evaluar todas sus soluciones factibles puede ser imposible en tiempos humanamente decentes.

Es aquí donde cobran importancia otro tipo de procedimientos, los llamados heurísticos, donde la solución encontrada es considerada buena, pero jamás puede decirse que es óptima. Estas técnicas solo consideran una parte de las soluciones factibles, usando un criterio considerado correcto (pero no perfecto) para descartar soluciones no óptimas.

Los Algoritmos Genéticos son una técnica heurística. Y son útiles para dar alguna solución (aunque no sea la mejor ni la única) a esos problemas tan complejos (un ejemplo los tenemos en lo que los matemáticos llaman problemas NP-completos [9]).

Los Algoritmos Genéticos están inspirados en la teoría de la evolución, y modelan, de forma aproximada, este fenómeno existente en la naturaleza; por lo que son una metáfora biológica para resolver problemas complejos.

Tenemos multitud de aplicaciones de estos algoritmos [10], por ejemplo, se utilizan para el diseño de materiales automovilísticos, diseño de topologías de circuitos impresos, construcción de horarios docentes (para evitar conflictos de clases), etc.
 
Paralelismos con la ciencia

Pero volvamos a mi problema complejo preferido: la ciencia. Que desde la ignorancia busca soluciones posibles, y entre estas llegar a la misteriosa y desconocida verdad. Pero (como hemos podido comprobar en tantas ocasiones) las soluciones que da la ciencia pueden ser buenas y hasta óptimas, pero no podemos saber seguro si son las mejores, es decir: la verdad.

Antes de seguir adelante debo advertir que me baso completamente en los Algoritmos Genéticos para explicar los paralelismos existentes con la ciencia. La razón de esto es que el mecanismo del Algoritmo Genético es claro, funcional y (sobre todo) se adapta al problema. Y el funcionamiento de la evolución biológica es algo más complejo, y aunque la base sea la misma que la del algoritmo, está enfocado a la solución de un solo problema: la adaptación de una población al medio en el que vive. Pero, aun así,
no puedo dejar de aprovecharme de esta metáfora biológica para explicar las semejanzas en su funcionamiento, al igual que se hace al explicar la técnica computacional de los Algoritmos Genéticos.
 
Veamos ahora, en el siguiente diagrama de flujo, la estructura básica de este algoritmo:

Es un algoritmo muy sencillo, pues solo se compone de tres actividades y una decisión. Pero tenemos un final, y como ni en la evolución biológica ni en la ciencia se contempla el final como objetivo, realizaremos una adaptación de este algoritmo sin la condición de terminación. Lo que lo hará aún más simple, dejándolo con tan solo tres actividades, que serán las que analizaremos.

Y el resultado sería el siguiente:



En los diagramas de flujo anteriores podéis ver dos versiones de este algoritmo de repetición infinita. El primero sería el que (personalmente) utilizaría para mostrar un esbozo del funcionamiento de la evolución biológica a través de un algoritmo genético, y el segundo muestra el funcionamiento (equiparable al primer caso) de la ciencia.

Estado del conocimiento científico 


En un algoritmo genético es imprescindible identificar, tipificar, estructurar y dar valor a los datos con los que tratamos, pues estos serán los que cambien y se den como solución (que en nuestro algoritmo de repetición infinita será temporal).
Primera actividad del algoritmo.
En la evolución biológica, estos datos serían la información genética de los individuos de una población que ocupa un hábitat determinado en un momento específico y entre cuyos individuos existe un intercambio de información genética.

En el caso de la ciencia, y para este algoritmo, una población se puede equiparar al conocimiento en un ámbito específico, y los individuos equivaldrían a las publicaciones verificadas sobre ese conocimiento. El parentesco, por lo tanto, vendría dado por las referencias a otras publicaciones en las que se basa dicha investigación.


Este conocimiento es el que ya ha pasado por, al menos, una selección; es decir, es el conocimiento que en el momento actual de la ejecución del algoritmo se considera válido (o consensuado) por la comunidad científica. Por lo que nos referiremos a él como "Conocimiento validado". 
Esbozo del "árbol genealógico” del conocimiento validado en biología
Es, en este apartado, donde se pueden consultar las certezas científicas del momento histórico en el que nos encontremos. 

Generar nuevo conocimiento científico


Al igual que en la evolución biológica, los Algoritmos Genéticos utilizan dos estrategias básicas de transformación: el cruce y/o la mutación (empleadas generalmente de forma aleatoria).

Segunda actividad del algoritmo.
En el caso de la ciencia, el cruce representa lo que se utiliza de los conocimientos validados para conseguir nuevos conocimientos, es decir, esos hombros de gigantes.

Mientras que la mutación son esas nuevas ideas tan necesarias, a las que aludía Carl Sagan. Y que se las puede equiparar con la aleatoriedad de una mutación, no solo por las serendipias (que también); sino por el caos que representa lo humano (con sus prejuicios, decisiones arbitrarias, circunstancias sociales, intereses tanto económicos como institucionales, etc.) que convierte el camino que sigue la ciencia en tortuoso, en una exploración más parecida a la aleatoriedad que a una exploración exhaustiva, determinista e irreal de todas las posibilidades que pueden explicar la realidad.

Por otro lado, tampoco encontramos una aleatoriedad pura en las mutaciones biológicas, pues se sabe que hay zonas del genoma que mutan más que otras (existen zonas del ADN que tienen una probabilidad de mutar 100 veces mayor que otras [11]
[12]). Es decir que la probabilidad de sufrir una mutación en un punto determinado del genoma no es uniforme, como tampoco lo es (si hablamos de ciencia) la probabilidad de que se escoja un objetivo de investigación u otro.

Un caso particular de mutación biológica (que quiero tratar por separado) es la que se realiza por la inserción de un segmento de ADN de una especie a otra (es decir la transferencia horizontal y la introgresión, que son los fenómenos naturales en los que se basa la tecnología de los trasgénicos), lo que se puede equiparar a la transferencia de conocimientos entre diferentes ámbitos de la ciencia que permiten ayudar a abrir nuevas vías de investigación y, por tanto, generar nuevas ideas.

Seleccionar y reemplazar el conocimiento científico

Y aquí llega lo que realmente dota de inteligencia y dirección al Algoritmo Genético. Aquí es donde el caos existente en la etapa anterior (el todo vale) se reconduce y pasa por este filtro esencial, que se basa en el último concepto que me falta por tratar: el análisis escrupulosamente escéptico de todos los individuos (o hipótesis como lo llama Sagan). Que en nomenclatura computacional se llama evaluación de individuos, y según esta se selecciona y reemplaza el conocimiento científico
Tercera y última actividad del algoritmo.
En la evolución biológica el primer filtro es que el individuo prospere y después que se adapte al medio hasta tal punto que pueda tener descendencia. 

En el caso de la ciencia prosperar es que una investigación llegue, al menos, a ser publicada (ha pasado la revisión por pares). Mientras que adaptarse al medio, en ciencia, significaria que ha habido consenso en la comunidad científica sobre la validez de un conocimiento incluido en una publicación. 

Pero ¿qué individuos/conocimientos pasarán por esta selección para generar una nueva generación y reemplazar a la anterior? Pues los que se obtienen de las dos secciones que hemos analizado:

  • X:= Conocimiento validado: Son los conocimientos que ya han pasado (al menos) por una anterior selección. Es decir, los que vienen del “Estado del conocimiento científico”.
  • Y:= Nuevas ideas: Son los nuevos conocimientos generados por cruce y/o por mutación. Es decir, los que aparecieron en “Generar nuevo conocimiento científico".
Respecto al primer grupo (el “Conocimiento validado”), la selección solo se para a evaluarlo cuando se contradice con algún otro conocimiento (normalmente de tipo “Nuevas ideas”). En ese caso los dos compiten por la supervivencia del más apto, es decir que sobrevive el que sea más contrastable del modo más riguroso.

Algunas veces ocurre que no hay suficientes pruebas para invalidar a uno de estos conocimientos que entran en contradicción, por lo que estos pasan a la siguiente generación esperando más conocimientos que corroboren o refuten a uno de los dos.

Cuando un “Conocimiento validado” no entra en contradicción con ningún otro conocimiento pasa a la siguiente generación mediante lo que (en nomenclatura computacional) se suele llamar reproducción, que es simplemente una copia sin modificación de los individuos de una generación a la siguiente.

En el caso de las “Nuevas ideas”, si se analizan en solitario (porque no se contradicen con ningún otro conocimiento) son evaluadas por sus propias caracteríticas, analizando sus evidencias, su utilidad y demás cualidades. Y si pasa este análisi crítico se convierte en un nuevo individuo de la población para la siguiente generación.


Por todo esto es de vital importancia que, en beneficio de esta evaluación, se publiquen los artículos científicos como es debido, para que permita realizar un análisi correcto de cómo se ha llegado a esas conclusiones o a esos hallazgos.

Si una investigación no se publica correctamente, no puede ser analizada críticamente, y por lo tanto nunca debe ser aceptada como conocimiento científico.

Y ¿qué significa publicar correctamente? Pues, desde la segunda mitad del siglo pasado, significa publicar en revistas que tienen implantado un sistema de revisión entre iguales, lo que obliga a cumplir unos ciertos requisitos de calidad y donde se exige un formato muy claro. Por ejemplo (aunque según el ámbito científico esto puede variar), son necesarios los siguientes apartados [13]

  • Metodología y resultados: Donde se describe el trabajo realizado, lo que se midió y todos los datos obtenidos. Es aquí donde se puede evaluar la corrección de la investigación.
  • Conclusiones: Donde los autores dan sus impresiones y comparan sus hallazgos con los de otros estudios y deciden si coinciden con estos o con una teoría dada. Y aquí se puede comprobar si esas conclusiones son compatibles con lo que se puede evaluar en "Metodología y resultados".

Mejorar toda esta selección y reemplazo de conocimientos equivale a mejorar la ciencia.
 

Cuando en el renacimiento se dieron cuenta de la efectividad con que la experimentación y la observación empírica daban evidencia a las hipótesis (o se la negaban), este filtro mejoró la ciencia.

Cuando se introdujo el sistema de revisión por iguales, por lo que se filtró y se mejoró la calidad y la claridad con que llegaban los nuevos conocimientos a los demás investigadores; este filtro mejoró la ciencia (hay otras propuestas para mejorar este sistema [14]; si realmente lo son, eso puede mejorar la ciencia).



Y finalizo este post teniendo en mente algunas de las palabras de Charles Darwin [15] pues, al igual que la vida ha pasado de un origen simple a innumerables formas bellísimas y llenas de maravillas (pero, sobre todo, viables); las teorías científicas siguen el mismo camino de grandeza, evolucionando hacia la dirección de la luz de las certezas, que encajan cada vez más con la realidad, convirtiendo a esta, cada vez, en un lugar menos oscuro para la humanidad.

Referencias

[1] Wikipedia. Enciclopedia libre. Bernardo de Chartres. Disponible en: https://es.wikipedia.org/wiki/Bernardo_de_Chartres 

[2] Carl Sagan, "The Burden of Skepticism", conferencia pronunciada en Pasadena, 1987. Conocí esta cita por un tuit de José Luis Moreno (@jlmgarvayo), ¡gracias por compartir esta imagen!

[3] Isaac Newton también mencionó estos hombros de gigantes en una carta enviada a Robert Hooke donde decía: "Si he logrado ver más lejos, ha sido porque he subido a hombros de gigantes". Wikiquote. Isaac Newton. Disponible en: https://es.wikiquote.org/wiki/Isaac_Newton

[4] Un ejemplo destacado lo encontramos en Karl Popper que en La lógica de la investigación científica dice: "Elegimos la teoría que se mantiene mejor en la competición con las demás teorías, la que por selección natural muestra ser más apta para sobrevivir; y ésta será la que no solamente haya resistido las contrastaciones más exigentes, sino que sea, asimismo, contrastable del modo más riguroso". Y más tarde, en Búsqueda sin término, acaba por certificar el parecido: "Si la concepción de la teoría darwinista como lógica situacional fuese aceptable, entonces podríamos explicar la extraña similitud entre mi teoría del aumento del conocimiento y el darwinismo: los dos serían casos de lógica situacional".
Por otro lado Michael Bradie ha llamado a este enfoque 'programa de la evolución de las teorías'; y Michael Ruse lo denomina 'enfoque spenceriano' (cf. Bradie 1986 y Ruse 1990). Otros representantes conocidos de esta interpretación son Donald Campbell, Konrad Lorenz, Stephen Toulmin, Nicholas Rescher y David Hull.
Después están los que no están de acuerdo con esta analogía sobre el funcionamiento de la ciencia, como por ejemplo Mario Bunge, que en su Diccionario de filosofía dice en su explicación sobre "Epistemología evolutiva": "El intento de comprender la historia del conocimiento en términos evolutivos. Esta historia sería un procesos de ensayo y error, por el cual lo “no apto” (falso) se elimina. La analogía biológica es errónea porque las hipótesis científicas y tecnológicas, lejos de presentarse a ciegas y aleatoriamente como las mutaciones genéticas, se crean a la luz de un conocimiento del trasfondo. Además, las hipótesis alternativas, lejos de ser equivalentes, son desigualmente plausibles. Tampoco la sociedad de la época las recibe del mismo modo. Por ejemplo, los psicólogos y los filósofos -por no mencionar a los teólogos- se resisten todavía a aceptar la concepción biológica de lo mental. Resumiendo, la epistemología evolutiva no parece ser capaz de evolucionar". En el post comento que las mutaciones tampoco son puramente aleatorias y que los resultados científicos aparecen de forma más parecida a la aleatoriedad que a una búsqueda determinista.

[5] Algoritmos Evolutivos y Algoritmos Genéticos. Alfonso Mateos Andaluz. Disponible en:  http://www.it.uc3m.es/~jvillena/irc/practicas/estudios/aeag

[6] Genetic Algorithms. John H. Holland. Disponible en: http://www2.econ.iastate.edu/tesfatsi/holland.gaintro.htm

[7] Wikipedia. Enciclopedia libre. John Henry Holland. Disponible en: https://en.wikipedia.org/wiki/John_Henry_Holland

[8] Wikipedia. Enciclopedia libre. Algoritmo determinista. Disponible en: https://es.wikipedia.org/wiki/Algoritmo_determinista

[9] Algoritmos Genéticos. Disponible en:
http://html.rincondelvago.com/algoritmos-geneticos.html 

[10] Wikipedia. Enciclopedia libre. Algoritmo genético. Aplicaciones. Disponible en: https://es.wikipedia.org/wiki/Algoritmo_gen%C3%A9tico#Aplicaciones

[11] Michaelson JJ, Shi Y, Gujral M, Zheng H, Malhotra D, Jin X, Jian M, Liu G, Greer D, Bhandari A, Wu W, Corominas R, Peoples A, Koren A, Gore A, Kang S, Lin GN, Estabillo J, Gadomski T, Singh B, Zhang K, Akshoomoff N, Corsello C, McCarroll S, Iakoucheva LM, Li Y, Wang J, Sebat J. (2012) Whole-genome sequencing in autism identifies hot spots for de novo germline mutation. Cell 151(7): 1431-1442. Disponible en: http://www.cell.com/abstract/S0092-8674(12)01404-3  

[12] El ‘corrector ortográfico del ADN’ muestra que no todos nuestros genes tienen la misma probabilidad de mutar y causar enfermedad. Disponible en: http://www.crg.eu/sites/default/files/adjuntos_news/150223_PR_Nature_DNAmismatchrepair_FINAL_ESP.pdf

[13] Ben Goldacre (2008). Mala ciencia. Barcelona: Ed. Planeta. ISBN 978-8408003779, pág. 243.

[14] Atención Primaria. La revisión por pares en las revistas científicas. Disponible en:
http://www.elsevier.es/es-revista-atencion-primaria-27-articulo-la-revision-pares-las-revistas-cientificas-11000100


[15] Las palabras de Charles Darwin, a las que hago referencia, son las siguientes (que corresponden al último párrafo de su obra "Origen de las especies" publicado en 1877 y traducido por Enrique Godínez de la 6.ª edición inglesa, Madrid):
"Hay grandeza en esta opinión de que la vida, con sus diversas facultades, fue infundida en su origen por el Creador en unas pocas o en una sola; y que mientras este planeta, según la determinada ley de la gravedad, ha seguido recorriendo su órbita, innumerables formas bellísimas y llenas de maravillas se han desenvuelto de un origen tan simple, y siguen siempre desenvolviéndose".