Home  Research  Publications

In many applications, the data resides in different locations, and may need to processed collectively by nodes in a computer network. For example, in a network of cameras, each camera may collect a sequence of images at one location. The cameras may then collectively process these images, to extract useful information about themselves or their surroundings. Or, each computer may collect information about its user. The computers can collaborate to understand each user's preferences. In this manner, the nodes in the network can take intelligent actions, without relying on any centralized service.

Distributed processing often poses a number of challenges. Since the data does not reside in a single location, the nodes need to operate in a setting where they do not have a complete knowledge of the task at hand (much like most people function in their daily lives). Therefore, it is often necessary to devise communication patterns that allow the nodes compute the correct answer with only a limited information. Furthermore, the algorithm needs to be robust to small amount of failure. For example, if a few nodes in the network get disconnected or provide wrong information, the rest of the nodes should still compute a meaningful answer. To address these challenges my research draws from a number of areas, including optimization, probabilistic analysis, and graphical models.

Some projects that I have worked on:
Localization in Claytronics
One of the fundamental tasks for a modular robot is to estimate where its modules are located. We propose a probabilistic method for localization and provide a fully distributed implementation.
Distributed camera localization
In this project, we looked at the problem of determining the pose of each camera in a network, by observing a moving object. We proposed a parameterization of the camera state that let us use a Gaussian approximation.
Distributed probabilistic inference
Here, we looked at a general problem of filtering in sensor networks. We give an algorithm that computes an approximation to the posterior distribution over a subset of variables at each time step.
Inference in hybrid models
A while back, I worked with prof. Brian Williams and Lars Blackmore on estimating state of systems that have both discrete and continuous components.
Please send me an email if you would like the data from any of these projects.