Large-scale simulation of population dynamics for socio-demographic analysis
Authors:   , Montañola Sales Cristina 
Published: September 2023

Computer modelling and complex systems simulation have dominated the scientific debate over the last decade, providing important outcomes in biology, geology and life sciences. In the social sciences, the number of research groups currently developing research programs in this direction is increasing. The results are extremely promising since simulation technologies have the potential to become an essential tool in the field.
Agent-based modelling is widely recognised as one of the techniques with more potential to develop useful simulations of social interacting systems. The approach allows to specify complex behavioural and cognitive rules at the individual level; and through aggregation, the output at the macro level can be derived. Increasingly, the output of micro-level simulation models is used as an input to policy models. Policy models not only requires detailed micro-level data, but also significant compute power since the number of agents and interactions can be extremely large in some cases.
High performance computing offers a massive supercomputing power which allows us to simulate a large artificial society. In that context, parallel simulation could provide an alternative to speed up the execution of such compute-intensive socio-demographic models. It deals with techniques that allow the use of multiple processors to run a single simulation. Although research in parallel simulation has been around for more than two decades, the number of applications in the social sciences is scarce.
In this thesis, we present a methodology for simulating population dynamics at a large-scale. Specifically, we developed a parallel simulation framework to run demographic models. It simulates the interactions of individuals in a society so the population projection can be obtained. Two of the main obstacles hindering the use of agent-based simulation in practice are (a) its scalability when the analysis requires large-scale models, and (b) its ease-of-use, especially for users with no programming experience. Our approach proposes a solution for both challenges. On one hand, we give a solution in to simulate large social systems in a parallel environment. We show its potential by studying the performance of our approach by identifying the factors that affect the simulation execution time. Moreover, we investigate the impact of three well-known configurations of computer architecture. Since the application of parallel simulation in demography is new, it is useful to quantify the effect of these factors on performance.
On the other hand, we provide a graphical user interface which allows modellers with no programming background to specify agent-based demographic models and transparently run them in parallel. We believe this will help to remove a major barrier on using simulation although we are aware technical knowledge is necessary to execute scenarios in High Performance Computing facilities.
Two cases studies are presented to support the feasibility of the approach for the social sciences. The first case under study carries out an analysis of the evolution of the emigrated population of The Gambia between 2001 and 2011, a relevant period for immigrations in Spain. The second case study simulates the socio-demographic changes of South Korean during one hundred years. The objective is to rate the feasibility of our methodology for forecasting individual demographic processes. Our results show that agent-based modelling can be very useful in the study of demography. Furthermore, the use of a parallel environment enables the use of larger scale demographic models

En las últimas décadas la modelización computacional y la simulación de sistemas complejos han dominado el debate científico, dando lugar a resultados importantes en áreas como la biología, la geología o las ciencias de la vida. En ciencias sociales el número de grupos de investigación que desarrollan programas en esta dirección no para de crecer. Los resultados son extremadamente prometedores ya que la simulación tiene el potencial para llegar a ser una herramienta esencial en el ámbito de los estudios sociales. La modelización basada en agentes es ampliamente reconocida como una de las técnicas con mayor potencial para desarrollar simulaciones de sistemas sociales. Este enfoque nos permite especificar reglas de comportamiento y cognición complejas a nivel del individuo y, a través de su agregación, se obtienen resultados a nivel macroscópico. Cada vez más, los resultados individualizados de los modelos de simulación son usados como entrada de modelos de políticas de planificación familiares. Estos modelos no sólo requieren una gran cantidad de datos a nivel microscópico, sino que además precisan de una capacidad de cálculo significativa ya que el nombre de agentes y sus interacciones puede llegar a ser muy grande. La computación de altas prestaciones ofrece una capacidad de cálculo masiva que nos permite simular a gran escala sociedades artificiales, proveyendo una alternativa para acelerar la ejecución de estos modelos socio-demográficos tan intensivos en sus cálculos. Aunque la investigación en simulación paralela tiene más de veinte años, el número de aplicaciones en las ciencias sociales es escaso. En esta tesis presentamos una metodología para simular dinámicas poblaciones a gran escala. Concretamente, hemos desarrollado un entorno de simulación paralela que permite emular modelos demográficos, simulando las interacciones de individuos en una sociedad con el fin de obtener la proyección de la población. Dos de los principales obstáculos para el uso de la simulación basada en agentes en su práctica son (a) la escalabilidad cuando el análisis requiere modelos muy grandes, y (b) su facilidad de uso particularmente en usuarios que no tienen experiencia en programación. Nuestro enfoque propone una solución para ambos retos. Por una parte, proponemos una solución a la simulación a gran escala de sistemas sociales en un entorno paralelo. Mostramos su potencial estudiando su rendimiento, identificando los factores que la hacen más sensible al tiempo de ejecución e investigando el impacto de tres configuraciones conocidas de la arquitectura. Puesto que la aplicación de la simulación paralela en demografía es nueva, es útil calcular el efecto de estos factores en el rendimiento de la metodología que proponemos. Por otra parte, el entorno desarrollado incluye una interface gráfica de usuario que permite a usuarios sin experiencia en programación especificar modelos demográficos basados en agentes y ejecutarlos de forma transparente en un entorno paralelo. Con este enfoque, ayudamos a superar una gran barrera en el uso de la simulación aunque un conocimiento técnico para ejecutar escenarios en una arquitectura de altas prestaciones sea necesario. Finalmente, presentamos dos casos de estudio que ponen de manifiesto el alcance de nuestro enfoque para las ciencias sociales. El primero realiza un análisis de la evolución de la población gambiana emigrada a España entre 2001 y 2011, un periodo especialmente relevante para las inmigraciones en España. El segundo caso simula los cambios sociodemográficos de Corea del Sud durante cien años. El objetivo es mostrar lo que nuestra metodología puede aportar para el estudio en profundidad de procesos demográficos. Nuestros resultados muestran que la modelización basada en agentes puede ser de gran utilidad en demografía. Así mismo, el uso de un entorno de computación paralelo nos permite simular la demografía poblacional a gran escala.