Abstract 1 Introduction 2 Preliminaries 3 An Algorithm for 𝜺-Increase 4 Relaxed Specification of the Optimum 5 Budget Approximation 6 Profit Approximation 7 The 𝜺-Protection Problem References Appendix A Proofs Appendix

Budget and Profit Approximations for Spanning Tree Interdiction

Rafail Ostrovsky ORCID University of California, Los Angeles, CA, USA Yuval Rabani The Rachel and Selim Benin School of Computer Science and Engineering, The Hebrew University of Jerusalem, Israel Yoav Siman Tov The Rachel and Selim Benin School of Computer Science and Engineering, The Hebrew University of Jerusalem, Israel
Abstract

We give polynomial time logarithmic approximation guarantees for the budget minimization, as well as for the profit maximization versions of minimum spanning tree interdiction. In this problem, the goal is to remove some edges of an undirected graph with edge weights and edge costs, so as to increase the weight of a minimum spanning tree. In the budget minimization version, the goal is to minimize the total cost of the removed edges, while achieving a desired increase Δ in the weight of the minimum spanning tree. An alternative objective within the same framework is to maximize the profit of interdiction, namely the increase in the weight of the minimum spanning tree, subject to a budget constraint. There are known polynomial time O(1) approximation guarantees for a similar objective (maximizing the total cost of the tree, rather than the increase). However, the guarantee does not seem to apply to the increase in cost. Moreover, the same techniques do not seem to apply to the budget version.

Our approximation guarantees are motivated by studying the question of minimizing the cost of increasing the minimum spanning tree by any amount. We show that in contrast to the budget and profit problems, this version of interdiction is polynomial time-solvable, and we give an efficient algorithm for solving it. The solution motivates a graph-theoretic relaxation of the NP-hard interdiction problem. The gain in minimum spanning tree weight, as a function of the set of removed edges, is super-modular. Thus, the budget problem is an instance of minimizing a linear function subject to a super-modular covering constraint. We use the graph-theoretic relaxation to design and analyze a batch greedy-based algorithm.

Keywords and phrases:
minimum spanning tree, spanning tree interdiction, combinatorial approximation algorithms, partial cut
Category:
APPROX
Funding:
Rafail Ostrovsky: Distribution Statement “A” (Approved for Public Release, Distribution Unlimited). This material is based upon work supported by the Defense Advanced Research Projects Agency (DARPA) under Contract No. HR001123C0029. Any opinions, findings and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the Defense Advanced Research Projects Agency (DARPA).
Yuval Rabani: Research supported in part by ISF grants 3565-21 and 389-22, and by BSF grant 2023607.
Copyright and License:
[Uncaptioned image] © Rafail Ostrovsky, Yuval Rabani, and Yoav Siman Tov; licensed under Creative Commons License CC-BY 4.0
2012 ACM Subject Classification:
Theory of computation Routing and network design problems
Editors:
Alina Ene and Eshan Chattopadhyay

1 Introduction

Problem statement and results

This paper deals with spanning tree interdiction. The basic setting is an undirected finite graph with edge weights and edge costs. By removing some edges, the weight of a minimum spanning tree can be increased, at a cost equal to the sum of costs of the removed edges. This setting gives rise to various optimization formulations. We consider primarily the following case, which we call the budget problem: we are given a target Δ by which to increase the weight of a minimum spanning tree, and the optimization objective is to minimize the cost of doing so. In the alternative profit problem, we are given a budget B, and the optimization objective is to maximize the damage, namely the increase in the weight of a minimum spanning tree, subject to the cost not exceeding B.

Both problems are NP-hard (see [17]). Our main result is a polynomial time O(logn) approximation algorithm for the budget problem. The approximation algorithm is motivated by considering the following special case: minimize the cost of increasing the weight of a minimum spanning tree, by any amount. We show that in contrast with the general budget problem, this objective can be optimized in polynomial time, and we give an efficient algorithm for computing the optimum. We also give O(logn)-approximation guarantees for the profit problem. Finally, we investigate the question of defending against interdiction by adding edges to the input graph. The set of edges to choose from is given, and each edge is endowed with a cost of constructing it.

Motivation

The primary application of interdiction computations is to examine the sensitivity of combinatorial optimization solutions to partial destruction of the underlying structure. This can be used either to detect vulnerabilities in desirable structures, or to utilize vulnerabilities to impair undesirable structures. The budget problem is perhaps more suitable in the former setting, as its solution indicates the cost of inflicting a (dangerous) level of damage. The profit problem is perhaps more suitable in the latter setting, as it aims to maximize the damage inflicted using limited resources. Such problems arise in a variety of application areas, including military planning, infrastructure protection, law enforcement, epidemiology, etc. (see, for example the references in [24]).

Related work

Previous work on spanning tree interdiction focuses exclusively on a version of the profit problem. It approximates the total weight of the post-interdiction minimum spanning tree, rather than the increase Δ in the weight of the tree as per the above definition of the profit problem. Notice that if the resulting tree has total weight which is C times the weight of the initial tree, then approximating the total weight by any factor at least C means the algorithm could end up doing nothing. In contrast, approximation of the profit problem guarantees actual interdiction even if Δ is very small compared with the weight of the initial tree. Note that in the case of the budget problem there is no qualitative difference between specifying the target total weight and specifying the target increase in weight.

The case of uniform cost was first considered in [8] who gave a poly-time O(logB) approximation algorithm for the (total tree weight version of the) profit problem, where B is the budget (i.e., the number of edges the algorithm is allowed to remove). They showed that the uniform cost problem is NP-hard (previously, it was known that the problem with arbitrary costs is NP-hard; see [17] and the references in [8]). The same problem was also discussed in [4] and the references therein, where algorithms running in time that is exponential in the budget B were considered. Later, constant factor approximation algorithms for the problem, without the cost-uniformity constraint, were found [24, 16]. The latter paper gave a 4-approximation guarantee. The upper bound that was used in both papers cannot be used to get an approximation better than 3 [16]. In [11] it was shown that the problem is fixed parameter-tractable (parametrized by the budget B), but the budget problem is W[1]-hard (parametrized by the weight of the resulting tree).

We briefly review the constant factor approximation guarantees for total minimum spanning tree weight in [24, 16]. Both papers use the following framework. (i) Let w1w2wk be the sorted list of distinct edge weights, and let G1,G2,,Gk denote the subgraphs of the input graph G, where the edges of Gi are all the edges of G of weight at most wi. Then, the objective function at a set F of removed edges can be expressed as a function of the number of connected components of GiF and wiwi1, for all i. This implies, in particular, that the objective function is super-modular. (ii) Maximizing an unconstrained super-modular function is a polynomial time-computable problem. Hence, the Lagrangian relaxation of the linear budget constraint can be computed efficiently for any fixed setting of the Lagrange multiplier. Binary search can be used to find a good multiplier. The usual impediment of this approach shows up here as well. The search resolves the problem only if the solution spends exactly the upper bound on the cost. However, it may end up producing two solutions for (essentially) the same Lagrange multiplier, one below budget and one above budget. Those combine to form a bi-point fractional solution. (iii) How to extract a good integral solution from this bi-point solution is where the papers diverge. The tighter approximation of [16] reduces, approximately, the problem of extracting a good solution to the problem of tree knapsack, then uses a greedy method to approximate the latter problem. The former result of [24] used a more complicated argument, but also a greedy approach. We give an example (in Section 6) that these algorithms do not perform well in terms of approximating the increase Δ in spanning tree weight.

Super-modularity carries over to the objective function we use here, namely the increase in the weight of a minimum spanning tree, as the difference between the functions is a constant (the weight of the spanning tree before interdiction). Thus, as the above discussion hints to, the profit problem is a special case of the problem of maximizing a monotonically non-decreasing and non-negative super-modular function subject to a linear packing constraint (a.k.a. a knapsack constraint). Similarly, the budget problem is a special case of minimizing a non-negative linear function subject to a super-modular covering constraint (i.e., a lower bound on a non-decreasing and non-negative super-modular function).

