Projects
Fitness Evaluation in Genetic Algorithms
This is a 4000 word essay I wrote in high school investigating Self-Organizing Maps VS handcrafted fitness functions to evaluate fitness in genetic algorithms. This was my first foray into machine learning and research. I wrote the code for the experiments in Java, using each type of fitness evaluator to solve a game of sudoku and comparing their performance.
Language(s) used: Java
Electric Field Simulator
I wrote this simulator for a CS programming project (also in highschool). It is a simulation of 2 electrically charged particles moving in 2D space, with a visualization of the electric field developed by the two particles interacting. One issue I had was floating point errors, which caused the simulation to become inaccurate when running at high speed.
Language(s) used: Java
Shakespearean ARM Assembly
Write assembly with poetic grace: we implemented a compiler for a subset of the Shakespearean Programming Language (originally created by Karl Hasselström & Jon Åslund). This was an extension to our first year programming group project at Imperial College London. I learned how to effectively use git (and gitlab) as well as how to manage a group programming project.
Language(s) used: C
Pyplup - Pokémon Showdown Python API
This is a WIP, but I started developing this API in order to build a reinforcement learning bot to play Pokémon. Pokémon Showdown is a fan-made PvP server for Pokémon battles. So far I've learned quite a lot about Python's AsyncIO and websockets.
Language(s) used: Python