# Daniel Anderson

Computer Science PhD Student at Carnegie Mellon University

**Contact:**

Room 7001, Gates Hillman Center

Carnegie Mellon University

4902 Forbes Avenue

Pittsburgh, PA 15213, USA

**Email:** dlanders at cs dot cmu dot edu

I am a fourth-year PhD student in the Theory Group of the Computer Science Department at Carnegie Mellon University. I love researching, teaching, and writing about algorithms. Most of my current work is broadly on the topic of of parallel computing. Previously, I have worked on discrete optimisation (primarily on solving mixed-integer programs), and in scientific computing. I also enjoy applying algorithms to real-world problems in other areas and hence like to collaborate with researchers in other fields, such as human-computer interaction.

I am fortunate to be advised by Professor Guy Blelloch. Prior to coming to CMU, I completed a Bachelor of Science (Honours) in Applied Mathematics at Monash University in Australia, under the supervision of Jérôme Droniou. I subsequently worked as a research assistant in the Data61 lab at Monash University with Pierre Le Bodic before beginning my PhD.

## Research Interests

I love algorithms. My research has revolved around both the theory of algorithms, i.e., designing provably efficient algorithms for interesting problems, and the practical application of algorithms to real-world problems. To me, the most exciting results are those that involve both -- seeing significant theoretical work pay off in the form of a solution to a real-world problem. I have applied my work in many different application domains, including fluid simulation, discrete optimization, and fabrication. My current work predominantly focuses on parallel computing, and in particular, algorithms and systems for handing large dynamic datasets. A full chronological list of publications can be found here.

### Parallel Batch-Dynamic Algorithms

### Parallel Graph Algorithms

### Concurrent Memory Management

### Parallel Self-Adjusting Computation

### Libraries and Tools for Parallel Programming

### Solving Mixed-Integer Programs

### Computational Fabrication

### Numerical Methods for Fluid Simulation

## Teaching

I am very passionate about mathematics and computer science education. I have over six years of experience teaching computer science, and several additional years of tutoring high school mathematics.

#### At Carnegie Mellon University

**15-451: Algorithm Design and Analysis**

**Period**: Spring, 2022

**Role**: Teaching Assistant

**Instructor:** Prof. Danny Sleator &

Prof Elaine Shi

**15-451: Algorithm Design and Analysis**

**Period**: Fall, 2021

**Role**: Teaching Assistant

**Instructor:** Prof. Danny Sleator &

Prof David Woodruff

**15-295: Competition Programming and Problem Solving**

**Period**: Fall, 2020

**Role**: Teaching Assistant

**Instructor:** Prof. Danny Sleator

**15-295: Competition Programming and Problem Solving**

**Period**: Spring, 2020

**Role**: Teaching Assistant

**Instructor:** Prof. Danny Sleator

**15-295: Competition Programming and Problem Solving**

**Period**: Fall, 2019

**Role**: Teaching Assistant

**Instructor:** Prof. Danny Sleator

#### At Monash University

**FIT2004: Algorithms and Data Structures**

**Period**: Semester One, 2018

**Role**: Teaching Associate

**Instructor:** Dr Aamir Cheema

**FIT2014: Theory of Computation**

**Period**: Semester Two, 2017

**Role**: Teaching Associate

**Instructor:** Prof. Graham Farr

**FIT2004: Algorithms and Data Structures**

**Period**: Semester One, 2017

**Role**: Head Teaching Associate

**Instructor:** Dr Arun Konagurthu

**FIT2014: Theory of Computation**

**Period**: Semester Two, 2016

**Role**: Teaching Associate

**Instructor:** Prof. Graham Farr

**FIT2004: Algorithms and Data Structures**

**Period**: Semester One, 2016

**Role**: Teaching Associate

**Instructor:** Dr Arun Konagurthu

**Workshop: Introduction to Modern C++**

**Period**: Summer & winter, 2017 - 2018

**Role**: Course design & instructor

**Instructor:** Me

Lastly, I enjoy coaching students for the International Collegiate Programming Contest (ICPC). I was formerly the coach of the Monash University Programming Team, and formerly a judge and problem setter for the South Pacific Programming Contests.

## Advisors and Collaborators

I am fortunate to have worked with the following people throughout my studies and research career:

Jérôme Droniou, Pierre Le Bodic, Kerri Morgan, Graeme Gange, Gregor Hendel, Merlin Viernickel, Umut Acar, Guy Blelloch, Laxman Dhulipala, Sam Westrick, Kanat Tangwongsan, Marc Pfetsch, Ticha Sethapakdi, Stefanie Mueller Mike Rainey