Informal definition of self-stabilization

(adapted of Technical correspondence from X. Debest, in Communication of the ACM, February 95, vol 38, n. 2, pp 115-117)

Take a group of children and tell them to build a circle. After few minutes, you will get a perfect circle without having to take any further action. In addition, you will discover that the shape of this circle is stable, at least until you ask the children to disperse or to do something else. If you force one of the children out of position, the others will move accordingly, moving the entire circle in another position, but keeping its shape unchanged.

The group of children builds a self-stabilizing circle: if some thing goes wrong, there are able to rebuild the circle by themselves, without any external intervention. ny further action. In addition, you will discover that the shape of this circle is stable, at least until you ask the children to disperse or to do something else. If you force one of the children out of position, the others will move accordingly, moving the entire circle in another position, but keeping its shape unchanged.

The group of children builds a self-stabilizing circle: if some thing goes wrong, there are able to rebuild the circle by themselves, without any external intervention.

The time required to stabilize will vary from experiment to experiment, depending on the (random) initial position. But in any case, if the field size is limited, this time will be limited. The position of the circle in the field is not defined by the algorithm, so it will not be always the same. The position of each child relative to each other will also vary. It is also worth noting that there is no privileged child or leader or controller in this system.

The self-stabilization principle applies to any system built a significant number of components which are moving and evolving independently from one another, but which are coopering or competing together to achieve some common goals. Human or natural systems are obvious examples of such systems, but most systems created and maintained by humans also satisfy these requirements. This applies, in particular, to big distributed systems which tend to result from the integration of many subsystems and components developed separately at earlier times or by different people.

The time required to stabilize will vary from experiment to experiment, depending on the (random) initial position. But in any case, if the field size is limited, this time will be limited. The position of the circle in the field is not defined by the algorithm, so it will not be always the same. The position of each child relative to each other will also vary. It is also worth noting that there is no privileged child or leader or controller in this system.

The self-stabilization principle applies to any system built a significant number of components which are moving and evolving independently from one another, but which are coopering or competing together to achieve some common goals. Human or natural systems are obvious examples of such systems, but most systems created and maintained by humans also satisfy these requirements. This applies, in particular, to big distributed systems which tend to result from the integration of many subsystems and components developed separately at earlier times or by different people.

To avoid any misunderstanding let's state it clearly: self-stabilizing systems are not fault free, but the reliability of such systems is higher than of each individual constituents.

A comprehensive bibliography on self-stabilization.