Dr. William J. Cunningham
Will Cunningham
Research Scientist
Will Cunningham is a research scientist at Agnostiq in Toronto, Ontario. He works on quantum optimization and machine learning algorithms for NISQ computers as well as classical GPU algorithms for traditional HPC environments.

Will's research centers around the study of scalable algorithms for the simulation of discrete or mixed-binary systems. He draws on methods from a variety of subjects, including machine learning and artificial intelligence, quantum gravity and cosmology, and discrete geometry. He has more recently begun investigating how near-term quantum computers may be able to help us understand and model optimization problems.
Agnostiq (2021 — )
Quantum Algorithms Researcher
Research Focus: Quantum Optimization and Learning Algorithms
Perimeter Institute for Theoretical Physics (2018 — 2021)
Postdoctoral Fellow
Research Focus: Discretuum to Continuum Initiative
Northeastern University (2013 — 2018)
Ph.D. Physics, M.S. Physics
Dissertation: High Performance Algorithms for Quantum Gravity and Cosmology
Rensselaer Polytechnic Institute (2009 — 2013)
B.S. Physics
Concentrations: Lattice QCD, Astrophysics
George Mason High School (2005 — 2009)
International Baccalaureate Diploma
Concentration: Chemistry
Scalable Graph Algorithms
"Graphs are used to model the relationships between objects or data. Given the widespread availability of CPU and GPU cores in modern computer clusters, we focus on developing novel algorithms which utilize cutting-edge hardware to the fullest extent. Efficient algorithms allows us to model larger systems in shorter times, improve the accuracy of results, predict the arrival of new data, and better identify hidden patterns in experimental data."
Read more here.
Machine Learning and Artificial Intelligence
"Machine learning and artificial intelligence have become increasingly useful tools for identifying patterns and understanding dynamics in discrete data. We investigate the appliations of these tools to theoretical physics, with a focus on self-assembly of spacetime during the early universe. We also identify connections to models of quantum random walks and quantum Bayesian networks which may be implemented on near-term quantum computers."
Read more here.
Quantum Gravity and Cosmology
"There exist a variety of promising approaches to quantum gravity which involve a discretized model of spacetime. In causal set theory, we study the dynamics of partial orders which represent proto-spacetimes in order to understand how dimension and topology play a role in the gravitational path integral. In the path integral approach to loop quantum gravity, spin foams are coarse-grained in order to identify critical phenomena and continuum limits. And in string theory, we explore the string landscape, represented by a network of geometries, in order to identify selection mechanisms in a multiverse cosmology."
Read more here.
Discrete Geometry
"The emergence of smooth, continuous space from a limiting sequence of discrete topological objects is called geometrogenesis. We have presented the first proof that there exists a graph curvature which converges to manifold curvature, and further investigated under what conditions this can be measured on the computer. We also measure both qualitatively and quantitatively the boundary geometry of Lorentzian manifolds, with a focus on causally non-convex regions."
Read more here.
"Crack the Code" by Stephanie Keating, Perimeter Institute (01/2021)
"Theoretical physics is progressing beyond the blackboard as more researchers develop scientific computing tools and software." Read more here.
"Northeastern team uses string theory to explain the fundamental nature of the universe" by Laura Castañón, Northeastern University (03/2019)
"Imagine a boiling pot of water, with bubbles perpetually forming and rising to the top. Imagine that within each bubble, there is a universe. And for each of these universes, the laws of physics are slightly different." Read more here. Read featured paper here.
Curvature: From Graphs to Manifolds — Agnostiq (10/2020)
We discuss random geometric graphs, discrete curvature, and recent results in discrete geometry. Slides
Computational Geometry for Quantum Gravity — Rensselaer Polytechnic Institute (06/2020)
We review computational methods for discrete quantum gravity. Slides
Quantum Dynamics of Total Orders — CP3-Origins (04/2020)
We discuss quantum growth models in terms of total order dynamics. Slides
Classical and Quantum Growth Models for Discrete Spacetime — Los Alamos (12/2019)
We discuss models of growth for causal set spacetimes. Slides
Dimensionally Restricted Causal Sets — Radboud U. (09/2019)
We present evidence of a first order phase transition in dimensionally and topologically restricted causal sets. Slides
Timelike Hypersurfaces in Causal Sets — Quantum and Gravity in Okinawa (07/2019)
It is possible to identify and measure timelike boundaries in small causal diamonds. Slides
An Overview of Computational Linear Algebra — Rensselaer Polytechnic Institute (07/2019)
A survey and tutorial of linear algebra packages in C/C++ and Python. Slides
Why Computer Architecture Matters for HPC — Rensselaer Polytechnic Institute (07/2019)
A survey and tutorial of optimization techniques for C/C++. Slides
Inference of Boundaries in Causal Sets — U. Heidelberg and NetSci2018 (06/2018)
A new algorithm identifies and measures timelike boundaries in (1+1)-dimensional Minkowski causal sets. Slides
Deep Learning in Quantum Gravity — Quantum Gravity on the Computer (03/2018)
Deep supervised learning can be used to classify causal sets by manifold and dimension. Slides
Vacuum Selection from Cosmology Using Networks of String Geometries — Rensselaer Polytechnic Institute (01/2018)
A network model of string geometries shows evidence of vacuum selection in a late-time bubble cosmology. Slides
The Big Data Approach to Quantum Gravity — Perimeter Institute (12/2017)
Efficient parallel algorithms allow us to better study large problems in causal set theory and F theory. Slides Video
Introduction to Network Science — String Data Workshop (11/2017)
Network science is useful for modeling many complex systems we observe in the world. Slides
Timelike Boundary Terms in the Causal Set Action — Raman Research Institute (12/2016)
Timelike boundaries can be identified in causal sets, and perhaps measured. Slides
Recovering the Einstein-Hilbert Action from Lorentzian Random Geometric Graphs — NetSci2016 (05/2016)
The Benincasa-Dowker action may contain interesting contributions from boundaries. Slides Poster
An Introduction to Parallel Programming: OpenMP, SSE/AVX, and MPI — Northeastern U. (04/2016)
Parallel computational techniques are easy to incorporate into graph problems. Slides
The Global Airline Network: A Study of Competing Contagions — Northeastern U. (04/2015)
We use a SITR model to study the simultaneous spread of plague, smallpox, and Marburg virus over the airline network. Slides
Political Influence and Power — Northeastern U. (12/2014)
We study a socio-economic network of politicians constructed from campaign finance data. Slides
GPU Acceleration for Causal Set Quantum Gravity — Northeastern U. (07/2014)
GPUs are useful tools for generating causal set sprinklings. Slides
Causal Set Generator
Generate and analyze causal sets and other random geometric graphs using ultra-efficient parallel techniques. Learn more on Bitbucket.
FastMath Toolkit
This toolkit provides optimized mathematical functions and compact data structures along with other useful utilities. Learn more on Bitbucket.
Graph Curvature Toolkit
This toolkit provides a set of highly optimized algorithms to calculate the Ollivier-Ricci curvature for graphs. Learn more on Bitbucket.
Causal Set Classifier
This program uses TensorFlow to classify causal sets via supervised learning. To be released in the near future.
Tutorials for Optimization
A series of code samples which cover architecture-related optimizations. Download
Tutorials for Computational Linear Algebra
A series of code samples which cover linear algebra packages in C/C++. Download
Tutorials for Computational Geometry
A series of code samples which cover methods in computational geometry. Download
Tutorials for Parallel Programming
A series of code samples which cover basic parallel programming techniques. Download
HPC Data Manager
A bash tool for managing datasets across multiple HPC clusters. Learn more on Bitbucket.
Task Manager
A bash tool for organizing tasks. To be released in the near future.