27 de octubre de 2023

Historia mínima del Cosmos - Manuel Toharia (2015)


Título: Historia mínima del Cosmos
Autor: Manuel Toharia
Año: 2015
Páginas: 300
Editorial: Turner
ISBN: 9788416354023
En esta obra, el físico, divulgador y otrora 'hombre del tiempo' Manuel Toharia realiza un recorrido breve, pero ilustrativo, de cómo ha sido la evolución del universo y del ser humano como especie inteligente dentro de él. Como reza el propio subtítulo del libro: “La historia de todo lo que existe, desde el Big Bang a hoy, y cómo lo hemos sabido”.

Y es que en efecto, a lo largo de las cuatro secciones en que se divide, consigue ponernos en la piel de aquellos primeros seres humanos que, mirando a las estrellas se preguntaron que qué narices era todo aquello; recorriendo el paso del tiempo desde su mismo origen hasta el día de hoy, en que hemos llegado a aventurar lo que ocurrió en aquel lejano principio, y abrimos una ventana de posibilidades a lo que podrá venir en el futuro.

Mi recomendación ya de antemano es la de que merece mucho la pena inmiscuirse en sus páginas, pero para aquellos que tengan la duda, o simplemente quieran saber con un poquito de detalle los diferentes puntos que se tratan, a continuación os hago un breve comentario del índice de temas del mismo:

Primera parte: cosmogonías

1. Mirar al cielo
2. Cosmogonías
3. Los primeros intentos
4. Grecia clásica
5. Oscurantismo medieval

En esta primera parte ya se nos plantea desde un principio la distinción entre cosmogonías y cosmología. Ambas pretenden explicar el origen del mundo, solo que mientras que las primeras se basan en mitos y leyendas que en muchas ocasiones recurren a entidades sobrenaturales para dar cuenta de sus explicaciones, la segunda tiene sus cimientos asentados en el conocimiento científico.

Y es que, si bien no lo consideraríamos ciencia con la perspectiva actual, en la antigua Grecia ya hubo pensadores que se salieron de esa tónica mitológica para la explicación, e intentaron dar una justificación a lo que veían mediante cosas tangibles, como los distintos elementos que de hecho podían palpar y las transformaciones que éstos sufrían.

Pero, y mal que nos pese, estos avances se vieron lastrados con la aparición de una nueva visión cosmogónica, o mejor dicho, teogónica. Con la institucionalización de las tres grandes religiones monoteístas y las iglesias monopolizadoras de todo lo que ocurría en el mundo terrenal (en particular, la Iglesia Católica), la versión oficial quedaba claramente marcada y acotada, y ojo con quien pretendiera salirse de ahí.

Segunda parte: nace la cosmología

  6. Cosmogonías y cosmología
  7. Copérnico
  8. La Iglesia contraataca
  9. Por fin, Galileo
10. Newton (y Kant)
11. La Enciclopedia

Decía que ojito con salirse del linde demarcado por la Iglesia Católica, ya que la historia nos ha mostrado más de una vez lo que puede suponer enfrentarse al dogma establecido por la ideología dominante. Es en esta tesitura donde personas como Copérnico, Bruno, Kepler y Galileo dieron a conocer sus estudios acerca de los cielos, y sus conclusiones que plantean que quizá no todo giraba en torno a la Tierra (ni en consecuencia en torno al ser humano), sino que por lo menos éramos nosotros los que rotábamos, como cualquier otro planeta de nuestro sistema, en torno al Sol.

Como decía, semejantes aseveraciones en aquel contexto no eran baladíes, y para muestra la reticencia de Copérnico a publicar, la cremación en vivo de Giordano Bruno o el arresto domiciliario de Galileo. Y sin embargo, la Tierra se movía y giraba como bien tuvo a explicar Newton (que se movía, porque los motivos de por qué lo hacía no eran hipótesis que el británico estuviese dispuesto a afrontar).

Lo que sí era claro, es que gracias a este periodo (en ocasiones mal llamado “Revolución Científica”) se dio un vuelco a la concepción que se tenía del mundo y del modo de acercarnos a su conocimiento.

Tercera parte: del Big Bang a hoy

12. Los tres primeros minutos del cosmos
13. Galaxias, estrellas… y el Sol

