DESCUBRIENDO ECUACIONES

DE MANERA AUTOMÁTICA UTILIZANDO INTELIGENCIA ARTIFICIAL

Fecha: 30 de Junio de 2022

Edición: Junio 2022 No. 31

Fernando Arce · | Hacemos ciencia para ti | Visto 368 veces

FERNANDO ARCE

La mayoría de las ecuaciones matemáticas, físicas y químicas que conocemos han sido elaboradas por seres humanos con base en su experiencia, intuición y conocimiento del tema. Sin embargo, generar estas proposiciones usualmente requiere años de arduo trabajo debido a la increíble complejidad que el proceso demanda.

Por ejemplo, tenemos el caso de Johannes Kepler quien estudió las observaciones astronómicas descritas por Tyco Brahe. Kepler, tras años de investigación, observación y muchos intentos fallidos tratando de adaptar los datos, inició una revolución científica al descubrir un modelo matemático que describe el movimiento de los planetas alrededor del sol. Con el crecimiento constante de las bases de datos, la creación de sistemas de cómputo cada vez más potentes, y nuevas técnicas de inteligencia artificial, se ha tratado de automatizar el trabajo que llevó a cabo Johannes Kepler para encontrar un modelo matemático que describa la información observada.

La tarea de encontrar una ecuación, fórmula o modelo de manera automática a partir de los datos recolectados es el objetivo principal de regresión simbólica. Específicamente hablando, regresión simbólica intenta encontrar una función f que relaciona las variables de entrada {x_ 1 ,⋯,x_ ⁿ } con su correspondiente etiqueta y=- f(x_ 1 ,⋯,x_ n ). Por su parte, regresión simbólica ha sido abordada con una gran variedad de técnicas; por ejemplo, programación genética 1–3 y regresión dispersa 4–6 , siendo programación genética el método más gratificante 3,7 .

En los métodos de regresión tradicionales los algoritmos optimizan los parámetros para una arquitectura de entrada-salida específica. Por ejemplo regresión lineal, la cual supone una relación lineal entre los patrones de entrada y las etiquetas. Otro ejemplo podría ser una red neuronal artificial, la cual es un método no lineal que presenta conexiones entre sus capas de entrada, ocultas y de salida con diferentes funciones de activación (por ejemplo, funciones ReLU y softmax). De manera contrataría, en regresión simbólica no hay una suposición a priori sobre la expresión simbólica requerida. En su lugar, los usuarios especifican un conjunto de variables y expresiones matemáticas, por ejemplo, variables independientes y dependientes, operadores matemáticos, constantes, funciones analíticas. Enseguida, el algoritmo explora el espacio de búsqueda compuesto por estas expresiones primitivas para descubrir la solución más adecuada.

A su vez, la programación genética fue introducida originalmente por Koza 8 en 1994 como una aplicación particular de los algoritmos genéticos 9 . La idea principal es desarrollar una población inicial de individuos, generados de manera aleatoria, siguiendo la teoría de la evolución de Darwin para descubrir la solución o el individuo más apto después de un número determinado de generaciones.

Mientras que la programación genética usa cromosomas con estructuras de árboles, los algoritmos genéticos emplean dígitos binarios. Cada árbol constituye una posible solución para una tarea específica, y la forma en que se generan, evolucionan y seleccionan es exclusiva de programación genética, ya que imita la forma en que la naturaleza lleva a cabo el proceso de evolución. La Figura 1 muestra el procedimiento por el cual se puede llegar a una solución usando programación genética para regresión simbólica.


En colaboración con investigadores del Centro de Investigaciones en Óptica (CIO), el Instituto Politécnico Nacional (IPN) y el Centro de Investigación y de estudios Avanzados (CINVESTAV) hemos utilizado estas técnicas de inteligencia artificial y desarrollado otras nuevas basadas en descenso de gradiente para:

  • Encontrar nuevas ecuaciones para calcular el número de Euler en imágenes.
  • Encontrar nuevas ecuaciones más sencillas para calcular el área, perímetro y perímetro de contacto en imágenes, disminuyendo el costo computacional.
  • Encontrar de manera automática la ecuación para calcular las constantes cinéticas de unión de tres proteínas modelo, H-IgG, PSA y Anti-RBD a partir de variables medidas.
  • Para hacer modelos biomédicos predictivos relacionados con COVID-19, en colaboración con especialistas del IMSS.

Referencias
1. Dominic P, Leahy D, Willis M. GPTIPS:An Open Source Genetic Programming Toolbox For Multigene Symbolic Regression. Lect Notes Eng Comput Sci. 2010;2180.
2. Dubcáková R. Eureqa: software review. Genet Program Evolvable Mach. 2010;12:173-178.
3. Wang Y, Wagner N, Rondinelli JM. Symbolic regression in materials science.MRS Commun. 2019;9(3):793–805. doi:10.1557/mrc.2019.85
4. McConaghy T. FFX: Fast, Scalable, Deterministic Symbolic Regression Technology. In: Riolo R, Vladislavleva E, Moore JH, eds. Genetic Programming Theory and Practice IX. Springer New York; 2011:235-260. doi:10.1007/978-1-4614-1770-5_13
5. Brunton SL, Proctor JL, Kutz JN. Discovering governing equations from data by sparse identification of nonlinear dynamical systems. Proc Natl Acad Sci. 2016;113(15):3932-3937. doi:10.1073/pnas.1517384113
6. Quade M, Abel M, Nathan Kutz J, Brunton SL. Sparse identification of nonlinear dynamics for rapid model recovery. Chaos An Interdiscip J Nonlinear Sci. 2018;28(6):63116. doi:10.1063/1.5027470
7. Udrescu S-M, Tegmark M. AI Feynman: A physics-inspired method for symbolic regression. Sci Adv. 2020;6(16):eaay2631. doi:10.1126/sciadv.aay2631
8. Koza J. Genetic programming as a means for programming computers by natural selection. Stat Comput. 1994;4(2). doi:10.1007/bf00175355
9. L. S, L. FG. Real-Time Thresholding with Euler Numbers. Pattern Recogn Lett. 2003;24(9–10):1533-1544. doi:10.1016/S0167-8655(02)00392-6