The elevator project was a team project in a software engineering class. This was an exercise in agile development. In the span of 4 weeks, we were tasked with creating an elevator simulator. Each week we needed to have a project that we could display, even if it didn’t have complete functionality. I was in charge of the physical functions behind the graphic interface, specifically the cabin motion and the door controls. Besides this being an interesting coding assignment, this project demonstrated the challenges of working in a team and the importance of communication..
View ProjectThe Twitter simulation was an agent based model that was meant to simulate the social graph composed of follow/following connections on Twitter. The goal of the project was to help analyse what could occur on Twitter if certain types of agents changed in number. For instance, if bots became the majority of the Twitter population we could tell what the connections graph would look like. This project used MPI to try and scale the project to 1 million users. Unfortunately, the largest scale we could reach was 10,000. Scalability became a hurdle that couldn’t be overcome at the time. The decision process was a set of probabilities based on common followers, location, and a couple of other commonalities. In order to visualize the model we used both Bokeh Data Visualization Tool and Gephi. In the future, we hope to overcome the restraints of scale and continue with the project.
I designed a terminal game based on a classic Persian card game. I developed the game in Python. The game consists of three main components. These are the game loop, the comparator, and the individual players. The game loop uses the players and the comparator to gain information about the state of the game. The main exercise for this project was in designing an Artificial Intelligence. The first iteration was simple in the decision making process while the second iteration uses a more in depth decision tree. In the next iteration a recurrent neural net will be utilized.
View ProjectThis project was a variation on Conway’s Game of Life in three dimensions. I used JavaFX for the graphics for this project. Besides being in 3D, this variation of the game allows the user to set their own rules. When a cell is dying, it will shrink and eventually disappear and will increase in size as a new cell is born. In order to better visualize these functionalities, the user can set the speed of the game updates.
View Project