Wesley Reardan's Portfolio

Welcome to my portfolio!

I have done a lot of interesting work and I am a very quick learner. Let me put my skills to work for you!

Here are some examples:

Mars Project
Space ship flying around Mars

Solar System Project
Dynamic geometry generation on the GPU via NVIDIA CUDA.

Drug Supply Analysis
We built a Windows Forms and Microsoft SQL application to integrate data from different distributors and perform analysis on different patterns

Minecraft RPG Mod
We built a Minecraft mod to add RPG style features to Minecraft: parties, questing, and dialogue.

Bioinformatics Network Visualization
Last summer, I built an interactive 3d visualization website for viewing Biological Networks in a novel way.

Midwest Aqua Care
We built an ASP.NET web application for Midwest Aqua Care so that they can track their ponds via an Information System rather than paper binders.

Random Forest
One of the best classifiers for Big Data.

Hidden Markov Model Visualization
Last summer I developed a visualization for the three Hidden Markov Model algorithms.

Alignment Visualization
Last summer I developed a tool for visualizing the Needleman-Wunsch Alignment algorithm which is used to find similar DNA sequences.

World Web Craft
I hacked together this cool demo during the MHacks Hackathon which allows the user to select a point on the Earth and then it generates a Minecraft-style version.

Pyxel
A multiplayer game that I am developing with voxel-style graphics.

Mars Project

For this project, we had to implement a visual model of a spaceship flying around Mars. In addition to the basic specification, my partner and I implemented a Wireframe Geometry Shader, Post-Processing effects, and a nicely diffuse Spotlight shining down on Mars as you fly by.

This code requires OpenGL, Windows, and Microsoft Visual Studio 2012 C++ Runtime.

Click here for the source code.

×

Solar System Project

For this project we were given free reign to do whatever we liked as long as we met a few basic requirements. My partner and I implemented a model of the Solar System. We used NVIDIA CUDA to generate the geometry models on the GPU instead of the CPU which is much faster for large meshes. We implemented Catmull-Rom splines for the rings around different planets. We also implemented a per-frame transformation on the GPU that permutes the spline positions according to the sin(x) function.

Click here for the source code.

×

Drug Distribution Analysis

First we performed Business Analysis and Systems Study for which we communicated with the client about their business processes and data needs. Next we created User Views and Database Design. Finally, we implemented the application using Windows Forms and Microsoft SQL Server.

×

Network Visualization

These are cancer networks that are being visualized. BRCA is Breast Cancer, COAD is Colon Cancer, KIRC is Kidney Cancer, LUSC is Lung Cancer, OV is Ovarian Cancer, and UCEC is Uteran Cancer. My advisor's program Merlin learns these networks from microArray and RNASeq data and then they are displayed with this web application that I created last summer. Play around with this tool! You can drag the mouse to rotate. You can zoom in and out with the scroll wheel. Different genes and regulators can be highlighted on the left and modules of genes with similar functions can be highlighted. To make these visualizations aesthetic, I placed each cluster around a central point on a subdivided icosahedron. Next, I use a force-directed graph model that alternates between Hooke's Law and Coulumb's Law to bring nodes that are connected closer together and repel unconnected nodes. Requires WebGL.

Full-page version

Click here for the source code. The source code is available under the js directory.

A detailed PDF of the algorithms used in this visualization

×

Minecraft RPG Mod

We created a Minecraft Mod that added Skills, Spells, Quests, Dialogue, and of course the Holy Hand Grenade! I split development of the Party system with another group member. I personally developed the Dialogue system, Questing System, and a Javascript-based scripting system. Screenshots incoming.

Click here for the source code. It is located in the java/emd24/rpgmod folder.

×

Midwest Aqua Care

We performed business process analysis, database design, and application implementation for Midwest Aqua Care which allowed them to migrate from a paper-based system to an Information System. We implemented this information system as an ASP.NET web application so that it can be accessed via iPad while employees are in the field.

×

Alignment Algorithm Visualization

This visualization shows how the Needleman-Wunsch algorithm works and how it scores gaps/matches/mismatches. It lets the user play around with different parameters and how they affect the alignment. This is a dynamic programming algorithm.

Click here for the full demo.

Click here for the source code. It is located under the alignment directory.

×

Hidden Markov Model Algorithm Visualizations

This visualization demonstrates the three algorithms used in Hidden Markov Models: Forward, Backward, and Forward-Backward (the parameter estimation step).

Click here for the full demo.

Click here for the source code. It is located under the hmm directory.

×

World Web Craft

Use the mouse to spin the world then press Enter to generate the Minecraft version.

Link

Click here for the source code (Javascript).

×

Pyxel

Pyxel is a multiplayer game that I am developing. It uses Voxel-style graphics, but is going to have much different gameplay. I developed this application from scratch using javascript, WebGL, and Node.JS. It uses JSON and WebSockets to pass data back and forth between the browser and server. I want everyone that is playing to be in the same world rather than having small servers setup.

×

Random Forest Classifier

I developed a standalone implementation of the Random Forest machine learning classification algorithm. This algorithm takes input as training data with classes. It then classifies data with unknown classes. Random Forests are one of the best classification algorithms. I explored various methods for extending random forests to be used on imbalanced data sets including Balanced Random Forest and Weighted Random Forest. I also explored various class impurity functions and found the gini impurity to work best as described in Breiman et al's original work Classification and Regression Trees. This code was developed under the direction of Sushmita Roy in the Roy Lab at the Wisconsin Institute for Discovery.

Click here for source code (C++ and Python versions)

×