Los modelos a microescala forman una amplia clase de modelos computacionales que simulan detalles a escala fina, en contraste con los modelos a macroescala , que amalgaman detalles en categorías seleccionadas. [2] [3] Los modelos a microescala y macroescala se pueden usar juntos para comprender diferentes aspectos del mismo problema.
Aplicaciones
Los modelos de macroescala pueden incluir ecuaciones ordinarias , parciales e integro-diferenciales , donde las categorías y los flujos entre las categorías determinan la dinámica, o pueden involucrar solo ecuaciones algebraicas . Un modelo abstracto a macroescala se puede combinar con modelos a microescala más detallados. Las conexiones entre las dos escalas están relacionadas con el modelado multiescala . Una técnica matemática para el modelado multiescala de nanomateriales se basa en el uso de la función de Green multiescala .
Por el contrario, los modelos a microescala pueden simular una variedad de detalles, como bacterias individuales en biopelículas , [4] peatones individuales en vecindarios simulados, [5] haces de luz individuales en imágenes de trazado de rayos , [6] casas individuales en ciudades, [7 ] poros de escala fina y flujo de fluidos en baterías, [8] compartimentos de escala fina en meteorología, [9] estructuras de escala fina en sistemas de partículas, [10] y otros modelos donde las interacciones entre individuos y condiciones de fondo determinan la dinámica.
Los modelos de eventos discretos , los modelos basados en individuos y los modelos basados en agentes son casos especiales de modelos a microescala. Sin embargo, los modelos a microescala no requieren individuos o eventos discretos. Los detalles finos sobre la topografía, los edificios y los árboles pueden agregar detalles de microescala a las simulaciones meteorológicas y pueden conectarse a lo que se llama modelos de mesoescala en esa disciplina. [9] La resolución de paisaje del tamaño de un metro cuadrado disponible a partir de imágenes LIDAR permite modelar el flujo de agua a través de superficies terrestres, por ejemplo, riachuelos y bolsas de agua, utilizando arreglos de detalles del tamaño de gigabytes. [11] Los modelos de redes neuronales pueden incluir neuronas individuales, pero pueden funcionar en tiempo continuo y, por lo tanto, carecen de eventos discretos precisos. [12]
Historia
Las ideas para modelos computacionales a microescala surgieron en los primeros días de la computación y se aplicaron a sistemas complejos que no podían describirse con precisión mediante formas matemáticas estándar.
Dos temas surgieron en el trabajo de dos fundadores de la computación moderna a mediados del siglo XX. Primero, el pionero Alan Turing usó modelos simplificados a macroescala para comprender la base química de la morfogénesis , pero luego propuso y usó modelos computacionales a microescala para comprender las no linealidades y otras condiciones que surgirían en los sistemas biológicos reales. [13] En segundo lugar, el pionero John von Neumann creó un autómata celular para comprender las posibilidades de autorreplicación de entidades arbitrariamente complejas, [14] que tenían una representación a microescala en el autómata celular pero no una forma simplificada a macroescala. Este segundo tema se toma como parte de modelos basados en agentes , donde las entidades en última instancia pueden ser agentes artificialmente inteligentes que operan de forma autónoma.
En el último cuarto del siglo XX, la capacidad computacional había crecido tanto [15] [16] que se podían incluir hasta decenas de miles de individuos o más en modelos a microescala, y que se podían aplicar arreglos dispersos para lograr también un alto rendimiento. . [17] Los continuos aumentos en la capacidad informática permitieron que cientos de millones de personas fueran simuladas en computadoras ordinarias con modelos a microescala a principios del siglo XXI.
El término "modelo a microescala" surgió a finales del siglo XX y ahora aparece en la literatura de muchas ramas de la ciencia física y biológica. [5] [7] [8] [9] [18]
Ejemplo
La Figura 1 representa un modelo fundamental a macroescala: el crecimiento de la población en un entorno ilimitado. Su ecuación es relevante en otros lugares, como el crecimiento compuesto del capital en economía o el decaimiento exponencial en física. Tiene una variable combinada,, el número de individuos de la población en algún momento . Tiene un parámetro amalgamado, la tasa de crecimiento anual de la población, calculada como la diferencia entre la tasa de natalidad anual y la tasa de mortalidad anual . Hora puede medirse en años, como se muestra aquí a modo de ilustración, o en cualquier otra unidad adecuada.
El modelo a macroescala de la Figura 1 amalgama parámetros e incorpora una serie de aproximaciones simplificadoras:
- las tasas de natalidad y muerte son constantes;
- todos los individuos son idénticos, sin genética ni estructura de edad;
- las fracciones de individuos son significativas;
- los parámetros son constantes y no evolucionan;
- el hábitat es perfectamente uniforme;
- no se produce inmigración ni emigración; y
- la aleatoriedad no entra.
Todas estas aproximaciones del modelo a macroescala se pueden refinar en modelos análogos a microescala. En la primera aproximación enumerada anteriormente, que las tasas de natalidad y muerte son constantes, el modelo de macroescala de la Figura 1 es exactamente la media de un gran número de ensayos estocásticos con la tasa de crecimiento fluctuando aleatoriamente en cada instancia de tiempo. [19] Los detalles estocásticos de microescala se incluyen en una ecuación de difusión diferencial parcial y esa ecuación se utiliza para establecer la equivalencia.
Para relajar otras suposiciones, los investigadores han aplicado métodos computacionales. La Figura 2 es un algoritmo de microescala computacional de muestra que corresponde al modelo de macroescala de la Figura 1. Cuando todos los individuos son idénticos y las mutaciones en las tasas de natalidad y muerte están desactivadas, la dinámica de microescala es muy paralela a la dinámica de macroescala (Figuras 3A y 3B). Las ligeras diferencias entre los dos modelos surgen de variaciones estocásticas en la versión de microescala que no están presentes en el modelo de macroescala determinista. Estas variaciones serán diferentes cada vez que se lleve a cabo el algoritmo, derivadas de variaciones intencionales en secuencias de números aleatorios.
Cuando no todos los individuos son idénticos, la dinámica de la microescala puede diferir significativamente de la dinámica de la macroescala, simulando situaciones más realistas que las que se pueden modelar en la macroescala (Figuras 3C y 3D). El modelo de microescala no incorpora explícitamente la ecuación diferencial, aunque para poblaciones grandes la simula de cerca. Cuando los individuos difieren entre sí, el sistema tiene un comportamiento bien definido, pero las ecuaciones diferenciales que gobiernan ese comportamiento son difíciles de codificar. El algoritmo de la Figura 2 es un ejemplo básico de lo que se llama un modelo sin ecuaciones . [20]
Cuando las mutaciones están habilitadas en el modelo de microescala (), la población crece más rápidamente que en el modelo a macroescala (Figuras 3C y 3D). Las mutaciones en los parámetros permiten que algunas personas tengan tasas de natalidad más altas y que otras tengan tasas de mortalidad más bajas, y esas personas contribuyen proporcionalmente más a la población. En igualdad de condiciones, la tasa de natalidad promedio se desplaza a valores más altos y la tasa de mortalidad promedio se desplaza a valores más bajos a medida que avanza la simulación. Esta deriva se rastrea en las estructuras de datos denominadas beta y delta del algoritmo de microescala de la Figura 2.
El algoritmo de la Figura 2 es un modelo de microescala simplificado que utiliza el método de Euler . En la práctica también se utilizan otros algoritmos como el método de Gillespie [21] y el método de eventos discretos [17] . Las versiones del algoritmo en uso práctico incluyen eficiencias como quitar a las personas de la consideración una vez que mueren (para reducir los requisitos de memoria y aumentar la velocidad) y programar eventos estocásticos en el futuro (para proporcionar una escala de tiempo continua y para mejorar aún más la velocidad). [17] Estos enfoques pueden ser órdenes de magnitud más rápidos.
Complejidad
La complejidad de los sistemas abordados por los modelos a microescala conduce a la complejidad de los propios modelos, y la especificación de un modelo a microescala puede ser decenas o cientos de veces mayor que su correspondiente modelo a macroescala. (El ejemplo simplificado de la Figura 2 tiene 25 veces más líneas en su especificación que la Figura 1.) Dado que los errores ocurren en el software de computadora y no se pueden eliminar por completo con métodos estándar como las pruebas, [22] y dado que los modelos complejos a menudo no lo son ni publicado en detalle ni revisado por pares, su validez ha sido cuestionada. [23] Existen directrices sobre las mejores prácticas para los modelos a microescala [24], pero ningún documento sobre el tema afirma una resolución completa del problema de la validación de modelos complejos.
Futuro
La capacidad de computación está alcanzando niveles en los que poblaciones de países enteros o incluso del mundo entero están al alcance de los modelos a microescala, y las mejoras en los datos censales y de viajes permiten seguir mejorando la parametrización de dichos modelos. Los sensores remotos de los satélites de observación de la Tierra y de los observatorios terrestres, como la Red Nacional de Observatorios Ecológicos (NEON), proporcionan grandes cantidades de datos para la calibración. Las aplicaciones potenciales van desde predecir y reducir la propagación de enfermedades hasta ayudar a comprender la dinámica de la tierra.
Cifras
Figura 1. Uno de los modelos de macroescala más simples: una ecuación diferencial ordinaria que describe el crecimiento exponencial continuo . es el tamaño de la población en el momento , es la tasa de cambio a lo largo del tiempo en la dimensión única . es la población inicial en , es una tasa de natalidad por unidad de tiempo, y es una tasa de mortalidad por unidad de tiempo. A la izquierda está la forma diferencial; a la derecha está la solución explícita en términos de funciones matemáticas estándar, que se sigue en este caso de la forma diferencial. Casi todos los modelos a macroescala son más complejos que este ejemplo, ya que tienen múltiples dimensiones, carecen de soluciones explícitas en términos de funciones matemáticas estándar y deben entenderse a partir de sus formas diferenciales.
Figura 2. Un algoritmo básico que aplica el método de Euler a un modelo individual. Ver texto para discusión. El algoritmo, representado en pseudocódigo , comienza con la invocación del procedimiento., que utiliza las estructuras de datos para realizar la simulación según los pasos numerados que se describen a la derecha. Invoca repetidamente la función, que devuelve su parámetro perturbado por un número aleatorio extraído de una distribución uniforme con desviación estándar definida por la variable . (La raíz cuadrada de 12 aparece porque la desviación estándar de una distribución uniforme incluye ese factor). en el algoritmo se supone que devuelve un número aleatorio distribuido uniformemente . Se supone que los datos se restablecen a sus valores iniciales en cada invocación de.
Figura 3. Comparación gráfica de la dinámica de las simulaciones a macroescala y microescala de las Figuras 1 y 2, respectivamente.
- (A) La curva negra traza la solución exacta del modelo a macroescala de la Figura 1 con por año, por año, y individuos.
- (B) Los puntos rojos muestran la dinámica del modelo a microescala de la Figura 2, que se muestra a intervalos de un año, utilizando los mismos valores de, , y , y sin mutaciones .
- (C) Los puntos azules muestran la dinámica del modelo a microescala con mutaciones que tienen una desviación estándar de.
- (D) Los puntos verdes muestran resultados con mutaciones más grandes,.
Referencias
- ^ Nelson, Michael France (2014). Estudios experimentales y de simulación de genética poblacional, tolerancia a la sequía y crecimiento vegetativo de Phalaris arundinacea(Tesis doctoral). Universidad de Minnesota, Estados Unidos.
- ^ Gustafsson, Leif; Sternad, Mikael (2010). "Modelado coherente de población basado en micro, macro y estado". Biociencias matemáticas . 225 (2): 94-107. doi : 10.1016 / j.mbs.2010.02.003 . PMID 20171974 .
- ^ Gustafsson, Leif; Sternad, Mikael (2007). "Aportando coherencia a la simulación de modelos de población: la simulación de Poisson como puente entre la micro y la macro simulación" (PDF) . Biociencias matemáticas . 209 (2): 361–385. doi : 10.1016 / j.mbs.2007.02.004 . PMID 17412368 .
- ^ Dillon, Robert; Fauci, Lisa ; Fogelson, Aaron; Gaver III, Donald (1996). "Modelado de procesos de biopelícula utilizando el método de límite sumergido". Revista de Física Computacional . 129 (1): 57–73. Código Bibliográfico : 1996JCoPh.129 ... 57D . doi : 10.1006 / jcph.1996.0233 .
- ^ a b Bandini, Stefania; Luca Federici, Mizar; Manzoni, Sara (2007). "Enfoque de SCA para el modelado a microescala de comportamientos de multitudes emergentes paradigmáticos". SCSC : 1051–1056.
- ^ Gartley, MG; Schott, JR; Brown, SD (2008). Shen, Sylvia S; Lewis, Paul E (eds.). "Modelado a microescala de los efectos de los contaminantes en las propiedades ópticas de la superficie". Optical Engineering Plus Applications, Sociedad Internacional de Óptica y Fotónica . Espectrometría de imágenes XIII. 7086 : 70860H. Código Bibliográfico : 2008SPIE.7086E..0HG . doi : 10.1117 / 12.796428 .
- ^ a b O'Sullivan, David (2002). "Hacia el modelado espacial de la gentrificación a microescala". Revista de sistemas geográficos . 4 (3): 251-274. Código bibliográfico : 2002JGS ..... 4..251O . doi : 10.1007 / s101090200086 .
- ^ a b Menos, GB; Seo, JH; Han, S .; Sastry, AM; Zausch, J .; Latz, A .; Schmidt, S .; Wieser, C .; Kehrwald, D .; Cayó, S. (2012). "Modelado a microescala de baterías Li-Ion: parametrización y validación". Revista de la Sociedad Electroquímica . 159 (6): A697 – A704. doi : 10.1149 / 2.096205jes .
- ^ a b c Knutz, R .; Khatib, I .; Moussiopoulos, N. (2000). "Acoplamiento de modelos de mesoescala y microescala: un enfoque para simular la interacción de escala". Modelado ambiental y software . 15 (6–7): 597–602. doi : 10.1016 / s1364-8152 (00) 00055-4 .
- ^ Marchisio, Daniele L .; Fox, Rodney O. (2013). Modelos computacionales para sistemas polidispersos de partículas y multifase . Prensa de la Universidad de Cambridge.
- ^ Barnes, Richard; Lehman, Clarence; Mulla, David (2014). "Una asignación eficiente de la dirección de drenaje sobre superficies planas en modelos de elevación digitales raster". Informática y Geociencias . 62 : 128-135. arXiv : 1511.04433 . Código bibliográfico : 2014CG ..... 62..128B . doi : 10.1016 / j.cageo.2013.01.009 .
- ^ Tú, Yong; Nikolaou, Michael (1993). "Modelado de procesos dinámicos con redes neuronales recurrentes". Revista AIChE . 39 (10): 1654-1667. doi : 10.1002 / aic.690391009 .
- ^ Turing, Alan M. (1952). "La base química de la morfogénesis" . Transacciones filosóficas de la Royal Society of London B: Ciencias biológicas . 237 (641): 37–72. Código Bibliográfico : 1952RSPTB.237 ... 37T . doi : 10.1098 / rstb.1952.0012 .
- ^ Burks, AW (1966). Teoría de los autómatas que se reproducen a sí mismos . Prensa de la Universidad de Illinois.
- ^ Moore, Gordon E. (1965). "Amontonando más componentes en los circuitos integrados". Electrónica . 38 (8).
- ^ Berezin, AA; Ibrahim, AM (2004). "Fiabilidad de la ley de Moore: una medida de calidad mantenida". En GJ McNulty (ed.). Calidad, Fiabilidad y Mantenimiento . John Wiley e hijos.
- ^ a b c Brown, Randy (1988). "Calendar Queues: Una rápida implementación de cola de prioridad O (1) para el problema de conjunto de eventos de simulación". Comunicaciones de la ACM . 31 (10): 1220-1227. doi : 10.1145 / 63039.63045 .
- ^ Frind, EO; Sudicky, EA; Schellenberg, SL (1987). "Modelado a microescala en el estudio de la evolución de la pluma en medios heterogéneos". Hidrología e Hidráulica Estocástica . 1 (4): 263-279. Código bibliográfico : 1987SHH ..... 1..263F . doi : 10.1007 / bf01543098 .
- ^ Mayo, Robert (1974). "Estabilidad y complejidad en ecosistemas modelo". Monografías de biología de poblaciones . Prensa de la Universidad de Princeton. 6 : 114-117. PMID 4723571 .
- ^ Kevrekidis, Ioannis G .; Samaey, Giovanni (2009). "Cálculo multiescala sin ecuaciones: algoritmos y aplicaciones". Revisión anual de química física . 60 : 321–344. Código bibliográfico : 2009ARPC ... 60..321K . doi : 10.1146 / annurev.physchem.59.032607.093610 . PMID 19335220 .
- ^ Gillespie, Daniel T. (1977). "Simulación estocástica exacta de las reacciones químicas acopladas". Revista de Química Física . 81 (25): 2340–2361. CiteSeerX 10.1.1.704.7634 . doi : 10.1021 / j100540a008 .
- ^ Dijkstra, Edsger (1970). Notas sobre programación estructurada . Informe TH 70-WSK-03, EWD249. Eindhoven, Holanda: Universidad Tecnológica.
- ^ Saltelli, Andrea; Funtowicz, Silvio (2014). "Cuando todos los modelos están mal". Problemas en ciencia y tecnología . 30 (2): 79–85.
- ^ Baxter, Susan M .; Día, Steven W .; Fetrow, Jacquelyn S .; Reisinger, Stephanie J. (2006). "El desarrollo de software científico no es un oxímoron" . PLOS Biología Computacional . 2 (9): 975–978. Código Bibliográfico : 2006PLSCB ... 2 ... 87B . doi : 10.1371 / journal.pcbi.0020087 . PMC 1560404 . PMID 16965174 .