Similar settings are prevalent in combinatorial optimization. A generic problem of this flavor is set cover, which is a special case of minimizing a non-negative linear function subject to a monotonically non-decreasing and non-negative sub-modular covering constraint. The related maximum coverage problem is a special case of maximizing a monotonically non-decreasing and non-negative sub-modular function, subject to a cardinality constraint (which is, of course, a special case of a knapsack constraint). More broadly, many problems that arise in unsupervised machine learning are of this flavor. For example, k-means and k-median clustering are special cases of minimizing a monotonically non-increasing and non-negative sub-modular function subject to a cardinality constraint. Several such formulations received general treatment; see for example [18, 20, 7, 22, 13, 19, 15, 1] and the references therein. Obviously, an optimization problem has equivalent representations derived by transformations between super-modularity and sub-modularity, maximization and minimization, and/or covering and packing (by defining the function over the complement set, or negating). These transformations reverse monotonicity, and moreover may not preserve approximation bounds.

The particular combination of super-modular maximization subject to a knapsack constraint is known as the super-modular knapsack problem, introduced in [9]. In general, it is hard to approximate within any factor (given query access to a monotonically non-decreasing objective function subject to a cardinality constraint); see the example in [21]. The case of a symmetric (therefore, non-monotone) super-modular function can be solved exactly in polynomial time [10]. We are not aware of any relevant work on the problem of approximating the minimum of a non-negative linear objective, subject to a super-modular covering constraint. The convex hull of the indicator vectors that satisfy a generic super-modular covering constraint is investigated in [2].

Finally, we mention that spanning tree interdiction is one problem in a large repertoire of interdiction problems, including in particular interdiction of shortest path, assignment and matching problems, network flow problems, linear programs, etc. Some representative papers include [14, 23, 3, 5, 6, 12] (this list is far from being comprehensive).

Our techniques

Our results rely on the notion of a partial cut, which is the set of edges that cross a cut with weight below a given threshold weight. An optimal solution minimizing the cost of increasing the weight of a minimum spanning tree by any amount is a single partial cut. We show that such a cut can be computed efficiently by enumerating over a polynomial time computable collection of candidate partial cuts. In order to derive the approximation guarantees for the general budget problem, we apply a batch greedy approach. We repeatedly compute the collection of candidate partial cuts and choose a cut with the best gain per cost ratio. The proof of approximation guarantee relies on an approximate characterization of an optimal solution by a collection of partial cuts. We further show how to speed up the computation by using in all iterations the collection computed for the input graph, rather than recomputing a new collection in each iteration. A similar approach gives the logarithmic approximation for the profit problem, in a manner parallel to the greedy approximation for knapsack (i.e. use either the maximum greedy solution that does not exceed the budget, or the best single partial cut).

Organization

In Section 2 we present some useful definitions and claims, including a self-contained (and different) proof of super-modularity of the gain in spanning tree weight function. In Section 3 we give a polynomial time algorithm for minimizing the cost of increasing the minimum spanning tree weight by any amount. This algorithm motivates our approximation algorithm for the budget problem. In Section 4 we present our graph-theoretic relaxation. In Section 5 we present our main result – an approximation algorithm for the budget problem. In Section 6 we give an approximation algorithm for the profit problem, and discuss the shortcoming of previous work to achieve this objective. Finally, in Section 7 we remark on defense against spanning tree interdiction.

2 Preliminaries

In this section we present some general definitions and useful lemmas.

Let G=(V,E) be a weighted undirected graph such that every edge e has a non-negative weight w:E+{0} and a positive removal cost c:E+. Let MST(G) denote the weight of a minimum spanning tree of G. We’ll use the convention that if G is disconnected, then MST(G)=. Also, for a set of edges FE, we denote c(F)=fFc(f). Given a budget B, the spanning tree Interdiction problem is to find a set of edges FE satisfying c(F)B and maximizing MST(GF), where GF denotes the graph (V,EF). The profit pG(F) of a solution F to the spanning tree interdiction problem is defined to be the increase pG(F)=MST(GF)MST(G) in the weight of the minimum spanning tree. The profit to cost ratio of a set of edges FE is defined to be rG(F)=pG(F)c(F). For the empty set (c(F)=0), we define rG()=0.

Consider a weighted graph G=(V,E) as above. Given a set of nodes S, SV, The complete cut C=CG(S) defined by S is the set of edges

C=CG(S)={eE:|eS|=1}.

We say that the edges in C cross the cut C=CG(S). Given S and W+, the partial cut C=CG(S,W) is the set of edges

C=CG(S,W)={eCG(S):w(e)<W}.

Consider a connected graph G, let T be a spanning tree of G, and let eT. We denote by CT,e the cut in G that satisfies CT,eT=e.
We show the following lemmas that will be useful later (the proofs are in Appendix A).

Lemma 1.

Consider a minimum spanning tree T of a connected graph G. Let FE such that G=GF is connected. Then, there exists a minimum spanning tree T for G that includes all the edges in TF.

Lemma 2.

Let G=(V,E) be a w-weighted graph and let C=CG(S,W)E be a partial cut in G. Let e=(u,v)E be an edge that crosses CG(S). Then,

pG(C)Ww(e).

The following lemma reproves a claim from [24].

Lemma 3 (super-modularity of the profit function).

Let graph G=(V,E) be a w-weighted graph, let BE be set of edges, and let eEB be an edge. If GB is connected, then

pGB(e)pG(e).
Corollary 4.

Let G=(V,E) be a weighted graph, and let A,BE be disjoint sets of edges (AB=). Then

pGB(A)pG(A).

3 An Algorithm for 𝜺-Increase

In this section we design and analyze a polynomial time algorithm for computing the minimum cost interdiction to increase the weight of a minimum spanning tree (by any amount). I.e., given a graph G=(V,E) with edge weights w and edge costs c, we want to find a set of edges FE for which MST(GF)>MST(G), minimizing c(F). This algorithm motivates our approximation algorithm for the budget problem given in Section 5 (and its derivative for the profit problem in Section 6).

The algorithm is defined as follows. Compute a minimum spanning tree T of G. Enumerate over all the edges eT. Given an edge e, contract all the edges of weight <w(e). Remove all edges of length >w(e). Find a minimum (with respect to edge cost) u-v cut in the resulting graph, where e={u,v}. The output of the algorithm Fmin is the minimum cost cut generated, among all choices of eT.

The following two claims imply that the output of the algorithm is valid and optimal (the proofs are in Appendix A).

Claim 5.

c(Fmin)c(F), where F is an optimal solution.

Claim 6.

MST(GFmin)>MST(G).

Let τ(n,m) denote the time to compute a minimum s-t cut in a graph with n nodes and m edges.

Corollary 7.

The algorithm finds an optimal solution in time O(nτ(|V|,|E|)).

Proof.

Recall that Fmin is the solution that the algorithm computes. By Claim 5, c(Fmin)c(F), and by Claim 6 we have MST(GFmin)>MST(G), so Fmin is an optimal solution. The algorithm iterates over the |V|1 edges of T, and for each edge calculates a minimum cut, hence the time complexity.

4 Relaxed Specification of the Optimum

In this section, we define a relaxation to the optimal solution for the budget minimization problem, based on a carefully constructed collection of partial cuts. We will then use this relaxation to analyze our approximation algorithms.

Given a solution F with cost B=c(F) and profit Δ, we construct a sequence of cuts C1,C2,,Ct1 that satisfy the following properties regarding their cost and profit.

Theorem 8.

Let G=(V,E) be an undirected graph, and let n=|V|. Also, let FE be a set of edges of cost B=c(F) and profit Δ. Then, there exists a sequence of partial cuts C1,C2,,Ct1 such that

