1 Introduction

By the end of 2014, three ultra-high voltage (UHV) transmission lines with 1000 kV standard have been put into operation in China [1], which are Jindongnan-Nanyang-Jingmen UHVAC Project, Huainan-Zhejiangbei-Shanghai UHVAC Project and Zhejiangbei-Fuzhou UHVAC Project. On one hand, the use of UHVAC transmission lines not only strengthens the electrical link among different regions, but also enriches the existing operation modes and improves the ability to operate economically in the whole grid. On the other hand, it makes the operation modes of power grids more complicated and diversified. Once the power grid is subjected to large disturbances, the fault can spread easily, which challenges the security and stability of the power grid [2]. The islanding of power system works as the last defense so as to maintain the stability of the separated islands. In the islanding stage, it should search for an appropriate group of lines which form a cut set in order to separate the system into two or more subsystems. These islands operate independently to prevent the accident from spreading and blackout from happening when disturbances occur among the generator groups. Therefore, how to quickly identify the system swing modes and how to pinpoint the out-of-step generator groups in order to search for the optimal separation boundaries are the critical issues. It has great significance in guaranteeing the security and stability of the power system.

The controlled islanding strategy of power system consists of two steps [3]: one is to identify the coherent generators, and the other is to search the optimal separation boundary. The first step is to cluster the out-of-step generators according to their nonsynchronous tendency after a disturbance. It can make the coherent generators stay in the same island, and then separate the generators that lose synchronization. The second step aims to rapidly search an appropriate set of transmission lines that forms a cut set. These lines should be cut to partition the system into several isolated grids and make them work independently, which can prevent the accident from spreading. This cut set is referred to as a separation boundary. From the mathematical point of view, the two steps described above can be respectively corresponding to different combinatorial optimization problems containing a single objective function with multiple constraints. Previous research has made a great deal of achievements concentrating on these two problems.

  1. 1)

    Coherency identification of swinging generators (CISG)

The existing research of CISG can be mainly divided into three types. The first type is analyzing power-angle curves of the perturbed generators by mathematical methods, such as k-medoids cluster analysis [4] and the principal component analysis (PCA) [5]. However, the physical meanings of the above algorithms are not clear enough, which cannot explain the swinging process of the generators. Moreover, the adaptability and extension capacity of the parameters used in the above-mentioned methods for different power grids are very weak. The second type adopts the method of slow coherency with weak connections [68] to achieve the CISG in power system. However the solutions of the system state-space matrix might not easily to obtain especially in a large power grid. Moreover the solving process might be time-consuming and has some drawbacks if implemented in online applications. The third one is time-domain simulation method, which is also time-consuming and can only be employed off-line. By comparing with the three kinds of methods above, the solution of clustering of generators is incomplete. It deserves to be studied further.

  1. 2)

    Seeking for optimal separation boundary (SOSB)

In the actual splitting process, each transmission line of the power system has a possibility to be cut off. Therefore, the SOSB step can be mapped to a 0-1 integer programming problem. But as the system scale increases, the computational efforts of the splitting strategy present an exponential growth [9] since the corresponding problem is an non-deterministic polynomial (NP) hard problem. In order to achieve a solution quickly, the recent research can be divided into the following two categories according to the objective functions.

In the first category, the imbalanced power of the islanding grids is taken as the objective function for SOSB. This kind of objective function aims to make the load shedding and generator reduction in each power island as small as possible after the splitting. Meanwhile, the constraints of coherency and network connectivity are also taken into consideration. However, solving this optimization problem is really complicated. To resolve this issue, the methods in [1012] made it more efficient by “simplification with checking”. But some possible solutions might be omitted, i.e., the substantial portion of the compression space may make some possible solutions lost. Reference [13] simplifies the splitting searching space by the active power flow tracing algorithm, which also may result in the loss of some feasible solutions. References [14, 15] proposed the CLPSO and ACO intelligent algorithms to solve the problem, but neither of them has been verified in a large grid. In fact, the intelligence algorithms might be trapped in the local optimum. Moreover, the ACO method is relatively time-consuming, which is difficult to be applied in the on-line splitting control.

