This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Covering problems in edge- and node-weighted graphs

Takuro Fukunaga111National Institute of Informatics, 2-1-2 Hitotsubashi, Chiyoda-ku, Tokyo, Japan. JST, ERATO, Kawarabayashi Large Graph Project, Japan. Email: takuro@nii.ac.jp
Abstract

This paper discusses the graph covering problem in which a set of edges in an edge- and node-weighted graph is chosen to satisfy some covering constraints while minimizing the sum of the weights. In this problem, because of the large integrality gap of a natural linear programming (LP) relaxation, LP rounding algorithms based on the relaxation yield poor performance. Here we propose a stronger LP relaxation for the graph covering problem. The proposed relaxation is applied to designing primal-dual algorithms for two fundamental graph covering problems: the prize-collecting edge dominating set problem and the multicut problem in trees. Our algorithms are an exact polynomial-time algorithm for the former problem, and a 2-approximation algorithm for the latter problem, respectively. These results match the currently known best results for purely edge-weighted graphs.

1 Introduction

1.1 Motivation

Choosing a set of edges in a graph that optimizes some objective function under constraints on the chosen edges constitutes a typical combinatorial optimization problem and has been investigated in many varieties. For example, the spanning tree problem seeks an acyclic edge set that spans all nodes in a graph, the edge cover problem finds an edge set such that each node is incident to at least one edge in the set, and the shortest path problem selects an edge set that connects two specified nodes. All these problems seek to minimize the sum of the weights assigned to edges.

This paper discusses several graph covering problems. Formally, the graph covering problem is defined as follows in this paper. Given a graph G=(V,E)G=(V,E) and family 2E\mathcal{E}\subseteq 2^{E}, find a subset FF of EE that satisfies FCF\cap C\neq\emptyset for each CC\in\mathcal{E}, while optimizing some function depending on FF. As indicated above, the popular approaches assume an edge weight function w:E+w\colon E\rightarrow\mathbb{R}_{+} is given, where +\mathbb{R}_{+} denotes the set of non-negative real numbers, and seeks to minimize eFw(e)\sum_{e\in F}w(e). On the other hand, we aspire to simultaneously minimize edge and node weights. Formally, we let V(F)V(F) denote the set of end nodes of edges in FF. Given a graph G=(V,E)G=(V,E) and weight function w:EV+w\colon E\cup V\rightarrow\mathbb{R}_{+}, we seek a subset FF of EE that minimizes eFw(e)+vV(F)w(v)\sum_{e\in F}w(e)+\sum_{v\in V(F)}w(v) under the constraints on FF. Hereafter, we denote eFw(e)\sum_{e\in F}w(e) and vV(F)w(v)\sum_{v\in V(F)}w(v) by w(F)w(F) and w(V(F))w(V(F)), respectively.

Most previous investigations of the graph covering problem have focused on edge weights. By contrast, node weights have been largely neglected, except in the problems of choosing node sets, such as the vertex cover and dominating set problems. To our knowledge, when node weights have been considered in graph covering problems for choosing edge sets, they have been restricted to the Steiner tree problem or its generalizations, possibly because the inclusion of node weights greatly complicates the problem. For example, the Steiner tree problem in edge-weighted graphs can be approximated within a constant factor (the best currently known approximation factor is 1.39 [5, 15]). Conversely, the Steiner tree problem in node-weighted graphs is known to extend the set cover problem (see [20]), indicating that achieving an approximation factor of o(log|V|)o(\log|V|) is NP-hard. The literature is reviewed in Section 2. As revealed later, the inclusion of node weights generalizes the set cover problem in numerous fundamental problems.

However, from another perspective, node weights can introduce rich structure into the above problems. In fact, node weights provide useful optimization problems. The objective function counts the weight of a node only once, even if the node is shared by multiple edges. Hence, the objective function defined from node weights includes a certain subadditivity, which cannot be captured by edge weights.

The aim of the present paper is to give algorithms for fundamental graph covering problems in edge- and node-weighted graphs. In solving the problems, we adopt a basic linear programming (LP) technique. Many algorithms for combinatorial optimization problems are typically designed using LP relaxations. However, in problems with node-weighted graphs, the integrality gap of natural relaxations may be excessively large. Therefore, we propose tighter LP relaxations that preclude unnecessary integrality gaps. We then discuss upper bounds on the integrality gap of these relaxations in two fundamental graph covering problems: the edge dominating set (EDS) problem and multicut problem in trees. We prove upper bounds by designing primal-dual algorithms for both problems. The approximation factors of our proposed algorithms match the current best approximations in purely edge-weighted graphs.

1.2 Problem definitions

The EDS problem covers edges by choosing adjacent edges in undirected graphs. For any edge ee, let δ(e)\delta(e) denote the set of edges that share end nodes with ee, including ee itself. We say that an edge ee dominates another edge ff if fδ(e)f\in\delta(e), and a set FF of edges dominates an edge ff if FF contains an edge that dominates ff. Given an undirected graph G=(V,E)G=(V,E), a set of edges is called an EDS if it dominates each edge in EE. The EDS problem seeks to minimize the weight of the EDS. In other words, the EDS problem is the graph covering problem with ={δ(e):eE}\mathcal{E}=\{\delta(e)\colon e\in E\}.

In the multicut problem, an instance specifies an undirected graph G=(V,E)G=(V,E) and demand pairs (s1,t1),,(sk,tk)V×V(s_{1},t_{1}),\ldots,(s_{k},t_{k})\in V\times V. A multicut is an edge set CC whose removal from GG disconnects the nodes in each demand pair. This problem seeks a multicut of minimum weight. Let 𝒫i\mathcal{P}_{i} denote the set of paths connecting sis_{i} and tit_{i}. The multicut problem is equivalent to the graph covering problem with =i=1k𝒫i\mathcal{E}=\bigcup_{i=1}^{k}\mathcal{P}_{i}.

Our proposed algorithms for solving these problems assume that the given graph GG is a tree. In fact, our algorithms are applicable to the prize-collecting versions of these problems, which additionally specifies a penalty function π:+\pi\colon\mathcal{E}\rightarrow\mathbb{R}_{+}. In this scenario, an edge set FF is a feasible solution even if FC=F\cap C=\emptyset for some CC\in\mathcal{E}, but imposes a penalty π(C)\pi(C). The objective is to minimize the sum of w(F)w(F), w(V(F))w(V(F)), and the penalty C:FC=π(C)\sum_{C\in\mathcal{E}:F\cap C=\emptyset}\pi(C). The prize-collecting versions of the EDS and multicut problems are referred to as the prize-collecting EDS problem and the prize-collecting multicut problem, respectively.

1.3 Our results

Thus far, the EDS problem has been applied only to edge-weighted graphs. The vertex cover problem can be reduced to the EDS problem while preserving the approximation factors [6]. The vertex cover problem is solvable by a 2-approximation algorithm, which is widely regarded as the best possible approximation. Indeed, assuming the unique game conjecture, Khot and Regev [19] proved that the vertex cover problem cannot be approximated within a factor better than 22. Fujito and Nagamochi [11] showed that a 2-approximation algorithm is admitted by the EDS problem, which matches the approximation hardness known for the vertex cover problem. In the Appendix, we show that the EDS problem in bipartite graphs generalizes the set cover problem if assigned node weights and generalizes the non-metric facility location problem if assigned edge and node weights. This implies that including node weights increases difficulty of the problem even in bipartite graphs.

On the other hand, Kamiyama [18] proved that the prize-collecting EDS problem in an edge-weighted graph admits an exact polynomial-time algorithm if the graph is a tree. As one of our main results, we show that this idea is extendible to problems in edge- and node-weighted trees.

Theorem 1.

The prize-collecting EDS problem admits a polynomial-time exact algorithm for edge- and node-weighted trees.

Theorem 1 will be proven in Section 4. As demonstrated in the Appendix, the prize-collecting EDS problem in general edge- and node-weighted graphs admits an O(log|V|)O(\log|V|)-approximation, which matches the approximation hardness on the set cover problem and the non-metric facility location problem.

The multicut problem is hard even in edge-weighted graphs; the best reported approximation factor is O(logk)O(\log k) [13]. The multicut problem is known to be both NP-hard and MAX SNP-hard [10], and admits no constant factor approximation algorithm under the unique game conjecture [7]. However, Garg, Vazirani, and Yannakakis [14] developed a 2-approximation algorithm for the multicut problem with edge-weighted trees. They also mentioned that, although the graphs are restricted to trees, the structure of the problem is sufficiently rich. They showed that the tree multicut problem includes the set cover problem with tree-representable set systems. They also showed that the vertex cover problem in general graphs is simply reducible to the multicut problem in star graphs, while preserving the approximation factor. This implies that the 2-approximation seems to be tight for the multicut problem in trees. As a second main result, we extended this 2-approximation to edge- and node-weighted trees, as stated in the following theorem.

Theorem 2.

The prize-collecting multicut problem admits a 2-approximation algorithm for edge- and node-weighted trees.

Both algorithms claimed in Theorems 1 and 2 are primal-dual algorithms, that use the LP relaxations we propose. These algorithms fall in the same frameworks as those proposed in [14, 18] for edge-weighted graphs. However, they need several new ideas to achieve the claimed performance because our LP relaxations are much more complicated than those used in [14, 18].

The remainder of this paper is organized as follows. After surveying related work in Section 2, we define our LP relaxation for the prize-collecting graph covering problem in Section 3. Using this relaxation, we prove Theorems 1 and 2 in Sections 4 and 5, respectively. The paper concludes with Section 6. In the Appendix, we show that the prize-collecting EDS problem in edge- and node-weighted graphs generalizes the set cover problem and facility location problem, and admits an O(log|V|)O(\log|V|)-approximation algorithm.

2 Related work

As mentioned in Section 1, the graph covering problem in node-weighted graphs has thus far been applied to the Steiner tree problem and its generalizations. Klein and Ravi [20] proposed an O(log|V|)O(\log|V|)-approximation algorithm for the Steiner tree problem with node weights. Nutov [25, 26] extended this algorithm to the survivable network design problem with higher connectivity requirements. An O(log|V|)O(\log|V|)-approximation algorithm for the prize-collecting Steiner tree problem with node weights was provided by Moss and Rabani [23]; however, as noted by Könemann, Sadeghian, and Sanità [21], the proof of this algorithm contains a technical error. This error was corrected in [21]. Bateni, Hajiaghayi, and Liaghat [1] proposed an O(log|V|)O(\log|V|)-approximation algorithm for the prize-collecting Steiner forest problem and applied it to the budgeted Steiner tree problem. Chekuri, Ene, and Vakilian [8] gave an O(k2log|V|)O(k^{2}\log|V|)-approximation algorithm for the prize-collecting survivable network design problem with edge-connectivity requirements of maximum value kk. Later, they improved their approximation factor to O(klog|V|)O(k\log|V|), and also extended it to node-connectivity requirements (see [30]). Naor, Panigrahi, and Singh [24] established an online algorithm for the Steiner tree problem with node weights which was extended to the Steiner forest problem by Hajiaghayi, Liaghat, and Panigrahi [16]. The survivable network design problem with node weights has also been extended to a problem called the network activation problem [28, 27, 12].

The prize-collecting EDS problem generalizes the {0,1}\{0,1\}-EDS problem, in which given demand edges require being dominated by a solution edge set. The {0,1}\{0,1\}-EDS problem in general edge-weighted graphs admits a 8/38/3-approximation, which was proven by Berger et al. [2]. This 8/38/3-approximation was extended to the prize-collecting EDS problem by Parekh [29]. Berger and Parekh [3] designed an exact algorithm for the {0,1}\{0,1\}-EDS problem in edge-weighted trees, but their result contains an error [4]. Since the prize-collecting EDS problem embodies the {0,1}\{0,1\}-EDS problem, the latter problem could be alternatively solved by an algorithm developed for the prize-collecting EDS problem in edge-weighted trees, proposed by Kamiyama [18].

3 LP relaxations

This section discusses LP relaxations for the prize-collecting graph covering problem in edge and node-weighted graphs.

In a natural integer programming (IP) formulation of the graph covering problem, each edge ee is associated with a variable x(e){0,1}x(e)\in\{0,1\}, and each node vv is associated with a variable x(v){0,1}x(v)\in\{0,1\}. x(e)=1x(e)=1 denotes that ee is selected as part of the solution set, while x(v)=1x(v)=1 indicates the selection of an edge incident to vv. In the prize-collecting version, each demand set CC\in\mathcal{E} is also associated with a variable z(C){0,1}z(C)\in\{0,1\}, where z(C)=1z(C)=1 indicates that the covering constraint corresponding to CC is not satisfied. For FEF\subseteq E, we let δF(v)\delta_{F}(v) denote the set of edges incident to vv in FF. The subscript may be removed when F=EF=E. An IP of the prize-collecting graph covering problem is then formulated as follows.

