Written by: Matthew Busekroos | Produced by: Nate Caldwell

Originally from San Leandro, California, Michael Coulombe first became acquainted with computer science in high school. He said he always liked math and science, and experimented with programming video games while playing them as a kid.

Coulombe parlayed his interest in computer science at UC Davis where he performed undergraduate research under Professor Dan Gusfield. He became interested in continuing graduate school following these studies. MIT and CSAIL interested Coulombe given the depth of research going on and the strong sense of community where students have the space to socialize and share ideas beyond the limits of one research group.

Coulombe is now a recent PhD graduate and worked with his advisor Professor Erik Demaine and the lab’s Theory of Computation group.

“One of the best things about Erik's group is the high degree of collaboration,” Coulombe said.  “He has also developed many web and software tools to aid this model of research, which are under active development with our input on features and changes we think would be helpful. I've also enjoyed that Erik is interested in a variety of topics regarding algorithms, hardness, and geometry, but also curious about learning from us about connections with related topics we are also passionate about, such as concurrency.”

Coulombe said he looked into relationships between different models of computation, such as the external memory (EM) model.

“In EM, we try to understand the performance of algorithms when the data is too large to fit into memory and must be stored in an external device such as an SSD,” he said. “Because of this, we mostly care about how often the algorithm accesses the external memory to read and write-back data, since those operations generally take much longer than computing on the data itself when it is stored internally.”

Coulombe said by bridging the gaps between those studying different models of computation, they have been able to make new discoveries such as faster algorithms or proofs of the hardness of certain problems.

“I've been working to uncover connections between models like EM, concurrency, and games to develop a better understanding of related problems and also to demonstrate how we may overcome limitations in the design of our current hardware to enable the use of even faster external memory algorithms and data structures,” he said.

As a recent graduate, Coulombe is still on the job search, but he said he is looking to continue doing research in algorithms and primarily in models like games, concurrency, and EM, possibly in academia as a faculty or in industry.

“I've always been a very curious person, especially about math and the various ways that mathematical reasoning is used to solve problems in other fields like computer science,” Coulombe said. “Computer science in particular is fascinating because it is ultimately a study of what problems we can ever hope to solve in the first place, under certain limitations on time, space, or capabilities, which has deep practical and theoretical implications.”

You can check out more of Michael Coulombe’s research here.