This page is dedicated to select projects that I am particularly proud to have worked on over the course of my career.
I've developed an intelligent chatbot that allows visitors to ask questions about my PhD thesis and receive detailed, contextual responses. This demonstration project showcases how Retrieval Augmented Generation (RAG) can make academic research more accessible and interactive. The system uses cutting-edge AI technology: Voyage AI for high-quality semantic embeddings, Anthropic's Claude for natural language understanding, and a modern web architecture deployed on GitHub Pages and Render. Simply type a question about my research, methodology, findings, or conclusions, and the bot will search through my thesis content to provide accurate, citation-backed answers.
🔗 Try the Thesis Chatbot
📂 View Source Code on GitHub
Sandia Thunderbird source displayed as a hologram as seen through a HoloLens, with unamused dog.
This particular project grew out of my thesis work, which is primarly concerned about using gamma-neutron correlation measurements for characterizing special nuclear material. During this time it occurred to me that I could combine the timing information from these measurements with the 2D spatial information from neutron double scatter to produce a single-sided 3D reconstruction of the source.
This work become just a single chapter in my thesis, a sort of final addendum to an already complete work, but it is the most novel contribution to nuclear engineering that I made up to that point.
I also leveraged the at-the-time recently released Microsoft Hololens, augmented-reality glasses, to visualize the 3D reconstruction in space. This ended up being quite the hit at various conferences. Little did I know I would end up working on the same 3D imaging technology that makes it possible for both the Hololens and the Kinect to map rooms!
Sample spectrum for Th-232 and the results of the BARNI peak finder.
This project initial goals were to build a benchmarking algorithm to compare the radionuclide identification tools provided by commercial vendors. It also came with a catchy acronym BARNI: Benchmark Algorithm for Radio-Nuclide Identification.
The basic principle is to extract the relevant features from a gamma-ray spectra, shown on the left, and feed them to a machine learning classifier (e.g. Random Forest, Support Vector Machines, Multi-layer Perceptron Network), in order to determine the radionuclides contributing to the spectrum. I gained invaluable skills in machine learning, and the particular challenges to multi-class multi-label problems in spectroscopy that get less attention from industry than traditional imaging.
I am particularly proud of this project because we managed to release it as an open-source tool, which isn't always easy in the field of nuclear security. I went on to mentor a couple students who went on to present their work on feature extraction and classifier comparison at the annual INMM conference. The work on this is still ongoing with a planned journal publication in the Annals of Nuclear Energy.
By the time I joined Cruise I had almost a decade of computer programming experience, between graduate schools and my service at LLNL. And with this project I got to put all my experience to practice putting together a robust python library for the development of indirect time-of-flight algorithms. I felt like I was able to take my skills to the next level and deliver a reliable platform for other researchers to quickly develop their ideas, interface with sensor data and vendor calibration.
Two software related problems that I had to solve were (1) universal object serialization and a (2) architecture for algorithm pipelines. The first uses JSON files with associated schemas, and became the standard for the way Cruise requests calibration data from vendors. For algorithm pipelines I developed an architecture that uses directional acyclical graph as backbone to allow other researchers to plug-and-play with various algorithms and make new pipeline releases for performance comparisons.