 In this module, we will be discussing robustness and resilience within self-organizing systems. We will firstly talk about what we mean by robustness. We will go on to discuss adaptation as a mechanism for resilience and why self-organizing systems are typically considered robust. We will look at the theory of requisite variety and finish by talking about self-organized criticality. Before we start, let's briefly recap as to what we mean by self-organization. Self-organization is basically the spontaneous creation of a globally coherent pattern out of the local interactions between initially independent components. This collective order is organized in function of its own maintenance and thus tends to resist perturbations. All systems exist within an environment and are to a certain extent dependent upon a specific range of input values from that environment. The system has a set of parameters to these inputs within which it can maintain its structure and functionality, but outside of these critical parameters, the system will disintegrate, i.e. become degraded to a lower level of integration or functionality. Resilience and robustness are then defined by this set of parameters. The lower the system's dependency upon its environment and the broader this range of input values that the system can operate within, the more robust it can be said to be. For example, in computer science, robustness is the ability of a computer to cope with errors during execution. That is to say, the ability of an algorithm to continue operating despite abnormalities in input. This way, robustness defines its independence from a specific range of inputs or inversely its capacity to process a wider range of input states. To illustrate this further, we might think about a tree withstanding the force of wind blowing against it. The tree has a certain tensile strength through its capacity to bend within a certain range of input values to the force exerted upon it. It will be able to withstand this perturbation from its environment. The wider the range to these input values, the more robust the tree will be. There are fundamentally just two ways for a system to maintain its integrity given some perturbation. It can resist this change or adapt to it. By resist, we mean it creates a boundary or filter condition that prevents the external influence from altering the internal configuration to the system and thus preserving its functionality and structure up to some limit. In our tree example, this might mean the organism developing a sturdy trunk. Inversely, the system can adapt by finding or generating the appropriate response required to counterbalance the perturbation. We might think of this as the tree bending over in response to the force exerted upon it. Robustness and resilience are general characteristics of self-organizing systems both through their capacity to resist change and their capacity to adapt to it. Firstly, we will talk about their capacity to resist change through distributed control and feedback loops. In centralized systems with top-down control, there are specialized components required for regulating the system. These represent largely irreplaceable hubs that will affect the whole system if removed or degraded. Within complex systems, in contrary, control is distributed out on the local level, meaning there is much less specialization. Missing or damaged components can often be replaced by others and this gives them a much lower level of criticality. Secondly, self-organizing systems are held within their current configuration by a set of feedback loops that are also distributed out across the system on the local level. A good example of this might be a magnet which consists of many tiny magnetic spins that are aligned to produce an overall magnetic force. If part of the spins are knocked out of their alignment, the magnetic field produced by the rest of the spins will quickly pull them back. This force maintaining the system within its current configuration is distributed out again, giving it a low level of criticality and thus a higher level of robustness. Next, we will talk about adaptation as a mechanism for resilience. Here we are talking about the system's capacity to maintain or generate sufficient diversity of states for it to be able to select the appropriate response when required to counterbalance a perturbation from its environment and thus maintain its internal configuration within the required critical parameters to preserve its structure or function. To illustrate this, we might think about going hiking on a mountain. In this situation, one needs to be aware of the possible states to the weather that this environment might present and have sufficient variety of clothing to counterbalance these different possible perturbations in order to maintain one's body within its critical temperature parameters that are required for its continued functioning. If I do not have what is called the requisite variety in order to adapt, then this environment might present me with a blizzard for which I do not have the thermal clothing to maintain my body and in such a case, my body's functionality may be severely or critically degraded. Another reason for this intrinsic robustness to self-organizing systems is that self-organization thrives on randomness, fluctuations, or noise. Without these initial random movements, self-organization cannot happen. A certain amount of random perturbations may facilitate rather than hinder self-organization. If the overall pattern that is generating the system remains intact, the entropy from the perturbation may be used for regeneration and evolution. For example, forest fires are thought to play an important role in the development of ecosystems. Excluding fires from these ecosystems means fire-adapted plants decline in abundance and overstocked forests become prone to catastrophic fire due to the build-up of woody fuels. Exposing the system to perturbations without destroying it is a core part of the process of evolution and developing resilience. But self-organization doesn't always lead to robustness. It can also lead to what is called self-organized criticality, where the system organizes into a state where some small event can have a large systemic effect. This phenomenon is best described with reference to what is called the sand pile model. This model is simulated by simply dropping grains of sand on a surface. As the pile builds up, grains roll off the side from time to time, typically just one or two at a time. But as we stay adding sand, the side of the pile eventually builds up to a critical angle before we get a massive avalanche. At some critical point, adding just one more grain of sand triggered a massive effect. This sand pile model for organization has been used to model everything from the occurrence of earthquakes to neuronal avalanches in the cortex and financial crises. The positive feedback loops that are an inherent part of the process of self-organization can also be a strong force for reducing diversity in the system as they synchronize it into a single regime where all elements become susceptible to the same perturbation. Without diversity to resist the spreading of some phenomena, it can cascade into a systemic shock. In summary then, we have been talking about robustness and resilience within self-organizing systems. We defined robustness in terms of a system's dependency upon a set of input values from its environment in order for it to maintain homeostasis. We talked about how a system can maintain its functionality given a perturbation from its environment by either resisting it or adapting to it. We saw how distributed feedback loops and interchangeability of components enables robustness. We also looked at the need for what we called requisite variety in order for a system to be able to adapt. And finally, we talked about self-organizing criticality and noted that although complex systems are often robust, they are also susceptible to large systemic shocks.