Research Interests

I completed my PhD at the Salk Institute at UCSD, under the supervision of Dr. Saket Navlakha. My research focuses on the emerging field of biological distributed algorithms. Nature is abound with examples of biological systems, such as insect colonies, networks of neurons, slime molds, and bacteria swarms, that manage to overcome environmental obstacles and challenges in a distributed manner. Rather than relying on a centralized processor to direct control flow, the systems use limited local communication to produce complex collective behavior. Not only are these systems quite elegant in their emergent properties; the challenges they overcome often have direct analogues to problems in computer science and combinatorial optimization. How do these systems succeed under limited constraints? It is often said that necessity is the mother of invention. Biological systems without the luxury of central control have had the opportunity to innovate and refine methods on evolutionary time-scales. It thus stands to reason that if we can understand how these systems behave, we will arrive at a new, and perhaps improved, understanding of distributed computing. My research seeks to understand how these systems operate, and reverse-engineer efficient distributed optimization algorithms. To this point I have focused on two particular systems: ant colonies, and individual neural arbors.

Turtle Ant Foraging Algorithms

Unlike the terrestrial ants that invade your kitchen, Cephalotes, colloquially known as “turtle ants”, are an arboreal ant genus - that is, they nest and forage in trees. The available foraging paths are constrained by the overlapping branches, vines, and junctions in the vegetation. This makes their foraging directly analogous to pathfinding and other optimization problems in discrete graphs. In my research I seek to understand the behavior of turtle ants from an algorithmic perspective. My research, in collaboration with Dr. Deborah Gordon, focuses on the following questions:

  • What is an appropriate model of computation for characterizing how the colony collectively communicates and maneuvers?
  • What distributed algorithm do turtle ants use to construct, maintain, and repair trail networks?
  • What objectives do turtle ants prioritize when constructing trail networks?

Neural Arbor Growth Algorithms

The neural arbor consists of a cell body that is connected to pre- and post-synaptic partners through axonal and dendritic wiring. The arbor must balance trade-offs between wiring cost (conserving wiring material) and conduction delay (minimizing the time required to transmit signal). My research studies how neural arbors manage trade-offs between these two competing objectives through the following questions:

  • Given locations of the cell body and synapses, how do we algorithmically find the optimal topology for wiring the tree?
  • Do neural arbors achieve optimal trade-offs between wiring cost and conduction delay? Do they optimize these objectives better than would be expected by chance?
  • Do certain types of neurons optimize tradeoffs differently from (and perhaps, better than) other types of neurons?
  • What is an appropriate model of computation for characterizing neural arbor growth?
  • What distributed growth algorithm do neural arbors use to achieve optimal wiring morphologies?
  • Publications