In the second category, the power flow disruption is used as the objective function. When taking the minimum imbalanced power into consideration, the flow impact on the splitting boundary might be very high. It means that the power exchange among the islands may be so high that it could not be ignored. Therefore, some researchers have employed the flow impact as the objective function. References [3, 16] considered the power flow as the objective function, and accomplished the splitting strategy by means of constrained spectral clustering. The clustering algorithm employs the relaxation methods so as to broaden constraints, which needs to be verified in large grids [17]. Reference [18] proposed an improved constrained spectral clustering algorithm to obtain an optimal islanding result. However, the computational efficiency needs be improved for the large girds, and the generator coherency is not taken into account. The Dinic algorithm was employed in [19] to obtain a quick solution for SOSB. But the CISG step was not taken into consideration and the Dinic algorithm still have margin to improve in order to be applied in larger power system.

To sum up, in the two key steps of the splitting strategies, we still face enormous challenges to implement the generators coherency identification and acquire the optimal splitting boundaries in real time. Thus, this paper proposes a new two-stage islanding method based on the graph theory. In the first stage, the CISG is obtained rapidly by achieving the minimum cut in the generator dynamic connection graph using Stoer-Wagner algorithm. In the second stage, the active power flow disruption is regarded as the objective function, and the SOSB is obtained based on the improved Dinic max-flow algorithm. Through the simulations on IEEE 118-bus and 162-bus systems, the validity and rapidity of proposed method are proved.

2 Graph-cut model of active splitting

2.1 Graph theory basis of power system islanding

The network structure of the power system can be regarded as an undirected graph, where is the set of node points representing loads and generators, is the set of edges representing electrical lines, is the set of edge weights and is the set of generator buses.

The power system network could be regarded as a graph G, in which the set of loads is regarded as V. The set of generators is regarded as VG, and the set of edges is regarded as E with the weights set W. The power system splitting could be regarded as a partitioning process that divides G into n of sub graphs \((G_{1} ,G_{2} , \cdots ,G_{n} )\), where the i th subgraph G i is denoted by \((V_{n} ,V_{Gn} ,E_{n} ,W_{n} )\). The graph theoretic constraints among subsets are shown as