En esta tercera parte damos un salto desde esa sociedad que estaba empezando a abrir su mente al conocimiento (o más bien, acallando las imposiciones eclesiales) para ir a lo más lejos que nuestra mente ha alcanzado a llegar. Al mismísimo comienzo de todo, donde gracias a los avances en cosmología (detonados por la Teoría de la Relatividad de Einstein) hemos conseguido plantear una serie de conocimientos acerca del génesis de la propia materia que compone nuestra realidad, y de cómo ésta fue evolucionando hasta dar lugar a galaxias y estrellas, entre ellas nuestro Sol, que en cierto modo es la madre de todos nosotros.

Cuarta parte: la vida, la inteligencia, el futuro

14. La Tierra, desde hace 4500 millones de años
15. ¿Qué nos depara el futuro?

Aprendemos aquí que, una vez que la Tierra tuvo bien a ser una más entre los planetas que serán sus hermanos, la madre que es el Sol proporcionará la energía necesaria para que la vida pueda tener lugar en ella. Desde la formación de los primeros microorganismos hasta la evolución de las diferentes especies, siendo una de ellas la nuestra. Especie la nuestra un tanto particular, ya que tenemos ese matiz especial que venimos a llamar inteligencia, y que nos diferencia del resto de especies que pueblan el planeta. Si bien el resto de ellas están mejor capacitadas que nosotros para prácticamente todo, gracias a la inteligencia hemos sido capaces de suplir esas carencias y avanzar de una manera sorprendente, siendo incluso capaces de transformar el mundo en que vivimos hasta el punto de ponerlo en peligro (aunque lo que realmente está en peligro es nuestro destino, no el de la Tierra, cuya principal preocupación habría de ser la que determine el Sol en el momento en que “se le termine el combustible” y empiece el show estelar que ya hemos podido apreciar en otras estrellas).

En este punto, se centra Toharia (y a muy buen juicio) en valorar la repercusión que la inteligencia humana tiene para con el mundo y para con nosotros mismos como especie, donde hemos conseguido consolidarnos como la “especie dominante”. Lo que sigue es una cita textual del libro a dicho respecto, que me ha gustado especialmente.

“Sin duda, el desarrollo económico ha generado un despliegue impresionante de los conocimientos científicos y tecnológicos que ha acabado por repercutir positivamente sobre la salud de las poblaciones, incrementando la supervivencia de los recién nacidos y los niños, y disminuyendo la mortalidad general. Los seres humanos -todos, sin excepción, aunque los ricos muchísimos y los pobres muy poco- vivimos cada vez más. Y por tanto la población crece aún más. No es que hayamos comenzado a reproducirnos como conejos, sino que estamos dejando de morirnos como moscas”.

Esa capacidad que es la inteligencia puede verse tanto como una bendición como una maldición, ya que la cosas que nos ha permitido alcanzar, y todo lo que con ello hemos logrado, nos está abocando a un proceso que roza la irreversibilidad y que, si no mediamos en él, podría ser el causante de nuestra propia extinción.

De entre las posibles cosas que nos depara el futuro que se comentan al final del libro, es ésta la que a mi juicio es más importante. Lo podemos tener todo, inventar lo ininventable y conseguir lo inconseguible; pero si no miramos a nuestro alrededor y cuidamos el suelo en que vivimos, de poco nos servirán tales hazañas.


29 de septiembre de 2023

Alternative Math - David Maddox & Malcolm Morrison - [🎬 Cine y ciencia]

¿Existen realmente los quarks?. ¿Cómo hemos de interpretar la mecánica cuántica?. ¿Existe una correspondencia real entre los postulados de las teorías científicas y el mundo real que describen?.

Tanto desde la filosofía de la ciencia como entre los propios científicos existen debates y discusiones acerca de cómo entender la ciencia, y aunque algún día se llegue a un consenso sobre estos temas, siempre quedará algún fleco suelto o se abrirá alguna nueva línea de debate que le de vidilla al asunto.

Ahora bien, en lo que todos sí estaremos de acuerdo es en la exactitud de disciplinas como la lógica o las matemáticas, conocidas también como 'ciencias formales', ya que estudian elementos abstractos con sus lenguajes, aximoas y reglas de inferencia que luego podrán ser utilizados para generar debates como los comentados al principio. Estos objetos y la interrelación entre ellos estaría, en principio, libre de toda disputa en cuanto a su veracidad, porque nadie va a dudar ahora de que dos más dos sea igual a cuatro, ¿verdad?.