i=1t1c(Ci)2Blogn,andi=1t1pG(Ci)Δ.

Constructing the sequence of the cuts

Let G=(V,E) be a graph, and let T be a minimum spanning tree in G. Let FE be a set of edges with cost B and profit Δ. Denote GF by G. The solution F removes some edges of G, including t1 edges e1,e2,,et1 of T. Notice that tn1, and if all removal costs are 1, also tB. Removing those edges splits T into t connected components A1,A2,,At. We emphasize that Ai denotes the node set of the i-th connected component. Therefore, this is a partition of the nodes of G. Let T be a minimum spanning tree of G. By Lemma 1, we can choose T which uses the same edges as T inside the connected components A1,A2,,At, and reconnects these components using t1 new edges to replace the removed edges e1,e2,,et1.

In the following construction we consider the connected components graph Gcc=(Vcc,Ecc), where Vcc={A1,A2,,At}, and Ecc includes an edge between Ai and Aj for every pair of vertices uAi and vAj such that {u,v}E (with the same weight as the corresponding edge in G). Notice that Gcc may have many parallel edges, and every edge of Gcc corresponds to an edge of G. To avoid notational clutter, we will use the same notation for an edge of Gcc and for the corresponding edge of G. Also, we will use the same notation for a vertex of Gcc and for the corresponding set of vertices of G (which is the same as the vertices of G), as well as for a set of vertices of Gcc and for the union of the corresponding sets of vertices of G. The interpretation will be clear from the context. The idea behind defining Gcc is to hide the edges that T and T share inside the connected components, so that the cuts we construct can’t delete them. We use Gcc only in order to construct the sequence of cuts (these are cuts in G). Let Tcc be a minimum spanning tree of Gcc. Note that Tcc has t1 edges, which we denote by e1,e2,,et1. These edges correspond exactly to the new edges of a minimum spanning tree T of G that replace the edges e1,e2,,et1TF. For the construction, a strict total order on the weights of the edges of Tcc is needed. We index these edges in non-decreasing order, breaking ties arbitrarily.

Two alternatives

For each edge ei, we first define two alternatives for a partial cut, CiR or CiL, and later we choose only one of them. This choice is repeated for every edge in Tcc to get the desired collection of t1 cuts. Consider ei to be an edge in Tcc of weight w(ei). Delete from Tcc all the edges ej, ji. Consider the connected components of the resulting forest. Notice that the edge ei must connect between two such components Li and Ri (recall that these denote both sets of vertices of Gcc and the corresponding unions of sets of vertices of G). Define the following two partial cuts: CiL=CG(Li,w(ei)) and CiR=CG(Ri,w(ei)). We will denote by Xi the choice we make between Li and Ri, which we refer to as the small side of the cut in step i. Also, we put Ci=CG(Xi,w(ei)), the cut chosen in step i.

Refer to caption
Figure 1: The two options of some edge ei over the MST of the connected components graph.

Choosing 𝑿𝒊

The goal is that any AjVcc will not be contained in “too many” Xi-s. We count for each vertex AjVcc how many times it was chosen to be in the small side. Denote this number as k(Aj), and for a set of vertices SVcc denote k(S)=maxAjS(k(Aj)).

We choose cuts in ascending order of i. If k(Li)k(Ri), we choose Xi=Li, and otherwise we choose Xi=Ri. After choosing a new Xi, we increase by 1 the counter k(Aj) for every vertex AjXi, then proceed to choosing the next cut.

The following lemma shows that the Xis form a laminar set system over the vertices.

Lemma 9.

Let i>j. Then, either XiXj=, or XiXj.

Proof.

Assume that XjXi. Let AXjXi be a common vertex. Consider a vertex AXj. Clearly, there exists a path P connecting A and A in the tree Tcc, such that every edge in this path precedes ej in the non-decreasing order; otherwise, A and A would not be in the same connected component of the tree Tcc after deleting all the edges preceding ej. Because ei comes after ej, it also holds that both A and A are in the same component of the tree Tcc after deleting all the edges with index at least i. This implies that if AXi, then also AXi, and therefore XjXi.

Refer to caption
Figure 2: Example for cuts created according to MST of connected components graph.

We now show that the first claim of Theorem 8 holds.

Lemma 10.

The sum of the costs of the cuts C1,C2,,Ct1 is

i=1t1c(Ci)2Blogt2Blogn.

The proof of Lemma 10 relies on the following claims.

Claim 11.

For every i=1,2,,t, if eCi then eF.

Proof.

Let’s assume for contradiction that there exists an edge eCi, but eF. By construction, w(e)<w(ei). Recall that Ci is the set of edges with exactly one endpoint in a connected component Xi of Tcc after removing edges of weight w(ei). In particular, e={u,v}, where uAiXi and vAjXi. Consider the path in Tcc between Ai and Aj. There must be an edge e of weight w(e)w(ei) along this path, otherwise both u and v would be on the same side of the cut. We assumed that eF, hence eEcc. But if w(e)<w(ei)w(e) and eEcc, then replacing e with e in Tcc creates a spanning tree of Gcc which is lighter than Tcc, a contradiction.

Next we show that no edge gets deleted by more than 2logt cuts.

Claim 12.

For any edge eE, e crosses no more than 2logt cuts C1,C2,,Ct1.

Proof.

Let {A1,A2,At} be the vertex set of the graph Gcc, and consider the final counts k(A1), k(A2), , k(At) for the vertices, respectively, after the construction of the cuts C1,C2,Ct1 as described above. We show that for every 1it, it holds that k(Ai)log(t). This means that every vertex can’t be in the small side of a cut more than log(t) times, and therefore an edge can’t cross more than 2log(t) cuts.

We first show that for every ALiRi it holds that at the end of step i, k(A)log(|Li|+|Ri|) (viewing Li,Ri as sets of vertices in Gcc). The proof is by induction on i.

Base case: Notice that |L1|,|R1|1. Therefore, log(|Li|+|Ri|)=1. As only one step was executed, for every vertex A, we have that k(A)1, as required.

Inductive step: Assume the claim is true for every j<i. Let s=|Ri|+|Li|. It must hold that either |Li|s2 or |Ri|s2. Assume without loss of generality that |Ri|s2. Consider the largest value of k(A) for any ARi at the end of step i1. For this A, let Xj be a small side that contains A, for the largest such j<i. As w(ej)w(ei), it must be that Rj,LjRi. This is true because the edges of weight below w(ei) include the edges of weight at most w(ej), so Rj,Lj are in the same component Ri (as ARiXj). Because RjLj= it holds that |Rj|+|Lj||Ri|s2. By the induction hypothesis, at the end of step j, we have that k(A)log(s2)=log(s)1. Therefore, this is true also at the end of step i1, because k(A) did not change after step j and before step i. If Xi=Ri, then after step i, we get that k(A) increases by 1 to log(s), as claimed. If Xi=Li, then k(A) does not change in step i, so it holds that k(A)log(s)1<log(s).

Finally, consider ALi. By the same argument as for Ri, at the end of step i1 we have that k(A)log(|Li|)log(s1)<log(s). If XiLi, then this holds after step i. Otherwise, by the choice of Xi it must hold that before step i, k(A)k(A)log(s)1. Therefore, after step i, k(A)log(s).

Proof of Lemma 10.

By Claim 11, any edge included in at least one of the partial cuts is included in F.

By Claim 12, no edge crosses more than 2log(t) partial cuts. Because the cuts use only edges from F and use each edge up to 2log(t) times, the sum of their costs is no more than 2Blog(t)2Blogn.

It remains to show the second claim of Theorem 8.

Lemma 13.

For the cuts C1,C2,,Ct1 it holds that i=1t1pG(Ci)Δ

