Inspiration
The idea was to develop an emidemics-spread application , which, given the origin of a disease in London and the location of the user application would compute the distance between these two locations. According to the disease spread rate, several disease parameters, health-related characteristics of the individual(age, sex, obesity , chronic illnesses, etc.) would compute a therapeutic recommendation (i.e go to hospital , take medication etc.l) However, since the computation took a lot of compilation time, we decided to scale down to the population size of the Hackathon.
What it does
The epidemic-hack MATLAB code simulates a network of people in all the 625 wards of Greater London and then converts each of the 625 networks in the equivalent adjacency matrix representation. The code then combines the 625 matrices in a big matrix that covers the Greater London area. The user is prompted with his location as well as the location of a disease spread origin throughout London and the using the adjacency matrix network representation , the code computes the time the disease needs to spread to the user (considering disease-related spread time data). This is done by consequencty probing the adjacency matrix to check for edge existence (1 for link,0 for no link) until the program has reached the coordinates of the user location. This is used to compute the time the disease takes to reach the user app. Given other parameters (e.g. user sex, age, obesity , chronic illnesses) , nearby hospitals , collection points, pharmacies, the application would compute a recommended course of action. However and since the calculation of 625 adjacency matrices with 14,000x14,000 elements (14,000 = avg. population of a ward) required big computational power (complexity O(n^2)) and a long compilation time, the adjacency matrix was reduced to square the size of the participants of IC_Hack_18 . The final application generates a network of IC_Hack participants (organised in team clusters(4 people/team)) and its equivalent adjacency matrix representation. After that , the disease will start at a user-specified department of Imperial College and the algorithm will compute the final number of infected people in the Hack and whether the user is infected, as well as the significance of the disease in the user’s health/physiology, generating ultimately a recommended course of action for the user.
How I built it
Challenges I ran into
Using the MATLAB Distributed Computing Server to divide the workload in computer clusters, consisting of Azure-based recruited Virtual Machines with user-defined computational power(CPU) and memory. The MathWorks related software was limited to US - users and the recruitment of VMs from Microsoft Azure was prohibitively expensive, with Microsoft charging above 100p for an average VM. Converting the MATLAB code in python
Log in or sign up for Devpost to join the conversation.