An environmental modelling and information service for health analytics
Schmitz, Oliver (Utrecht University, The Netherlands)
Karssenberg, Derek (Utrecht University)
Jong, Kor de (Utrecht University)
Enriching patient information with environmental information such as individual exposure to air pollution or noise is a relevant procedure in health care and research. Generating this exposure information, however, is computationally intensive as the processing of large datasets with fine spatial and temporal discretisation is necessary; thereby usually exceeding hardware resources e.g. of family doctors. In an interdisciplinary research project (Healthy Urban Living) we develop an environmental modelling and information service (EMIS), consisting of these parts: a set of environmental models calculating exposure (e.g. NO2, PM10) on Dutch scale a set of algorithms to calculate exposure of individuals along their space-time paths a set a of microservices to maintain a flexible workflow in generating and executing queries The microservices architecture enables us to perform the computational intensive modelling tasks on institutional or national computing facilities, and allows lightweight client applications such as web portals to query the EMIS and thereby give health researchers straightforward access to exposure data. The presentation gives a general overview of the research project, the EMIS system architecture and outlines how open-source software tools (e.g. GDAL, PCRaster, flask, docopt, sqlalchemy and more) are used to process the spatio-temporal data sets. We additionally demonstrate use cases from the health researcher's perspective.
 Okay, we're continuing with our next session. I would like to introduce Oliver Schmitz from Utrecht University. He's going to tell us something about environmental modeling and information service for health analytics and that's where I leave it at. So, floor is yours. Thank you very much. Yes, we are actually developing an environmental modeling and information service in a project in Utrecht and it's in the context of a more over coupling project, Healthy Urban Living, which is a research project at Utrecht University, which investigates all kinds of research topic related to health. And in our case, especially, we are looking at air quality and its relation to health. And everybody should be aware that air quality, air pollution has some relation on health effects on human people. So we are some geoscientists and health scientists that are now actually looking a bit more in detail on personal exposure estimation. And this actually means we would like to know of individual persons, what is their personal exposure and then to continue relating it to health effects. So if we look at the two domains that are working in this project, geosciences and health research, the geosciences usually have some very detailed knowledge about the special processes they are able to do risk mapping, then they have some kind of knowledge about space time pass, how people can move. And on the other hand, the health scientists, they have very detailed knowledge about individual persons, attributes like age or weight or if they do sports, for example. And we try to combine these both knowledge domains to get a more precise estimation of personal exposure. And personal exposure on human people is actually everything from the environment, what has some influence on a human. And that can be, well, for example, air pollution, it can be water pollution, it can be climate effects, think of heat islands, urban heat islands, infections, stress, all these are basically factors that affect human health. And health researchers are very interested in, well, how is the relationship between this personal exposure and the health effects? And they're doing it by investigating individual cause of several thousand people, perhaps, for example. And by using detailed knowledge about this, they're trying to have some kind of process understanding how personal exposure can be related to health effects. And if this process understanding is there, it further all can relate to the whole population, for example. And if you look at the calculation of air pollution exposure, well, there's some challenges associated with it. Usually, we have quite some high spatial detail and, well, data that is required. If you think about moving people, there's GPS information to represent space time paths of people, for example. And usually, this is simulated in computer models. So there's quite some computing power and storage required to analyze it. And this is usually what geoscientists are doing and good at. And probably the problem is a bit of the health researcher or think about medical doctors, they have one patient and they want to have information about that. So how can we bridge the gap between real, very special detailed models and the health information? If you think about a bit the work tasks that we need to do, well, on the left side, you have the health research side, you have the database information or a spreadsheet information with attribute information about individual persons. You can have, well, geographical information, GPS tracks, other movement information. And you have model environmental attributes, for example, evolution or other kinds of pollutant sources. You somehow need to combine these potentially special and temporary aggregators. And these values finally need to be combined again by the health researchers to the data of the individual people so that the health researcher can do statistical analysis further on. A bit the workflow of our environmental modeling and service, the health researcher basically is uploading some kind of cohort information which you can see as location information where a person actually is at a particular time. He can upload these kind of data to our system and, well, after some time, he will retrieve enriched information and this information is coming from either from our environmental data archive or from our environmental models that are calculating these values. And while the medical doctors are uploading some data that's more or not rather likely to process, I'm going to talk more about the backend tasks, calculating special temporal models, that's what I'm going to talk about. Later on, we'll shortly be talking about the exposure or the distributing of this data to health scientists which we are realizing by a web portal. If you consider environmental models that calculate health pollution, well, we need to have special processes represented, special data represented, and we need to model over time. This is actually what's happening in forward modeling. We have special data representing a state of system at a particular time. We have a set of operations which can change the system and bring it to the following time step and state. So basically, you can, well, we'll end up in two-dimensional or three-dimensional space time stack which is a model result. And well, in our research group, we are especially interested not in just building one air pollution model. We want to construct several air pollution models. We want to construct a different type of model, hydrological models, for example. So we are interested in making very generic functions so that environmental models can really build their models. And we have a PCRuster research group. Well, we are doing research on spatial temporal and multi-paradigm modeling. We have a PCRuster Python module which basically implements about 200 operations. Some of them are according to the map algebra concept. We have a modeling framework for dynamic modeling and uncertainty analysis. And we can interact with NumPy and D-DAL. So there's lots of freedom what people can do with the model development. And we are already quite around for a while since the 1990s. People are using it quite intensively. For example, global hydrological modeling is built with our software. And we are open source since three years now. If we have a look at what we are doing at the PCRuster, basically it's more or less three main tasks. It's the software engineering task. You can see it at the bottom here where we deal with the data format of spatial data. We are implementing algorithms. We are concurrent implementations. So there's software engineers working on it because it performs matters in simulation models. But as a domain scientist, they usually not programming in C++. We are exposing all our functions and operations as Python modules. And then we come to the model as a second part. That's the environmental modeling domain. So we use our software and lots of other colleagues and people around the world. They are building simulation models with our software. And the third part that we are doing at the university is research, of course. So we are currently developing a new data model where we can represent field and agent bell, agent phenomena in one data model and access language. Well, with PCRuster, we developed the air pollution model. We used existing air pollution models from a European project, the SK project. It's a known project where several air pollutants models are implemented. A model basically calculates average values for a year. And well, in short, it's a combination of predictive variables and these predictive maps of variables. They are based on basically land use information, population information, or traffic-related datasets. To give you an example, we have the PMT model. Well, we have three variables, three input datasets. You see them here. These are special datasets. And for example, population density means for each RASC cell, we look in a five kilometer buffer around it, how many people do live there. So that's how these regression models are set up. You already see the input maps and a bit of the output map on this side. So how does it look actually in PCRuster Python? Yeah, as I mentioned, we have the Python module. It's relatively straightforward. We just load in three datasets. So road length here is actually a special variable. Then you see the model implementation. And this is basically as a domain scientist just writing a process description and multiplication and addition, for example. That's calculated for every RASC cell. But it's a very process like a description of the model. And finally, you can just report this result to this. And that's what you can see here. We calculated six different models, national coverage for the Netherlands at a five meter resolution. So that's about 1.5 billion RASC cells for the Netherlands if you need to calculate buffers on that. That's quite some computational effort. On the right side you see a bit the level of the details, so verifying, zooming. We are not only interested in some kind of static data, we are also interested in dynamics. So a colleague of mine is busy with trying to get from measurement data the shift to a dynamic model. So what he did, he derived regression coefficients that are representing one-hour time steps. And this is a very preliminary result, but it just gives the idea that you can already see in the morning and evening you have an increase due to the traffic. We would like to have some kind of dynamics represented in this model. And as you can imagine, a five meter resolution with an hour time step for a year or more, is a result in lots of data. We need to think about how to solve that. We are not only interested in that, we are also busy with other types of questions. We have the field data, for example, so the pollution values or RASC cells. Well, it would be actually interesting how can we, for each RASC cell, figure out how we can assign this to a network, a road network, for example. Well, it's a lot of work, intersection, and figuring it out. But basically it works. We assign pollution values as edge weights. Why do we do this? Because we are still interested in activity-based modeling. So we would like, for example, if people walk along the road, we would like to estimate what's the exposure during a trip. Are they cycling in good route? Are there more healthy routes possible? That's what we use here, for example, to the city of Rotterdam. One is the shortest route and one is the healthiest route in blue. So you can see, we basically, in the end, could give advice that people should cycle, perhaps, some other routes to have less uptake. And this is basically what we are interested in, in field and network operations. So that's pretty the geo-computation part that we are now mainly busy with. But we also have the problem that, well, the end users, the health researchers or doctors potentially, they need to access these data. And we have quite some challenges there because usually, simulation models have huge calculation times, why a doctor usually has smaller data sets and does not want all the data. So we need to have a bit more faster response time. We might have different locations where we compute models, where we store models. We don't know exactly what a researcher wants to have, how many data sets he's asking for, different type of spatial temporal aggregations. So there's quite a variability and uncertainty regarding the requirements that we have to deal at the moment. And so actually, what we try to avoid at all costs is some kind of monolithic system. And that's why we have some kind of microservice architecture layout where every task gets a dedicated service, and in that way, we hope that we can be quite flexible to changing requirements. And this is just a very brief overview of the microservice, how it looks at the moment. On the top, you have the kind of querying part that can be, well, the health researcher is submitting a request to the portal service, which is more or less maintaining a bookkeeping service for all kinds of other services. The portal services is then arranging basically the task management, which tasks need to be executed, the order, and all these kind of really processing tasks. As mentioned, web services, if you tell health researchers about web services, they can't use it directly. So we are building a prototype web portal where the health researcher can really, you can see on the top, you can select a few pollutants, you can select different aggregation methods, you can upload your coordinate information, where you really want to have information for. And, well, you can see about the processing status of your request, and finally, you will get your data back. So to wrap it up, actually, we are building really high resolution spatial datasets, at least for the Netherlands, and we use it to expose the estimation on the entire population. We are looking at the field and network operations, all kinds of generic operations such that people can use them in other models as well. And we make our results actually accessible by web services. And it's a whole set of challenges that we are facing in this project. What computational is basically really intensive due to the space and time discretization. For us as PCROS to platform, it's a challenge because we are not developing one model, we are developing a generic modeling platform, so we need to provide flexibility for model developers, and that makes it a coordination challenge. And also, for health researchers, we can generate a lot of spatial temporal health data, but the question of analyzing and validating this data, this is also a remaining issue that we are now tackling in the second year of the project. If you are interested, well, yeah, PCROS, it's an open source software, you can test it for free. You can follow our course if you like. If you want to know more about the Healthy Urban Living project, well, I can give you the contact address so you can look it up there. And with that, it's basically in the end of my presentation, what I still want, like to do, is to give you an idea about our software. And here you now see the 24-hour time step model results for, we've tracked a bit of surrounding. So what I basically loaded in our visualization tool is a 24-map stack. You can see the cell value is now about 20. Oh, sorry, that's nitrogen dioxide. You can very easily contrast the browser through the map, so it's very interactive if the data sets are reasonably small. You can see the time series developments, and basically for every RAS result, you can just get these values. And as we have some kind of time series, we can also make some kind of animation over the time series, and you will see that you can see the temporal distribution of the pollutant in this case. So this is just an example for the functionality and the exploratory working of the PCVastor tool set. This is preliminary data, so in turn, we still need to work on the model and validation, so I would like to mention that. But with that, I thank you and I'm open for questions. Yes? No, we are not doing this. Our approach is really, we have a relatively simple model, which is really based on non-land use population and these kind of data sets. It's a land use regression model, a geo-statistical model basically. It's not really incorporating processes in that respect. Wind, climate, we might want to look at that. But our approach is to have a bit more straightforward model, but we calculate it on a national level because we are interested in really large extent and basically we would like to estimate the exposure of all Dutch people. And that's why process models with detailed process knowledge, they're even more computational and intensive and some of them are working on a much closer grid size, so that would not really fit our needs. So it's quite an experimental project, so we have a very important indication that we are going into a good direction. That's anyone best fit, is that nice model? It would be interesting to do. It's not an escape set of noise modeling. The noise modeling is not a part of the escape models that we're using at the moment. But yeah, it would be out of our interest to include noise or stress related to noise and perhaps we can derive it from our traffic data sets. But also noise modeling is quite a tricky business again. If there are straightforward approaches, I would like to hear them. You had near because skip all my search a few years ago, we'll make some models for that. Yes, yeah, there are some models on a small scale, really very detailed. It would be very interesting if you can just upscale those to national level somehow. I assume that's a separate research project on its own. This is adding another magnitude of computational time. It's not in there yet, but certainly especially if you're now looking at more dynamic variability, we need to have a more detailed look on uncertainty. I know the escape models, they are developed due to measurement data, they derived the net use regression models and that process they also had to look at that aspect. In our case, we are starting with computational efforts. We see if we can really represent with our five meter approach the model results and extending that uncertainty would be interesting. But we already on our cathedrals, the Dutch supercomputer, so we need more time there. Do you have any observations to compare with your results? Yes, we did it when we started with the project. The escape project, they really validated their model to measurements, to observations. How many observations do you have for how many stations? As far as I know, there are about 80 stations in the Netherlands. Not all are supporting all pollutants. But the model validation step was taken care of in escape. We took a smaller interest case where we built up our five meter model. We compared our results of the PCROSTA model to the escape model and we got a very good agreement. So, a five meter ROSTA cell, it's a good representation for this kind of problem at this model. Okay, thanks. Thank you for your attention.
 Okay, we're continuing with our next session.  I would like to introduce Oliver Schmitz from Utrecht University.  He's going to tell us something about environmental modeling and information service for health  analytics and that's where I leave it at.  So, floor is yours.  Thank you very much.  Yes, we are actually developing an environmental modeling and information service in a project  in Utrecht and it's in the context of a more over coupling project, Healthy Urban Living,  which is a research project at Utrecht University, which investigates all kinds of research topic  related to health.  And in our case, especially, we are looking at air quality and its relation to health.  And everybody should be aware that air quality, air pollution has some relation on health  effects on human people.  So we are some geoscientists and health scientists that are now actually looking a bit more in  detail on personal exposure estimation.  And this actually means we would like to know of individual persons, what is their personal  exposure and then to continue relating it to health effects.  So if we look at the two domains that are working in this project, geosciences and health  research, the geosciences usually have some very detailed knowledge about the special  processes they are able to do risk mapping, then they have some kind of knowledge about  space time pass, how people can move.  And on the other hand, the health scientists, they have very detailed knowledge about individual  persons, attributes like age or weight or if they do sports, for example.  And we try to combine these both knowledge domains to get a more precise estimation of  personal exposure.  And personal exposure on human people is actually everything from the environment, what has  some influence on a human.  And that can be, well, for example, air pollution, it can be water pollution, it can be climate  effects, think of heat islands, urban heat islands, infections, stress, all these are  basically factors that affect human health.  And health researchers are very interested in, well, how is the relationship between  this personal exposure and the health effects?  And they're doing it by investigating individual cause of several thousand people, perhaps,  for example.  And by using detailed knowledge about this, they're trying to have some kind of process  understanding how personal exposure can be related to health effects.  And if this process understanding is there, it further all can relate to the whole population,  for example.  And if you look at the calculation of air pollution exposure, well, there's some challenges  associated with it.  Usually, we have quite some high spatial detail and, well, data that is required.  If you think about moving people, there's GPS information to represent space time paths  of people, for example.  And usually, this is simulated in computer models.  So there's quite some computing power and storage required to analyze it.  And this is usually what geoscientists are doing and good at.  And probably the problem is a bit of the health researcher or think about medical doctors,  they have one patient and they want to have information about that.  So how can we bridge the gap between real, very special detailed models and the health  information?  If you think about a bit the work tasks that we need to do, well, on the left side, you  have the health research side, you have the database information or a spreadsheet information  with attribute information about individual persons.  You can have, well, geographical information, GPS tracks, other movement information.  And you have model environmental attributes, for example, evolution or other kinds of pollutant  sources.  You somehow need to combine these potentially special and temporary aggregators.  And these values finally need to be combined again by the health researchers to the data  of the individual people so that the health researcher can do statistical analysis further  on.  A bit the workflow of our environmental modeling and service, the health researcher basically  is uploading some kind of cohort information which you can see as location information  where a person actually is at a particular time.  He can upload these kind of data to our system and, well, after some time, he will retrieve  enriched information and this information is coming from either from our environmental  data archive or from our environmental models that are calculating these values.  And while the medical doctors are uploading some data that's more or not rather likely  to process, I'm going to talk more about the backend tasks, calculating special temporal  models, that's what I'm going to talk about.  Later on, we'll shortly be talking about the exposure or the distributing of this data  to health scientists which we are realizing by a web portal.  If you consider environmental models that calculate health pollution, well, we need  to have special processes represented, special data represented, and we need to model over  time.  This is actually what's happening in forward modeling.  We have special data representing a state of system at a particular time.  We have a set of operations which can change the system and bring it to the following time  step and state.  So basically, you can, well, we'll end up in two-dimensional or three-dimensional space  time stack which is a model result.  And well, in our research group, we are especially interested not in just building one air pollution  model.  We want to construct several air pollution models.  We want to construct a different type of model, hydrological models, for example.  So we are interested in making very generic functions so that environmental models can  really build their models.  And we have a PCRuster research group.  Well, we are doing research on spatial temporal and multi-paradigm modeling.  We have a PCRuster Python module which basically implements about 200 operations.  Some of them are according to the map algebra concept.  We have a modeling framework for dynamic modeling and uncertainty analysis.  And we can interact with NumPy and D-DAL.  So there's lots of freedom what people can do with the model development.  And we are already quite around for a while since the 1990s.  People are using it quite intensively.  For example, global hydrological modeling is built with our software.  And we are open source since three years now.  If we have a look at what we are doing at the PCRuster, basically it's more or less  three main tasks.  It's the software engineering task.  You can see it at the bottom here where we deal with the data format of spatial data.  We are implementing algorithms.  We are concurrent implementations.  So there's software engineers working on it because it performs matters in simulation  models.  But as a domain scientist, they usually not programming in C++.  We are exposing all our functions and operations as Python modules.  And then we come to the model as a second part.  That's the environmental modeling domain.  So we use our software and lots of other colleagues and people around the world.  They are building simulation models with our software.  And the third part that we are doing at the university is research, of course.  So we are currently developing a new data model where we can represent field and agent  bell, agent phenomena in one data model and access language.  Well, with PCRuster, we developed the air pollution model.  We used existing air pollution models from a European project, the SK project.  It's a known project where several air pollutants models are implemented.  A model basically calculates average values for a year.  And well, in short, it's a combination of predictive variables and these predictive  maps of variables.  They are based on basically land use information, population information, or traffic-related  datasets.  To give you an example, we have the PMT model.  Well, we have three variables, three input datasets.  You see them here.  These are special datasets.  And for example, population density means for each RASC cell, we look in a five kilometer  buffer around it, how many people do live there.  So that's how these regression models are set up.  You already see the input maps and a bit of the output map on this side.  So how does it look actually in PCRuster Python?  Yeah, as I mentioned, we have the Python module.  It's relatively straightforward.  We just load in three datasets.  So road length here is actually a special variable.  Then you see the model implementation.  And this is basically as a domain scientist just writing a process description and multiplication  and addition, for example.  That's calculated for every RASC cell.  But it's a very process like a description of the model.  And finally, you can just report this result to this.  And that's what you can see here.  We calculated six different models, national coverage for the Netherlands at a five meter  resolution.  So that's about 1.5 billion RASC cells for the Netherlands if you need to calculate  buffers on that.  That's quite some computational effort.  On the right side you see a bit the level of the details, so verifying, zooming.  We are not only interested in some kind of static data, we are also interested in dynamics.  So a colleague of mine is busy with trying to get from measurement data the shift to  a dynamic model.  So what he did, he derived regression coefficients that are representing one-hour time steps.  And this is a very preliminary result, but it just gives the idea that you can already  see in the morning and evening you have an increase due to the traffic.  We would like to have some kind of dynamics represented in this model.  And as you can imagine, a five meter resolution with an hour time step for a year or more,  is a result in lots of data.  We need to think about how to solve that.  We are not only interested in that, we are also busy with other types of questions.  We have the field data, for example, so the pollution values or RASC cells.  Well, it would be actually interesting how can we, for each RASC cell, figure out how  we can assign this to a network, a road network, for example.  Well, it's a lot of work, intersection, and figuring it out.  But basically it works.  We assign pollution values as edge weights.  Why do we do this?  Because we are still interested in activity-based modeling.  So we would like, for example, if people walk along the road, we would like to estimate  what's the exposure during a trip.  Are they cycling in good route?  Are there more healthy routes possible?  That's what we use here, for example, to the city of Rotterdam.  One is the shortest route and one is the healthiest route in blue.  So you can see, we basically, in the end, could give advice that people should cycle,  perhaps, some other routes to have less uptake.  And this is basically what we are interested in, in field and network operations.  So that's pretty the geo-computation part that we are now mainly busy with.  But we also have the problem that, well, the end users, the health researchers or doctors  potentially, they need to access these data.  And we have quite some challenges there because usually, simulation models have huge calculation  times, why a doctor usually has smaller data sets and does not want all the data.  So we need to have a bit more faster response time.  We might have different locations where we compute models, where we store models.  We don't know exactly what a researcher wants to have, how many data sets he's asking for,  different type of spatial temporal aggregations.  So there's quite a variability and uncertainty regarding the requirements that we have to  deal at the moment.  And so actually, what we try to avoid at all costs is some kind of monolithic system.  And that's why we have some kind of microservice architecture layout where every task gets  a dedicated service, and in that way, we hope that we can be quite flexible to changing  requirements.  And this is just a very brief overview of the microservice, how it looks at the moment.  On the top, you have the kind of querying part that can be, well, the health researcher  is submitting a request to the portal service, which is more or less maintaining a bookkeeping  service for all kinds of other services.  The portal services is then arranging basically the task management, which tasks need to be  executed, the order, and all these kind of really processing tasks.  As mentioned, web services, if you tell health researchers about web services, they can't  use it directly.  So we are building a prototype web portal where the health researcher can really, you  can see on the top, you can select a few pollutants, you can select different aggregation methods,  you can upload your coordinate information, where you really want to have information  for.  And, well, you can see about the processing status of your request, and finally, you will  get your data back.  So to wrap it up, actually, we are building really high resolution spatial datasets, at  least for the Netherlands, and we use it to expose the estimation on the entire population.  We are looking at the field and network operations, all kinds of generic operations such that  people can use them in other models as well.  And we make our results actually accessible by web services.  And it's a whole set of challenges that we are facing in this project.  What computational is basically really intensive due to the space and time discretization.  For us as PCROS to platform, it's a challenge because we are not developing one model, we  are developing a generic modeling platform, so we need to provide flexibility for model  developers, and that makes it a coordination challenge.  And also, for health researchers, we can generate a lot of spatial temporal health data, but  the question of analyzing and validating this data, this is also a remaining issue that  we are now tackling in the second year of the project.  If you are interested, well, yeah, PCROS, it's an open source software, you can test  it for free.  You can follow our course if you like.  If you want to know more about the Healthy Urban Living project, well, I can give you  the contact address so you can look it up there.  And with that, it's basically in the end of my presentation, what I still want, like  to do, is to give you an idea about our software.  And here you now see the 24-hour time step model results for, we've tracked a bit of  surrounding.  So what I basically loaded in our visualization tool is a 24-map stack.  You can see the cell value is now about 20.  Oh, sorry, that's nitrogen dioxide.  You can very easily contrast the browser through the map, so it's very interactive if the data  sets are reasonably small.  You can see the time series developments, and basically for every RAS result, you can  just get these values.  And as we have some kind of time series, we can also make some kind of animation over  the time series, and you will see that you can see the temporal distribution of the pollutant  in this case.  So this is just an example for the functionality and the exploratory working of the PCVastor  tool set.  This is preliminary data, so in turn, we still need to work on the model and validation,  so I would like to mention that.  But with that, I thank you and I'm open for questions.  Yes?  No, we are not doing this.  Our approach is really, we have a relatively simple model, which is really based on non-land  use population and these kind of data sets.  It's a land use regression model, a geo-statistical model basically.  It's not really incorporating processes in that respect.  Wind, climate, we might want to look at that.  But our approach is to have a bit more straightforward model, but we calculate it on a national level  because we are interested in really large extent and basically we would like to estimate  the exposure of all Dutch people.  And that's why process models with detailed process knowledge, they're even more computational  and intensive and some of them are working on a much closer grid size, so that would  not really fit our needs.  So it's quite an experimental project, so we have a very important indication that we  are going into a good direction.  That's anyone best fit, is that nice model?  It would be interesting to do.  It's not an escape set of noise modeling.  The noise modeling is not a part of the escape models that we're using at the moment.  But yeah, it would be out of our interest to include noise or stress related to noise  and perhaps we can derive it from our traffic data sets.  But also noise modeling is quite a tricky business again.  If there are straightforward approaches, I would like to hear them.  You had near because skip all my search a few years ago, we'll make some models for  that.  Yes, yeah, there are some models on a small scale, really very detailed.  It would be very interesting if you can just upscale those to national level somehow.  I assume that's a separate research project on its own.  This is adding another magnitude of computational time.  It's not in there yet, but certainly especially if you're now looking at more dynamic variability,  we need to have a more detailed look on uncertainty.  I know the escape models, they are developed due to measurement data, they derived the  net use regression models and that process they also had to look at that aspect.  In our case, we are starting with computational efforts.  We see if we can really represent with our five meter approach the model results and  extending that uncertainty would be interesting.  But we already on our cathedrals, the Dutch supercomputer, so we need more time there.  Do you have any observations to compare with your results?  Yes, we did it when we started with the project.  The escape project, they really validated their model to measurements, to observations.  How many observations do you have for how many stations?  As far as I know, there are about 80 stations in the Netherlands.  Not all are supporting all pollutants.  But the model validation step was taken care of in escape.  We took a smaller interest case where we built up our five meter model.  We compared our results of the PCROSTA model to the escape model and we got a very good  agreement.  So, a five meter ROSTA cell, it's a good representation for this kind of problem at  this model.  Okay, thanks.  Thank you for your attention.
foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_0_383.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_384_431.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_432_647.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_648_767.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_768_911.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_912_983.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_984_1535.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_1536_3455.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_3456_3671.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_3672_3731.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_3732_4079.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_4080_6659.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_6660_7919.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_7920_8039.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_8040_9467.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_9468_17543.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_17544_24611.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_24612_24911.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_24912_25583.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_25584_25943.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_25944_28727.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_28728_28799.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_28800_31439.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_31440_31583.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_31584_38519.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_38520_38591.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_38592_38639.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_38640_38687.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_38688_38759.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_38760_38807.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_38808_38855.png foss4g-2016-1164-an_environmental_modelling_and_information_service_for_health_analytics-hd_38856_38964.png
Okay, we're continuing with our next session. I would like to introduce Oliver Schmitz from Utrecht University. He's going to tell us something about environmental modeling and information service for health analytics and that's where I leave it at. So, floor is yours. Thank you very much. Yes, we are actually developing an environmental modeling and information service in a project in Utrecht and it's in the context of a more over coupling project, Healthy Urban Living, which is a research project at Utrecht University, which investigates all kinds of research topic related to health. And in our case, especially, we are looking at air quality and its relation to health. And everybody should be aware that air quality, air pollution has some relation on health effects on human people. So we are some geoscientists and health scientists that are now actually looking a bit more in detail on personal exposure estimation. And this actually means we would like to know of individual persons, what is their personal exposure and then to continue relating it to health effects. So if we look at the two domains that are working in this project, geosciences and health research, the geosciences usually have some very detailed knowledge about the special processes they are able to do risk mapping, then they have some kind of knowledge about space time pass, how people can move. And on the other hand, the health scientists, they have very detailed knowledge about individual persons, attributes like age or weight or if they do sports, for example. And we try to combine these both knowledge domains to get a more precise estimation of personal exposure. And personal exposure on human people is actually everything from the environment, what has some influence on a human. And that can be, well, for example, air pollution, it can be water pollution, it can be climate effects, think of heat islands, urban heat islands, infections, stress, all these are basically factors that affect human health. And health researchers are very interested in, well, how is the relationship between this personal exposure and the health effects? And they're doing it by investigating individual cause of several thousand people, perhaps, for example. And by using detailed knowledge about this, they're trying to have some kind of process understanding how personal exposure can be related to health effects. And if this process understanding is there, it further all can relate to the whole population, for example. And if you look at the calculation of air pollution exposure, well, there's some challenges associated with it. Usually, we have quite some high spatial detail and, well, data that is required. If you think about moving people, there's GPS information to represent space time paths of people, for example. And usually, this is simulated in computer models. So there's quite some computing power and storage required to analyze it. And this is usually what geoscientists are doing and good at. And probably the problem is a bit of the health researcher or think about medical doctors, they have one patient and they want to have information about that. So how can we bridge the gap between real, very special detailed models and the health information? If you think about a bit the work tasks that we need to do, well, on the left side, you have the health research side, you have the database information or a spreadsheet information with attribute information about individual persons. You can have, well, geographical information, GPS tracks, other movement information. And you have model environmental attributes, for example, evolution or other kinds of pollutant sources. You somehow need to combine these potentially special and temporary aggregators. And these values finally need to be combined again by the health researchers to the data of the individual people so that the health researcher can do statistical analysis further on. A bit the workflow of our environmental modeling and service, the health researcher basically is uploading some kind of cohort information which you can see as location information where a person actually is at a particular time. He can upload these kind of data to our system and, well, after some time, he will retrieve enriched information and this information is coming from either from our environmental data archive or from our environmental models that are calculating these values. And while the medical doctors are uploading some data that's more or not rather likely to process, I'm going to talk more about the backend tasks, calculating special temporal models, that's what I'm going to talk about. Later on, we'll shortly be talking about the exposure or the distributing of this data to health scientists which we are realizing by a web portal. If you consider environmental models that calculate health pollution, well, we need to have special processes represented, special data represented, and we need to model over time. This is actually what's happening in forward modeling. We have special data representing a state of system at a particular time. We have a set of operations which can change the system and bring it to the following time step and state. So basically, you can, well, we'll end up in two-dimensional or three-dimensional space time stack which is a model result. And well, in our research group, we are especially interested not in just building one air pollution model. We want to construct several air pollution models. We want to construct a different type of model, hydrological models, for example. So we are interested in making very generic functions so that environmental models can really build their models. And we have a PCRuster research group. Well, we are doing research on spatial temporal and multi-paradigm modeling. We have a PCRuster Python module which basically implements about 200 operations. Some of them are according to the map algebra concept. We have a modeling framework for dynamic modeling and uncertainty analysis. And we can interact with NumPy and D-DAL. So there's lots of freedom what people can do with the model development. And we are already quite around for a while since the 1990s. People are using it quite intensively. For example, global hydrological modeling is built with our software. And we are open source since three years now. If we have a look at what we are doing at the PCRuster, basically it's more or less three main tasks. It's the software engineering task. You can see it at the bottom here where we deal with the data format of spatial data. We are implementing algorithms. We are concurrent implementations. So there's software engineers working on it because it performs matters in simulation models. But as a domain scientist, they usually not programming in C++. We are exposing all our functions and operations as Python modules. And then we come to the model as a second part. That's the environmental modeling domain. So we use our software and lots of other colleagues and people around the world. They are building simulation models with our software. And the third part that we are doing at the university is research, of course. So we are currently developing a new data model where we can represent field and agent bell, agent phenomena in one data model and access language. Well, with PCRuster, we developed the air pollution model. We used existing air pollution models from a European project, the SK project. It's a known project where several air pollutants models are implemented. A model basically calculates average values for a year. And well, in short, it's a combination of predictive variables and these predictive maps of variables. They are based on basically land use information, population information, or traffic-related datasets. To give you an example, we have the PMT model. Well, we have three variables, three input datasets. You see them here. These are special datasets. And for example, population density means for each RASC cell, we look in a five kilometer buffer around it, how many people do live there. So that's how these regression models are set up. You already see the input maps and a bit of the output map on this side. So how does it look actually in PCRuster Python? Yeah, as I mentioned, we have the Python module. It's relatively straightforward. We just load in three datasets. So road length here is actually a special variable. Then you see the model implementation. And this is basically as a domain scientist just writing a process description and multiplication and addition, for example. That's calculated for every RASC cell. But it's a very process like a description of the model. And finally, you can just report this result to this. And that's what you can see here. We calculated six different models, national coverage for the Netherlands at a five meter resolution. So that's about 1.5 billion RASC cells for the Netherlands if you need to calculate buffers on that. That's quite some computational effort. On the right side you see a bit the level of the details, so verifying, zooming. We are not only interested in some kind of static data, we are also interested in dynamics. So a colleague of mine is busy with trying to get from measurement data the shift to a dynamic model. So what he did, he derived regression coefficients that are representing one-hour time steps. And this is a very preliminary result, but it just gives the idea that you can already see in the morning and evening you have an increase due to the traffic. We would like to have some kind of dynamics represented in this model. And as you can imagine, a five meter resolution with an hour time step for a year or more, is a result in lots of data. We need to think about how to solve that. We are not only interested in that, we are also busy with other types of questions. We have the field data, for example, so the pollution values or RASC cells. Well, it would be actually interesting how can we, for each RASC cell, figure out how we can assign this to a network, a road network, for example. Well, it's a lot of work, intersection, and figuring it out. But basically it works. We assign pollution values as edge weights. Why do we do this? Because we are still interested in activity-based modeling. So we would like, for example, if people walk along the road, we would like to estimate what's the exposure during a trip. Are they cycling in good route? Are there more healthy routes possible? That's what we use here, for example, to the city of Rotterdam. One is the shortest route and one is the healthiest route in blue. So you can see, we basically, in the end, could give advice that people should cycle, perhaps, some other routes to have less uptake. And this is basically what we are interested in, in field and network operations. So that's pretty the geo-computation part that we are now mainly busy with. But we also have the problem that, well, the end users, the health researchers or doctors potentially, they need to access these data. And we have quite some challenges there because usually, simulation models have huge calculation times, why a doctor usually has smaller data sets and does not want all the data. So we need to have a bit more faster response time. We might have different locations where we compute models, where we store models. We don't know exactly what a researcher wants to have, how many data sets he's asking for, different type of spatial temporal aggregations. So there's quite a variability and uncertainty regarding the requirements that we have to deal at the moment. And so actually, what we try to avoid at all costs is some kind of monolithic system. And that's why we have some kind of microservice architecture layout where every task gets a dedicated service, and in that way, we hope that we can be quite flexible to changing requirements. And this is just a very brief overview of the microservice, how it looks at the moment. On the top, you have the kind of querying part that can be, well, the health researcher is submitting a request to the portal service, which is more or less maintaining a bookkeeping service for all kinds of other services. The portal services is then arranging basically the task management, which tasks need to be executed, the order, and all these kind of really processing tasks. As mentioned, web services, if you tell health researchers about web services, they can't use it directly. So we are building a prototype web portal where the health researcher can really, you can see on the top, you can select a few pollutants, you can select different aggregation methods, you can upload your coordinate information, where you really want to have information for. And, well, you can see about the processing status of your request, and finally, you will get your data back. So to wrap it up, actually, we are building really high resolution spatial datasets, at least for the Netherlands, and we use it to expose the estimation on the entire population. We are looking at the field and network operations, all kinds of generic operations such that people can use them in other models as well. And we make our results actually accessible by web services. And it's a whole set of challenges that we are facing in this project. What computational is basically really intensive due to the space and time discretization. For us as PCROS to platform, it's a challenge because we are not developing one model, we are developing a generic modeling platform, so we need to provide flexibility for model developers, and that makes it a coordination challenge. And also, for health researchers, we can generate a lot of spatial temporal health data, but the question of analyzing and validating this data, this is also a remaining issue that we are now tackling in the second year of the project. If you are interested, well, yeah, PCROS, it's an open source software, you can test it for free. You can follow our course if you like. If you want to know more about the Healthy Urban Living project, well, I can give you the contact address so you can look it up there. And with that, it's basically in the end of my presentation, what I still want, like to do, is to give you an idea about our software. And here you now see the 24-hour time step model results for, we've tracked a bit of surrounding. So what I basically loaded in our visualization tool is a 24-map stack. You can see the cell value is now about 20. Oh, sorry, that's nitrogen dioxide. You can very easily contrast the browser through the map, so it's very interactive if the data sets are reasonably small. You can see the time series developments, and basically for every RAS result, you can just get these values. And as we have some kind of time series, we can also make some kind of animation over the time series, and you will see that you can see the temporal distribution of the pollutant in this case. So this is just an example for the functionality and the exploratory working of the PCVastor tool set. This is preliminary data, so in turn, we still need to work on the model and validation, so I would like to mention that. But with that, I thank you and I'm open for questions. Yes? No, we are not doing this. Our approach is really, we have a relatively simple model, which is really based on non-land use population and these kind of data sets. It's a land use regression model, a geo-statistical model basically. It's not really incorporating processes in that respect. Wind, climate, we might want to look at that. But our approach is to have a bit more straightforward model, but we calculate it on a national level because we are interested in really large extent and basically we would like to estimate the exposure of all Dutch people. And that's why process models with detailed process knowledge, they're even more computational and intensive and some of them are working on a much closer grid size, so that would not really fit our needs. So it's quite an experimental project, so we have a very important indication that we are going into a good direction. That's anyone best fit, is that nice model? It would be interesting to do. It's not an escape set of noise modeling. The noise modeling is not a part of the escape models that we're using at the moment. But yeah, it would be out of our interest to include noise or stress related to noise and perhaps we can derive it from our traffic data sets. But also noise modeling is quite a tricky business again. If there are straightforward approaches, I would like to hear them. You had near because skip all my search a few years ago, we'll make some models for that. Yes, yeah, there are some models on a small scale, really very detailed. It would be very interesting if you can just upscale those to national level somehow. I assume that's a separate research project on its own. This is adding another magnitude of computational time. It's not in there yet, but certainly especially if you're now looking at more dynamic variability, we need to have a more detailed look on uncertainty. I know the escape models, they are developed due to measurement data, they derived the net use regression models and that process they also had to look at that aspect. In our case, we are starting with computational efforts. We see if we can really represent with our five meter approach the model results and extending that uncertainty would be interesting. But we already on our cathedrals, the Dutch supercomputer, so we need more time there. Do you have any observations to compare with your results? Yes, we did it when we started with the project. The escape project, they really validated their model to measurements, to observations. How many observations do you have for how many stations? As far as I know, there are about 80 stations in the Netherlands. Not all are supporting all pollutants. But the model validation step was taken care of in escape. We took a smaller interest case where we built up our five meter model. We compared our results of the PCROSTA model to the escape model and we got a very good agreement. So, a five meter ROSTA cell, it's a good representation for this kind of problem at this model. Okay, thanks. Thank you for your attention.
developing an environmental modeling and information service in a project in Utrecht and project, Healthy Urban Living, which is a research project at Utrecht University, which usually have some very detailed knowledge about have very detailed knowledge about individual space time paths of people, for example. And patient and they want to have information about on. A bit the workflow of our environmental environmental models that are calculating these exposure or the distributing of this data to system at a particular time. We have a set of that environmental models can really build their Well, we are doing research on spatial temporal implementing algorithms. We are concurrent building simulation models with our software. And pollution model. We used existing air pollution models from a European project, the SK project. datasets. To give you an example, we have the PMT represented in this model. And as you can the health researchers or doctors potentially, brief overview of the microservice, how it looks really processing tasks. As mentioned, web of data sets. It's a land use regression model, a approach is to have a bit more straightforward model, but we calculate it on a national level exposure of all Dutch people. And that's why process models with detailed process knowledge, they're even more computational and intensive and not an escape set of noise modeling. The noise