Social Media Virality Project

As an independent project, I built a simulation in Python to model the behavior of viral content as it spreads through a social media network. The model investigates key parameters influencing virality, inluding sharing probability and sharing duration. To better mimic real-world factors, I incorporated natural fluctuations in user activity, such as simulating users arbitrarily going online and offline.

Skills: Python, NetworkX, Modeling

Check it out
Social Media Virality

Machine Learning Interpretability Research

I conducted research into the limitations of industry-standard machine learning interpretability frameworks. In the process, I authored substantial portions of the methods section and contributed visual figures for the research paper, which was published in the April 2024 issue of Proceedings of the ACM on Human-Computer Interaction (PACMHCI).

Skills: Python, Pandas, Research, ML

Read the paper View poster
Machine Learning Interpretability Research

Traveling Salesperson Heuristics

I built a visualizer for several heuristics that seek to approximate a solution to the traveling salesperson problem (TSP). I utilized arbitrary insertion to generate a preliminary approximation, and 2-OPT to eliminate path crossings. The visualizer allows users to easily build custom maps with an intuitive input format.

Skills: Python, Numpy, Matplotlib, algorithms

Check it out
Traveling Salesperson Heuristics

Sorting Algorithm Visualizer

I built an interactive too with Python and the Pygame library to demonstrate the mechanics of common sorting algorithms. It begins with a randomized array, visually represented by varying heights of columns, to reflect the values being sorted. Users can engage with the algorithms (insertion, selection, and bubble sort) via keypresses, triggering a vivid animation where the current and comparison indices are highlighted in red and green, respectively.

Skills: Python, Pygame, algorithms, data structures

Check it out
Sorting Algorithm Visualizer