Liam D. O'Brien

Projects

Research, code, and a few expository papers.

Research

New in 2026SymmetryImage analysis

A high-throughput tool for quantifying symmetry in image datasets

Biological symmetry is usually reduced to a discrete, subjective label, even though real organisms are symmetric by degrees. With Punit Gandhi, Maria-Veronica Ciocanel, and Adriana Dawes, I built a user-friendly computational pipeline that measures symmetry as a continuous variable using transformation information. We prove the measure is invariant, equivariant, and Lipschitz continuous under translation, rotation, reflection, and rescaling, which means it can be applied across heterogeneous image datasets without manual landmarking or alignment.

Published in the Bulletin of Mathematical Biology. Read the paper (free access) →   Code →

A flower image under rotation, reflection, and rescaling, with the corresponding transformation information curves for rotations and reflections
Transformation information is equivariant. Rotating, reflecting, or rescaling a flower image (top row) shifts or rescales its symmetry curves in a predictable way (bottom rows), so symmetry can be compared across images without aligning them first.
Quantitative Systems PharmacologyScientific machine learning

Correcting incomplete QSP models with universal differential equations

In summer 2026 I was a quantitative systems pharmacology (QSP) intern at AstraZeneca. QSP models are mechanistic differential equation models of how a drug acts in the body, and they are often built with pieces of the biology missing or misspecified. I applied universal differential equations (UDEs) and sparse identification of nonlinear dynamics (SINDy) to learn the missing terms from data and recover an interpretable, corrected model, which improved both mechanistic parameter recovery and predictions.

On synthetic data from the Simeoni tumor growth model, the corrected model reduced the error in the EC50 and Emax drug-effect parameters from 18.74% to 11.81% compared to the misspecified model. It also fixed two clinically relevant mistakes of the misspecified model: an overestimate of tumor growth inhibition (above 80% TGI at day 30 on a 2 mg weekly dose) and a 3-fold underestimate of the minimum weekly dose needed to reach 80% TGI.

The code and data from this project are not public.

Pattern formationBifurcation theory

Structural causes of pattern formation

Pattern formation is a hallmark of developmental biology, where cells within a tissue or organism differentiate in a precise spatial arrangement to form complex patterns. In recent work, we show that patterns of cell fates depend on both the cell-communication network and the chemical signals within each cell. We hope to generalize this work to pinpoint molecular causes of pattern failure.

Numerical experiments on GitHub →

Example of a cell fate pattern forming in a tissue
An example of a cell fate pattern that can form in a tissue.
SymmetryTuring patterns

Constrained changes in approximate symmetries of a Turing pattern

Symmetry is ubiquitous in biology and is an important predictor of survivability, fecundity, and evolvability. Although biological symmetry is often intuitive, it doesn't fit the idealized definitions of symmetry used in mathematics. Transformation Information, introduced by Gandhi et al. (2021), is a useful tool for measuring approximate symmetries in biology. I tracked approximate symmetries of a Turing PDE over time and found that the ways symmetries can change are constrained.

More detail is in my SMB 2023 poster. Related work by my advisor, Dr. Adriana T. Dawes, and collaborators: Characterizing symmetry transitions in systems with dynamic morphology.

Transformation Information code on GitHub →

Steady state of a Turing PDE beside its transformation information
Left: steady state of the Turing PDE. Right: its transformation information, which reveals the approximate symmetries.
Machine learningHematopoiesis

Modeling hematopoiesis with machine learning

My research at UC Irvine in Dr. Qing Nie's lab group worked toward using machine learning to model cell fate. In particular, I wanted to discover whether a graph neural ODE could mimic a stochastic model of hematopoiesis. The code covers both creating toy datasets from a hematopoiesis model and fitting them with neural ODEs and graph neural ODEs.

gnode-cell-communication →   experimenting-with-gnodes →

A neural ODE fit to a stochastic model of hematopoiesis
A neural ODE's fit to a stochastic model of hematopoiesis.

Publications

A High Throughput and User-Friendly Computational Tool for Quantifying and Visualizing Symmetry Variation in Image Datasets
Liam D. O'Brien, Punit Gandhi, Maria-Veronica Ciocanel, and Adriana T. Dawes
Bulletin of Mathematical Biology 88, 11 (2026). doi:10.1007/s11538-026-01754-9, free full text
Structural causes of pattern formation and loss through model-independent bifurcation analysis
Liam D. O'Brien and Adriana T. Dawes
Journal of Mathematical Biology 91, 6 (2025). doi:10.1007/s00285-025-02296-9, preprint

Expository writing

Two papers I wrote as an undergraduate. I am no expert on either topic, but I find both fascinating.

Intro to fractals, Barnsley's Collage Theorem, and image compression

Assuming only undergraduate real analysis, this paper builds the theory required to understand Barnsley's Collage Theorem, which lets us approximate extremely complex shapes with only a few functions. It closes with a brief discussion of how the theorem can be used for image compression.

Read the paper (PDF)

A fractal leaf generated by three linear functions
A fractal leaf defined by just three linear functions.

A history of sphere packing

An accessible account of the search for optimal sphere packings in n dimensions. I give the proof of the optimal packing in two dimensions, then discuss the intuition behind Thomas Hales's proof in three dimensions and Maryna Viazovska's results in dimensions 8 and 24.

Read the paper (PDF)

Face-centered cubic sphere packing
The optimal sphere packing in three dimensions.

Code

Public repositories on GitHub.

cell-pattern-validation

Numerical experiments to validate our theoretical predictions about structural causes of pattern formation.

MATLAB

TransInfo

Code to apply transformation information to image data.

MATLAB