The first step of the proof is to show a perfect matching between the edges that were removed from T (a minimum spanning tree of G) and the new edges that replaced them in T (a minimum spanning tree of GF). We will use this matching to argue that for every matched pair there is a cut with a profit of at least the difference of weights between the edges, and this will be used to lower bound the total profit. To show the existence of a perfect matching, we employ Hall’s condition. We begin with the following claim.

Claim 14.

Let C1,C2,,Ct1 be the cuts induced by T and F. Then, for every cut Ci there exists a vertex viVcc such that viXi, but viXj for all j<i. Moreover, there exists a vertex uVcc such that uXj for all j[t1].

We refer to vi as the typical vertex of Ci, and to u as the typical vertex of the graph; see Figure 2; b6 is the typical vertex of the cut with the weight of w=10, and b2 is the typical vertex of the graph.

Proof of Claim 14.

Consider Xi. Every edge eTcc with both endpoints in Xi has index <i and every edge eTcc that connects between Xi and VccXi must have index i. Clearly, if XjXi=, then any choice of viXi will satisfy viXj. By Lemma 9, all other j<i satisfy XjXi.

It is sufficient to consider all j such that XjXi and j such that XjXjXi. Let j1<j2<<jl be an enumeration of these indices. Notice that |Xj1ej1|=1. Moreover, for r>1, Xjrej1=. This is because ej1 and all the edges with two endpoints in Xj1 are not deleted when constructing Xjr. Therefore, if Xjrej1, then XjrXj1, in contradiction to the definition of j1. However, XiXjr for all r, and ej1 is not deleted when constructing Xi, hence both endpoints of ej1 are contained in Xi. The endpoint not contained in Xj1 can be used as the typical vertex vi of Ci.

The same argument, applied with Vcc replacing Xi, proves the existence of the typical vertex u of G.

Next we prove the following claim.

Claim 15.

For every k{1,2,,t1} and for every A{C1,C2,,Ct1} of cardinality |A|=k, there exist at least k distinct edges e1,ekFT that cross at least one of the cuts in A.

Proof.

The edges in FT by definition form a spanning tree on Vcc equipped with the edges of the original graph G.

Given a set A of k cuts, we say that two vertices Ai,AjVcc are in the same area if and only if they are in the same side of any cut in A. Notice that the partition into areas is an equivalence relation as it is reflexive, symmetric and transitive. We claim that there are at least k+1 different areas, because there are at least k+1 vertices for which every pair of them is not in the same area (separated with at least one cut). Each of the cuts in A has a typical vertex. Any pair of two typical vertices vi,vj, ij cannot be in the same area. If the two cuts are disjoint (XiXj=) then viXi but vjXi. Otherwise, one contains the other (XiXj), but viXi whereas vjXjXi. Moreover, the typical vertex of the graph is not in the same area as any of the other typical vertices (because it not in any Xi). To cap, in total there are at least k+1 areas, and any edge between two different areas must cross at least one cut in A. The spanning tree FT has to connect, in particular, all the vertices in the different areas, so it must have at least k edges that connect vertices in two different areas.

Claim 16.

There exists a permutation π on {1,2,,t1} such that eπ(i)Ci and

i=1t1(w(ei)w(eπ(i)))=Δ.
Proof.

By Claim 15 and Hall’s marriage theorem we conclude that there exists a perfect matching between the t1 cuts and the t1 edges of TF, where an edge and a cut are matched only if the edge crosses the cut. Every cut Ci is constructed using the edge ei and a weight of w(ei). Let eπ(i) be the edge matched to Ci, so eπ(i) crosses Ci.

Let {e1,e2,,et1}=TF, and let e1,e2,,et1 be the edges of T that replace the edges in TF. The profit of F is exactly

Δ=i=1t1w(ei)i=1t1w(ei)=i=1t1(w(ei)w(eπ(i))),

concluding the proof.

Proof of Lemma 13.

This is a corollary of Claim 16. By Lemma 2, pG(Ci)w(ei)w(eπ(i)) for all i{1,2,,t1}.

5 Budget Approximation

In this section we describe the greedy algorithm which chooses cuts with a good ratio of profit to cost. Then we show that if there exists a solution of cost B and profit Δ, then the greedy algorithm outputs a solution with profit of at least Δ and cost of O(Blogn).

Algorithm 1 Budget Approximation Algorithm.
Algorithm 2 The Greedy Algorithm.

We assume for simplicity that Δ>0 (otherwise doing nothing is a trivial solution) and that the cost of a global minimum cut in G (with respect to c) is more than B (otherwise, removing a global minimum cut guarantees profit =Δ). The algorithm proceeds as follows. Start with the lowest possible budget B, the minimum cost of a single edge, and search for B using spiral search, doubling the guess in each iteration. The test for B is to get profit at least Δ, where the cost of the solution is restricted to be less than (1+2logn)B. Clearly, if the test gives the correct answer, we will overshoot B by a factor of less than 2, and therefore we will pay for a solution with a profit of at least Δ a cost of less than (2+4logn)B=O(Blogn). See the pseudo-code of Algorithm 1.

Now, for a guess of B, we repeatedly find a partial cut of cost B with maximum profit-to-cost ratio, and remove it, until we either fail to make progress, or exceed the relaxed budget, or accumulate a profit of at least Δ. In the latter case, we’ve reached our target and can stop searching for B. To find the best partial cut, we enumerate over the edges of the graph and over the possible weights of edges of the graph. For an edge e and a weight W, we consider the minimum cost cut that separates the endpoints of e, taking into account only edges of weight less than W. That is, we consider in the current graph G (after previously chosen cuts have been removed) the cheapest cut CG(S,W) with |Se|=1, and we choose among those cuts for all e,W a cut with the maximum profit-to-cost ratio. See the pseudo-code of Algorithm 2.

Theorem 17.

Suppose that there exists a solution of cost B and profit Δ. If the input budget in Algorithm 2 is at least B, then the output F of the algorithm has pG(F)Δ.

We begin with the analysis of a single iteration of Algorithm 2.

Lemma 18.

Consider an iteration of the do-loop in Algorithm 2 (with input budget B and input target profit Δ). Suppose that G has a solution F of cost c(F)B and profit pG(F)=Δδ. Then, this iteration computes a partial cut C=CG(S,W) that satisfies, for some eC,

Ww(e)c(C)Δδ2Blogn.
Proof.

By Claim 16 and Lemma 10, there are partial cuts C1,C2,,Ct1 in G, edges e1C1, e2C2, , et1Ct1, and edge weights W1,W2,,Wt1 defining the cuts, such that

i=1t1Wiw(ei)Δ,andi=1t1c(Ci)2Blogn.

Hence, there exists a cut Ci with a ratio Wiw(ei)c(Ci)Δδ2Blogn.

Moreover, by Claim 11, CiF and hence c(Ci)B. The algorithm iterates over all the edges and over all the weights. Consider the iteration that uses the weight Wi and the edge ei. Let C be the cut that the algorithm finds in this iteration.

Notice that C is a minimum cost cut separating the endpoints of ei in the subgraph of G consisting of edges of weight <Wi. Therefore, c(C)c(Ci). As ei crosses C and the weight defining C is Wiw(ei), we get that

Wiw(ei)c(C)Wiw(ei)c(Ci)Δδ2Blogn.

The algorithm’s choice of e,W,C maximizes the expression Ww(e)c(C), hence the lemma follows.

Proof of Theorem 17.

Let F be the promised solution with cost c(F)=B and profit pG(F)=Δ. Let BB denote the budget that Algorithm 2 gets as input. Let C1=CG(X1,W1), C2=CGC1(X2,W2), , Cl=CG(C1C2Cl1)(Xl,Wl) be the sequence of partial cuts that the algorithm chooses. Clearly, c(i=1lCi)<(2+2logn)B, on account of the stopping conditions of the do-loop (the last iteration started with total cost below (1+2logn)B). We need to show that pG(i=1lCi)Δ. This is clearly the case if the do-loop terminates because pG(F)Δ, so we need to exclude the other termination conditions. Note that by Lemma 18, if pG(F)<Δ, then r>0, hence we only need to show that b does not reach or exceed (1+2logn)budget before pG(F) reaches or exceeds Δ.

