Skip to content

Modelling

Change the problem: 18XX token placement

It's surprising how often you can translate one problem into another problem, for which there are known solutions and/or algorithms. For example, with Green's theorem you can choose between solving a line integral or a double integral, and select whichever option is simplest to solve. The necessary ingredients are:

  1. Being aware of the equivalence between two problems; and
  2. Knowing how to solve (at least) one of these problems.

One example that I found (by accident) was that preserving the connectivity of all placed tokens when upgrading a tile in an 18XX board game is equivalent to solving a maximum flow problem.

Model answers or trivial pursuits?

I've had a number of occasions to use my stochastic SIR demo since I first tested it out on a Melbourne Maths and Science Meetup audience, including last year's Communicable Diseases Control Conference in Canberra. I used it most recently in our school seminar on Wednesday 11 March, for which Jodie McVernon chose the title Model answers or trivial pursuits? Using epidemiological models to support COVID-19 preparedness and response. Jodie, Freya Shearer, and I talked about collaborative modelling efforts to better understand the transmissibility and severity of COVID-19, and how we had been using models to help identify effective and proportionate measures for health sector and whole-of-society responses. What a way to welcome our new head of school, Nancy Baxter!

There's been a huge amount of work done to date, by an ever-expanding network of collaborators. It has been genuinely rewarding to play a role in national and international efforts to respond to COVID-19, but it's also been extremely stressful and exhausting. And it's been terrifying to be intimately aware that my work is feeding into decision-making at the highest levels of government in the midst of an emerging global crisis. I am keenly looking forward to the day where our physical distancing measures have been relaxed and, in the company of close friends, I can look back at this time as something that happened to all of us.

Melbourne Maths and Science Meetup

Last night I gave a talk about Mathematical models of infectious disease transmission (slides) at the Melbourne Maths and Science Meetup. I used my stochastic SIR demo to simulate disease outbreaks amongst the audience — each audience member was assigned a unique number and had to stand up while they were infectious — and it's definitely something I'd like to try in a classroom setting. I was asked very good and challenging questions throughout the talk, and on several occasions my reply was "that's a great question, and I'll talk about that a bit later on". It was a fun night and a chance to meet some great people! Now I'm looking forward to being in the audience at their next event.

Compartmental models in Rust

I've been learning a bit of Rust in the past few weeks, mostly by writing some basic SIR-type models (both as ODE systems, and as continuous-time and discrete-time Markov chains). It takes most (maybe all) of the things that I like about OCaml and adds more great features and safety guarantees, thanks to its ownership model and lifetimes. It's also very fast (no garbage collector, zero-cost abstractions) and has fantastic tooling, although compilation times can be very long, and package ("crate") availability can be very hit-or-miss. I've enjoyed it enough that I'm looking forward to writing more Rust code in the future. Although I've no plans to rewrite pypfilt or epifx in Rust any time soon!

Model selection for seasonal influenza forecasting

Two firsts in one: "Model selection for seasonal influenza forecasting" is Alex's first first-author and my first last-author paper. It will appear in an upcoming issue of Infectious Disease Modelling, a new open access journal with a focus on the interface between mathematical modelling, data analysis, and public health decision support.

This paper presents a likelihood-based method for selecting models that best predict future data (when conditioned on past data), and uses it to evaluate the predictive skill of disease transmission models that incorporate various features, such as inhomogeneous population mixing and climatic effects on transmission. I won't say any more here; if you're interested, read the paper!

The source code used to generate all of the results presented in this manuscript is available under the BSD 3-Clause license.

Interactive SEIR model

Originally prepared as a simple demo for 2016 Open Day, this interactive model allows the viewer to explore how a variety of epidemiological parameters affect the size and duration of an infectious disease epidemic, such as:

  • The basic reproduction number \(\left(R_0\right)\), the average number of persons that a single infectious individual will infect in an entirely susceptible population;
  • The delay between being infected and becoming infectious \(\left(\frac{1}{\alpha}\right)\);
  • The duration for which an individual is infectious \(\left(\frac{1}{\gamma}\right)\);
  • The duration for which an individual is protected from re-infection \(\left(\frac{1}{\sigma}\right)\);
  • The degree to which individuals mix inhomogeneously \(\left(\eta\right)\); and
  • The proportion of the population \(S(0)\) that is initially susceptible.

This is a deterministic SEIR meta-population model, where each individual in the population is either susceptible to infection, has been exposed to the pathogen, has progressed to being infectious, or has recovered from infection and has (temporary or permanent) protection from reinfection.

The source code is available under the BSD 3-Clause license.

Virtual model environment

Thanks to Daniel Hurley from the University of Melbourne Systems Biology Laboratory, the whole-kidney model that I produced with S. Randall Thomas is now available as a virtual environment that is straightforward to install and get running.

  1. Ensure that Git, Vagrant and VirtualBox are installed; then
  2. Run the following commands in a terminal:

    git clone https://github.com/uomsystemsbiology/rgm_kidney_vagrant.git
    cd rgm_kidney_vagrant
    vagrant up
    

This will open a virtual machine that includes the pre-compiled model executable, allowing you to run model simulations and reproduce any of our manuscript figures by double-clicking on a desktop icon!

Pressure natriuresis in diuresis and antidiuresis

"Dominant factors that govern pressure natriuresis in diuresis and antidiuresis: a mathematical model" (a collaboration with Anita T. Layton) has been accepted by AJP Renal and is now available online in advance of final publication.

Building on observations in my previous modelling study, we investigated how pressure natriuresis—in both diuresis and antidiuresis—can be influenced by changes in medullary blood flow autoregulation and by inhibition of transport in the proximal convoluted tubule (PCT). We found that inhibited reabsorption in the model PCT (to degrees consistent with experimental measurements) is sufficient to stimulate a pressure natriuresis.

The challenge here is that there is insufficient experimental data to quantify the pressure-dependent reabsorption inhibition in the PCT, but it is precisely this response that appears to play the single largest role in driving pressure natriuresis. Our modelling study establishes a reasonable benchmark for this quantitative relationship, which can be applied to future whole-kidney models.

Hormonal regulation of salt and water excretion

My article "Hormonal regulation of salt and water excretion: a mathematical model of whole-kidney function and pressure-natriuresis" (a collaboration with S. Randall Thomas), has been published in AJP Renal. It was also selected as the subject for an Editorial Focus essay, "Advancement in integrated models of renal function: closing the gap between simulation and real life", written by Branko Braam.

We present a whole-kidney model that incorporates glomerular and tubular function, differentiates cortical and medullary function, and describes vascular and reabsorptive characteristics of the kidney. Model simulations explore the regulation of renal function by aldosterone, angiotensin II, and antidiuretic hormone (ADH), and also the inhibition of sodium reabsorption in response to the administration of a thiazide and of amiloride. This model of integrated renal function is quite successful in simulating renal function, although there are of course several caveats. The article also provides a broad survey of both renal modelling and the experimental literature.

In addition to the manuscript itself, interactive versions of a key figure—a comparison of model excretion rates against data from a number of experimental studies of acute pressure natriuresis in the rat—allow the viewer to examine each data series in isolation and refer back to the original articles.