Lenguajes de programación científico para analizar interacciones entre moléculas

Kevin Ivan Flandes Peña1, Abraham Vidal Limón2*.

1Instituto Tecnológico Superior de Xalapa

2 Red de Estudios Moleculares Avanzados, INECOL A.C.

abraham.vidal@inecol.mx

 

Resumen

Lenguajes de programación como Python permiten a los científicos generar herramientas de análisis para conocer las interacciones entre diferentes moléculas, como fármacos, plaguicidas y hormonas vegetales.

 

Palabras clave:

Diseño molecular; interacciones intermoleculares; Python.

 

¿Cómo nos ayudan las computadoras en la investigación?

Durante la historia de la ciencia y la tecnología se han desarrollado múltiples herramientas que facilitan y mejoran las técnicas con las cuales se recaba el conocimiento. Pero de entre todas estas herramientas, posiblemente una de las que mayor importancia e impacto tiene en la vida de las personas es la computadora. Estos instrumentos convierten el lenguaje binario de unos y ceros en respuestas como operaciones matemáticas, escritos e interpretaciones gráficas que nos ayudan desde diseñar una película, escribir un libro y hacer cálculos. El desarrollo del cómputo ha crecido tanto, que hoy en día la supercomputadora más rápida del mundo es la Frontier, construida en 2022 con un presupuesto aproximado de $600 millones de dólares. Esta máquina es capaz de realizar al menos trillones de operaciones por segundo (1 x 1018 cálculos por segundo). ¿Puedes imaginar ese número? Te reto a que escribas 1 trillón, es un 1 seguido de 18 ceros, y piensa que esa es la velocidad de ese dispositivo.

Sin embargo, dentro de todas las operaciones que puede realizar esta supercomputadora, encontramos el diseño molecular asistido por computadora, el cual consiste en la búsqueda de compuestos ligantes que presenten gran afinada e interacciones fuertes entre sus átomos con otra molécula de interés. Un ejemplo de estas interacciones son las interacciones entre los fármacos y sus blancos moleculares en el cuerpo.

Un ejemplo de esto es el juego de clasificación de formas, donde existen sitios específicos para cada una de las figuras. Centrémonos en el triángulo rojo en la esquina inferior derecha de la imagen, éste debe depositarse en el orificio de la tapa superior (figura 1). Por lo tanto, se busca la mejor interacción o el mejor sitio donde entre otra molécula más pequeña. En el diseño molecular todos estos arreglos o modificaciones en las estructuras de las moléculas producen cambios a nivel atómico. Estos cambios pueden ser tan importantes como el que una nueva molécula de un fármaco sea más eficiente o produzca menos reacciones secundarias. Actualmente la manera de diseñar esas moléculas inicia con el supercómputo y diversos lenguajes de programación. Por ejemplo, los lenguajes C++, Tkl/Tcl y Python.

Figura 1. Juego infantil de colocación de piezas. El supercómputo nos permite analizar patrones similares de interacción, pero a nivel de átomos. Créditos. Kevin I. Flandes Peña.

Python es un lenguaje de programación que logra establecer una comunicación entre la computadora y el usuario mediante una sintaxis sencilla para dar instrucciones. Se alimenta de muchas librerías que provienen de la iniciativa académica, de tal manera que los estudiantes y profesores pueden facilitar la información sus análisis para que la comunidad científica alimente su investigación. Por ejemplo, para diseño molecular y descripción de las interacciones atómicas, encontramos librerías como ProLIF (del inglés Protein-Ligand Interaction Fingerprints) la cual nos permite generar representaciones gráficas de las interacciones que existen entre los átomos, ya sea que se trate de proteínas, productos naturales, fármacos, DNA o RNA (Figura 2).

El uso de este tipo de lenguajes de programación permite calcular todas las interacciones entre los átomos de las moléculas, de manera que se optimiza el tiempo invertido en la investigación, a la par de que los estudiantes se forman en áreas tecnológicas emergentes como ciencia de datos, química computacional y supercómputo. Recordemos que uno de los objetivos de los centros públicos de investigación es la de formar recursos humanos especializados, con la capacidad de diseñar estrategias para contender los problemas nacionales que existen en nuestra sociedad.  En el Instituto de Ecología, desde la Red de Estudios Moleculares Avanzados (REMAV), realizamos estudios de química computacional con herramientas de programación científica las cuales son de acceso gratuito y permiten contar con análisis robustos para descifrar las interacciones entre moléculas importantísimas como las hormonas vegetales, los plaguicidas y los fármacos provenientes de productos naturales.

Figura 2. Uso de códigos en lenguaje Python para describir las interacciones entre los átomos presentes en moléculas biológicas. Créditos Abraham M. Vidal Limón

Para saber más:

  1. Applications for Python. (s. f.). Python.org. https://www.python.org/about/apps/
  2. Bouysset, C., Fiorucci, S. ProLIF: a library to encode molecular interactions as fingerprints.Journal of Chemical Information and Modeling. 13, 72 (2021). https://doi.org/10.1186/s13321-021-00548-6
  3. Vidal Limón, A. Diseño de moléculas asistidos por computadoras. http://www.inecol.mx/inecol/index.php/es/component/content/article/17-ciencia-hoy/1796-diseno-de-moleculas-asistidos-por-computadoras

 

Pie de figuras.

Figura 1. Juego infantil de colocación de piezas. El supercómputo nos permite analizar patrones similares de interacción, pero a nivel de átomos. Créditos. Kevin I. Flandes Peña.

Figura 2. Uso de códigos en lenguaje Python para describir las interacciones entre los átomos presentes en moléculas biológicas. Créditos Abraham M. Vidal Limón.

Slider: Créditos Abraham M. Vidal Limón y Kevin I. Flandes Peña