Microscopic Markov Chain Approach to model the spreading of COVID-19
Author jtmatamalas
13 Stars
Updated Last
1 Year Ago
Started In
April 2020


Build Status DOI

The 2020 worldwide COVID-19 epidemic outbreak is probably one of the major challenges faced by humanity in our currently highly interconnected society. While a functional vaccine is developed, we must rely only on non-pharmaceutical interventions, which include mobility restrictions, confinement, social distancing, partial lockdown, or total lockdown of non-essential services. The effective evaluation of any of these policies requires a detailed enough modeling of the spreading of this epidemics.


This package MMCAcovid19, written in the Julia language, implements the epidemic model for COVID-19 developed by a group of reserachers from Universitat Rovira i Virgili and Universidad de Zaragoza [1]. The model makes use of a Microscopic Markov Chain Approach (MMCA) to describe mathematically the dynamics of a so-called metapopulation model of epidemic spreading [2-4].


The main ingredients of the model are the following:

  • The area to analyze is divided in patches, e.g., municipalities, counties, regions, or any other desired level of resolution.
  • The surface of each patch, to account for density.
  • The stratification of the population in groups with different mobility, contacts, or epidemic parameters, e.g., stratification by age.
  • The stratified population at each patch.
  • The stratified daily mobility (commuting) between patches.
  • The stratified average number of contacts.
  • The contacts distribution between strata.
  • The epidemic parameters.

As is common practice in the description of epidemic spreading, we have considered a set of compartments to describe the different stages of people in front of the disease, selected according to the current knowledge of COVID-19 (see [1] for the details):

  • Susceptible (S): healthy individual.
  • Exposed (E): incubating the disease, not infectious.
  • Infected asymptomatic (A): infectious, without symptomes of the disease.
  • Infected symptomatic (I): infectious, with symptomes of the disease.
  • Pre-hospitalized to ICU (PH)
  • Pre-deceased (PD)
  • Hospitalized in ICU patients who will recover (HR)
  • Hospitalized in ICU patients who will not recover (HD)
  • Deceased (D).
  • Recovered (R).

The transitions between compartments, including their corresponding epidemic parameters, are:


Once all the information about population and epidemic parameters is introduced, the model is capable of predicting the evolution of the disease at the level of patch and for each of the epidemic compartments. Since MMCA is a discrete time formalism, we have selected a time resolution of a day, the natural one to account for contacts, mobility and epidemic rates.


The model is able to include containment measures:

  • Mobility reduction.
  • Permeability of confined households.
  • Social distancing.

This package allows the application of multiple containment measures at different dates, thus enabling the analysis of elaborated containment policies.


  1. Alex Arenas, Wesley Cota, Jesús Gómez-Gardeñes, Sergio Gómez, Clara Granell, Joan T. Matamalas, David Soriano-Paños and Benjamin Steinegger: Modeling the spatiotemporal epidemic spreading of COVID-19 and the impact of mobility and social distancing interventions, Physical Review X 10 (2020) 041055 (doi)

  2. Sergio Gómez, Alex Arenas, Javier Borge-Holthoefer, Sandro Meloni and Yamir Moreno: Discrete-time Markov chain approach to contact-based disease spreading in complex networks, Europhysics Letters 89 (2010) 38009 (doi)

  3. Jesús Gómez-Gardeñes, David Soriano-Paños and Alex Arenas: Critical regimes driven by recurrent mobility patterns of reaction-diffusion processes in networks, Nature Physics 14 (2018) 391–395 (doi)

  4. David Soriano-Paños, L. Lotero, Alex Arenas and Jesús Gómez-Gardeñes: Spreading processes in multiplex metapopulations containing different mobility networks, Physical Review X 8 (2018) 031039 (doi)





The full documentation of MMCAcovid19 can be found here

Used By Packages

No packages found.