... ¿verdad?

En este corto, "Alternative Math", sus autores, David Maddox y Malcolm Morrison plantean una curiosa situación en torno a esta sencilla operación arimética (y de paso se abre otro punto de reflexión acerca de la potestad de los padres a entrometerse en el currículo educativo y en lo que se enseña o no a sus hijos):


Si quieres darle un poco al coco sobre las matemáticas y la idiosincracia de las mismas, te dejo este vídeo donde tres personas que saben mucho divagan acerca de cómo hemos llegado al conocimiento de las matemáticas.

6 de febrero de 2023

Serenade (Steve Miller Band) // Llamando a la Tierra (M Clan) - [🎵 Música y ciencia]

Explorar el universo, viajar a la estrellas, preguntarnos qué habrá ahí arriba. La astronomía ha fascinado al ser humano desde que tiene capacidad para asombrarse, y prueba de ello son la gran cantidad de mitos al respecto que existen, así como toda la ciencia que se generó en cuanto al estudio del cosmos en las civilizaciones antiguas, y lo que ha evolucionado la misma hasta nuestros días.
Hoy, ración doble de temas (la original y una versión) que nos cantan acerca del universo y los viajes de exploración a través del espacio.

 

🎵 Serenade
👥 Steve Miller Band
💿 Fly like an eagle (1976)

Did you see the lights
as they fell all around you?
Did you hear the music,
a serenade from the stars?
Wake up, wake up
Wake up and look around you
We're lost in space
and the time is our own
Whoah
Whoah
Ah 

Did you feel the wind
as it blew all around you?
Did you feel the love
that was in the air?
Wake up, wake up
Wake up and look around you
We're lost in space
and the time is our own
Whoah
Whoah
Ah

The Sun comes up
And it shines all around you
You're lost in space
And the Earth is your own
Whoah
Whoah
Whoah
Whoah


🎵 Llamando a la Tierra
👥 M Clan
💿 Usar y tirar (1999)

He visto una luz,
hace tiempo Venus se apagó.
He visto morir
una estrella en el cielo de Orión.
No hay señal,
no hay señal de vida humana y yo
perdido en el tiempo,
perdido en otra dimensión.
Oh, oh oh, oh ah

Soy el capitán,
de la nave tengo el control;
llamando a la Tierra
esperando contestación.
Soy un cow boy
del espacio azul eléctrico.
A dos mil millones de años luz
de mi casa estoy.
Oh, oh oh, oh ah

Quisiera volver,
no termina nunca esta misión.
Me acuerdo de ti
como un cuento de ciencia ficción.
No estoy tan mal,
juego al poker con mi ordenador.
Se pasan los días,
no hay noticias desde la estación
Oh, oh oh, oh ah



5 de diciembre de 2022

Conferencia "Arte y ciencia", de Carlos Briones - [Arte y ciencia]

Dentro del ciclo de conferencias de la Fundación Canal, el científico del CSIC y escritor Carlos Briones nos presenta esta maravilla de presentación en la que, gracias a su museo virtual, hace un repaso magnífico de cómo la historia del cosmos puede ser contada a través de la representación pictórica de los cuadros.

Desde el origen del universo en el Big Bang, pasando por la formación de los primeros núcleos a los primeros elementos consecuencia de las reacciones nucleares en las estrellas; de la formación de la Tierra a la aparición del agua y el origen de la vida en la misma; de las extinciones masivas y la aparición de los primates que acabaron evolucionando en el homo sapiens y de cómo éste, gracias al desarrollo del cerebro y la capacidad intelectual, ha sido capaz de entender y transformar el mundo. Y de la importancia de conocerlo lo mejor posible para poder cuidar de él y preservarlo.

En esencia, de cómo el arte y la ciencia van de la mano en el desarrollo del ser humano, sin olvidar el tercero en discordia de esta relación, las humanidades, de modo que en su conjunto constituyen los pilares de la cultura:

Σ(A + H + C)=Q

donde:

  • A: Arte
  • H: Humanidades
  • C: Ciencia
  • Q: Cultura