minimize eEw(e)x(e)+vVw(v)x(v)+Cπ(C)z(C)\displaystyle\sum_{e\in E}w(e)x(e)+\sum_{v\in V}w(v)x(v)+\sum_{C\in\mathcal{E}}\pi(C)z(C)
subject to eCx(e)1z(C)\displaystyle\sum_{e\in C}x(e)\geq 1-z(C) for C,\displaystyle\mbox{for }C\in\mathcal{E},
x(v)x(e)\displaystyle x(v)\geq x(e) for vV,eδ(v),\displaystyle\mbox{for }v\in V,e\in\delta(v),
x(e)0\displaystyle x(e)\geq 0 for eE,\displaystyle\mbox{for }e\in E,
x(v)0\displaystyle x(v)\geq 0 for vV,\displaystyle\mbox{for }v\in V,
z(C)0\displaystyle z(C)\geq 0 for C.\displaystyle\mbox{for }C\in\mathcal{E}.

In the above formulation, the first constraints specify the covering constraints, while the second constraints indicate that if the solution contains an edge ee incident to vv, then x(v)x(v) = 1. In the graph covering problem (without penalties), zz is fixed at 0.

To obtain an LP relaxation, we relax the definitions of xx and zz in the above IP to x+EVx\in\mathbb{R}_{+}^{E\cup V} and z+Cz\in\mathbb{R}_{+}^{C}. However, this relaxation may introduce a large integrality gap into the graph covering problem with node-weighted graphs, as shown in the following example. Suppose that \mathcal{E} comprises a single edge set CC, and each edge in CC is incident to a node vv. Let the weights of all edges and nodes other than vv be 0. In this scenario, the optimal value of the graph covering problem is w(v)w(v). On the other hand, the LP relaxation admits a feasible solution xx such that x(v)=1/|C|x(v)=1/|C| and x(e)=1/|C|x(e)=1/|C| for each edge eCe\in C. The weight of this solution is w(v)/|C|w(v)/|C|, and the integrality gap of the relaxation for this instance is |C||C|.

This phenomenon occurs even in the EDS problem and multicut problem in trees. For instance, consider a star of nn leaves in the EDS problem. The weight of all edges and nodes is 0 except the center node vv, whose weight is 1. In this instance of the EDS problem, the weight of any EDS is 1. On the other hand, LP relaxation admits a feasible solution xx such that x(e)=1/nx(e)=1/n for each edge ee, and x(u)=1/nx(u)=1/n for each node uu. Since the weight of this fractional solution is 1/n1/n, the integrality gap is nn.

Let uvuv denote an edge that joints nodes uu and vv. To determine the integrality gap in the multicut problem, we consider that each edge uvuv in the star is subdivided into two edges usus and svsv. The subdivision imposes a weight of 1 on node ss. All edges and remaining nodes (i.e., the center node and all leaves) have weight 0. All pairs of leaves are demand pairs. A path between the center node and a leaf is called a leg. In this instance, any multicut must choose at least one edge from each of n1n-1 legs. Hence, the minimum multicut weight is n1n-1. On the other hand, if x(e)=1/4x(e)=1/4 for every edge ee and x(v)=1/4x(v^{\prime})=1/4 for every node vv^{\prime}, the weight is n/4n/4 (such a fractional solution is feasible to the relaxation). Hence, the integrality gap of the relaxation is at least 44. By contrast, Garg, Vazirani, Yannakakis [14] proved that the integrality gap of the relaxation is at most 2 when node weights are not considered.

The above poor examples can be excluded if the second constraints in the relaxation are replaced by x(v)eδ(v)x(e)x(v)\geq\sum_{e\in\delta(v)}x(e) for vVv\in V. However, the LP obtained by this modification does not relax the graph covering problem if the optimal solutions contain high-degree nodes. Thus, we introduce a new variable y(C,e)y(C,e) for each pair of CC\in\mathcal{E} and eCe\in C, and replace the second constraints by x(v)eδ(v)y(C,e)x(v)\geq\sum_{e\in\delta(v)}y(C,e), where vVv\in V and CC\in\mathcal{E}. y(C,e)=1y(C,e)=1 indicates that ee is chosen to satisfy the covering constraint of CC, and y(C,e)=0y(C,e)=0 implies the opposite. Roughly speaking, y(C,)y(C,\cdot) represents a minimal fractional solution for covering a single demand set CC. If a single covering constraint is imposed, the degree of each node is at most one in any minimal integral solution. Then the graph covering problem is relaxed by the LP even after modification. Summing up, we formulate our LP relaxation for an instance I=(G,,w,π)I=(G,\mathcal{E},w,\pi) of the prize-collecting graph covering problem as follows.

P(I)=\displaystyle P(I)=
minimize eEw(e)x(e)+vVw(v)x(v)+Cπ(C)z(C)\displaystyle\sum_{e\in E}w(e)x(e)+\sum_{v\in V}w(v)x(v)+\sum_{C\in\mathcal{E}}\pi(C)z(C)
subject to eCy(C,e)1z(C)\displaystyle\sum_{e\in C}y(C,e)\geq 1-z(C) for C,\displaystyle\mbox{for }C\in\mathcal{E},
x(v)eδC(v)y(C,e)\displaystyle x(v)\geq\sum_{e\in\delta_{C}(v)}y(C,e) for vV,C,\displaystyle\mbox{for }v\in V,C\in\mathcal{E},
x(e)y(C,e)\displaystyle x(e)\geq y(C,e) for C,eC,\displaystyle\mbox{for }C\in\mathcal{E},e\in C,
x(e)0\displaystyle x(e)\geq 0 for eE,\displaystyle\mbox{for }e\in E,
x(v)0\displaystyle x(v)\geq 0 for vV,\displaystyle\mbox{for }v\in V,
y(C,e)0\displaystyle y(C,e)\geq 0 for C,eC,\displaystyle\mbox{for }C\in\mathcal{E},e\in C,
z(C)0\displaystyle z(C)\geq 0 for C.\displaystyle\mbox{for }C\in\mathcal{E}.
Theorem 3.

Let II be an instance of the prize-collecting graph covering problem in edge- and node-weighted graphs. P(I)P(I) is not greater than the optimal value of II.

Proof.

Let FF be an optimal solution of II. We define a solution (x,y,z)(x,y,z) of P(I)P(I) from FF. For each CC\in\mathcal{E}, we set z(C)z(C) to 0 if FCF\cap C\neq\emptyset, and 11 otherwise. If FCF\cap C\neq\emptyset, we choose an arbitrary edge eFCe\in F\cap C, and let y(C,e)=1y(C,e)=1. For the remaining edges ee^{\prime}, we assign y(C,e)=0y(C,e^{\prime})=0. In this way, the values of variables in yy are defined for each CC\in\mathcal{E}. x(e)x(e) is set to 1 if eFe\in F, and 0 otherwise. x(v)x(v) is set to 1 if FF contains an edge incident to vv, and 0 otherwise.

For each CC\in\mathcal{E} with z(C)<1z(C)<1, exactly one edge ee satisfies y(C,e)=1y(C,e)=1, and this ee is included in FCF\cap C. If y(C,e)=1y(C,e)=1, then x(e)=1x(e)=1, and each end node vv of ee satisfies x(v)=1x(v)=1. For a pair of vVv\in V and CC\in\mathcal{E}, y(C,e)y(C,e) is one for exactly one edge eδC(v)e\in\delta_{C}(v), and zero for the remaining edges in δC(v)\delta_{C}(v). Thus, (x,y,z)(x,y,z) is feasible. The objective value of (x,y,z)(x,y,z) in P(I)P(I) is given by w(F)+w(V(F))+C:FC=π(C)w(F)+w(V(F))+\sum_{C\in\mathcal{E}:F\cap C=\emptyset}\pi(C), which is the optimal value of II, and the theorem is proven. ∎

In some graph covering problems, \mathcal{E} is not explicitly given, and |||\mathcal{E}| is not bounded by a polynomial on the input size of the problem. In such cases, the above LP may not be solved in polynomial time because it cannot be written compactly. However, in this scenario, we may define a tighter LP than the natural relaxation if we can find 1,,t\mathcal{E}_{1},\ldots,\mathcal{E}_{t}\subseteq\mathcal{E} such that i=1ti=\cup_{i=1}^{t}\mathcal{E}_{i}=\mathcal{E}, tt is bounded by a polynomial of input size, and the degree of each node is small in any minimal edge set covering all demand sets in i\mathcal{E}_{i} for each i{1,,t}i\in\{1,\ldots,t\}. Applying these conditions, the present author obtained a new approximation algorithm for solving a problem generalizing some prize-collecting graph covering problems [12].

4 Prize-collecting EDS problem in trees

In this section, we prove Theorem 1. We regard the input graph GG as a rooted tree, with an arbitrary node rr selected as the root. The depth of a node vv is the number of edges on the path between rr and vv. When vv lies on the path between rr and another node uu, we say that vv is an ancestor of uu and uu is a descendant of vv. If the depth of node vv is the maximum among all ancestors of uu, then vv is defined as the parent of uu. If vv is the parent of uu, then uu is a child of vv. The upper and lower end nodes of an edge ee are denoted by ueu_{e} and lel_{e}, respectively. We say that an edge ee is an ancestor of a node vv and vv is a descendant of ee when le=vl_{e}=v or lel_{e} is an ancestor of vv. Similarly, an edge ee is a descendant of a node vv and vv is an ancestor of ee if v=uev=u_{e} or vv is an ancestor of ueu_{e}. An edge ee is defined as an ancestor of another edge ff if ee is an ancestor of ufu_{f}.

Recall that ={δ(e):eE}\mathcal{E}=\{\delta(e)\colon e\in E\} in the EDS problem. Let I=(G,w,π)I=(G,w,\pi) be an instance of the prize-collecting EDS problem. We denote eδ(v)δ(e)\bigcup_{e\in\delta(v)}\delta(e) by δ(v)\delta^{\prime}(v) for each vVv\in V. Then the dual of P(I)P(I) is formulated as follows.

D(I)=\displaystyle{D}(I)=\hskip-20.00003pt
maximize eEξ(e)\displaystyle\sum_{e\in E}\xi(e)
subject to eδ(e)ν(e,e)w(e)\displaystyle\sum_{e\in\delta(e^{\prime})}\nu(e^{\prime},e)\leq w(e^{\prime}) for eE,\displaystyle\mbox{for }e^{\prime}\in E, (1)
eδ(v)μ(v,e)w(v)\displaystyle\sum_{e\in\delta^{\prime}(v)}\mu(v,e)\leq w(v) for vV,\displaystyle\mbox{for }v\in V, (2)
ξ(e)μ(u,e)+μ(v,e)+ν(e,e)\displaystyle\xi(e)\leq\mu(u,e)+\mu(v,e)+\nu(e^{\prime},e) for eE,e=uvδ(e),\displaystyle\mbox{for }e\in E,e^{\prime}=uv\in\delta(e), (3)
ξ(e)π(e)\displaystyle\xi(e)\leq\pi(e) for eE,\displaystyle\mbox{for }e\in E, (4)
ξ(e)0\displaystyle\xi(e)\geq 0 for eE,\displaystyle\mbox{for }e\in E,
ν(e,e)0\displaystyle\nu(e^{\prime},e)\geq 0 for eE,eδ(e),\displaystyle\mbox{for }e^{\prime}\in E,e\in\delta(e^{\prime}),
μ(v,e)0\displaystyle\mu(v,e)\geq 0 for vV,eδ(v).\displaystyle\mbox{for }v\in V,e\in\delta^{\prime}(v).

For an edge set FEF\subseteq E, let F~\tilde{F} denote {eE:δF(e)=}\{e\in E\colon\delta_{F}(e)=\emptyset\}, and let π(F~)\pi(\tilde{F}) denote eF~π(e)\sum_{e\in\tilde{F}}\pi(e). For the instance II, our algorithm yields a solution FEF\subseteq E and a feasible solution (ξ,ν,μ)(\xi,\nu,\mu) to D(I)D(I), both satisfying

w(F)+w(V(F))+π(F~)eEξ(e).w(F)+w(V(F))+\pi(\tilde{F})\leq\sum_{e\in E}\xi(e). (5)

Since the right-hand side of (5) is at most P(I)P(I), FF is an optimal solution of II. We note that the dual solution (ξ,ν,μ)(\xi,\nu,\mu) is required only for proving the optimality of the solution and need not be computed.

The algorithm operates by induction on the number of nodes of depth exceeding one. In the base case, all nodes are of depth one, indicating that GG is a star centered at rr. The alternative case is divided into two sub-cases: Case A, in which a leaf edge ee of maximum depth satisfies π(e)>0\pi(e)>0; and Case B, which contains no such leaf edge.

Base case

In the base case, GG is a star centered at rr. Note that all edges in this graph are adjacent. Let α1=minrvE{w(rv)+w(r)+w(v)}\alpha_{1}=\min_{rv\in E}\{w(rv)+w(r)+w(v)\} and α2=eEπ(e)\alpha_{2}=\sum_{e\in E}\pi(e). An edge rvrv attaining α1=w(rv)+w(r)+w(v)\alpha_{1}=w(rv)+w(r)+w(v) is denoted by e=rve^{*}=rv^{*}.

