Skip to content

Marcodelloro/Pandemic-System-Identification

Repository files navigation

Pandemic-System-Identification

Description

This repository contains the codes and data for the system identification part related to the Model Predictive Pandemic Control (MPPC) research project by TU/e MOVEMENT Research Group.

Julia Files

DataCooking.jl and DataCollection.jl: Julia script to obtain data in order to fit an age-stratified model. The data are not directly available, thus raw datasets have been manipulated in order to be employed.

TestingSIDTHE.jl: Code to test the behaviour of the system to parameters obtained from moving horizon estimation (MHE).

Identifiability.jl: Code to test the Structural Identifiability of the SIDTHE-age model. The test is performed by means of the projection-based elimination algorithm implemented in the Julia toolbox StructuralIdentifiability.jl.

RepNumbR0.jl: Test code to evaluate the reproduction number of the SIDTHE-age model. The method seeks for an analytic computation of $R_0$, harnessing the next-generation matrix (NGM).

Data Folders

Age Compartments Distributions: Data from Istituto Superiore di Sanità (ISS) in collaboration with INFN.

issITAdeceased.csv: Trend of percentages by age groups related to DECEASED INDIVIDUALS (Deaths, reported on the day of death) in Italy.

issITAhospitalised.csv: Trend of percentages by age groups related to HOSPITALISED INDIVIDUALS (New hospitalizations, reported on the date of admission) in Italy.

issITAicu.csv: Trend of percentages by age groups related to INTENSIVE CARE INDIVIDUALS (New ICU admissions, referred to the date of admission) in Italy.

issITApositivi.csv: Trend of percentages by age groups related to POSITIVE INDIVIDUALS (New Positive Tests, referred to the date of Testing) in Italy.

Age New Cases Data: Data from Istituto Superiore di Sanità (ISS) in collaboration with INFN.

issITAnew_ICU.csv: Trend of daily numbers by age group of new ICU cases in Italy. Data reported refers to the 7-day interval moving average.

issITAnew_ricoveri.csv: Trend of daily numbers by age group of new Hospitalisations cases in Italy. Data reported refers to the 7-day interval moving average.

issITAnewdeceased.csv: Trend of daily numbers by age group of new Deceased (Deaths) cases in Italy. Data reported refers to the 7-day interval moving average.

issITAnewpos.csv: Trend of daily numbers by age group of new Positive cases in Italy. Data reported refers to the 7-day interval moving average.

National Trends: Data from Protezione Civile Github Dataset in collaboration with INFN.

WeekTrend_ITA.csv: Trend of daily numbers of CURRENTLY POSITIVE, HEALED, DECEASED and TOTAL CASES. Data in 7-day moving average.

DailyTrend_ITA.csv: Trend of daily numbers of:

  • Currently Hospitalised

  • Currently in ICU

  • Currently Positive

  • Δ variation Positive

  • New Positive Cases

  • Currently Healed

  • Currently Deceased

  • Cumulated Number of Positive Cases

  • New Δ(+) ICUs

  • Δ variation ICUs

  • Δ variation Hospitals

    & extra categories like, Δ variation in total positive cases, Δ variation in new positive cases etc...

Reconstructed Datasets: Reconstructed datasets of the Italian population divided in four age groups:

  1. u40: Individuals aged 0 to 39 years. It includes children, young adults, and those in early adulthood.

  2. mid: Individuals aged 40 to 59 years, considered the largest amount of working-age population.

  3. old: Individuals aged 60 to 79 years. This group includes senior individuals, Heightened risks due to age-related vulnerabilitie, more prone to experience severe outcomes from the virus.

  4. ger: Individuals aged 80 years and above. Commonly referred to as geriatric population. Heavily affected by the COVID-19 pandemic, facing high mortality rates.

    All the data are extrapolated from the code DataCooking.jl and DataCollection.jl. The dataset are used to inform and identify the model.

MHE Matlab Folders

MHE Age Stratified:

Folder containing all the codes to run the simulation of the SIDTHE age-stratified model, with multiple $\alpha$ (virus infectivity). Main files in the folder:

testScriptMHE.m: Main test script to run the MHE on the whole horizon.

bayesMHEObj.m: Function performing Hyperparameters Autotuning of the MHE objective funztion by implementig bayesian optimization.

runMHE.m: Function containing MHE optimization problem in CasADi framework.

PlottingMHE.m: Code to plot the results of the MHE.

MHE Age Stratified - Single alpha:

Folder containing all the codes to run the simulation of the SIDTHE age-stratified model, with single $\alpha$ (virus infectivity). Main files in the folder:

testScriptMHE_a.m: Main test script to run the MHE on the whole horizon.

bayesMHEObj_a.m: Function performing Hyperparameters Autotuning of the MHE objective function by implementig bayesian optimization.

runMHE_a.m: Function containing MHE optimization problem in CasADi framework.

PlottingMHE_a.m: Code to plot the results of the MHE.

Switch.m: Code to test the optimized weights on the moving horizon estimation framework. Results extracted are the one final one.

PlotsJournal.m: Code to plot the results of the MHE with Journal specifics.

PlotsAppendix.m: Code to plot the results of the MHE for the Journal appenix.

Images:

Folder containing all the plots (.pdf/.eps) produced by this work. Most of them are destined to the Journal body and appendix.

About

Repository on julia

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published