+ All Categories
Home > Documents > The Global Epidemic Simulator Wes Hinsley 1, Pavlo Minayev 1 Stephen Emmott 2, Neil Ferguson 1 1 MRC...

The Global Epidemic Simulator Wes Hinsley 1, Pavlo Minayev 1 Stephen Emmott 2, Neil Ferguson 1 1 MRC...

Date post: 25-Dec-2015
Category:
Upload: evan-ferguson
View: 225 times
Download: 1 times
Share this document with a friend

If you can't read please download the document

Transcript
  • Slide 1
  • The Global Epidemic Simulator Wes Hinsley 1, Pavlo Minayev 1 Stephen Emmott 2, Neil Ferguson 1 1 MRC Centre for Outbreak Analysis and Modelling, Imperial College London 2 Microsoft Research, Cambridge
  • Slide 2
  • Aims: To simulate the emergence and spread of an epidemic by explicitly modelling the worlds 6.5 billion people. A platform for simulating any directly transmitted pathogen e.g. influenza, smallpox, or SARS.
  • Slide 3
  • Previous Work Strategies for containing an emerging influenza pandemic in Southeast Asia, (Ferguson et al) Nature 437, Sep 2005 Strategies for mitigating an influenza pandemic (Ferguson et al), Nature 442, July 2006
  • Slide 4
  • Challenges: Computational Performance and Memory Data availability Algorithmic Complexity Statistical Validation or Justification
  • Slide 5
  • Design Create a synthetic population, distributed evenly across different computational nodes. Overlay the world with a grid of patches, and calculate probabilities that people contact each other randomly, from patch-to-patch (rejection/acceptance algorithm) Consider other reasons people may contact each other: households, schools, workplaces, long range travel.
  • Slide 6
  • The Landscan Dataset A grid of 43200x20880 points, (longitude,latitude) Each point is number of people in a region of around 1km 2 3.5 Gb, but mostly sparse so reducible to 600Mb or less if you need
  • Slide 7
  • Decomposition Tool Cutting the world into similarly sized sections is not trivial. Writing an data decomposition application made the process (slightly) easier.
  • Slide 8
  • Decomposition Tool This is how the Europe Node sees the world. Yellow = local (where individuals are stored).Blue = remote patches.
  • Slide 9
  • Decomposition Tool In more detail Yellow (local) squares are always 20x20 landscan cells. Blue (remote) squares are usually 320x320 landscan cells, but
  • Slide 10
  • Decomposition Tool remote squares can be divided further, if the placing of a border requires them to be. Borders are aligned to a grid, resolution 20x20 landscan cells.
  • Slide 11
  • Decomposition Tool Different nodes see the world in differently. But every node knows for every geographical location, which computer has the detailed view.
  • Slide 12
  • Patch k (20x20 landscan cells) Simulation Initialisation Although we assign individuals to ~20km patches, we preserve Landscan resolution by assigning more precise longitude and latitude to individuals.
  • Slide 13
  • Population N k D k,k Patch k Patch k For each k q k,k = F(D k,k )N k Z k where F is kernel function Z k is normalisation term Main loop: For each infected individual in patch k Find poisson(R 0 ) contacts, Each contact: sample q k,k Pick random individual in k Use ratio of F(D k,k ) and F(r i,j ) to adjust for q k,k being an over-estimate. Population N k r i,j Contact Acceptance/Rejection Algorithm
  • Slide 14
  • Early Results
  • Slide 15
  • For R 0 =2.0, incubation ~2 days, infectious ~3 days. Seeded in South America
  • Slide 16
  • Early Results For R 0 =2.0, incubation ~2 days, infectious ~3 days. Seeded in South America As above, but seeded in Eastern USA
  • Slide 17
  • Early Results For R 0 =2.0, incubation ~2 days, infectious ~3 days, Kernel function adjusted to be less local
  • Slide 18
  • Internode Communication When contacts are on another node:- Acquire extra local contacts, assuming all remote contacts are rejected. Send all requests for contact in one message (MPI). Package message together to reduce overhead. One message per timestep, between each node. Individual i in patch k Individual j in patch k M CONTACT_REQUEST M ACCEPT_CONTACT If accepted, mark j as contact of i Update contacts of i, if remote contacts made (inc. infect info)
  • Slide 19
  • Community Contacts Across Nodes
  • Slide 20
  • Results of first global run Total infected 4.3 billion. (Zero in America!) Use a less local kernel? Or, global contact-making doesnt always follow a gravity-based model need other ways of travelling long distances.
  • Slide 21
  • Beyond Community Contacts Representing travel:- WTO Country Border Data. Annual border crossings by origin/nationality Air and ground travel, and some duration data. USA is one entry. Some duplication/confusion. TFS Airline Data. Annual airport-to-airport passenger flows No record of final destination. Others Expensive, or sparse.
  • Slide 22
  • Time spent in local community Individual is infectedInfected individual recovers Time spent travelling Loc. Community Travel Loc. Com. Travel Loc. Community Representing Journeys If we also can sample journey duration, then we could construct some simple travel plans for individuals for both infected, and susceptible. Loc. Com. Travel Infected Individual makes contacts
  • Slide 23
  • Build extendable origin-destination matrix structure for flights, ground borders and any new data we might acquire. Add households, workplaces and schools, as demonstrated in previous work. Consider the properties of real diseases in more detail. Future Work

Recommended