Esta conferencia me parece el prólogo perfecto para la serie de artículos que quiero desarrollar bajo el nombre de "Arte y Ciencia", para recalcar la necesidad de no identificarse a uno mismo únicamente de ciencias o de letras, sino de la cultura.

16 de noviembre de 2022

Metaheurística y algoritmos evolutivos. Breve introducción y el problema del viajante

Metaheurísticas. Dame soluciones aceptables y no te líes.

Muchos problemas a los que estamos acostumbrados se nos presentan con una ecuación o varias ecuaciones y ante las condiciones que configuran el problema nos disponemos a evaluar la expresión, realizar un par de ajustes o cálculos por aquí y por allá, y así poder obtener finalmente el resultado solicitado. Como por ejemplo en la ecuación de la posición de la partícula en el estudio cinemático del movimiento:

Sin embargo, la gran mayoría de problemas que se nos puedan presentar en la realidad del día a día tienen unos inconvenientes que hay que tener en cuenta

  • No son sencillos de modelar matemáticamente
  • Aún teniendo una expresión matemática que los modele (con mayor o menor fidelidad con la realidad), el requerimiento de potencia computacional para resolverlos es excesivamente elevado
  • Es posible, además, que el problema no tenga una solución (pero que aún así sea relevante encontrar la mejor aproximación posible a la solución)

Es decir, puede que hayamos conseguido sintetizar las necesidades de nuestro problema y haber planteado un conjunto de ecuaciones que lo modele, pero si el tiempo y energía necesarios para poder realizar los cálculos sobrepasa unos ciertos límites, el resultado pierde valor por muy preciso que sea.

Por ejemplo, pensemos en los sensores de posición que tiene un coche y que nos avisan con un pitido cuando estamos aparcando si nos aproximamos demasiado a un obstáculo. El programa que procesa la información que le aportan esos sensores realiza una serie de cálculos para determinar que en efecto un objeto se encuentra en las proximidades de la carrocería de nuestro coche, pero ¿hasta qué punto es necesario que dicho cálculo sea preciso y haga un mapeo exhaustivo de todo el detalle que captan las cámaras y determine exactamente todas las posiciones relativas de todos los elementos respecto al coche?. Recordemos que estos cálculos se realizan mientras aún estamos dando marcha atrás, y si los cálculos que han de activar el pitido que nos avisa tardan demasiado, en vez de escuchar el pitido, escucharemos el golpetazo contra el coche de detrás.

Lo que la mayoría de estos sistemas hacen es realizar una serie de cálculos que, sin buscar la solución exacta del problema, nos aporten una solución lo suficientemente buena en un tiempo de respuesta rápido.

Hablaremos por lo tanto de técnicas metaheurísticas cuando nos refiramos a procesos que apliquen este tipo de funcionamiento lógico a la hora de buscar soluciones. En las que, bien por la complejidad de resolución del problema o por los recursos necesarios para hacerlo, es preferible desarrollar un modelo aproximado y de poco consumo que ofrezca resultados aceptables.

Y recordemos, hay ocasiones en que dicha solución exacta no existe.

El siguiente gráfico nos muestra una recopilación de diferentes técnicas metaheurísticas que se emplean para la resolución de problemas complejos:

https://web.archive.org/web/20170211142120if_/http://nojhan.free.fr/metah/images/metaheuristics_classification.jpeg

Algoritmos evolutivos. Una receta darwiniana para buscar soluciones.

Como vemos en la imagen de arriba, existen muchos y distintos tipos de técnicas para buscar soluciones buenas y aproximadas para problemas de dificil solución. Una de estas técnicas son los algoritmos evolutivos. Vamos por partes:

  • Un algoritmo es un proceso que repite una serie de pasos a lo largo de varias iteraciones.
    • Un ejemplo cotidiano de algoritmo podría ser una receta de cocina, donde tenemos una serie de pasos a seguir para poder elaborar nuestra comida (cortar en juliana la verdura, sofreir en la sartén, añadir el caldo y cocer removiendo cada 5 minutos...).
    • Otro ejemplo de algoritmo sería el proceso de división que nos enseñan de pequeños en el colegio, y en el que mediante pasos iterativos vamos construyendo el "árbol" debajo del dividendo y que nos permite obtener el cociente de la división y el valor del posible resto.

