2026-08-14 –, Muschel — N2 All times in Europe/Berlin
Infectious disease models that integrate multiple data sources provide better evidence for outbreak response than chains of separate models, but building them is slow and requires expertise across domains.
Composable modelling, where validated components combine into joint models that properly propagate uncertainty, addresses this but requires an ecosystem of reusable infectious disease model components.
We believe Julia is the best language for this ecosystem due to its type system, multiple dispatch, automatic differentiation support, and existing scientific computing infrastructure (SciML, Turing.jl, Distributions.jl), which provide the foundations composable modelling needs.
In this talk, we present the EpiAware roadmap for creating and sustaining that ecosystem, our current progress, and our questions for the Julia community.
In R, we have built the epinowcast ecosystem (packages, community forum, seminar series) and developed several other widely used packages including EpiNow2 and scoringutils.
We want to create something equivalent in Julia: a domain-focused ecosystem in the mould of SciML or Turing.jl, with the community infrastructure of rOpenSci and the domain specificity of SpeedyWeather.jl.
So far, we have CensoredDistributions.jl, which handles common biases in epidemiological delay distributions, and an R interface prototype (EpiAwareR).
We initially plan to implement packages covering distribution extensions for epidemiological use, delay and generation time estimation, disease dynamics components, and forecast evaluation, alongside a centralised documentation site.
At the package level, we need to answer questions about what makes a good Julia package in our ecosystem: consistent documentation via DocStringExtensions and DocumenterCiterepress, robust testing with Aqua.jl and JET.jl, automatic differentiation backend testing via DifferentiationInterfaceTest, and where we need package extensions (e.g. for Turing.jl integration).
At the ecosystem level, we need to understand how to manage releases so that package versions work together, how to run reverse dependency checks before publishing, how to set up shared CI and centralised documentation across many packages, and how to help users understand which automatic differentiation backends are compatible when they combine multiple packages.
I am an Assistant Professor at the London School of Hygiene & Tropical Medicine. I did my PhD in the optimal usage of the BCG vaccine, transitioning to work on real-time modelling of infectious disease outbreaks on the 3rd of January 2020. Four days later, I switched to work on what was then known as 2019-NCoV. I did early work on the size and scale of the initial outbreak, tracking transmissions in different countries, and exploring the potential role of different interventions. Throughout the pandemic, I ran a dashboard that was used by over a million people. I also provided estimates, forecasts, and analyses weekly to the UK government advisory bodies. I developed the tools and methods we used into open source software and these were used by upwards of 30 public health agencies around the world. I have continued to work in this area with a focus on improving tools and methods used both in research and in public health practice. I have recently transitioned to Julia for my work and am exploring how to propogate Julia based tools to the users of our current tooling and to the wider infectious disease modelling community.