Computational Framework of Resilience

  • Nicolas Schwind
  • Kazuhiro Minami
  • Hiroshi Maruyama
  • Leena Ilmola
  • Katsumi Inoue
Part of the Advanced Sciences and Technologies for Security Applications book series (ASTSA)


Many researchers have been studying the resilience in urban cities. However, due to the complexity of the system involving human activities, it is difficult to define the resilience of an urban area quantitatively. We introduce an abstract model that represents an urban system through a set of variables and a utility function (or dually, a cost function) evaluating the “quality” of the states of the variables. This cost function depends on the criterion of interest for evaluating the resilience of the system, and can be easily defined in a succinct way. Then, our contribution is mainly twofold. First, we propose several performance metrics that evaluate how resilient a given system has been in some specific scenario, that is, in the past. Second, assuming we are given some knowledge about the dynamics of the system, we model its possible evolutions by embedding it into a discrete state transition machine, and show how we can adapt the performance metrics to this framework to predict the resilience of the system in the future. Such an adaptation of a performance metric to our dynamic model is called here a performance-based competency metric. This new kind of metric is useful to validate existing competency metrics (Ilmola in Competency metric of economic resilience. Urban resilience: a transformative approach. Springer, 2016) by aligning these competency metrics with our performance-based ones.


Gross Domestic Product System State Unemployment Rate Performance Metrics Urban System 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

1 Introduction

Evaluating the resilience of an urban city has been an increasingly important issue in our society as we have been experiencing many natural and man-made disasters. However, it is not obvious how we can improve the resilience of an urban area. Indeed, on the one hand it is a large-scale complex system involving many different stakeholders and decision makers, and on the other hand its state and structure evolve in time, which is a direct effect of the actors evolving inside of the system and the dynamic nature of our environment. This chapter introduces a set of properties, allowing one to evaluate a specific scenario that has been followed by a given system in the past. A scenario consists of a series of system state “snapshots,” where each snapshot is associated with a given utility function (e.g., the GDP per capita) or conversely, a cost function (e.g., the unemployment rate in a given city.) The choice of the particular utility/cost function depends on the context, i.e., it depends on which indicator we want the system to be resilient to. As discussed in the previous chapter key indicators of an urban system are, for instance, the capacity of a city to deliver basic needs, to safeguard human life, to promote knowledge, education and innovation, etc. Our properties are based on numerical parameters, thus they quantitatively assess how resilient a given system has been in the past. These properties are called performance metrics. However, what we really need is to evaluate the resilience of a system in the future, given the system’s current state, specifications, the assumptions on the environment and the possible decisions at hand. Several context-dependent properties have been proposed for this purpose (Ilmola 2016). These properties evaluate how resilient one can expect the system to be in the future, and are called competency metrics.

There is a clear distinction between a performance metric and a competency metric. Chomsky (Chomsky 1986) emphasized the difference between performance and competence in the field of linguistic theory, though the concept can be applied to a large number of areas, including the topic under consideration in this chapter. In linguistics, Chomsky describes competence as an idealized capacity that is located as a psychological or mental property or function, and performance as the production of actual utterances. Stated otherwise and speaking generally, competence involves knowing the field of interest and performance involves doing something. Then, while competence seems to be a key tool to assess the performance of a given system in the future, it is very difficult to assess competence without assessing performance, which leads to a contradiction. What we propose here is an alternative way to define a competency metric from the resilience viewpoint. We take advantage of the performance metrics which we will introduce first, and we provide a way to derive a competency metric from a performance metric, which we call a performance-based competency metric. Such a metric considers all possible futures on the system, given the uncontrollable effects of the environment of the system, and given the possible actions the government can take over the system. Then, each possible future scenario is evaluated using the same given performance metric. Last, the set of such evaluations is aggregated to a single value, which defines our performance-based competency metric. Therefore, the model proposed here provides a theoretical tool to validate the accuracy of standard competency metrics by aligning them with our performance-based ones.

The model we present in this paper can be viewed as a simplified version of the one introduced in (Schwind et al. 2016). Before introducing it, we would like to stress an important point concerning what this work is and is not about. The very purpose of this chapter is to provide a formal framework that can be applied to urban systems, but at the same time that can be used in other domains such as engineering systems, computer networks, financial systems, civil infrastructures, organizations and society; it is used for resilience-checking purposes, i.e., we want to be able to assess the resilience of a given system through the performance-based competency metrics we introduce. By no means this chapter provides some specific or general resilient strategies or methods for the design of a resilient system (this is, for instance, a topic addressed in (Maruyama 2016)). In other words, we focus on the verification of the behavior of a system, which is nevertheless a crucial stage in the design of a reliable urban system.

2 Formalization of an Urban System and Its Past Evolution

As stated in (Ilmola 2016), an urban system is a complex system, which means that it involves a large number of components. We propose a simple, though general structure for representing a system, its components, and its dynamics. Our intention is to simply introduce step by step the formal structures involved in the abstract definition of an urban system.

Intuitively, each component of the system is represented through a variable whose value ranges over a domain that may be specific to this variable. An assignment of each variable to a specific value leads to a system state, which represents a specific situation in which the system is at a given time.

Formally, a system state is the complete description of a system S at a given time step. It involves a certain set of variables \(X = \left\{ {X_{1} , \ldots ,X_{n} } \right\}\) representing the components of the system, where each variable X i is assigned to a certain value from a given domain D i . Such an assignment will be represented by the (possibly indexed) symbol \(\upomega\) in the rest of the chapter, and in a given assignment \(\upomega\), for each variable \(X_{i} \in X\), \(\upomega(X_{i} )\) denotes the value from D i assigned to X i in \(\upomega\). A system state is denoted by the pair \((S,\upomega)\), where S is the system and \(\upomega\) is a specific assignment of all variables into their domain.

