Hi! I'm William (Billy) Moses, and I'm a junior at MIT majoring in Computer Science and Physics. Previously, I attended Thomas Jefferson High School for Science and Technology in Northern Virginia. In my free time, I enjoy working on various projects ranging from an LED light show for my room to developing a smart device that allows parents to learn when their child is hungry. I also love hiking, playing the violin, or making comedic videos with friends.

I work in the Computer Science and Artificial Intelligence Laboratory (CSAIL) with Prof. Charles Leiserson on performance engineering for multicore systems. My current research interests include: performance engineering, machine learning, algorithms, and quantum computing.

Research Projects

Some of the more interesting research projects I'm doing either for school or for fun.

Computational Connectomics

A collaboration between groups at Harvard and MIT to better understand how our brains work and use what we learn to better inform future machine learning efforts.

Tapir

A compiler extension that allows for concise representation of parallel code and enables optimizations to be performed on parallel code.

Pacifist

A smart baby monitor that uses machine learning of sensor data gathered from a pacifer to predict macro states of infants such as hunger and fatigue. Project is a finalist for the international MIT linQ Idea2 competition.

Computational Complexity of Arranging Music

A look into the computational complexity of arranging music when subject to various constraints.

Online Adaptive Frequency Hopping

A machine-learning algorithm that is able to improve network stability and throughput through opportunistic access and environmental modeling.

Bolt Programming Language/Compiler

High-level programming language designed to easy prototyping of fast code. Capable of running 30% faster than C while adding high-level features such as garbage collection, function generators, classes, functional programming, lazy evaluation, among others.

Coursework

A highlight of the classes I've taken over the years

Junior Fall (2016):

6.828: Operating Systems
A graduate-level class on the design and implementation of operating systems. Topics included: locking, virtual memory, file systems, threads, context switches, kernel interrupts, system calls, IPC, and MMIO devices. Over the semester, implemented a functioning multicore operating system called jos, designed to be a simpler version of xv6.
6.867: Machine Learning
A graduate-level class in machine learning. Topics included support vector machines, neural networks (including convolutional and deep networks), decision tree, boosting algorithms, Bayesian methods, and Markov models.
6.UAR: Seminar in Undergraduate Research
The first semester in a year-long class in methods for advanced research.
21M.359: Interactive Music Systems
A combination humanties and computer science subject focusing on developping interactive systems involving audio. Labs included making games using input devices such as the Microsoft Kinect, audio analysis, and developing a simple guitar hero game.
11.011: The Art and Science of Negotiation
An advanced class on negotiation skills with an emphasis on methods in mutual gains.

Junior Spring (2017):

6.115: Microcomputer Project Laboratory
An advanced laboratory subject on analysis and design of embedded systems from capacitors to assembly and MMIO. Emphasizes construction of complete systems, including labs involving a five-axis robot arm, a fluorescent lamp ballast, a tomographic imaging station (e.g., a CAT scan), and a simple calculator.
CMS.335: Short Documentary
A humanities subject exploring the world of short documentaries.
6.THM: Thesis
A class denoting work on my master's thesis on Tapir and related advances in performance engineering parallel programs

Sophomore Fall (2015):

6.172: Performance Engineering
An advanced undergraduate course in performance engineering covering both the theory and practice behind technologies in parallelism, cache-behavior, among others.
6.002: Circuits
Introductory class in circuit design.
8.370: Quantum Computation
A graduate-level class in quantum computation and quantum algorithms.
8.07: Advanced Electrodynamics
An advanced undergraduate class in electrodynamics focusing on moving systems and the behavior of materials.
24.241: Logic I
An undergraduate class on formal logic.

Sophomore Spring (2016):

6.854: Advanced Algorithms
A graduate-level course in algorithms. Topics include universal/consistent hashing, dimensionality reduction, multi-commodity flow and other generalizations of max-flow, linear programming and duality, gradient descent, interior points, multiplicative weights, semidefinited programming, and compressed sensing.
6.035: Computer Language Engineering
An advanced class on computer languages and compilers.
8.962: General Relativity
A graduate-level class on general relativity
8.06: Quantum Mechanics III
The most advanced undergraduate course in quantum mechanics
4.352: Advanced Video Making
An advanced course in video production.

Freshman Spring (2015):

