Azimuth Project News
Posted by John Baez
I blog here and also on Azimuth. Here I tend to talk about pure math and mathematical physics. There I talk about the Azimuth Project.
Let me say a bit about how that’s been going. My original plans didn’t work as expected. But I joined forces with other people who came up with something pretty cool: a rather general software framework for scientific modeling, which explicitly uses abstractions such as categories and operads. Then we applied it to epidemiology.
This is the work of many people, so it’s hard to name them all, but I’ll talk about some.
The Azimuth Project started in 2010 when I moved to Singapore, had more time to think thanks to a great job at the Centre for Quantum Technologies, and decided to do something about climate change—or more broadly, the Anthropocene.
But do what? You can read my very first thoughts here. I rounded up some interested people, many of them programmers from outside academia, and we started a wiki to compile relevant scientific information. We thought a lot and wrote a lot about the huge problems confronting our civilization. We did some interesting stuff like making simple climate models—purely for educational purposes, not for trying to predict anything! We also recapitulated a network-based attempt to predict El Niños.
But it soon became clear to me that my own strengths lay not in climate science, and certainly not in leading a group of people outside academia trying to accomplish something practical. I got more and more interested in using category theory to study networks—and more generally in getting category theorists interested in practical things. I figured that category theory could really transform how we think about complex systems made of interacting parts.
I understand a bit about what motivates academics, and how to get them working on things. So, once I put my mind to it, I managed to speed up the trend toward applied category theory, which by now has its own annual conference. I’m on the steering committee of that conference, but luckily there are so many energetic people involved that I don’t have to do much. By now I can barely keep up with the progress in applied category theory, which is visible on the Category Theory Community Server, a forum set up by my student Christian Williams.
Indeed, part of how academia works is that if you get really good students, they go off and do things much better than you could do yourself!
For example, my former student Brendan Fong is an order of magnitude better at organizing things than I am. Together with Joshua Tan and Nina Otter he started the journal Compositionality, which has a strong emphasis on applied category theory, though it’s also open to other ways of thinking about compositionality (the study of how complex things can be assembled out of simpler parts). But even more importantly, Brendan now leads the Topos Institute, which brings together applied category theorists and people developing new technologies for the betterment of humanity. I’ll get back to that later.
Another amazingly successful student of mine is Nina Otter, now at Queen Mary University. At least I’ll gladly count her as a student, because she did a master’s thesis with me, on operads and the tree of life. But then she switched to topological data analysis, and she’s now using that to study weather regimes.
A big part of the Azimuth project’s focus on networks has always been studying Petri nets: a general formalism for studying chemical reactions, population biology and many other things.
A bunch of blog articles on Petri nets, written at the Centre for Quantum Technologies with Jacob Biamonte, eventually turned into our book Quantum Techniques for Stochastic Mechanics. But a new direction came when Brendan Fong developed decorated cospans, a general technique for studying open systems. My student Blake Pollard and I used these to study ‘open Petri nets’, which we called open reaction networks.
Later, my student Jade Master made the theory of open Petri nets really beautiful using structured cospans, a simplified version of Brendan’s decorated cospans developed by my student Kenny Courser.
Meanwhile something big was brewing. Two fresh PhDs named James Fairbanks and Evan Patterson came up with AlgebraicJulia, a software system that aims to “create novel approaches to scientific computing based on applied category theory”. And among many other things, they grabbed ahold of structured cospans and turned them into something you could write programs with!
In October 2020, together with Micah Halter, they used AlgebraicJulia to redo part of the UK’s main COVID model using open Petri nets. At the time I wrote:
This is a wonderful development! Micah Halter and Evan Patterson have taken my work on structured cospans with Kenny Courser and open Petri nets with Jade Master, together with Joachim Kock’s whole-grain Petri nets, and turned them into a practical software tool!
Then they used that to build a tool for ‘compositional’ modeling of the spread of infectious disease. By ‘compositional’, I mean that they make it easy to build more complex models by sticking together smaller, simpler models.
Even better, they’ve illustrated the use of this tool by rebuilding part of the model that the UK has been using to make policy decisions about COVID19.
All this software was written in the programming language Julia.
I had expected structured cospans to be useful in programming and modeling, but I didn’t expect it to happen so fast!
Here’s a video about these ideas, from 2020:
- James Fairbanks, AlgebraicJulia: Applied Category Theory in Julia, JuliaCon 2020.
Later Evan got a job at the Topos Institute and this work blossomed into the following paper:
- Sophie Libkind, Andrew Baas, Micah Halter, Evan Patterson and James Fairbanks, An algebraic framework for structured epidemic modeling, Philosophical Transactions of the Royal Society A 380 (2022), 20210309.
I should have blogged about this, but things are happening so fast I never got around to it! This illustrates why I’ve lost interest in the Azimuth Project as originally formulated, with this blog as the main communication hub and the wiki as the information depot: academics with their own modes of communication have been pushing things forward in their own ways too fast for me to blog about it all!
Another example: last summer in Buffalo I helped mentor a bunch of students at a program on applied category theory run by the American Mathematical Society. This led to two very nice papers on open Petri nets and related open networks:
Rebekah Aduddell, James Fairbanks, Amit Kumar, Pablo S. Ocal, Evan Patterson and Brandon T. Shapiro, A compositional account of motifs, mechanisms, and dynamics in biochemical regulatory networks.
Benjamin Merlin Bumpus, Sophie Libkind, Jordy Lopez Garcia, Layla Sorkatti and Samuel Tenka, Additive invariants of open Petri nets.
I want to blog about these, and I will soon!
But at the same time, the use of category theory in epidemiological modeling keeps growing. The early work attracted the attention of a bunch of actual epidemiologists, notably my old grad school pal Nate Osgood, who now works at the University of Saskatchewan, both in computer science and also the department of community health and epidemiology. He helps the government of Canada run its main COVID models! This was a wonderful coincidence, made even sweeter by the fact that Nate was hankering to apply category theory to these tasks.
Nate explained that for modeling disease, Petri nets are less popular than another style of diagram, called ‘stock-flow diagrams’. But one can deal with open stock-flow diagrams using the same category-theoretic tricks that work for Petri nets: decorated or structured cospans. We worked this out together with Evan Patterson, Nate’s grad student Xiaoyan Li, and Sophie Libkind at the Topos Institute. And these folks—not me—converted these ideas into AlgebraicJulia code for making big models of epidemic disease out of smaller parts!
We wrote about it here:
- John Baez, Xiaoyan Li, Sophie Libkind, Nathaniel D. Osgood and Evan Patterson, Compositional modeling with stock and flow diagrams, to appear in the proceedings of Applied Category Theory 2022.
Alas, I’ve been too busy to properly blog about this paper, but I’ve given a bunch of talks about it, and you can see some on YouTube. The easiest is probably this one:
- John Baez, Category theory in epidemiology, Africa Mathematics Seminar, 2022.
Since then we’ve made a huge amount of progress, due largely to Nate and Xiaoyan’s enthusiasm for converting abstract ideas into practical tools for epidemiologists. The current state of the art is pretty well reflected in this paper:
- John Baez, Xiaoyan Li, Sophie Libkind, Nathaniel D. Osgood and Eric Redekopp, A categorical framework for modeling with stock and flow diagrams.
In particular, Nate’s student Eric Redekopp built a graphical user interface for the software, so epidemiologists knowing nothing of category theory or the language Julia can collaboratively build disease models on their web browsers!
So, a lot of my energy that originally went into the Azimuth Project has, by a series of unpredictable events, become focused on the project of applied category theory, with the most practical application for me currently being disease models.
What happened to climate change? Well, a lot of these modeling methodologies could be applied to power grids or world economic models. In fact stock-flow diagrams were first developed for economics and business in James Forrester’s book Industrial Dynamics, and they were later used in the famous Limits to Growth model of the world economy and ecology, called World3. So there is a lot to do in this direction. But—I’ve realized—it would require finding an energetic expert who is willing to learn some category theory and teach me (or some other applied category theorist) what they know.
For now, a more instantly attractive option is working with someone I’ve known since I was a postdoc: Minhyong Kim. He’s now head of the International Center of Mathematical Sciences, and he’s dreamt up a project called Mathematics for Humanity. This will fund research workshops, conferences and courses in these areas:
A. Integrating the global research community
B. Mathematical challenges for humanity
C. Global history of mathematics
I’m hoping to coax people to run a workshop on mathematical epidemiology, but also get people together to tackle many other mathematical challenges for humanity. Minhyong has listed some examples:
The deadline to apply for funding is now June 1st, so if you know anyone who might be interested, please tell them about this—and tell me about them!