Abstract
The feedback arc (vertex) set problem, shortened FASP (FVSP), is to transform a given multi digraph G = (V, E) into an acyclic graph by deleting as few arcs (vertices) as possible. Due to the results of Richard M. Karp in 1972 it is one of the classic NP-complete problems. An important contribution of this paper is that the subgraphs G el(e), G si(e) of all elementary cycles or simple cycles running through some arc e ∈ E, can be computed in \(\mathcal {O}\big (|E|^{2}\big )\) and \(\mathcal {O}(|E|^{4})\), respectively. We use this fact and introduce the notion of the essential minor and isolated cycles, which yield a priori problem size reductions and in the special case of so called resolvable graphs an exact solution in \(\mathcal {O}(|V||E|^{3})\). We show that weighted versions of the FASP and FVSP possess a Bellman decomposition, which yields exact solutions using a dynamic programming technique in times \(\mathcal {O}\big (2^{m}|E|^{4}\log (|V|)\big )\) and \(\mathcal {O}\big (2^{n}\Delta (G)^{4}|V|^{4}\log (|E|)\big )\), where m ≤|E|−|V | + 1, n ≤ (Δ(G) − 1)|V |−|E| + 1, respectively. The parameters m, n can be computed in \(\mathcal {O}(|E|^{3})\), \(\mathcal {O}(\Delta (G)^{3}|V|^{3})\), respectively and denote the maximal dimension of the cycle space of all appearing meta graphs, decoding the intersection behavior of the cycles. Consequently, m, n equal zero if all meta graphs are trees. Moreover, we deliver several heuristics and discuss how to control their variation from the optimum. Summarizing, the presented results allow us to suggest a strategy for an implementation of a fast and accurate FASP/FVSP-SOLVER.
Similar content being viewed by others
1 Introduction
The feedback arc set problem, shortened FASP, is to delete as less as possible arcs of a graph such that the resulting subgraph is acyclic, i.e., it contains no directed cycle. Another equivalent formulation is to find a linear ordering of the vertices of the graph such that the number of back arcs is minimized. Therefore the problem is also known as maximum acyclic subgraph problem or linear ordering problem. For directed graphs this problem is one of the classic NP-complete problems [22]. The problem of deleting a smallest subset of vertices to result in an acyclic subgraph is known as feedback vertex set problem (FVSP). The FASP and FVSP are linear time reducible among each other, by keeping the relevant parameters fix as we will assert in Section 2.1, alternatively see [13]. Therefore algorithmic properties of the two problems are transferable. In particular, the FVSP is also NP-complete. Analogous problems for undirected graphs can be defined. As shown in [22] the feedback vertex set problem remains NP-complete, while the feedback arc set problem can be solved efficiently by solving a maximum spanning tree problem. An excellent overview on feedback sets can be found in [4]. The problem of finding minimal transversals of directed cuts is closely related to the FASP, see [26]. The FASP stays NP-complete for graphs where every node has an in-degree and out-degree of at most three or line digraphs even when every clique has at most size three [15]. It is also NP-complete for tournament graphs [1]. However, there also exist graph classes possessing polynomial time algorithms, e.g., planar directed graphs or more general weakly acyclic digraphs [16], and reducible flow graphs [29]. The FASP or FVSP has a multitude of applications, e.g., retiming synchronous circuitry [25], circuit testing [24], computational biology and neuroscience [19], network analysis and operating systems [33].
1.1 Outline
In Section 2 we provide the graph theoretical concepts, which are fundamental for this article. In Section 3 we present our main results. The fact that the FASP/FVSP on multi-digraphs can be reduced to simple graphs is asserted in Section 4 and the first a priori problem size reduction is deduced. In Section 5 we construct an algorithm determing the induced subgraph of all cycles with one arc in common efficently. This knowledge is used in Section 6 to introduce the concept of isolated cycles and resolvable graphs and providing an efficent solution of the FASP/FVSP on resolvable graphs. Moreover, the second a priori problem size reduction is given. Afterwards we concentrate on the main result of the article. Namely, that the FASP/FVSP possesses a Bellmann decomposition and present exact solutions using this fact to apply a dynamic programming technique in Section 7. In Section 8, we discuss how greedy approaches behave with respect to the problems and develope a strategy for a general FASP/FVSP-SOLVER. Finally, we discuss our results and other alternatives in Section 9.
2 Preliminaries
Before we can introduce the FASP (FVSP) formally, some basic concepts of graphs and cycles need to be mentioned.
2.1 Graphs and Cycles
A multi-directed graph, or multi-digraph, G = (V, E) consists of a set of vertices V and a multi-set of arcs E containing elements from V × V. A directed graph or digraph is a multi-digraph with a simple arc set E, i.e., E ⊆ V × V and therefore every e ∈ E occurs exactly once. A digraph is called simple if there are no loops, i.e., \(E\cap \mathbb {D}(V\times V)= \emptyset \), where \(\mathbb {D}(V\times V)=\{(v,v) \in V\times V\,\,\big |\,\, v\in V\}\) denotes the diagonal.
If not stated otherwise throughout the article G = (V, E) denotes a finite, connected, directed and loop-free multi-digraph and G ∖ e, G ∖ v denote the graphs which occur by deleting the arc e and possibly occurring isolated vertices or the vertex v and all its adjacent arcs. For ε ⊆ E and ν ⊆ V the graphs G ∖ ε, G ∖ ν are analogously defined. Moreover, \(\mathcal {G}(\cdot )\), \(\mathcal {E}(\cdot )\), \(\mathcal {V}(\cdot )\) denote the induced graph, the set of all arcs, the set of all vertices which are inherited by a set or set system of graphs, arcs or vertices. With \(\mathcal {P}(A)\) we denote the power set of a given set A.
For an arc e = (u, v) ∈ E we denote e + = u as the tail and e − = v as the head of the arc. Two arcs e and f are called consecutive if e − = f + and are called connected if {e −, e +}∩{f −, f +} ≠ ∅. A directed path from a vertex u to a vertex v is a sequence of consecutive arcs where u is the tail of the first arc and v is the head of the last. A connected path from a vertex u to a vertex v is a sequence of connected arcs containing u and v as vertices. A digraph is connected if there is a connected path between every pair of its vertices. A weighted digraph (G, ω) or (V, E, ω), is a digraph with an additional weight function \(\omega :E\longrightarrow \mathbb {R}\), which assigns a (usually positive) weight to each arc. For a given vertex v ∈ V the sets \(N^{+}_{V}(v):=\left \{ u \in V \,\,\big |\,\, (v,u)\in E\right \}\,, N^{-}_{V}(v):=\left \{ u \in V \,\,\big |\,\, (u,v)\in E\right \}\), \(N^{\pm }_{E}(v):=\left \{ e \in E \,\,\big |\,\, e^{\pm } = v\right \} \) shall denote the set of all outgoing or incoming vertices or arcs of v respectively. The indegree (respectively out degree) of a vertex u is given by \(\deg ^{\pm }(u) = |N^{\pm }_{E}(u)|\) and the degree of a vertex is deg(u) = deg −(u) + deg +(u). Δ±(G),Δ(G) shall denote the maximal (in/out) degree, respectively.
A directed (connected) cycle of a digraph is a multiset of arcs {e 0, … , e k } such that there is a permutation ϕ : {0, … , k}→{0, … , k} with e ϕ(i) and e ϕ(i)+1 mod k+1 are consecutive (connected), for 1 ≤ i ≤ k. A loop is a cycle containing only a single arc. A cycle is simple if the set of contained arcs {e 1, … , e k } is a simple set, i.e., it visits every arc, it contains, exactly once. A cycle is elementary if each vertex it contains is visited exactly once. We denote with O(G) the set of all directed cycles and with Oel(G), Osi(G) the set of all elementary or simple cycles, respectively. Analogously, \(\mathrm {O}_{\text {el}}^{0}(G)\) and \(\mathrm {O}_{\text {si}}^{0}(G)\) shall denote the set of all connected (and not necessarily directed) elementary and simple cycles respectively. If not stated otherwise in the whole article a cycle is assumed to be directed and elementary. A feedback vertex set (FVS) of G is a set \(\nu \in \mathcal {P}(V)\) such that G ∖ ν is acyclic, i.e., G ∖ ν contains no directed cycle. A feedback arc set (FAS) of G is a set \(\varepsilon \in \mathcal {P}(E)\) such that G ∖ ε is acyclic.
Definition 1
(line graph, natural hypergraph) The directed line graph L(G) = (V L , E L ) of a digraph G is a digraph where each vertex represents one of the arcs of G and two vertices are connected by an arc if and only if the corresponding arcs are consecutive. In contrast the natural hypergraph \(\mathcal {H}(G)=(\bar V,\bar E)\) of G is constructed by identifying the arcs of G with the vertices of \(\mathcal {H}(G)\), i.e., \(\bar V\) is a simple set of vertices such that |V | = |E|, where |E| is counted with multiplicities. By fixing the identification \(\bar V \cong E\) we introduce a directed hyperarc h v for every vertex v ∈ V by requiring that head and tail coincide with all outgoing and ingoing arcs respectively, i.e., \(h_{v} = \big (N_{E}^{-}(v), N_{E}^{+}(v)\big )\). Consequently, \(\bar E \cong V\) and therefore every hyperarc can be labeled by its corresponding vertex. See Fig. 1 for an example.
The directed, elementary cycles of the line graph L(G) of G are in 1 to 1 correspondence to the directed, simple cycles of G while the directed simple cycles of \(\mathcal {H}(G)\), i.e., directed cycles which run through every hyper arc exactly once are called Berge cycles, [5]. Note that if G is a simple digraph, i.e., there are no multi arcs, then the set of all Berge cycles of \(\mathcal {H}(G)\) are in 1 to 1 correspondence to the set of all elementary cycles of G. For a set of hyperarcs \(\bar \varepsilon \subseteq \bar E\) of \(\mathcal {H}(G)\) we denote with ε ⊆ V the corresponding vertices in G. We summarize some facts in this regard.
Proposition 1
Let G = (V, E) be a graph.
-
i)
The line graph L(G) = (V L , E L )can be constructed in \(\mathcal {O}\big (|E|^{2}\big )\).
-
ii)
The natural hypergraph \(\mathcal {H}(G)=(\bar V,\bar E)\) can be constructed in \(\mathcal {O}\big (\Delta (G)|V|\big )\).
-
iii)
ν ⊆ V L is a FVS of L(G)if and only if ν is a FAS of G.
-
iv)
\(\bar \varepsilon \subseteq \bar E\) is a FAS of \(\mathcal {H}(G)\), with respect to the notion of Berge cycles, if and only if ε is a FVS of G.
Proof
Storing G as a adjacency list and following the definitions immediately implies i) and ii). Since any two vertices e, f of the line graph L(G) are adjacent if and only if the corresponding arcs are consecutive in G and any two arcs h u , h v of \(\mathcal {H}(G)\) are consecutive, i.e., \(h_{u}^{-} \cap h_{v}^{+}\not = \emptyset \), if and only if the corresponding vertices u and v are adjacent in G, ii) and iii) follow. □
Remark 1
Note that by introducing an additional arc \(h^{*}_{v}\) between head and tail of every hyperarc \(h_{v}=(N_{E}^{-}(v),N_{E}^{+}(v))\) of \(\mathcal {H}(G)\), the natural hypergraph becomes a directed graph G ∗ = (V ∗, E ∗) with |V ∗| = |E| + 2|V |, |E ∗|≤ Δ(G)|V | + |V |. The directed cycles of G ∗ are in 1 to 1 correspondence to the Berge cycles of \(\mathcal {H}(G)\) and a FAS ε of G ∗ is in 1 to 1 correspondence to a FAS \(\bar \varepsilon \) of \(\mathcal {H}(G)\) by identifying \(\bar \varepsilon \) with the additional introduced arcs belonging to the hyperarcs in \(\bar \varepsilon \) and identifying ε with the hyperarcs corresponding to the bipartite graphs cutted by ε. If \(\gamma : \bar E \longrightarrow \mathbb {R}+\) is an arc weight on \(\mathcal {H}(G)\) then setting γ ∗(h) ≡ γ(h v ) for all \(h \in N_{E}^{-}(v) \cup N_{E}^{+}(v)\cup \{h^{*}_{v}\}\) yields the translated weight.
To give a more algebraic notion of cycles we consider
the free ℤ-module generated by E. If we choose coordinates, i.e., a numbering for E and V then we can identify E with {e 1, … , e |E|}, V with {v 1, … , v |V |} and X with \(\mathbb {Z}^{|E|}\). In this case an element x ∈ X(G) is a tuple x = (x 1, … , x |E|), which can be interpreted as a set of paths through G where \(x_{i} \in \mathbb {Z}\) indicates how often we pass the arc e i and the sign of x i determines in which direction this is done. We denote with \(\mathcal {I}(G)\) the incidence matrix of G with respect to these identifications, i.e., \(\mathcal {I}(G)=(\iota _{ij})_{\genfrac {}{}{0pt}{}{1 \leq i \leq | V|}{1 \leq j \leq |E |}}\) with
It is a well known fact, see for instance [8], that x ∈ X(G) is a cycle of G if and only if \(\mathcal {I} x = 0\), i.e., the submodule of all cycles of G coincides with the set of homogeneous solutions \(\Lambda (G)=\ker \mathcal {I}(G)\). In particular, this implies that Λ(G) is a free ℤ-module with
where # G denotes the number of connected components of G and therefore equals 1 by our assumption on G. Note that the vector space \(\Lambda ^{0}(G):=\Lambda (G)/\mathbb {Z}_{2}^{|E|}\) can be understood as the cycle space of connected cycles, given by the kernel of the incidence matrix \(\mathcal {I}^{0}(G)\) defined with respect to \(\mathbb {Z}_{2}\) coefficients. In this case
still holds, see again [8].
Remark 2
If c ∈ Oel(G) then 1 is the only non vanishing entry of c, i.e., c ∈ {0, 1}|E|. Moreover, no elementary cycle is subset of another elementary cycle. Indeed assume the opposite and consider two elementary cycles c, c′ ∈ Oel(G) with c ⊆ c′, then \(\mathcal {I}(G)(c^{\prime } -c)= \mathcal {I}(G)c^{\prime }-\mathcal {I}(G)c = 0-0=0\). Thus, c′− c ≠ 0 is also a positive oriented cycle and therefore we have c′ = (c′− c) + c∉Oel(G). A contradiction!
Not that every simple cycle is given by the union of arc disjoint elementary cycles. The following example illustrates this fact.
Example 1
Consider the graph G in Fig. 2. Then one observes that the cycle c = {e, f, g, h, i} is a simple, non-elementary cycle while the cycles {e, f, i}, {f, h} and {h, g} are elementary cycles.
2.2 The Feedback Arc Set Problem (FASP)
Now we have all ingredients to give a formal definition of the FASP.
Problem 1
Let G = (V, E) be a finite, connected, directed, and loop-free graph, \(\omega : E\longrightarrow \mathbb {N}^{+}\) be a weight function. Then the weighted FASP is to find a set of arcs \( \varepsilon \in \mathcal {P}(E)\) such that G ∖ ε is acyclic, i.e., Oel(G ∖ ε) = ∅ and
is minimized. We denote the set of solutions of this problem with \(\mathcal {S}(G,\omega )\) and denote with Ω(G, ω) := Ω G, ω (ε), \(\varepsilon \in \mathcal {S}(G,\omega )\) the optimal weight or feedback length. If ω is constant, e.g., equal to 1, then the problem coincides with the unweighted minimal FASP.
Remark 3
The condition on G to be loop-free is not an essential restriction. This is because every loop is contained in any solution of the minimal FASP.
Remark 4
Note that, every cycle c ∈ O(G) can be generated by elementary cycles c 1, … , c n ∈ Oel(G) using only non-negative coefficients. Thus, if ε is a solution of Problem 1 then certainly O(G ∖ ε) = ∅, which implies that our notion of acyclic graphs is consistent for the problem.
Remark 5
Note that for given graph G = (V, E) the smallest subgraph G o ⊆ G, which contains all cycles of G, i.e., G′ = G o whenever G′⊆ G o and Oel(G) = Oel(G′) can be constructed in \(\mathcal {O}(|E|^{2})\). Indeed the arc set of G o is constructed from E by removing arcs (u, v) if there is no directed path from v to u. For every arc this can be done by depth-first search in linear time if G is stored in an adjacency list. Since removing arcs does not generate new cycles it suffices to check every arc once yielding the estimated runtime performance. Certainly a solution for G o is a solution for G. We shortly denote with \(\mathcal {G}_{o}(G):=G_{o}\) and with \({\mathcal {G}_{o}^{0}}(G):={G^{0}_{o}}\) the analogous graph appearing by considering connected cycles instead of directed ones. In particular, by the argumentation above, an elementary or directed cycle c ∈ Oel(G), c′ ∈ Osi(G) can be found in \(\mathcal {O}(|E|^{2})\) or no cycle exist.
Remark 6
If G = (V, E) is a simple graph then denoting with ⌊⋅⌋ the Gauss bracket we observe that at most ⌊|E|/2⌋ arcs have to be deleted to obtain a graph where no connected path of length 2 exists anymore. In particular, the graph is acyclic in this case and therefore
See also [32].
2.3 The Feedback Vertex Problem (FVSP)
Let G = (V, E) be given and \(\gamma : V \longrightarrow \mathbb {R}^{+} \) be a vertex weight. The feedback vertex set problem (FVSP) on (G, γ) is obtained by replacing the role of arcs by vertices in Problem 1. In regard of Proposition 1, by introducing the hyperarc weight \(\bar \omega (h_{v}):=\gamma (v)\), we realize that the FVSP is equivalent to the the FASP on the natural hypergraph \(\mathcal {H}(G)\) of G, with respect to the notion of Berge cycles. Already in Remark 1 we mentioned how to treat this case. Vice versa the FASP on an arc weighted graph (G, ω) is equivalent to the FVSP on the line graph L(G) of G by introducing the vertex weight γ(v) = ω(v), v ∈ V L = E. Since the described transformations can be done efficently, see Proposition 1, an efficent solution of the FASP or FVSP for an arc and vertex weighted instance (G, ω, γ) yields an efficent solution of the FVSP or FASP for the transformed instances and vice versa. In particular, by summarizing some already known results we obtain:
Theorem 1
The unweighted FASP and FVSP are APX complete.
Proof
Since there is an L-reduction of the Minimum Vertex Cover Problem, which is APX complete due to [12], to the FVSP, see [22], the FVSP is APX complete. Due to [21] it is known that the FASP is APX-hard. Proposition 1 shows that the FASP on (G, ω) is equivalent to the FVSP on (L(G), γ). Thus, the feedback length of any solution remains unchanged yielding an L-reduction of the FASP to the FVSP implying the claim. □
We expect that the theorem above still holds for the weighted versions. However, due to the observations made so far, we will focus our studies on the FASP to increase the understanding of the localisation of feedback sets.
3 Main Results
Though the FASP and FVSP are equivalent problems in graph theory and computer sciences the only exact solutions of the FVSP known to us is are the algorithms of [30] with complexity \(\mathcal {O}(1,9977^{|V|})\) and [9] requiring \(\mathcal {O}\big (|E|^{4}4^{\Omega }\Omega ^{3}\Omega !\big )\), where Ω denotes the feedback length. A detailed comparison to our approach is given in Section 9. For now we just mention our results:
Theorem A
Let (G, ω)be a graph. Then there is an algorithm testing whether (G, ω)is resolvable and determing a solution of the weighted FASP on G in case of resolvability in \(\mathcal {O}(|V||E|^{3})\).
Though there are infinitely many resolvable graphs not all graphs are resolvable. However, if the graph (G, ω) is not resolvable, we still can find an exact solution:
Theorem B
Let (G, ω)be a graph then there is a parameter m ∈ ℕ, \(m \leq \dim _{\mathbb {Z}_{2}}\Lambda ^{0}(G)= |E|-|V| +1\), which can be determined in \(\mathcal {O}(|E|^{3})\) and an algorithm CUT with run time \(\mathcal {O}\big (2^{m}|E|^{4}\log (|V|)\big )\) solving the weighted FASP.
Due to Proposition 1 the analogous results with respect to the FVSP hold. In particular, we call a vertex weighted graph (G, ν) resolvable iff its natural hypergraph is resolvable, see Section 2.3 again. If we replace every hyperarc of \(\mathcal {H}(G)=(\bar V,\bar E)\) with its corresponding bipartite graph then by following Remark 1 we have |V ∗| = |E| + 2|V |, |E ∗|≤ (Δ(G) + 1)|V | for the resulting graph G ∗ = (V ∗, E ∗). The translated results therefore become:
Theorem C
Let (G, ν),\(\nu :V \longrightarrow \mathbb {R}^{+}\) be a vertex weighted graph. Then there is an algorithm testing whether (G, ν)is resolvable and determing a solution of the weighted FVSP on G in case of resolvability in \(\mathcal {O}(\Delta (G)^{3}|V|^{3}|E|)\).
In case of non-resolvability we have:
Theorem D
Let (G, ν)be a graph then there is a parameter \(m \in \mathbb {N}\), m ≤ (Δ(G) − 1)|V |−|E| + 1, which can be determined in \(\mathcal {O}(\Delta (G)^{3}|V|^{3})\) and an algorithm CUT with run time \(\mathcal {O}\big (2^{m}\Delta (G)^{4}|V|^{4}\log (|E|)\big )\) solving the weighted FVSP.
Note that there are infinitely many instances where m = 0 and m ≤|V | on homogenous graphs, i.e., if Δ(G) ≤ (|E|− 1)/|V | + 2. Thus, by computing the bound or directly m we can decide whether the algorithm of [30] or our approach will be faster for a given instance and choose the better alternative. Moreover, the feedback length Ω can not assumed to be constantly bounded. Thus, the algorithm of [9] actually possesses a complexity of \(\mathcal {O}\big (4^{|V|}|V|^{3}|E|^{4}|V|!\big )\), which is much slower than our approach. Finally, we want to mention that all theorems are based on the following crucial fact:
Theorem E
Let G = (V, E) be a graph and e ∈ E. Then there exist algorithms which compute:
-
i)
The subgraph G el(e) ⊆ G induced by all elementary cycles c ∈ Oel(G)with \(e\in \mathcal {E}(c)\) in \(\mathcal {O}(|E|^{2})\).
-
ii)
The subgraph G si(e) ⊆ G induced by all simple cycles c ∈ Osi(G)with \(e\in \mathcal {E}(c)\) in \(\mathcal {O}(|E|^{4})\).
A proof and a more precise version of the statement are given in Theorem 2.
4 The Essential Minor
In this section we introduce the notion of the essential minor (C, δ) of given graph (G, ω), which is a simple, weighted digraph that decodes the topological structure of G in a compact way and is therefore very helpful. Even though there are some crucial differences we want to mention that similar concepts were already introduced in [6].
Definition 2
(parallel arcs) Let G be a graph and e = (u, v) ∈ E then we denote with
the sets of all parallel and anti-parallel arcs and set F(e) = F +(e) ∪ F −(e).
We recall that for a given set A and an equivalence relation ∼ on A × A the quotient A/∼ is given by the set of all equivalence classes [a]∼ = {x ∈ A | x ∼ a}.
Definition 3
(contracted graph) Let G = (V, E) be a graph and u, v ∈ V. An equivalence relation ∼ u, v on V is defined by
The equivalence class of x ∈ V is denoted by [x]∼u, v and \(V/_{\sim _{u,v}}\) gives the quotient of V with respect to ∼ u, v . A multiset E/∼u, v is defined by
The contracted graph of G with respect to e ∈ E is defined as the topological minor
If e, f ∈ E then one can check easily that by identifying e, f with their images in G/e, G/f respectively we have (G/e)/f = (G/f)/e. Thus, the definition does not depend on the order of the contracted edges. Hence, if G′⊆ G is a subgraph then \(G/G^{\prime } := G/\mathcal {E}(G^{\prime })\) can be defined by contracting \(\mathcal {E}(G^{\prime })\) in arbitrary order.
Definition 4
(essential minor) Let G = (V, E, ω) be a positively weighted graph. The equivalence relation ∼Γ on E is defined by e∼Γ f if and only if e = f or there exists a directed, branch-point-free path (w 0, w 1, … , w n , w n+1) with {(w 0, w 1),(w n , w n+1)} = {e, f} and \(n\in \mathbb {N}^{+}\), i.e., for i = 1, … , n it holds that deg −(w i ) = deg +(w i ) = 1. We represent an equivalence class [e]∼Γ by an arc (u, v), where u and v coincide with the start and endpoint of the longest directed, branch-point-free path running through e. The positively weighted graph
is defined by
-
i)
V/Γ := {v ∈ V | deg −(v) > 1 ∨ deg +(v) > 1},
-
ii)
\(E/_{\Gamma }:=\left \{ (u,v)\in V/_{\Gamma }\times V/_{\Gamma } \,\,\big |\,\, \exists \,\, [e]/_{\sim \Gamma } \in E_{/\sim _{\Gamma }} \,\, \text {represented by } (u,v) \right \}\)
-
iii)
\(\omega /_{\Gamma }:E/_{\Gamma }\longrightarrow \mathbb {N}^{+}\) with \(\omega /_{\Gamma }(e):=\min _{e^{\prime }\in [e]/_{\sim \Gamma }} \omega (e^{\prime }) \).
Let ∼Φ be an equivalence relation on E with e∼Φ f ⇔ e, f ∈ F +(e). For (G, ω) the positively weighted graph
is defined by
-
i)
V/Φ := V.
-
ii)
\(E/_{\Phi }:=E/_{\sim _{\Phi }}\), where we identify each equivalence class [e]∼Φ with an arbitrary representative of F +(e).
-
iii)
\(\omega /_{\Phi }:E/_{\Phi } \longrightarrow \mathbb {N}^{+} \,,\,\, \omega /_{\Phi }(e):= {\sum }_{e^{\prime } \in [e]_{\sim \Phi }} \omega (e^{\prime })\,.\)
Starting with G 0 := G for k > 0 we define
The weighted graph (G K , ω K ) with G K = G K+1, K ≥ 0, is called the essential minor of G and is denoted by (C, δ) := (V C , E C , δ).
Example 2
In Fig. 3 the construction of the essential minor is illustrated. Furthermore, for a graph G with D diamonds connected in a cycle as in the example we obtain deg(G) = 3 and |Oel(G)| = 2D = 2|E|/5 = 2|V |/4. In contrast the essential minor C of such a graph satisfies |Oel(C)| = 1. Hence, even though the number of cycles in G increases exponentially in |E| and |V | by adding further diamonds, the number of cycles in C remains constant equal to 1 while the weight ξ decodes the number of cycles of the original graph G.
Since the following results are quite canonically their simple but technical proofs are given in Appendix A.
Proposition 2
Let G = (V, E, ω)be a positively weighted graph with essential minor (C, ω C )and let \(\varepsilon \in \mathcal {P}(E)\) and ε C be the image of ε in (C, δ).Then
Inparticular Ω(G, ω) = Ω(C, ω C ).
Proposition 2 states that solving the FASP for the essential minor is equivalent to solving the FASP on the original graph. Even though it is possible that (C, δ) = (G, ω) the construction might yields an a priori problem size reduction in many cases as in Example 2.
Proposition 3
Let G = (V, E, ω)be a finite, connected, directed, weighted multigraph then we can construct (C, δ)in time \(\mathcal {O}(|E|^{2})\).Furthermore, there is an algorithm with run time \(\mathcal {O}(|E|^{2})\) which constructs a solution ε ∈ S(G, ω)given a solution \(\varepsilon _{C} \in \mathcal {S}(C,\delta )\).
Remark 7
Since for given \(\varepsilon _{C} \in \mathcal {S}(C,\delta )\) the construction of some \(\varepsilon _{G} \in \mathcal {F}(\varepsilon _{C})\) is easy to compute (Proposition 2) Proposition 2 states that it suffices to solve a the weighted FASP for the essential minor instead of the original graph. As a consequence multigraphs do not need to be considered and the number of elementary cycles of the essential minor can be drastically reduced, see for instance Example 2.
5 Subgraphs of Elementary Cycles
There are several approaches for generating the set Oel(G) of all elementary cycles of a graph, see [28] for an overview. Since there can be an exponential number of cycles in a graph, generating algorithms have an exponential worst case run time. The best algorithms available today are the ones of [34] and [20] solving the problem in \(\mathcal {O}\big (|\mathrm {O}_{\text {el}}(G)|(|V|+|E|)\big )\). Of course counting all cycles might be less expansive than generating them. However, by reducing to the Hamiltonian cycle problem, see for instance [2], counting all cycles is a NP-hard problem. For our concerns, and supposedly in many other situations, the generation of all cycles is not necessary, but the knowledge of the arc set of all cycles including a common arc suffices. In the following an algorithm for determing the smallest subgraph G el(e) ⊆ G which contains all elementary cycles that include the arc e is given.
Definition 5
Let G = (V, E) be a graph and u, v ∈ V we denote with with P(u, v), P el(u, v), P si(u, v) the set of all directed, elementary or simple paths from u to v respectively. For an arc e ∈ E we let
be the set of all elementary and simple cycles running through e. If \(\varepsilon \in \mathcal {P}(E)\) then we set Oel(ε) := ∪ e ∈ ε Oel(e), Osi(ε) := ∪ e ∈ ε Osi(e). Moreover, we denote with \(G(u,v):=\mathcal {G}(P(u,v)), G_{\text {el}}(u,v) := \mathcal {G}\big (P_{\text {el}}(u,v)\big )\), \( G_{\text {si}}(u,v):= \mathcal {G}\big (P_{\text {si}}(u,v)\big )\) the by the corresponding paths induced graphs and with \(G(e):= \mathcal {G}(P(u,v))\), \(G_{\text {el}}(e):=\mathcal {G}\big (P_{\text {el}}(e^{-},e^{+}) \cup \{e\}\big )\), \(G_{\text {si}}(e):= \mathcal {G}\big (P_{\text {si}}(e^{-},e^{+})\cup \{e\}\big )\) by the corresponding cycles induced graphs. Moreover, \(P^{0}(u,v),\mathrm {P}_{\text {el}}^{0}(u,v)\), \(\mathrm {P}_{\text {si}}^{0}(u,v)\), O(e), \(O_{\text {el}}^{0}(e)\), \(O_{\text {si}}^{0}(u,v)\), G 0(e), \(G_{\text {el}}^{0}(e)\), \(G_{\text {si}}^{0}(e)\) shall denote the connected (and not necessarily directed) analagons of the introduced sets and graphs.
Note that P el(u, v) ⊆ P si(u, v) and therefore Oel(e) ⊆Osi(e). Moreover, the graphs G(u, v), G(e) can be determined in \(\mathcal {O}(|E|^{2})\) by applying a depht first search technique similar to Remark 5. In the other cases we observe:
Theorem 2
Let G = (V, E)be a graph and u, v ∈ V, e ∈ E. Then there exist algorithms which compute:
-
i)
The graphs \(G_{\text {el}}(u,v),G_{\text {el}}^{0}(u,v)\),\(G_{\text {el}}(e),G_{\text {el}}^{0}(e)\) in \(\mathcal {O}(|E|^{2})\).
-
ii)
The graphs G si(u, v),\(G_{\text {si}}^{0}(u,v)\), G si(e),\(G_{\text {si}}^{0}(e)\) in \(\mathcal {O}(|E|^{4})\).
Proof
Let p ∈ P el(u, v) then no vertex \(w \in \mathcal {V}(p)\) is passed twice of p. Thus, for every \(f \in \mathcal {E}(p)\) there is a path q ∈ P(u, f −) with respect to \(G \setminus \big (N_{E}^{-}(f^{-})\setminus \{f\}\big )\). Vice versa if p ∈ P(u, v) is such that \(\mathcal {E}(p) \not \subseteq G_{\text {el}}(u,v)\) then has to be a vertex \(w \in \mathcal {V}(p)\), which is passed at least twice by p implying that there is \(f \in \mathcal {E}(p)\) such that
Thus, by setting G′ := G ∖{f ∈ E | f fulfills (4)}, every path p ∈ P(u, v) with \(\mathcal {G}(p) \not \subseteq G_{\text {el}}(u,v)\) is interrupted in G′. Hence, \(G^{\prime }(u,v)= \mathcal {G}(P(u,v))\) with respect to G′ coincides with G el(u, v). Algorithm 1 formalizes this procedure and runs in \(\mathcal {O}(|E|^{2})\) if G is stored in an adjacency list, enabling us to test whether P(u, v) = ∅ in \(\mathcal {O}(|E|)\). The other cases of i) can now be solved by replacing u, v with e and directed paths or cycles with connected ones.
To show ii) we add two arcs u ∗ = (x, u), v ∗ = (v, y), x, y∉V denote with G ∗ the resulting graph and consider the line graph \(L(G^{*})=(V_{L}^{*},E_{L}^{*})\). We recall that |V L | = |E|, |E L |≤|E 2| and apply the fact that the elementary paths of L(G) are in 1 to 1 correspondence to the simple paths of G and therefore \(\mathcal {V}\big (G_{\text {el}}(u^{*},v^{*})\big ) \setminus \{u^{*},v^{*}\} = \mathcal {E}\big (G_{\text {si}}(u,v)\big )\). Hence ii) follows analogue to i). □
Remark 8
Note that if (C, δ) is the essential minor of (G, ω). Then the treatment of “parallel” paths is avoided by the essential minor construction. Thus, we expect that if C is significant smaller than G the run time performance will increase drastically.
6 Isolated Cycles
Of course the question arises whether a solution of the FASP on G el(e) can be determined independently of the rest of the graph. The notion of isolated cycles is our starting point of investigations in this manner and as it will turn out it is a very helpful concept of answering this question.
We recall that a Min- s-t-Cut with source s = u and sink t = v is given by a set ε ⊆ E such that P(u, v) = ∅ in G ∖ ε and \(\Omega _{G,\omega }(\varepsilon ) = {\sum }_{e\in \varepsilon }\omega (e)\) is minimized.
Lemma 1
Let (G, ω)be a weighted graph and e ∈ E.Then there is an algorithm, which determines a solution \(\varepsilon \in \mathcal {S}\big (G_{\text {el}}(e),\omega \big )\) of the FASP on (G el(e), ω)in \(\mathcal {O}\big (|V||E|\log (|V|)\big )\), where we slightly abused notion by still denoting ω for the the restriction of ω to G el(e).
Proof
Observe that by interpreting ω as a capacity function on G el(e) a solution of the FASP on ε is given by {e} or a Min-s-t-Cut ε with source s = e − and sink t = e +. The option with the smaller weight is chosen. Due to the famous Min-Cut-Max-Flow Theorem a Min- s-t-Cut can be determined by solving a Max-Flow problem with respect to ω and s = e −, t = e +. The algorithm of [10] solves the Max-Flow problem for arbitrary weights in time \(\mathcal {O}(|V|^{2}|E|)\) and can be speedend up to \(\mathcal {O}\big (|V||E|\log (|V|)\big )\), [11] by using the data structure of dynamic trees. Thus the statement is proven. □
Remark 9
Note that if (C, δ) is the essential minor of (G, ω) then the absence of “parallel” paths might speeds up the time required to determine a Min- s-t-Cut drastically. Moreover, the Max-Flow-Problem is very well understood, yielding many alternatives to the algorithm of [10] and providing faster solutions in special cases, see [11] and [3] for an overview.
Definition 6
Let G be a graph and c ∈ Oel(G) then we denote with
the set of isolating arcs of c, i.e., if e ∈ I(c) then c has empty intersection with every cycle c′ that does not contain e or an parallel arc of e. For an arc e ∈ E or set of arcs ε ⊆ E we set
and \(G_{I}(e):= \mathcal {G}\big (O_{I}(F^{+}(e))\big )\).
Remark 10
Note, that the sets of isolated cycles possess a flat hierarchy in the following sense. If e, f ∈ E, e ≠ f, with O I (e) ≠ O I (f) then O I (e) ∩ O I (f) = ∅. If vice versa O I (e) = O I (f) then by definition we obtain Oel(F +(e)) = Oel(F +(f)).
Remark 11
Let c ∈ O I (G) be an isolated cycle and I(c) the set of all isolating arcs of c. If we contract I(c) then the resulting graph G/I(c) fulfills
where <⋅,⋅> denotes the standard scalar product on \(\mathbb {R}^{n}\), n = |E/I(c)|. Thus, by detecting isolated cycles we obtain an orthogonal splitting
Such a splitting is certainly helpful whenever one wants to find a basis of Λ(G), e.g., a minimal cycle basis of span(O I (e)) can be extended to a minimal basis of Λ(G).
Consider an isolating arc e of a graph (G, ω) or its essential minor (C, δ). The isolated cycles O I (e) running through e can be cut either by removing the arc set ε 0 = F +(e) or another feedback set ε 1 of G I (e). By definition the arc set ε 0 cuts at least the cycles in O I (ε 0). By Remark 10 the feedback set ε 1 cuts only the isolated cycles O I (ε 0) or is given by ε 1 = F +(f) of another isolating arc f ∈ O I (e) with Oel(ε 0) = Oel(ε 1). Thus, if the weight of ε 0 equals the weight of a solution of the FASP on G I (e) then there is a solution ε of the FASP on G with ε 0 ⊆ ε. The following definition reflects this idea more formally.
Definition 7
Let (G, ω) be a graph. We define a maximal list of graphs (G 0, ω 0),…,(G k , ω k ) with (G 0, ω 0) = (G, ω), (G i , ω i ) ≠ (G i+1, ω i+1) , ∀ i ∈ [1 : k − 1] as follows. Let (C i , δ i ), with \(C_{i}=(V_{C_{i}},E_{C_{i}})\), be the essential minor of (G i , ω i ) and \(E^{*}_{i}\subseteq I(C_{i})\) be a maximal subset of pairwise different isolating arcs of C i such that \(\forall e \in E^{*}_{i}:\)
Then the weighted graph (G i+1, ω i+1) is given by
where \(\delta _{i+1}:= \delta _{i|E_{i+1}}\) denotes the restriction of δ i to E i+1. If G k+1 = G k for some k ∈ ℕ then (S, τ) := ((V S , E S ), τ) = (C k , δ k ), k ∈ ℕ is called the resolved graph of G, which we shortly denote with (S, τ) = (S(G), τ(ω)). A graph (G, ω) is called resolvable if and only if S = ∅.
Example 3
Note that (C, δ) in Fig. 4 is resolvable, while (G, ω) in Fig. 6 is not resolvable, but becomes resolvable for uniform weight ω ≡ 1.
The construction has an immediate consequence.
Theorem 3
Let (G, ω)be a graph. Then there is an algorithm testing whether (G, ω)is resolvable and determing a solution of the weighted FASP on G in case of resolvability in \(\mathcal {O}(|V||E|^{3})\).
Proof
Due to Proposition 3 the construction of the essential minor (C i , δ i ) can be achieved in \(\mathcal {O}(|E|^{2})\) for every 1 ≤ i ≤ k. Since checking whether Oel(f) ≠ ∅ can be done in \(\mathcal {O}\big (|E|\big )\) by storing G in an adjacency list and using depht first search to figure out whether P(f +, f −) ≠ ∅ the Algorithm 2 computes the set G I (e) in \(\mathcal {O}(|E|^{2})\) and therefore computing G I (e) for all arcs requires at most \(\mathcal {O}(|E|^{3})\) computation steps. Furthermore, a solution of the FASP on G I (e) can be computed due to Lemma 1 in \(\mathcal {O}(|E|^{2})\). Due to the fact that during the construction of (S, τ) no parallel arcs appear, we have to recompute the isolated cycles at most |V | times. Thus, (S, τ) can be determined in \(\mathcal {O}(|V||E|^{3})\). Furthermore, we can use the backtracking procedure of Proposition 3 to compute a solution of the FASP in \(\mathcal {O}(|V||E|^{2})\) once (S, τ) is known. □
Observe that Theorem 3 was already stated in Section 3 as Theorem A. However, the result leads to the question : What are fast (linear, quadratic time) checkable conditions a graph (G, ω) has to satisfy to be resolvable. Though, we can easily construct resolvable graphs as (C, δ) in Fig. 4 or modified versions of (C, δ) by adding additional isolated cycles a characterization of resolvable graphs is still open. A better understanding of the non-resolvable graphs might help to solve that problem. In order to investigate these graphs the class of graphs without isolated cycles at all, seems to be interesting. Therefore, the next result might be a good starting point for further studies.
Proposition 4
The directed clique D 3 = (V, E)in Fig. 5 is the smallest graph with O el(G) ≠ ∅ and O I (G) = ∅, i.e. any non-isomorphic graph G′ = (V′, E′)with O(G′) ≠ ∅ and O I (G′) = ∅ satisfies |V′| + |E′| > |V | + |E|.
Proof
If G′ is a graph with O(G′) ≠ ∅, O I (G′) = ∅ then G′ possesses at least three vertices and |O(G′)| ≥ 3 has to hold. We claim that there are at least three linear independent cycles. Indeed if d 1, d 2, d 3 ∈ O(G′) with λ d 1 + μ d 2 + η d 3 = 0, \( \lambda , \mu , \eta \in \mathbb {Z}\) then due to Remark 2 we know that d 1, d 2, d 3 ∈ {0,1}|E| and no elementary cycle is subset of another. So w.l.o.g. we can assume that d 1 = d 2 + d 3, which contradicts that all cycles are elementary. Thus, \(\dim _{\mathbb {Z}} \Lambda (G^{\prime })= |E^{\prime }|-|V^{\prime }|+1 \geq \dim _{\mathbb {Z}} O(G^{\prime }) \geq 3\). This observation implies that |E′|≥|E| whenever |V′| > 3. Since D 3 is an directed clique we can identify any smaller graph G′ with a subgraph of D 3. It is easy to see that deletion of any arc e ∈ E produces an isolated cycle in D 3. For instance if we delete e 4 then c 3 will be isolated, if we delete e 5 then c 2 will be isolated and so on. Hence G′≅D 3. □
If G is a non-resolvable graph then one can think about different methods to solve the FASP of the resolved graph (S, τ). One possibility is discussed in the next section.
7 The Bellman Decomposition
In this section we formulate an solution of the FASP based on a dynamic programming technique. Such an approach can be applied to optimization problems whenever there is a decomposition of the problem into subproblems which satisfy the Bellman principle, i.e., every optimal solution consists only of optimal subsolutions. To motivate the following definitions we first consider an example.
Example 4
Consider the graph (G, ω) in Fig. 6. If we want to know, which arc of c 3 we have to cut for an optimal solution then this depends on the cycles c 1, c 2. The benefit of cutting e 1 instead of e 2 or e 3 is that we do not have to cut c 1 anymore which costs at least 2. Thus we introduce a new weight σ, which equals ω on E ∖{e 1} and is set to σ(e 1) = ω(e 1) − 2 = 3 on e 1. Since no other cycles than c 3 are cut by d 3 the weight of d 3 remains unchanged. Now we consider \(H_{e_{3},d_{3}} = G_{\text {el}}(e_{3})\setminus d_{3}\) and \(H_{d_{3},e_{3}} = G_{\text {el}}(d_{3})\setminus e_{3}\) and compute
The best solution, which contains e 3 is {e 3, d 1} and the best solution containing d 3 is {d 3, e 1} and we observe that
Thus, the difference of the solutions coincides with the difference of the subproblems in (6) with respect to the new weight σ.
We need to introduce several concepts to show that this observation remains true in general.
Definition 8
(arc sensitivity) Let (G, ω) be a graph and e, f ∈ E, e ≠ f and G el(e) = (V e , E e ) be given. Then we say that f is arc sensitive to e with respect to the FASP, denoted by f ↠ e, if and only if
We denote with \(\mathcal {N}_{\twoheadrightarrow }(e) = \left \{f \in E \,\,\big |\,\, f\twoheadrightarrow e\right \}\) the set of all arcs, which are sensitive to e.
Note that the arcs f of an isolated cycle c ∈ O I (e) can not be sensitive to e. Thus, arc sensitivity detects arcs, which might prevent us from solving the FASP on G el(e) independently from the rest of the graph. An understanding of these dependencies can be reached by understanding the meta graph of G defined in the following.
Definition 9
(meta graph) Let (G, ω) be a graph and c ∈ Oel(G). We set \(V_{0}=\mathcal {E}(c)\), E 0 = W 0 = ∅ and for k ≥ 1 we define recursively \(W_{k} = \cup _{i=0}^{k} V_{i} \) with
Stopping the recursion if \(K\in \mathbb {N}\) is such that V K = ∅ we introduce the simple, undirected graph \(M_{c} := (V_{M_{c}},E_{M_{c}})= \bigcup _{k=0}^{K}(V_{k},E_{k})\) as the meta graph of G with respect to c. Furthermore, we introduce \(\mathcal {C}(c)= \mathcal {G}(\mathrm {O}_{\text {el}}(V_{M_{c}}))\subseteq G\) as the subgraph of all arc sensitive cycles containing c.
Lemma 2
Let G = (V, E)be a graph, c ∈ Oel(G).Then we can construct the meta graph M c = (V M , E M ) in \(\mathcal {O}(|E|^{3})\).
Proof
Storing G in an adjacency list enables us to test whether Oel(e) ≠ ∅ in \(\mathcal {O}(|E|)\) by depht first search, which we have to do at most |E|2 times. Due to Theorem 2 the graph G el(e) can be determined in \(\mathcal {O}(|E|^{2})\). Due to the fact that V k ∩ V k−1 = ∅, 1 ≤ k ≤ K we have to construct Gel(e) at most |E| times, which yields the claimed complexity. □
Next we define the relative weight σ G, c, e, f with respect to some c ∈ Oel(G) and \(e,f\in \mathcal {E}(c)\). As it will turn out σ G, c, e, f decodes which arcs of c can be cutted to obtain a minimal feedback set. For a better clarity we firstly restrict ourselves to the case where the meta graph M c ∖ f is a tree. In this case, e is chosen as the root and σ G, c, e, f is given by solving the FASP for every leaf h on
and subtracting this value from the weight ω(h) of the predecessor of h. Afterwards, we delete all leafs of M c ∖ f and iterate this procedure till e becomes a leaf. More precisely:
Definition 10
(relative weight for meta trees) Let (G, ω) be a weighted graph c ∈ Oel(G), \(e,f \in \mathcal {E}(c)\). Let M c be the meta graph of G with respect to c and assume that the connected subgraph M c, f of M c ∖ f, which contains e is a tree. Then we define the relative weight of G with respect to c, e, f
as the output of Algorithm 3 with input ((G, ω), M = M c , e, f).
To define the relative weight in general, we have to consider all spanning trees of M c, f generated by deleting edges, which cut cycles for the first time, seen from e. In Example 5 we assert the definition for a special meta graph. The precise definition can be found below, using the following notions:
For any tree M = (V M , E M ) and any vertices h, e ∈ V M we denote with p h (M, e) the predecessor of h with respect to root e. If M = (V M , E M ) is an arbitrary simple, undirected graph and q ∈ V M then we consider the set D k (M, q) := {w ∈ V M | d(q, w) = k} of all vertices possessing shortest path distance k with respect to q in M. Furthermore, we consider
\(K(M,q): = \min \{k \in \mathbb {N} \,\,\big |\,\, U_{k}(M,q)\not = \emptyset \}\) and U(M, q) := U K(M, q)(M, q). In other words: U(M, q) denotes the set of vertices w which cut cycles for the fist time, seen from starting point q.
We set
and denote with M h the connected component of \(\widetilde M_{h}\) containing h. Recursively for n ≥ 1 and an ordered set F = {h 0, … , h n } with \(h_{n} \in U(M_{h_{0},\dots , h_{n-1}},q)\) we define \(M_{h_{0},\dots ,h_{n}}:= (M_{h_{0},\dots ,h_{n-1}})_{h{_{n}}}\). For h ∈ U(M, q) we consider
and set M ≤U(M, q) to be the connected component of \( \widetilde M^{\leq U(M,q)}\) containing q, which is therefore a tree.
Definition 11
(relative weight in general) Let (G, ω) be a graph, \(c\in \mathrm {O}_{\text {el}}(G), e,f\in \mathcal {E}(c)\) and M c be the meta graph of G with respect to c. Let σ G, M, e be the output of Algorithm 4 with input ((G, ω), M c , e, f), M = M c, e . Then, we define
as the relative weight of G with respect to c, e, f.
Example 5
Let (G, ω) be a graph, \(c\in \mathrm {O}_{\text {el}}(G), e_{0},e_{1}\in \mathcal {E}(c)\) and assume that \(M_{c,e_{1}}\) coincides with M from Example 7. We follow Algorithm 4 to compute \(\sigma _{G,M,e_{0},e_{1}}: E \longrightarrow \mathbb {R}\). Observe that U(M, e 0) = {f 0, f 1} and \(U(M_{f_{1}},e_{0})=\{h_{0},h_{1}\}\). The graph \(M_{f_{1},h_{0}}\) is sketched in the next picture and turns out to be a tree. Now we delete all vertices which are closer to e 0 as \(p_{h_{1}}(M,e_{0})\) and obtain the graph N. Next we compute the relative weight \(\sigma (h_{1}):=\sigma _{N,p_{h_{1}}(M,p_{h_{1}}),e_{1}}(h_{1})\) of h 1 with respect to \(N,p_{h_{1}}\). Analogously, we compute \(\sigma (h_{0}):=\sigma _{N,p_{h_{0}}(M,p_{h_{0}}),e_{1}}(h_{0})\) and consider the graph \(M^{\leq }= M_{f_{1}}^{\leq U(M_{f_{1}},e_{0})}\), which is sketched in the last picture. Now M ≤ is a tree and the predecessor of f 1 is e 0. Thus, we can compute
which finishes the computation of \(\sigma _{G,M,e_{0},e_{1}}: E \longrightarrow \mathbb {R}\) by replacing ω(f 0), ω(f 1) with these weights, respectively (Fig. 7).
Proposition 5
Let G = (V, E)be a graph c ∈ Oel(G),\(e,f \in \mathcal {E}(c)\) and let the meta graph M c of G with respect to c be given. Denote with
the\(\mathbb {Z}_{2}\)-dimension ofthe cycle space Λ0(M c, f ) of M c, f . Then
-
i)
The computation of σ G, c, e, f can be realized in \(\mathcal {O}\big (2^{m(c,f)}|V||E|^{2}\log (|V|)\big )\).
-
ii)
\(m(c,f) \leq \dim _{\mathbb {Z}_{2}}\Lambda ^{0}(G)= |E|-|V| +\#G\)
Proof
Assume that M c, f is a tree. As already mentioned, due to [10] and [11] the feedback length Ω(G f , σ) can be determined in \(\mathcal {O}\big (|V||E|\log (|V|)\big )\), and has to be computed at most \(|V_{M_{c,f}}|\leq |E|\) times. If M c, f is not a tree then we observe that the most expansive computation step in Algorithm 4 is again the computation of the relative weight with respect to a certain subtree of M c, f (lines 8 and 19 in Algorithm 4). This computation step has to be computed for every pair f, h ∈ U(M, q) twice, for some M, q. In worst case the combination of the pairs is independent, i.e., every other pair still appears once M f and M h are considered. In this case the set of remaining cycles running through the remaining pairs (h′, f′) do not contain the edges h and f and can therefore not be generated by the cycles running through (h, f) with respect to \(\mathbb {Z}_{2}\)-coefficients. Consequently, there are at most 2m(c, f) iterations. Together with the argumentation above this yields i).
To show ii) we write \(d= \{h_{0},\dots ,h_{k}\} \subseteq V_{M_{c,f}}\) as a list of connected meta vertices. Now we choose connected paths p i ⊆ G, 0 = 1 … , k + 1 connecting \(h_{i}^{-}\) with \(h_{i+1 \mod k+1}^{+}\). Then c = {{h 0}∪ p 0 ∪…,{h k }∪ p k ∈ Λ0(G) is a connected cycle in G. If d 1, … , d m ∈ Λ0(M c, f ) is a set of \(\mathbb {Z}_{2}\)-linear independent meta cycles then regardless of choices for the paths p i representing an meta edge the corresponding cycles c 1, … , c m ∈ Λ0(G) are \(\mathbb {Z}_{2}\)-linear independent in Λ0(G). Thus, m(c, f) is bounded by the \(\mathbb {Z}_{2}\)-dimension of Λ0(G), proving ii). □
Remark 12
Note that a graph G = (V, E) with c ∈ Oel(G) such that M c coincides with M in Fig. 11 can be easily constructed by choosing a starting cycle c and additional cycles c 1, c 2 intersecting with c in f 0, f 1, respectively. Then we continue this process by follwing M for the ramining cycles. Hence, the set of graphs G with cycle c and meta graphs M c such that \(\dim _{\mathbb {Z}_{2}\Lambda ^{0}}(M)\) is small, is actually a huge set.
Indeed the relative weights satisfy a Bellman condition, which can be formulated as follows. We recall that \(\mathcal {G}_{o}(G)\subseteq G\) denotes the subgraph induced by all cycles of G and state:
Theorem 4
Let (G, ω)be a weighted graph c ∈ Oel(G), \(e,f\in \mathcal {E}(c)\) and \(H_{e,f} = \mathcal {G}_{o}\big (G_{\text {el}}(e)\setminus f\big ),H_{f,e} = \mathcal {G}_{o}\big (G_{\text {el}}(f)\setminus e\big )\) then
where we shorten σ e = σ G, c, e, f , σ f = σ G, c, f, e and slightly abuse notation by still denoting σ e , σ f , ω for the restriction of the arc weights to the corresponding subgraphs, respectively.
Remark 13
Note that (8) is a quite comfortable way of formulating the Bellman principle, i.e., though we do not know the values of Ω(G ∖ e, ω) and Ω(G ∖ f, ω) we know that if e maximizes
for all on \(\mathcal {E}(c)\). Then ω(e) + Ω(G ∖ e, ω) = Ω(G, ω). Thus, {e} can be extended to a global optimal solution. Maybe this relative formulation can be applied also to other problems for which one wants to use a dynamic programming technique. The described observation is also used in the proof of Theorem 4.
In addition to the observation above the following statement is needed to prove Theorem 4.
Lemma 3
Let G = (V, E)be a graph, c ∈ Oel(G)and \(e,f \in \mathcal {E}(c)\) such that there is c′ ∈ Oel(e) ∖Oel(f)and \(p \in \mathcal {E}(c^{\prime })\).Then
-
i)
\(\sigma _{G,c,e,f}(h) = \sigma _{G\setminus f,c^{\prime },e,p}(h) \quad \text {for all} \,\,\,h \in \mathcal {E}\big (H^{\prime }_{e,p}\big )\).
-
ii)
\(\sigma _{G,c,e,f}(p) = \omega (p) - \Omega \big (H^{\prime }_{p,e},\sigma _{G\setminus f,c^{\prime },p,e}\big ) \), where \(H^{\prime }_{p,e}\) is understood with respect to G′.
Proof
To verify i) and ii) one has to follow directly Definitions 9, 10 and 11, which is left to the reader. □
Proof of Theorem 4
If Oel(e) = Oel(f) with respect to G then σ G, c, e, f = σ G, c, f, e and Ω(G ∖ e, ω)) = Ω(G ∖ f, ω)) and therefore the claim follows. Now we argue by induction on |Oel(G)|. If |Oel(G)| = 1 then there is only one totally isolated cycle and therefore Oel(e) = Oel(f) = {c}. Thus, we are in a special case of the situation above and obtain the claim. Now assume that |Oel(G)| > 1 and \(\mathrm {O}_{\text {el}}(f)\subsetneq \mathrm {O}_{\text {el}}(e)\). We consider G′ := G ∖ f and observe that |Oel(G′)| < |Oel(G)|. We choose c′ ∈ Oel(G′) with \(e \in \mathcal {E}(c^{\prime })\) and choose \(p \in \mathcal {E}(c^{\prime })\) such that
is maximized on c′, where \(H^{\prime }_{e,p}\) ,\(H^{\prime }_{p,e}\) are understood with respect to G′. Thus, following Remark 8 there holds
We set \(\sigma ^{\prime }_{e} :=\sigma _{G^{\prime },c^{\prime },e,p}, \sigma ^{\prime }_{p} :=\sigma _{G^{\prime },c^{\prime },p,e}\) then by induction and (10) we compute
On the other side we consider G″ = (V″, E″) := H e, f with the arc weight
Now observe that \(H^{\prime \prime }_{p,e} = \emptyset \) with respect to G″ and by Lemma 3 i) we have \(\sigma ^{\prime \prime }_{e}:=\sigma _{G^{\prime \prime },c^{\prime },e,p}(h) = \sigma _{G^{\prime },c,e,p}(h) = \gamma (h)\) for all \(h \in \mathcal {E} (H^{\prime \prime }_{e,p})\), where \(H^{\prime \prime }_{e,p}\) is understood with respect to G″. Moreover, γ(e) = ω(e) and therefore
Due to Lemma 3 ii) we have that \( \sigma _{G,c,e,f}(p) = \omega (p) -\Omega (H^{\prime }_{p,e},\sigma ^{\prime }_{p})\), \(\sigma _{p}^{\prime }=\sigma _{G^{\prime },c^{\prime },p,e}\). Inserting this fact in (12) gives
On the other, by (10) we have that (13) is maximized on c′. Thus, again by induction
Thus, by combining (13) with (11) and again (13) with (14) we obtain
If Oel(f) ⊆Oel(e) then Ω(H f, e , σ G, c, f, e ) = 0 and Ω(G ∖{e, f}, ω) = Ω(G ∖ e, ω). Thus, by (15) this yields the claim. If \(\mathrm {O}_{\text {el}}(f) \subsetneq \mathrm {O}_{\text {el}}(e)\) then the analogous of (15) with respect to f yields
Since Ω(G ∖{e, f}, ω) − Ω(G ∖{f, e}, ω) = 0 this finishes the proof. □
We consider the Algorithms 5 and 6, denote with output (A) the set of all possible outputs an algorithm A can produce and conclude:
Corollary 1
Let (G, ω) be a graph then the algorithm CUT is exact and complete with respect to the FASP, i.e,
while the algorithm CUT & RESOLVE is exact,i.e.,
Moreover, there is m ∈ ℕ such that CUT and CUT & RESOLVE possess run times \(\mathcal {O}\big (2^{m}|E|^{4}\log (|V|)\big )\), where theparameter m ≤|E|−|V | + 1can bedetermined in \(\mathcal {O}\big (|E|^{3})\big )\).
Indeed the corollary proves Theorem B and by Remark 12 the set of graphs with small m ∈ N, m < < |V | is a huge set.
Proof
If \(\varepsilon \in \mathcal {S}(G,\omega )\) and e ∈ ε then ε ∖{e} solves the minimal FASP on G(E ∖{e}). Thus, the exactness and completeness statements follow directly from Theorems 4,3. For c ∈ Oel(G) we set \(m(c):= \dim _{\mathbb {Z}_{2}}\Lambda ^{0}(M_{c})\). Then m(c) ≥ m(c, f) for all \(f \in \mathcal {E}(c)\) with m(c, e) and Proposition 5 implies that m(c) ≤|E|−|V | + 1 holds. Let \(c^{\prime }\in \mathcal {C}(c)\) with c′∩ c ≠ 0, be any cycle in the component of all arc connected cycles containing c, introduced in Definition 9. Then m(c′) ≤ m(c) on G ∖ e for every \(e \in \mathcal {E}(c)\). Thus, as long as at least one arc \(e\in \mathcal {E}(c)\) was deleted the maximal number of appearing \(\mathbb {Z}_{2}\)-linear independent meta cycles appearing for the computation of \(\sigma _{G\setminus e,c^{\prime },h,k}\), \(h,k \in \mathcal {E}(c^{\prime })\) are bounded by m(c). Thus, by setting G 0 = G, choosing a cycle c 0 ∈ Oel(G 0), determing \(M_{c_{0}} = (V_{M_{c_{0}}},E_{M_{c_{0}}})\) and considering c k ∈ Oel(G k ), \(G_{k} = G_{k-1}\setminus V_{M_{c_{k-1}}}\), k ≥ 1 we obtain cycles c 0, … , c n , n ≤|E| with \(\mathcal {C}(c_{i})\cap \mathcal {C}(c_{j})= \emptyset \) and \(\cup _{i=0}^{n}\mathcal {C}(c_{i}) = \mathrm {O}_{\text {el}}(G)\). Since \(\mathcal {E}\big (\mathcal {C}(c_{i})\big )\cap \mathcal {E}\big (\mathcal {C}(c_{j}))=\emptyset \) the parameter m := maxi = 0, … , nm(c i ) can be determined in \(\mathcal {O}\big (|E|^{3}\big )\) due to Lemma 2.
Since the algorithm CUT computes σ G, c, e, h , σ G, c, h, e for fixed \(e \in \mathcal {E}(c)\) and all \(h \in \mathcal {E}(c)\) and \(|\mathcal {E}(c)|\leq |V|\), cuts the right arc and repeats the computation at most |E| times by observing that \(\mathcal {O}(|V|^{2})=\mathcal {O}(|E|)\) the run time of the algorithm CUT can be estimated as claimed. Recall, that due to Theorem 3 the resolved graph can be computed in \(\mathcal {O}\big (|V||E|^{3}\big )\). Therefore, the analogous argumentation yields the claimed run time for the algorithm CUT & RESOLVE. □
Due to the fact that the FASP is NP complete, as expected our approach depends exponentially on some parameter, which in our approach is the number m of liner independent meta cycles. In cases where m is large we have to use another method to solve the FASP or use a heuristic.
8 Valid Greedy Solutions
As for instance shown in [19] a greedy solution for the FASP needs not to be optimal. We give a criterium on solutions which guarantees optimility. Moreover, we can estimate the failure of every sub optimal solution. Finally, we suggest a heuristic given by a hybrid technique of the already presented approaches.
For given graph (G, ω) we consider the functions
Recall, that due to [2] determing θ G (e) is a NP-hard problem and the results of [34] and [20] solving the problem in \(\mathcal {O}\big (|\theta _{G}(e)|(|V|+|E|)\big )\), where θ G (e) can depend exponentially on G. However, [31] could establish efficent and close estimations of the number of s − t paths. Since |Oel(e)| = |P el(e −, e +)| the result enables us to determine θ G (e) efficently, with small failure. In contrast, φ G can be determined in \(\mathcal {O}(|E|^{2})\) due to Theorem 2.
Definition 12
Let (G, ω) be a given weighted graph with G = G o . We introduce the efficent weights
and set ω max(G, ω) := maxe ∈ E ω(e), θ max(G) = maxe ∈ E θ G (e), φ max(G) := maxe ∈ E φ G (e), ξ max(G, ω) := maxe ∈ E ξ(e), η max(G, ω) := maxe ∈ E η(e), and \(\mu (G,\omega ) = \left \lceil \frac {|\mathrm {O}_{\text {el}}(G)|}{\xi _{\max }(G,\omega )}\right \rceil \), \(\upsilon (G,\omega )= \left \lceil \frac {|E|}{\eta _{\max }(G,\omega )}\right \rceil \), where ⌈⋅⌉ denotes the Gauss-bracket.
Theorem 5
Let (G, ω) be a given graph. Then
Moreover, there are infinitely many weighted graphs (G, ω)with μ(G, ω) = Ω(G, ω)or υ(G, ω) = Ω(G, ω).
Proof
Let \(\varepsilon = \{e_{1},\dots ,e_{n}\} \in \mathcal {S}(G,\omega )\) be an arbitrarily ordered solution of the weighted FASP. We set G 0 = G and G i = (V i , E i ) := G(E ∖{e 1, … , e i−1}), for i ≥ 1 and denote with \(\omega _{G_{i}}\) the corresponding restriction of ω to E i . Now due to the fact that \(\xi _{G_{i},\omega _{i}}(e)\leq \xi _{G,\omega }(e)\) for all e ∈ E i ,1 ≤ i ≤ n we obtain
Since \(\Omega (G, \omega ) \in \mathbb {N}\) this proves (16). Now let (G, ω) be a graph with ω = 1 and Oel(G) = {c 0, … , c n }, which are arranged path like, i.e., \(|\mathcal {E}(c_{i}\cap c_{i+1})| = 1\) and \(|\mathcal {E}(c_{i}\cap c_{j})| = 0\) if j ≠ i. Then one verifies easily that μ(G, ω) = Ω(G, ω). By replacing θ G with φ G and μ(G, ω) with υ(G, ω) the exact same argumentaion yields the remaining claim. □
Remark 14
Note, that of course there are many more graphs with μ(G, ω) = Ω(G, ω) or υ(G, ω) = Ω(G, ω) then those used in the proof above. Nevertheless, it is hard to give a good condition on a graph such that μ(G, ω) = Ω(G, ω) or υ(G, ω) = Ω(G, ω) holds. For instance in [19] an example of a planar graph is given, where this is not the case. Certainly, the lower bounds can be used to improve the performance of a variety of algorithms solving the FASP or to control the quality of a heuristic as the Algorithms 7 and 8.
We consider the heuristics GREEDY-CUT and GREEDY-CUT & RESOLVE and discuss their properties.
Proposition 6
Let (G, ω) and ε be a solution of GREEDY-CUT or GREEDY-CUT & RESOLVE with respect to the effective weigth ξ. Then
If in particular ω ≡ 1 then |ε| ≤ |E|/2.
Proof
Certainly it suffices to prove the first estimate in (17). We show the claim for a solution ε = {e 1, … , e n } of GREEDY-CUT. Assume that ε is ordered with respect to appearing arcs, set G 1 = G and G i = (V i , E i ) := G(E ∖{e 1, … , e i−1}), for i ≥ 2 and denote with \(\omega _{G_{i}}\), \(\theta _{G_{i}}\) and \(\xi _{G_{i}}\) the corresponding restrictions of ω, θ G , ξ G to E i . Then we compute
Since ξ n (e n ) = ξ min(ε) we use Theorem 5 to compute
and the claim follows. A proof of the statement for GREEDY-CUT & RESOLVE can be given by an easy adaption of the argument above and is left to the reader. Now let ω ≡ 1 then we argue by induction on |ε| to show that |ε|≤|E|/2 for both algorithms. If |ε| = 1 then due to the fact that G possesses no loops the claim follows. Now let |ε| > 1 we order ε = {e 1, … , e n } with respect to appearance and consider ε 1 := {e 1}, ε 2 = ε ∖{e 1} and G 1 := (V 1, E 1) = G(Oel(e 1)), G 2 := (V 2, E 2) = G(Oel(ε 2)). By induction we have |ε 2|≤|E 2|/2. Consider G/(E 1 ∩ E 2), delete all appearing loops and denote the resulting graph with \(G_{1}^{*}\). If \(\mathrm {O}_{\text {el}}(G_{1}^{*})=\{c\}\) then all cycles of Oel(G) are totally isolated and the claim follows by triviality. If \(|\mathrm {O}_{\text {el}}(G_{1}^{*})|>1\) then \(|\varepsilon _{1}|\leq |E_{1}^{*}|/2\). Since \(E_{1}^{*} \cap E_{2} = \emptyset \) this implies that
as claimed. □
Be replacing θ G , with φ G and ξ G, ω with η G, ω in GREEDY-CUT or GREEDY-CUT & RESOLVE the analouge argumentaion yields.
Proposition 7
Let (G, ω) with G = G o and ε be a solution of GREEDY-CUT or GREEDY-CUT & RESOLVE with respect to the effective weigth η. Then
If inparticular ω ≡ 1 then |ε| ≤ |E|/2.
Example 6
Consider the directed clique D 3 from Fig. 5 with constant weight w ≡ 1. Then D 3 coincides with its resolved graph and regardless of possible choices every candidate ε the algorithm GREEDY-CUT or GREEDY-CUT & RESOLVE proposes, satisfies |ε| = 3. Since μ(D 3) = 3 every candidate is optimal.
Summarizing our results so far the heuristics GREEDY-CUT or GREEDY-CUT & RESOLVE solve the FASP with controlled variance in \(\mathcal {O}(|E|^{4})\), due to Theorem 2, in case of effective weight η and in \(\mathcal {O}(f_{\theta }|E|^{2})\) in case of effective weight ξ, where f θ shall control the computation steps of θ G (e), ∀e ∈ E. Even if we approximate θ(e) by the method of [31] the resulting algorithm remains an efficient heuristic. However, possibly there is a more accurate method available, given by a hybrid algorithm of the methods introduced in this article. We expect that an implementation of this strategy yields a fast and precise general FASP-SOLVER, which due to Section 2 is therfore also a FVSP-SOLVER.
Strategy 1
For given weighted graph (G, ω)
-
1.
Compute the resolved graph (S, τ).
-
2.
Choose a cycle c ∈ Oel(S)and compute the meta graph M c .
-
3a.
If the number of meta cycles m(c)is large determine a “good” feedback vertex set \(\nu _{M_{c}}\) of M c , with respect to the vertex weight
$$\omega_{M_{c}}: V_{M_{c}}\longrightarrow \mathbb{R}^{+}\,, \quad \omega_{V_{c}}(v) = \frac{1}{\omega(v)} \,, $$using one of the known or presented methods.
-
3b.
Alternatively, compute a maximal spanning tree \(T_{M_{c}}=(V_{m_{c}},E_{T_{c}})\) with respect to the arcweight weight
$$\omega_{M_{c}}: E_{M_{c}}\longrightarrow \mathbb{R}^{+}\,, \quad \omega_{M_{c}}(h) = \frac{1}{\omega(e)+ \omega(f)} \,, $$where h = [e, f], e, f, ∈ E and set \(\varepsilon _{M_{c}}=E_{M_{c}} \setminus E_{T_{c}}\).
-
4.
Set \(G^{*} = G/\nu _{M_{c}}\) and use CUT or CUT & RESOLVE to solve the FASP on on the component \(\mathcal {C}(c^{*})\) of arc connectedcycles containing \(c^{*}=c/\nu _{M_{c}}\).
-
5.
Choose a new cycle c′ of the resulting graph and repeat 1.-4. until no such cycle exists.
-
6.
Use the backtracking procedure of Proposition 3 to compute a feedback arc set ε ⊆ E of G.
The union ν M of the meta feedback vertex sets of the meta graphs can be interpreted asarcs, which are forbidden to cut in G. The resulting feedback arc set ε will be optimalup to this obstruction, i.e., we have
where\(M_{c^{*}}^{*}\) denotes themeta graph of G ∗ with respect to c ∗ = c/ν M . Hence, the quality of this heuristic can be evaluated by measuring how good G ∗ approximates G. Thus, if |ν M | < < |E| and the weight of the forbidden arcs is very high, i.e.,
the arcsof ν M will probably not be contained in any optimal solution, yieldingthe correctness of Strategy 1. Additionally, the lower bounds μ(G, ω), υ(G, ω) from Section 8 can be used to validate correctness. Analogous controls can be thought of, if we choose the alternative 3b.
9 Discussion
An implementation of the described algorithms is planned to be realized. Certainly, a comparison of real run times with other approaches would be of great interest. So far we compare our results with other theoretical approaches. Due to the immense amount of results during the last decades we restrict our discussion to publications, which do not restrict themselves to very tight graph classes as tournaments [23] or reducible flow graphs [29]. Finally, we suggest how the approaches of this article might be adapted to related problems.
9.1 The algorithms from I. Razgon and J. Chen et al.
Note that for given graph (G, ω, γ) with arc weight ω and vertex weight γ a brute force method of solving the FASP/FVSP is given by considering every subset ε ⊆ E or ν ⊆ V and check whether the graphs G ∖ ε, G ∖ ν are acyclic, respectively. Since due to Remark 5, checking for acyclicity requires \(\mathcal {O}(|E|^{2})\) operations, we can generate a list of all FAS’s or FVS’s possessing length \(l_{A} \leq |\mathcal {P}(E)|=2^{|E|}\), \(l_{V}\leq |\mathcal {P}(V)|=2^{|V|}\). Choosing the cheapest FAS or FVS yields therefore a brute force algorithm solving the FASP/FVSP in \(\mathcal {O}(|2^{|E|}|E|^{2}|)\), \(\mathcal {O}(2^{|V|}|E|^{2})\), respectively.
The algorithm of [30] solves the unweighted FVSP on simple graphs in \(\mathcal {O}(1.9977^{|V|}|V|^{\mathcal {O}(1)})\). Compared to the brute force algorithm this yields almost no improvement. Therefore, the question occured whether the parametrised version of the FVSP could be solved by an fixed parameter tractable algorithm. Every NP-complete problem can be solved by a fixed parameter tractable algorithm, i.e., by choosing p as the problem size there is an algorithm with complexity \(\mathcal {O}(f(p))\), where f is an on the parameter p exponentially depending function. Thus, the term fixed parameter tractable could be misleading. The precise question is whether there exists an algorithm with run time \(\mathcal {O}(f(k)|V|^{\mathcal {O}(1)})\) computing a FVS of length less than k or determing that no such set exists. Since the FVSP is NP-complete the function f will be exponentially dependent on k unless P = N P. Indeed, the algorithm of [9] solves the parametrised version of the FVSP in \(\mathcal {O}\big (|E|^{4}4^{k}k^{3}k!\big )\). Thus, f(k) = k 34k k!, increases even worse than exponentially in k. Since a small feedback length almost always correlates to small graphs or very special graphs, e.g. tree-like graphs, even improvements of the algorithm won’t be usefull in many applications. Therefore, the article might be seen as an purely theoretical approach answering this question. Indeed, to the best of our knowledge none of the algorithms were used for an implementation of a general FVSP/FASP-SOLVER.
In contrast, the algorithms CUT and CUT & RESOLVE solve the FASP or FVSP on weighted multi-digraphs in \(\mathcal {O}\big (2^{m}|E|^{4}\log (|V|)\big )\) and \(\mathcal {O}\big (2^{n}\Delta (G)^{4}|V|^{4}\log (|E|)\big )\). The parameters m and n fulfill m ≤|E|−|V | + 1, n ≤ (Δ(G) − 1)|V |−|E| + 1 and can be computed in \(\mathcal {O}(|E|^{3})\), \(\mathcal {O}(\Delta (G)^{3}|V|^{3})\), respectively. Thus, in both cases we can efficently control the run time of the exact solutions, which enables us to a priori decide whether the given instance shall be solved exactly or by an heuristic, e.g., Strategy 1. This crucial difference to the other approaches and the fact that Strategy 1 is an heuristic on the meta level and not on the instance itsself, makes us confident that an implementation generates a fast and accurate FASP/FVSP-SOLVER yielding a deep impact on computational an applied sciences.
9.2 The polytop approach from C. Lucchesi et al.
In [26] and [16] a polytope of arc sets is assigned to a given graph. The FASP translates to solve a certain linear optimization over this polytope. In the case of planar or more general weakly acyclic graphs the polytope is integral, i.e., it possesses integral corners. Since the optimum will be obtained in at least one of the corners, one can apply the so called ellipsoid method for submodular functions [17] to find the right corner in polynomial time, see also [27] for further details. The approach is certainly remarkable though it contains some weaknesses.
The first problem is that though the algorithm runs in polynomial time the degree of the polynomial depends on a variety of parameters and cannot be estimated by hand a priori. Therefore, there are planar or weakly acyclic graphs, which can be solved efficently from a theoretical view point but actually a computer based implementation of the approach cannot ensure to meet a performance behavior applications require.
Secondly, the class of weakly acyclic graphs is not well classified yet. Thus, if we leave the class of planar graphs it is hard to say whether a given graph is weakly acyclic or not. For instance, consider the directed version of K 3,3 in Fig. 8, which is known to be a weakly acyclic graph. Then it is not hard to see that the meta graph M c contains only one cycle. Thus, though G is not resolvable we can efficently solve the FASP on G by applying the algorithm CUT. In fact all examples of weakly acyclic graphs given in [17] turn out to be efficently solvable by CUT. Since the techniques of this article are not sensitive to topological obstructions as planarity we expect that there are instances of the FASP, which are neither planar nor weakly acyclic and even though can be solved efficently by CUT or CUT & RESOLVE. On the other hand, by arranging cycles along several meta cycles it is quite easy to construct a planar graph G with a number \(m \in \mathcal {O}(|E|)\) of linear independent meta cycles. Thus, so far none of the approaches can state to solve the “larger” instance class efficently.
However, a deeper understanding of the meta graphs and their topology seem to be the most relevant tasks for further research, which might enable us to classify weakly acyclic graphs and yield a completely new perspective to other questions in graph theory.
9.3 Heuristics
In [32] a summarization of heuristic approaches is given and several new ones are introduced. The weak point in all these approaches is that they do not provide an non-empirical control of the variance of the heuristical solution from the optimum. Therefore, it is impossible to guarantee whether a solution is tight to the optimum. In [18] a good lower bound of the feedback length for Eulerian graphs is given and therefore it would be interesting how our bound behaves on this graph class. In general, if ε denotes a feedback set the heuristic GREEDY-CUT or GREEDY-CUT & RESOLVE proposes, then by Proposition 6 we have shown that if ω ≡ 1 then
yielding a controlled variance, as long as μ(G) can be determined or estimated from below, see [31]. We conjecture that (18) improves the known estimates given by [7]. Furthermore, other heuristics can be improved by the results of this article. For instance, the counter example for the Greedy approach introduced in [19] is resolvable and therefore RESOLVE & CUT closes this gap. A comparison of Strategy 1, with the approximation of [13], where an approximation ratio in \(\mathcal {O}\big (\log (\Omega )\log (\log (\Omega ))\big )\) was established, might be usefull as well.
9.4 New Approach to the Subgraph Homeomorphism Problem
The NP-complete directed subgraph homeomorphism problem studied by [14] is to consider two given graphs G = (V G , E G ) and P = (V P , E P ) together with an injective mapping m : V P →V G of vertices of P into the vertices of G. Now the problem is given by deciding whether there exists a injective mapping from arcs of P into pairwise node disjoint elementary paths of G such that an arc f with head h and tail t is mapped on an elementary path from m(t) to m(h). For a given graph G ∗ = (V ∗, E ∗), u, v ∈ V ∗, f = (p, q) ∈ E ∗ with deg(p),deg(q) ≥ 2 we consider a special instance of the directed subgraph homeomorphism problem by setting G = G ∗∖ f, P = (V P , E P ) with V P = {a, b, c, d}, E P = {(a, b),(c, d)} and m(a) = u, m(b) = p, m(c) = q, m(d) = v. Thus, solving the subgraph homeomorphism problem with respect to these special instances is equivalent to decide whether f is an arc of \(G^{*}_{\text {el}}(u,v)\). Hence, in addition to the polynomial time solvable instance classes known from [14], e.g. stars, also problem instances as defined above are polynomial time solvable due to Theorem 2. Potentially, our observations can be generalized in regard of this problem.
References
Alon, N.: Ranking tournaments. SIAM J. Discret. Math. 20(1), 137–142 (2006)
Arora, S., Barak, B.: Computational Complexity: A Modern Approach, 1st edn. Cambridge University Press, New York (2009)
Korte, B., Lovász, L.: Mathematical structures underlying greedy algorithms. Fundamentals of Computation Theory, Lecture Notes in Comp. Sci. pages 205–209 (1981)
Bang-Jensen, J., Gutin, G.Z.: Digraphs: Theory, Algorithms and Applications, 2nd edn. Springer Publishing Company, Incorporated (2008)
Berge, C.: Hypergraphs, volume 45 of North-Holland Mathematical Library. Combinatorics of Finite Sets, North-Holland (1989)
Berge, C.: The Theory of Graphs. Dover books on mathematics, Dover (2001)
Berger, B., Shor, P.W.: Approximation algorithms for the maximum acyclic subgraph problem. In SODA, pp. 236–243. SIAM (1990)
Biggs, N.: Algebraic Graph Theory, 2nd edn. Cambridge University Press, Cambridge (1993)
Chen, J., Liu, Y., Lu, S., O’sullivan, B., Razgon, I.: A fixed-parameter algorithm for the directed feedback vertex set problem. J. ACM 55(5), 21:1–21:19 (2008)
Dinic, E.: Algortithm for solution of a problem of maximum flow in network with power estimates. Dokl. Akad. Nauk SSSR 194(4), 1277–1280 (1970)
Dinitz, Y.: Dinitz’ algorithm: The original version and even’s version Theoretical Computer Science, Essays in Memory of Shimon Even, pp 218–240 (2006)
Dinur, I., Safra, S.: On the hardness of approximating minimum vertex cover. Ann. Math., 162 (2005)
Even, G., (Seffi) Naor, J., Schieber, B., Sudan, M.: Approximating minimum feedback sets and multicuts in directed graphs. Algorithmica 20(2), 151–174 (1998)
Fortune, S., Hopcroft, J., Wyllie, J.: The directed subgraph homeomorphism problem. Theor. Comput. Sci. 10(2), 111–121 (1980)
Gavril, F.: Some NP-complete problems on graphs 11th Conference on Information Sciences and Systems, pp 91–95 (1977)
Grötschel, M., Jünger, M., Reinelt, G.: On the acyclic subgraph polytope. Math. Program. 33(1), 28–42 (1985)
Grötschel, M., Lovasz, L., Schrijver, A.: The ellipsoid method and its consequences in combinatorial optimization. Combinatorica 1(2), 169–197 (1981)
Huang, H., Ma, J., Shapira, A., Sudakov, B., Yuster, R.: Large feedback arc sets, high minimum degree subgraphs, and long cycles in eulerian digraphs. Comb. Probab. Comput. 22, 859–873 (2013)
Ispolatov, I., Maslov, S.: Detection of the dominant direction of information flow and feedback links in densely interconnected regulatory networks. BMC Bioinforma. 9(1), 424 (2008)
Johnson, D.B.: Finding all the elementary circuits of a directed graph. SIAM J. Comput. 4(1), 77–84 (1975)
Kann, V.: On the approximability of the maximum common subgraph problem STACS 92, 9th Annual Symposium on Theoretical Aspects of Computer Science, Cachan, France, February 13-15, 1992, Proceedings, pp 377–388 (1992)
Karp, R.M.: Reducibility among combinatorial problems. In: Miller, R.E., Thatcher, J.W. (eds.) Complexity of Computer Computations, pp 85–103 (1972)
Karpinski, M., Schudy, W.: Faster Algorithms for Feedback Arc Set Tournament, Kemeny Rank Aggregation and Betweenness Tournament 3–14. Springer Berlin Heidelberg, Berlin Heidelberg (2010)
Kunzmann, A., Wunderlich, H.-J.: An analytical approach to the partial scan problem. J. Electron. Test. 1(2), 163–174 (1990)
Leiserson, C.E., Saxe, J.B.: Retiming synchronous circuitry. Algorithmica 6(1-6), 5–35 (1991)
Lucchesi, C., Younger, D.: A minimax theorem for directed graphs. J. Lond. Math. Soc. 2, 17(3), 369–374 (1978)
Martí, R.: The Linear Ordering Problem: Exact and Heuristic Methods in Combinatorial Optimization. Applied Mathematical Sciences. Springer (2011)
Mateti, P., Deo, N.: On algorithms for enumerating all circuits of a graph. SIAM J. Comput. 5(1), 90–99 (1976)
Ramachandran, V.: Finding a minimum feedback arc set in reducible flow graphs. J. Algorithm. 9(3), 299–313 (1988)
Razgon, I.: Computing minimum directed feedback vertex set in o(1.9977 n) Theoretical Computer Science, 10th Italian Conference, ICTCS 2007, Rome, Italy, October 3-5, 2007, Proceedings, pp 70–81 (2007)
Roberts, B., Kroese, D.P.: Estimating the number of s-t paths in a graph. J. Graph Algorithm. Appl. (2007)
Saab, Y.: A fast and effective algorithm for the feedback arc set problem. J. Heuristics 7(3), 235–250 (2001)
Silberschatz, A., Galvin, P.B., Gagne, G.: Operating System Concepts. 8th edn. Wiley Publishing (2008)
Tarjan, R.E.: Enumeration of the elementary circuits of a directed graph. SIAM J. Comput. 2(3), 211–216 (1973)
Acknowledgements
Open Access Funding provided by Max Planck Society. I want to thank Matthias Bernt for many fruitful discussions and his support for formalizing some algorithms. Moreover, a heartful thank you goes to Peter F. Stadler for the nice time at his bioinformatics institute in Leipzig.
Author information
Authors and Affiliations
Corresponding author
Additional information
This work was partially funded by the DFG project “MI439/14-1”.
Appendix A: The Essential Minor
Appendix A: The Essential Minor
This section is used to prove Propositions 2 and 3. To do so we recall that \(\mathrm {O}_{\text {el}}(e) = \left \{c \in \mathrm {O}_{\text {el}}(G) \,\,\big |\,\, e \in \mathcal {E}(c)\right \}\) and state the following Lemmas.
Lemma A1
Let G be a graph, \(\omega : E \longrightarrow \mathbb {N}^{+}\) be an arc weight, \(\varepsilon \in \mathcal {S}(G,\omega )\), and e ∈ E. Then either
If in particular, \(\varepsilon \cap [e]_{\sim _{\Gamma }} \not = \emptyset \) then \(\varepsilon \cap [e]_{\sim _{\Gamma }}\)minimizes ω on \([e]_{\sim _{\Gamma }}\).
Proof
Let \(\varepsilon \in \mathcal {S}(G,\omega )\)and e ∈ ε.Since every arc f ∈ E with with e∼Γ f is connected by a branch point free path with e we have that Oel(e) = Oel(f).Thus, at most one arc in \([e]_{\sim _{\Gamma }}\)will be cutted and this arc has to minimize ω on \([e]_{\sim _{\Gamma }}\). □
Lemma A2
Let G be a positively weighted graph, \(\varepsilon \in \mathcal {S}(G,\omega )\), and e ∈ E. Then either
Proof
Let \(\varepsilon \in \mathcal {S}(G,\omega )\)and e ∈ ε. Assumethere is f ∈ F +(e) ∖ ε thencertainly ε ∩ F −(e) = F −(e)otherwise there would be a two-cycle that is not cutted. Now, let e 1, … , e k ∈ ε ∖ F(e),\(k \in \mathbb {N}\), be suchthat Oel(f) ∩Oel(e i ) ≠ ∅ and Oel({e 1, … , e k })⊇Oel(f). Since thecycles in Oel(e)and Oel(f)differ only in a single arc, i.e., e and f , it suffices to cut the arcs F −(e) ∪{e 1, … , e k }to cut allcycles in Oel(e),i.e.,
Since F −(e) ∪{e 1, … , e k }is therefore a cheaperpossibility than ε cutting Oel(F +(e)), thiscontradicts that \(\varepsilon \in \mathcal {S}(G,\omega )\)andyields the claim. □
Now we state again Proposition 2 and deliver its proof.
Proposition A1
Let G = (V, E, ω)be a positively weighted graph with essential minor (C, ω C ) and let \(\varepsilon \in \mathcal {P}(E)\) and ε C be the image of ε in (C, δ). Then
Inparticular Ω(G, ω) = Ω(C, ω C ).
Proof
Let \(\varepsilon \in \mathcal {P}(E)\)and ε 1 = (ε/Γ)/Φ ⊆ E 1be theimage of ε in G 1 = (G/Γ)/Φ. We recall that ω 1 = (ω/Γ)/Φwas defined in Definition 4 and showthat
Assume that\(\varepsilon \in \mathcal {S}(G,\omega )\)then by Lemmas A1, A2and the construction of (G 1, ω 1)we obtain \(\Omega _{G,\omega }(\varepsilon )= \Omega _{G_{1},\omega _{1}}(\varepsilon _{1})\). Thus,if \(\varepsilon _{1} \not \in \mathcal {S}(G_{1},\omega _{1})\)then we choose\(\alpha \in \mathcal {S}(G_{1},\omega _{1})\)and a FAS ε′⊆ E of G such that the (19), (20)hold and (ε′/Γ)/Φ = α. Consequently\(\Omega _{G,\omega }(\varepsilon ^{\prime }) = \Omega _{G_{1},\omega _{1}}(\alpha )\)and therefore due tothe construction of (G 1, ω 1)weget
whichcontradicts that \(\varepsilon \in \mathcal {S}(G,\omega )\).Thus, \(\varepsilon _{1} \in \mathcal {S}(G_{1},\omega _{1})\).
Vice versa assume that ε ⊆ E is such that \(\varepsilon _{1} \in \mathcal {S}(G_{1},\omega _{1})\). We claim that(19), (20) are satisfied by ε.Assume the opposite then due to Lemmas A2 and A1 we can delete an arc e ∈ ε or replacean arc e ∈ ε by anarc \(f \in [e]_{\sim _{\Gamma }}\)with ω(e) > ω(f). If this is not the casethen we can delete all arcs f ∈ F +(e) ∩ ε whenever e is such that ∅ ≠ F +(e) ∩ ε ≠ F +(e). If ε′denotes this modified set,then ε′ is FAS of G and in allcases
A contradiction! Hence,the (19), (20) hold for ε andtherefore the construction of (G 1, ω 1)yields
Thus,if \(\varepsilon \not \in \mathcal {S}(G,\omega )\)then wechoose \(\beta \in \mathcal {S}(G,\omega )\)andobtain that β 1is a FAS of G 1with \(\Omega _{G,\omega }(\beta )=\Omega _{G_{1},\omega _{1}}(\beta )<\Omega (G_{1},\omega _{1})\), which isimpossible. Hence \(\varepsilon \in \mathcal {S}(G,\omega )\)and the claim follows by iteration of these arguments. □
Proposition A2
Let G = (V, E, ω)be a finite, connected, directed, weighted multigraph then we can construct (C, δ)in time \(\mathcal {O}(|V||E|^{2})\).Furthermore, there is an algorithm with run time \(\mathcal {O}(|E|^{2})\) which constructs a solution ε ∈ S(G, ω) given a solution \(\varepsilon _{C} \in \mathcal {S}(C,\delta )\).
Proof
The graph G/Γcan be computed in a single iteration over V, see Algorithm 9, where κ is explained later. Each non branching node v is removed and its two incident arcs e = (u, v)and f = (v, w)are replaced by an arc (u, w)with weight min{ω(e), ω(f)}.This is possible in time \(\mathcal {O}(|V|)\)if the graph is represented as adjacency list where the targets of the outgoing arcs and theorigins of the ingoing arcs are stored separately. Thus, the iteration over V yields a runtime of\(\mathcal {O}(|V|^{2})\).
To construct G/∼Φwe iterate over E Γyielding G 1 = (G/Γ)/Φ,see Algorithm 10. For each arc e the weight is updated to\({\sum }_{e^{\prime }\in F^{+}(e)}\omega (e^{\prime })\)and the parallel arcs F +(e) ∖{e}are purged from the graph. This can be realized in time\(\mathcal {O}(|E|+|V|)=\mathcal {O}(|E|)\)with a counting sort prepossessing step if the target nodes in the adjacency list arestored such that equal targets are stored consecutively. Because the construction of (C, δ)requires at most |V |iteration steps, i.e., if (G K , ω K ) = (C, δ)then \(K\in \mathcal {O}(|V|)\),the essential minor (C, δ)can be computed in time \(\mathcal {O}(|V|^{3} + |V||E|^{2})\subseteq \mathcal {O}(|V||E|^{2})\).
A simple extension of the algorithms allows to compute the information that is necessary to compute asolution \(\varepsilon \in \mathcal {S}(G,\omega )\)once\(\varepsilon _{C}\in \mathcal {S}(C,\delta )\)is given. Duringthe application of Γand Φwe store the set of arcs of G that are part of a solution if the corresponding arc from G/Γand G/Φ, respectively,are in a FAS. That is, an arc that gave the minimum weight of the two arcs in a non branching path orall parallel arcs, respectively, see Lemma A1 and Lemma A2 . In Algorithms 9,10 this is realized by κ which can be considered as\(\kappa : E_{C}\longrightarrow \mathcal {P}(E)\). The mapping is initializedas κ(e) ←{e}. Storing the arcs aslinked list allows to update κ in linear time, i.e., the asymptotic run time of Algorithms 10,9 remains unchanged. Note that, arg min ∗returns only one arc in the case of equality. Now, replacing each arc e ∈ ε C by κ(e)yields ε,which due to Proposition 2 is a solution for the FASP on (G, ω). Thus, the replacementcan be realized in time \(\mathcal {O}(|E|^{2})\). □
Remark 15
Algorithm 9 may be extended to generate all solutions of the FASP for G given allsolutions for the FASP on C. Therefore the equal weight alternatives in a non branchingpath need to be stored. The generation of the combinations of the alternatives of differentpaths yields all solutions. Certainly, then the run time depends exponentially on the numberof possible combinations of alternatives.
Rights and permissions
Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.
About this article
Cite this article
Hecht, M. Exact Localisations of Feedback Sets. Theory Comput Syst 62, 1048–1084 (2018). https://doi.org/10.1007/s00224-017-9777-6
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00224-017-9777-6