I have been involved in some ( and many incomplete) open source projects that can be found on my mostly disorganized Github page.

Select projects

Undergraduate Class Project: Asteroid Avoiders

Nicholas Glattard and I decided to make a retro version of Space Invaders using an ARM micro-controller for a class project.

The source code is freely available here and a video of the can be found here

Undergraduate Senior Design Project: Lumos

We designed a smart light switch that worked via wi-fi, infra-red and had a sound sensor. [Click on image for further description]

Team of developers - Theo Dahlen and Josh Graff (Hardware), Jordan Friendshuh and Ari Biswas(Software)
Team of developers -Ari Biswas and Daniel Ross

An experimental framework to allow scientist to directly query subjects' 2D mental models of a collection of objects.

In our quest to understand how people behave and think and to somehow quantify this understanding, we come upon the problem of modeling the relationships between objects within a person's mind. For example, there are many aspects to how people think about different fruits, but one popular comic has suggested a 2-dimensional model in which one axis represents the difficulty of preparation and the other represents tastiness (where bananas might end up at the top right, being both very easy and very tasty, while durian might be at the opposite corner). It is an interesting problem to try to experimentally learn such a model (with or without prescribed axes) for any given person or population. We present Durian, an experimental framework to allow a scientist to directly query subjects' 2D mental models of a collection of objects using a variety of algorithms to perform the queries and to generalise the model to further data.

Durian began as a class project for my advanced Machine Learning class at the University Of Wisconsin. I plan on extending this work in various applications of computational learning and psychology.

Is he a Hall Of Fame ball player?

A interactive web-page for exploratory data analysis of baseball data built along with a machine learning classifier which predicts the probability of a player being inducted into the hall of fame

The source code is freely available here

HTML tutorial

Wanderlust (Class project: Selected amongst best 5 projects)

With little time off and so many places in the world to travel how should travelers decide where they should go? The answer to this question becomes harder as you also include friends and family in your travel plans. When traveling in a group we are faced with many challenges. One of them is: Where should people travel? Each person has a list of preferences, so given this list where should they go so each of them is reasonably satisfied? Given a list of activities that each user in the travel group would prefer to do and prior information about countries/cities for these activities, we can come up with models that successfully recommend places to visit.

The source code is freely available here
HTML tutorial

Projection free triplets

Abstract: Ordinal embeddings represent a set of n items as points in a d-dimensional Euclidean space, and attemps to recoer an embedding of points given oridinal constraints of the form: "item i is closer to item j than iten k?". These distance constraints referred to as triplets, define a set of linear constraints on the Gram matrix associated with the set of points. However, the optimization over possible Gram matrices requires projections onto the PSD code, which requires a full SVD computation. We analyse the empirical performance of non convex and projection free methods to efficiently recover the triplet embeddings with high accuracy.

The source code is freely available here
HTML tutorial

Other Notable Contributions

  1. I have contributed to an open source active learning platform called NEXT, which allows users to perform real time active learning experiments. I am currently assisting with a modified version of the classic Triplets app on the system. My previous work involved using d3.js to visualize the data collected on the system which was later replaced by a python based d3-library.