/ Research / Planetary Computing

Summary. Planetary computing is our research into the systems required to handle the ingestion, transformation, analysis and publication of global data products for furthering environmental science and enabling better informed policy-making. We apply computer science to problem domains such as forest carbon and biodiversity preservation, and design solutions that can scalably processing geospatial data that build trust in the results via traceability and reproducibility. Key problems include how to handle continuously changing datasets that are often collected across decades and require careful access and version control.

"Planetary computing" originated as a term back in 2020 when a merry band of us from Computer Science (Srinivasan Keshav and me, later joined by Sadiq Jaffer, Patrick Ferris, Michael Dales and bigger EEG group now) began working on Trusted Carbon Credits and implementing the large-scale computing infrastructure required for processing remote sensing data. We wrote up our thoughts in Planetary computing for data-driven environmental policy-making.

The PROPL 2024 invitation poster

Background. Then in early 2024, Dominic Orchard and I decided to find others interested in the problem domain, and organised the first "Programming for the Planet" (PROPL) workshop in London, co-located with POPL2024. This turned out to be a fully subscribed event, with chairs having to be brought in at one point for some of the more popular talks! Either way, it convinced us that there's a genuine momentum and need for planetary computing research as a distinct discipline.

Projects. I'm working on various systems involved with the ingestion, processing, analysis and publication of global geospatial data products. To break them down:

There's a lot more to say about ongoing projects, but the overall message is: if you're interested in contributing to some part of the planetary computing ecosystem, either as a collaborator or a student: get in touch!

Related Reading

Cyrus Omar and his team over at Hazel language have also been working on a similar problem domain, and we're looking forward to collaborating with them. Read Toward a Live, Rich, Composable, and Collaborative Planetary Compute Engine here or watch their PROPL 2024 talk:

I've also given several talks on planetary computing, including a keynote at ICFP 2023 and at LambdaDays. Both are linked below, but the latter is the most recent one.

Relevant Ideas

Relevant Papers

[»] Modularizing Reasoning about AI Capabilities via Abstract Dijkstra Monads
Cyrus Omar, Patrick Ferris and Anil Madhavapeddy
In the 12th ACM SIGPLAN Workshop on Higher-Order Programming with Effects (HOPE), Sep 2024
PDF   URL   BibTeX   Slides  

[»] Planetary computing for data-driven environmental policy-making
Patrick Ferris, Michael Dales, Sadiq Jaffer, Amelia Holcomb, Eleanor Toye Scott, Thomas Swinfield, Alison Eyres, Andrew Balmford, David A Coomes, Srinivasan Keshav and Anil Madhavapeddy
Working paper at arXiv, Mar 2024
URL   BibTeX   DOI  

[»] Uncertainty at scale: how CS hinders climate research
Patrick Ferris, Michael Dales, Thomas Swinfield, Sadiq Jaffer, Srinivasan Keshav and Anil Madhavapeddy
Working paper at Undone Computer Science, Feb 2024
PDF   URL   BibTeX  

[»] Homogeneous Builds with OBuilder and OCaml
Tim McGilchrist, David Allsopp, Patrick Ferris, Antonin Décimo, Thomas Leonard, Anil Madhavapeddy and Kate Deplaix
In proceedings of the 2022 OCaml Users and Developers Workshop, Sep 2022
URL   BibTeX  

Relevant Talks


Programming for the Planet on 27th May 2024. Planetary computing keynote at LambdaDays 2024, featuring Lambda Man. Part of the Planetary Computing project.

BBC report on the new Cambridge supercomputer ("Dawn") announced at the 2023 AI Summit on 2nd Nov 2023. An unexpected appearance on the BBC talking about a new supercomputer. Part of the Planetary Computing project.

Functional Programming for the Planet on 5th Sep 2023. Opening keynote at ICFP 2023 in Seattle. Part of the Planetary Computing project.

News Updates

Sep 2024. «» Paper at HOPE 2024 on agentic specifications using F* / «» Discuss the Bastion paper.
May 2024. «» Keynoted at Lambda Days on Programming for the Planet.
Mar 2024. «» Revision of planetary computing preprint.
Feb 2024. «» Paper on uncertainty in climate science in Undone CS.
Nov 2023. «» On the BBC briefly about the Dawn supercomputer.
Sep 2023. «» Keynoted at ICFP 2023 on Functional Programming for the Planet.
Mar 2023. «» Preprint of planetary computing paper.
Sep 2022. «» Paper on our incremental computation DSL ocurrent presented in OCaml Workshop 2022.