Skip to main content

Table 1 Our greedy algorithm for constructing target control tree for network G(V, E)

From: A novel algorithm for finding optimal driver nodes to target control complex networks and its applications for drug targets identification

Input: Network G(V, E), target nodes O
Initialize:
B0(R0, L0) //the right side R0 is made of target nodes O, and the left side L0 is made of nodes from which the targes could be reachable.
m 0 ←Matching(B0) //Find maximum matching m 0 among bipartite graph B0
CF(V0, m0) ←Subgraph(V0, m0) // Let V0 = R0L0, we obtain a subgraph CF(V0, m0)
for paired nodes (vi0,vj0)CF(V0, m0) do // if we could find a path from node vi0L0 to vj0R0, add edge ek0 = (vi0,vj0) to TCT .
E0E0ek0
end
While L n ≠   (n ≥ 1) do
R n L n-1 //Let the set of nodes in L n-1 to be the new R n set
B n (Rn, Ln) //get a new bipartite graph B n .
m n ←Matching(Bn) //Calculate a maximum matching m n in B n
V n  = V n-1 L n
CF(V n , m n ) ←Subgraph(V n , m n )
for paired nodes (vin,vjn)CF(V n , m n ) do // vinLn, vjnR n
If there exists a directed path from vin to vjn ,
add edge ekn = (vin,vjn) to TCT.
Let En = En-1(ekn).
End
Output: The target control tree, TCT ≡ (V TCT , E TCT ) = (V n , E n )