“In theory, there is no difference between theory and practice. But, in practice, there is.” - Yogi Berra
About Me
Technologies
Experience
Personal Projects
Hi! My name is Luke. I am a 22-year-old master's student, software developer, and ML enthusiast. I was born and raised in San Francisco, but I've since made my home in the great city of New York.
I graduated magna cum laude from Bowdoin College with majors in Economics and Computer Science. I now attend Columbia University where I am getting my master's studying CS and ML.
Technological innovation has always been at the forefront of creating meaningful change, and software engineering is my avenue for contributing to that progress. I am dedicated to creating impactful products that solve real-world problems.
Adhereing to the software engineer stereotype, I am very into rock climbing. I am also passionate the bassoon, composing music, and doing theatre.
Preferred language. Most of my projects are written in Python, including my ML projects.
Very proficient in Java from coursework and Voxyl (see projects section).
Proficient in using C from coursework, CS research, and Monsiv (see projects section).
Familiar with C++ from my CS research and competitive programming.
I have experience in Node.js from my work at Tract and creating Discord bots.
I have used SQL for a large portion of my coursework as well as Voxyl (see projects section).
All of my machine learning coursework and personal projects are done using PyTorch.
I have used Git for many of my classes, Tract, and Voxyl.
TRACT specializes in comprehensive human risk intelligence, reviewing records across criminal, legal, financial, and social media databases to offer real-time, intelligent background checks.
Contributions:
Over the summer of 2022, I was awarded a Student Faculty Research Grant Fellowship to research graphical interpretations and expansions of the Linear Influence Game (LIG) model of computational game theory.
General influence games are graphical games in which each agent’s payoff is determined solely by the influence of other agents. LIGs are a subset of general influence games where the influence is linear. The challenge is efficiently calculating Nash equilibria of games with many agents, such as Congress.
Contributions:
Voxyl Network is a Minecraft server and business that I co-developed over the past 2 years, culminating in over 120,000 lines of code and 2.3 million unique players. My work included: developing the game and its anti-cheating service in Java; designing, implementing, and maintaining databases in SQL; optimizing and monitoring server performance to identify and resolve bottlenecks; and leading a team of more than 50 content moderators and game administrators.
A high-frequency trading AI that uses limit order book data to predict short-term price movements of stocks. The AI employs a custom neural network and double deep Q-learner. It achieved 65% OOS accuracy on the millisecond level and 53% OOS accuracy on the second level, leading to 21% average daily returns without trading costs. Unfortunately, the AI doesn't work in practice due to bid-ask spread losses.
A distributed neural network training architecture for PyTorch models that prioritizes fault tolerance, scalability, and graceful recovery from failures. It utilizes a ring topology for efficient communication and message passing, allowing for improvements in system performance and stability without a single point of failure. TorchRing is able to dynamically balance computational load among nodes based on their performance, minimizing the impact of stragglers on overall training time. It also allows for dynamic allocation and deallocation of machines during training.
Monsiv is a simple, fast-paced, chess-inspired game with only 10 pieces and the objective of taking the opponent's king or reaching the other side of the board. The game was coded in Python with the PyGame library. The AI was made in C using game tree search with a custom implementation of the minimax algorithm and alpha–beta pruning. The AI is optimized using threading, transposition tables, iterative deepening, move ordering, optional greedy heuristics, and more.
An implementation of Othello and an AI to play it. The AI has achieved very strong performance, beating the top minimax bot on eOthello. It uses AlphaZero-style self-play reinforcement learning, leveraging MCTS with a neural network to evaluate states rather than simulation. It was trained over hundreds of sequential generations, each improving through self-play. In addition, I developed a minimax agent with a state evaluation heuristic for benchmarking and a GUI for playing against the AI.
Coded a Python Discord bot using Discord.py and maintain two Node.js bots that use Discord.js. This is a side project intended to make QOL improvements for players and staff of Voxyl Network. It includes fun games and activities for players, support tickets using SQL, and integration with Minecraft for remote moderation and management purposes.
About Me
Technologies
Experience
Personal Projects
Hi! My name is Luke. I am a 22-year-old master's student, software developer, and ML enthusiast. I was born and raised in San Francisco, but I've since made my home in the great city of New York.
I graduated magna cum laude from Bowdoin College with majors in Economics and Computer Science. I now attend Columbia University where I am getting my master's studying CS and ML.
Technological innovation has always been at the forefront of creating meaningful change, and software engineering is my avenue for contributing to that progress. I am dedicated to creating impactful products that solve real-world problems.
Adhereing to the software engineer stereotype, I am very into rock climbing. I am also passionate the bassoon, composing music, and doing theatre.
Preferred language. Most of my projects are written in Python, including my ML projects.
Very proficient in Java from coursework and Voxyl (see projects section).
Proficient in using C from coursework, CS research, and Monsiv (see projects section).
Familiar with C++ from my CS research and competitive programming.
I have experience in Node.js from my work at Tract and creating Discord bots.
I have used SQL for a large portion of my coursework as well as Voxyl (see projects section).
I have used Git for many of my classes, Tract, and Voxyl.
TRACT specializes in comprehensive human risk intelligence, reviewing records across criminal, legal, financial, and social media databases to offer real-time, intelligent background checks.
Contributions:
Over the summer of 2022, I was awarded a Student Faculty Research Grant Fellowship to research graphical interpretations and expansions of the Linear Influence Game (LIG) model of computational game theory.
General influence games are graphical games in which each agent’s payoff is determined solely by the influence of other agents. LIGs are a subset of general influence games where the influence is linear. The challenge is efficiently calculating Nash Equilibria of games with many agents, such as Congress.
Contributions:
Voxyl Network is a Minecraft server and business that I co-developed over the past 2 years, culminating in over 120,000 lines of code and 2.3 million unique players. My responbilities included: developing the game in Java; designing, implementing, and maintaining databases in SQL; monitoring and optimizing server performance to identify and resolve bottlenecks; and leading a team of more than 50 content moderators and game administrators.
A high-frequency trading AI that uses limit order book data to predict short-term price movements of stocks. The AI employs a double deep Q-learner implemented with a custom neural network designed from scratch. It achieved 65% OOS accuracy on the millisecond level and 53% OOS accuracy on the second level, leading to 21% average daily returns without trading costs. Unfortunately, the AI doesn't work in practice due to bid-ask spread losses.
A distributed neural network training architecture for PyTorch models that prioritizes fault tolerance, scalability, and graceful recovery from failures. It utilizes a ring topology for efficient communication and message passing, allowing for improvements in system performance and stability without a single point of failure. TorchRing is able to dynamically balance computational load among nodes based on their performance, minimizing the impact of stragglers on overall training time. It also allows for dynamic allocation and deallocation of machines during training.
Monsiv is a simple, fast-paced, chess-inspired game with only 10 pieces and the objective of taking the opponent's king or reaching the other side of the board. The game was coded in Python with the PyGame library. The AI was made in C using game tree search with a custom implementation of the minimax algorithm and alpha–beta pruning. The AI is optimized using threading, transposition tables, iterative deepening, move ordering, optional greedy heuristics, and more.
An implementation of Othello and an AI to play it. The AI has achieved very strong performance, beating the top minimax bot on eOthello. It uses AlphaZero-style self-play reinforcement learning, leveraging MCTS with a neural network to evaluate states rather than simulation. It was trained over hundreds of sequential generations, each improving through self-play. In addition, I developed a minimax agent with a state evaluation heuristic for benchmarking and a GUI for playing against the AI.
Coded a Python Discord bot using Discord.py and maintain two Node.js bots that use Discord.js. This is a side project intended to make QOL improvements for players and staff of Voxyl Network. It includes fun games and activities for players, support tickets using SQL, and integration with Minecraft for remote moderation and management purposes.