Interests


I am interested in the development of novel techniques for data science and machine learning with theoretical foundations in geometry and topology along with performant algorithms and data structures for their implementation. A few specific research directions that I am currently interested in include (1) general-purpose methods for computing persistent relative homology and applications to data science, (2) algorithm unrolling techniques for implementing deep neural networks, (3) the Laplace-Beltrami operator and its applications to geometric deep learning and (4) formalization of the manifold hypothesis. My broad interests are listed below.

  • Mathematics

    Topology, Geometry, Homological algebra

  • Applied Mathematics

    Numerical analysis & linear algebra, Computational geometry, Optimization

  • Algorithms & Data Science

    Topological data analysis, Geometry processing, Machine learning

  • Methods

    Compressive sensing, Dictionary learning, Deep learning, Algorithm unrolling, Dimensionality reduction, Persistent homology

  • Projects


    Foundations and Applications of the Laplace-Beltrami Operator

    This review paper was written for a graduate topics course on the mathematical foundations of AI. We investigate the Laplace-Beltrami operator and provide a definition of the operator starting only with a definition of a topological manifold. This background is accompanied with motivating examples and foundational proofs. The operator is seen as a generalization of the standard Laplacian to functions defined on manifolds, and thus our analysis emphasizes connections to discrete methods of dimensionality reduction, and explains how Laplace-Beltrami may be used to formulate continuous variations of the well-known Laplacian Eigenmap and Locally Linear Embedding methods. Our discussion includes key properties of the operator, and investigates applications including heat flow on a manifold, geometry processing, and Laplacian autoencoders. View the project at the links below.

    Open source code for Persistent Relative Homology

    Building on related research, I implemented a general-purpose method to compute persistent relative homology with an emphasis on applications in TDA and data science. The implementation is written in Python and utilizes low-level Rust via the Open Applied Topology (OAT) project. The code utilizes compressed sparse column representation of matrices and implementes the U-match decomposition. It also implementes custom bifiltered simplex and bifiltered simplicial complex data structures. The latter utilizes hash maps between integers and simplices to turn repeated log-linear sorting operations into constant-time hashing operations. A few examples are included below.

    (Ex. 1) A simplicical complex with disjoint subcomplexes (red, green, blue) and a relative cycle representative (orange). Its persistent homology barcode ...  ... and its persistent relative homology barcode. (Ex. 2) A simplicical complex with disjoint subcomplexes (red, green, blue) and a standard absolute 1-cycle representative (orange). There is an additional relative 1-cycle (purple) whose boundary is a linear combination of simplices identified with a common point in the quotient topology. (Ex. 3) A simplicical complex with disjoint subcomplexes (red, green, blue) and an interesting computed relative 1-cycle basis. None of the four generators (black, purple, pink, orange) are absolute cycles, but generators for the two absolute 1-homology classes are contained in their span.
    phantom

    phantom text here

    Undergraduate Capstones


    Exact and Stable Computation of Persistent Relative Homology

    Working under Drs. Lori Ziegelmeier and Gregory Henselman-Petrusek (PNNL), I developed a novel algorithm for the direct computation of persistent relative homology. Utilizing a recently presented matrix factorization scheme, our method can compute the barcode decomposition and persistence module of a pair of topological spaces equipped with arbitrary filtrations. The only restriction on these filtrations is that the inclusion of spaces is preserved at each level. This is the most general formulation of persistent relative homology, and our work provides a novel and simplified framework for studying it and its variants via U-match decomposition. I completed an undergraduate honors thesis related to this work, which can be viewed at the links below.

    --

    Evolving Mobile Agents in Conway’s Game of Life

    This project was completed as my computer science capstone during the Fall of 2023, when I took an introductory course in Artificial Intelligence with my academic advisor Susan Fox. Using the popular cellular automaton Conway's Game of Life, we investigated to capacity for agents (or cell tilings) within the game to exhibit emergent or intelligent behavior. The explicit goal was to write a genetic algorithm which, given a randomly generated popualtion of cell tilings, could be used to evolve subsequent generations of cell tilings which are capable of directed growth and movement. Our genetic algorithm is implemented in Python and required the NumPy library and elementary linear algebra in order to assess the behavior and fitness of the population. The project also includes a front-end animation built with Matplotlib. Check out the links below to see the project in more detail.

    Numerical Techniques for the Wave Equation

    This project was completed as my mathematics capstone during the Fall of 2023, when I took a math modeling course with Will Mitchell. This was primarily an investigation of numerical techniques for approximating solutions to partial differential equations, and in particular finite differences and the Fourier spectral method. I studied each of these techniques using the wave equation, and implemented both. Check out the links below to see my work in more detail.