Distributed Control and Optimization

Introduction of Distributed Computing

Conventionally, when people use a computer to solve a computational problem (e.g., solving systems of equations, optimization, planning or control), it is solved using a single computing entity or a number of parallel machines located close to each other. Recently, with the emergence of new application areas and advances in computer and network technologies, we are facing many new types of problems involving multiple computing entities, often called agents or nodes, distributed geographically and trying to combine their effort to achieve a common goal, with little or no centralized coordination. Compared with the more traditional monolithic computing systems, such distributed computing systems provide greater flexibility and responsiveness to dynamic and uncertain environments and avoid a single point of failure. More importantly, distributed computing systems are also the most natural solution to many problems, either because the system control is asynchronous and spatially distributed or the problem data are intrinsically decentralized or both. As an example, in a vehicle tracking application of sensor networks, the tracking task cannot be accomplished from a central location due to limited sensor range and the vastness of the area to be monitored. In addition, it is often too expensive to send all the raw data collected from all these distant locations to a central location for decision making, thus requiring the sensor nodes to perform some local data processing before reporting back.

Our research focuses on agents that are designed to interact with their environments (e.g.., through sensors and actuators) such as a team of autonomous vehicles and mobile sensor networks. Additionally, in a computing world that largely goes mobile, these agents often have to communicate with other agents in the system through costly and unreliable wireless links and are constrained both in their computation capacity and in their energy reserve. Such system characteristics raise many issues such as state synchronization and energy conservation.

See JavaScript simulators on the platforms page!.

Coverage control Khepera III experiment footage

The videos listed in this section are the implementations of the distributed coverage control algorithms using a team of Khepera III robots.

An experiment in CODES. Four mobile omnidirectional sensor nodes are deployed to guard the uniform density mission space (the wooden platform) with no obstacle (so please ignore all the colorful lines on the surface in this video).

No Obstacles

Obstacles (the yellow rectangles)

The color blocks are obstacles.

Obstacles are arranged differently

Target tracking experiment. First, a static target is dropped in and the three mobile sensor nodes move closer to the target and monitor it. At the same time, they still need to maintain coverage of the mission space in case the new target appears. Later, a mobile target appears and the sensor nodes try to follow and monitor it.