I'm currently a graduate student at NEU's Khoury College of Computer Sciences, advised by Jose Perea.
A more traditional paper CV is available here
My computational experience is diverse. My university coursework typically required using Java, C++, or Matlab (10-15’). I used C++98 or ANSI-C extensively for the AFIT-affiliated projects, occasionally writing high level scripts in Python or Matlab (+MEX) (13-15’). I used either the R project (+Rcpp) or Python (+Cython) for the majority of the projects I was involved in, preferring the former (15-19’). Since 2020, interfacing Python with modern C++ FFIs (e.g. pybind11) has been my primary development workflow.
- Piekenbrock, Matthew, and Jose A. Perea. “Move Schedules: Fast persistence computations in coarse dynamic settings.” arXiv preprint arXiv:2104.12285 (2021).
- Mapper R Package
- simplextree R Package
- Vignette on using mapper
- Hahsler, Michael, Matthew Piekenbrock, and Derek Doran. “dbscan: Fast Density Based Clustering in R”, Journal of Statistical Software, 2018.
- dbscan R Package
- Vignette on using HDBSCAN
- J. Robinson, M. Piekenbrock, L. Burchett, et. al. Parallelized Iterative Closest Point for Autonomous Aerial Refueling. In International Symposium on Visual Computing (pp. 593-602). Springer International Publishing. (2016, December)
- Piekenbrock, M., Robinson, J., Burchett, L., Nykl, S., Woolley, B., & Terzuoli, A. (2016, July). Automated aerial refueling: Parallelized 3D iterative closest point: Subject area: Guidance and control. In Aerospace and Electronics Conference (NAECON) and Ohio Innovation Summit (OIS), 2016 IEEE National (pp. 188-192). IEEE.
Job DescriptionTowards enabling delay-tolerant satellite communications in uncertain space environments, I was re-hired back at NASA as part of the Space Communications and Navigation (SCaN) program to expand the algorithmic theory on time-dependent routing. My research focused on incorporating additional geometric assumptions into routing models built for of delay- and disruption-tolerant networks, particularly in the low Earth orbit regime.
Though I began my doctoral research at Michigan State University in Fall 2019, I transferred to Northeastern University in the Fall of 2021 after my advisor (Jose Perea) accepted a joint appointment offer to transfer to Khoury College of Computer Sciences in Boston, MA.
My doctoral research focused on applications of topological theory to various common machine learning applications. In particular, much of my time was spent on accelerating the persistence algorithm in time-varying settings, codeveloping a topological dimensionality reduction using fiber bundle theory, and on studying a spectral-relaxations of the persistent rank invariant.
I was hired by Dr. Steven Arnold under NASAs 10-week LERCIP program to apply Machine Learning to a specific Material Science problem. The first phase of the research project involving training a fairly trivial feed-forward Artificial Neural Network (ANN) to act a surrogate model for the Generalized Method of Cells (GMC) technique. The second (non-trivial) phase of the project involved creating a systematic procedure for interpreting various aspects of the data produced by the surrogate model using a non-parameteric Optimal Experimental Design (OED)-motivated optimization procedure, recently made possible by the Approximate Coordinate Exchange algorithm.
My graduate research involved a large, multifaceted project aimed at modeling real-world traffic network networks at a macroscopic scale. The high-level goal of the project was to model dynamic network representations extracted from raw positioning/track information via random (distributional) network models. On the software side, the project involved:
- Density-based clustering (R/Rcpp)
- Geospatial Point of Interest (POI) detection / Nonparameteric distribution modeling (R/C++)
- Spatio-temporal network models (R)
Research topics involved during this time include density-based clustering algorithms, cluster validation measures, non-parametric density estimation techniques, Markov Chain Monte Carlo (MCMC) optimization techniques, and random graph modeling (stochastic block models).
In 2017, I joined with a local research group under Dr. Ryan Kramer as part of AFRL’s Human Performance Wing to explore and expand the intersection between algorithms in TDA and machine learning. During my time there, I focused on implementing and extending the Mapper algorithm, a topological method that reframes common data analysis tasks as problems of analyzing level sets on topological spaces. An expository article explaining Mapper and its applications is available here.
I was hired full-time in Fall 2018 to assist the team in using Mapper on various real-world applications, such as video segmentation, image analysis. My research was centered around enabling the efficient construction of mappers in multiscale settings and on understanding the connections the Mapper algorithm had to other existing constructions, such as Reeb graphs, nerve complexes, and hierarchical clustering.
- Simplextree (R Package)
I submitted a successful funding proposal under the Google Summer of Code (GSOC) Initiative to the R Project for Statistical Computing to explore, develop, and unify recent developments related the theory of density-based clustering (see the project page). This involved a mixture of code development which culminated in the form of an R package, as well as deep research to further understand the theory and utility of the cluster tree, a hierarchical summary of the level-sets of a density function. There was also a WSU newsroom piece that describes the proposal in a non-technical way.
Under the guidance of Dr. Andrew Terzuoli, I was hired at the Air Force Institute of Technology (AFIT) as an undergraduate student to do research in a multi-disciplinary team called the Low Orbitals Radar and Electromagnetism (LOREnet) group, where I worked on a diverse set of projects involving computational, statistical, or physics-based requirements. Being my first research-oriented experience, I either assisted graduate students with primarily programmatic or educational tasks or worked on very computationally-oriented tasks.
Example projects included, but were not limited too:
- Implementing an unsplittable flow approximation algorithm (C++ and Python)
- Creating a conversion tool between Oracle’s Abstract Data Type and XMLType (Java)
- Graduate teaching assistant - Data Mining Techniques (CS 6220 / DS 5230), Summer 2023
- Graduate teaching assistant - Machine Learning (CS 6140/4420), Spring 2023
- Graduate teaching assistant - Unsupervised Learning (CS 6220 / DS 5230), Fall 2022
Coursework (GPA: 3.83):
- Formal Verification, Modeling, & Synthesis
- Network Visualization
Coursework (GPA: 3.83):
- Numerical Linear Algebra (CMSE 823)
- Numerical Differential Equations (CMSE 821)
- Math Foundations of Data Science (CMSE 890)
- Topological Methods for the Analysis of Data (CMSE 890)
- Parallel Computing (CMSE 822)
- Geometry and Topology II (MTH 869)
- Mathematical foundations of analysis (CMSE 890)
- Algebra I (MTH 818)
Coursework (GPA: 3.88):
- Network Science
- Machine Learning
- Information Theory
- Applied Stochastic Processes
- Algorithm Design and Analysis
- Empirical Analysis
- Advanced Programming Languages
- Distributed Computing
Coursework (GPA: 3.42, in-major):
- Applied Statistics I & II
- Optimization Techniques
- Foundations of AI
- Computational Tools for Data Analysis
- Theoretical Statistics
- Linear Algebra