For every i{1,2,,l1}, denote CiF=CiF and CiH=CiF. Also put Si=j=1iCj, SiF=j=1iCjF, and SiH=j=1iCjH. Let hi be a minimum weight edge in CiH and ei be a minimum weight edge in Ci. Put pi=Wiw(hi). Consider Gi=GSi1, namely the graph just before the algorithm chooses Ci. Notice that the criterion for choosing Ci involves the ratio

Wiw(ei)c(Ci)=w(hi)w(ei)+pic(CiF)+c(CiH).

Consider the partial cut Ci={eCi|w(e)<w(hi)}. As no edge of CiH has weight less than w(hi), it must be that CiCiF. Therefore, c(Ci)c(CiF), and hence w(hi)w(ei)c(Ci)w(hi)w(ei)c(CiF). However, it must be that w(hi)w(ei)c(Ci)Wiw(ei)c(Ci), otherwise the algorithm would choose Ci instead of Ci. Therefore, we have that

Wiw(ei)c(Ci)=w(hi)w(ei)+pic(CiF)+c(CiH)w(hi)w(ei)c(CiF).

This implies that

pic(CiH)>w(hi)w(ei)+pic(CiF)+c(CiH)=Wiw(ei)c(Ci)

(as a+bc+dacbda+bc+d for a,b0 and c,d>0).

Denote F=FSl. We now show that pG(Sl)pG(F)+i=1lpi. To estimate pG(Sl), notice that GSl=GF(SlH). Therefore, we can lower bound the profit by summing over i=1,2,,l the profit of removing CiH from GFSi1H. Let Gi=GF(Si1h)=GF(Si1). This graph is Gi minus some edges from F. As hiCiH, it must be that hiF so hi is in Gi. Now, CiH includes the edge hi of weight w(hi). Furthermore, none of the edges of Ci are in Gi+1, so CiH=CGi(Xi,W), for WWi. Therefore, by Lemma 2, pGi(CiH)Wiw(hi). We conclude that

pG(Sl)=pG(F)+i=1lpGi(CiH)pG(F)+i=1lpi. (1)

Put δ=pG(F)=pG(FSl). By Corollary 4, as Gi=GSi1 and FSi1Si1, we have

pGi(FSi1)pG(FSi1)(FSi1). (2)

Write

pG(F)=pG(FSi1)+pG(FSi1)(FSi1). (3)

Combining Equations (2) and (3), we get pGi(FSi1)pG(FSi1)(FSi1)

=pG(F)pG(FSi1)pG(F)pG(FSl)=Δδ

where the last inequality follows from the fact that FSi1FSl.

By Lemma 18, as there exists in Gi a solution FSi1 with profit pGi(FSi1)Δδ and cost c(FSi1)BB, it holds that there exists a partial cut C=CGi(S,W) and an edge eC, such that Ww(e)c(C)Δδ2Blogn. In particular, Ci must satisfy this inequality, as it maximizes the left-hand side. Therefore,

pic(CiH)Wiw(ei)c(Ci)Δδ2Blogn.

So, pic(CiH)Δδ2Blogn. Plugging this into Equation (1), we get that

pG(Sl)pG(F)+i=1lpiδ+i=1lc(CiH)Δδ2Blogn=δ+c(SlH)Δδ2Blogn. (4)

Now, we assumed that the do-loop does not terminate because pG(F)Δ, so it must have terminated because b(1+2logn)B. Therefore, c(SlH)=c(Sl)c(F)c(Sl)c(F)B+2BlognB2Blogn, hence the right-hand side of Equation (4) is at least Δ.

Running time

Recall that τ(n,m) denotes the time complexity of computing a minimum s-t cut, where n is the number of nodes of the network and m is the number of edges of the network. Let d=|weights| denote the number of different edge weights (notice that dm). The doubling search for the right budget adds a factor of O(logBcmin). Each iteration of the do-loop in Algorithm 2 iterates over all the edges and the weights, and executes one minimum s-t cut computation, so the time complexity of a do-loop iteration is O(τ(n,m)dm). In each such iteration we remove at least one edge, so there are no more than m iterations of the do-loop. Therefore, the total running time of the algorithm is

O(τ(n,m)dm2logBcmin)

It is possible to reduce the factor of logBcmin to logm by reducing the range of the search for B as follows. With a budget of B, we cannot remove edges of cost >B. Therefore,

b=argmin{b:MST(G{eE:c(e)b})MST(G)+Δ}

is a lower bound on B. On the other hand, by removing all the edges of cost at most b we definitely gain Δ. There are at most m such edges, so mb is an upper bound on B.

It is possible to improve the running time to O(τ(n,m)dmlogm).
using a more clever implementation as follows. Firstly, we calculate the cuts for each weight and edge only in the first iteration. In the following iterations we can use the same set of cuts, ignoring the cuts that were created using the edges that we already removed. We need to show that a version of claim 18 holds for this faster algorithm.

Claim 19.

Consider an iteration of the do-loop of Algorithm 2, assuming that the input budgetB. Let δ=MST(G)MST(G). Consider the cuts computed during the first do-loop iteration (i.e., partial cuts in G), in an iteration of the nested for-loop with eEF and Wweights. Let C be such a cut with the best ratio Ww(e)c(C) (in G). Then,

Ww(e)c(CE)Δδ2Blogn
Proof.

Let F denote an optimal solution with a budget B, yielding an increase Δ in the weight of a minimum spanning tree. Consider the “intermediate” graph G′′=G(FF). Notice that MST(G′′)MST(G)δ, so F′′=FF is a solution in G′′ that costs less than B and gains at least Δδ. The same bounds on cost and gain holds also in G. By Theorem 8, there exist partial cuts C1′′,Ct1′′, in G′′, Ci′′=CG′′(Si,Wi) for all i, such that the following inequalities hold. ic(Ci′′)2Blogn, and pG′′(iCi′′)Δδ. Moreover, by Claim 11, iCi′′F′′, and by Claim 16, there are edges eiCi′′, for all i such that i=1t1(Wiw(ei))Δδ. Consider the cuts Ci=CG(Si,Wi) in G, for all i. The latter inequality clearly holds. It is also true that ic(Ci)2Blogn, because i(CiCi′′)FF′′, c(F)=B, and by Claim 12, every edge is contained in at most 2logn cuts. Therefore, there exists i for which Wiw(ei)c(Ci)Δδ2Blogn. The cut C computed in the first iteration of the do-loop (for G) for the choice ei and Wi has c(C)c(Ci), hence Wiw(ei)c(C)Δδ2Blogn. As eiF, we consider C in the iteration for G. As c(CE)c(C), we have Wiw(ei)c(CE)Δδ2Blogn, as claimed.

The rest of the proof is the same, so the faster algorithm keeps the approximation guarantees. Algorithm 2 uses dm flow calculations in the first iteration of the do-loop. Subsequence iterations do not require additional flow calculations, only enumeration over at most dm cuts computed in the first iteration. Therefore, as τ(n,m)=Ω(m), we get that the running time is O((τ(n,m)dm+dm2)logm)=O(τ(n,m)dmlogm).

6 Profit Approximation

In this section we discuss the profit problem.

6.1 Profit approximation algorithm

It is possible to use our methods to achieve O(logn)-approximation to the profit given a strict budget B, a problem considered previously in [8, 4, 24, 16]. In comparison to previous work, our results approximate the profit (i.e., the increase in minimum spanning tree weight) of interdiction, rather than the total weight of the final minimum spanning tree. Clearly, these results are incomparable to the claims of previous work. We demonstrate in the following subsection that the algorithm in [16] does not provide any approximation guarantee for the increase in weight rather than the total weight.