$$\left\{ {\begin{array}{ll} {\bigcup\limits_{i = 1}^{n} {V_{i} } = V, \quad \quad \bigcup\limits_{i = 1}^{n} {V_{{G_{i} }} } = V} \\ {V_{i} \cap V_{j} = \emptyset , \quad V_{{G_{i} }} \cap V_{{G_{j} }} = \emptyset } \\ \end{array} } \right.$$
(1)

If the graph G is partitioned into two subgraphs, namely \(G_{1} (V_{1} ,V_{G1} ,E_{1} ,W_{1} )\) and \(G_{2} (V_{2} ,V_{G2} ,E_{2} ,W_{2} )\), the segmental sets are given by

$$cut(V_{1} ,V_{2} ) = \sum\limits_{{i \in V_{1}, j \in V_{2} }} {w_{ij} }$$
(2)

where w ij is the edge weight of the edge from the point i to point j, while the capacity of segmental sets is the sum of the edge weights.

2.2 Generators clustering model

According to (3), the rotor motion equation of multi-machine power systems can be derived as below [20, 21].

$$M\frac{{{\text{d}}\varOmega }}{{{\text{d}}t}} = \Delta T = T_{\text{T}} - T_{\text{E}}$$
(3)
$$\left\{ \begin{array} {ll}\dot{\delta }_{i} = \varpi_{\text{N}} \left( {\varpi_{i} - 1} \right) \hfill \\ M_{i} \dot{\varpi }_{i} = - D_{i} \left( {\varpi_{i} - 1} \right) + \left( {P_{{{\text{m}}i}} - P_{{{\text{e}}i}} } \right) \hfill \\ \end{array} \right.$$
(4)

where Ω is the angular velocity of machine rotors; T is the generator rotor moment of inertia; ΔT is the unbalanced torque working upon the rotor spindle; δ i is the power angle of the generator i, i = 1,2,···; \(\varpi_{i}\) is the per unit value of generator rotor velocity; \(\varpi_{\text{N}} = 2\pi f_{\text{N}}\); f N is the reference frequency of the power grid; P mi and P ei are the mechanical power and the electromagnetic power; M i is the inertia time constant of generators; D i is the damping constant of generator i.

When the power system is subjected to a huge disturbance and begins to be unstable. D i is usually very tiny and it cannot affect the oscillation modes of the power system. And it does not radically affect the more basic characteristics such as the natural frequencies and mode shapes [22]. If the damping and line conductance are neglected and (4) is linearized at the time t, the model can be simplified as

$$\ddot{\delta } = {\varvec{A}}(t)\delta = {\varvec{M}}^{ - 1} \;{\varvec{K}}(t)\delta$$
(5)

where \({\varvec{A}}(t)\) is the coefficient matrix of the system that has been linearized at the time t, \({\varvec{M}} = {\text{diag}}[M_{1} ,M_{2} , \cdots ,M_{n} ]\) specifies the diagonal matrix of inertia time constant in the system. It is reasonable to use the linearized model for the islanding problem since the islands contain the generators with similar swing characteristics and oscillation frequencies that are unrelated with the size and the location of the disturbance [2325]. Hence, the fundamental modes of the oscillation determined by the linear analysis provide a convenient approach to detect the structural characteristics of the system. K could be calculated as

$$\left\{ {\begin{array}{ll} {K_{ij} (t) = \frac{{\partial P_{ij} }}{{\partial \delta_{ij} }} = - E_{i} E_{j} \left( {G_{ij} \sin \left( {\delta_{i} - \delta_{j} } \right) - B_{ij} \cos \left( {\delta_{i} - \delta_{j} } \right)} \right)} \\ {K_{ii} (t) = - \sum_{{\begin{array}{lll} {j = 1} \\ {j \ne i} \\ \end{array} }}^{n} K_{ij} (t)} \\ \end{array} } \right.$$
(6)

where \(\partial P_{ij} /\partial \delta_{ij}\) is the partial derivative of the active power with respect to the angle between generators i and j after a shrinkage of the network to generator buses at the time t; E i is the transient voltage of the generator i at the time t; g ij and b ij are the real and imaginary parts of corresponding elements in admittance matrix of the system after a shrinkage of the network to electric potential [2628] in generators; δ i and δ j are the rotate angle between generator i and j at the time t.

When a power system is subjected to huge perturbations, it may lead to a multi-group instability, which can be viewed as the chain process of two-group instability [29]. Thus, the partition of isolated islands in power system is considered as the multiple re-segmentation processes in multiple non-synchronism in two groups. After disturbances, the power system is portioned into two groups, G 1 and G 2. Accordingly, the system coefficient matrix A is divided into blocks, which is illustrated in Fig. 1. The coefficient matrices of G 1 and G 2 are denoted by submatrices A 11 and A 22, while the coupling relationship between G 1 and G 2 is denoted by off-diagonal submatrices A 21 and A 12.

Fig. 1
figure 1

Partition of power system coefficient matrix

Define S as the degree of coupling coefficient between the subsystem G 1 and G 2 after the disturbances happened in the system. Therefore, S can be represented quantitatively [14] by summing up Frobenius norms of off-diagonal sub matrix A 21 and A 12, which is formulated as

$$S(t) = \left\| {A_{12} (t)} \right\|_{\rm F} + \left\| {A_{21} (t)} \right\|_{\rm F} {\kern 1pt} = \sqrt {\sum\limits_{i = 1}^{n} {\sum\limits_{j = 1}^{n} {A_{12} (i,j)^{2} + \sum\limits_{i = 1}^{n} {\sum\limits_{j = 1}^{n} {A_{21} (i,j)^{2} } } } } }$$
(7)

Considering the characteristics in [14, 30] of local reactive power compensation, we only take the impact of active power into account. Thus, (7) can be simplified as

$$S(t) = \sqrt {\sum\limits_{{i \in V_{{G_{1} }} }} {\sum\limits_{{j \in V_{{G_{2} }} }} {\left[ {\left( {\frac{{\partial P_{ij} }}{{\partial \delta_{ij} }}} \right)^{2} \left( {\frac{1}{{M_{i}^{2} }} + \frac{1}{{M_{j}^{2} }}} \right)} \right]} } }$$
(8)

where M i is the inertia constant of the generator i.

There is a positive correlation [14] between the coherence and the connection degree among the generators. It is showed that the larger the value of S(t) is the closer the connection among the generators is. The smaller value of S(t) indicates the weaker connection among the generators. As a result, S(t) can be adopted to quantify the connection degrees among generators. When no angle instability occurs in the system, each generator in the system basically keeps in a synchronous operation state and the value of S(t) remains high. On the contrary, when the angle instability occurs to the system, there must be an islanding boundary, where the value of S(t) considerably decreases compared to that in the coherent generator groups. Therefore, after a large disturbance, the equivalence transformation is employed for the coherency identification of the generating sets. It could employ the real-time active power P and the rotate angle δ which are obtained by WAMS, to search the weakest associated branches among the generator groups. Consequently, the generators in the system can be divided into two groups. The objective function of generator clustering can be described as

$$\mathop {\hbox{min} }\limits_{{V_{{G_{1} }} ,V_{{G_{2} }} \subset V_{G} }} {\mkern 1mu} \sum S (t) = \sqrt {\mathop {\hbox{min} }\limits_{{V_{{G_{1} }} ,V_{{G_{2} }} \subset V_{G} }} {\mkern 1mu} \left( {\sum\limits_{{i \in V_{{G_{1} }} }} {\sum\limits_{{j \in V_{{G_{2} }} }} {\left( {\left( {\frac{{\partial P_{ij} }}{{\partial \delta_{ij} }}} \right)^{2} \left( {\frac{1}{{M_{i}^{2} }} + \frac{1}{{M_{j}^{2} }}} \right)} \right)} } } \right)}$$
(9)

In the dynamic undirected liaison graph, the generators are regarded as vertices while coherency coefficient is regarded as edge weight. The value of the edge weight represents the connection degree among the generators. Hence, the problem of generators coherency identification can be transformed into a min-cut problem. We have to search a secant line to separate the generators with low coherence.

2.3 Searching model of SOSB

After the CISG step, the essence of SOSB is to rapidly seek for the appropriate separation boundaries to partition the large power grid into several subgrids. Meanwhile, we should satisfy the safe and stable operation constraints of the subgrids as much as possible. In the existing literatures, there are three kinds of objectives for the SOSB. They are the minimum unbalanced power, the minimum power flow impact and the minimum net power flow impact. They are respectively expressed as [12, 14]

$$\mathop {\hbox{min} }\limits_{{V_{1} ,V_{2} \subset V}} \left( {\left| {\sum\limits_{{i \in V_{1} ,j \in V_{2} }} {P_{ij} } - \sum\limits_{{i \in V_{2} ,j \in V_{1} }} {P_{ij} } } \right|} \right)$$
(10)
$$\mathop {\hbox{min} }\limits_{{V_{1} ,V_{2} \subset V}} {\mkern 1mu} \left( {\sum\limits_{{i \in V_{1} ,j \in V_{2} }} {P_{ij} } + \sum\limits_{{i \in V_{2} ,j \in V_{1} }} {P_{ij} } } \right)$$
(11)
$$\mathop {\hbox{min} }\limits_{{V_{1} ,V_{2} \subset V}} {\mkern 1mu} \left( {\hbox{max} \left( {\sum\limits_{{i \in V_{1} ,j \in V_{2} }} {P_{ij} } ,\sum\limits_{{i \in V_{2} ,j \in V_{1} }} {P_{ij} } } \right)} \right)$$
(12)

where P ij is the active power flow from the bus i to bus j. Considering its direction, it satisfies \(P_{ij} > 0\).

According to [6], the objectives presented in (10) and (12) have some drawbacks. So this paper employs the minimum power flow impact as the objective, and then solves the SOSB with other constraints. The objective is expressed in (11) and the constraints of the model are given by

$$\forall n_{{G_{i} }} ,\;n_{{G_{j} }} \in V_{s} ,\;\exists b_{ij} \subset {\rm II} (n_{{G_{i} }} \cap n_{{G_{j} }} ) \, (i \ne j)$$
(13)
$$\forall n_{{G_{i} }} \in V_{s} ,\;n_{{G_{j} }} \in V_{t} ,\;{\rm II} (n_{{G_{i} }} \cap n_{{G_{j} }} ) = \emptyset \, (s \ne t)$$
(14)
$$\Delta P_{i} = U_{i} \sum\limits_{j = 1}^{j = n} {U_{j} \left( {G_{ij} \cos \delta_{ij} + B_{ij} \sin \delta_{ij} } \right)}$$
(15)
$$\Delta Q_{i} = U_{i} \sum\limits_{j = 1}^{j = n} {U_{j} \left( {G_{ij} \sin \delta_{ij} - B_{ij} \cos \delta_{ij} } \right)}$$
(16)

where \(n_{{G_{i} }}\) is the generator bus i, and b ij specifies the certain connected path between buses i and j. Equation (13) expresses the coherent constraints of generators, which ensures if two arbitrary generators belong to the same coherent generator group, there is at least a connected path between them. Equation (14) is the separation constraints of generators, which represents if two arbitrary generators belong to non-coherent generator groups, there should not be any connected paths between them. Equations (15) and (16) are the active power constraint and reactive power constraint, which represents the net injected active power and reactive power of buses, respectively.

3 Solutions of two stage active splitting

3.1 First stage: solution of the CISG based on Stoer-Wagner algorithm

Based on the objective function generator grouping which is mentioned in (9) with the graph theory in section 2.1, the disturbed generators of coherent grouping problem could be converted into the minimum cut problem. In this dynamic connection diagram of the power system, we set the generator buses as vertices and coherent coefficient S as the edge weights. The Stoer-Wagner method [31] is an efficient algorithm for seeking global minimum cut in an undirected graph G = (V, E). The theorems which support the algorithm are given as

$$\hbox{min} cut(V_{\text{a}} ,V_{\text{b}} ) = \hbox{min} \left( {\mathop {\hbox{min} cut}\limits_{s - t} {\mkern 1mu} (V_{\text{a}} ,V_{\text{b}} ),\mathop {\hbox{min} cut}\limits_{{{\text{contract}}(s,t)}} {\mkern 1mu} (V_{\text{a}} ,V_{\text{b}} )} \right)\quad \forall s,\;t \in V$$
(17)

According to (17), the global minimum cut of an undirected graph can be converted into a minimal cut problem with a source point and a sink point. Then a global minimum cut in undirected graph equals to the minimum value from the two parts. One is the minimal cut contains a source point and a sink point. The other is the updated original minimum cut with the contract (s, t) operation. In addition, the contract (s, t) is defined as a series operations containing: deleting the node s, deleting the node t, removing all the edges connected with the node s or the node t defining as w(s, t), adding the node c, adding edges connecting with all the other nodes. And the weights of the adding edges could be calculated as

$$w(v,c) = w(c,v) = w(s,v) + w(t,v)$$
(18)

where the w(v, c) is the sum of weights from the node s to the node v, \(\forall v \in V\); w(s, v) and w(t, v) are the similar meanings.

The flowchart of CISG can be shown in Fig. 2 according to (17) and (18).

Fig. 2
figure 2

Flow chart of CISG based on Stoer-Wagner algorithm

An example is given in the standard IEEE 3 machines with 9 buses system. This system contains nine buses, and three of them are the generator buses. The dynamic connection diagram is shown in Fig. 3. According to (9), the vertexes represent the generators and the value of edges represents the coherent coefficient S in the system. The generators G 1 and G 2 are in the same coherent group and generator G 3 is in the other coherent group. The system reference capacity \(S_{\text{N}} = 100\;{\text{MW}}\).

Fig. 3
figure 3

Example of minimum cut in IEEE 9-bus system

3.2 Second stage: solution of SOSB based on Dinic max-flow algorithm

3.2.1 Dinic max-flow algorithm

The optimal search model mentioned in section 2.3 by (11) could be regarded as a single objective function with multiple constraints in essence. The undirected graph G = (V, E) contains the generator nodes and load nodes, where V is a set of nodes and E is a set of power transmission lines (edges set). The edge weight of each line is P (i, j) which represents the active power flow from V i to V j . In this way, the model solution can be converted to the minimum cut problem with constraints, and we can employ the graph theory to solve the problem. Currently, the mature and suitable method in graph theory is the max flow algorithm proposed by Ford and Fulkerson. This method has been applied in SAM [32], the circular disk failure model [33] as well as the linear deterministic relay networks [34], and other fields. The max flow algorithm cleverly transfers the minimum cut problem into a max flow problem, with low computational complexity. The algorithm contains two steps. Firstly, the power grid topology is equivalent to a “flow network” [31]. Each edge of the flow network has a fixed capacity (edge weight), which can be regarded as the max flow rate of the pipeline. The next step is to search for the feasible paths (augmenting paths) in the flow network to fill in itself until the feasible flow from s to t reaches the maximum. After the flow network being filled in every time, the graph consisting of the remaining capacity in the flow network is called the surplus graph [31].

Assuming that there are two non-coherent generator groups in G after a huge disturbance, one subgraph containing one of the coherent group is considered as the source point s, and the other subgraph is regarded as the sink point t. The theorem [35] of Ford and Fulkerson indicates that the max flow in any flow network is equal to the min-cut capacity in the network, which is formulated as

$$P_{\text{Cut}} = \hbox{max} \sum\limits_{i,j \in V} {P_{ij} }$$
(19)

Equation (19) expresses that the max flow with capacity limitation is equal to the min-cut capacity. The theorem simplifies the solution of graph partitioning from NP hard to O(VE 2), which makes it possible to solve the s − t min-cut problems in polynomial time. The Dinic algorithm improves the Ford and Fulkerson algorithm. It employs the depth-first search (DFS) to replace the process of solving the augmenting path in the original algorithm and repeatedly applies the breadth-first search (BFS) in searching for blocking flow. Therefore, the Dinic algorithm reduces the solving complexity.

3.2.2 Improvement in Dinic max-flow algorithm

The contraction point algorithms were generally employed to form a new subgraph composed of multiple coherent generators each of which are usually regarded as a vertex [36]. In this process, the operation of contraction point in the graphs often adopts the minimum Steiner Tree algorithm [10]. This algorithm has a heavy computation burden, because it need record the mapping relationship between the whole frontier sets related to subgraphs and node labels before and after the graphs conversion. Moreover, there is an NP Complete problem in the minimum Steiner Tree algorithm. Therefore, this paper adopts BFS to construct the most short-path spanning tree rather than minimum Steiner Tree. In this way, the computation effort is reduced and the solving process is accelerated. The process of improving contraction points is described below:

  1. 1)

    Proceed from any generator bus in a coherent generator group and make the whole coherent generator group form the most short-path spanning tree by BFS. Consider the leaf nodes (terminal nodes) as the generator buses and the branch nodes as the generator buses or load buses.

  2. 2)

    Assume the edge weight composed of branches to be infinite. Consequently, when any generator in the two coherent generator groups satisfies the max-flow algorithm requirements, source point s and sink point t in the algorithm can be adopted to solve the max flow. In this way, coherent generators would not be partitioned with one another. Moreover, the solving process is accelerated under the circumstances of satisfying constraints of coherence/separation in the power system.

In Fig. 4, The two curves respectively represent possible methods of graph partitioning. Since Cut 1 satisfies the constraint of coherence/separation, it is a probable minimum cut. On the contrary, Cut 2 acrosses the branch whose weight is infinite, so it does not satisfy the constraint of coherence/separation. Moreover, the sum of weight of its segmental sets is finite, which cannot meet the objective function requirements (minimum cut). So Cut 2 is not a feasible solution.

Fig. 4
figure 4

Improved Dinic max-flow algorithm

Compared with [19] we also improve the Dinic algorithm according to the updating the residual graphs with a key flag. The key steps of Dinic algorithm are including: searching the augmenting paths through the DFS process in the inner graph; updating the residual graphs according to the known augmenting paths, and judging whether the blocking flow forms. Reference [19] constructed a new graph L in every updating of residual graphs. And it should copy the flow in the new graph L into the initial graph G continually. Therefore, it consumes extra computing resources and is time-consuming. So we add a flag to every edge of G. If the capacity in the edge is valid, the corresponding flag is set as TRUE, otherwise FALSE. The edge of which flag is FALSE is unable to be an augment path in the next iteration and the max flow only includes the edges of which flag is TRUE. Therefore, the execution efficiency of this algorithm has been improved.

3.2.3 Complexity analysis of two-stage splitting strategy

The improved Dinic algorithm employs the DFS to solve the augmenting path. Through every stage of solving the augmenting path, we employ \(O( \cdot )\)to denote time complexity and it can be regarded as an index of the algorithm running time. Take O(VE) for example. V is the number of nodes in the graph, while E is the number of edges in the graph. Thus, O(VE) means that the time complexity is proportion to the product of nodes number and edges number in the graph. Then O(V 2 E) is the total complexity of the improved Dinic algorithm. In the process of generators clustering, \(O(V_{G} E_{G} )\) is the complexity of maximum spanning tree algorithm, \(O(E_{G} )\) is the operation complexity at a merge point, and \(O\left( {V_{G} E_{G}^{2} } \right)\) is the complexity of generator clustering algorithm. As a whole, the entire complexity of the method proposed in this paper is \(O\left( {V^{2} E + V_{G} E_{G}^{2} } \right)\).

3.3 Detailed process of two-stage separation strategies

To sum up, the detailed process of two-stage active splitting control (CISG and SOSB) is illustrated in Fig. 5.

  1. 1)

    Take all the generators as the research objects, and create a dynamic undirected graph G g, whose edge weights are the coherent coefficient S.

  2. 2)

    Adopt the Stoer-Wagner algorithm to solve the minimum cut of G g and to obtain the solution of the CISG.

  3. 3)

    Take the whole buses in power system as the research objects and create a global graph G of the system.

  4. 4)

    Calculate adjacency weight matrix G, where the elements are

    $$G_{ij} = \left\{ {\begin{array}{ll} {\frac{{\left| {P_{ij} } \right|{ + }\left| {P_{ji} } \right|}}{2}} & \quad {i,j \in E_{0} } \\ 0 & \quad {i,j \notin E_{0} } \\ \end{array} } \right.$$
    (20)
  5. 5)

    According to the results of the CISG and constraints of coherence/separation, partition the generators into n of groups \((V_{1} ,V_{2} , \cdots ,V_{n} )\). Select a generator in a coherent group, then construct the minimum distance-spanning tree linking in the whole coherent generator buses and set the branches weight of the tree to infinite.

  6. 6)

    Select respectively a generator in two different groups of V 1, V 2 as the source point s and the sink point t.

  7. 7)

    Employ the improved Dinic max-flow algorithm to solve SOSB.

  8. 8)

    Verify the convergence of power flow and judge whether the subgraph needs further partitions. If the subgraph needs be partitioned further, turn to Step2.