Vale, está claro, ¿pero qué pinta Darwin aquí? 

  • La teoría de la evolución nos explica cómo los diferentes entes biológicos que componen (o han formado parte) del mundo han ido evolucionando, cambiando, a lo largo de los años hasta tener la forma que conocemos hoy día.
  • Por otra parte, la selección natural es el proceso evolutivo que nos explica que aquellos individuos que tenían mejores características para adaptarse al medio en que vivían eran los que más posibilidades tenían de sobrevivir y, por lo tanto, de reproducirse y perpetuar sus características dentro de la especie.

Entonces, ¿qué es un algoritmo evolutivo?

Un algoritmo evolutivo es aquel que se basa en los principios de la evolución y la selección natural para, a lo largo de las distintas iteraciones, optimizar sus resultados generando soluciones de una iteración a la siguiente utilizando aquellos valores que mejores soluciones han aportado hasta el momento, simulando el comportamiento de las especies naturales en los procesos biológicos de evolución.

Quizá la mejor manera de ilustrar el funcionamiento básico de los algoritmos evolutivos sea con un ejemplo, el del problema del viajante.

En el problema del viajante (TSP - Travelling Salesman Problem en inglés), nos encontramos ante el problema de secuenciación que ha de resolver un comercial que tiene que recorrer una serie de ciudades sin repetir el paso por ninguna de ellas, regresando en su último viaje a la ciudad de origen e invirtiendo el menor tiempo posible en su recorrido.

Supongamos un caso sencillo, con tres ciudades A, B, C para las que tenemos los siguientes tiempos necesarios para ir de una a otra:

  • A → B = 5
  • A → C = 1
  • B → A = 5
  • B → C = 4
  • C → A = 7
  • C → B = 8
Y los posibles resultados que nos podríamos encontrar serían:
  • A → B → C → A = 5 + 4 + 7 = 16
  • A  C  B  A = 1 + 8 + 5 = 14
  • B  A  C  B = 5 + 1 + 8 = 14
  • B → C  A  B = 4 + 7 + 5 = 16
  • C  A  B  C = 7 + 5 + 4 = 16
  • C  B  A  C = 8 + 5 + 1 = 14

Para los datos de este ejemplo, vemos que hay tres opciones que le suponen un menor consumo de tiempo, por lo que en función de tener que salir desde A, B o C, nuestro viajante ya podría saber cuál sería la ruta más óptima en cada caso.

Supongo que te habrás percatado, pero a medida que aumentemos el número de ciudades las combinaciones posibles aumentan considerablemente. En particular, para este caso el total de posibles recorridos corresponde con el factorial del número de ciudades.

  • 1! = 1
  • 2! = 2
  • 3! = 6
  • 4! = 24
  • 5! = 120
  • 6! = 720
  • 7! = 5040
  • 8! = 40320
  • 9! = 362880
  • 10! = 3628800

Es decir, si tuviéramos que evaluar el posible recorrido óptimo para 10 ciudades tendríamos que evaluar 3.6 millones de posibilidades para luego elegir la mejor, imagínate cuántas harían falta para 20, 30 o 100 ciudades (de hecho, no lo imagines, calcula el factorial) .

Es aquí donde los algoritmos evolutivos vienen al rescate y nos permitirán obtener una solución buena (o incluso la mejor) ahorrándonos tiempo de cálculo y quebraderos de cabeza. Dentro de las diferentes técnicas que abarcan los algoritmos evolutivos, vamos a plantear de manera esquemática cómo afrontar este problema haciendo uso de un algoritmo genético.

Estos algoritmos se basan en los conceptos de genética y los mecanismos evolutivos y de selección natural para ir mejorando las soluciones encontradas a lo largo de las diferentes iteraciones que se realizan. Esto quiere decir que no es necesario evaluar todos los posibles resultados para luego elegir el mejor. Por el contrario, generaremos un número reducido de posibles resultados de manera aleatoria, y en cada iteración elegiremos los que mejores resultados nos han dado para combinarlos entre sí y generar una nueva tanda de posibles soluciones, confiando en que al heredar las propiedades de las mejores soluciones previas, los nuevos resultados generados nos den un resultado mejor, de modo que iteración tras iteración nos acerquemos a una solución al problema lo más óptima posible.