The algorithm in this case is based on Algorithm 1, with the following changes. Firstly, in each iteration take a cut with the best ratio among the cuts that do not cause the cost to exceed B. Stop when there are no cuts we can take without exceeding the budget. Secondly, take the best solution between this option and taking just one cut in G that has maximum profit subject to the budget constraint. Notice that this algorithm resembles the greedy approach to approximating the knapsack problem.

Theorem 20.

If there exist a solution F with profit Δ and cost B, then Algorithm 3 computes a solution that costs at most B and gives a profit of at least

Δ4(1logn1log2n)=Ω(Δlogn)
Algorithm 3 Profit Approximation Algorithm.
Proof.

We will refer to the loop that computes p0 and C0 as the first phase of the algorithm, and to the other loop at the second phase of the algorithm. Assume that in the second phase the algorithm already chose to remove the edges HV and increased the minimum spanning tree weight by pG(H)=δ. Let G=(V,E)=GH. We show that if c(H)B2, then at least one of the following cases is true.

  1. 1.

    In the next iteration the algorithm enumerates over a cut C with a ratio of at least rG(C)Δδ2Blogn and cost c(C)B2.

  2. 2.

    In the first phase, the algorithm enumerates over a cut C in the original graph G with a profit of pG(C)Δδ4logn and cost c(C)B.

Denote G¯=G(HF) and c(HF)=b. Consider the set of edges FH. Clearly, c(FH)=c(F)c(HF)=Bb. Moreover, pG(F)=Δ, whereas pG(HF)pG(H)=δ, so pG¯(FH)Δδ. Using Claim 16 and the first assertion of Theorem 8, there exists a partial cut C¯=CG¯(S,W)FH in G¯ and an edge eC¯, such that c(C¯)Bb and

Ww(e)c(C¯)Δδ2(Bb)logn.

Now, consider the same partition in G, i.e., the partial cut C=CG(S,W). As G=G¯(HF), we have that c(C)c(C¯)Bb. Moreover, as eFH, also eE. Hence, by Lemma 2, pG(C)Ww(e). Therefore,

rG(C)=pG(C)c(C)Ww(e)c(C)Ww(e)c(C¯)Δδ2(Bb)logn,

where the first inequality uses Lemma 2.

If c(C)B2 then Case 1 holds. Otherwise, c(C)>B2 and

Ww(e)=c(C)Ww(e)c(C)>B2Δδ2(Bb)lognΔδ4logn.

Therefore, using Lemma 2 again, pG(C)Ww(e)Δδ4logn. Moreover, c(C)c(C¯)+c(HF)B, so Case 2 holds.

Consider the second phase of the algorithm, and the first iteration that begins with Case 1 not holding. If the current profit δΔlogn, we are done. Otherwise, if the current total cost b>B2, then the following holds. All previous iterations started with bB2, hence each added to the solution a partial cut with profit to cost ratio of at least ΔΔ/lognBlogn. So the total profit is at least

B2ΔΔ/lognBlogn=Δ2(1logn1log2n).

The remaining case is that δ<Δlogn, bB2, and Case 1 does not hold. But then Case 2 must hold. Hence, p0Δ4(1logn1log2n), thus completing the proof.

Notice that in the uniform removal costs case it holds that tB, and therefore the same proof shows a profit of Ω(ΔlogB).

Running time

The analysis is very similar to that of the budget approximation algorithm. Each of at most m do-loop iterations iterates over edges and weights O(dm) times, where d denotes the number of different edge weights. Each internal iteration computes a minimum s-t cut, in time τ(n,m). Thus, the total running time is O(τ(n,m)dm2). With the same modification of calculating the cuts only in the first iteration, it is possible to achieve the same asymptotic approximation guarantees while improving the time complexity to O(τ(n,m)dm).

6.2 Bad example for previous algorithms

When the optimal increase is small relative to the weight of the initial minimum spanning tree, our approximation guarantees are stronger than the constant factor approximations of the final tree weight. In order to demonstrate that this actually happens with previous algorithms, we analyze an instance that is motivated by the NP-hardness reduction for spanning tree interdiction in [8]. The constant approximation convex optimization-based algorithms, such as [24, 16], fail to give any non-trivial solution for this example.

Let GH=(VH,EH) be an instance of the maximum components problem defined in [8] for that maximum number of connected components that can be created by removing B edges from GH is b. Construct a graph G=(V,E) by adding to GH four new vertices, as follows. Set V=VH{t1,t2,t3,t4}, E=EH{(u,v1)|uVH}ET, where ET are the edges between the new vertices as explained later. Assign weights w=0 and removal costs r=1 to all edges in EH, and w=1,r= (where is some constant above B+1) to the edges between GH and v1. The edges in ET are as follows: (v1,v2) with w=0,r=, (v1,v3) with w=W,r=, (v2,v3) with w=0,r=B+1, (v1,v4) with w=W+12,r=, and (v2,v4) with w=W,r=12.

The initial minimum spanning tree of G has weight of W+1. We consider as instance of the profit maximization problem on G with a budget of B+12. An optimal solution for G with this budget has spanning tree weight of W+b+12, thus the profit is Δ=b12. It is obtained by removing (v2,v4) in addition to the B edges of the optimal maximum components solution in GH. Notice that by spending a cost of B+1 (which exceeds the budget), it is possible to remove (v2,v3), and obtain a spanning tree with weight of 2W+1.

To demonstrate our claim, we analyze the performance of the algorithm in [16] on this example. The conclusion holds also for other similar methods, such as the one in [24]. We choose a sufficiently large value W>B+1. With budget B+12, the algorithm finds two integer solutions R1,R2 as follows: R1 is the “empty” solution (w=0,MST=W+1), and R2 is the over-budget solution (w=B+1,MST=2W+1) obtained by removing (v2,v3). Notice that the “bang-per-buck” of R2 is WB+1>1. For any other solution R so that (v2,v3)R, it is guaranteed that bang-per-buck is not greater than 1 as the profit from removing any other edge cannot exceed its cost (either for (v2,v4) or any edges set in GH). As there is no other solution above the connecting line between R1,R2 (and no other more expensive relevant solution), these solutions are two optimal solutions of the Lagrangian relaxation, for the Lagrange multiplier λ=WB+1.

Refer to caption
Figure 3: Bad Example for Previous Algorithms.

The algorithm chooses the best among the three options:

  1. 1.

    Return a spanning tree with weight of at least wk=W+12 (the smallest weight so that the graph without heavier edges is still connected under any removal of edges within the budget B+12). In our example this solution is obtained by removing (v2,v4) so the MST weight is W+32.

  2. 2.

    Return the empty solution R1 (yielding the original minimum spanning tree of weight W+1).

  3. 3.

    Return R, the trimmed version of R2. The solution R is created using a reduction to tree knapsack. It holds that RR2, and the cost of R is no more than B+12. As R2={(v2,v3)}, the only subset that does not exceed the profit is R=, which again produces the trivial empty solution.

Therefore, in our example the algorithm of [16] chooses the first option, obtaining a solution with spanning tree weight of W+32. As the optimal solution is W+b+12 (and W>B+1b), the algorithm indeed achieves the promised constant factor guarantee against the total cost of the tree. However, the algorithm achieves a profit of only 12. The optimal profit is b12, which can be arbitrarily large compared to 12, depending on maximum components solution in GH.

7 The 𝜺-Protection Problem

The analysis in Section 3 implies a good defense against ε-increase. Before presenting the algorithm, we first formalize the problem. The input is a graph G=(V,E), another set of edges E over V, edge weights w:EE+, edge construction costs b:E+, and edge removal costs c:EE+. For a graph G, let F(G) denote an optimal solution to the ε-increase problem discussed above. Our goal in the ε-protection problem is to compute a set of edges SE to add to G so that c(F(GS))>c(F(G)), minimizing the building cost b(S). We assume that adding any edge eE to G does not reduce the weight of a minimum spanning tree. Also, we allow parallel edges (so, for instance, pairs of nodes may be connected by an edge in E and also by an edge in E).