Fig. 5
figure 5

Flow chart of two-stage controlled partition scheme based on Stoer-Wagner and improved Dinic max-flow methods

4 Simulations

4.1 IEEE 118-bus system

The power grid of IEEE 118-bus system [3] is shown in Fig. 6a. There are 19 generator buses and 186 electricity lines in the grid. The total generation output is 4374.9 MW, and the total electric power load is 4242 MW. We increase the generation and load by 30% in order to narrow the stability margin of the system. A three phase-to-ground solid fault happens at branch 100–101 at t = 0 s, and the fault is cleared at 0.252 s. If the system islanding control measures are not taken, the figures of the generator angle curves, bus voltage curves and generator frequency curves can be observed from Fig. 6a–d.

Fig. 6
figure 6

Comparisons with and without islanding in IEEE 118-bus system

It could be seen that the generators are out of step, and they are identified as two coherent groups V 1 and V 2, where V 1 = {10, 12, 25, 26, 31, 46, 49, 54, 59, 61, 65, 66, 69, 80} and V 2 = {87, 89, 100, 103, 111}.

Subsequently, V 2 could not maintain stability and be partitioned into V 21 and V 22, where V 21 = {87, 89, 100} and V 22 = {103, 111}.

We can employ the two-stage islanding strategy to obtain the solutions of CISG and SOSB based on the Stoer-Wagner method and the improved Dinic max-flow algorithm. After the most short-path spanning tree in the coherent generator groups is determined, we calculate the tree with the improved Dinic max-flow algorithm according to the solving steps. The SOSB obtained is illustrated in Fig. 6e, where the separated island satisfies the constraints of coherence and separation in generators.

