#### Abstract

The noncentralized model predictive control (NC-MPC) framework in this paper refers to any distributed, hierarchical, or decentralized model predictive controller (or a combination of them) the structure of which can change over time and the control actions of which are not obtained based on a centralized computation. Within this framework, we propose suitable online methods to decide which information is shared and how this information is used between the different local predictive controllers operating in a decentralized, distributed, and/or hierarchical way. Evaluating all the possible structures of the NC-MPC controller leads to a combinatorial optimization problem. Therefore, we also propose heuristic reduction methods, to keep the number of NC-MPC problems tractable to be solved. To show the benefits of the proposed framework, a case study of a set of coupled water tanks is presented.

#### 1. Introduction

During the last decades, there has been a notable increment in the size of the problems dealt by control engineers. Large-scale applications such as irrigation canals [1], transportation networks [2], urban water systems [3], or supply chains [4], among many others, are now within the scope of control theory due to the proliferation of noncentralized control techniques (see, e.g., the surveys [5, 6]). The basic idea behind these control schemes is the well-known* divide and conquer* principle. In this way, the control problem of a large-scale monolithic system is partitioned into several smaller control problems that are assigned to a set of local controllers or* agents*. A similar approach can be used to deal with the overall control problem that results from the interaction of several coupled independent dynamical systems that pursue different goals.

In the literature, most noncentralized schemes focus on the following scenarios: () the overall system is partitioned in such a way that the coupling between subsystems is weak and can be ignored; that is, the agents work in a decentralized fashion; () the coupling between the different subsystems demands coordination between the local controllers and, for this reason, a communication mechanism between the agents has to be provided. In the latter scenario, we say that the agents work in a distributed or in a hierarchial fashion. In general, distributed control schemes outperform the decentralized ones but at the price of a higher complexity from both a communication burden viewpoint and an algorithmic viewpoint. More recently, the evolution of the field has led to the development of control schemes in which the local controllers adopt a decentralized attitude when the coupling between the control tasks is low and a distributed approach when it is high. In other words, the coordination and communication structure are adapted to the coupling between the control tasks. As a result of this, the local controllers are separated dynamically into cooperative groups or* coalitions*. For example, in [7], the set of active constraints is used to modify the sets of cooperating agents; in [8, 9], the coupling structure of the plant is exploited to divide it into hierarchically coupled clusters; in [10, 11], the coalitional model predictive control (MPC) framework is used, where only the couplings with an important contribution to the overall system performance are considered. Finally, the aggregation of control nodes and the inclusion of constraints regarding the division of the benefits and costs derived from the cooperation is studied in [12].

In this work, we focus on a novel type of control schemes with time-varying communication topology, which presents several open research issues. In the first place, it is clear that in a large-scale application the control scheme cannot switch between all the possible network topologies [13, 14]. In fact, the problems derived from the resulting combinatorial explosion in this context are pointed out in several of the aforementioned works, for example, [10, 11]. How to decide on the most appropriate topology at a given time step is a difficult problem similar to that of system partitioning, for which there are relatively few results available in the literature (see, e.g., [15–18] and the references therein).

Another open issue is the optimal way to define hierarchies between local controllers [19]. Most distributed control schemes are simply based on peer-to-peer coordination, but there are also other alternatives; for example, there are schemes that implement a master-slave hierarchy in which the agents have to wait for their turn before calculating and implementing their control actions [5]. How to determine dynamically the best hierarchical relationships between the controllers is another open problem.

This work proposes a noncentralized MPC (NC-MPC) framework in which the overall system partition and the hierarchy relationship between the corresponding subsystems vary dynamically over time. The task of the NC-MPC controller is to identify the relevant regions (partitioning) and to assign to them more importance by changing the control structure. To achieve this, the amount of information exchanged between the controllers can be increased or the hierarchical level of those crucial regions/subsystems can be augmented. In particular, several possible control structures for the communication between subsystems are considered and the hierarchical control system implements the one that provides the best performance according to a set of given objectives. In this way, the control structure gains flexibility to increase its adaptability to the evolution of the system conditions and external variables. Specifically, in this paper we focus on large-scale systems in which there is a* flow* between or through the constitutive elements of the system. Water, traffic, electricity, logistic, and data networks are practical examples of this type of systems. In this context, flow is understood in the sense of movement of raw material/particles/matter related to the use or function of the system. For instance, in water networks, flow would correspond to the movement of water from point A to point B; in transportation systems, it would correspond to the movement of cars/trains/bikes within the network; in data networks, it would be related to the data packets moving within a given network.