Let us consider the example representing the workforce distribution across economic sectors in a given city of m citizens from the workforce. One can consider the following simple formalization of this problem. Let \(X_{1} , \ldots ,X_{m}\) be m variables representing the employment status of each citizen, and \(X_{m + 1}\), \(X_{m + 2} , X_{m + 3}\) be three additional variables representing the available number of positions in, respectively, the primary (raw materials), secondary (manufacturing) and tertiary (services) sectors. One can set \(D_{1} = \ldots = D_{m} = \left\{ {un,sec1,sec2,sec3} \right\}\) where for each \(i \in \left\{ {1, \ldots ,m} \right\}\), the assignment \(X_{i} = un\) stands for “Citizen i is unemployed,” and \(X_{i} = secj\) stands for “Citizen i has a position in the jth sector,” where \(j \in \left\{ {1, 2, 3} \right\}\). Additionally, since the available number of positions in each sector is a non-negative integer number, we set \(D_{m + 1} = D_{m + 2} = D_{m + 3} = {\mathbb{N}}\).

As in any complex system, the components involved in an urban system are likely to interact with each other. We distinguish two types of such interactions, static ones and dynamic ones:
  • Static interactions are called here integrity constraints. These constraints restrain the possible states of a set of components at a given time step. For instance, when one intends to represent the organization of a public transportation service, one obviously cannot assign two trains at the same platform of the same station at the same time; more formally, if at a given time a component Train X is assigned to a certain value Station YPlatform Z then no other component Train Y (different from Train X) can also be assigned to the value Station YPlatform Z at the same time. Integrity constraints are part of the formalization of an urban system and will be given through a set C of formulae (or a single formula.)

  • Dynamic interactions between the components of the system will have a delayed influence on the system. The consequences of these interactions are more complex to predict since events that are not within the boundaries of the system and its components (such as natural disasters or intentional, exogenous attacks) may force the state of some system’s components to change. These kinds of dynamics will be dealt with in the next sections.

Our example of workforce representation involves a set of integrity constraints (the static interactions between the components) that must be satisfied and that restrain the set of “feasible” assignments. Indeed, in a given system state and for each sector \(j \in \left\{ {1,2,3} \right\}\), no more than \(X_{m + j}\) positions can be assigned to the citizens. Formally speaking, one can define the constraint C as follows 1:
$$\forall j \in \left\{ {1,2,3} \right\},X_{m + j} \ge \#\left\{ {X_{i} \in \left\{ {X_{1} , \ldots ,X_{m} } \right\} \mid \upomega\left( {X_{i} } \right) = secj} \right\}.$$

The set of feasible assignments is the set of all system assignments \(\upomega\) that satisfy the constraint C.

Additionally, we assume that we are given a utility (or cost) function which associates with each system state a value characterizing the quality of the state with respect to some indicator of interest such as employment rate, safety degree, Gross Domestic Product (GDP), GDP per capita, average income, pollution (air/water quality), ratio of educated people, etc. From now on, our framework and our metrics will be based on a cost function, rather than a utility one. Stated otherwise, each indicator under consideration evaluates the state of a system with a value such that the lower the value the better. This choice is made without loss of generality, since any utility-based indicator can be converted to a cost-based indicator (e.g., when we are given an employment rate of a city, one can easily convert it into an unemployment rate.)