If no islanding actions are taken, it can be seen that the system loses synchronization at about 0.8 s. Figure 6b indicates that the generator rotor angle curves become three clusters: {87, 89, 100},{103, 111} and {10, 12, 25, 26, 31, 46, 49, 54, 59, 61, 65, 66, 69, 80}. The transient stability of the power system, or whether the system generators can continue to maintain synchronization after suffering large disturbances, is determined by the changing characteristics of the relative angles among generator rotors. Proper control measures are required at this moment, such as active islanding. At about 1.5 s, the relative angles among the remaining generators have experienced the change from positive to negative 180 degrees, which indicates that the system has lost its transient stability. Accordingly, the node voltage in the power system is usually controlled within [0.95, 1.05]. However, after the fault occurs at time 0.3 s, the voltages suffer from drastic fluctuations, as shown in Fig. 6c. After the fault happens, we can trip the boundary transmission lines that have been obtained by our Dinic max-flow algorithm. The emergency control actions after the system splitting are taken at 1.0 s: load shedding at Bus 103, 104, 105, 107 with 90% and Bus 112 with 60%. The system generator angle, voltage and frequency curves are shown in Fig. 6f–h. The solution gives an islanding strategy, which disconnects lines 82-77, 96-80, 96-97, 7-80, 100-98, 100-103, 100-104, 106-105 and 106-107. We can also see that the three islands are successfully created with frequencies between 1.00 and 1.01 after 4 s, which is shown in Fig. 6h. Similarly, the bus voltage and frequency gradually return to normal levels after 2.39 s. The angles, voltages and frequencies of generators in the islands have reached a steady state.

