BS/MS/PhD in Electrical Engineering interested in optimization, physics, and puppies; I also sometimes pretend to do research and things.
Currently working on inverse design in the Nanoscale and Quantum Photonics lab with Prof. Jelena Vučković and Prof. Stephen Boyd. I also sometimes work with Prof. Tatiana Engel.
* Indicates equal authorship.
For my work and more info, my (more complete) blog can be found here which I (sometimes) update. Additionally, most of my code can be found on my GitHub profile.
I love having coffee chats! If you'd like to talk about something interesting, send me an email at
[my last name]@stanford.edu
so we can schedule something.
CME/EE103: Introduction to Matrix Methods
TA'd on: Autumn 2015, Autumn 2016, Autumn 2017.
EE364A: Convex Optimization
TA'd on: Spring 2017, Winter 2018.
EE104: Introduction to Machine Learning
TA'd on: Spring 2018.
LEigOpt.jl: A fast, first-order interior-point optimizer for eigenvalue optimization
We propose a new first-order interior-point method for eigenvalue optimization of matrices with common sparsity structure, which, in the current testing, outperforms SCS and CVXOPT by at least an order of magnitude of runtime. (pdf, code)
Electrical network approximation to constrained minimum k-cut (multiway cut)
We propose a novel, fast method for approximating the minimum k-Cut problem by using electrical networks. Our approach has similar performance to the current best LP approximation but much faster empirical runtime. (pdf, code)
DominAI: An AI for the imperfect information game of Dominoes
We develop an algorithm for approximating good play in imperfect information games and show an application of the algorithm to the team-based game of Venezuelan dominoes. (pdf, poster, code)
GameBoy emulator on bare metal Raspberri Pi
We developed a complete (though not cycle-accurate) CPU/GPU emulator for the original GameBoy, built on top of the Raspberry Pi without an operating system. (code)
Unsupervised learning for brain tumor categorization
We correctly infer tumour regions without reference to masked examples by using unsupervised learning, showing that a simple approach for unknown or little-known classes of tumors can yield possibly useful insights into these classes. (pdf, poster, code)
Autonomous, multi-objective path planner for the AUVSI–SUAS competition
Currently working on a path-planning algorithm for fixed-wing search-and-rescue UAVs with real-time objective creation, modification, and updating. No code will be available until the end of the competition, but progress and mathematical descriptions of the solution can be found on my blog. (blog, competition)
Chocolate-Arch: A tiny 8-bit processor
I designed an 8-bit architecture made to fit on a Lattice iCEStick (with 1K LUTs). A small team of us began a complete implementation on an FPGA along with an external Arduino-based debugger during a hackathon. (code)
Gee (like geese) - ye (like yet, but without the t).
Temporarily, I guess.
I spent my 2016 and 2017 summers at D.E. Shaw Research (DESRES) doing work on fast algorithms for protein folding detection ('16) and some other work on information-limited labelling schemes ('17). I spent my summer of 2018 at Facebook doing work in scam detection. Currently, I consult for Gauntlet.
Probably not, to be honest.
I do like to make pizza (picture credits to Katie and Kaitlyn!), listen to music, and hike, though.