Node Synchronization
Suppose you have many robots in an area or perhaps you have wireless sensors distributed in an environment. However, you would like to get them all synchronized so that they have the same time or that they do an action all simultaneously. How would you do this?
This is a problem of time and how to keep it across multiple locations on different computing resources. One solution is to just start all the nodes at the same time so they all have the same digital clock time. But this requires time-keeping hardware and the guarantee that nothing will ever happen to the nodes that will cause them to lose power temporarily or drift from their synchronized time. In fact, processors track time at different rates for a variety of different reasons, but this isn't important right now. The question is, what are ways you can synchronize these nodes?
Assuming you have the ability to communicate with your neighbors through a wireless communication, you can implement something called a pulse-coupled oscillator. This is essentially modeled after natural phenomena such as crickets, fireflies, and pacemaker cells. Each individual member in the population emits a periodic "cry" or "signal". In the case of crickets, its the screach. In the case of the firefly it's the photoluminescent flash of its torso. However, over time the periodic pulses of the individuals begin to synchronize over time by gradually adjusting their period to that of their neighbors. This allows you to synchronize the whole population without any notion of "global time" or a centralized time-keeper.
This phenomenon is very interesting and if you're interested in knowing how to implement it in a technological system, you can read this paper[1] on how they used it in coordinating the data transmission times in a wireless sensor network to conserve power.
[1] Wakamiya, N., Murata, M., "Scalable and Robust Scheme for Data Fusion in Sensor Networks", Proceedings of the First International Workshop on Biologically Inspired Approaches to Advanced Information Technology, Lausanne, pp. 305-314, January 2004