Based on the algorithm for ε-increase here is a simple approximation algorithm for this problem. The first step is to list all the partial cuts that the ε-increase algorithm considers, which have optimal cost. Notice that every cut that the algorithm computes is derived from a global minimum cut of a subgraph of G. In that subgraph, there are at most (|V|2) global minimum cuts, and those cuts can be enumerated efficiently. The number of subgraphs to consider is n1. Thus, the number of listed cuts is less than n3. We want to add at least one edge from E to every listed partial cut. It is possible to approximate an optimal solution within a factor of O(logn) using the greedy approximation for weighted SET COVER. Simply, associate with each edge in E the set of partial cuts it increases their cost, and then approximate the minimum b-weight set of edges that covers all listed cuts.

References

  • [1] G. Amanatidis, F. Fusco, P. Lazos, S. Leonardi, A. Marchetti-Spaccamela, and R. Reiffenhäuser. Submodular maximization subject to a knapsack constraint: Combinatorial algorithms with near-optimal adaptive complexity. In Proc. of the 38th Int’l Conf. on Machine Learning, volume 139 of Proceedings of Machine Learning Research, pages 231–242. PMLR, 18–24 July 2021. URL: http://proceedings.mlr.press/v139/amanatidis21a.html.
  • [2] A. Atamtürk and A. Bhardwaj. Supermodular covering knapsack polytope. Discrete Optimization, 18:74–86, 2015. doi:10.1016/J.DISOPT.2015.07.003.
  • [3] G. Baier, T. Erlebach, A. Hall, E. Köhler, P. Kolman, O. Pangrác, H. Schilling, and M. Skutella. Length-bounded cuts and flows. ACM Trans. Algorithms, 7(1), 2010. doi:10.1145/1868237.1868241.
  • [4] C. Bazgan, S. Toubaline, and D. Vanderpooten. Efficient algorithms for finding the k most vital edges for the minimum spanning tree problem. In Proc. of the 5th Ann. Int’l Conf. on Combinatorial Optimization and Applications, pages 126–140, 2011.
  • [5] C. Bazgan, S. Toubaline, and D. Vanderpooten. Critical edges for the assignment problem: Complexity and exact resolution. Oper. Res. Lett., 41(6):685–689, 2013. doi:10.1016/J.ORL.2013.10.001.
  • [6] M. Dinitz and A. Gupta. Packing interdiction and partial covering problems. In Proc. of the 16th Int’l Conf. on Integer Programming and Combinatorial Optimization, volume 7801 of Lecture Notes in Computer Science, pages 157–168. Springer, 2013. doi:10.1007/978-3-642-36694-9_14.
  • [7] M. Feldman, J. Naor, and R. Schwartz. A unified continuous greedy algorithm for submodular maximization. In Proc. of the 52nd Ann. IEEE Symp. on Foundations of Computer Science, pages 570–579, 2011.
  • [8] G. N. Frederickson and R. Solis-Oba. Increasing the weight of minimum spanning trees. In Proc. of the 7th Ann. ACM-SIAM Symp. on Discrete Algorithms, pages 539–546, 1996.
  • [9] G. Gallo and B. Simeone. On the supermodular knapsack problem. Math. Program., 45(1–3):295–309, 1989. doi:10.1007/BF01589108.
  • [10] M. X. Goemans and J. A. Soto. Algorithms for symmetric submodular function minimization under hereditary constraints and generalizations. SIAM J. Discret. Math., 27(2):1123–1145, 2013. doi:10.1137/120891502.
  • [11] J. Guo and Y. R. Shrestha. Parameterized complexity of edge interdiction problems. In Proc. of the 20th Int’l Conf. on Computing and Combinatorics, volume 8591 of Lecture Notes in Computer Science, pages 166–178. Springer, 2014. doi:10.1007/978-3-319-08783-2_15.
  • [12] S. Haney, B. Maggs, B. Maiti, D. Panigrahi, R. Rajaraman, and R. Sundaram. Symmetric interdiction for matching problems. In In Proc. of the 20th Int’l Workshop on Approximation Algorithms for Combinatorial Optimization Problems, volume 81 of Leibniz International Proceedings in Informatics (LIPIcs), pages 9:1–9:19. Schloss Dagstuhl – Leibniz-Zentrum für Informatik, 2017. doi:10.4230/LIPICS.APPROX-RANDOM.2017.9.
  • [13] R. Iyer and J. Bilmes. Submodular optimization with submodular cover and submodular knapsack constraints. In Proc. of the 26th Int’l Conf. on Neural Information Processing Systems, pages 2436–2444, 2013.
  • [14] L. Khachiyan, E. Boros, K. Borys, K. M. Elbassioni, V. Gurvich, G. Rudolf, and J. Zhao. On short paths interdiction problems: Total and node-wise limited interdiction. Theory Comput. Syst., 43(2):204–233, 2008. doi:10.1007/S00224-007-9025-6.
  • [15] E. Liberty and M. Sviridenko. Greedy minimization of weakly supermodular set functions. In Approximation, Randomization, and Combinatorial Optimization. Algorithms and Techniques (APPROX/RANDOM 2017), volume 81 of Leibniz International Proceedings in Informatics (LIPIcs), pages 19:1–19:11, 2017. doi:10.4230/LIPICS.APPROX-RANDOM.2017.19.
  • [16] A. Linhares and C. Swamy. Improved algorithms for MST and metric-TSP interdiction. In Proc. of the 44th Int’l Colloq. on Automata, Languages, and Programming, volume 80 of LIPIcs, pages 32:1–32:14. Schloss Dagstuhl – Leibniz-Zentrum für Informatik, 2017. doi:10.4230/LIPICS.ICALP.2017.32.
  • [17] K. Liri and M. Chern. The most vital edges in the minimum spanning tree problem. Inform. Proc. Lett., 45:25–31, 1993. doi:10.1016/0020-0190(93)90247-7.
  • [18] M. Sviridenko. A note on maximizing a submodular set function subject to a knapsack constraint. Oper. Res. Lett., 32(1):41–43, 2004. doi:10.1016/S0167-6377(03)00062-2.
  • [19] M. Sviridenko, J. Vondrák, and J. Ward. Optimal approximation for submodular and supermodular optimization with bounded curvature. In Proc. of the 26th Ann. ACM-SIAM Symp. on Discrete Algorithms, pages 1134–1148, 2015.
  • [20] Z. Svitkina and L. Fleischer. Submodular approximation: Sampling-based algorithms and lower bounds. In Proc. of the 49th Ann. IEEE Symp. on Foundations of Computer Science, pages 697–706, 2008.
  • [21] usul (https://cstheory.stackexchange.com/users/8243/usul). Maximizing a monotone supermodular function s.t. cardinality. Theoretical Computer Science Stack Exchange. URL: https://cstheory.stackexchange.com/q/33967 (version: 2016-03-03).
  • [22] J. Vondrák, C. Chekuri, and R. Zenklusen. Submodular function maximization via the multilinear relaxation and contention resolution schemes. In Proc. of the 43rd Ann. ACM Symp. on Theory of Computing, pages 783–792, 2011.
  • [23] R. Zenklusen. Matching interdiction. Discret. Appl. Math., 158:1676–1690, 2008.
  • [24] R. Zenklusen. An O(1)-approximation for minimum spanning tree interdiction. In Proc. of the 56th Ann. IEEE Symp. on Foundations of Computer Science, pages 709–728, 2015.

Appendix A Proofs Appendix

Proof of Lemma 1.

In this proof, we will use the so-called blue rule, which states the following: suppose you have a graph G and some of the edges of a minimum spanning tree are colored blue. If you take any complete cut C of G that contains no blue edge, and any edge eC of minimum weight, then there exists a minimum spanning tree of G that contains all the blue edges and e. Consider the edges eTF in arbitrary order. The complete cuts Ce=CT,e are disjoint. Also, such an edge e has minimum weight in Ce, and therefore also minimum weight in CeF. Thus, we can use the blue rule repeatedly in G to color all the edges in TF blue.

Proof of Lemma 2.

If Ww(e) then the claim is trivial, as the profit of a cut is non-negative. Thus, we may assume that W>w(e). Moreover, the worst case is when e has minimum weight in CG(S), because if the claim holds for a minimum weight edge then it holds also for all edges. Clearly, if e=(u,v) is a minimum weight edge in CG(S), then there exists a minimum spanning tree T of G that contains e (apply the blue rule to CG(S) and e). Let T be a minimum spanning tree of G satisfying eT, and let T be a minimum spanning tree of GC. As eCG(S) and W>w(e), it holds that eT. By adding e to the tree T, we create a cycle P. As eP crosses C(S), there must be another edge eP that crosses CG(S). Clearly, eT because the only edge in PT is e. It holds that w(e)W, because otherwise eC and therefore not in T. Assume for contradiction that c(T)<c(T)+Ww(e). Replacing e with e we create a new spanning tree T′′ of G of weight c(T′′)c(T)w(e)+w(e)c(T)W+w(e)<c(T), a contradiction to the fact that T is a minimum spanning tree of G. Thus, it holds that c(T)c(T)+Ww(e), and therefore pG(C)Ww(e).

Proof of Lemma 3.

If GB{e} is not connected, then as GB is connected by assumption, we have pGB(e)=pG(e), so the lemma holds. Thus, we may assume that GB{e} (and therefore also G{e}) is connected. Let e={u,v}. We set W to be the maximum over all u-v cuts in G{e} of the minimum weight edge crossing the cut. More formally,

W=max{min{w(e):eCG{e}(S)}:SV|{u,v}S|=1}.

We show that if Ww(e), then pG(e)=Ww(e). By Lemma 2 we have pG(e)Ww(e), so it suffices to prove the reverse inequality. Let T be an arbitrary minimum spanning tree of G. If eT, then every edge e on the path in T connecting u and v must have w(e)w(e), hence Ww(e) and the claim holds vacuously if W<w(e) and as pG(e)=0 if W=w(e). Otherwise, if eT, then by Lemma 1, there exists a minimum spanning tree T of G{e} so that T=T{e}{e} for an edge eE. In particular, eCT,e is the minimum weight edge in this cut, and the partial cut {e′′CT,e:w(e′′)<w(e)} is a candidate cut. Therefore Ww(e) and pG(e)=w(e)w(e)Ww(e). Now, if pG(e)=0 then the assertion of the lemma is trivial. Otherwise, if pG(e)>0, then e must be contained in every minimum spanning tree of G. By the above characterization of pG(e), we have that pG(e)=Ww(e), where W is a minimum weight of an edge in some cut CG{e}(S). As C=CGB{e}(S)CG{e}(S), we have that W=min{w(e):eC}W. Using the same characterization of pGB(e), we get pGB(e)Ww(e)Ww(e)=pG(e).

Proof of Corollary 4.

This is a simple application of Lemma 3, removing the edges of A={e1,ek} one by one. Denote A0=, A1={e1}, , Ai={e1,e2,,ei}, , Ak={e1,e2,,ek}. By Lemma 3, for every i=1,2,,k, it holds that pGBAi1(ei)pGAi1(ei). Therefore, pGB(A)=i=1kpGBAi1(ei)i=1kpGAi1(ei)=pG(A), which completes the proof.

Proof of Claim 5.

We show that the optimal solution F is achieved at a partial cut considered by the algorithm, and therefore the claim follows. If F disconnects G, then it is a global MIN CUT with respect to the edge costs c. Moreover, all the edges in this cut have the same weight, otherwise removing just the lightest edges would increase the weight of the minimum spanning tree, at lower cost. Therefore, if the algorithm deals with one of the edges eF, one of the feasible cuts it minimizes over is F. Because T is a spanning tree it must have at least one edge in any complete cut in the graph, and specifically in F. In fact, in this case the algorithm will output either F or another global MIN CUT of the same cost. If F does not disconnect G we argue as follows. Let T be a minimum spanning tree of GF. Recall that for every eTT there exists e(TT)CT,e such that Te+e is a spanning tree. Let’s consider the edges eTT in arbitrary order, and let’s choose e=π(e) that minimizes w(e) among all edges in (TT)CT,e. Let e1 denote the first edge considered in TT. As T is a minimum spanning tree, w(π(e1))w(e1). Denote T0=T and T1=Te1+π(e1). If w(π(e1))=w(e1), we can repeat this argument with T1 and T to get T2, and so forth. This process must reach an iteration i|TT| at which w(π(ei))>w(ei), otherwise w(T)=w(T), in contradiction to the definition of F. Now, consider the cut CTi1,ei in G. Notice that by construction, Ti1 is also a minimum spanning tree of G, because all exchanges prior to step i did not increase the weight of the tree. Thus, w(ei) is the minimum length of an edge in this cut. Also, π(ei) is an edge in this cut. By our choice of π(ei), none of the edges in the set F={eCTi1,ei:w(e)<w(π(ei))} are in T. If there exists eFF, then the cycle closed by adding e to T must contain at least one other edge e′′TCTi1,ei. However, all such edges have w(e′′)>w(e), in contradiction to the assumption that T is a minimum spanning tree of GF. Thus, FF.

Now, consider FF, putting F={eCTi1,ei|w(e)=w(ei)}. Let T′′ be a minimum spanning tree of the graph GF. Clearly, w(T′′)>w(T) and c(F)c(F). Hence, F is an optimal solution which contains all the minimum-weight edges in the cut CTi1,ei. Let’s assume in contradiction that the minimum spanning tree T that the algorithm chooses and iterates over its edges maintains TF=. Then there exists an edge eT, with w(e)>w(ei) that crosses the cut, and we can replace it and create lighter spanning tree as w(Te+ei)<w(T). This contradict T being a minimum spanning tree. We conclude that there is an edge eTF. Therefore, F is one of the cuts that the algorithm optimizes over when considering e. The algorithm may choose a different cut for e, but the chosen cut will not have cost greater than c(F).

Proof of Claim 6.

In this proof, we will use repeatedly the blue rule; see the proof of Lemma 1 for details. Consider the best e and the corresponding cut C that determines the output of the algorithm. There exists a minimum spanning tree T of G that contains e, because we can apply the blue rule to C and e. Let S be the forest that remains of T after removing all the edges of length w(e) in C. Clearly, S has at least two connected components, at least one on each side of the cut CT,e (be aware that this cut may differ from C). If the new graph is disconnected, then clearly the claim holds. Otherwise, S can be extended to a minimum spanning tree T of the new graph, as we can use the blue rule to color blue each edge fS, using the cut CT,f that does not contain any other edge of T (Clearly f has minimum length in this cut prior to the removal of edges, and therefore also after the removal of edges).

Let’s assume for contradiction that w(T)=w(T). Let P be the cycle created by adding e to T. As e crosses C, there must be another edge eP that crosses C. We must have that w(e)>w(e), as we eliminated from C all the edges of length w(e). By the assumption, it must be that eT, otherwise w(T)>w(T) (exchanging e with e reduces the cost of the tree, but T is a minimum spanning tree of G). Consider now CT,e. As e crosses CT,e, there must be another e′′P that crosses CT,e. However, e′′T, because CT,eT={e} by definition. Thus, by our assumption w(e′′)=w(e)<w(e) (for the same reason that, otherwise, exchanging e′′ with e reduces the length of T, but we assumed that w(T)=w(T) and T is a minimum spanning tree of G). This is a contradiction to the assumption that T is a minimum spanning tree, together with the implications that eT and e′′CT,e{e}.