In this paper, experiments are conducted on a PC machine with 1.8 GHz CPU and 2 G memory based on PSS/E version 33 platform. The CISG stage costs less than 0.01 s and the SOSB stage costs 0.08 s, so the total time is less than 0.1 s. In the SOSB stage compared with the spectral clustering method in [13, 14] and OBDD method in [9], the results are shown in Table 1.

Table 1 SOSB time consumption comparing with other two methods in IEEE 118-bus system

From Table 1, the proposed method can obtain the solution of SOSB more quickly and efficiently.

4.2 IEEE 162-bus system

The 162-bus system consists of 17 generators, 162 nodes and 284 edges with a capacity of 15056.7 MW. All time-domain simulations for IEEE 162-bus system were performed using PSD-BPA platform [37], which is a component of the software package developed by the Power System Department of China Electric Power Research Institute. We assume that at t = 0 s, a three phase-to-ground solid fault happens at the middle of Line 3–50, and this fault is cleared at 0.325 s. If the system splitting measures are not taken, the figures of the generator angle curves, bus voltage curves and generator frequency curves can be observed from Fig. 7a–d.

Fig. 7
figure 7

Comparisons with and without islanding in IEEE 162-bus system

If no control actions are taken, it can be seen from Fig. 7b that the generator rotor angle curves become three clusters {3}, {99, 15, 27, 101, 108, 124, 125, 126} and {130, 6, 73, 76, 114, 118, 121, 131} at about 0.4912 s. Taking the angle of generator bus Node 3 as the base, the relative angles of the remaining generators have experienced the change from positive to negative 180 degrees at around 2.5 s, which indicates that the system has lost its transient stability. After the fault occurs at 0 s, the voltages of generator buses suffer from drastic fluctuations with amplitudes from 0.1673 to 1.0178, as shown in Fig. 7c. The voltages of the generators that have lost synchronization are likely to reach [0, 0.2], and therefore, the voltage collapse is triggered. It can be seen from Fig. 7d that the generator frequencies of the third cluster have been rising continuously, which means the rotor speed is increased, widens the angle difference between itself and the other generator clusters gradually and eventually leads to instability at 0.4917 s.

