Personal Projects
Q-Learning AI for Tic-Tac-Toe
I became interested in learning about Q-learning methods after watching several Youtube videos, and successfully built my own AI to self-play the game Tic-Tac-Toe. After several million training rounds, the AI always tied or won against itself.
Q-Learning AI for SushiGo
After my Tic-Tac-Toe project, I attempted to create another agent to play SushiGo, which is a nondeterministic multiplayer card game, similar to Poker. Currently the AI slowly learns and reached a peak winrate of 70% against players who play randomly, but failed to find a winning strategy against competent opponents.
Melting Point prediction from Coulomb Matrices
In the summer of 2024, I worked with UTORII graduate student Nick Furth to investigate which machine learning model (Dense neural network, Convolutional neural network, or XGBoost) had the lowest average error when predicting melting points using Coulomb Matrices as inputs. After I presented our findings at the end of the summer, I have continued to tweak the models to lower the error. We have developed a model with MAE of 24 and are currently working on publishing our work. Github coming soon!
Kattis Programming Problems
I am currently ranked #3 in Tennessee and #1642 / 35571 globally on the programming problem website Kattis, where I have completed around 250 problems. My profile
Schoolwork Projects
This project uses Turtle Graphics and user input in Python to create a working Hangman game. Users are able to input letters and the turtle goes to the correct spaces on the board. Sentences are randomly generated from a set of rules.
This program, built in C++, is a text adventure where the user goes off chasing storms and gathering data for gold, which they can then spend upgrading their equipment.
You can check out an older website that I made from scratch with HTML, CSS, and Javascript by going to http://danieljoy.free.nf
Arduino projects focused on input and output through sensors, including LED Display (shown), buzzers, ultrasonic sensors, and buttons.
As a final project for Algorithms class, we compared the speed of various sorting algorithms on datasets ranging from 10000 to 40000 elements.
A Java project to simulate commands (pnorm, pt, etc.) from R in Java and create a resulting graph
This app, built in Android Studio, helps users set goals and record their progress throughout the days of the week. Uses a custom-built Java class to handle database manipulation and returns different messages depending on if the user hit their goals.