Proyecto de estudio del Virus Respiratorio Sincitial (VRS)
Problemática del VRS
El virus respiratorio sincitial (VRS) es el agente causal más frecuente de las infecciones del tracto respiratorio inferior en menores de dos años, fundamentalmente bronquiolitis y neumonías. El VRS provoca epidemias anuales entre noviembre y marzo, con alguna variación interanual. Además coincide en el tiempo con otras infecciones que provocan un exceso de hospitalización, como la gripe y los rotavirus, lo que conlleva una verdadera congestión del sistema sanitario prácticamente todos los años. Además, dado que la transmisión del virus es fácil entre sujetos, las infecciones intrahospitalarias o nosocomiales son muy frecuentes.
En España se estima que la patología que provoca en el niño pequeño genera entre 15.000 y 20.000 consultas en atención primaria anualmente. En la Comunidad Valenciana ingresan anualmente 1.500 niños por bronquiolitis por VRS con una duración media de la hospitalización de 6 días. Esto supone un coste sanitario superior a los 3 millones y medio de euros anuales únicamente en hospitalizaciones pediátricas. Para la estimación del coste total de la enfermedad en pediatría habría que añadir el coste de las consultas en primaria y los costes indirectos o sociales.
Por todo ello se necesitan herramientas que permitan adecuar las necesidades sanitarias, establecer marcadores y predictores de las epidemias de forma que desde la Salud Pública se puedan establecer las estrategias de contención de la infección y preparación del sistema sanitario. También se están estudiando diversas aproximaciones para la obtención de vacunas, cuyas mayores limitaciones son la necesidad de obtener una respuesta inmune protectora en edades muy tempranas, cuando el sistema inmunitario está todavía poco desarrollado, y sobre todo la necesidad de modular esta respuesta inmune ya que gran parte de la patogenia de la enfermedad se debe no a la infección per se sino a una respuesta inmunitaria anómala del lactante.
Modelado del virus
Esta problemática nos lleva a proponer el desarrollo de un modelo dinámico de la transmisión e infección del VRS que se ajuste a datos reales de hospitalizaciones de menores de un año por VRS en la Comunidad Valenciana. Una vez establecido el modelo, diseñar diversas estrategias de prevención, incluida la vacunación, estudiar su efectividad y hacer análisis farmacoeconómicos, con el objetivo de obtener las estrategias más eficientes para reducir la incidencia de la enfermedad. Finalmente, proponer pautas de salud pública y extender el modelo a datos de toda España.
El equipo que está trabajando en esta enfermedad ha desarrollado un modelo de redes que simula mejor el contacto entre personas y la transmisión del VRS que los modelos desarrollados previamente. Partimos de la división de la población en las posibles situaciones que puede tener un individuo respecto a la enfermedad: susceptible o sano, infeccioso o enfermo y recuperado, con transiciones entre las situaciones como se ven en la figura siguiente (modelo SIRS).
Después construimos una red o grafo en la que cada nodo es un individuo con unas caractersticas propias e independientes del resto (edad, estado de salud, sexo, etc.). Las aristas entre los nodos representan las relaciones entre los individuos a través de las cuales la enfermedad se transmite. Si a la hora de construir la red asignamos las relaciones entre nodos de forma aleatoria decimos entonces que tenemos una red aleatoria (random network). Además, dependiendo de la distribución de probabilidad utilizada para asignar las relaciones entre nodos, tendremos distintos tipos de redes aleatorias (de Poisson, exponencial, potencial). Una vez que tenemos definida la red de relaciones y las reglas de evolución de la enfermedad podemos simular el modelo estudiando, individuo a individuo, las relaciones que tiene y cómo le afectan. Con esta aproximación es sencillo estudiar situaciones tales como el comportamiento de la enfermedad si se vacuna a un grupo concreto de la población (sólo a los niños, sólo a ancianos), o si se aplica cierta terapia a ciertos enfermos concretos. Podemos ver esto en la figura siguiente.
El inconveniente de este tipo de modelos es que la estimación de parámetros (lo que llamamos "ajuste del modelo") es computacionalmente muy costosa. Excepto en algunos casos muy concretos, el proceso de ajuste implica una búsqueda exhaustiva por fuerza bruta. Eso quiere decir que debemos probar cada posible combinación de parámetros (en nuestro caso son la tasa de infección, el número de relaciones y el tiempo de recuperación tras la enfermedad), correspondiendo cada una de estas combinaciones a un problema o modelo distinto. La prueba o "evolución" del modelo consiste en analizar, día a día a lo largo de varios años, qué le ocurre a cada individuo, si se pone enfermo, si se recupera, si muere, si nace, etc. Después hay que analizar los resultados y ver cómo de bien o de mal se acercan a los valores reales y conocidos.
En la práctica esto hace que los modelos de redes se usen con grandes limitaciones, como tener que reducir el tamaño de la red (en nodos y/o en relaciones) o restringir los intervalos de exploración para los parámetros de ajuste. Un buen ejemplo puede ser un modelo que pretenda abarcar a toda la población de España (unos 45.000.000 nodos). Una red así es tan grande que lo que se hace habitualmente es usar, digamos 10.000 o 100.000 nodos y extrapolar los resultados, algo algunas veces válido pero otras muchas, cuanto menos, discutible.
El objetivo final es, una vez validado y perfeccionado el modelo, probar diversas estrategias de vacunación y su efecto en la evolución de la enfermedad y estudiar la relación coste/beneficio de cada estrategia.
Fases del proyecto
En el proyecto VRS hemos utilizado la computación distribuida para poder calcular los modelos en un tiempo razonable, diseñando el proceso de cálculo en tres fases.
Fase I: Ajuste primario
En esta fase hacemos la búsqueda "gruesa" de aquellos parámetros de tasas de contagio y número de relaciones que más acerquen el modelo a la realidad. Utilizamos el sistema de cómputo distribuido propietario SÍSIFO, adecuado para pequeñas redes de computación en redes locales. Empleamos un número variable de ordenadores (unos 20 de manera habitual con picos de unos 100 durante fines de semana) y calculamos en unas tres semanas aproximadamente 60.000 modelos de 1.000.000 nodos, sumando unos 3 años de tiempo de CPU. Obtenemos unos resultados interesantes y damos con un modelo que es capaz de imitar razonablemente la evolución del virus.
Fase II: Ajuste secundario
En esta fase hacemos la búsqueda "fina" de aquellos parámetros de tasas de contagio, número de relaciones y tiempos de inmunidad del modelo. Esto es así para determinar la manera en la que afecta al contagio de la enfermedad el tiempo que los sujetos tardan en volver a ser susceptibles tras haberse recuperado. Implica el cálculo de unos 140.000 modelos de 1.000.000 nodos cada uno, y su envergadura es mayor que la que nuestro sistema SÍSIFO puede abordar. Por ello procedemos a desplegar un servidor BOINC propio para el proyecto VRS. En la figura siguiente podemos ver la evolución de los cálculos:
Del 18/05 al 26/06 empezamos los cálculos con ordenadores del CES Felipe II y del IMM de la U.P.V. pero la potencia de cálculo no es suficiente y necesitaríamos casi 8 meses para terminar todos los modelos. El 27/06 hacemos público el proyecto a la comunidad BOINC y el boca a boca hace el resto. En las siguientes 3 semanas llegamos a tener unos 850 equipos activos conectados y calculamos todos los problemas que teníamos pendientes, acumulando al final unos 21 años de tiempo de CPU y unos 500 Gigabytes de datos para analizar.
Fase III: Ajuste terciario
En esta fase usamos el modelo más preciso que hayamos obtenido en la Fase II para evaluar distintas estrategias de vacunación. Esperamos abordarla en septiembre, de momento está por determinar si necesitaremos usar computación distribuida de nuevo.
Agradecimientos
Queremos agradecer a la comunidad BOINC en general y a la hispana en particular, con CANAL@BOINC a la cabeza y seguidos de TitanesDC, el apoyo demostrado. Aunque la lista es mucho más larga (y está disponible en el apartado de estadísticas del proyecto), destacamos todos aquellos equipos que han superado los 10.000 créditos:
1 Team Starfire World BOINC
2 SETI.USA
3 CANAL@Boinc
4 Crunchers@Freiburg
5 BOINC@Poland
6 SeriousCrunchers
7 TitanesDC
8 SETI.Germany
9 BOINC@MIXI
10 AMD Users
11 Team 2ch
12 SaveTheWorld
13 L’Alliance Francophone
14 BOINC@Heidelberg
15 Free-DC
16 The Knights Who Say Ni!
17 Team Norway
18 Team England (Boinc)
Project for the study of Respiratory Syncytial Virus (RSV)
RSV Problems
Respiratory Syncytial Virus (RSV) is the most frequent agent of respiratory tract infections in children younger than 2 years old and the major cause of hospitalizations specially for bronchiolitis and pneumonia. RSV is the cause of annual seasonal epidemics with minor variations each year and these are coincident with other widespread viral infections such as influenza or rotavirus, all these infections produce a high number of hospitalizations saturating the National Health Systems. Moreover, its transmission is very easy and nosocomial infections are frequent.
In Spain, there are 15,000 – 20,000 visits to primary care due to RSV each year. In the Spanish region of Valencia, 1,500 children younger than five years old are hospitalized annually with an average of 6 days of hospitalization per case. The cost of pediatric hospitalization for the Valencian Health System is about 3.5 million euros per year. To estimate the total pediatric cost of the illness it would be necessary to add the costs of primary care attention and the social (indirect) costs.
Therefore, it is important to have tools that allow to adapt to the health requirements, establish epidemic markers and predictors that help Health organizations to design control strategies against RSV and a reliable preparation of Health System. Researchers are also studying vaccines to protect individuals at early ages, when the immune system is not completely developed and, what is more important, to modulate the immune response responsible for the severity of the disease in young children.
Virus Modelling
The above facts lead us to propose the development of a dynamic model of RSV transmission and infection fitting real values of hospitalization for children younger than one year in the Spanish
region of Valencia. Once developed the model, our goal is to design several prevention strategies, vaccination included, study their effectiveness, perform pharmaco-economic analysis in order to obtain more efficient strategies to reduce RSV incidence. Finally, as a consequence, to propose Public Health guidelines and to extend the model to Spain.
The team which is working in this disease has developed a network model able to simulate the inter-person contacts and the RSV transmission better than the already existing models. The starting point is the segmentation of population into the situations an individual can face with respect to the disease: susceptible or healthy, sick and recovered, with transitions among all these status as detailed in the following figure:
Then we build a network or graph where each node is an individual with specific characteristics independent of the other nodes (age, health status, sex, etc.). The links between among nodes represent relationships among individuals the disease uses for transmission. If the relationships are chosen randomly when building the network, then we have a so called "random network". Furthermore, depending on the probability distribution chosen to set-up the links among nodes, we can distinguish different random networks (Poisson, exponential, potential). Once we have built the network and the evolution rules have been defined, we can simulate the model studying, for each individual, the relationships he/she has and how is affected by them. With this approach it is easy to study situations such as the disease’s behaviour when a vaccine is applied on a selected group of the population (i.e. only children, only elderly), or if some treatment is applied to specific group of sick persons. This is represented by the following figure.
The odds of this model is that parameter estimation (what we call "model fitting") is highly CPU demanding. Apart from a few specific exceptions, the fitting process implies a brute force search. What this means is that we are forced to test every possible parameter combination (in our case they are the infection rate, the number of relationships and the recovering time after infection), being each one of these combinations a model. The test or "evolution" of the model consists on analyse, in a day-by-day basis for a period of several years, what happens to each individual, if he/she becomes ill, recovers, dies, etc. After that, the simulation results must be inspected and check how well they fit with the previously known data.
In practice this leads to the network models being used with great restrictions, such as reducing the network’s size (either in number of nodes, relationships or both) or the range in the parameter’s values to be tried. Lets think in a model for the whole population of Spain (about 45,000,000 nodes). The network would be so huge that usually we cut it off and use, say 10,000 or 100,000 nodes, and then extrapolate the results. This is valid sometimes but many others is, at least, questionable.
At the end, once the model has been validated and improved, the main aim is to test different vaccination strategies and to perform a cost-benefit analysis of each strategy.
Project’s Phases
In this project we have used distributed computation to carry on with the model calculation in a reasonable period of time, splitting it into three phases.
Phase I: Primary fitting
In this phase we have done a coarse adjustment of the infection rates and number of relationships which better approach to real data. We have used a proprietary distributed computation system called "SISIFO", suitable for small distributed computation in local networks. We used for the computations a changing number of computers (usually over 20 with peaks of about 100 during weekends) and computed over 60,000 models of 1,000,000 nodes each for a total of 3 years of CPU time. We got interesting results and found a model able to imitate reasonably the virus evolution.
Fase II: Secondary fitting
In this phase we have done the fine tuning of the model’s infection rate, number of relationships and immunity time. This is done so to determinate the way the infection is affected with respect to the time the individuals become susceptible once they have recovered. This implies the computation of about 140,000,000 models of 1,000,000 nodes each. This is bigger than what our SISIFO system can handle so we changed to BOINC and built our own BOINC server. In the following figure we show the evolution:
From 18/05 to 26/06 we started computations using the computers of CES Felipe II and IMM but the computation power was not enough and would need about 8 months to end the computation. On 27/06 we make the project public among the BOINC community and the Word-of-mouth makes the rest. In the following 3 weeks we reach over 850 active hosts and we are able to compute all the models we had still pending, reaching 21 years of CPU time and more than 500 Gigabyte of results.
Phase III: Tertiary fitting
In this phase we will use the best model we can find in Phase II to evaluate different vaccination strategies. We hope to do this around September. It is to be defined if we would distributed computation again.
Thanks
We wishes to thank the BOINC community for their support, and among the English speaking teams, thank the Team Starfire and SETI.USA. The list is far longer (and it is available in the statistics area of the project) but we show here the teams over 10,000 credits:
1 Team Starfire World BOINC
2 SETI.USA
3 CANAL@Boinc
4 Crunchers@Freiburg
5 BOINC@Poland
6 SeriousCrunchers
7 TitanesDC
8 SETI.Germany
9 BOINC@MIXI
10 AMD Users
11 Team 2ch
12 SaveTheWorld
13 L’Alliance Francophone
14 BOINC@Heidelberg
15 Free-DC
16 The Knights Who Say Ni!
17 Team Norway
18 Team England (Boinc)