If α1α2\alpha_{1}\geq\alpha_{2}, our algorithm sets FF as \emptyset, and defines ξ(e)\xi(e) as π(e)\pi(e) for each eEe\in E. Otherwise (i.e., α1<α2\alpha_{1}<\alpha_{2}), it specifies FF as {e}\{e^{*}\}, and sets ξ\xi so that eEξ(e)=α1\sum_{e\in E}\xi(e)=\alpha_{1}, and ξ(e)π(e)\xi(e)\leq\pi(e) for each eEe\in E, which is possible because eEπ(e)=α2>α1\sum_{e\in E}\pi(e)=\alpha_{2}>\alpha_{1}. Note that FF and ξ\xi defined in this way satisfy (5).

To completely define the dual solution, we must define variables ν\nu and μ\mu. Let rvErv\in E. To satisfy (3) for eEe\in E and rvrv, the sum of μ(r,e)\mu(r,e), μ(v,e)\mu(v,e), and ν(rv,e)\nu(rv,e) cannot be smaller than ξ(e)\xi(e) for each eEe\in E. Note that in (1), ν(rv,e)\nu(rv,e) is bounded from above for rvrv, while in (2) for vv, μ(r,e)\mu(r,e) and μ(v,e)\mu(v,e) are bounded for rr and vv, respectively. As an alternative interpretation, each rvErv\in E has capacity w(rv)w(rv) shared by ν(rv,e)\nu(rv,e), eδ(rv)e\in\delta(rv), and each vVv\in V has capacity w(v)w(v) shared by ν(v,e)\nu(v,e), eδ(v)e\in\delta^{\prime}(v). The following lemma claims that ν\nu and μ\mu may be set to satisfy all of these constraints.

Lemma 1.

Suppose that GG is a star. If α1α2\alpha_{1}\geq\alpha_{2}, let ξ(e)=π(e)\xi(e)=\pi(e) for each eEe\in E. Otherwise, suppose that ξ\xi is defined to satisfy eEξ(e)=α1\sum_{e\in E}\xi(e)=\alpha_{1}, and ξ(e)π(e)\xi(e)\leq\pi(e) for each eEe\in E. Then there exists a feasible solution (ξ,ν,μ)(\xi,\nu,\mu) to D(I){D}(I).

Proof.

First, we appropriately define ν\nu and μ\mu. All variables of ν\nu and μ\mu are initialized to 0. We fix an arbitrary ordering of edges in EE, and denote the ii-th edge by eie_{i}.

Let rvErv\in E. We sequentially select edges e1e_{1} to e|E|e_{|E|}. On selection of eie_{i}, we first increase μ(r,ei)\mu(r,e_{i}) until the increase reaches ξ(ei)\xi(e_{i}) or (2) becomes tight for rr. If (2) is tightened for rr before μ(r,ei)\mu(r,e_{i}) is increased by ξ(ei)\xi(e_{i}), then ν(rv,ei)\nu(rv,e_{i}) is increased until the total increase reaches ξ(ei)\xi(e_{i}) or (1) becomes tight for rvrv. Once (1) has tightened for rvrv, μ(v,ei)\mu(v,e_{i}) is increased. The current iteration is terminated when the total increase reaches ξ(ei)\xi(e_{i}). If i<|E|i<|E|, the algorithm advances to the next iteration, and processes ei+1e_{i+1}. Since i=1|E|ξ(ei)min{α1,α2}w(rv)+w(r)+w(v)\sum_{i=1}^{|E|}\xi(e_{i})\leq\min\{\alpha_{1},\alpha_{2}\}\leq w(rv)+w(r)+w(v), all edges in EE can be processed before (2) becomes tight for vv.

The above process defines ν(rv,ei)\nu(rv,e_{i}), μ(v,ei)\mu(v,e_{i}), and μ(r,ei)\mu(r,e_{i}) for each i{1,,|E|}i\in\{1,\ldots,|E|\}. This process is repeated for all rvErv\in E, but μ(r,ei)\mu(r,e_{i}) is not increased beyond the first iteration. Note that μ(r,ei)\mu(r,e_{i}) is assigned the same value regardless of which edge rvrv we begin with. Thus, ν\nu and μ\mu have been completely defined, and the feasibility of (ξ,ν,μ)(\xi,\nu,\mu) follows from their definitions. ∎

Case A

In this case, a leaf edge ee of maximum depth satisfies π(e)>0\pi(e)>0. Since Case A is not the base case, the depth of lel_{e} exceeds one. Let uu denote the upper end node of ee. Also let v0v_{0} denote the parent of uu, and let v1,,vkv_{1},\ldots,v_{k} be the children of uu. Throughout this paper, the sets {1,,k}\{1,\ldots,k\} and {0,,k}\{0,\ldots,k\} are denoted by [k][k], and [k][k]^{*}, respectively. The edge joining viv_{i} and uu is called eie_{i}, with i[k]i\in[k]^{*} (ee is included in {e1,,ek}\{e_{1},\ldots,e_{k}\}). The relationships between these nodes and edges are illustrated in Figure 1. We define β1=mini=0k(w(ei)+w(u)+w(vi))\beta_{1}=\min_{i=0}^{k}(w(e_{i})+w(u)+w(v_{i})), β2=i=1kπ(ei)\beta_{2}=\sum_{i=1}^{k}\pi(e_{i}), and β=min{β1,β2}\beta=\min\{\beta_{1},\beta_{2}\}. Let i[k]i^{*}\in[k]^{*} be the index of an edge eie_{i^{*}} that attains β1=w(ei)+w(u)+w(vi)\beta_{1}=w(e_{i^{*}})+w(u)+w(v_{i^{*}}).

uuv0v_{0}v1v_{1}v2v_{2}vkv_{k}e1e_{1}eke_{k}e0e_{0}
Figure 1: Edges and nodes in Case A

The algorithm constructs an instance I=(G,w,π)I^{\prime}=(G^{\prime},w^{\prime},\pi^{\prime}) as follows. Suppose that β1>β2\beta_{1}>\beta_{2}. In this case, GG^{\prime} is defined as GG, and π:E+\pi^{\prime}\colon E^{\prime}\rightarrow\mathbb{R}_{+} is defined by