The remainder of the paper is organized as follows. In Section 2, the control-oriented framework and a proposed partitioning method are presented. Section 3 presents the noncentralized model predictive control (NC-MPC) framework. Section 4 details the proposed rules to define the changes in the structure of the NC-MPC controller. Section 5 presents numerical results using an interconnected water tank system benchmark. Finally, the main conclusions of the paper and relevant lines for future research are given in Section 6.

#### 2. System Modelling

Given the complex nature of large-scale network systems (LSNS), from a control viewpoint it is preferable to work with control-oriented models [20, 21] that are accurate enough to capture the relevant dynamics but yet simple enough to reduce both complexity and computation burden [22].

##### 2.1. Control-Oriented Modelling Framework

In flow networks, an LSNS may be represented by a directed graph , where nodes in are compositional elements that characterize an attribute of the system [21]. This set is composed of storage elements, flow handling elements, sinks, and intersection nodes [20]. Likewise, the edge in the set indicates that the element is physically connected with the element (so there are variables from that have an influence over ).

Considering the volume as the state variable, the flow through handling elements as the controlled inputs, and flows to sinks as system disturbances, an LSNS may be generally described in a state-space form by the following linear discrete-time dynamic model:where , , and correspond to the states vector, the controlled input vector, and measured disturbances vector, respectively. Moreover, , , and are state-space system matrices for balances in storage elements, and , are matrices for static balances in nodes. Notice that there is no term in (1b) since it is supposed that all storage element outflows are controlled. Besides, is a zero vector. All vectors and matrices are dictated by the network topology. In general, states and control inputs are subject to constraints of the formwhere and are the resulting hyperboxes of the corresponding element constraints.

##### 2.2. Model Decomposition

Considering the control-oriented model (1a), (1b), when a particular partitioning methodology is applied, the resulting subsystems may be connected by* topological relations* and/or* information relations*. The former are related to the nature of the variables that different subsystems may share: states and/or control inputs. The latter are related to the information that the controllers of the corresponding subsystems might exchange.

The overall system (1a), (1b) is assumed to be decomposed in a set of nonoverlapping subsystems, which are output-decentralized and input-coupled. The model of the th subsystem , for , is stated as follows (considering the partitioning approach in [15], we assume that constraints including the state of subsystems are not coupled. The only cross-influence between subsystems is given by the established shared input variables): withwhere is the local state vector; is the local measurable disturbances vector; stands for the input vector that only affects the local dynamics; is the input vector decided by the th subsystem that affects both the local dynamics and the dynamics of the aggregated set of neighboring subsystems; and the set aggregates the neighboring subsystems whose inputs affect the th subsystem. The dimensions of the matrices in (3a), (3b), and (4) are stated in Table 1.

In the same way, constraints (2a), (2b) are partitioned for each th subsystem aswhere and (Cartesian product).

#### 3. Noncentralized Model Predictive Control (NC-MPC)

From the LSNS model (1a), (1b) at time step , we consider the following sequences of states, controlled inputs, and disturbances over a fixed-time prediction horizon :with , for , and is the control horizon. These sequences depend on the initial state vector . The sequence can be defined according to the case and the nature of the system disturbances. Hence, may be considered as a constant value over or can be computed using a forecasting algorithm. Now we state the overall control problem.

*Problem 1 (centralized MPC). *Design an MPC controller that solves the open-loop optimization problem:subject to system model (1a), (1b), system constraints (2a), (2b) over , the initial condition , and a set of operational constraints given by management policies of the system and collected in the expressionwhere in (7a) is the cost function collecting all control objectives with index set and are positive scalar weights to prioritize the th control objective. Moreover, , , , and . Assuming that the optimization problem (7a), (7b) is feasible, then there is an optimal solution given by the sequence of control inputs and then the receding horizon procedure setsand disregards the computed inputs from to , with the whole process repeated at the next time step .

