Personal Projects

Take a look at some of the personal projects I’ve worked on— some for fun and exploration, and others as tutorials to deepen my understanding of concepts in machine learning and uncertainty quantification!

Published

Sudoku

I’ve always enjoyed playing Sudoku. One day, while solving a puzzle, I thought to myself, "This is a pretty systematic process!" That’s when it hit me: "I could probably code a solver for this!" And so, this Python project was born.

My Sudoku solver is based on the human way of solving this puzzle: looking at the rows, columns, and 3-by-3 blocks, and listing all possible numbers that can go into each empty cell. This is by no means the fastest algorithm---for once, I wrote it completely in Python! But it was fun to translate human thought into lines of code.

I also attempted to create a web app, but I don't have a public domain yet. For now, the solver runs locally, but I plan to host it online in the future! In the mean time,

Give it a try!

Sudoku



Sudoku

UQ tutorial

I initially created this project to store common code snippets I frequently used in my research. Over time, I transformed it into a tutorial to introduce uncertainty quantification—particularly for new undergraduate students joining our group or other students in my research group during graduate school.

In this tutorial, I present a geometric interpretation of uncertainty quantification, which I learned from my academic advisor, Mark Transtrum. I focus on methods for small empirical models, including derivative-based sensitivity analysis via the FIM and MCMC. I plan to expand this tutorial by incorporating additional UQ methods for empirical models in the future.





Work in progress