π(e)={0if e{e1,,ek},π(e)otherwise.\pi^{\prime}(e)=\begin{cases}0&\mbox{if }e\in\{e_{1},\ldots,e_{k}\},\\ \pi(e)&\mbox{otherwise.}\end{cases}

For ψ\psi\in\mathbb{R}, we denote max{0,ψ}\max\{0,\psi\} by (ψ)+(\psi)_{+}. The weight function w:VE+w^{\prime}\colon V^{\prime}\cup E^{\prime}\rightarrow\mathbb{R}_{+} is defined by

w(e)={(w(ei)(βw(u))+)+if e=ei,i[k],w(e)otherwisew^{\prime}(e)=\begin{cases}(w(e_{i})-(\beta-w(u))_{+})_{+}&\mbox{if }e=e_{i},i\in[k]^{*},\\ w(e)&\mbox{otherwise}\end{cases}

for each eEe\in E^{\prime}, and

w(v)={(w(u)β)+if v=u,w(vi)(βw(u)w(ei))+if v=vi,i[k],w(v)otherwisew^{\prime}(v)=\begin{cases}(w(u)-\beta)_{+}&\mbox{if }v=u,\\ w(v_{i})-(\beta-w(u)-w(e_{i}))_{+}&\mbox{if }v=v_{i},i\in[k]^{*},\\ w(v)&\mbox{otherwise}\end{cases}

for each vVv\in V^{\prime}. If β1β2\beta_{1}\leq\beta_{2}, then G=(V,E)G^{\prime}=(V^{\prime},E^{\prime}) is defined as the tree obtained by removing nodes v1,,vkv_{1},\ldots,v_{k} and edges e1,,eke_{1},\ldots,e_{k} from GG, and π:E+\pi^{\prime}\colon E^{\prime}\rightarrow\mathbb{R}_{+} is defined by

π(e)={0if e=e0,π(e)otherwise.\pi^{\prime}(e)=\begin{cases}0&\mbox{if }e=e_{0},\\ \pi(e)&\mbox{otherwise.}\end{cases}

ww^{\prime} is defined identically to the case β1>β2\beta_{1}>\beta_{2}, ignoring w(vi)w^{\prime}(v_{i}) and w(ei)w^{\prime}(e_{i}) for i[k]i\in[k].

If β1β2\beta_{1}\leq\beta_{2}, the number of nodes with depth exceeding one is lower in GG^{\prime} than in GG. Hence, the algorithm inductively finds a solution FF^{\prime} to II^{\prime} and a feasible dual solution (ξ,ν,μ)(\xi^{\prime},\nu^{\prime},\mu^{\prime}) to D(I)D(I^{\prime}) that satisfy (5). Otherwise, the number of leaf edges ee of maximum depth with π(e)>0\pi^{\prime}(e)>0 is lower in GG^{\prime} than in GG. If GG^{\prime} lacks edges of this type, then instance II^{\prime} is categorized into Case B, and FF^{\prime} and (ξ,ν,μ)(\xi^{\prime},\nu^{\prime},\mu^{\prime}) are found as demonstrated below. If such edges do exist in GG^{\prime}, the algorithm finds FF^{\prime} and (ξ,ν,μ)(\xi^{\prime},\nu^{\prime},\mu^{\prime}) by induction on the number of such edges. Therefore, it suffices to show that the required FF and (ξ,ν,μ)(\xi,\nu,\mu) can be constructed from FF^{\prime} and (ξ,ν,μ)(\xi^{\prime},\nu^{\prime},\mu^{\prime}), provided that FF^{\prime} and (ξ,ν,μ)(\xi^{\prime},\nu^{\prime},\mu^{\prime}) exist.

We now define FF and (ξ,ν,μ)(\xi,\nu,\mu). FF is defined by

F={F{e0}if δF(v0),β>w(u)+w(e0),Fif δF(v0)= or βw(u)+w(e0),β1>β2,F{ei}if δF(v0)= or βw(u)+w(e0),β1β2.F=\begin{cases}F^{\prime}\cup\{e_{0}\}&\mbox{if }\delta_{F^{\prime}}(v_{0})\neq\emptyset,\beta>w(u)+w(e_{0}),\\ F^{\prime}&\mbox{if }\delta_{F^{\prime}}(v_{0})=\emptyset\mbox{ or }\beta\leq w(u)+w(e_{0}),\beta_{1}>\beta_{2},\\ F^{\prime}\cup\{e_{i^{*}}\}&\mbox{if }\delta_{F^{\prime}}(v_{0})=\emptyset\mbox{ or }\beta\leq w(u)+w(e_{0}),\beta_{1}\leq\beta_{2}.\\ \end{cases}
Lemma 2.

There exists a feasible solution (ξ,ν,μ)(\xi,\nu,\mu) to D(I)D(I) that satisfies (5) with FF.

Proof.

We first consider the case of β1>β2\beta_{1}>\beta_{2}. In this case, ξ(ei)=0\xi^{\prime}(e_{i})=0 follows from π(ei)=0\pi^{\prime}(e_{i})=0 for each i[k]i\in[k]. We define ξ(ei)\xi(e_{i}) as π(ei)\pi(e_{i}) for i[k]i\in[k]. We also define ν(ej,ei)\nu(e_{j},e_{i}), μ(vj,ei)\mu(v_{j},e_{i}), and μ(u,ei)\mu(u,e_{i}) such that ν(ej,ei)+μ(vj,ei)+μ(u,ei)=ξ(ei)\nu(e_{j},e_{i})+\mu(v_{j},e_{i})+\mu(u,e_{i})=\xi(e_{i}) holds for each j[k]j\in[k]^{*} and i[k]i\in[k]. The other dual variables are set to their values assigned in (ξ,ν,μ)(\xi^{\prime},\nu^{\prime},\mu^{\prime}). Note that, for each i[k]i\in[k]^{*}, we have w(u)+w(ei)+w(vi)w(u)w(ei)w(vi)=β2=i=1kξ(ei)w(u)+w(e_{i})+w(v_{i})-w^{\prime}(u)-w^{\prime}(e_{i})-w^{\prime}(v_{i})=\beta_{2}=\sum_{i=1}^{k}\xi(e_{i}). Hence, ν(ej,ei)\nu(e_{j},e_{i}), μ(vj,ei)\mu(v_{j},e_{i}), and μ(u,ei)\mu(u,e_{i}) can be defined without violating (1) or (2) as follows. We sequentially collect edges e1e_{1} to eke_{k}. On selection of eie_{i}, μ(u,ei)\mu(u,e_{i}) is increased until the total increase reaches ξ(ei)\xi(e_{i}) or (2) becomes tight for uu. If (2) is tightened for uu before μ(u,ei)\mu(u,e_{i}) has increased by ξ(ei)\xi(e_{i}), then ν(ej,ei)\nu(e_{j},e_{i}) is simultaneously increased for all j[k]j\in[k]^{*} until (1) becomes tight for eje_{j}. Once (1) has tightened for eje_{j}, μ(vj,ei)\mu(v_{j},e_{i}) is increased instead of ν(ej,ei)\nu(e_{j},e_{i}).

We next consider the case of β1β2\beta_{1}\leq\beta_{2}. In this scenario, ξ(e0)=0\xi^{\prime}(e_{0})=0 holds because π(e0)=0\pi^{\prime}(e_{0})=0. We define ξ(ei)\xi(e_{i}), i[k]i\in[k] such that ξ(ei)π(ei)\xi(e_{i})\leq\pi(e_{i}) for each i[k]i\in[k] and i=1kξ(ei)=β1\sum_{i=1}^{k}\xi(e_{i})=\beta_{1}, which is possible because i=1kπ(ei)=β2β1\sum_{i=1}^{k}\pi(e_{i})=\beta_{2}\geq\beta_{1}. ν(ei,e0)\nu(e_{i},e_{0}) and μ(vi,e0)\mu(v_{i},e_{0}) are set to 0 for each i[k]i\in[k]. We also define ν(ej,ei)\nu(e_{j},e_{i}), μ(vj,ei)\mu(v_{j},e_{i}), and μ(u,ei)\mu(u,e_{i}) such that ν(ej,ei)+μ(vj,ei)+μ(u,ei)=ξ(ei)\nu(e_{j},e_{i})+\mu(v_{j},e_{i})+\mu(u,e_{i})=\xi(e_{i}) for each j[k]j\in[k]^{*} and i[k]i\in[k] as specified for β1>β2\beta_{1}>\beta_{2}. The other variables are set to their values assigned in (ξ,ν,μ)(\xi^{\prime},\nu^{\prime},\mu^{\prime}). The feasibility of (ξ,ν,μ)(\xi,\nu,\mu) follows from its definition.

We now prove that FF and ξ\xi satisfy (5). Without loss of generality, we can assume |δF(u)|1|\delta_{F^{\prime}}(u)|\leq 1 (if this condition is false, we can remove edges eie_{i}, where i[k]i\in[k], from FF^{\prime} until |δF(u)|=1|\delta_{F^{\prime}}(u)|=1). The objective value of FF exceeds that of FF^{\prime} by at most β\beta, unless e0FFe_{0}\in F\setminus F^{\prime} and i0i^{*}\neq 0. If e0FFe_{0}\in F\setminus F^{\prime} and i0i^{*}\neq 0, then δF(v0)\delta_{F^{\prime}}(v_{0})\neq\emptyset and β>w(u)+w(e0)\beta>w(u)+w(e_{0}) by the definition of FF. Since δF(v0)\delta_{F^{\prime}}(v_{0})\neq\emptyset, w(v0)w^{\prime}(v_{0}) is counted in the objective value of FF^{\prime}. Thus, the objective values increases from FF^{\prime} to FF by w(v0)w(v0)+w(e0)+w(u)w(v_{0})-w^{\prime}(v_{0})+w(e_{0})+w(u). From β>w(u)+w(e0)\beta>w(u)+w(e_{0}), it follows that w(u)=w(e0)=0w^{\prime}(u)=w^{\prime}(e_{0})=0, therefore, the objective function increases by β\beta. Since eEξ(e)eEξ(e)=β\sum_{e\in E}\xi(e)-\sum_{e\in E^{\prime}}\xi(e)=\beta, (5) is satisfied. ∎

Case B

In this case, π(e)=0\pi(e)=0 holds for all leaf edges ee of maximum depth. Let ss be the grandparent of a leaf node of maximum depth. Also, let u1,,uku_{1},\ldots,u_{k} be the children of ss, and eie_{i} be the edge joining ss and uiu_{i} for i[k]i\in[k]. In the following discussion, we assume that ss has a parent, and that each node uiu_{i} has at least one child. This discussion is easily modified to cases in which ss has no parent or some node uiu_{i} has no child. We denote the parent of ss by u0u_{0}, and the edge between u0u_{0} and ss by e0e_{0}. For each i[k]i\in[k], let ViV_{i} be the set of children of uiu_{i}, and HiH_{i} be the set of edges joining uiu_{i} to its child nodes in ViV_{i}. Also define hi=uivih_{i}=u_{i}v_{i} as an edge that attains minuivHi(w(uiv)+w(v))\min_{u_{i}v\in H_{i}}(w(u_{i}v)+w(v)). The relationships between these nodes and edges are illustrated in Figure 2.

ssu0u_{0}u1u_{1}v1v_{1}uku_{k}V1V_{1}VkV_{k}h1h_{1}eke_{k}e1e_{1}e0e_{0}
Figure 2: Edges and nodes in Case B

Now define θ1=mini=0k(w(ei)+w(ui)+w(s))\theta_{1}=\min_{i=0}^{k}(w(e_{i})+w(u_{i})+w(s)), θ2=i=1kmin{w(ui)+w(vi)+w(hi),π(ei)}\theta_{2}=\sum_{i=1}^{k}\min\{w(u_{i})+w(v_{i})+w(h_{i}),\pi(e_{i})\}, and let θ=min{θ1,θ2}\theta=\min\{\theta_{1},\theta_{2}\}. We denote the index i[k]i\in[k] of an edge eie_{i} that attains θ1=w(ei)+w(ui)+w(s)\theta_{1}=w(e_{i})+w(u_{i})+w(s) by ii^{*}, and specify K={i[k]:w(ui)+w(vi)+w(hi)π(ei)}K=\{i\in[k]\colon w(u_{i})+w(v_{i})+w(h_{i})\leq\pi(e_{i})\}.

We define I=(G,w,π)I^{\prime}=(G^{\prime},w^{\prime},\pi^{\prime}) as follows. If θ1θ2\theta_{1}\geq\theta_{2}, then GG^{\prime} is the tree obtained by removing all edges in i[k]Hi\bigcup_{i\in[k]}H_{i} and all nodes in i[k]Vi\bigcup_{i\in[k]}V_{i} from GG, and π:E+\pi^{\prime}\colon E^{\prime}\rightarrow\mathbb{R}_{+} is defined such that

π(e)={0if e{e1,,ek},π(e)otherwise\pi^{\prime}(e)=\begin{cases}0&\mbox{if }e\in\{e_{1},\ldots,e_{k}\},\\ \pi(e)&\mbox{otherwise}\end{cases}

for eEe\in E^{\prime}. In this case, w:VE+w^{\prime}\colon V^{\prime}\cup E^{\prime}\rightarrow\mathbb{R}_{+} is defined by

w(v)={(w(s)θ)+if v=s,w(ui)(θw(s)w(ei))+if v=ui,i[k]w(v)otherwisew^{\prime}(v)=\begin{cases}(w(s)-\theta)_{+}&\mbox{if }v=s,\\ w(u_{i})-(\theta-w(s)-w(e_{i}))_{+}&\mbox{if }v=u_{i},i\in[k]^{*}\\ w(v)&\mbox{otherwise}\end{cases}

for vVv\in V^{\prime}, and

w(e)={(w(ei)(θw(s))+)+if e=ei,i[k],w(e)otherwise,w^{\prime}(e)=\begin{cases}(w(e_{i})-(\theta-w(s))_{+})_{+}&\mbox{if }e=e_{i},i\in[k]^{*},\\ w(e)&\mbox{otherwise,}\end{cases}

for eEe\in E^{\prime}. If θ1<θ2\theta_{1}<\theta_{2}, then e1,,eke_{1},\ldots,e_{k}, and their descendants are removed from GG to obtain GG^{\prime}, and π\pi^{\prime} is defined by

π(e)={0if e=e0,π(e)otherwise.\pi^{\prime}(e)=\begin{cases}0&\mbox{if }e=e_{0},\\ \pi(e)&\mbox{otherwise}.\end{cases}

Moreover, ww^{\prime} for EE^{\prime} and VV^{\prime} is defined as in the case θ1θ2\theta_{1}\geq\theta_{2}, disregarding the weights of edges and nodes removed from GG^{\prime}.

Since GG^{\prime} has fewer nodes of depth exceeding one than GG, the algorithm inductively finds a solution FF^{\prime} to II^{\prime}, and a feasible solution (ξ,ν,μ)(\xi^{\prime},\nu^{\prime},\mu^{\prime}) to D(I)D(I^{\prime}) satisfying (5). FF is constructed from FF^{\prime} as follows.

F={F{e0}if δF(u0),θ>w(s)+w(e0),Fif δF(u0)= or θw(s)+w(e0),δF(s),F{hi:iK}if δF(u0)= or θw(s)+w(e0),δF(s)=,θ1θ2,F{ei}if δF(u0)= or θw(s)+w(e0),δF(s)=,θ1<θ2.F=\begin{cases}F^{\prime}\cup\{e_{0}\}&\mbox{if }\delta_{F^{\prime}}(u_{0})\neq\emptyset,\theta>w(s)+w(e_{0}),\\ F^{\prime}&\mbox{if }\delta_{F^{\prime}}(u_{0})=\emptyset\mbox{ or }\theta\leq w(s)+w(e_{0}),\delta_{F^{\prime}}(s)\neq\emptyset,\\ F^{\prime}\cup\{h_{i}\colon i\in K\}&\mbox{if }\delta_{F^{\prime}}(u_{0})=\emptyset\mbox{ or }\theta\leq w(s)+w(e_{0}),\delta_{F^{\prime}}(s)=\emptyset,\theta_{1}\geq\theta_{2},\\ F^{\prime}\cup\{e_{i^{*}}\}&\mbox{if }\delta_{F^{\prime}}(u_{0})=\emptyset\mbox{ or }\theta\leq w(s)+w(e_{0}),\delta_{F^{\prime}}(s)=\emptyset,\theta_{1}<\theta_{2}.\end{cases}

We define ξ(e1),,ξ(ek)\xi(e_{1}),\ldots,\xi(e_{k}) such that ξ(ei)min{w(ui)+w(vi)+w(hi),π(ei)}\xi(e_{i})\leq\min\{w(u_{i})+w(v_{i})+w(h_{i}),\pi(e_{i})\} for i[k]i\in[k] and i=1kξ(ei)=θ\sum_{i=1}^{k}\xi(e_{i})=\theta, which is possible because i=1kmin{w(ui)+w(vi)+w(hi),π(ei)}=θ2θ\sum_{i=1}^{k}\min\{w(u_{i})+w(v_{i})+w(h_{i}),\pi(e_{i})\}=\theta_{2}\geq\theta. We also define ξ(e)=0\xi(e)=0 for each ei=1kHie\in\bigcup_{i=1}^{k}H_{i}. The other variables in ξ\xi are set to their values in ξ\xi^{\prime}. The following lemma states that this ξ\xi can form a feasible solution to D(I)D(I).

Lemma 3.

Suppose that ξ(e1),,ξ(ek)\xi(e_{1}),\ldots,\xi(e_{k}) satisfy ξ(ei)min{w(ui)+w(vi)+w(hi),π(ei)}\xi(e_{i})\leq\min\{w(u_{i})+w(v_{i})+w(h_{i}),\pi(e_{i})\} for each i[k]i\in[k] and i=1kξ(ei)=θ\sum_{i=1}^{k}\xi(e_{i})=\theta. Further, suppose that ξ(e)=0\xi(e)=0 holds for each ei=1kHie\in\bigcup_{i=1}^{k}H_{i}, and the other variables in ξ\xi are set to their values in ξ\xi^{\prime}. Then there exist ν\nu and μ\mu such that (ξ,ν,μ)(\xi,\nu,\mu) is feasible to D(I)D(I).

Proof.

For i[k]i\in[k] and vViv\in V_{i}, we define μ(v,ei)\mu(v,e_{i}) and ν(uiv,ei)\nu(u_{i}v,e_{i}) such that μ(v,ei)+ν(uiv,ei)=min{w(vi)+w(hi),ξ(ei)}\mu(v,e_{i})+\nu(u_{i}v,e_{i})=\min\{w(v_{i})+w(h_{i}),\xi(e_{i})\}. This may be achieved without violating the constraints, because w(v)+w(uiv)w(vi)+w(hi)w(v)+w(u_{i}v)\geq w(v_{i})+w(h_{i}). We also define ν(uiv,ei)\nu(u_{i}v,e_{i}) as (ξ(ei)w(ui)w(hi))+(\xi(e_{i})-w(u_{i})-w(h_{i}))_{+}. These variables satisfy (1) for uivu_{i}v, (2) for vv and uiu_{i}, and (3) for (ei,uiv)(e_{i},u_{i}v). ν(ej,ei)\nu(e_{j},e_{i}) for i[k]i\in[k] and j[k]j\in[k]^{*}, and μ(v,ei)\mu(v,e_{i}) for i[k]i\in[k] and v{s}{uj:j[k],ji}v\in\{s\}\cup\{u_{j}\colon j\in[k]^{*},j\neq i\} are set to 0. The other variables in ν\nu and μ\mu are set to their values in ν\nu^{\prime} and μ\mu^{\prime}. To advance the proof, we introduce an algorithm that increases ν(ej,ei)\nu(e_{j},e_{i}) for i[k]i\in[k] and j[k]j\in[k]^{*}, and μ(v,ei)\mu(v,e_{i}) for i[k]i\in[k] and v{s,u0,,uk}v\in\{s,u_{0},\ldots,u_{k}\}. At the completion of the algorithm, (ξ,ν,μ)(\xi,\nu,\mu) is a feasible solution to D(I)D(I).

The algorithm performs kk iterations, and the ii-th iteration increases the variables to satisfy (3) for each pair of eie_{i} and eje_{j}, where j[k]j\in[k]^{*}. The algorithm retains a set 𝚅𝚊𝚛{\tt Var} of variables to be increased. We introduce a notion of time: Over one unit of time, the algorithm simultaneously increases all variables in 𝚅𝚊𝚛{\tt Var} by one. The time consumed by the ii-th iteration is ξ(ei)\xi(e_{i}).

At the beginning of the ii-th iteration, 𝚅𝚊𝚛{\tt Var} is initialized to {μ(uj,ei):j[k]}\{\mu(u_{j},e_{i})\colon j\in[k]^{*}\}. The algorithm updates 𝚅𝚊𝚛{\tt Var} during the ii-th iteration as follows.

  • At time (ξ(ei)w(vi)w(hi))+(\xi(e_{i})-w(v_{i})-w(h_{i}))_{+}, μ(ui,ei)\mu(u_{i},e_{i}) is added to 𝚅𝚊𝚛{\tt Var} if 𝚅𝚊𝚛{μ(s,ei)}{\tt Var}\neq\{\mu(s,e_{i})\};

  • If (2) becomes tight for uju_{j} under the increase of μ(uj,ei)𝚅𝚊𝚛\mu(u_{j},e_{i})\in{\tt Var}, then μ(uj,ei)\mu(u_{j},e_{i}) is replaced by ν(ej,ei)\nu(e_{j},e_{i}) for each j[k]j\in[k]^{*};

  • If (1)\eqref{eds.d1} becomes tight for eje_{j} under the increase of ν(ej,ei)𝚅𝚊𝚛\nu(e_{j},e_{i})\in{\tt Var} with some j[k]j\in[k]^{*}, then 𝚅𝚊𝚛{\tt Var} is reset to {μ(s,ei)}\{\mu(s,e_{i})\}.

We note that the time spent between two consecutive updates may be zero.

𝚅𝚊𝚛{\tt Var} always contains a variable that appears in the right-hand side of (3) for (ei,ej)(e_{i},e_{j}) with j[k]{i}j\in[k]^{*}\setminus\{i\}, and for (ei,ei)(e_{i},e_{i}) after time (ξ(ei)w(vi)w(hi))+(\xi(e_{i})-w(v_{i})-w(h_{i}))_{+}. The algorithm updates 𝚅𝚊𝚛{\tt Var} so that (1) and (2) hold for all variables except ss. Hence, to show that (ξ,ν,μ)(\xi,\nu,\mu) is a feasible solution to D(I)D(I), it suffices to show that (2) for ss does not become tight before the algorithm is completed.

We complete the proof by contradiction. Suppose that (2) for ss tightens at time τ<ξ(ei)\tau<\xi(e_{i}) in the ii-th iteration. Since 𝚅𝚊𝚛={μ(s,ei)}{\tt Var}=\{\mu(s,e_{i})\} at this moment, there exists j[k]j\in[k]^{*} such that (1) for eje_{j} and (2) for uju_{j} are tight. The variables in the left-hand sides of (1) for eje_{j} and (2) for uju_{j} and ss are not simultaneously increased. Nor are these variables increased over time (ξ(ej)w(vj)w(hj))+(\xi(e_{j})-w(v_{j})-w(h_{j}))_{+} in the jj-th iteration, and μ(uj,ej)\mu(u_{j},e_{j}) is initialized to (ξ(ej)w(vj)w(hj))+(\xi(e_{j})-w(v_{j})-w(h_{j}))_{+}. From this argument, it follows that w(s)+w(uj)+w(ej)<i=1kξ(ei)θw(s)+w(u_{j})+w(e_{j})<\sum_{i^{\prime}=1}^{k}\xi(e_{i^{\prime}})\leq\theta. However, this result is contradicted by the definition of θ\theta, which implies that θθ1w(s)+w(uj)+w(ej)\theta\leq\theta_{1}\leq w(s)+w(u_{j})+w(e_{j}). Thus, the claim is proven. ∎

Lemma 4.

FF and ξ\xi satisfy (5).

Proof.

For each i[k]i\in[k], either eiEe_{i}\not\in E^{\prime} holds, or ξ(ei)=0\xi^{\prime}(e_{i})=0 holds (because π(ei)=0\pi^{\prime}(e_{i})=0). Hence, eEξ(e)=i=1kξ(ei)+eEξ(e)=θ+eEξ(e)\sum_{e\in E}\xi(e)=\sum_{i=1}^{k}\xi(e_{i})+\sum_{e\in E^{\prime}}\xi^{\prime}(e)=\theta+\sum_{e\in E^{\prime}}\xi^{\prime}(e). Therefore, it suffices to prove that eFw(e)θ+eFw(e)\sum_{e\in F}w(e)\leq\theta+\sum_{e\in F^{\prime}}w^{\prime}(e).

Without loss of generality, we can assume |δF(e0)|1|\delta_{F^{\prime}}(e_{0})|\leq 1 (if false, we can remove edges eie_{i}, i[k]i\in[k]^{*} from FF^{\prime} until |δF(e0)|=1|\delta_{F^{\prime}}(e_{0})|=1). In the sequel, we discuss only the case of δF(u0)\delta_{F^{\prime}}(u_{0})\neq\emptyset and θ>w(s)+w(e0)\theta>w(s)+w(e_{0}). In the alternative case, the claim immediately follows from the definitions of FF and ww^{\prime}. δF(u0)\delta_{F^{\prime}}(u_{0})\neq\emptyset implies that w(u0)w^{\prime}(u_{0}) is counted in the objective value of FF^{\prime}. Moreover, w(s)=w(e0)=0w^{\prime}(s)=w^{\prime}(e_{0})=0 follows from θ>w(s)+w(e0)\theta>w(s)+w(e_{0}). Thus, the objective values increase from FF^{\prime} to FF by w(u0)w(u0)+w(e0)+w(s)w(u_{0})-w^{\prime}(u_{0})+w(e_{0})+w(s), which equals θ\theta. ∎

Proof of Theorem 1.

We have proven that our algorithm always finds a solution FF to II and a feasible solution (ξ,ν,μ)(\xi,\nu,\mu) to D(I)D(I), where both solutions satisfy (5). By the duality of LPs, the right-hand side of (5) cannot exceed the optimal value of II; thus, FF is an optimal solution to II. ∎

5 Multicut problem in trees

In this section, we prove Theorem 2. Again the input tree GG is rooted by selecting an arbitrary root node. For each i[k]i\in[k], we let PiP_{i} denote the path connecting sis_{i} and tit_{i}, and lcai{\rm lca}_{i} denote the maximum-depth common ancestor of sis_{i} and tit_{i}. The paths P1,,PkP_{1},\ldots,P_{k} are called demand paths. We also denote the set of edges in PiP_{i} by EiE_{i}, and the set of nodes in PiP_{i} by ViV_{i} for notational convenience. We say that an edge ee covers a demand path PiP_{i} if eEie\in E_{i}. The multicut problem in GG seeks a minimum weight set of edges that covers all demand paths.

The prize-collecting multicut problem can be reduced to the multicut problem as follows. For each i[k]i\in[k], add new nodes si,si′′s^{\prime}_{i},s^{\prime\prime}_{i} and new edges sisi,sisi′′s_{i}s^{\prime}_{i},s^{\prime}_{i}s^{\prime\prime}_{i} to GG, and replace the ii-th demand pair by (si′′,ti)(s^{\prime\prime}_{i},t_{i}). Those new nodes and edges are weighted by w(sisi′′)=π(i)w(s^{\prime}_{i}s^{\prime\prime}_{i})=\pi(i), w(sisi)=+w(s_{i}s^{\prime}_{i})=+\infty, and w(si)=w(si′′)=0w(s^{\prime}_{i})=w(s^{\prime\prime}_{i})=0. Choosing sisi′′s^{\prime}_{i}s^{\prime\prime}_{i} into a solution to this new instance of the multicut problem corresponds to violating the ii-th demand in the original instance of the prize-collecting multicut problem.

Due to this reduction, we consider only the multicut problem in trees, which is equivalent to assuming that π(i)=+\pi(i)=+\infty for all i[k]i\in[k]. For an instance I=(G,w)I=(G,w) of the multicut problem, the dual of the LP relaxation P(I)P(I) is given by

D(I)=\displaystyle{D}(I)=\hskip-20.00003pt
maximize i[k]ξ(i)\displaystyle\sum_{i\in[k]}\xi(i)
subject to ξ(i)ν(e,i)+μ(ue,i)+μ(le,i)\displaystyle\xi(i)\leq\nu(e,i)+\mu(u_{e},i)+\mu(l_{e},i) for i[k],eEi,\displaystyle\mbox{for }i\in[k],e\in E_{i}, (6)
i[k]:eEiν(e,i)w(e)\displaystyle\sum_{i\in[k]:e\in E_{i}}\nu(e,i)\leq w(e) for eE,\displaystyle\mbox{for }e\in E, (7)
i[k]:vViμ(v,i)w(v)\displaystyle\sum_{i\in[k]:v\in V_{i}}\mu(v,i)\leq w(v) for vV,\displaystyle\mbox{for }v\in V, (8)
ξ(i)0\displaystyle\xi(i)\geq 0 for i[k],\displaystyle\mbox{for }i\in[k],
ν(e,i)0\displaystyle\nu(e,i)\geq 0 for i[k],eEi,\displaystyle\mbox{for }i\in[k],e\in E_{i},
μ(v,i)0\displaystyle\mu(v,i)\geq 0 for i[k],vVi.\displaystyle\mbox{for }i\in[k],v\in V_{i}.

Our algorithm initializes the solution set FF to an empty set, and the dual solution (ξ,ν,μ)(\xi,\nu,\mu) to 0. The algorithm proceeds in two phases; the increase phase and deletion phase. The algorithm iterates in the increase phase, selecting edges covering demand paths not previously covered by FF and adding them to FF while updating the dual solution. The increase phase terminates when all demand paths have been covered by FF. In the deletion phase, FF is converted into a minimal solution by removing some edges.

The demand pairs are assumed to be sorted in the decreasing order of depth of lcai{\rm lca}_{i}, implying that lcai{\rm lca}_{i} is not a descendant of lcaj{\rm lca}_{j} if j<ij<i.

Increase phase

At the beginning of each iteration in the increase phase, the algorithm selects the minimum index ii for which PiP_{i} is not covered by the current solution FF. It then updates the dual solution (ξ,ν,μ)(\xi,\nu,\mu), and adds several edges to FF, one of which covers PiP_{i}. If all demand paths are covered by FF after this operation, the increase phase is terminated and the algorithm proceeds to the deletion phase; otherwise, it begins the next iteration. The iteration that processes PiP_{i} is called the iteration for ii. In the following discussion, we explain the update process of the dual solution, and how edges are selected for addition to FF in the iteration for ii.

First, we define some terminologies. We say that eEie\in E_{i} is tight with regard to i[k]i\in[k] if (6) becomes an equality for (i,e)(i,e). We say that ee is a bottleneck edge with regard to ii if it is tight with regard to ii, if (7) becomes an equality for ee, and if (8) becomes an equality for both end nodes of ee.

At the beginning of the iteration, ν\nu is assumed to be minimal under the condition that (ξ,ν,μ)(\xi,\nu,\mu) is a feasible solution to D(I)D(I). This condition can be assumed without loss of generality because arbitrarily decreasing ν\nu makes it minimal. By this assumption, if ν(e,j)>0\nu(e,j)>0 for some j[i1]j\in[i-1] and eEje\in E_{j}, then ee is tight with regard to jj.

The algorithm attempts to continuously increase ξ(i)\xi(i). As in Section 4, we introduce a time interval, during which ξ(i)\xi(i) increases by one. To satisfy (6), ν(e,i)\nu(e,i), μ(ue,i)\mu(u_{e},i) or μ(le,i)\mu(l_{e},i) must be increased at the speed of ξ(i)\xi(i) for each edge eEie\in E_{i} that is tight with regard to ii. If no bottleneck edge exists with regard to ii, the algorithm retains an edge set H{eEi:j[k]:eEjν(e,j)<w(e)}H\subseteq\{e\in E_{i}\colon\sum_{j\in[k]:e\in E_{j}}\nu(e,j)<w(e)\} and a node set U{vVi:j[k]:vVjμ(v,j)<w(v)}U\subseteq\{v\in V_{i}\colon\sum_{j\in[k]:v\in V_{j}}\mu(v,j)<w(v)\} such that each tight edge in EiE_{i} is included in HH or is incident to a node in UU. The algorithm increases ν(e,i)\nu(e,i), eHe\in H, and μ(v,i)\mu(v,i), vUv\in U at the same speed as ξ(i)\xi(i). We note that HH and UU are computed greedily so that they are minimal.

We now explain how the algorithm handles a bottleneck edge ee. For an end node vv of the bottleneck edge ee, we define J(i,v)J(i,v) as {j[i1]:μ(v,j)>0}\{j\in[i-1]\colon\mu(v,j)>0\}. The algorithm attempts to decrease μ(v,j)\mu(v,j), defined at an end node vv of ee and jJ(i,v)j\in J(i,v). Below we detail how μ(v,j)\mu(v,j) is decreased while retaining the feasibility of (ξ,μ,ν)(\xi,\mu,\nu). We note that decrease of μ(v,j)\mu(v,j) is not always possible. We call vv relaxable (with regard to ii) if μ(v,j)\mu(v,j) can be decreased for some jJ(i,v)j\in J(i,v). If EiE_{i} contains bottleneck edges, the algorithm maintains

  • a set RR of relaxable nodes such that each bottleneck edge eEie\in E_{i} is incident to at least one node in RR,

  • an edge set H{eEi:j[k]:eEjν(e,j)<w(e)}H\subseteq\{e\in E_{i}\colon\sum_{j\in[k]:e\in E_{j}}\nu(e,j)<w(e)\},

  • and a node set U{vVi:j[k]:vVjμ(v,j)<w(v)}U\subseteq\{v\in V_{i}\colon\sum_{j\in[k]:v\in V_{j}}\mu(v,j)<w(v)\}.

RR, HH, and UU are minimal under the condition that each tight edge is included in HH, or is incident to a node in RUR\cup U. The algorithm increases ξ(i)\xi(i), ν(e,i)\nu(e,i) for eHe\in H, and μ(v,i)\mu(v,i) for vURv\in U\cup R at the same speed, where increasing μ(v,i)\mu(v,i) for vRv\in R involves decreasing μ(v,j)\mu(v,j) for some jJ(i,v)j\in J(i,v) and updating other variables, as explained below.

We now explain how μ(v,j)\mu(v,j) is decreased for some jJ(i,v)j\in J(i,v), and formally define the relaxability of vv. μ(v,j)>0\mu(v,j)>0 implies that EjE_{j} contains one or two edges incident to vv. Suppose that EjE_{j} contains a single edge, ff. Let uu be the other end node of ff. If ff is not tight with regard to jj, then μ(v,j)\mu(v,j) is decreased until ff becomes tight. Even if ff is tight with regard to jj, ν(f,j)\nu(f,j) or μ(u,j)\mu(u,j) is increased while μ(v,j)\mu(v,j) is decreased at the same speed, provided that ff is not a bottleneck edge with regard to jj. This action retains the feasibility because (7) for ff or (8) for uu is not tight unless ff is a bottleneck edge with regard to jj. If ff is a bottleneck edge with regard to jj, the algorithm recursively attempts to decrease μ(u,j)\mu(u,j^{\prime}) for some jJ(j,u)j^{\prime}\in J(j,u) if uu is relaxable, and increase μ(u,j)\mu(u,j). Under these update rules, μ(v,j)\mu(v,j) is decreased without violating the feasibility of (ξ,μ,ν)(\xi,\mu,\nu). If EjE_{j} contains two edges ff and ff^{\prime} incident to vv, μ(v,j)\mu(v,j) decreases only when allowed for both ff and ff^{\prime}. We define vv as relaxable if one of these updates is possible. vv is not relaxable under the following conditions.

Fact 1.

A node vViv\in V_{i} is not relaxable with regard to ii if and only if J(i,v)=J(i,v)=\emptyset, or for each jJ(i,v)j\in J(i,v), EjE_{j} contains a bottleneck edge ff whose other end node is non-relaxable and which is incident to vv.

We note that decreasing μ(v,j)\mu(v,j) for some relaxable node vViv\in V_{i} and jJ(i,v)j\in J(i,v) may cause other variables to increase. In this case, if PjP_{j} shares nodes or edges with PiP_{i}, increasing ξ(i)\xi(i) by ϵ>0\epsilon>0 may increase the left-hand sides of (7) and (8) by more than ϵ\epsilon. Hence, ϵ\epsilon must be set sufficiently small that the feasibility of (ξ,μ,ν)(\xi,\mu,\nu) is maintained. In implementing the increase phase, we recommend solving an LP for deciding the increment of ξ(i)\xi(i) in a single step. The maximum increment ϵ\epsilon for ξ(i)\xi(i) can be computed by formulating the problem as an LP.

When ξ(i)\xi(i) increases no further, the algorithm adds several edges to FF. At this moment, EiE_{i} includes a bottleneck edge ee such that ee is tight with regard to all j[k]j\in[k], and neither of its end nodes are relaxable. If two or more such edges exist, the edge of maximum depth, denoted ee, is added to FF. We call ee the witness of PiP_{i}.

The algorithm then completes the following operations for each end node vv of ee. By Fact 1, EjE_{j} contains a bottleneck edge ff incident to vv for each jJ(i,v)j\in J(i,v), where f=ef=e possibly holds. The algorithm adds such ff to FF for each jJ(i,v)j\in J(i,v) with eEje\not\in E_{j}. Since the other end node vv^{\prime} of ff is non-relaxable, EjE_{j^{\prime}} also contains a bottleneck edge ff^{\prime} incident to vv^{\prime} for each jJ(j,v)j^{\prime}\in J(j,v^{\prime}). If ff is added to FF and fEjf\not\in E_{j^{\prime}}, the algorithm adds each of such ff^{\prime} to FF and repeats the process for the other end nodes of ff^{\prime}.

Lemma 5.

Let eFe\in F. At the completion of the increase phase, ee is a bottleneck edge with regard to each i[k]i\in[k]. Moreover, neither end node of ee is relaxable with regard to each i[k]i\in[k].

Proof.

When ee is added to FF, it satisfies the above conditions. In later iterations, the algorithm does not decrease ν(e,i)\nu(e^{\prime},i) for any bottleneck edge ee^{\prime} nor μ(v,i)\mu(v,i) for an end node vv of ee^{\prime}. Hence, ee satisfies the conditions at completion of the increase phase. ∎

Deletion phase

Let II be the set of indices ii for which PiP_{i} was considered in the increase phase. In other words, ii was the minimum index for which PiP_{i} was covered by no edge in FF at the beginning of some iteration of the increase phase. The deletion phase is also iterated, sequentially processing PiP_{i} in the decreasing order of iIi\in I. As defined in the increase phase, the iteration that considers PiP_{i} is called the iteration for ii. Briefly, the deletion phase selects edges from FF to obtain a final solution FF^{\prime} in which each ξ(i)\xi(i), iIi\in I contributes to at most two edges.

FF^{\prime} is initialized to the empty set. Suppose that the algorithm iterates iIi\in I. We denote {vVi:μ(v,i)>0,δF(v)}\{v\in V_{i}\colon\mu(v,i)>0,\delta_{F^{\prime}}(v)\neq\emptyset\} by V~i\tilde{V}_{i}. Let vv be a node in V~i\tilde{V}_{i} with no ancestor in V~i\tilde{V}_{i}. By Lemma 5, δF(v)δF(v)\delta_{F}(v)\supseteq\delta_{F^{\prime}}(v)\neq\emptyset implies that vv is non-relaxable with regard to ii. Suppose now that an edge in δF(v)\delta_{F^{\prime}}(v) is added to FF^{\prime} in the iteration for ii^{\prime} with i>ii^{\prime}>i. μ(v,i)>0\mu(v,i)>0 implies that iJ(i,v)i\in J(i^{\prime},v), and hence by Fact 1, EiE_{i} contains a bottleneck edge ff incident to vv, whose other end node is non-relaxable. If EiE_{i} contains two such edges, and if vv is the lower end node of one of those edges, ff becomes the edge satisfying lf=vl_{f}=v. Otherwise, ff is arbitrarily selected from the candidate edges. If ff has not previously belonged to FF^{\prime}, it is added to FF^{\prime}. If FF^{\prime} contains an edge fEif^{\prime}\in E_{i} which is a descendant of ff, ff^{\prime} is deleted from FF^{\prime}.

The above vv can be selected from at most two choices in V~i\tilde{V}_{i}. The algorithm completes the above operation for each of these nodes. At the end of the operation, if FEiF^{\prime}\cap E_{i} does not contain the witness eie_{i} of PiP_{i} or any ancestor of eie_{i}, the algorithm adds eie_{i} to FF^{\prime}. The algorithm performs no further tasks in the iteration for ii. Note that 1I1\in I always holds. If i>1i>1, the algorithm proceeds to the next iteration. If i=1i=1, the deletion phase terminates, and the algorithm outputs FF^{\prime}.

Lemma 6.

Suppose that the algorithm outputs an edge set FF^{\prime}. Then it satisfies the following conditions.

  • (i)

    FEjF^{\prime}\cap E_{j}\neq\emptyset for each j[k]j\in[k].

  • (ii)

    Let iIi\in I. Each subpath between an end node of PiP_{i} and lcai{\rm lca}_{i} includes at most one edge in FF^{\prime}.

  • (iii)

    Let i,iIi,i^{\prime}\in I with iii\neq i^{\prime}. If an edge in FEiF^{\prime}\cap E_{i^{\prime}} is incident to a node vv in ViV_{i}, and if μ(v,i)>0\mu(v,i)>0, then FEiF^{\prime}\cap E_{i} contains an edge incident to vv.

Proof.

To prove (i), we first consider the case of jIj\in I. The deletion phase adds an edge eEje\in E_{j} to FF^{\prime} before completing the iteration for jj. If ee is removed from FF^{\prime} in a later iteration for jj^{\prime}, then eEje\in E_{j^{\prime}} and the algorithm adds an ancestor fEjf\in E_{j^{\prime}} of ee to FF^{\prime}. lcaj{\rm lca}_{j^{\prime}} is a descendant of lcaj{\rm lca}_{j} because j<jj^{\prime}<j and eEjEje\in E_{j^{\prime}}\cap E_{j}. Hence, ff also covers PjP_{j}. Even if ff is eventually removed from FF^{\prime}, we can similarly prove that PjP_{j} is covered by another edge that is added to FF^{\prime} in the iteration. Hence, at completion of the algorithm, PjP_{j} is covered by FF^{\prime} if jIj\in I.

Before discussing the case of jIj\not\in I, we note that if jIj\in I, then FEjF^{\prime}\cap E_{j} contains the witness eje_{j} of PjP_{j} or one of its ancestors at completion of the algorithm. This is guaranteed by the deletion phase during iteration for jj, which adds eje_{j} to FF^{\prime} if FF^{\prime} does not contain eje_{j} or any of its ancestors.

We now discuss the case of jIj\not\in I. By definition of the increase phase, FF contains an edge ee that covers PjP_{j}, and ee is the witness of PiP_{i} for some iIi\in I with i<ji<j. By the above observation, FF^{\prime} contains ee or one of its ancestors fEif\in E_{i}. ff also covers PjP_{j}, because i<ji<j. Hence, FF^{\prime} contains an edge covering PjP_{j} even if jIj\not\in I.

Next, we prove (ii) by induction on ii. Let us consider the case of maximum ii in II. The first iteration of the deletion phase adds the witness eie_{i} of PiP_{i} to FF^{\prime}. Suppose that another edge fEif\in E_{i} is added to FF^{\prime} in the iteration for iIi^{\prime}\in I in the deletion phase. If ff is added to FF before the iteration for ii in the increase phase, then ii does not belong to II, which is a contradiction. Otherwise, ff is added to FF because it is incident to an end node of ee, and ee does not cover EiE_{i^{\prime}}. Since i<ii^{\prime}<i, this implies that either ff is a descendant of ee or ue=ufu_{e}=u_{f}. In the former case, ee is not chosen as the witness of PiP_{i}, because the witness is a bottleneck edge of maximum depth with both end nodes non-relaxable, which contradicts the definition of ee. In the latter case, ue=uf=lcaiu_{e}=u_{f}={\rm lca}_{i}, consistent with (ii) in Lemma 6.

We next consider the case of non-maximal ii in II. Let KK be the set of edges in the subpath between an end node of PiP_{i} and lcai{\rm lca}_{i}. Suppose that at the start of the iteration for ii in the deletion phase, there exist distinct edges e,eKFe,e^{\prime}\in K\cap F^{\prime}. Without loss of generality, we assume that ee^{\prime} is an ancestor of ee. Assume that the deletion phase adds ee to FF^{\prime} during the iteration for jj with i<ji<j, and adds ee^{\prime} to FF^{\prime} during the iteration for jj^{\prime} with i<ji<j^{\prime}. Since lcai{\rm lca}_{i} is a descendant of lcaj{\rm lca}_{j}, ee^{\prime} covers PiP_{i}; therefore, ee^{\prime} also covers PjP_{j}. Hence, the subpath of PjP_{j} between lel_{e} and lcaj{\rm lca}_{j} is covered by two edges in FF^{\prime}, which is a contradiction by induction. Therefore, at the beginning of the iteration for ii in the deletion phase, KK is covered by at most one edge in FF^{\prime}.

At the start of the iteration for ii, suppose that KK is covered by an edge eFe\in F^{\prime}. If another edge fKf\in K is added to FF^{\prime} during this iteration, then ff is incident to a node vV~iv\in\tilde{V}_{i}, and another edge ff^{\prime} incident to vv is in FF^{\prime}. Suppose that ff^{\prime} is added to FF^{\prime} during the iteration for jj in the˚ deletion phase. If vv is an ancestor of ee, then ee is removed from FF^{\prime} when ff is added to FF^{\prime}. If vv is a descendant of ee, then PjP_{j} is covered by ee because j>ij>i. Therefore, the subpath of PjP_{j} between lfl_{f^{\prime}} and lcaj{\rm lca}_{j} is covered by both ee and ff^{\prime}, which again is a contradiction by induction.

KK could also be covered by two edges if the witness eie_{i} of PiP_{i} is in KK and is added to FF^{\prime} in the iteration for ii, even though one of its descendants has already been in FF^{\prime}. We now demonstrate that this situation does not occur. Note that each edge in FEiF\cap E_{i} is either eie_{i} or is incident to a node in ViV_{i^{\prime}} for some iIi^{\prime}\in I with i>ii^{\prime}>i. Since PiP_{i^{\prime}} is not covered by eie_{i} and lcai{\rm lca}_{i} is not an ancestor of lcai{\rm lca}_{i^{\prime}}, eie_{i} is not an ancestor of any edge in FEiF\cap E_{i}. Hence, no descendant of eie_{i} is added to FF^{\prime}.

Finally, we prove (iii). Suppose that some i,iIi,i^{\prime}\in I violates the claim of (iii). We consider such a pair of ii and ii^{\prime} that minimizes |ii||i-i^{\prime}|. Let eFEie\in F^{\prime}\cap E_{i^{\prime}} be an edge incident to a node vViv\in V_{i}. Suppose that i>ii^{\prime}>i. If FEiF^{\prime}\cap E_{i} contains no edge incident to vv, then the iteration for ii during the deletion phase adds an ancestor edge of vv in EiE_{i} to FF^{\prime}. This edge also covers PiP_{i^{\prime}} because lcai{\rm lca}_{i^{\prime}} is an ancestor of lcai{\rm lca}_{i}, which contradicts (ii). Next, we suppose that i<ii^{\prime}<i. Claim (iii) is obvious when ee covers PiP_{i}; thus, we suppose that ee does not cover PiP_{i}. μ(v,i)>0\mu(v,i)>0 indicates that ee was not in FF at the start of the iteration for ii in the increase phase. Let jIj\in I be the index for which ee is added to FF during the iteration for jj in the increase phase, where jij\geq i. By the definition of the increase phase, the witness of PjP_{j} is incident to vv, and because μ(v,i)>0\mu(v,i)>0, an edge incident to vv in EiE_{i} is added to FF simultaneously with ee. Since this edge is not in FF^{\prime}, the iteration for ii in the increase phase adds an ancestor edge of vv in EiE_{i} to FF^{\prime}. This edge covers PjP_{j}, indicating that the subpath of PjP_{j} between its one end node and lcaj{\rm lca}_{j} is covered by two edges if j>ij>i, which contradicts (ii). Therefore, j=ij=i. However, ee is not added to FF^{\prime} unless the witness of PiP_{i} is added to FF^{\prime} and a contradiction arises. ∎

Proof of Theorem 2.

Let FF^{\prime} denote the edge set output by the algorithm. By claim (i) of Lemma 6, FF^{\prime} is a multicut. Since i[k]ξ(i)\sum_{i\in[k]}\xi(i) is a lower bound on the optimal value, it suffices to show that eFw(e)+vV(F)w(v)2i[k]ξ(i)\sum_{e\in F^{\prime}}w(e)+\sum_{v\in V(F^{\prime})}w(v)\leq 2\sum_{i\in[k]}\xi(i).

Lemma 5 implies that w(e)=i[k]:eEiν(e,i)w(e)=\sum_{i\in[k]:e\in E_{i}}\nu(e,i) for each eFe\in F, and that w(v)=i[k]:vViμ(v,i)w(v)=\sum_{i\in[k]:v\in V_{i}}\mu(v,i) for each vV(F)v\in V(F). Recall that FFF^{\prime}\subseteq F. Hence,

eFw(e)+vV(F)w(v)=i[k](eFEiν(e,i)+vV(F)Viμ(v,i)).\sum_{e\in F^{\prime}}w(e)+\sum_{v\in V(F^{\prime})}w(v)=\sum_{i\in[k]}\left(\sum_{e\in F^{\prime}\cap E_{i}}\nu(e,i)+\sum_{v\in V(F^{\prime})\cap V_{i}}\mu(v,i)\right). (9)

(iii) of Lemma 6 indicates that V(F)ViV(FEi)V(F^{\prime})\cap V_{i}\subseteq V(F^{\prime}\cap E_{i}) holds if iIi\in I. If iIi\not\in I, then ν(e,i)=0\nu(e,i)=0 for any eEie\in E_{i} and μ(v,i)=0\mu(v,i)=0 for any vViv\in V_{i}. Hence, the right-hand side of (9) is equal to

iIe=uvFEi(ν(e,i)+μ(v,i)+μ(u,i))=iI|FEi|ξ(i).\sum_{i\in I}\sum_{e=uv\in F^{\prime}\cap E_{i}}\left(\nu(e,i)+\mu(v,i)+\mu(u,i)\right)=\sum_{i\in I}|F^{\prime}\cap E_{i}|\xi(i).

|FEi|2|F^{\prime}\cap E_{i}|\leq 2 for each iIi\in I by (ii) of Lemma 6. Recall that ξ(i)=0\xi(i)=0 for each iIi\not\in I. Therefore, the right-hand-side of (9) is at most 2i[k]ξ(i)2\sum_{i\in[k]}\xi(i). ∎

6 Conclusion

In this paper, we emphasized a large integrality gap when the natural LP relaxation is applied to the graph covering problem that minimizes node weights. We then formulated an alternative LP relaxation for graph covering problems in edge- and node-weighted graphs that is stronger than the natural relaxation. This relaxation was incorporated into an exact algorithm for the prize-collecting EDS problem in trees, and a 2-approximation algorithm for the multicut problem in trees. The approximation guarantees for these algorithms match the previously known best results for purely edge-weighted graphs. In many other graph covering problems, the integrality gap in the proposed relaxation would increase if node weights were introduced, because the problems in node-weighted graphs admit stronger hardness results, as shown in the Appendix. Nonetheless, the proposed relaxation is a potentially useful tool for designing heuristics or using IP solvers to solve the above problems.

Acknowledgements

This work was partially supported by Japan Society for the Promotion of Science (JSPS), Grants-in-Aid for Young Scientists (B) 25730008. The author thanks an anonymous referee of SWAT 2014 for pointing out an error on the reduction from the prize-collecting multicut problem to the multicut problem in an earlier version of this paper.

References

  • [1] M. Bateni, M. Hajiaghayi, and V. Liaghat. Improved approximation algorithms for (budgeted) node-weighted Steiner problems. In ICALP (1), vol. 7965 of Lecture Notes in Computer Science, pages 81–92, 2013.
  • [2] A. Berger, T. Fukunaga, H. Nagamochi, and O. Parekh. Approximability of the capacitated b-edge dominating set problem. Theoretical Computer Science, 385(1-3):202–213, 2007.
  • [3] A. Berger and O. Parekh. Linear time algorithms for generalized edge dominating set problems. Algorithmica, 50(2):244–254, 2008.
  • [4] A. Berger and O. Parekh. Erratum to: Linear time algorithms for generalized edge dominating set problems. Algorithmica, 62(1-2):633–634, 2012.
  • [5] J. Byrka, F. Grandoni, T. Rothvoß, and L. Sanità. Steiner tree approximation via iterative randomized rounding. Journal of the ACM, 60(1):6, 2013.
  • [6] R. D. Carr, T. Fujito, G. Konjevod, and O. Parekh. A 21102\frac{1}{10}-approximation algorithm for a generalization of the weighted edge-dominating set problem. Journal of Combinatorial Optimization, 5(3):317–326, 2001.
  • [7] S. Chawla, R. Krauthgamer, R. Kumar, Y. Rabani, and D. Sivakumar. On the hardness of approximating multicut and sparsest-cut. Computational Complexity, 15(2):94–114, 2006.
  • [8] C. Chekuri, A. Ene, and A. Vakilian. Prize-collecting survivable network design in node-weighted graphs. In APPROX-RANDOM, vol. 7408 of Lecture Notes in Computer Science, pages 98–109, 2012.
  • [9] V. Chvátal. A greedy heuristic for the set-covering problems. Mathematics of Operations Research, 4:233–235, 1979.
  • [10] E. Dahlhaus, D. S. Johnson, C. H. Papadimitriou, P. D. Seymour, and M. Yannakakis. The complexity of multiterminal cuts. SIAM Journal on Computing, 23(4):864–894, 1994.
  • [11] T. Fujito and H. Nagamochi. A 2-approximation algorithm for the minimum weight edge dominating set problem. Discrete Applied Mathematics, 118(3):199–207, 2002.
  • [12] T. Fukunaga. Spider covers for prize-collecting network activation problem. CoRR, abs/1310.5422, 2013.
  • [13] N. Garg, V. V. Vazirani, and M. Yannakakis. Approximate max-flow min-(multi)cut theorems and their applications. SIAM Journal on Computing, 25(2):235–251, 1996.
  • [14] N. Garg, V. V. Vazirani, and M. Yannakakis. Primal-dual approximation algorithms for integral flow and multicut in trees. Algorithmica, 18(1):3–20, 1997.
  • [15] M. X. Goemans, N. Olver, T. Rothvoß, and R. Zenklusen. Matroids and integrality gaps for hypergraphic steiner tree relaxations. In STOC, pages 1161–1176, 2012.
  • [16] M. Hajiaghayi, V. Liaghat, and D. Panigrahi. Online node-weighted Steiner forest and extensions via disk paintings. In FOCS, pages 558–567, 2013.
  • [17] D. S. Hochbaum. Heuristics for the fixed cost median problem. Mathematical Programming, 22(1):148–162, 1982.
  • [18] N. Kamiyama. The prize-collecting edge dominating set problem in trees. In P. Hlinený and A. Kucera, editors, Mathematical Foundations of Computer Science 2010, 35th International Symposium, MFCS 2010, Brno, Czech Republic, August 23-27, 2010. Proceedings, vol. 6281 of Lecture Notes in Computer Science, pages 465–476. Springer, 2010.
  • [19] S. Khot and O. Regev. Vertex cover might be hard to approximate to within 2ϵ2-\epsilon. Journal of Computer and System Sciences, 74(3):335–349, 2008.
  • [20] P. N. Klein and R. Ravi. A nearly best-possible approximation algorithm for node-weighted Steiner trees. Journal of Algorithms, 19(1):104–115, 1995.
  • [21] J. Könemann, S. S. Sadeghabad, and L. Sanità. An LMP O(logn){O}(\log n)-approximation algorithm for node weighted prize collecting Steiner tree. In FOCS, pages 568–577, 2013.
  • [22] L. Lovász. On the ratio of optimal integral and fractional covers. Discrete Mathematics, 13(4):383––390, 1975.
  • [23] A. Moss and Y. Rabani. Approximation algorithms for constrained node weighted Steiner tree problems. SIAM Journal on Computing, 37(2):460–481, 2007.
  • [24] J. Naor, D. Panigrahi, and M. Singh. Online node-weighted Steiner tree and related problems. In FOCS, pages 210–219, 2011.
  • [25] Z. Nutov. Approximating Steiner networks with node-weights. SIAM Journal on Computing, 39(7):3001–3022, 2010.
  • [26] Z. Nutov. Approximating minimum-cost connectivity problems via uncrossable bifamilies. ACM Transactions on Algorithms, 9(1):1, 2012.
  • [27] Z. Nutov. Survivable network activation problems. In LATIN, vol. 7256 of Lecture Notes in Computer Science, pages 594–605, 2012.
  • [28] D. Panigrahi. Survivable network design problems in wireless networks. In SODA, pages 1014–1027, 2011.
  • [29] O. Parekh. Approximation algorithms for partially covering with edges. Theoretical Computer Science, 400(1-3):159–168, 2008.
  • [30] A. Vakilian. Node-weighted prize-collecting survivable network design problems. Master’s thesis, University of Illinois at Urbana-Champaign, 2013.
  • [31] V. V. Vazirani. Approximation algorithms. Springer, 2001.

Appendix A EDS problem in general graphs

A.1 Hardness results

In this section, we discuss the EDS problem in general graphs. First, we show that the EDS problem in node-weighted graphs is as hard as the set cover problem, and the EDS problem in edge- and node-weighted graphs is as hard as the (non-metric) facility location problem. To this end, we reduce the set cover problem or the facility location problem to the EDS problem in bipartite graphs. Accordingly, our hardness results hold for the EDS problem in bipartite graphs.

We now define the set cover problem and facility location problem. In the set cover problem, we are given a set VV, family 𝒮\mathcal{S} of subsets of VV, and cost function c:𝒮+c\colon\mathcal{S}\rightarrow\mathbb{R}_{+}. A solution is a subfamily 𝒳\mathcal{X} of 𝒮\mathcal{S} such that X𝒳X=V\cup_{X\in\mathcal{X}}X=V. The objective is to minimize X𝒳c(X)\sum_{X\in\mathcal{X}}c(X). Inputs in the facility location problem are a client set VV, a facility set FF, opening costs o:F+o\colon F\rightarrow\mathbb{R}_{+}, and connection costs d:V×F+d\colon V\times F\rightarrow\mathbb{R}_{+}. A solution to this problem is a pair of FFF^{\prime}\subseteq F and ρ:VF\rho\colon V\rightarrow F^{\prime}, and the objective is to minimize fFo(f)+vVd(v,ρ(v))\sum_{f\in F^{\prime}}o(f)+\sum_{v\in V}d(v,\rho(v)).

Given an instance of the set cover problem, define a facility set FF whose members each corresponds to a set in 𝒮\mathcal{S}; We let XfX_{f} denote the member of 𝒮\mathcal{S} corresponding to fFf\in F. Define opening costs oo and connection costs dd such that o(f)=c(Xf)o(f)=c(X_{f}), d(v,f)=0d(v,f)=0 if vXfv\in X_{f}, and d(v,f)=+d(v,f)=+\infty otherwise. Then, the instance (V,F,o,d)(V,F,o,d) of the facility location problem is equivalent to the instance (V,𝒮,c)(V,\mathcal{S},c) of the set cover problem, implying that the non-metric facility location problem generalizes the set cover problem.

Theorem 4.

If the EDS problem in node-weighted bipartite graphs admits a γ\gamma-approximation algorithm, then the set cover problem also admits a γ\gamma-approximation algorithm. If the EDS problem in edge- and node-weighted bipartite graphs admits a γ\gamma^{\prime}-approximation algorithm, then the facility location problem also admits a γ\gamma^{\prime}-approximation algorithm.

Proof.

To prove Theorem 4, we reduce the facility location problem to the EDS problem. From a client set VV and facility set FF, we construct the complete bipartite graph with bipartition VV and FF. Moreover, for each vVv\in V, we add a new node vv^{\prime} and an edge eve_{v} that joins vv and vv^{\prime}. Note that this operation retains the bipartite property of the graph. We define edge weights ww such that w(e)=d(v,f)w(e)=d(v,f) for each e=vfe=vf, where vVv\in V and fFf\in F and w(ev)=0w(e_{v})=0 for each vVv\in V. The node weights ww are defined by w(v)=0w(v)=0 and w(v)=+w(v^{\prime})=+\infty for each vVv\in V, and w(f)=c(f)w(f)=c(f) for each fFf\in F.

Let SS be an EDS for this graph. We can assume evSe_{v}\not\in S because w(v)=+w(v^{\prime})=+\infty. Since SS dominates each eve_{v}, SS contains an edge incident to each vVv\in V. Moreover, if SS contains more than one edge incident to vVv\in V, SS remains an EDS if one of these edges is arbitrarily discarded. Hence SS contains exactly one edge incident to vVv\in V, which joins vv and a node fFf\in F. Let ρ(v)\rho(v) be the opposite end node of the edge in SS incident to vv, and let F={ρ(v):vV}F^{\prime}=\{\rho(v)\colon v\in V\}. Then, (F,ρ)(F^{\prime},\rho) is a solution to the facility location problem, with cost equaling the weight of SS. Conversely, given a solution to the facility location problem, define SS as {vρ(v):vV}\{v\rho(v)\colon v\in V\}. Then SS is an EDS of the graph, and the weight of SS equals the cost of the solution to the facility location problem. Hence, the reduction is that required in the latter part of the theorem.

As observed above, the set cover problem corresponds to the instances of the facility location problem with zero connection cost. For these instances, the reduction defines instances of the EDS problem in which all edges are weighted zero. The former part of the theorem follows from this statement. ∎

Without describing the details, we can also show that reductions in the proof of Theorem 4 are applicable (with modification) to fundamental covering problems such as the Steiner tree problem, TT-join problem, and edge cover problem.

A.2 O(log|V|)O(\log|V|)-approximation algorithm

Since it is NP-hard to achieve the o(log|V|)o(\log|V|)-approximation in the set cover problem, by Theorem 4, the same situation exists for the EDS problem in node-weighted bipartite graphs. Here, we propose an O(log|V|)O(\log|V|)-approximation algorithm for the prize-collecting EDS problem in general edge- and node-weighted graphs.

Our algorithm reduces the prize-collecting EDS problem to the edge cover problem. Given an undirected graph G=(V,E)G=(V,E) and a set UU of nodes, we define an edge cover as a set FF of edges such that δF(v)\delta_{F}(v)\neq\emptyset for each vUv\in U. Given w:EV+w\colon E\cup V\rightarrow\mathbb{R}_{+}, the problem seeks an edge cover FF that minimizes w(F)+w(V(F))w(F)+w(V(F)). For an instance I=(G,U,w)I^{\prime}=(G,U,w) of the edge cover problem, we apply the following LP relaxation:

EC(I)=\displaystyle EC(I^{\prime})=
minimize eEw(e)x(e)+vVw(v)x(v)\displaystyle\sum_{e\in E}w(e)x(e)+\sum_{v\in V}w(v)x(v)
subject to eδ(v)x(e)1\displaystyle\sum_{e\in\delta(v)}x(e)\geq 1 for vU,\displaystyle\mbox{for }v\in U,
x(v)x(e)\displaystyle x(v)\geq x(e) for vV,eδ(v),\displaystyle\mbox{for }v\in V,e\in\delta(v),
x(e)0\displaystyle x(e)\geq 0 for eE,\displaystyle\mbox{for }e\in E,
x(v)0\displaystyle x(v)\geq 0 for vV.\displaystyle\mbox{for }v\in V.
Lemma 7.

Suppose that an algorithm computes an edge cover of weight at most γEC(I)\gamma EC(I^{\prime}) for any instance II^{\prime} of the edge cover problem. Then the prize-collecting EDS problem in edge- and node-weighted graphs admits a 4γ4\gamma-approximation algorithm.

Proof.

We first solve P(I)P(I) for the given instance I=(G,w,π)I=(G,w,\pi) of the prize-collecting EDS problem. Let (x,y,z)(x,y,z) be the obtained optimal solution to P(I)P(I). Recall that ={δ(e):eE}\mathcal{E}=\{\delta(e)\colon e\in E\} in the EDS problem; thus we denote y(C,e)y(C,e) and z(C)z(C) by y(e,e)y(e^{\prime},e) and z(e)z(e^{\prime}) respectively, where ee^{\prime} is the edge corresponding to CC\in\mathcal{E}. Let U={vV:eδ(v)x(e)1/4}U=\{v\in V\colon\sum_{e\in\delta(v)}x(e)\geq 1/4\}. An instance II^{\prime} of the edge cover problem is assumed to consist of GG, UU, and ww.

We now prove that EC(I)4(eEw(e)x(e)+vVw(v)x(v))EC(I^{\prime})\leq 4(\sum_{e\in E}w(e)x(e)+\sum_{v\in V}w(v)x(v)). In the following, 4x4x is denoted by xx^{\prime}. Since eδ(v)x(e)1/4\sum_{e\in\delta(v)}x(e)\geq 1/4 for each vUv\in U, eδ(v)x(e)1\sum_{e\in\delta(v)}x^{\prime}(e)\geq 1 for each vUv\in U, implying that xx^{\prime} satisfies the first constraints of EC(I)EC(I^{\prime}). By the minimality of xx, there exists eδ(e)e^{\prime}\in\delta(e) such that x(e)=y(e,e)x(e)=y(e^{\prime},e) for any eEe\in E. The second constraint for vv and ee^{\prime} in P(I)P(I) implies that x(v)=4x(v)4y(e,e)=4x(e)=x(e)x^{\prime}(v)=4x(v)\geq 4y(e^{\prime},e)=4x(e)=x^{\prime}(e) for eEe\in E and an end node vv of ee. Hence, xx^{\prime} satisfies the second constraints of EC(I)EC(I^{\prime}). Therefore, xx^{\prime} is a feasible solution to EC(I)EC(I^{\prime}), and EC(I)EC(I^{\prime}) is at most 4(eEw(e)x(e)+vVw(v)x(v))4(\sum_{e\in E}w(e)x(e)+\sum_{v\in V}w(v)x(v)).

Let FF be an edge cover of weight at most γEC(I)\gamma EC(I^{\prime}) for II^{\prime}. Let D={eE:z(e)1/2}D=\{e\in E\colon z(e)\leq 1/2\}. By the first constraint of P(I)P(I), eδ(e)y(e,e)1/2\sum_{e^{\prime}\in\delta(e)}y(e,e^{\prime})\geq 1/2 for each eDe\in D. Let uu and vv be the end nodes of eDe\in D. Since eδ(e)y(e,e)eδ(u)y(e,e)+eδ(v)y(e,e)eδ(u)x(e)+eδ(v)x(e)\sum_{e^{\prime}\in\delta(e)}y(e,e^{\prime})\leq\sum_{e^{\prime}\in\delta(u)}y(e,e^{\prime})+\sum_{e^{\prime}\in\delta(v)}y(e,e^{\prime})\leq\sum_{e^{\prime}\in\delta(u)}x(e^{\prime})+\sum_{e^{\prime}\in\delta(v)}x(e^{\prime}), at least one of uu and vv is included in UU. Note that each node in UU has some incident edge in FF. Hence, each edge in DD is dominated by FF. Therefore, FF must pay at most eDπ(e)2eEπ(e)z(e)\sum_{e\not\in D}\pi(e)\leq 2\sum_{e\in E}\pi(e)z(e) as the penalty. Summing up, the objective value of FF for II does not exceed

γEC(I)+2eEπ(e)z(e)4γ(eEw(e)x(e)+vVw(v)x(v))+2eEπ(e)z(e)4γP(I).\gamma EC(I^{\prime})+2\sum_{e\in E}\pi(e)z(e)\leq 4\gamma\left(\sum_{e\in E}w(e)x(e)+\sum_{v\in V}w(v)x(v)\right)+2\sum_{e\in E}\pi(e)z(e)\leq 4\gamma P(I).

Since P(I)P(I) is a lower bound on the optimal value of II, FF achieves a 4γ4\gamma-approximation for II. ∎

To obtain an O(log|V|)O(\log|V|)-approximation algorithm for the prize-collecting EDS problem, it suffices to obtain an algorithm for the edge cover problem required in Lemma 7 with γ=O(log|V|)\gamma=O(\log|V|). As a sequel, we observe that such an algorithm indeed exists.

Since each node in UU is included in V(H)V(H) for any edge cover HH, an algorithm that solves instances of w(v)=0w(v)=0 for all vUv\in U is sufficient. Moreover, if GG contains an edge ee joining nodes uu and vv in UU, the instance is transformed into an equivalent instance by inserting a new node ss that subdivides the edge uvuv and setting the new node and edge weights as w(us)=w(sv)=0w(us)=w(sv)=0 and w(s)=w(e)w(s)=w(e). In the obtained instance, UU forms an independent set. Such instances of the edge cover problem are included in the (non-metric) facility location problem. In fact, we may regard UU and VUV\setminus U as the client and facility sets, respectively. The weights of edges between clients and facilities represent connection costs, and the weights of clients indicate opening costs. Each edge in edge covers joins a client and facility and naturally allocates the client to the facility.

Consider an instance of the facility location problem. We define a star as a set comprising a facility fFf\in F, and clients v1,,vkVv_{1},\ldots,v_{k}\in V. The cost of the star is o(f)+i=1kd(vi,f)o(f)+\sum_{i=1}^{k}d(v_{i},f). Let 𝒮\mathcal{S} be the set of all stars. Identifying the star as the subset {v1,,vk}\{v_{1},\ldots,v_{k}\} of VV, the facility location problem can be regarded as the set cover problem with the set VV and family 𝒮\mathcal{S} of subsets of VV. Hence, the greedy algorithm for the set cover problem achieves O(log|V|)O(\log|V|)-approximation for the facility location problem. An analysis of this greedy algorithm [22, 9] has shown that the costs of solutions are bounded by an LP relaxation of the set cover problem (see also [31]). Our LP relaxation EC(I)EC(I^{\prime}) applied to an instance II^{\prime} of the edge cover problem is equivalent to this LP relaxation for the set cover problem derived from II^{\prime}. The runtime of the greedy algorithm is a primary concern, because the size of 𝒮\mathcal{S} in the set cover problem is not bounded by a polynomial of the input size of II^{\prime}. The greedy algorithm can operate in polynomial time for the given instances in the facility location problem and edge cover problem [17]. Therefore, we can state the following theorem.

Theorem 5.

The prize-collecting EDS problem in general edge- and node-weighted graphs admits an O(log|V|)O(\log|V|)-approximation algorithm.