In our example, several indicators can be easily derived, associating a cost value with any feasible system state. For instance, we will focus on the following cost function ur corresponding to the unemployment rate of the city under consideration:
$$\forall \,feasible\,\upomega,\,ur\left(\upomega \right) = \frac{{\# \left\{ {X_{i} \in X \mid \upomega\left( {X_{i} } \right) = un} \right\}}}{m}.$$

Depending on the indicator of interest for evaluating the resilience of the system, one may consider other indicators, e.g., the number of unassigned positions in some specific sector. Additionally, with richer domains for the variables considered in our example, the indicators can be easily refined. For instance, in addition to the employment status of each citizen one can easily store her gender and age, for instance, by defining each domain \(D_{1} , \ldots , D_{m}\) as the following Cartesian product \(D_{i} = \left\{ {un, sec1,sec2,sec3} \right\} \times \left\{ {Female, Male} \right\}\text{ } \times {\mathbb{N}}\). Doing so, one could derive indicators such as the unemployment rate by sex and age.

Based on the notions we introduced in this section, we are ready to formalize the notion of a system:

Definition 1

(System) A system S is characterized by a tuple \(\langle X, D, C,cost\rangle\) where:
  • \(X = \left\{ {X_{1} , \ldots , X_{n} } \right\}\) is a set of variables representing the components of the system;

  • \(D = \left\{ {D_{1} , \ldots , D_{n} } \right\}\) is a multiset of non-empty sets: each D i is the domain of the variable X i , i.e., the set of values over which the variable ranges;

  • C is the (set of) integrity constraint(s);

  • cost is a cost function, that is, a mapping associating each feasible assignment of S (according to C) with a non-negative real number \({\mathbb{R}}^{ + }\).

Because our environment is dynamic by nature, an urban system naturally changes over time: not only its state (i.e., the actual state of each one of its components and the cost associated with each system state), but also its specifications. Indeed, from a time step to the next one, the set of variables forming a system may change (some components may be added or removed from it), as well as the domain for each variable, the integrity constraints and even the cost function. Therefore, Definition 1 above serves a characterization of a system at a given specific time.

In our example of workforce analysis, let us assume that the considered time granularity is of one month between two consecutive time steps. Naturally, the workforce, i.e., the set of variables \(X = \left\{ {X_{1} , \ldots , X_{m} } \right\}\) is likely to be modified from any time step to the next one. Moreover, the cost function may also change when for instance one wants to combine several indicators and the relative importance given in each one of these indicators separately is altered over time.

Therefore, one can represent the past evolution of a given urban system as a series of “system snapshots,” that is, a sequence of system states:

Definition 2

(System state trajectory) A system state trajectory \(SST = \left( {(S_{1} ,\upomega_{1} } \right), \ldots ,(S_{q} ,\upomega_{q} ))\) is a finite series of pairs \((S_{i} ,\upomega_{i} )\), where for each \((S_{i} ,\upomega_{i} ) \in SST\), S i is a system (according to Definition 1) and \(\upomega_{i}\) is a feasible assignment in S i .

A system state trajectory represents the precise description of a specific scenario that has occurred in the past (from some time step 1 to some time step q), for the urban system into consideration. Then, given a system state trajectory \(\left( {(S_{1} ,\upomega_{1} } \right), \ldots ,(S_{q} ,\upomega_{q} ))\) one can naturally associate with it a sequence of values representing the series of costs induced in each pair \((S_{i} ,\upomega_{i} )\). We call such a sequence a system cost trajectory:

Definition 3

(System cost trajectory) Let \(SST = \left( {(S_{1} ,\upomega_{1} } \right), \ldots ,(S_{q} ,\upomega_{q} ))\) be a system state trajectory. The system cost trajectory SCT associated with SST is defined as the sequence \(SCT = (cost_{1} \left( {\upomega_{1} } \right), \ldots ,cost_{q} (\upomega_{q} ))\), where each cost i is the cost function in the system S i .

An example of system cost trajectory is given in Fig. 1. It depicts the unemployment rate in Finland from January 2010 to November 2015 according to (Statistics Finland 2016).
Fig. 1

An example of system cost trajectory: the unemployment rate in Finland from January 2010 to November 2015

We are now given the formal tools to define an existing urban system, derive in a simple way a system state trajectory describing the system’s evolution in the past, as well as its system cost trajectory that depends on an indicator of interest. The next section deals with the evaluation of such trajectories, that is, we intend to provide an answer to the following question: can we say that our system had a resilient behavior so far?

3 Resilience-Based Performance Metrics: Evaluating a Past Scenario

A performance metric associates with a system state trajectory or a system cost trajectory, a single number. But before providing a set of specific (resilience-based) performance metrics, let us introduce a recent real-case resilience scenario that motivates the need for such performance metrics.

In the city of Oulu, Finland, Nokia and its networks venture had employed about 5000 people in Oulu, more than three times the next biggest private sector employer before 2014. In April 2014, Microsoft acquired Nokia’s Devices and Services division, and made it Microsoft Mobile, a wholly owned subsidiary of Microsoft. Following this acquisition, more than 1000 jobs were eliminated from the former Nokia sites in Oulu. The city’s unemployment rate topped 16 percent in the summer of the same year, a level not seen since the Finnish financial crisis of the early 1990s. The jump of unemployment rate was sudden, but showed a reasonably “quick” recovery. The question is, can we say that the city of Oulu has been resilient against the shock, namely, the shutdown of the former Nokia sites and loss of so many jobs? Qualitatively, the answer probably is yes, but how can we quantify the resilience? How can we compare whether a specific scenario from the past had a more resilient behavior than another scenario? When looking back at Fig. 1, at the country level can we say that Finland has been resilient in terms of employment rate? These questions clearly call for the definition of relevant performance metrics, since one wants to evaluate the resilience of a past scenario.

Several well-known indicators exist to interpret such system state/cost trajectories, e.g., the mean or variance of overall costs. But none of these “traditional” measures evaluates the curve from the resilience point of view. We intend to fill the gap.

3.1 Cost-Based Performance Metrics

We recall several metrics that have been proposed in (Schwind et al. 2013, 2016). These metrics are crucial to assess the resilience of a state trajectory. They are inspired from Bruneau’s work (Bruneau 2003) who reconciled a number of concepts underlying resilience within two main characteristics: the absorption of shocks when they occur, and the recovery after a shock, i.e., the capability to establish back a normal performance.

In (Schwind et al. 2013, 2016), three properties evaluating a system cost trajectory have been introduced: resistance, functionality and recoverability.

Resistance is the ability exhibited by the system to absorb by itself some perturbations. Intuitively, when a system is resistant, the potential, challenging attacks are actually not visible in its system cost trajectory. This notion of “direct shock absorption” appeared in the literature within various qualitative variants. (Grimm and Calabrese 2011) considered the same notion under the term “persistence” as the ability for a system to stay essentially unchanged despite the presence of disturbances. (Bruneau 2003) referred to the term “robustness” as the capability for a system of services to keep a certain level of demand without directly suffering from a degradation. Moreover, the notion coincides with the initial qualitative characterization of resilience proposed by Holling (1973), as a system’s inherent ability to absorb the external shocks. In (Schwind et al. 2013, 2016), resistance is assessed under the ability for a system to maintain some underlying costs under a certain “threshold,” such that the system satisfies some hard constraints and does not suffer from irreversible damages. The quantitative definition of resistance is then very simple, though it provides us with a first performance metric:

Definition 4

(Resistance) The resistance of a system cost trajectory SCT is the maximal cost in SCT.

In other terms, resistance associates with a system cost trajectory a single value corresponding to the worst case the system has ever encountered within its trajectory. In Fig. 1, the resistance of the system is 11.8, that is, from 2010 to 2015 Finland never had an unemployment rate worst that 11.8 %, or stated otherwise, Finland has been resistant to the tune of 11.8.

Functionality, like resistance, relates to the system’s capacity to absorb the shocks. However, resistance evaluates the cost of the system at each single time step within its trajectory and considers the worst case encountered; on the contrary, functionality evaluates the system in its whole trajectory, by considering the average of all values:

Definition 5

(Functionality) The functionality of a system cost trajectory SCT is the average of costs in SCT.

Looking back at Fig. 1, the system’s functionality corresponds to the average of unemployment rates along the considered trajectory, that is, 8.33.

Obviously enough, resistance and functionality are not sufficient metrics to evaluate the resilience of a system in its past trajectory.

Recoverability is the ability to reach an admissible state within a given time interval after potentially damaging modifications. This property allows the system to express temporarily the consequences of some external disturbances, but then it should be able to return to a satisfactory state (Schwind et al. 2013, 2016). This system’s behavior has been widely discussed in various fields, though the same notion is often named differently depending on the field. For instance in physics, this notion is identified by the term buoyancy, and is described as “the quantity of work given back by a body that is compressed to a certain limit and then allowed freely to recover its former size or shape” (The New International Webster’s Comprehensive Dictionary 2016). Additional domain-dependent characterization of the notion of recoverability can be found in other disciplines such as environmental sciences and risk management (Haimes et al. 2008; Wohlgemuth 2014), computer networks (Stoicescu et al. 2011; Smith et al. 2011; Linkov et al. 2013), psychiatry (Cicchetti 2010), sociology and material sciences.

The recoverability metric we are going to introduce is a parameterized metric: it relies on a number p that corresponds to a certain given cost threshold. If the cost of the system state is beyond this threshold, then it is considered as being an “unstable” state, otherwise it is “stable.” Under this interpretation, the recoverability of a system cost trajectory corresponds to the cumulative extra cost associated with an “unstable sub-trajectory” in the worst case. This calls first for the definition of an unstable sub-trajectory.

Definition 6

(Unstable sub-trajectory) Given a system cost trajectory \(SCT = (cost_{1} \left( {\upomega_{1} } \right), \ldots ,cost_{q} (\upomega_{q} ))\), a subtrajectory \(SCT^{\prime } = \left( {cost_{a} \left( {\upomega_{a} } \right), \ldots ,cost_{b} \left( {\upomega_{b} } \right)} \right)\) of SCT is a series of consecutive values from SCT such that \(1 \le a \le b \le q\). We denote \(SCT^{\prime } \sqsubseteq SCT\) when \(SCT^{\prime }\) is a sub-trajectory of SCT. Given an additional non-negative number p, \(SCT^{\prime }\) is said to be p-unstable if each value in \(SCT^{\prime }\) is strictly greater than p.

Let us assume that for Finland, an unemployment rate above 8.5 is considered to be unsatisfactory. Figure 2 emphasizes the set of all 8.5-unstable sub-trajectories of the system cost trajectory introduced in Fig. 1.
Fig. 2

The set of all 8.5-unstable sub-trajectories of the evolution of the unemployment rate in Finland from January 2010 to November 2015. The 8.5-recoverability of the whole system cost trajectory is equal to 10.6 (color figure online)

We are ready to introduce the performance metric capturing the notion of recoverability, parameterized by a cost threshold p:

Definition 7

(Recoverability) Given a system cost trajectory \(SCT = (cost_{1} \left( {\upomega_{1} } \right), \ldots ,cost_{q} (\upomega_{q} ))\) and a non-negative number p, the p-recoverability of SCT corresponds to the value \(+ {\infty }\) if \(cost_{{q }} \left( {\upomega_{{q }} } \right) > p\), otherwise it corresponds to the following value:
$$max_{{SST^{\prime } { \sqsubseteq }SST}} \left\{ {\mathop \sum \limits_{i = a}^{b} \left( {cost_{i} \left( {\upomega_{i} } \right) - p} \right) \mid cost_{i} \left( {\upomega_{i} } \right) \in SST^{\prime }, SST^{\prime } is\,p-unstable} \right\}.$$

Figure 2 depicts in red the “worst situation,” i.e., where the cumulative extra cost of an 8.5-unstable trajectory is maximal. This situation corresponds to the period between December 2014 and June 2015. In this case, the 8.5-recoverability of the system cost trajectory is equal to 10.6.

Schwind et al. (2016) have then proposed a more general property simply named resilience. We provide below an adaptation of this property in terms of performance metric. Interestingly, the authors have shown that the property of resilience is a generalization of both notions of resistance, functionality and recoverability. Therefore, the notion allows one to characterize in the simplest way both notions of “shock absorption” (resistance and functionality) and “fast recovery” (recoverability.) Resilience has one parameter k, a positive integer:

Definition 8

(Resilience) Given a system cost trajectory \(SCT = (cost_{1} \left( {\upomega_{1} } \right), \ldots ,cost_{q} (\upomega_{q} ))\) and a positive integer k, the k-resilience of SCT corresponds to the maximum value among the cost average of each sub-trajectory of SCT of size k. Formally, it corresponds to the following value:
$$max_{1 \le a \le q - k + 1} \left\{ {\mathop \sum \limits_{i = a}^{a + k - 1} \frac{{cost_{i} \left( {\upomega_{i} } \right)}}{k} } \right\}.$$

One can observe that 1-resilience coincides with resistance, and when the size of a system cost trajectory is q, then q-resilience coincides with functionality. It has been shown in (Schwind et al. 2016) that p-recoverability can also be represented through an aggregation of several k-resilience values depending on p. Then, by adjusting the parameter k to intermediate values, i.e., between 1 and the size of the trajectory, one gets more insights on the capability for a system to absorb the shocks and to recover to satisfactory states in case of disturbance expression.

We illustrate the property through our example. We have considered two additional scenarios that may have been followed by a similar system, leading to two additional system cost trajectories. Figure 3 depicts the three resulting system cost trajectories: the initial unemployment rate in Finland, and some unemployment rates of two fictive countries \(Country\,2\) and \(Country\,3\). One can see that Finland regularly suffers from a “jump” of the unemployment rate, approximately every year starting from winter, and recovers to an initial rate at the beginning of summer. The presence of such “jumps” of the unemployment rate are reflected in the difference of values between the resistance (1-resilience) and functionality (72-resilience) of this cost trajectory; indeed, according to Fig. 4, its 1-resilience is equal to 11.8 (since in May 2015, Finland’s unemployment rate reached 11.8 %), whereas its functionality is equal to 8.33 (i.e., from January 2010 to November 2015, Finland’s unemployment rate has been equal to 8.33 in average.) Moreover, thanks to the resilience curve depicted in Fig. 4, one can get more information about the speed of recovery within these cost “jumps.” Indeed, one can see that the k-resilience of this cost trajectory is high for low values of k, but rapidly decreases when the value of k increases until k = 8: this reflects the fact that the unemployment rate in Finland reaches relatively high unemployment rates, but as a counterpart exhibits a “resilient” behavior within a time period of approximately 8 months. In comparison, in Country 2 one can see in Fig. 3 that the unemployment rate evolves relatively smoothly, with no drastic rate “jump,” which explains why the values of 1-resilience (resistance) and 72-resilience (functionality) for this trajectory are more close to each other (respectively, 10.3 and 8.8) and the k-resilience curve decreases linearly between these two values. Lastly Country 3 exhibits very drastic, high jumps of unemployment rate but always recovers to a satisfactory rate within 4 or 5 months (cf. Fig. 3), which explains why in Fig. 4 one can see a drastic decrease of k-resilience from k = 1 to k = 5 before a relatively stabilization of k-resilience from \(k \ge 6\).
Fig. 3

The unemployment rate from January 2010 to December 2015 in Finland and two fictive countries

Fig. 4

The k-resilience of each system cost trajectory (corresponding to the unemployment rate in Finland and the two fictive countries), when k varies from 1 to the size of these trajectories, i.e., 72

3.2 State-Based Performance Metrics

All performance metrics presented so far, i.e., resistance, functionality, recoverability and resilience, are related to some underlying indicator that is reflected by the cost function, mapping each system state to a cost value. This means that these metrics do not take into account the evolution of the system states themselves but only their cost. Indeed, in some situations the system state may drastically change from a time step to the next one, even if the underlying costs do not reflect that change. In our example of unemployment rate, this would be the case if all positions affected to some citizens at some time step t are assigned to different citizens at time step t + 1: even if the cost of these two consecutive system states remain unchanged, there is an underlying drastic, undesirable change between these two states. A way to deal with this issue is to build a performance metric based on the “distance” between each pair of consecutive system states within a trajectory. Measuring the distance between two system states can be done arbitrarily, though the well-known, standard Hamming distance can be used (Hamming 1950). The Hamming distance \(d_{H} ((S,\,\upomega)\), \((S^{'} ,\,\upomega^{\prime } ))\) between two system states \((S,\,\upomega)\), \((S^{'} ,\,\upomega^{\prime } )\) is simply the number of differences between the assignments \(\upomega\) and \(\upomega^{\prime }\). Then, (Schwind et al. 2013, 2016) have proposed the property of stabilizability that evaluates how drastically the transitions between a system state and the next one are performed within a system state trajectory. We give below an adaptation of this property of stabilizability in terms of performance metric.

Definition 9

(Stabilizability) Given a system state trajectory \(SST = \left( {(S_{1} ,\upomega_{1} } \right), \ldots ,(S_{q} ,\upomega_{q} ))\), the stabilizability of SST corresponds to the following value:
$$max_{1 \le i \le q - 1} \left\{ {d_{H} \left( {(S_{i} ,\upomega_{i} } \right),\,(S_{i + 1} ,\upomega_{i + 1} ))} \right\}.$$

Therefore, stabilizability evaluates the ability for a system state trajectory to avoid undergoing modifications, even if its associated system cost trajectory exhibits a resilient behavior.

One could go further in the consideration of state-based performance metrics. For instance, in some situations it may be useful to analyze the state of the system after a situation of recovery and compare it the initial state. Referring to (Maruyama 2016), a recovery could be a full restoration of the original system or something new. More precisely, our framework allows us to analyze whether the recovery is structural or functional (two recovery types among the three identified in (Maruyama 2016)), by measuring the distance between the “regime”2 of states before the shock and those after recovery. This kind of metrics are interesting, however, they would be out of the scope of this chapter since they would be more arbitrary than the cost-based performance metrics introduced in this section.

4 Performance-Based Competency Metrics: Evaluating the Future

We have provided in the previous section a set of performance metrics that can be used to evaluate a specific scenario (i.e., a system state/cost trajectory) followed by a given urban system, in the past. A performance resilience metric gives an objective and quantitative measure of resilience given a particular sequence of past events. However, this kind of metric has little to indicate about the resilience of a city against future shocks. For instance, the city may have demonstrated performance resilience simply because there has been no significant shocks during the observation period. Or, the city has been simply lucky to recover after disturbances without any effort by the city administration. For example, after many former Nokia employees lost their job in Finland, a completely independent company happened to decide to open a large site in the city of Oulu, Finland, which would not be shown by the corresponding system cost trajectory.

Nevertheless, we show in this section that we can exploit these performance metrics to evaluate how resilient the system is expected to be in the future. The adaptation is not trivial, as a scenario (or system state trajectory) is not a prediction of the future. A scenario can be viewed as a possible, plausible future that might arise under certain circumstances (Maruyama 2016). But being provided with a set of scenarios that bracket the range of possible futures starting from a given system state is useful for predicting the behavior of the system, or at least to provide some “bounds” w.r.t. the performance metric of interest (resistance, recoverability, etc.)

One way to quantify resilience for the future events is to assume being given such a set of possible future scenarios with shocks and then simulate how the city will respond to these shocks. Let us start with a motivating example of possible future situations of the unemployment rate in the city of Oulu, Finland. To simulate a given scenario, we used a tool called “Agent-Based Modeling” (ABM) developed in the International Institute for Applied Systems Analysis (IIASA), Vienna, Austria. The ABM model has been applied for analysis of regional economics of several regions in Finland including Oulu. The project studying regional economies’ capability of facing potential futures shocks is using the ABM model as a method for stress testing against uncertain futures. In the ABM model there are individuals or agents that are heterogeneous (people, companies, municipality), differing from each other in distinct ways. These agents can be represented as the variables in our abstract framework. Agents can act (thus the corresponding variable would change its value) in response to the current state in which they lie at a given time. Thus, they can modify the next system and system state through their actions, which refers to the dynamic interactions between the components of an urban system mentioned in Sect. 2.

Figure 5 represents the unemployment rate in the city of Oulu, Finland, in four simulated distinct scenarios, starting from the same initial situation. Four kinds of scenarios were triggered at the initial state: (i) business as usual, (ii) the collapse of the state, (iii) the escape of some industries from the system, and (iv) the transition of the economic structure from manufacturing to service sectors.
Fig. 5

The system cost trajectories representing the unemployment rate in the city of Oulu, Finland. Four scenarios were simulated independently starting from the same initial state

It was run with several hundred variables, on a 20-year time horizon, and a time granularity of one week between two time steps.

Then, one way to define a performance-based competency metric, i.e., a metric that evaluate the potential performance of the system in the future, is to apply a given performance metric on each of these four curves, and then to aggregate them. However, it is impossible to enumerate by hand the set of all possible future scenarios that may occur in our system. For instance, in case of the city of Oulu, many other possible scenarios could be considered. For instance:
  • In 20xx, Microsoft sees a major revenue decline and decides to shut down their data center in Oulu.

  • In 20yy, the city of Pori, Finland, starts an aggressive subsidy and takes many jobs away from Oulu.

  • In 20zz, Boarder conflicts in Eastern Europe makes the Finnish currency drop sharply.

Especially, it is not only practically impossible to list all possible scenarios which may occur in the future, but different shocks/scenarios may interact with each other and affect a state trajectory and its outcome sequence in an unexpected way, leading to a combinatorial explosion of all possible future system state/cost trajectories with respect to these potential shocks: it can be the case that two given scenarios do not cause significant disturbances, whereas a combination of these same two scenarios will do.

We propose a model, called dynamic system, that intends to deal with this issue, assuming that we know which events may occur in some given state, and which are the local, “direct” effects of some (set of) event(s) in any system state. The following definition is a simplified version of the notion of dynamic system introduced in (Schwind et al. 2016).

Definition 9

(Dynamic system) A dynamic system DS is characterized by a tuple \(\left \langle {\mathcal{S}},\,E,\,A,f_{e} ,\,f_{a} ,\,(S_{0} ,\upomega_{0} ) \right \rangle\), where:
  • \({\mathcal{S}} = \left\{ {\left( {S_{0} ,\,\upomega_{0} } \right),\,\left( {S_{1} ,\,\upomega_{1} } \right),\, \ldots } \right\}\) is a set of system states;

  • \(E = \left\{ {e_{1} , e_{2} , \ldots } \right\}\) and \(A = \left\{ {a_{1} , a_{2} , \ldots } \right\}\) are two disjoint sets of symbols; E represents a set of potential events that are exogenous to the system, thus uncontrollable; A represents a set of decisions that can be taken by the actors of the system: the components of the system (i.e., the variables), or a system controller not represented within the variables (e.g., the city administrator); these decisions will have an effect on the next system state;

  • f e and f a are partial functions associating a system state and an element from \({\mathcal{S}}\) with another system state from \({\mathcal{S}}\); f a specifies how a given system state may be modified in response to some decision; respectively, f e specifies how a system state is modified in response to some exogenous event.

  • \((S_{0} ,\upomega_{0} )\) is a specific system state from \({\mathcal{S}}\) representing the “initial” or “current” system state.

A dynamic system can be represented through a graph. The vertices of this graph represent the system states \(\left( {S_{i} ,\,\upomega_{i} } \right)\) from \({\mathcal{S}}\). Each edge is labeled with an element from \(E \cup A\), thus an edge represents a one-time-step transition between a system state to another system state, where the transition is triggered by either an exogenous event (if it is labeled by an element of E), either a decision from A. Therefore, an edge can be of two types depending on whether it is labeled by an element of E or A. Formally, there is an edge labeled by a symbol e i (respectively, a i ) between two system states \(\left( {S,\,\upomega} \right)\) and \((S^{\prime},{\omega^{\prime}})\) if and only if there is an event \(e_{i} \in E\) (respectively, a decision \(a_{i} \in A\)) such that \(f_{e} \left( {\left( {S,\upomega} \right),\,e_{i} } \right) = (S^{\prime},{\omega^{\prime}})\) (respectively, \(f_{a} \left( {\left( {S,\upomega} \right),\,a_{i} } \right) = (S^{\prime},{\omega^{\prime}}))\).

The four scenarios depicted in Fig. 5 can be represented as symbols e 1, e 2, e 3, e 4 in the set E representing four exogenous events, i.e., not under the control of the actors of the system. Figure 6 depicts an example of dynamic system. The edges labeled by an exogenous event from E are represented by dashed lines, whereas the edges labeled by a decision from A are represented by full lines. From the initial system state, four types of events (or shocks) exogenous to the system may possibly occur. Then from the next time step (in one of the system states \(\left( {S_{1} ,\,\upomega_{1} } \right),\left( {S_{2} ,\,\upomega_{2} } \right),\left( {S_{3} ,\,\upomega_{3} } \right),\left( {S_{4} ,\,\upomega_{4} } \right))\), some decision (a i in \(\left( {S_{i} ,\upomega_{i} } \right))\) can be undertaken by the actors of the system in order to adapt the system state appropriately depending on the situation. Please note that this model allows one to take into consideration a combination of several shocks: event e 2 is expected to occur in the system state \(\left( {S_{1} ,\,\upomega_{1} } \right)\) after event e 1, and conversely, event e 1 is expected to occur after event e 2 in the system state \((S_{2} ,\upomega_{2} )\).
Fig. 6

The graphical representation of a dynamic system DS

This formalization provides us with a compact description of the dynamics of the system. It allows one to represent in a simple way a number of system state trajectories which is exponential in the number of considered system states in \({\mathcal{S}}\). Our goal is to define a performance-based competency metric that evaluates the system in the state \((S_{0} ,\upomega_{0} )\) by considering all possible futures of the system, what we call here realizable system state trajectory. A realizable system state trajectory in a dynamic system DS is simply the set of all possible paths in the graph starting from \((S_{0} ,\upomega_{0} )\), where the path can go through both types of edges.

The role of controllable events (i.e., the decisions from A) is that the set of realizable system state trajectories in a dynamic system can be “controlled,” i.e., reduced to a smaller set. An example of such control is called here a strategy:

Definition 9

(Strategy) A strategy St for a dynamic system \(DS = \left \langle {\mathcal{S}},E, A,f_{e} , f_{a} , (S_{0} ,{{\upomega }}_{0} ) \right\rangle\) is an assignment of each system state \((S_{i} ,\upomega_{i} )\) from \({\mathcal{S}}\) to a specific decision \(a_{j} \in A\) such that a j is feasible in \((S_{i} ,\upomega_{i} )\), i.e., there exists a system state \((S^{\prime } ,\upomega^{\prime } )\) from \({\mathcal{S}}\) such that \(f_{a} \left( {(S_{i} ,{{\upomega }}_{i} ), a_{j} } \right) = (S^{\prime } ,\upomega^{\prime } ))\).

We denote Strat(DS) the set of all possible strategies for DS. Accordingly, a strategy for a dynamic system DS can be viewed as a subgraph of the graph representing DS. It simply consists in removing all edges that are labeled by a decision not assigned within the strategy, so that each vertex has only one outgoing edge labeled with a decision from A. An example of strategy is depicted in Fig. 7. The notion of realizable system state trajectory in a dynamic system can be easily extended to a realizable system state trajectory with respect to a strategy of this dynamic system: it is simply a path SST starting from the system state \((S_{0} ,{{\upomega }}_{0} )\) in the graph representing the strategy St under consideration. Similarly, a realizable system cost trajectory for a strategy is the system cost trajectory associated with a realizable system state trajectory of this strategy. The set of all realizable system cost trajectories given a strategy St is denoted by Real(St).
Fig. 7

An example of strategy for DS

We are ready to introduce the notion of performance-based competency metric. Given one of the resilience-based performance metrics presented in Sect. 3, one can use it to predict the extent to which a given system will be resilient in the future, by taking advantage of our formalization of a dynamic system:

Definition 9

(Performance-based competency metric) Let pm be a performance metric associating with any system cost trajectory a number (e.g., resistance, recoverability, etc.) The corresponding performance-based competency metric cm associates with any dynamic system DS the following number:
$$cm\left( {DS} \right) = { \hbox{min} }_{St \in Strat(DS)} { \hbox{max} }_{SCT \in Real(St)} pm\left( {SCT} \right).$$

Thus, given a specific strategy for a dynamic system, one computes all realizable trajectories within this strategy and compute the highest number given by the performance metric applied to each one of these realizable trajectories; this corresponds to the worst-case scenario that is considered since exogenous events are not under control. Then, one assumes that a strategy is fully under control, and this is why we consider among all computed numbers the one returned by the best strategy, i.e., the minimal number. Though this definition focuses on those performance metrics applied to system cost trajectories, it can easily be adapted to metrics applied to state trajectories.

This new kind of metric is useful to validate existing competency metrics such as the ones proposed in (Ilmola 2016) for urban systems, by aligning these competency metrics with our performance-based ones.

5 Concluding Remarks

We provided a general computational framework that allows one to predict how resilient a given urban system will be in the future, by considering all of its possible expected scenarios. The model presented in this chapter is a simplified version of the one proposed in (Schwind et al. 2016). Noteworthy, this framework does not address the resilience of urban systems at all layers. For instance, improving the perception of an urban system with respect to its environment is an open, challenging issue, not addressed in this chapter. Indeed, in our model we must assume that the transition rules characterizing a dynamic system are “correct” and that the agents playing the role of selecting the best strategy to perform are fully rational, i.e., their intention is only to maximize the resilience of the system in the future. Additionally, partial observability is a more realistic parameter to take into account for further research.


  1. 1.

    Given a set E, the notation #E stands for the number of elements in E.

  2. 2.

    Used in the sense of system dynamics (Scheffer and Carpenter 2003) a “regime” is the set of states that define a domain of attraction. In a regime the system has the same essential structure, function, feedbacks and, therefore, identity (Walker et al. 2004). A regime shift occurs when a system crosses a threshold into an alternate domain of attraction.


  1. Bruneau, M. (2003). A framework to quantitatively assess and enhance the seismic resilience of communities. Earthquake Spectra, 19.Google Scholar
  2. Chomsky, N. (1986). Knowledge of language, its nature, origin, and use. New York/Wesport/London: Praeger.Google Scholar
  3. Cicchetti, D. (2010). Resilience under conditions of extreme stress: a multi-level perspective. World Psychiatry, 9(3), 145–154.CrossRefGoogle Scholar
  4. Grimm, V., & Calabrese, J. M. (2011). What is resilience? A short introduction. Dans Viability and resilience of complex systems (pp. 3–13). Berlin: Springer.Google Scholar
  5. Haimes, Y. Y., Crowther, K. G., & Horowitz, B. M. (2008). Homeland security preparedness: balancing protection with resilience in emergent systems. Systems Engineering, 11(4), 287–308.CrossRefGoogle Scholar
  6. Hamming, R. W. (1950). Error detecting and error correcting codes. Bell System Technical Journal, 29, 147–160.CrossRefGoogle Scholar
  7. Holling, C. (1973). Resilience and stability of ecological systems. Annual Review of Ecology and Systematics, 4, 1–23.CrossRefGoogle Scholar
  8. Ilmola, L. (2016). Chap. 12: Competency metric of economic resilience. Dans Urban Resilience: A Transformative Approach. Springer.Google Scholar
  9. Linkov, I., Eisenberg, D. A., Plourde, K., Seager, T. P., Allen, J., & Kott, A. (2013). Resilience metrics for cyber systems. Environment Systems and Decisions, 33(4), 471–476.CrossRefGoogle Scholar
  10. Maruyama, H. (2016). Chap. 1: Taxonomy and general strategies for resilience. Dans Urban resilience: A transformative approach. Springer.Google Scholar
  11. Scheffer, M., & Carpenter, S. R. (2003). Catastrophic regime shifts in ecosystems: Linking theory to observation. Trends in Ecology & Evolution, 18(12), 648–656.CrossRefGoogle Scholar
  12. Schwind, N., Magnin, M., Inoue, K., Okimoto, T., Sato, T., Minami, K., et al. (2016). Formalization of resilience for constraint-based dynamic systems. Journal of Reliable Intelligent Environments2(1), 17–35.CrossRefGoogle Scholar
  13. Schwind, N., Okimoto, T., Inoue, K., Chan, H., Ribeiro, T., Minami, K., et al. (2013). Systems Resilience: A Challenge Problem for Dynamic Constraint-Based Agent Systems. In Proceedings of the 12th International Conference on Autonomous Agents and Multi-Agent Systems (AAMAS’13) (pp. 785–788).Google Scholar
  14. Smith, P., Hutchison, D., Sterbenz, J. P., Schller, M., Fessi, A., Karaliopoulos, M., et al. (2011). Network resilience: A systematic approach. IEEE Communications Magazine, 49(7), 88–97.CrossRefGoogle Scholar
  15. Statistics Finland. (2016).
  16. Stoicescu, M., Fabre, J.-C., & Roy, M. (2011). Architecting resilient computing systems: Overall approach and open issues. Software Engineering for Resilient Systems (Vol. 6968, pp. 48–62). Springer.Google Scholar
  17. The New International Webster’s Comprehensive Dictionary. (2016).
  18. Walker, B., Holling, C. S., Carpenter, S. R., & Kinzig, A. (2004). Resilience, adaptability and transformability in social-ecological systems. 9(2).Google Scholar
  19. Wohlgemuth, S. (2014). Is privacy supportive for adaptive ICT systems? In Proceedings of the 16th International Conference on Information Integration and Web-based Applications and Services (iiWAS’14) (pp. 559–570).Google Scholar

Copyright information

© Springer International Publishing Switzerland 2016

Authors and Affiliations

  • Nicolas Schwind
    • 1
  • Kazuhiro Minami
    • 2
  • Hiroshi Maruyama
    • 5
  • Leena Ilmola
    • 3
  • Katsumi Inoue
    • 4
  1. 1.National Institute of Advanced Industrial Science and TechnologyKoto-kuJapan
  2. 2.Institute of Statistical MathematicsTachikawaJapan
  3. 3.International Institute for Applied Systems AnalysisLaxenburgAustria
  4. 4.National Institute of InformaticsChiyodakuJapan
  5. 5.Preferred Networks, Inc.ChiyodakuJapan

Personalised recommendations