Expression (8) is known in the MPC literature as the MPC law [23]. Typically, the minimization in (7a) is implemented in a centralized way. For large-scale systems, centralized MPC may become impractical because of the large number of variables and large amounts of information exchange, which in turn might imply a huge computational burden. Therefore, NC-MPC schemes are proposed to deal with large-scale MPC problems given their capabilities to divide a complex problem into several less-complex subproblems.

##### 3.1. Noncentralized Predictive Control Approach

To overcome the computational problems associated with the implementation of the centralized MPC schemes, NC-MPC arises to deal with large-scale systems [5, 24]. This strategy relies on designing less complex MPC controllers, in order to have a more tractable and less computationally demanding control structure. Features like sparsity of the state equations, distance between actuators, and communication issues are typically used to merge local states and inputs and to define the resulting subsystems. The way the original problem is decomposed determines the design of the local MPC controller , with , for the subsystem . The set includes the local MPC controllers of all the LSNS subsystems. The drawback of NC-MPC with respect to a centralized MPC is the potential occurrence of suboptimalities arising from the way the system is decomposed and from the greater algorithmic complexity.

In (1a), (1b) only input coupling is considered [15]. We also assume the possibility of defining local operational constraints so the rules for the overall system (7b) can be decoupled without affecting the performance of the controller. We assume the cost function (7a) can be split such that each subsystem considers the local cost function

Notice that, for the th objective, the weights and for subsystems and may be different, which implies different prioritization of control objectives, also to compensate for possible couplings through the objective function (moreover, and could even be time-varying. In this work, for simplicity, we assume they are constant). This fact would introduce some extra performance suboptimality in case a proper estimation of those couplings is not available. It is assumed that, in case of availability of a communication channel, local MPC controllers can coordinate or cooperate with each other to calculate their best control sequences that increase the overall performance, considering the effects of other MPC controllers, and to decide their control actions with this information. From Problem 1, the following Problem 2 arises naturally.

*Problem 2 (noncentralized MPC). *Design a local MPC controller that solves the open-loop optimization problemsubject to system local model (3a), (3b), system local constraints (5a), (5b) over , initial condition , and a set of operational constraints given by management policies of the system and collected in the formwith all matrices having suitable dimensions according to the length of the state, controlled input, and disturbance vectors related to the subsystem . Assuming that the optimization problem (11a), (11b) is feasible, then there is an optimal solution given by the sequence of control inputs , and then the receding horizon procedure setsrepeating the whole process at the next time step .

The control input vector in (3a), (3b) depends on the availability of the neighboring controllers to communicate their information. In particular, in this paper we consider three cases for the relationships between two local controllers: () decides not to share the inputs with at all, () shares the control sequence decided in the previous time step , and () shares its current decision . The option to communicate information (or not) will define a dynamic topology for the communications of the overall system. Next in Section 3.2, the possible relationships between controllers are described.

##### 3.2. Relationships between Controllers

The control input vector of the local model (3a), (3b) is defined as Note that not all these inputs are computed by controller . In particular, , , are computed by while , , are decided by the controller . In general, and depend on the type and amount of information exchanged between controllers and . The following cases can be considered for (computed by , affecting ): (i)If is at a higher level of the hierarchy than , will compute first and then it will share this value with .(ii)If is at the same level of the hierarchy compared to , we have the following cases:(a)In a distributed MPC scheme, obtained by will be jointly calculated with . We will say in this case that subsystems and are working within a* coalition*.(b)In a decentralized fashion with information broadcast, the value of will be transmitted.(c)If there is no communication, a nominal value is used.(iii)If is at a lower level of the hierarchy than , we have the following cases for the controllers:(a)If there is communication, the value of will be known.(b)If there is no communication, a nominal value is used.

In the next section, integer variables are used to capture the option of controllers to share information and to define the topology for the communication between controllers. For a given value of each , the subsystems will be organized in levels of hierarchy, where there are subsystems at each level, for . Therefore, each subsystem in the th level is denoted as , with and .

#### 4. Switching Mechanism for Communication

In this section, the switching mechanism problem for communication between local controllers is described. The idea is to control the large-scale system by clustering dynamically the local MPC controllers. To this end, a supervisory controller decides how the information flows into the NC-MPC controller.

The optimization variable for the supervisory controller is the NC-MPC structure that the system will operate under. This means that we require that the controllers can adjust their operation based on the instructions from the supervisory controller about the structural configuration that they will have to follow. The communication between controllers and supervisory controller either can be fully centralized or can include some degrees of decentralized decisions [25–28]. In this paper, a hierarchical methodology is used, where the supervisory controller decides the best structure (NC-MPC topology given by the integer variables ), while the local controllers will optimize their control and state sequences. This keeps the calculation as much noncentralized as possible, for each of the possible scenarios of NC-MPC structures suggested by the supervisory controller. The communication from each controller to the supervisory controller includes the initial states and the set of control sequences for each of the possible configurations. Then, the supervisory controller evaluates, among all the received solutions, which one will be the best configuration for the local systems according to the global objective function that includes both performance and communication effort. Note that complexity of this calculation corresponds to the number of function evaluations among the total number of possible structures, including evaluations of the overall system model available in the supervisory controller and the search of the optimal structure. Likewise, the controllers of the lower control layer that communicate following the supervisory controller instructions may use different communication burden depending on the particular scheme implemented to this purpose. This topic is beyond the scope of this paper but some works have quantified the amount of communication required for distributed MPC schemes, for example, [29, 30].

##### 4.1. Information Topology

Consider the interactions between two subsystems and . In general, the control action sequences decided by the local MPC controller are and , and for the sequences are and . The control actions that are decided by the controller and affecting the subsystem are and analogous for and .

Let represent the availability of to communicate to at time step . In particular, if does not share with at all; if shares the control sequence decided in the previous time step , and if shares its current decision . These options lead to nine different cases for the way the controllers and can share their relevant information, as shown in Figure 1.(i)In NC-MP, . This case the local MPC controllers and , based, for example, on a consensus algorithm or any other distributed MPC approach will decide their control actions jointly during the sampling time (coalition between subsystems and ).(ii)In NC-MP, and . This case is a full communication case as and communicate and , respectively. Controller knows that controller will share information, and the optimization procedure of will hierarchically communicate its resulting optimal variables. This suggests a hierarchical structure, where is the master and is the slave at time step . This is analogous for the case NC-MP, with and .(iii)In NC-MP, and . This case is a hierarchical case, where the information flows from to in a hierarchical way, but the controller does not communicate its control actions. In this case, the controller will include the effect of using nominal values. There are different ways to incorporate the nominal values: by using an optimized single static value, by using a look-up table with a set of static variables suitable for different conditions, or via a dynamic model capable of estimating the unavailable information. This is analogous for the case NC-MP with and .(iv)In NC-MP, and . The case is a decentralized one, where the effect of in the MPC controller and the effect of in are included in the optimization procedure by using nominal values, independently of the current or previous decision taken by those controllers.(v)The cases NC-MP, NC-MP, and NC-MP are all decentralized. In case NC-MP, with and , only communicates and it stores/transmits . In case NC-MP, with and , only communicates and it stores/transmits . In case NC-MP, with and , both and communicate their whole control sequences. In the case when the control actions are not communicated, the controllers will consider the effect of the other controller using nominal values.

The number of possible communication topologies grows exponentially with the number of control actions involved in the control problem. In particular, if there are control variables, different NC-MPC control topologies can be considered. Nevertheless, this number can be reduced because some of them may not make sense for a particular problem. For this reason, it is acceptable to assume that a set of meaningful possible control topologies is selected a priori. Given the large-scale nature of the considered problems, we assume that an offline component will limit the number of topologies. However, this paper mainly focuses on the management of the local controllers.

##### 4.2. Optimization Methods for Switching Procedures

The supervisory controller solves an optimization problem by comparing and selecting the best NC-MPC structure at the moment of the switching. Each possible NC-MPC structure is determined by the variables . The supervisory controller evaluates the following global objective function that includes both performance and communication effort:where the first term represents the performance term and the function penalizes the communication efforts of the topology. The computations of the control actions are done in a noncentralized manner, the function of the supervisory controller being to evaluate times the objective function by using the information coming from the local controllers and then to find the best NC-MPC structure. To facilitate the understanding of the control structure, Figure 2 presents a scheme of the global algorithm, which includes both offline and online components. The offline component consists of the heuristic approaches that allow reducing the number of topologies to be evaluated by the supervisory controller. This reduction allows keeping a suitable balance between the global optimal solution (by evaluating the theoretical maximum number of possible topologies) and a reasonable computation time (depending on the application and its time constants). The offline component together with proper solvers for the online part are crucial to keep the strategy tractable.

In order to understand the complexity of the combinational problem, consider the possible combinations of NC-MPC structures for a simple system with four possible decision variables which are shown in Figure 3(a). Each variable , , , and can take three possible values. Then, full enumeration of all the possible combinations leads to 81 possible NC-MPC communication structures. As the full enumeration of all the possible NC-MPC structures is not practical, offline reduction methods can be considered. One solution is bounding the variations of the communication signals , so as to avoid switching directly from full communication to no communication. In Figure 3(b), to reduce the complexity, the case is depicted. In this case,(i)if , then ;(ii)if , then ;(iii)if , then .

**(a)**Diagram to show the complexity of the problem, NC-MPC controllers to be evaluated

**(b)**Reduction method to simplify the problem. Thick dashed lines represent the selected solutions. In this case, NC-MPC controllers are evaluated at time step

**(c)**Pruning to evaluate only the most relevant structures. Thick dashed lines represent the selected solutions. In this case, NC-MPC controllers are evaluated at time stepIn Figure 3(b), , , , and . Then, for time step , can take two values ( or ), and can take the values or , and can take three possible values (, , or ). The total number of combinations for this case is . Another method to reduce the complexity of the problem consists in holding any possible variation at least during a period of time steps. Thus, the supervisory controller operates every step . Therefore, if , then for . A third option could be to limit the total number of variations per subsystem, so the communication will change gradually when the subsystem has many different communication channels. In this way, , for a given . The drawback of any of those methods or a combined method is the evaluation of still considerable number of topologies. In this paper we propose to prune the search tree and to only consider a few sets of relevant NC-MPC configurations, which are selected based on the application. For example, in Figure 3(c) a representation of the four more relevant NC-MPC configurations is presented. At the supervisory level, switches among only those NC-MPC structures will be allowed as shown in Figure 4. To obtain a good set of relevant NC-MPC configurations, a simulation-based procedure can be conducted to find the most effective topologies that lead to the best performance. Alternatively, interviews with experienced operators and knowledge based strategies with learning capabilities can be applied to select the best set based on real-life measurements and operation.

The supervisor will instruct the local controllers to calculate control actions under a limited number of communication scenarios (). The sets of control actions proposed by the controllers for each communication scenario are then evaluated in a global model of the system available for the supervisor. Then, to determine the switches, the supervisor will weigh the solutions of the topology considering the following criteria:(i)Minimization of the global objective function for performance, that is, the first term in (14).(ii)Minimization of the communication effort over the ranges for , , and , given by weighted by a cost of the topology. For simplicity of the notation, this term was called in (14), comprising the cost of using the topology given by the controller NC-MP.(iii) for , to reduce the number of switches over time. We assume the supervisory controller operates every step .

Once the variables are determined , the supervisor will indicate the communication topology to be followed at time step . To calculate the control sequences for each communication scenario, the local controllers receive from the supervisory controller the values of the variables and for all the communication channels of subsystem . Then, in the case subsystem is not waiting for information coming from upper levels, it will coordinate (or not) the solution of its optimization problem with the other subsystems at the same level of the hierarchy, and then it will transmit the control sequences to lower levels according to the communication instructions.

#### 5. Case Study

In this section, we present simulations performed for a simple benchmark reported in [31]. It is composed of 16 water tanks arranged in a matrix and each tank has a pipe that connects it with its direct neighbors. The control objective is to minimize a cost function including communication costs and performance. Figure 5 shows the possible control structures selected over the physical topology of the case study. The following discrete-time linear dynamics are assumed for each tank: where is the level of the water in tank , is its cross-sectional area, is the sampling time, is the flow through the pipe connecting tanks and , and is the set of tanks connected to tank . The parameters of the model are in Table 2. Each tank is governed by an agent that can manipulate the flow of all the outflow pipes it is connected to (arrows represent the direction of the water flow) and that can communicate the control variables to the connected tanks if the selected control structure commands to do so.

**(a) Big inflow coalition**

**(b) Small inflow coalition**

**(c) Big outflow coalition**

**(d) Small outflow coalition**

**(e) Control structure with hierarchical relationship**

**(f) Control structure with information broadcast**

**(g) Decentralized control structure**

##### 5.1. Control Structures

The following seven possible control structures have been selected:(1)*Big Inflow Coalition*. This option is shown in Figure 5(a) and represents the biggest possible coalition of subsystems that cooperate in order to coordinate the water inflow to the overall system. Notice that subsystem 1 has the monopoly of the external water inflow. For this reason, the remaining subsystems need the aid of the biggest coalition in case there is not enough water to reach the reference.(2)*Small Inflow Coalition*. This option is presented in Figure 5(b). It corresponds to the case in which the four subsystems closest to the external water inflow are grouped into a coalition and the remaining subsystems work in a decentralized fashion. Again, such coalition could be formed when there is water scarcity in these subsystems. Notice that this option requires less coordination than the first one.(3)*Big Outflow Coalition*. This option is shown in Figure 5(c) and represents the biggest possible coalition of subsystems that cooperate in order to coordinate the water outflow leaving the overall system. Notice that subsystem 16 has the monopoly of the external water outflow. For this reason, the rest of the subsystems need the aid of subsystem 16 if there is too much water. Notice as well that, contrary to what happens in the case of water scarcity, in this case the subsystems can pump water to their neighbors.(4)*Small Outflow Coalition*. This option is presented in Figure 5(d). It corresponds to the case in which the four subsystems closest to the external water outflow are grouped into a coalition and the rest of the subsystems work in a decentralized fashion. Again, such coalition could be formed when there is an excess of water in these subsystems. Notice that this option requires less coordination than the third structure.(5)*Control Structure with Hierarchical Relationships*. The fifth possible control structure is depicted in Figure 5(e). In particular, this alternative is a variation of option 1. In this case, tank 4 receives information from the actions that tank 3 is going to carry out. This information is then taken into account by the corresponding controller in order to calculate its control sequence.(6)*Control Structure with Information Broadcast*. This option, which is represented in Figure 5(f), is also a variation of option 1. In this case, however, the agent that regulates the water level of tank 13 also governs input 16. That is, this case represents a control structure in which there is a strict hierarchical relationship between different controllers: one controller is taking control of external inputs. Note that this case is also introduced to establish a comparison with option 5. As it can be seen, the situations of tanks 13 and 4 are symmetrical in the proposed case study. Hence, it is possible to analyze the consequences of two different relationships between controllers: one based on information broadcast and another based on a strict hierarchy in which there is a* transfer* of decision variables from one controller to another.(7)*Decentralized Control Structure*. The last option is shown in Figure 5(g), which corresponds to a fully decentralized control scheme. In this case, there is no coordination among the subsystems and, for this reason, any subsystem with a water level below the reference cannot do anything by itself. On the other hand, subsystems with an excess of water can pump water out of their tanks to the neighboring tanks.

As additional comments, notice that subsystems 4 and 13 are never included in any coalition. This is not a problem for them whenever they have an excess of water, but they depend on their neighbors if they need it, which highlights the importance of the proper coalition formation. In Figure 5, local controllers that cooperate with full communication using a distributed scheme have been grouped into a single and bigger control entity. That is, the communication arrows and the individual agents have been omitted to highlight the fact that, under this type of cooperation, the controllers behave as a centralized unit.

*Remark 3. *Other control topologies could have been considered and included in the example. Nevertheless, we believe that the above seven topologies allow us to illustrate how the cooperation can be increased and decreased according to the situation of the system regarding its objective. Likewise, this choice also allows us to point out the consequences of the different type of relationships that can be established between the local controllers.

##### 5.2. Simulation Parameters

The simulation is implemented in the following way: each simulation step corresponds to 0.15 s. Every two simulation steps the controllers update their control actions according to the topology selected, which, in turn, can change each ten simulation steps.

The parameters used in the simulation are listed in Table 2. In this example, the control scheme recalculates the most appropriate system partitioning each five time steps ( introduced in previous section). A time step is defined as two times the simulation step. To this end, if the time step index is a multiple of , the following global cost function is minimized:where stands for the communication costs associated to the partitioning given by the topology used and is the local cost function that stands for the local objectives that each subsystem has, which is defined aswith . The values corresponding to the reference and the weighting matrices and are given in Table 2.

During the remaining four time steps the topology remains constant and the members of each partition calculate jointly their actions in order to minimize the sum of the corresponding . The solver used is Quadprog from Matlab. For the integer variables explicit enumeration was employed.

Different topologies will have different costs. These cost values represent the coordination efforts made by the control scheme. In particular, no penalty is assigned for topology 7 because it represents a fully decentralized control scheme. Topologies 2 and 4 are slightly penalized because each one introduces cooperation between four local controllers. A stronger penalty is assigned to topologies 1 and 3 because of their greater cooperation degree. Finally, the maximum penalty considered in this case study is assigned to topologies 5 and 6 since they involve an additional communication link in comparison with topology 1.

##### 5.3. Results

Figure 6 shows the evolution of the water levels of the system controlled with the proposed switching scheme when the initial level is 0.25 m for each tank. Given that tank 1 is the only one equipped with an external controllable input, the supply of water for all the tanks in the system depends exclusively on this subsystem. Hence, the corresponding controller has an important role in the coordination process needed to supply water for all the tanks.

In Figure 6, the evolution of the control topology is also shown. The system starts by using the control structure 2, which makes sense since the amount of water supplied by controller 1 is limited. For this reason, it is only worth to coordinate the actions with the closest neighbors. A few steps later, however, the cooperation grows and the control structure 1 is selected. As the situation of the newly aggregated agents improves, the structure goes back to 2. Once again, the coordination group is enhanced but this time control structure 6 is selected; that is, controller 13 is given priority and is allowed to govern too. In this way, it is able to achieve the desired set point. From that moment on, the control structure goes to 2 and, after that, there is a succession of commutations between control structures 1 and 3. Taking into account that none of the control structures allows centralized coordination, switching in this way is a suitable mechanism to achieve a good performance, that is, the biggest groups of subsystems for coordinating inflow and outflow alternate in order to distribute the water all over the network. Finally, the last control structure selected is 7, which is the completely decentralized control structure. In this case, there is nothing that can be gained from cooperation, at least taking into account the price of communication.

Another simulation has been performed using an initial level of 0.75 m for each tank. The corresponding results are shown in Figure 7. Note that here the coordination degree required to reduce the excess of water is lower because each controller can pump out water independently. However, constraint satisfaction requires coordination. For this reason, the control structures that are selected in this simulation are 3, 4, and 7.

Finally, controller structure 5 deserves some comments. It is a variation of controller structure 1, in which subsystem 4 receives information from the group of subsystems that work in a coordinated fashion. While this broadcast of information is meaningful for controller 4 to calculate its control action, it does not improve the overall performance. Thus controller 1 is selected more often than 4 because of the additional cost of communications. In addition, it is well known that information broadcast is not as efficient as information exchange in order to improve the overall performance [6].

#### 6. Conclusions

A noncentralized MPC controller that adapts to different operational conditions by switching between topologies is proposed in this paper. Including the changes in the topology explicitly in the predictions leads to an NP-Hard combinatorial mixed-integer optimization problem that we solve for a limited number of cases. This allows including the dynamic effect of the switching explicitly in the prediction model. The controller was tested on a water distribution system, showing its effectiveness to adapt to different operational topologies according the relative importance of the different topologies.

Several research lines can be proposed from the ideas discussed in this work, including issues related to the partitioning of the dynamical system seen as network composition of elements, as well as robust feasibility and stability when considering switching partitioning and control topologies. Moreover, further analysis about general robustness of the noncentralized control schemes and their influence over the overall system performance arise as topics of current and future interest around this research.

#### Conflict of Interests

The authors declare that there is no conflict of interests regarding the publication of this paper.

#### Acknowledgments

This research is supported by the European 7th Framework Network of Excellence Highly Complex and Networked Control Systems (HYCON2), the Secretaria d’Universitats i Recerca i del Departament da Economia i Coneixement of Generalitat de Catalunya, the European COST Action TU1102, and the Spanish project ECOCIS (refrence DPI 2013-48243-C2-1-R). Financial support by the FP7-ICT project DYMASOS (reference 611281) is also gratefully acknowledged.