Projects
For my Education and for my Passion
Check out my Github here
In Fall 2024, I took an AI class while studying abroad at the University of New South Wales in Sydney, Australia. During the course of the class, we had two main assignments, one involving neural networks and the other involving reinforcement learning.
The neural network project involves using artificial neural networks to address drought modeling in Australia through classification and regression. For the classification task, the goal is to predict whether drought conditions are present based on climate variables, while the regression task focuses on predicting drought intensity. Both tasks require data preprocessing, building, training, and optimizing neural network models. The assignment also involves evaluating the models’ performance using metrics such as balanced accuracy, precision, mean absolute error, and Pearson correlation.
The reinforcement learning project focuses on implementing and analyzing two reinforcement learning algorithms, Q-learning and SARSA, within a static grid environment where an agent must navigate from a random starting point to a goal while avoiding obstacles. The first part involves developing both algorithms, training agents, and tracking metrics. The second part introduces a teacher-student framework, where a pre-trained agent provides advice to a new agent during training, allowing for an evaluation of how teacher feedback impacts the learning process. This includes varying the availability and accuracy of the advice to observe its effects. The assignment concludes with a comparison of the performance of agents.
In Spring 2024, I took a Cybersecurity class. In this class, we had a semester project where we had to display what we had learned. My team decided to make a ticket purchasing website that showcases how SQL injection attacks can be prevented. We created a safe mode toggle for the website that switches between an unprotected and a protected version of the site. The unprotected version allows for SQL injection attacks, whereas the protected version scrubs the user's input before pro. This project used HTML, Flask, POST, and Javascript.
In Spring 2024, I took an Advanced Game Development Class. In this class, we are making two games using C# in Unity, one in 2D and one in 3D. We are working in groups, and my role in the group is a programmer.
For our 2D game, we made a game similar to Papers Please, but in our game, you play as someone inspecting packages that will cross the border. Play our game here.
Our 3D game had a theme of "keep it alive." You play as a bodyguard for an adorable VIP who just happens to be wanted. Play our game here
In Fall 2023, I took Software Engineering, a class focused on putting students in an environment similar to that of a real workplace. The coursework was heavy on teamwork, deliverables, management, documentation, and organization. These projects were both in Java, the first used Java Swing and the second used Java FX. We had two projects in this course:
Home Safe: For this project we were tasked to design and implement a simulation of a home safe. We had to consider many things, including protection against criminals, fires, water, movement, etc.
Voting System: For this project we were tasked to choose a U.S. state and implement a voting system that matched the state's laws. This project involved researching the state, which our group chose to be Ohio, and looking deeply into their voting laws.
In Spring 2023, I took an Autonomous Mobile Robots class. For the class, I had to come up with an idea for a robot and make it. My idea was an assistant robot. The first part was to use computer vision to have the robot follow a person. Next, I would connect it to a large language model such as ChatGPT such that, using voice recognition, a user could ask the robot a question and the robot would be able to answer it. For the scope of the class, I completed the first part of the project. I plan to continue working on it. See my project website here. I programmed this robot in Python and C++.
AI4ALL is a program that teaches college students about AI and how it works. I took their two classes - Discover AI and Apply AI after that. My group's project for Discover AI Project involved analyzing crime rates in Boston, and our project for Apply AI was using computer vision to find patterns in the x-rays of pneumonia patients. These projects were both in Python. Through this class, I learned a lot about different machine-learning algorithms and what they are best used for.
In Spring 2023, I took Design of Large Programs, a class designed to teach students how to properly organize large coding projects. These projects were all in Java FX. Here are the projects in order:
Modulo Times tables in a circle: Our project was to create a program to replicate this video.
Human Benchmark: Our project was to create a program where a user could play the games shown on this website, and save their scores if they choose.
Dominoes: Our project here was to program a game of dominoes against a computer. I made a GUI version of this game as well as a terminal version.
Assembly Silos: This was our first group project, we were tasked with recreating the game TIS-100.
Bank Auction: Also a group project, we needed to create a system of banks, auction houses, and buyers that would work on a server such that it could be used from multiple computers.