Python para Ciencias de la Tierra

Capítulo 0: Python en las Ciencias de la Tierra

Damian
4 min readFeb 17, 2022

--

Índice del curso
<< Prefacio

Desde el inicio de la exploración y explotación minera, las Ciencias de la Tierra han estado relacionadas con el trabajo observacional y experimental tanto en campo como en gabinete, con muy poca intervención computacional. Sin embargo, no pasó mucho desde la invención de la computadora para que estas ciencias se hayan involucrado en esa tecnología. Algunas áreas como el procesamiento de datos geofísicos o la caracterización de yacimientos han estado involucradas con la programación desde hace décadas. Es de esperarse que se sumen a la oleada de eventos tecnológicos pertenecientes a la llamada Industria 4.0.

La Industria 4.0

En los últimos siglos, el mundo ha sido testigo de tres revoluciones industriales:

  • En la segunda mitad del siglo XVIII la invención de la máquina de vapor permitió la producción en masa en industrias donde sólo las fuerzas animal y humana producían. Y permitió una mayor conectividad entre ciudades gracias al ferrocarril, el cual funcionaba con vapor.
  • En la segunda mitad del siglo XIX la incorporación del petróleo como nueva fuente de energía y la invención de la electricidad, permitieron acelerar y automatizar procesos de fabricación. La conectividad aumento gracias al telégrafo y al teléfono.
  • A mediados del siglo XX, la invención de las computadoras dio origen a una revolución digital. La digitalización de las fábricas comenzó con la introducción de Controladores Lógicos Programables (PLC) en máquinas para automatizar la producción. La digitalización llegó a las masas gracias a la computadora personal.

Y actualmente vivimos la Cuarta Revolución Industrial, también llamada como Industria 4.0. Se caracteriza por el extraordinario crecimiento computacional para almacenar y procesar datos con el fin de automatizar, predecir, analizar, visualizar y generar bienes de forma más eficiente. Esta industria es impulsada por tecnologías como:

  • Internet de las Cosas (IoT). Se encarga de conectar, controlar y automatizar dispositivos electrónicos entre sí y un único mando. Esto es el componente principal de las fábricas inteligentes.
  • Big Data y Cómputo en la Nube. Permiten almacenar y manipular grandes cantidades de datos distribuidos en centros tecnológicos especializados para estas tareas. Esto reduce costos computacionales en las empresas.
  • Inteligencia Artificial. Permite aprovechar al máximo la cantidad de información que se genera en todas las áreas de un negocio. Una de sus ramas, el Aprendizaje Automático, más conocido como Machine Learning, mediante datos recopilados ayuda a las empresas con pronósticos para la toma de decisiones preventivas o correctivas, y a un costo relativamente menor.

Todas las áreas de conocimiento eventualmente estarán involucradas en estas tecnologías. Las ciencias naturales han sido las primeras. Y las Ciencias de la Tierra no son la excepción, por lo que es importante adquirir habilidades de programación para adentrarse a estas nuevas tecnologías.

Tendencias sobre Python

Si bien es cierto que hay una enorme y reciente popularidad de Python a nivel global (Figura I), se pueden encontrar trabajos de hace veinte años que comentaban las ventajas que python ofrecía a las Ciencias de la Tierra sobre otros lenguajes populares en ese momento dentro de la comunidad científica, como Fortran o C++, resaltando su simplicidad. Sáenz J., et al. (2002) indican como ventaja el permitir al programador enfocarse en el algoritmo en sí, evitando distraerse en los detalles de sintaxis. Pero tuvieron que pasar varios años para que python dé más de qué hablar.

Una década después, Wei-Bing Lin (2012) pronosticaba la importancia que tomaría Python en las Ciencias de la Tierra, incluso antes de la fama que gozaría en la segunda mitad de los 2010s. En sus palabras, Python permite a los usuarios hacer más y mejor ciencia por, entre otras razones, tener la bondad de ser ‘un pseudocódigo ejecutable’, además de ser un lenguaje ‘todo en uno’. Tan sólo pensemos cuando había que sincronizar Fortran con GNUplot para poder crear las gráficas de los datos generados en texto plano. Python ahora ofrece hacer todo ese flujo de trabajo sin cambiar de ventana.

Figura I Gráfica de la popularidad de lenguajes comúnmente utilizados en programación científica. En los últimos años python ha sobresalido de los demás lenguajes. La gráfica está en escala logarítmica. Fuente: https://pypl.github.io/PYPL.html

Ahora, otros 10 años después, universidades como la de Melbourne, en Australia, o la de Colorado en Estados Unidos, ofrecen programas de certificación para aprender python con un enfoque geocientífico. ¿La razón? Porque gracias al uso de tecnologías relacionadas con la programación, se han obtenido buenos resultados en la exploración minera y petrolera.

Todo este contexto ha llevado a la industria a requerir profesionales geólogos y geofísicos con habilidades de Análisis y Ciencia de Datos, áreas en las que técnicas principalmente de Aprendizaje Automático son utilizadas para dar solución a problemas. Así, aumenta la importancia de saber por ejemplo sobre el reconocimiento automático de patrones en imágenes satelitales como en imágenes sísmicas. Técnicas que tienen décadas de utilizarse en estas áreas, pero hoy más que nunca se están implementando. Y la mejor forma de involucrarse en ello es empezar a programar en el lenguaje más utilizado ahora para estos fines: Python.

Siguiente sesión
>>
Capítulo 1: Descubriendo Python

Índice del curso

--

--

Damian

Anything I want and is related to data. Learning to become a Data Professional.