Las soluciones que se evalúan en cada paso del algoritmo se asemejan a genes o cromosomas. Por ejemplo, para un problema con 7 ciudades (A, B, C, D, E, F, G), algunas posibles soluciones serían las siguientes, donde la secuencia de elementos nos indica el orden en el que se visitará cada ciudad:

  • (A, B, C, D, E, F, G)
  • (A, C, B, D, E, F, G)
  • (C, D, E, F, G, A, B)
  • (F, G, A, C, D, E, B)
  • ...
Por lo tanto el primer paso de nuestro algoritmo es construir una población inicial de individuos (soluciones) incial desarrolladas normalmente de forma aleatoria pero asegurándonos de que el resultado sea una solución válida (en este caso, que no pase 2 veces por la misma ciudad y que las recorra todas)

Una vez lo tenemos, comienza el proceso evolutivo, y a lo largo de las diversas generaciones de nuestra población (las iteraciones del algoritmo) iremos evolucionando nuestro conjunto de soluciones de la siguiente manera:

  1. Seleccionar las mejores soluciones de la generación anterior. Este proceso puede abordarse de varias maneras en f unción de la configuración del problema y del algoritmo en cuestión.
  2. Para el conjunto de individuos escogidos en el punto anterior, se realizarán una serie de combinaciones de cruce entre dichos "padres" que darán lugar a los "hijos" que compartirán la información genética de ambos progenitores. Es posible que alguna de estas soluciones generadas experimente algún tipo de mutación que varíe ligeramente el resultado obtenido tras el cruce.
    • Cruce (crossover): se realiza una mezcla de los cromosomas de las dos soluciones padres que generarán una o dos soluciones hijo. Aunque existen distintos tipos de formalismos de cruce, cada problema presenta unas características específicas que han de tenerse en cuenta para evitar generar soluciones no factibles (aunque podrían permitirse, pero nos haría perder tiempo al generar soluciones malas)
    • Mutación: se modifica al hazar algún componente de alguna de las soluciones generadas (por ejemplo, intercambiar el orden de paso por las ciudades A y G). Los beneficios de realizar mutaciones (en baja proporción) es que permite amplicar las posibles soluciones que aún no se han visitado, ya que según se haya diseñado el proceso de cruce cabe la posibilidad de "quedarnos encerrados" en el mismo nicho del espacio de búsqueda.
  3. Actualizar la población actual para generar la nueva lista de "padres" para la siguiente generación. Aquí pueden plantearse varias opciones:
    • Erradicar totalmente la generación previa y únicamente quedarnos con la nueva generación de soluciones (asumiendo el riesgo de perder buenas soluciones si las soluciones generadas no son mejores que las anteriores)
    • Mezclar en la población resultante a los mejores individuos de la población de padres y la población de hijos (nos permite mantener las mejores soluciones, pero con el riesgo de perder diversidad y que podamos quedarnos atascados en una solución óptima a nivel local)
    • Mantener una lista de "las mejores soluciones" paralela a la población de de la generación actual, lo que nos permite no perder las mejores soluciones encontradas hasta el momento
  4. Evaluar nuestras soluciones para ver cuáles son las mejores.
Tras el número de iteraciones que se desee realizar, este proceso irá evolucionando a nuestra solución hasta darnos con un conjunto de soluciones resultados que en ocasiones serán los resultados óptimos, y en su defecto serán muy buenas aproximaciones a la mejor solución.

El concepto de algoritmo genético fue introducido por John Holland en 1975 en su libro Complex Adaptive Systems. Adaptation in Natural and Artificial Systems An Introductory Analysis with Applications to Biology, Control, and Artificial Intelligence

La siguiente imagen nos muestra el pseudo código de un algoritmo genético tal y como Holland lo planteó y que se asemeja el proceso que hemos descrito más arriba.


Sé que puede que para algunos este contenido sea un poco complicado, y que a otros les haya sabido a poco. En futuras entradas hablaré más en detalle de algún ejemplo de algoritmo y sus elementos aplicados a la resolución de problemas concretos que espero sean de interés.


Referencias

Si quieres ver un paper real donde se afronta la solución del problema del viajante:

Para saber más sobre técnicas y procesos de optimización, en el siguiente enlace puedes encontrar un magnífico (y largo) libro escrito por Thomas Weise: