Weak Interactions Based System Partitioning Using Integer Linear Programming
Romain Guicherd, Paul A. Trodden, Andrew R. Mills, Visakan, Kadirkamanathan

TL;DR
This paper presents a method for system partitioning based on minimizing weak interactions between subsystems using linear integer programming, aiding in controller design by identifying controllable subsystem groupings.
Contribution
The paper introduces a novel linear integer programming approach to system partitioning that minimizes interactions and ensures controllability of subsystems.
Findings
Effective partitioning with minimal interactions demonstrated
Method ensures controllability of resulting subsystems
Two example applications validate the approach
Abstract
The partitioning of a system model will condition the structure of the controller as well as its design. In order to partition a system model, one has to know what states and inputs to group together to define subsystem models. For a given partitioning, the total magnitude of the interactions between subsystem models is evaluated. Therefore, the partitioning problem seeking for weak interactions can be posed as a minimization problem. Initially, the problem is formulated as a non-linear integer minimization that is then relaxed into a linear integer programming problem. It is shown within this paper that cuts can be applied to the initial search space in order to find the least interacting partitioning; only composed of controllable subsystems. Two examples are given to demonstrate the methodology.
| Primary | Auxiliary | ||
| 0 | 0 | 0 | 0 |
| 0 | 1 | 0 | 0 |
| 1 | 0 | 1 | 1 |
| 1 | 1 | 0 | 0 |
| Primary | Auxiliary | ||
| 0 | 0 | 0 | 0 |
| 0 | 1 | 0 | 0 |
| 1 | 0 | 1 | 1 |
| 1 | 1 | 0 | 0 |
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Weak Interactions Based System Partitioning Using Integer Linear Programming
Romain Guicherd
Paul A. Trodden
Andrew R. Mills
Visakan Kadirkamanathan
Rolls-Royce University Technology Centre, Department of Automatic Control & Systems Engineering, University of Sheffield, Mappin Street, Sheffield, S1 3JD, UK (e-mail:[email protected]; [email protected]; [email protected]; [email protected]).
Abstract
The partitioning of a system model will condition the structure of the controller as well as its design. In order to partition a system model, one has to know what states and inputs to group together to define subsystem models. For a given partitioning, the total magnitude of the interactions between subsystem models is evaluated. Therefore, the partitioning problem seeking for weak interactions can be posed as a minimization problem. Initially, the problem is formulated as a non-linear integer minimization that is then relaxed into a linear integer programming problem. It is shown within this paper that cuts can be applied to the initial search space in order to find the least interacting partitioning; only composed of controllable subsystems. Two examples are given to demonstrate the methodology.
keywords:
Decoupling problems, linear multivariable systems, decentralized control, integer programming.
1 Introduction
Systems models are widely used in control design especially with the development of techniques such as model predictive control (Rawlings and Mayne (2009)) (Maciejowski (2002)). Systems are growing in size and complexity and they are in most cases composed of interacting subsystems (Scattolini (2009)). For these large scale systems, the design of a centralized controller can be prohibitive due to the heavy computational resources required (Mayne (2014)). Also, if the system is geographically spread out, communication delays between the centralized controller and the actuators and sensors arise. One way to solve this problem is to see the system as a concatenation of subsystems and to design local controllers for each subsystem. In a top-down approach the full model of the multivariable system is partitioned into subsystem models so that the decentralized controller can be designed. Decentralized control has been studied for decades and design procedures have been established (Šiljak (1991)) (Bakule (2008)). However, the system model partitioning problem has been overlooked, often because the system is already composed of physical subsystems. Every subsystem model is defined by a set of states and inputs. The weak interaction partitioning problem consist of defining these sets in order to minimize the coupling between subsystem models. For instance, strongly coupled subsystem models can emerge from the main system model, particularly within chemical plants (Stewart et al. (2010)) or heating systems (Moroşan et al. (2010)). The ideal partitioning of a system model would yield completely decoupled subsystem models.
Defining the subsystems of a plant has been done in different ways in the past. One of the first methods employed to couple inputs and outputs was the relative gain array (Bristol (1966)). This method is used to find the best pairing at steady state between inputs and outputs and hence to choose the most relevant input to control a given output in a multi-input multi-output system. It can be seen as a response to the industrial need to control a multi-variable process as a combination of single variable processes. The relative gain array has been extended to the block relative gain, allowing for suitable pairing for block decentralized control (Manousiouthakis et al. (1986)) (Kariwala et al. (2003)). The extension of the relative gain array allows the design of multi-variable controllers in a decentralized way. However it only links inputs and outputs together and does not provide a partitioning of the plant model. A technique similar to the relative gain array, is the Nyquist array method, allowing the design of single-input single-output controllers after rendering the model diagonaly dominant (Leininger (1979)) (Chen and Seborg (2003)). System partitioning can be performed by seeking the least interacting groups. Another technique used for system decomposition and integration is the design structure matrix also known as the dependency structure matrix or interaction matrix (Browning (2001)). This technique indicates the link between the elements it represents, moreover the links are directed. Elements along a row indicate that a contribution is provided to other elements whereas elements along a column indicates a dependency from other parts of the system. The attribution of weights within the interaction matrix is used in order to perform clustering and achieve system decomposition. Other work on decentralized control combined the controller design along with the controller topology, these two aspects are combined in the optimization function yielding a trade-off between the need for feedback links and the loss of performance compared to the centralized controller (Schuler et al. (2014)). Finally, other works have studied the actuator partitioning problem (Jamoom et al. (1998)) (Motee and Sayyar-Rodsari (2003)). To the best of the authors’ knowledge the problem addressing state space model partitioning has not been studied. Therefore this partitioning approach is a standalone work, making any comparison difficult.
In this paper, we propose an integer programming based approached to the problem of partitioning a system model into a set of non-overlapping but coupled subsystem models. The objective is to reduce the magnitude of the interactions between the subsystem models. Finally, cuts are added to rule out non-controllable partitionings in order for the algorithm to yield only controllable subsystem models.
The paper is organised as follows. Section 2 states the problem and section 3 introduces the required notations. Section 4 demonstrates how the problem can be relaxed into a linear integer programming problem. In section 5 the controllability cut principle is presented allowing to obtain controllable subsystems, section 6 explains the linear partitioning algorithm. In order to illustrate the algorithm section 7 includes some examples, finally section 8 concludes the paper.
Notation: For such that , the set defines the set containing the integers from to included. The operator is used to denote the magnitude of a complex number when applied to a complex number. When applied to a matrix the magnitude operator is applied to all the matrix elements then summed. The operator defines the Euclidean norm for complexes, vectors and matrices. For a set , the notation defines . The superscript ⊺ represents the transpose of a vector or matrix. A matrix will be noted and , respectively for the element and block notations, with row blocks and column blocks. For all and , denotes the sum of all the diagonal elements of . For all and , denotes the dimension of the vector space spanned by the columns of . For any and the notation defines the matrix obtained by concatenating and horizontally. For any couple of integers , denotes the Kronecker delta function.
2 Problem statement
Given a linear time invariant controllable state space model defined by
[TABLE]
where the matrix is the state matrix and the matrix is the input matrix respectively with the appropriate sizes for states and inputs, therefore, and . Partitioning the system model (1) consists of decomposing the inputs as well as the states into groups representing subsystems. For a given number of partitions and for any subsystem the model can be expressed as follows
[TABLE]
with for all , and such that
[TABLE]
The weak interaction partitioning problem consists of minimizing the magnitude of the right-hand side sum in (2) for the subsystems while keeping each of them controllable. A non-overlapping condition for the states and the inputs is imposed by (3). The next section presents the decision variables, the constraints as well as the interaction metric necessary to formulate the weak interactions optimization problem.
3 Weak interactions problem formulation
3.1 Decision variables
A decision variable is associated to the couples formed by a group and a state as well as a group and an input . All the decision variables are binary variables. They are organised in two grouping matrices, the state grouping matrix and the input grouping matrix . Therefore, the rows of and represent the groups and the columns respectively represent the states and the inputs. For example with and a non-overlapping state grouping matrix could be
[TABLE]
In this example, the first three states belong to the second group, the fourth state composes the first group and the last state is in the third group. Hence, a specific partitioning is represented by a pair of state and input non-overlapping grouping matrices. The columns of the grouping matrices are composed of zeros and a single one. The one is positioned in the row representing the group where the state or input belongs respectively for a state and an input non-overlapping grouping matrix. The next subsection presents the linear constraints restricting the decision variables and in the integer optimization problem.
3.2 Partitioning constraints
The formulation of constraints on the decision variables is necessary in order for the algorithm to return a solution complying with the rules defining non-overlapping subsystem models.
- [TABLE]
-
Each state group contains at least a state, hence, no state group can be empty and the partitioning has the correct number of state groups
[TABLE]
- 2.
Each input group contains at least an input, hence, no input group can be empty and the partitioning has the correct number of input groups
[TABLE]
- 3.
A state can be in only one state group, therefore, the multiple use of a state is prevented and the non-overlapping requirement is respected
[TABLE]
- 4.
An input can be in only one input group, therefore, the multiple use of an input is prevented and the non-overlapping requirement is respected
[TABLE]
- 5.
Each state must belong to a state group, consequently, no state is left out of the optimization problem
[TABLE]
- 6.
Each input must belong to a input group, consequently, no input is left out of the optimization problem
[TABLE]
The constraints are expressed for the two grouping matrices, however only three different sets of constraints concern each type of grouping matrix. Because and are arrays of binary variables a natural implicit constraint links and .
[TABLE]
Subsystem interactions can come from the state matrices or the input matrices, the next subsection presents how these interactions can be formulated firstly using the block matrix form and secondly using the state space model elements.
3.3 Objective: minimizing subsystem interactions
The first part of the interactions comes from the state matrices. The subsystem model (2) presents the couplings with the other subsystems in the form of a sum, this sum can be split into the state interactions and the input interactions. For a given number of partitions and for any subsystem the state interactions can be expressed by
[TABLE]
The expression written in block matrix form can also be represented using the state matrix elements as well as the state grouping matrix elements as follows
[TABLE]
The elements from the state grouping matrix are used here as boolean tests to take into account only the interactions acting on the subsystem and coming from the other subsystem states. A similar reasoning is applied to quantify the interactions coming from the input matrices
[TABLE]
In a similar fashion, (8) can also be represented using the input matrix elements as well as the elements of the state grouping matrix combined with the elements of the input grouping matrix, such that
[TABLE]
Likewise, the elements from the state grouping matrix combined with the elements of the input grouping matrix are used as boolean tests to take into account only the interactions acting on the subsystem and coming from the other subsystem inputs. After having defined the two types of interactions, the full interaction metric can be calculated. Consequently, the last step is to pose the weak interactions optimization problem like it is presented within the next subsection.
3.4 Weak interactions optimization problem
The overall formulation of the weak interactions optimization problem is obtained by summing the interactions coming from the states and the inputs over the subsystems
[TABLE]
Hence, the integer optimization problem can be formulated using the same notation employed in (7) and (9) and is expressed as follows
[TABLE]
As it was demonstrated previously within this section the partitioning problem can be expressed as an integer optimization problem. However the cost function representing the interaction metric is non-linear, therefore the problem can be intractable. As it is presented within the next section a linear relaxation of the optimization problem (11) is made possible throughout the use of auxiliary variables.
4 Linear relaxation of the weak interactions problem
The weak interactions optimization problem formulated previously (11) can be turned into a linear optimization problem, this is made possible due to the introduction of auxiliary variables. Replacing a product of binary variables by an auxiliary variable is a well known technique that requires the use of new linear constraints (Williams (2013)) (Bemporad and Morari (1999)) (Cavalier et al. (1990)). Two auxiliary binary variables are created along with their linear constraints. is the binary variable used to take into account the interactions coming from the state matrix. As it is presented in Table I and in (12), is linked to throughout four constraints. Indeed, four inequalities are necessary because of the four possible outcomes for the binary product in (11).
From top to bottom within Table I, the four different cases are, first when no states belong to the group then no interaction has to be accounted for. If the state is not in the group but the state is, then no interaction is accounted for as this will be taken into account in the symmetrical case. If the state belongs to the group and the state does not then an interaction is accounted for. The last case possible is when the two states and both belong to the group , in this last scenario no interaction subsists as they are both in the same group.
The linear constraints for the auxiliary variable are the following
[TABLE]
In a similar way, is the auxiliary binary variable taking into account the interactions coming form the input matrix. This time the constraints are formed using as well as because the input interactions are also state dependant. The same reasoning applies to formulate the four inequalities arising from the binary product in (11).
The four linear constraints associated to are represented in (13).
[TABLE]
Both auxiliary variables have three indexes and can be represented by cubic arrays of binary variables, their respective sizes are for the state auxiliary variable and for the input auxiliary variable . In addition to the constraints presented in (12) and (13), both auxiliary variables have to be composed only of binary variables.
The optimization problem presented in (11) is reformulated into the linear integer optimization problem presented in (14), obtained by replacing the binary products by the auxiliary variables along with their constraints.
[TABLE]
As it was presented within this section, the use of two auxiliary variables enables the linearisation of the optimization problem. The minimization problem presented in (14) because of the use of primary and auxiliary binary variables allows to trade non-linearities for an increase in variable size. Nonetheless the complexity of the optimization problem can be reduced by exploiting the structure of the plant model and by creating only the auxiliary variables where the state space model elements are not equal to zero. For instance, if there is no need to create , similarly if with . The next section presents the notion of controllability cuts reducing the search space in order to obtain only controllable subsystems.
5 Controllability cut
Running the previous optimization problem will yield subsystems presenting the least amount of interactions, unfortunately no information is given concerning their controllability. The state space model of any subsystem , represented without the couplings coming from the other subsystems can be rewritten from (2) as follows
[TABLE]
The controllability of any given subsystem model yielded by the optimization problem can be checked by verifying that the controllability matrix defined in (16) has full row rank.
[TABLE]
Therefore, at the end of the optimization process, a controllability test is performed for each subsystem model, testing that the set of equalities given in (17) holds.
[TABLE]
As one can see the controllability matrices as well as the integers representing the number of states in subsystem are results of the optimization and are not known a priori. Therefore implementing constraints within the linear integer optimization problem in order to restrain the solutions to the set of controllable subsystems is a tremendously difficult task. However, applying controllability cuts to the search space recursively and a posteriori is possible.
Every time a non-controllable partitioning is achieved new linear constraints are added to the existing ones in order to reduce the search space by cutting the non-controllable partitionings out with an affine hyperplane. The principle of cutting solutions out of the search space is similar to the Gomory cuts (Gomory (1958)) where cuts are used to discard solutions that are not integer. Controllability cuts are applied from the root node and are valid for the entire search tree, hence cuts lifting methods are not necessary in this case (Balas et al. (1996)).
Grouping matrices can be seen as a concatenation of basis vectors, such that
[TABLE]
with the canonical orthonormal basis of . Subsequently the square of their 2-norm is equal to respectively and as it is calculated in (19) (20).
[TABLE]
[TABLE]
The set of non-overlapping grouping matrices of size and respecting the constraints (4a) (4c) (4e) will be referred to as with . For a given non-controllable optimal partitioning denoted by and , and for any couple of non-overlapping grouping matrices and , the inequalities (5) and (5) hold.
[TABLE]
[TABLE]
In addition, the upper bound is only reached in (5) when and in (5) when . Consequently there exists a natural way of constructing affine cutting hyperplanes (23) when a non-controllable optimal partitioning is obtained.
[TABLE]
Every time a non-controllable partitioning is obtained a controllability cut (23) is added to the linear constraints before the optimization is computed again. Therefore, the previous non-controllable optimal partitioning can no longer be reached as it is now excluded from the search space. However because the groups are not ordered the same result can be achieved again simply by swapping the rows of and , leading to another representation of the same partitioning. Indeed, without any order constraints on the groups, identical representations of a single partitioning are possible.
Different techniques can be employed to make the optimization more efficient. First of all, it would be possible to constraint the grouping matrices in order to rank the different groups as it has been done with move blocking matrices (Cagienard et al. (2007)). In this case only one representation per partitioning would be possible. The second solution would be to perform controllability cuts every time a non-controllable optimal solution is obtained. Therefore all the possible non-controllable representations of a partitioning would be removed from the search space simultaneously. It is the latter solution that has been implemented in the weak interactions partitioning algorithm. Every time an optimal non-controllable solution is encountered controllability cuts are added to the linear set of existing constraints. The optimization is ran iteratively until the least interacting controllable partitioning is found. The next section presents how the partitioning algorithm is built using the linear relaxation as well as the controllability cut technique.
6 Partitioning algorithm
The algorithm implemented to perform the system partitioning takes the main state space model as well as the group number as inputs. It returns the state and input grouping matrices and once one of the least interacting controllable partitioning is reached. The algorithm can be described by steps as it is computed. The first step is to build the linear constraints that will be used for the primary and auxiliary variables. Then the optimization is performed yielding the subsystem models as well as their controllability matrices. The last step of the algorithm is to add the appropriate set of controllability cuts if the optimal partitioning presents at least one uncontrollable subsystem as well as to go back to the previous step. Otherwise, the algorithm returns the least interacting controllable partitioning as a final result if the optimal partitioning obtained has all its subsystem models controllable.
The weak interaction partitioning problem is a 0-1 integer linear programming problem. The partitioning algorithm is presented below in algorithm 1.
On the very first loop iteration, no solution exists, therefore, the optimization is performed and the first grouping matrices are obtained. The next step is to check that every subsystem is controllable by verifying that (17) holds. If at least one of the subsystems is not controllable then controllability cuts are added to the constraints and the optimization can start again using the reduced search space. The algorithm finishes when the least interacting controllable partitioning comprising groups is found or when no controllable partitioning can be established.
7 Examples
This section presents some examples that were used to test the partitioning algorithm. The first example presented was used only to test the linear optimization and does not require any controllability cuts. However the second example was used specifically to demonstrate the controllability check and the controllability cuts.
7.1 Example without controllability cuts
The first example tested is the state space model of a military engine, the Pratt and Whitney taken from (Jaw and Mattingly (2009)). The algorithm was used with the parameters given in (24). The reader can see that the whole system is already controllable even before performing any kind of partitioning.
The partitioning obtained can be guessed due to the presence of zeros but also because of the presence of large elements in the matrices. The two grouping matrices resulting from the optimization are given in (25). It is important to notice that this first example does not need any controllability cut.
[TABLE]
This example has been run on a standard desktop with an execution time of .
7.2 Example involving controllability cuts
The second example is defined such that
[TABLE]
The first iterations of the algorithm result in non-controllable partitionings. After performing controllability cuts, being , the least interacting controllable partitioning is obtained (27).
[TABLE]
For three groups each controllability cut has to be performed times in order to take into account all the possible permutations. On a standard desktop the total running time was .
8 Conclusion
An integer linear programming approached has been presented within this paper to tackle the problem of partitioning a system model into non-overlapping subsystem models. Auxiliary binary variables have been introduced in order to linearise the objective function. Finally, a method similar to Gomory cuts has been implemented in order to rule out the least interacting partitionnings including at least one non-controllable subsystem model. Because the partitioning problem is a combinatorial problem, the size of the search space increases very rapidly with the size of the system and the number of groups. Therefore the computational cost is important for large scale systems. Future work will address studying the performance of the algorithm as well as its complexity.
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1Bakule (2008) Bakule, L. (2008). Decentralized control: An overview. Annual Reviews in Control , 32, 87–98.
- 2Balas et al. (1996) Balas, E., Ceria, S., Cornuéjols, G., and Natraj, N. (1996). Gomory cuts revisited. Operations Research Letters , 19, 1–9.
- 3Bemporad and Morari (1999) Bemporad, A. and Morari, M. (1999). Control of systems integrating logic, dynamics, and constraints. Automatica , 35, 407–427.
- 4Bristol (1966) Bristol, E.H. (1966). On a new measure of interaction for multivariable process control. IEEE Transactions on Automatic Control , 11, 133–134.
- 5Browning (2001) Browning, T.R. (2001). Applying the design structure matrix to system decomposition and integration problems: A review and new directions. IEEE Transactions on Engineering Management , 48, 292–306.
- 6Cagienard et al. (2007) Cagienard, R., Grieder, P., Kerrigan, E.C., and Morari, M. (2007). Move blocking strategies in receding horizon control. Journal of Process Control , 17, 563–570.
- 7Cavalier et al. (1990) Cavalier, T.M., Pardalos, P.M., and Soyster, A.L. (1990). Modeling and integer programming techniques applied to propositional calculus. Computers & Operations Research , 17, 561–570.
- 8Chen and Seborg (2003) Chen, D. and Seborg, D.E. (2003). Design of decentralized pi control systems based on Nyquist stability analysis. Journal of Process Control , 13, 27–39.
