Clustering and Image Compression Matlab Machine Learning
Explores the differences between K-Means, EM, and Spectral clustering by applying them to compress images and gradients. See more...
Poker Odds Calculator C++ Statistics
Evaluates 23 million poker hands per second, determining a winner for each and computing the win probability for each player. I am really proud of this one. It was a long time in the making, and from what I've seen online it is competitive with the fastest programs of its kind. See more...
Principal Components Analysis Matlab Machine Learning
Explores the usage of PCA both to detect patterns and reduce dimensionality of a data set. This was an assignment from my tutor, Gopal Nataraj, though I added a few visualizations. See more...
Parses hand history files for online poker games. The project is geared towards tournaments, and towards Merge hand histories, but the class structure is designed to be extensible in both respects.
Performs a sort in parallel, using NVIDIA's CUDA framework, through a least-significant-bit radix sort. I experimented with sorting networks and merge sort before settling on LSD. Probably the hardest programming I've done, but lots of fun. This project fulfilled an assignment in Udacity's parallel programming course.