6.886: Performance Engineering for Multicore Systems
A seminar class in performance engineering with a focus on performing research in the field
6.046: Design and Analysis Algorithms
The most advanced undergraduate course in algorithms spanning subjects from Van Emde Boas trees to network flow.
8.S05: Quantum Mechanics II
An intermediate course in Quantum Mechanics, using linear algebra as a basis for describing subjects from the quantum harmonic oscillator, to squeeze states, to the fine structure of Hydrogen.
8.044: Statistical Mechanics
An class in statistical mechanics using quantum mechanics to build up more macroscopic effects.
21W.789: Communicating With Mobile Technology
A class on how to design, build, and market new computer science start-ups made for mobile platforms.
18.075: Advanced Calculus for Engineers (Complex Analysis)
Complex analysis and differential equations taught from the perspective of engineering applications.

Freshman IAP (2015):

8.223: Classical Mechanics II
An advanced course in classical mechanics covering approximations, Lagrangian mechanics, Hamiltonian Mechanics, among other topics.
18.031: System Functions and the Laplace Transform
A supplementary class in differential equations covering system functions and the Laplace transform as methods of solving differential equations and modeling systems.
6.179: Introduction to C/C++ (Instructor)
An introductory class to C/C++ that I taught with William Qian with over 200 students. Geared towards those already with a programming background, this provided a fast-paced introduction to C/C++ covering more advacned topics such as template metaprogramming. There were weekly algorithmic PSETS (USACO style) and a capstone final project.

Freshman Fall (2014):

6.890: Algorithmic Lower Bounds, Fun With Hardness Proofs
A graduate-level computer science class on hardness (NP,PSPACE,EXPSPACE,etc). Covered material ranging from 3SAT to APX and constraint logic. Produced final paper with hopes of publishing in the near future. Final Paper Taught by Erik Demaine.
8.04: Quantum Mechanics I
An introductory course in quantum mechanics covering the basic experiments such as the double slit experiment through interference, quantum tunneling, operators, and the hydrogen atom.
5.111: Chemistry
An introductory course in chemistry covering topics such as equilibrium, acid-base, orbital shapes, crystal field theory, d-orbitals, thermodynamics, and kinetics.
7.012: Biology
An introductory course in biology focusing on genetics and neurobiology. Taught by Eric Lander.
21W.035: Science Writing for the Public
A writing class focusing on making science accessible to the public. Projects included: a news article and a researched science article.
12.000: Solving Complex Problems (Terrascope)
A seminar class focusing on solving the world's energy problem in the next 100 years. Redulted in heavy research in climate change, statistical modeling and predictions of the future, a website with articles on current and future energy issues and solutions and an hour-long presentation followed by a two-hour question and answer session with experts and executives from oil companies. More information on the class including a recording of the presenation can be found here.

High School (Sept 2010 - June 2014):

Advanced Mathematical Techniques for Scientists and Engineers
Post-mutivariable calculus math course focusing on mathematical methods with important applications to physics and engineering such as Fourier series, linear algebra, introductory complex analysis, the Gamma function, Bessel functions, Legendre polynomials, and the Riemann Zeta function. Includes a brief introduction to quantum mechanics and statistical mechanics.
Quantum Physics and Electrodynamics
An introductory course in quantum mechanics covering Stern-Gerlach machines, entanglement, tunneling as well as a more rigorous treatment of E&M through the use of fourier transforms and Greens functions as well as an introduction to relativity.
Quantum and Modern Physics Research Lab Mentorship
A capstone class focused on research in physics. Researched wireless communication at the Naval Research Laboratory. Research was named a semifinalist in Intel's Science and Talent Search and patent.
Computational Physics
Introduction to computational techniques used to study and analyze physical phenomena.
Advanced Communication Data Streams
A laboratory-based class focusing on how data is transmitted. Covered signal analysis topics such as convolutions, filters, and fourier transforms.
Artificial Intelligence
Class focusing on artificial intelligence, machine learning, and applications thereof. Subjects included genetic algorithms, neural networks, and image processing.
Parallel Computing
Introduction to parallel algorithms, and techniques. Covers CUDA, MPI, OpenMP, and OpenGL. Labs included n-body simulation, ray tracer, parallel sorts, and huffman encoding.

Contact

I can best be reached by email at wmoses@mit.edu

Find me