Background
The world’s gone nuts and we all need to stay home until it stops. Unfortunately, this isn't possible for everyone, there are still essential services that are required to keep society functioning and maintain something resembling an economy. Also, we still need to eat, get medical care and keep ourselves from generally losing the plot.
We all understand there is a virus running rampant across the planet and one of the major issues is asymptomatic transmission. People who are otherwise completely healthy can give others the disease. A modern case of Typhoid Mary.
Right now, a valuable piece of information we could add to the epidemiological knowledge body is who has been in contact with whom. If we create an app that people can install on their phones that reports their locations to a graph database we can build a picture of transmission paths. Once we have that information it would be a simple matter to alert app users if they've potentially been exposed and allow us to share information and learnings with medical professionals.
Goals
Create a database that can store a record of people's movements on a large scale and be able to see interactions with positive cases. Below is a snapshot of the Australian COVID-19 cases by state taken on the 27th of March, 2020. While the 'Overseas acquired' and the 'Locally acquired - contact of a confirmed case' does not require any additional knowledge it is the cases deemed 'Locally acquired - no known link' and 'Under investigation' that this project can assist. As the case numbers grow this job, by definition, becomes exponentially more difficult. This database aims to simplify the process.
Initial questions this Graph is expected to answer
Health Officials
- Who has been in proximity to a positive patient?
- Who have they been in contact with?
- What locations have been impacted?
- Can we detect any asymptomatic carriers?
Users
- Have I been near a positive case?
- Are there locations I should avoid?
Design
This is an initial prototype of the scheme.
- An activity is user(s) at a location for a time period. (I am considering a number of options for how this will work)
- A time tree currently appears to be a good option but not sure yet.
- Storing granular enough geographical info to identifying people in close proximity but separated (ie. different apartments, floors) while not swamping the system tracking people moving within their own houses.
- Scaling based on number of users, duration of usage.