After the fault happens, we can trip the boundary transmission lines (red dashed lines in Fig. 7e) obtained by our Dinic max-flow algorithm. The emergency control actions after the system splitting are taken at 0.5 s: generation reduction at Bus 6 with 400 MW and load shedding at Bus 3 with 850 MW, Bus 118 with 200 MW, Bus 126 with 200 MW, Bus 108 with 200 MW, Bus 124 with 1000 MW. The islands after the system splitting are shown in Fig. 7e, where we mark the disconnected transmission lines in red. The system generator angles, voltages and frequency curves are shown in Fig. 7f–h. Our algorithm obtained a solution with a power imbalance of 902.9 MW using approximately 40 ms. This solution gives an islanding strategy, which disconnects the set of edges {3-1, 3-14, 3-103, 3-123, 3-124, 3-125, 50-48, 50-51, 50-123, 50-125, 10-8, 13-2, 13-8, 13-12, 15-8, 27-25, 29-28, 33-34, 33-36, 40-34, 47-48, 53-54, 57-54, 60-23, 80-78, 86-88, 96-88, 96-100, 107-106, 109-119, 149-26, 149-70, 152-72, 153-70}, and the 17 generators are assigned to three islands. We can also see from the Fig. 7h that these three islands are successfully created with frequencies between 1.00 and 1.02 after 4 s. And the angles, voltages and frequencies of the generators in both islands have reached steady states.

5 Conclusion

This paper proposed a two-stage active islanding method, and the conclusions drawn are as follows.

  1. 1)

    A new method of CISG for the first stage in the whole power system islanding was proposed. The connection degrees among generators can be calculated in order to find out the weakest connection. The solution can be obtained quickly using the Stoer-Wagner algorithm.

  2. 2)

    An improved Dinic max-flow method was proposed to obtain the solution of SOSB in the second stage. In the algorithm, the SOSB problem could be transformed into the graph partitioning problem, which can be further converted to the Dinic max-flow problem. In addition, the paper introduced this polynomial complexity algorithm with high computation efficiency.

  3. 3)

    The two-stage active splitting method has been validated based on the IEEE 118-bus and 162-bus system. The accuracy and rapidity of the proposed approach have been proved by the simulation results.