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

Matroid-Constrained Vertex Cover

Chien-Chung Huang
CNRS, DI ENS, École normale supérieure, Université PSL, France
   François Sellier
Université Paris Cité, CNRS, IRIF, Paris, France
Mines Paris, Université PSL, Paris, France
Abstract

In this paper, we introduce the problem of Matroid-Constrained Vertex Cover: given a graph with weights on the edges and a matroid imposed on the vertices, our problem is to choose a subset of vertices that is independent in the matroid, with the objective of maximizing the total weight of covered edges. This problem is a generalization of the much studied max kk-vertex cover problem, in which the matroid is the simple uniform matroid, and it is also a special case of the problem of maximizing a monotone submodular function under a matroid constraint.

In the first part of this work, we give a Fixed-Parameter Tractable Approximation Scheme (FPT-AS) when the given matroid is a partition matroid, a laminar matroid, or a transversal matroid. Precisely, if kk is the rank of the matroid, we obtain (1ε)(1-\varepsilon) approximation using (1ε)O(k)nO(1)\left(\frac{1}{\varepsilon}\right)^{O(k)}n^{O(1)} time for partition and laminar matroids and using (1ε+k)O(k)nO(1)\left(\frac{1}{\varepsilon}+k\right)^{O(k)}n^{O(1)} time for transversal matroids. This extends a result of Manurangsi for uniform matroids [34]. We also show that these ideas can be applied in the context of (single-pass) streaming algorithms. Besides, our FPT-AS introduces a new technique based on matroid union, which may be of independent interest in extremal combinatorics.

In the second part, we consider general matroids. We propose a simple local search algorithm that guarantees 230.66\frac{2}{3}\approx 0.66 approximation. For the more general problem where two matroids are imposed on the vertices and a feasible solution must be a common independent set, we show that a local search algorithm gives a 23(11p+1)\frac{2}{3}\cdot\left(1-\frac{1}{p+1}\right) approximation in nO(p)n^{O(p)} time, for any integer pp. We also provide some evidence to show that with the constraint of one or two matroids, the approximation ratio of 2/32/3 is likely the best possible, using the currently known techniques of local search.

Keywords

Vertex cover, matroid, kernel, local search

Acknowledgements

This work was funded by the grants ANR-19-CE48-0016 and ANR-18-CE40-0025-01 from the French National Research Agency (ANR).

Related version

The first part of the present work has been presented at SWAT 2022 [27].

1 Introduction

The Matroid-Constrained Vertex Cover Problem

Let G=(V,E)G=(V,E) be a graph. A weight w(e)w(e) is associated with each edge eEe\in E. By convention, we set n=|V|n=|V| and m=|E|m=|E|. For a vertex vVv\in V we define δ(v)\delta(v) the set of edges that are incident to vv. The degree of a vertex vVv\in V, denoted deg(v)\deg(v), is the size of δ(v)\delta(v), and we define the weighted degree of a vertex vVv\in V as the sum degw(v)=eδ(v)w(e)\deg_{w}(v)=\sum_{e\in\delta(v)}w(e). For two sets of vertices S,TVS,T\subseteq V in a graph GG, we denote EG(S,T)=eE,eS,eTw(e)E_{G}(S,T)=\sum_{e\in E,e\cap S\neq\emptyset,e\cap T\neq\emptyset}w(e) the sum of the weights of the edges that have at least one endpoint in SS and at least one endpoint in TT. Then EG(S,S)E_{G}(S,S), abbreviated EG(S)E_{G}(S), denotes the sum of the weights of the edges that are covered by SS (i.e. having at least one of its endpoints in SS).

Let =(V,)\mathcal{M}=(V,\mathcal{I}) be a matroid on the ground set VV. Recall that =(V,)\mathcal{M}=(V,\mathcal{I}) is a matroid if the following three conditions hold: (1) \emptyset\in\mathcal{I}, (2) if XYX\subseteq Y\in\mathcal{I}, then XX\in\mathcal{I}, and (3) if X,Y,|Y|>|X|X,Y\in\mathcal{I},|Y|>|X|, there exists an element eY\Xe\in Y\backslash X so that X{e}X\cup\{e\}\in\mathcal{I}. The sets in \mathcal{I} are the independent sets and the rank kk of the matroid \mathcal{M} is defined as maxX|X|\max_{X\in\mathcal{I}}|X|. For more details about matroids, we refer the reader to [41]. In this paper, given a set SVS\subseteq V and vVv\in V, we will denote S{v}S\cup\{v\} by S+vS+v and S\{v}S\backslash\{v\} by SvS-v for conciseness.

The problem that we consider in this paper is to choose an independent set of vertices SS\in\mathcal{I}, with the objective of maximizing EG(S)E_{G}(S), namely, the total weight of the edges covered by SS.

Let us put our problem in a larger picture. When the given matroid \mathcal{M} is a uniform matroid (see below for a formal definition), our problem reduces to the max kk-vertex-cover problem, where we want to choose kk arbitrary vertices so as to maximize the total weight of covered edges. This is a classical problem with a long history: the greedy heuristic is known to give 11/e1-1/e approximation as shown by Hochbaum and Pathria [26]. Ageev and Sviridenko [1] propose an LP-based approach and the technique of pipage rounding to obtain 3/43/4 approximation. Using SDP, Feige and Langberg [15] improve this ratio to 3/4+δ3/4+\delta for some small constant δ>0\delta>0. The current best approximation ratio is 0.920.92, achieved by Manurangsi [34]. For some special cases of the problem, different ratios are also obtained, e.g., see [4, 24, 25]. On the hardness side, to our knowledge, the best inapproximability ratio is due to Austrin and Stankovic [2], which is 0.9290.929.

The max kk-vertex-cover has also been studied through the lens of fixed-parameterized-tractability. Guo et al. [22] show the problem to be W[1]W[1]-hard with kk as parameter, thus showing the unlikelihood of getting an exact solution in FPT time. Nonetheless, Marx [36] shows that it is possible to get a near-optimal solution in FPT time. Precisely, he gives an FPT approximation scheme (FPT-AS), that delivers a (1ε)(1-\varepsilon)-approximate solution in (k/ε)O(k3/ε)nO(1)(k/\varepsilon)^{O(k^{3}/\varepsilon)}n^{O(1)} time. This running time is later improved by Gupta et al. [23] and Manurangsi [34].

Here we recall the definition of an FPT-AS [36]:

Definition 1.

Given a parameter function κ\kappa associating a natural number to each instance xIx\in I of a given problem, a Fixed-Parameter Tractable Approximation Scheme (FPT-AS) is an algorithm that can provide a (1ε)(1-\varepsilon) approximation in f(ε,κ(x))|x|O(1)f(\varepsilon,\kappa(x))\cdot|x|^{O(1)} time.

In our case, the instances are made of a graph and a matroid, and the parameter of an instance is the rank kk of its matroid.

Regarding the more general case of an arbitrary matroid of rank kk, one can obtain 3/43/4 approximation in polynomial time by combining known techniques.111Ageev and Sviridenko [1] show that, for the case of a uniform matroid, the optimal fractional solution xx^{*} of the LP has at least 3/43/4 of the optimal value. They then use the pipage rounding to transform it into an integral solution with value no less than xx^{*}. The same LP approach can be generalized for arbitrary matroids. The optimal fractional solution can be obtained by the Ellipsoid algorithm: even though the linear program to describe the independent sets of an arbitrary matroid may use exponentially many constraints, we can design a separation oracle using an algorithm of Cunningham [13]. What remains is just the pipage rounding with a general matroid—this is already known to be do-able by Calinescu et al. [8]. We thank Pasin Manurangsi for communicating to us this method. This is also a special case of maximizing a submodular function (more precisely, a coverage function) under matroid constraint, for which a 11/e1-1/e approximation can be achieved in polynomial time [7, 20]. In this work, we try to do better than this ratio for some special cases of matroids, in the context of fixed-parameter algorithms. We also show that the ideas developed here can be applied in the streaming setting [39]. In streaming, maximizing a submodular function under a general matroid constraint has received much attention recently [9, 11, 16]. Then we also show how local search can be used to obtain simple algorithms for this problem and what are the limitations of local search algorithms.

FPT-AS for Special Cases of Matroids

Let us recall some definitions. A uniform matroid of rank kk is a matroid where the independent sets are the sets SS of cardinality at most kk. A partition matroid is a matroid where we are given a partition V1,,VrV_{1},\dots,V_{r} of the ground set VV and bounds k1,,krk_{1},\dots,k_{r} such that a set SS is independent if for all 1ir1\leq i\leq r, |SVi|ki|S\cap V_{i}|\leq k_{i}. A laminar matroid is given as a laminar family V1,VrV_{1},\dots V_{r} of VV, i.e. given ViVjV_{i}\neq V_{j}, then either ViVj=V_{i}\cap V_{j}=\emptyset, or ViVjV_{i}\subset V_{j}, or VjViV_{j}\subset V_{i}, along with bounds k1,,krk_{1},\dots,k_{r}; a set SVS\subseteq V is independent if for all 1ir1\leq i\leq r, |SVi|ki|S\cap V_{i}|\leq k_{i}. Finally, a transversal matroid is given in a family V1,,VkVV_{1},\dots,V_{k}\subseteq V, where ViV_{i}s are not necessarily disjoint, and a set S={u1,,ut}S=\{u_{1},\cdots,u_{t}\} is independent if and only if for each element uiu_{i}, there exists a distinct ϕ(i)\phi(i) so that uiVϕ(i)u_{i}\in V_{\phi(i)}. These simple types of matroid have been extensively studied in a large variety of contexts.

A uniform matroid is a special case of a partition matroid, which is again a special case of a laminar or a transversal matroid. However, laminar matroids and transversal matroids are not inclusive of each other [40]. Transversal matroids were introduced in the 60s, by Edmonds and Fulkerson [14] and by Mirsky and Perfect [38]. They unified many results in transversal theory and are generally considered an important class of matroids, e.g., see [43]. Laminar matroids receive much attention recently in the community of theoretical computer science, especially in the context of matroid secretary problem, e.g., see [3, 10, 17, 28, 42]. Our FPT-AS involves these kinds of matroids.

Theorem 2.

For every ε>0\varepsilon>0, we can extract an approximate kernel VVV^{\prime}\subseteq V in polynomial time so that a (1ε)(1-\varepsilon)-approximate solution is contained in VV^{\prime}. The size of the kernel VV^{\prime} depends on the type of the given matroid \mathcal{M}.

  1. (i)

    |V|kε|V^{\prime}|\leq\frac{k}{\varepsilon} when \mathcal{M} is a partition matroid;

  2. (ii)

    |V|2kε|V^{\prime}|\leq\frac{2k}{\varepsilon} when \mathcal{M} is a laminar matroid;

  3. (iii)

    |V|kε+k(k1)|V^{\prime}|\leq\frac{k}{\varepsilon}+k(k-1) when \mathcal{M} is a transversal matroid.

Furthermore, by a brute force enumeration, we can find the desired (1ε)(1-\varepsilon) approximation in (1ε)O(k)nO(1)\left(\frac{1}{\varepsilon}\right)^{O(k)}n^{O(1)} time for partition and laminar matroids and (1ε+k)O(k)nO(1)\left(\frac{1}{\varepsilon}+k\right)^{O(k)}n^{O(1)} time for transversal matroids.

Note that the result for transversal matroids has since been improved in [29] to get a kernel of size kε\frac{k}{\varepsilon}. Besides, by a straightforward modification of our proofs in Section 2 (see Appendix A), we can show the following corollary.

Corollary 3.

Suppose that we are given a hypergraph G=(V,E)G=(V,E) with edge size bounded by a constant η2\eta\geq 2. We can compute a (1(η1)ε)(1-(\eta-1)\cdot\varepsilon) approximation using (1ε)O(k)nO(1)\left(\frac{1}{\varepsilon}\right)^{O(k)}n^{O(1)} time for partition and laminar matroids and (1ε+k)O(k)nO(1)\left(\frac{1}{\varepsilon}+k\right)^{O(k)}n^{O(1)} time for transversal matroids.

Put slightly differently, when GG is a hypergraph with edge size at most η\eta, we can obtain a (1ε)(1-\varepsilon) approximation in (ηε)O(k)nO(1)\left(\frac{\eta}{\varepsilon}\right)^{O(k)}n^{O(1)} or (ηε+k)O(k)nO(1)\left(\frac{\eta}{\varepsilon}+k\right)^{O(k)}n^{O(1)} time, depending on the type of matroid. To see the interest of this corollary, we recall that recently Manurangsi [35] showed that if η\eta is unbounded, one cannot obtain an approximation ratio better than 11/e+ε1-1/e+\varepsilon, assuming GAP-ETH, in FPT time (where the matroid rank kk is the parameter). This result holds even for the simplest uniform matroid. Thus Corollary 3 implies that one can circumvent this lower bound by introducing another parameter η\eta, even for more general matroids.

Our algorithm is inspired by that of Manurangsi [34] for the case of uniform matroid. So let us briefly summarize his approach: an approximate kernel222In the rest of the paper, we will just say kernel, dropping the adjective. Roughly speaking, a (1ε)(1-\varepsilon)-approximate kernel is a kernel which contains a (1ε)(1-\varepsilon)-approximate solution of the original problem. The interest for this kind of kernel has risen recently [18, 33]. VV^{\prime} is first extracted from VV, where VV^{\prime} is simply made of the k/εk/\varepsilon vertices with the largest weighted degrees. Let OO be an optimal solution. Apparently, a vertex of OO is either part of the kernel VV^{\prime}, or its weighted degree is dominated by all vertices in V\OV^{\prime}\backslash O. To recover the optimal value, we can potentially use the vertices in V\OV^{\prime}\backslash O to replace the vertices in O\VO\backslash V^{\prime}. However, there is a risk in doing this: an edge among the vertices in V\OV^{\prime}\backslash O can be double-counted, if both of its endpoints are chosen to replace the vertices in O\VO\backslash V^{\prime}. To circumvent this issue, Manurangsi uses a random sampling argument to show that in expectation such double counting is negligible. Therefore, by the averaging principle, there exists a (1ε)(1-\varepsilon)-approximate solution in the kernel VV^{\prime}, which can be found using brute force.

To generalize the approach of Manurangsi for more general matroids, one has to answer the quintessential question: how does one guarantee that the sampled vertices, along with OVO\cap V^{\prime}, are independent in \mathcal{M}? To overcome this difficulty, we introduce a new technique. We take the union of some number τ\tau of matroids \mathcal{M}. Such a union is still a matroid, which we denote as τ\tau\mathcal{M}. We then apply a greedy algorithm on τ\tau\mathcal{M} (based on non-increasing weighted degrees) to construct an independent set VV^{\prime} in τ\tau\mathcal{M}. We show that such a set VV^{\prime} is “robust” (see Definition 6) in the sense that we can sample vertices from VV^{\prime} so that they, along with OVO\cap V^{\prime}, are always independent and in expectation cover edges of weight at least (1ε)(1-\varepsilon) times that of OO.

We note that the value of τ\tau automatically gives an upper bound on the kernel size VV^{\prime}, which is τk\tau k. Theorem 8 shows the required scale of τ\tau, depending on the type of the given matroid. We leave as an open question whether, for matroids more general than considered in the paper, a larger τ\tau can always yield the kernel.

In Section 4 we consider the problem in the semi-streaming model [39]. In that context, the edges in EE arrive over time but we have only limited space (for instance, O(npolylog(n))=o(m)O(n\cdot polylog(n))=o(m)) and cannot afford to store all edges in EE. In this context we can also obtain a (1ε)(1-\varepsilon) approximation using O(nkε)O(\frac{nk}{\varepsilon}) space in a single pass.333Here we assume that the matroid is given in the form of an oracle, which can be accessed by the algorithm freely—this is a standard assumption in the streaming setting when matroids are involved. The idea of using (parameterized) kernels for streaming algorithms has recently been introduced, for instance in [12, 37]. We also show that an FPT-streaming algorithm can be derived from our ideas to get a (1ε)(1-\varepsilon) approximation for a special form of maximization of a coverage function with bounded frequency (see Theorem 16, Remark 17 and Appendix B for details).

Local Search for General Matroids

In the second part of the paper, we consider general matroids. As mentioned above, we aim for a ratio better than 11/e1-1/e. Combining known techniques involving LP, 3/43/4 approximation can be achieved in polynomial time, as we mentioned earlier. However, the aforementioned LP-based approach involves quite heavy machinery, and is likely to be slow and hard to implement. Here we seek for simple approaches. A natural candidate is the local search technique. However, if we try to optimize according to the original objective function EG(S)E_{G}(S) (in the literature, this is called oblivious local search [19]), we show in Appendix C that one cannot achieve better than 1/21/2 approximation, even if we allow large exchanges.

What we do is an adaptation of a technique of Filmus and Ward [19], originally designed for a general coverage function. Their idea is to optimize a special potential function, which takes the form of a linear sum of the covered elements, but with the modification that elements covered multiple times have larger coefficients.

Theorem 4.

Given a general matroid \mathcal{M} as constraint, we can obtain:

  1. (i)

    A 2/3O(kε)2/3-O(k\varepsilon) approximation algorithm using O(mkε)O\left(\frac{mk}{\varepsilon}\right) arithmetic operations and O(nkε)O\left(\frac{nk}{\varepsilon}\right) matroid oracle calls.

  2. (ii)

    A 2/32/3 approximation algorithm using O(nmk3)O(nmk^{3}) arithmetic operations and O(n2k3)O(n^{2}k^{3}) matroid oracle calls.

See Section 5.1 for this result. Here we have fast running time thanks to the fact that small exchanges (of 1 element) are enough to establish the desired ratio. In Section 5.2, we show that by a slight modification, we can improve the approximation ratio to 3/43/4 in FPT time–precisely, in O(k!nO(1))O(k!\cdot n^{O(1)}) time. Thus if k=O(logn/loglogn)k=O(\log n/\log\log n), we still use only polynomial time.

We next consider the more general case where two matroids are imposed on the graph vertices. A solution is feasible only if it is a common independent set in both matroids.

Theorem 5.

Given two general matroids 1\mathcal{M}_{1} and 2\mathcal{M}_{2} as constraints, we can obtain 23(11p+1)\frac{2}{3}\cdot(1-\frac{1}{p+1}) approximation, using nO(p)n^{O(p)} arithmetic operations and matroid oracle calls.

This result is presented in Section 5. To see the interest of Theorem 5, observe that it implies that when the submodular function is a coverage function of frequency 2, we can obtain an approximation ratio significantly better than 1/2ε1/2-\varepsilon [6, 31], which is known for a general submodular function, under the constraint of two matroids. The only other special case where this ratio is improved upon that we are aware of, is when the submodular function is a weighted rank function [32], where the ratio of exactly 1/21/2 is attained.

Our main tool is a characterization theorem of Lee et al. [31] based on a certain exchange graph [41, Section 41.2], originally used for matroid intersection. The much higher running time is due to the fact that here we are obliged to use larger exchanges (of up to θ(p)\theta(p) elements).

Some Remarks on Local Search

Considering the closeness of the approximation ratios with regard to one or two matroids, it is tempting to ask if one can do better than 2/32/3 if there is just one matroid—maybe by trying larger exchanges.

We show in Section 5.3 that using the same type of potential functions [19] (linear sum with modified coefficients based on the number of times an edge is covered), 2/32/3 approximation is the best possible even if we allow larger O(1)O(1) exchanges.

Besides, another naturally related question is whether one can do better when the graphs are simpler, for instance, when the vertex degree is bounded by some constant dd. Again we show in Section 5.3 that the same type of potential functions cannot achieve better than 2/3+θ(1/d)2/3+\theta(1/d) approximation, even if large exchanges are allowed.

These examples seem to indicate a certain limitation on the power of currently known local search techniques. Other than the approach of [19, 21], we are unaware of any other type of local search for coverage (or general submodular) functions. To do better than 2/32/3 (say up to 3/43/4), a significantly different new idea may be required.

2 Kernelization Framework

In this section, we give a general framework to construct the kernel by a greedy procedure and show how such a kernel contains a (1ε)(1-\varepsilon)-approximate solution.

Definition 6.

Let =(V,)\mathcal{M}=(V,\mathcal{I}) be a matroid with weights ω:V+\omega:V\rightarrow\mathbb{R}^{+}. We say VVV^{\prime}\subseteq V is tt-robust if given any base OO\in\mathcal{I}, there is a bijection from the elements u1,,urO\Vu_{1},\cdots,u_{r}\in O\backslash V^{\prime} to subsets Uu1,,UurV\OU_{u_{1}},\cdots,U_{u_{r}}\subseteq V^{\prime}\backslash O so that

  1. (i)

    the UuiU_{u_{i}}s are mutually disjoint and |Uui|=t|U_{u_{i}}|=t,

  2. (ii)

    all elements in UuiU_{u_{i}} have weights no less than uiu_{i},

  3. (iii)

    by taking an arbitrary element uiUuiu^{\prime}_{i}\in U_{u_{i}} for all ii, (VO){ui}i=1r(V^{\prime}\cap O)\cup\{u^{\prime}_{i}\}_{i=1}^{r} is a base in \mathcal{M}.

OOOinO^{in}Oout:O^{out}:u1u_{1}\cdotsuru_{r}V:V^{\prime}:Uu1:U_{u_{1}}:v1v_{1}v2v_{2}v3v_{3}\cdotsUur:U_{u_{r}}:v7v_{7}v8v_{8}v9v_{9}v10v_{10}v11v_{11}v12v_{12}\cdots
Figure 1: Representation a robust decomposition, for t=3t=3, with Oin=VOO^{in}=V^{\prime}\cap O and Oout=O\OinO^{out}=O\backslash O^{in}. We have that (i) the UuiU_{u_{i}}s are disjoint, (ii)  1ir,vUui,ω(ui)ω(v)\forall\,1\leq i\leq r,\forall\,v\in U_{u_{i}},\omega(u_{i})\leq\omega(v), and (iii) taking an arbitrary element uiUuiu^{\prime}_{i}\in U_{u_{i}} for all ii, (VO){ui}i=1r(V^{\prime}\cap O)\cup\{u^{\prime}_{i}\}_{i=1}^{r} is independent in \mathcal{M}.

We next recall the definition of matroid union.

Definition 7.

Suppose that =(V,)\mathcal{M}=(V,\mathcal{I}) is a matroid. Then we can define τ=(V,τ)\tau\mathcal{M}=(V,\mathcal{I}_{\tau}) as the union of τ\tau matroids \mathcal{M}, as follows: SτS\in\mathcal{I}_{\tau} if SS can be partitioned into S1SτS_{1}\cup\cdots\cup S_{\tau} so that each SiS_{i}\in\mathcal{I}.

Recall that the union of matroids is still a matroid and here the rank of τ\tau\mathcal{M} is at most τ\tau times the rank of \mathcal{M}, e.g., see [41, Chapter 42]. We can now state our main theorem.

Theorem 8.

Let =(V,)\mathcal{M}=(V,\mathcal{I}) be a matroid with weights ω:V+\omega:V\rightarrow\mathbb{R}^{+} and rank kk. Consider the following greedy procedure on τ=(V,τ)\tau\mathcal{M}=(V,\mathcal{I}_{\tau}) to construct VV^{\prime}: initially V=V^{\prime}=\emptyset. Process the elements in VV by non-increasing weights ω\omega. For each element uu, if V+uτV^{\prime}+u\in\mathcal{I}_{\tau}, add uu into VV^{\prime}, otherwise, ignore it. The final VV^{\prime} is tt-robust

  1. (i)

    if \mathcal{M} is a partition matroid and τt\tau\geq t,

  2. (ii)

    if \mathcal{M} is a laminar matroid and τ2t\tau\geq 2t,

  3. (iii)

    if \mathcal{M} is a transversal matroid and τt+k1\tau\geq t+k-1.

Notice that the rank of the matroid τ\tau\mathcal{M} gives an upper-bound on the size of VV^{\prime}. The next section will give the proof of this theorem for each type of matroid considered. In the following we show how it can be used to construct the (1ε)(1-\varepsilon) approximation.

Let the weight ω:V+\omega:V\rightarrow\mathbb{R}^{+} be the weighted degrees in the graph G=(V,E)G=(V,E), that is, ω(u)=degw(u)\omega(u)=\deg_{w}(u). Apply Theorem 8 by setting t=1εt=\frac{1}{\varepsilon}. Then VV^{\prime} is 1ε\frac{1}{\varepsilon}-robust. Note that we suppose that 1ε\frac{1}{\varepsilon} is an integer, otherwise we could take t=1εt=\lceil\frac{1}{\varepsilon}\rceil.

Based on VV^{\prime}, we create a new graph G=(V,E)G^{\prime}=(V^{\prime},E^{\prime}), where an original edge e={u,v}e=\{u,v\} is retained in EE^{\prime} if both of its endpoints are in VV^{\prime}. In case only one endpoint, say uu is in VV^{\prime}, we add a self-loop to uu in EE^{\prime} to represent this edge.

Lemma 9.

Suppose that VV^{\prime} is the constructed set that is 1ε\frac{1}{\varepsilon}-robust. Then VV^{\prime} contains a set SS such that SS\in\mathcal{I} and EG(S)(1ε)EG(O)E_{G}(S)\geq(1-\varepsilon)\cdot E_{G}(O) where OO denotes an optimal solution of the problem.

Proof.

Let OO\in\mathcal{I} be an optimal solution. We denote Oin=OVO^{in}=O\cap V^{\prime}, Oout=O\OinO^{out}=O\backslash O^{in}. Then by 1ε\frac{1}{\varepsilon}-robustness, we have mutually disjoint sets UvV\OU_{v}\subseteq V^{\prime}\backslash O for each vOoutv\in O^{out}, each of size 1ε\frac{1}{\varepsilon}. We set U=vOoutUvU=\cup_{v\in O^{out}}U_{v}. We construct a set SVS\subseteq V^{\prime} as follows: SS is initialized as OinO^{in}. Then from each set UvU_{v}, for all vOoutv\in O^{out}, pick an element at random and add it into SS. By definition of 1ε\frac{1}{\varepsilon}-robustness, SS is independent in \mathcal{M}.

Next we will show that

𝔼[EG(S)](1ε)𝔼[EG(O)].\mathbb{E}[E_{G}(S)]\geq(1-\varepsilon)\cdot\mathbb{E}[E_{G}(O)].

Let U=S\OinU^{*}=S\backslash O^{in}, i.e. those elements that are added into SS randomly. First, we have that:

EG(S)=EG(Oin)+EG(U)EG(Oin,U).E_{G}(S)=E_{G}(O^{in})+E_{G}(U^{*})-E_{G}(O^{in},U^{*}).

We bound 𝔼[EG(Oin,U)]\mathbb{E}[E_{G}(O^{in},U^{*})] as follows. By construction, [uU]=ε\mathbb{P}[u\in U^{*}]=\varepsilon for all uUu\in U. Then,

𝔼[EG(Oin,U)]=uUvOinw({u,v})[uU]=εuUvOinw({u,v})εEG(Oin).\mathbb{E}[E_{G}(O^{in},U^{*})]=\sum_{u\in U}\sum_{v\in O^{in}}w(\{u,v\})\cdot\mathbb{P}[u\in U^{*}]=\varepsilon\sum_{u\in U}\sum_{v\in O^{in}}w(\{u,v\})\leq\varepsilon\cdot E_{G}(O^{in}).

Furthermore, the value 𝔼[EG(U)]\mathbb{E}[E_{G}(U^{*})] can be rearranged as follows:

𝔼[EG(U)]\displaystyle\mathbb{E}[E_{G}(U^{*})] =𝔼[uU(degw(u)12vU\{u}w({u,v}))]\displaystyle=\mathbb{E}\left[\sum_{u\in U^{*}}\left(\deg_{w}(u)-\frac{1}{2}\sum_{v\in U^{*}\backslash\{u\}}w(\{u,v\})\right)\right]
=\displaystyle= uU(degw(u)[uU]12vU\{u}w({u,v})[uUvU])\displaystyle\,\sum_{u\in U}\left(\deg_{w}(u)\cdot\mathbb{P}[u\in U^{*}]-\frac{1}{2}\sum_{v\in U\backslash\{u\}}w(\{u,v\})\cdot\mathbb{P}[u\in U^{*}\wedge v\in U^{*}]\right)
\displaystyle\geq uU(degw(u)ε12vU\{u}w({u,v})ε2)ε(1ε/2)(uUdegw(u)),\displaystyle\,\sum_{u\in U}\left(\deg_{w}(u)\cdot\varepsilon-\frac{1}{2}\sum_{v\in U\backslash\{u\}}w(\{u,v\})\cdot\varepsilon^{2}\right)\geq\varepsilon\cdot(1-\varepsilon/2)\left(\sum_{u\in U}\deg_{w}(u)\right),

where the first inequality comes from the fact that [uUvU][uU][vU]\mathbb{P}[u\in U^{*}\wedge v\in U^{*}]\leq\mathbb{P}[u\in U^{*}]\cdot\mathbb{P}[v\in U^{*}].

Recall that by robustness, for all uOoutu\in O^{out}, the elements of UuU_{u} have weighted degrees no less than that of uu. Therefore,

𝔼[EG(U)]ε(1ε/2)(uOoutvUudegw(v))\displaystyle\mathbb{E}[E_{G}(U^{*})]\geq\varepsilon\cdot(1-\varepsilon/2)\left(\sum_{u\in O^{out}}\sum_{v\in U_{u}}\deg_{w}(v)\right) ε(1ε/2)(uOout1εdegw(u))\displaystyle\geq\varepsilon\cdot(1-\varepsilon/2)\left(\sum_{u\in O^{out}}\frac{1}{\varepsilon}\cdot\deg_{w}(u)\right)
(1ε/2)EG(Oout).\displaystyle\geq(1-\varepsilon/2)\cdot E_{G}(O^{out}).

As a result, we get:

𝔼[EG(S)]EG(Oin)+(1ε/2)EG(Oout)εEG(Oin)(1ε)EG(O).\mathbb{E}[E_{G}(S)]\geq E_{G}(O^{in})+(1-\varepsilon/2)\cdot E_{G}(O^{out})-\varepsilon\cdot E_{G}(O^{in})\geq(1-\varepsilon)\cdot E_{G}(O).

By averaging principle, there exists SVS\subseteq V^{\prime} such that SS\in\mathcal{I} and EG(S)(1ε)EG(O)E_{G}(S)\geq(1-\varepsilon)\cdot E_{G}(O). ∎

3 Proof of Theorem 8

3.1 Partition Matroids

Consider a partition matroid =(V,)\mathcal{M}=(V,\mathcal{I}) defined by a partition V1,,VrV_{1},\dots,V_{r} of VV and bounds k1,,krk_{1},\dots,k_{r}. Given tt\in\mathbb{N}, we take in each set ViV_{i} of the partition the min{|Vi|,tki}\min\{|V_{i}|,t\cdot k_{i}\} elements having the largest weighted degrees. We denote these extracted sets as ViV_{i}^{\prime} and their union as VV^{\prime}. Clearly, this is the same as the greedy algorithm stated in Theorem 8 applied on tt\mathcal{M}.

To see that VV^{\prime} is tt-robust, let OO\in\mathcal{I} be a base. We denote Oin=OVO^{in}=O\cap V^{\prime}, Oout=O\OinO^{out}=O\backslash O^{in}, Oi=OViO_{i}=O\cap V_{i}, Oiin=OViO_{i}^{in}=O\cap V^{\prime}_{i}, Oiout=Oi\OiinO_{i}^{out}=O_{i}\backslash O_{i}^{in}, and we set U¯iVi\Oiin\overline{U}_{i}\subseteq V^{\prime}_{i}\backslash O^{in}_{i} as an arbitrary subset of cardinality t|Oiout|t\cdot|O^{out}_{i}|, for 1ir1\leq i\leq r (it is possible as OiOiinO_{i}\neq O_{i}^{in} implies that |Vi|=tki|V^{\prime}_{i}|=t\cdot k_{i}). We then partition U¯i\overline{U}_{i} into Ui1U^{1}_{i}, \dots, Ui|Oiout|U^{|O^{out}_{i}|}_{i}, each one of size tt. It is easy to verify that the generated sets {Uij}i,j\{U^{j}_{i}\}_{i,j} satisfy the three conditions stated in Definition 6.

3.2 Laminar Matroids

Recall that a laminar matroid =(V,)\mathcal{M}=(V,\mathcal{I}) is given as a laminar family V1,,VrV_{1},\dots,V_{r} along with bounds k1,,krk_{1},\dots,k_{r}. Without loss of generality, we can assume that V=V0V=V_{0} with bound k0=kk_{0}=k (being the rank of \mathcal{M}) is a member in the family. Furthermore, we can also assume that each vertex vVv\in V by itself is also a member Vi={v}V_{i}=\{v\} with bound ki=1k_{i}=1 in this family.

Such a laminar matroid \mathcal{M} can be naturally associated with a laminar tree TT where each tree node Ti=(Vi,ki)T_{i}=(V_{i},k_{i}) corresponds to ViV_{i}, and the structure of the tree reflects the inclusion relationship of the members ViV_{i} in the laminar family. In such a tree T0=(V,k)T_{0}=(V,k) corresponds to the root of the tree.

For ease of our study, we will assume that such a tree TT is binary (so in total TT contains 2n12n-1 nodes, with n=|V|n=|V|). Such an assumption can be easily justified by adding more sets ViV_{i} into the laminar family with the appropriately defined bounds kik_{i}.

In the following, the elements of {Ti=(Vi,ki)}0i2n2\{T_{i}=(V_{i},k_{i})\}_{0\leq i\leq 2n-2} will be referred as “nodes”, whereas the elements of VV will be referred as “vertices”. We are given tt\in\mathbb{N}. To choose the vertices that are to be added into the kernel, we employ the following greedy procedure. We process the vertices in non-increasing order with respect to their weighted degrees. At the beginning, VV^{\prime} is empty. When we consider a new vertex vv, if for all ii such that vViv\in V_{i}, we have |VVi|<2tki|V^{\prime}\cap V_{i}|<2t\cdot k_{i}, then vv is added to VV^{\prime}, otherwise vv is simply ignored. This procedure is equivalent to the greedy algorithm described in Theorem 8 applied on 2t2t\mathcal{M}.

A node TjT_{j} of the tree {Ti=(Vi,ki)}0i2n2\{T_{i}=(V_{i},k_{i})\}_{0\leq i\leq 2n-2} is called saturated if |VVj|=2tkj|V^{\prime}\cap V_{j}|=2t\cdot k_{j}. Let OO be an arbitrary solution. As in the previous subsection we will use the notations Vi=ViVV^{\prime}_{i}=V_{i}\cap V^{\prime}, Oin=VOO^{in}=V^{\prime}\cap O, and Oout=O\VO^{out}=O\backslash V^{\prime}. In the following, we say that a vertex or a set of vertices is “contained” in a tree node TiT_{i} if they are part of ViV^{\prime}_{i} (equivalently, the leaves corresponding to these elements of VV^{\prime} are in the subtree of root TiT_{i}).

For every element vVv\in V, there exists a leaf TivT_{i_{v}} in the laminar tree such that Viv={v}V_{i_{v}}=\{v\}, and we have a unique path from the root T0T_{0} to TivT_{i_{v}}. If a vertex vOv\in O is not in VV^{\prime}, it means that some node along the path from T0T_{0} to TivT_{i_{v}} was already saturated when vv was processed: the blocking node of vv is the deepest saturated node along this path (see Figure 2). For each node TiT_{i}, we denote by BiB_{i} the set of vertices of OO that are blocked by the node TiT_{i}, and we set bi=|Bi|b_{i}=|B_{i}|. Then, bi=0b_{i}=0 when TiT_{i} is not saturated. Moreover, the BiB_{i}s are mutually disjoint and Bi=Oout\bigcup B_{i}=O^{out}.

T0T_{0}T1T_{1}T2T_{2}T3T_{3}\cdotsuu|VV1|=k1τ|V^{\prime}\cap V_{1}|=k_{1}\cdot\tau|VV3|<k3τ|V^{\prime}\cap V_{3}|<k_{3}\cdot\tau
Figure 2: The node T1T_{1} is the deepest in the tree blocking uu (preventing it to be in the kernel).

Then for each vertex vOoutv\in O^{out}, we construct a set U¯v\overline{U}_{v} of at least tt vertices drawn from VV^{\prime}. Then an arbitrary subset UvU¯vU_{v}\subseteq\overline{U}_{v} of tt vertices is retained. We will argue that the generated sets UvU_{v}s ensure the robustness.

Constructing the sets U¯v\overline{U}_{v}s for all vOoutv\in O^{out}

We want the constructed sets U¯v\overline{U}_{v}s to satisfy the following three properties.

  1. (i)

    The sets U¯v\overline{U}_{v}s are mutually disjoint and are drawn from V\OinV^{\prime}\backslash O^{in}.

  2. (ii)

    For each vOoutv\in O^{out} and each uU¯vu\in\overline{U}_{v}, degw(u)degw(v)\deg_{w}(u)\geq\deg_{w}(v).

  3. (iii)

    Choosing an arbitrary v¯U¯v\overline{v}\in\overline{U}_{v} for each vOoutv\in O^{out}, the set S=Oin{v¯}vOoutS=O^{in}\cup\{\overline{v}\}_{v\in O^{out}} is independent in the laminar matroid \mathcal{M}.

The formal algorithm for constructing the sets {U¯v}vOout\{\overline{U}_{v}\}_{v\in O^{out}} is given in Algorithm 1. Here we give the intuition behind it.

To guarantee Property (i), we first mark all elements in OinO^{in} as unusable. Then, each U¯v\overline{U}_{v} is chosen among the usable vertices. Once a set U¯v\overline{U}_{v} is allocated, all its vertices will be marked as unusable.

To guarantee Property (ii), first recall that each vertex vOoutv\in O^{out} has a corresponding blocking node TiT_{i} (and vBiv\in B_{i}). By our greedy procedure to build the kernel VV^{\prime}, we know that there exist 2tki2t\cdot k_{i} vertices uu in the set ViV^{\prime}_{i}, all of whom are contained in TiT_{i} and degw(u)degw(v)\deg_{w}(u)\geq\deg_{w}(v). What we do is to choose a deepest blocking node TiT_{i} and to process one of its vertex vBiv\in B_{i} (Lines 6-7). As we will show later (Claim 12), such a blocking node must contain at least 2t2t usable vertices. We climb down the tree from the blocking node TiT_{i} until we reach a node TjT_{j} neither of whose child nodes contains more than tt usable vertices (Lines 9-10). Recall that our tree is binary, as a result, the number of usable vertices contained in TjT_{j} is between tt and 2t22t-2. All these usable vertices constitute a new set U¯v\overline{U}_{v} and then are marked as unusable.

How to guarantee Property (iii) is the most tricky part of the algorithm. Recall that we will choose an arbitrary vertex from U¯v\overline{U}_{v} to construct a solution SS stated in (iii). Apparently we have no control over the choice of the arbitrary vertex from U¯v\overline{U}_{v}, nonetheless, we need to ensure that SS does not violate any of the rank constraints kik_{i}. What we do is to associate a variable sis_{i} with each tree node TiT_{i}. This variable indicates how many vertices contained in TiT_{i} will certainly be part of SS, according to OinO^{in} and the sets U¯v\overline{U}_{v}s that have been constructed so far. Once sis_{i} is set to kik_{i}, it is a warning that we should not use any more remaining usable vertices contained in TiT_{i} to construct the future sets U¯v\overline{U}_{v}.

Initially, si=|ViOin|s_{i}=|V^{\prime}_{i}\cap O^{in}|. Each time that we have decided on a tree node TjT_{j} to form a new set UvU_{v} (Lines 9-12), we increase the value of sjs_{j} from TjT_{j} all the way up to the root (Lines 13-14). If any node TjT_{j} has its variable sj=kjs_{j}=k_{j}, we say such a node is fully-booked and we mark all its (remaining) usable vertices as unusable (Lines 15-16).

Algorithm 1 Algorithm constructing the sets U¯v\overline{U}_{v}
1:vO\V,U¯v\forall v\in O\backslash V^{\prime},\,\overline{U}_{v}\leftarrow\emptyset
2:1i2n2,si|ViOin|\forall 1\leq i\leq 2n-2,\,s_{i}\leftarrow|V^{\prime}_{i}\cap O^{in}|
3:the elements of V\OinV^{\prime}\backslash O^{in} are marked as usable
4:the elements of OinO^{in} are marked as unusable
5:while there exists a set BiB_{i} which is not empty do
6:  let TiT_{i} be one of the deepest nodes such that BiB_{i}\neq\emptyset
7:  let vBiv\in B_{i} be an arbitrary vertex
8:  BiBivB_{i}\leftarrow B_{i}-v
9:  while TiT_{i} has a child TjT_{j} containing at least tt usable vertices in VjV^{\prime}_{j} do
10:   iji\leftarrow j   
11:  set U¯v\overline{U}_{v} as the set of usable elements in ViV^{\prime}_{i}
12:  mark all the elements of U¯v\overline{U}_{v} as unusable
13:  for all nodes TjT_{j} on the path from TiT_{i} to the root of the tree do
14:   sjsj+1s_{j}\leftarrow s_{j}+1
15:   if sj=kjs_{j}=k_{j} then \triangleright in that case, we say that TjT_{j} is fully-booked
16:     mark all the elements of VjV^{\prime}_{j} as unusable      

We want to show that Algorithm 1 manages to build the sets U¯v\overline{U}_{v}s of size at least tt satisfying the aforementioned properties.

Claim 10.

At any time during the execution of Algorithm 1, for a saturated node TiT_{i} that is not a descendant of a fully-booked node (no node above it is fully-booked), the number of usable vertices in ViV^{\prime}_{i} is at least 2t(kisi)2t\cdot(k_{i}-s_{i}).

Proof.

As TiT_{i} is saturated, ViV^{\prime}_{i} contains exactly 2tki2t\cdot k_{i} vertices. The unusable vertices in ViV^{\prime}_{i} fall into three categories:

  1. (i)

    the vertices in ViOinV^{\prime}_{i}\cap O^{in} (see Line 4), but that are not contained in any fully booked descendent node of TiT_{i},

  2. (ii)

    the vertices made unusable during the allocation of a set U¯v\overline{U}_{v} (see Line 12), but that are not contained in any fully booked descendent node of TiT_{i},

  3. (iii)

    the vertices that are contained in a fully-booked descendent node of TiT_{i} (see Line 16).

The vertices v1,,vl1v_{1},\dots,v_{l_{1}} in the first category each has a contribution of +1+1 in the value of sis_{i}. Then, we can observe that an allocated set U¯v\overline{U}_{v} is either entirely contained in a fully-booked node or has no element at all in any fully-booked node. Let us denote U¯v1,,U¯vl2\overline{U}_{v_{1}},\dots,\overline{U}_{v_{l_{2}}} the allocated sets contained in TiT_{i} that are not contained in any fully-booked node. In addition, by construction, each set U¯vj\overline{U}_{v_{j}} contains at most 2t22t-2 vertices (otherwise we would be able to go deeper in the binary tree for the allocation, see Lines 9-10, because at least one child would contain at least tt usable elements). Each set U¯vj\overline{U}_{v_{j}} has a contribution of +1+1 in the value of sis_{i}. Finally, among the fully-booked nodes in the subtree of root TiT_{i}, we consider the nodes Ti1,,Til3T_{i_{1}},\dots,T_{i_{l_{3}}} that are inclusion-wise maximal (i.e. the roots of the fully-booked parts of the subtree). A fully-booked subtree of root TjT_{j} has to bring a +kj+k_{j} contribution to sis_{i} (otherwise it would not be fully-booked, and observe that a set U¯v\overline{U}_{v} is included in at most one such fully-booked maximal node), and is making at most 2tkj2t\cdot k_{j} vertices of ViV^{\prime}_{i} unusable (the worst case being that TjT_{j} was also a saturated node). We also have the equality si=l1+l2+j=1l3kijs_{i}=l_{1}+l_{2}+\sum_{j=1}^{l_{3}}k_{i_{j}}. As a result, we have at most l1+(2t2)l2+j=1l32tkij2tsil_{1}+(2t-2)\cdot l_{2}+\sum_{j=1}^{l_{3}}2t\cdot k_{i_{j}}\leq 2t\cdot s_{i} unusable vertices in ViV^{\prime}_{i}. ∎

Claim 11.

At any time during the execution of the algorithm, for all i1,2n2i\in\llbracket 1,2n-2\rrbracket, we have kisi+bi+Tj below Tibjk_{i}\geq s_{i}+b_{i}+\sum_{\text{$T_{j}$ below $T_{i}$}}b_{j} as an invariant.

Proof.

As OO\in\mathcal{I}, these inequalities hold at the beginning of Algorithm 1. To see this, note that si=|ViOin|s_{i}=|V_{i}\cap O^{in}| and bi+Tj below Tibj|ViOout|b_{i}+\sum_{\text{$T_{j}$ below $T_{i}$}}b_{j}\leq|V_{i}\cap O^{out}|. For the induction step, observe that Line 6 guarantees that the node TiT_{i} selected is the only one with a non-zero bib_{i} value in the subtree of root TiT_{i}. As a result, when the set U¯v\overline{U}_{v} is allocated, for the nodes TjT_{j} between TiT_{i} and the allocated node, the augmentation by one of the values ss is not an issue because these nodes are chosen to be non-fully-booked, i.e. kj>sjk_{j}>s_{j}. For each node TjT_{j} above TiT_{i}, the value sjs_{j} is increased by one but as bib_{i} was decreased by one, the total value sj+bj+Tj below Tjbjs_{j}+b_{j}+\sum_{\text{$T_{j^{\prime}}$ below $T_{j}$}}b_{j^{\prime}} remains unchanged. ∎

Claim 12.

If BiB_{i}\neq\emptyset, TiT_{i} contains at least 2t2t usable vertices. Consequently, Algorithm 1 (Lines 6-11) always builds the set U¯v\overline{U}_{v} of size at least tt.

Proof.

In fact, as BiB_{i}\neq\emptyset, bib_{i} is still non-zero, and by Claim 11 we get kisibik_{i}-s_{i}\geq b_{i}, so ViV^{\prime}_{i} contains at least 2t2t usable vertices because of Claim 10. Then the set U¯v\overline{U}_{v} can be built as required, containing at least tt elements. ∎

The above claim lower-bounds the size of each U¯v\overline{U}_{v}. The fact that the constructed U¯v\overline{U}_{v}s are mutually disjoint follows from the algorithm (Line 12). Now we want to show that the U¯v\overline{U}_{v}s have the desired properties regarding independence and weighted degrees.

Claim 13.

At any time during the execution of Algorithm 1, if we build a set SS by taking the elements of OinO^{in} and one arbitrary element in each set U¯v\overline{U}_{v} that has already been constructed, then SS is independent. Moreover, for a node TiT_{i} that does not contain only unusable vertices in ViV^{\prime}_{i}, any arbitrary choice of elements in the U¯v\overline{U}_{v}s will lead to the equality |SVi|=si|S\cap V^{\prime}_{i}|=s_{i}.

Proof.

We proceed by induction. These properties are clearly satisfied at the beginning of the algorithm (because then S=OinS=O^{in}). Now suppose that these properties hold at some time, and then we allocate a new set U¯v\overline{U}_{v^{\prime}} for some vOoutv^{\prime}\in O^{out}. Let SS be made of OinO^{in} and an arbitrary choice for the U¯v\overline{U}_{v}s that were constructed so far (excluding U¯v\overline{U}_{v^{\prime}}). By the induction hypothesis, SS\in\mathcal{I}. The vertices of U¯v\overline{U}_{v^{\prime}} are supposed to be usable, so the nodes containing them are not fully-booked and these nodes contain usable vertices. By induction on the second part of the claim, a usable element in such a node TjT_{j} can be selected, as any choice for the other U¯v\overline{U}_{v}s will use exactly sj<kjs_{j}<k_{j} vertices of the laminar constraint of that node. Therefore any vertex uVvu\in V_{v^{\prime}} added to SS does not cause any constraint to be violated, and S{u}S\cup\{u\}\in\mathcal{I}. Let TiT_{i} be the node used for the allocation at Line 11 of Algorithm 1. All the nodes in the subtree of root TiT_{i} will be subsequently ignored by the algorithm, as all the nodes inside it are marked as unusable. The values sjs_{j} of the nodes TjT_{j} in that subtree are not updated by the algorithm, but it is not an issue given that the second part of the claim does not affect them. The nodes above TiT_{i} are updated, and it is true that for any vertex chosen in U¯v\overline{U}_{v^{\prime}}, that vertex will count in the laminar inequalities for these nodes as a +1+1. This concludes the induction. ∎

Claim 14.

For all vO\Vv\in O\backslash V^{\prime}, for all uU¯vu\in\overline{U}_{v}, it holds that degw(u)degw(v)\deg_{w}(u)\geq\deg_{w}(v).

Proof.

By construction, U¯vVi\overline{U}_{v}\subseteq V^{\prime}_{i} where TiT_{i} is the blocking node of vv. As TiT_{i} is the blocking node of vv, all the elements in ViV^{\prime}_{i} have a larger weighted degree than vv. ∎

Finally we construct the sets UvU_{v}s by choosing arbitrarily tt vertices from U¯v\overline{U}_{v}. By Claims 1213, and 14, they satisfy the properties of robustness in Definition 6.

3.3 Transversal Matroids

Recall that a transversal matroid =(V,)\mathcal{M}=(V,\mathcal{I}) can be represented as a bipartite graph G=(AV,E)G=(A\cup V,E) with A={A1,,Ak}A=\{A_{1},\cdots,A_{k}\} representing the transversal sets. A subset VVV^{\prime}\subseteq V is independent in \mathcal{M} if and only if there is a matching where all of VV^{\prime} are matched to some subset of AA. Let tt\in\mathbb{N}. The matroid union (t+k1)(t+k-1)\mathcal{M} can be regarded as making the capacity of each vertex AiA_{i} in AA increased to t+k1t+k-1 (equivalently, create t+k1t+k-1 copies of each AiA_{i} and modify the edge set EE accordingly). Our algorithm is as follows. Again process the vertices in non-increasing order of their weighted degrees. We start with an empty matching, and we maintain a matching throughout the execution of the algorithm. For each new vertex vVv\in V, try to find an augmenting path so that it can be matched. If we cannot find such a path, vv is discarded. At any time during the execution of the algorithm, the current kernel VVV^{\prime}\subseteq V is simply the set of vertices in VV that are matched in the current matching. We can observe that a vertex in VV^{\prime} cannot be evicted once it belongs to VV^{\prime}. In the following, we write ViVV^{\prime}_{i}\subseteq V^{\prime} to denote the vertices in VV that are matched to AiA_{i} in the current kernel VV^{\prime}.

First we argue that our procedure is the same as the greedy described in Theorem 8 applied on (t+k1)(t+k-1)\mathcal{M}. We need to show that a vertex vv, if discarded, is spanned by vertices in VV^{\prime} that arrived earlier than it. To see this, observe that, at the moment vv arrives, VV^{\prime} is independent in (t+k1)(t+k-1)\mathcal{M}. Moreover, as we cannot find an augmenting path when vv is added to VV^{\prime}, is means that V+vV^{\prime}+v is not independent, i.e. vv is spanned by VV^{\prime} and this holds until the end of the algorithm.

Now let us consider the robustness. Let O={o1,,ok}O=\{o_{1},\dots,o_{k}\} be an arbitrary base in \mathcal{M}. We can assume that oio_{i} is assigned to AiA_{i} for all ii in the corresponding matching. For an element oiO\Vo_{i}\in O\backslash V^{\prime}, when it was discarded, some ViVV^{\prime}_{i}\subseteq V^{\prime} elements (exactly t+k1t+k-1) that arrived earlier were already assigned to AiA_{i}. As no augmenting path could go through AiA_{i} when oio_{i} was discarded, the set of elements assigned to AiA_{i} would not have changed till the end: otherwise, that would mean that at some point an augmenting path passed through AiA_{i}, which is not possible as oio_{i} was discarded because no augmenting path passing through AiA_{i} was found at that point. As a result the t+k1t+k-1 elements of ViV^{\prime}_{i} assigned to AiA_{i} are all of weighted degrees larger than that of oio_{i}. As |ViO||VO|<k|V^{\prime}_{i}\cap O|\leq|V^{\prime}\cap O|<k there remain at least tt elements of ViV^{\prime}_{i} that can be used to build a set UoiU_{o_{i}} of cardinality tt as stated in Definition 6.

4 Streaming Algorithms

In this section, we turn our algorithms into streaming form.

First, we show that it is easy to compute a (1ε)(1-\varepsilon) approximation in two passes, using O(n+τ2)O(n+\tau^{2}) space (τ\tau depends on the type of matroids involved, as defined in Theorem 8). In the first pass, we compute the weighted degrees degw(v)\deg_{w}(v) of all vertices vv to define the kernel VVV^{\prime}\subseteq V. This requires O(n)O(n) space. In the second pass, we retain a subset of edges EEE^{\prime}\subseteq E, those both of whose end-points are in VV^{\prime}. Clearly, |E|=O(τ2)|E^{\prime}|=O(\tau^{2}). Using EE^{\prime}, we can compute the exact value EG(S)=vSdegw(v)e(S×S)Ew(e)E_{G}(S)=\sum_{v\in S}\deg_{w}(v)-\sum_{e\in(S\times S)\cap E^{\prime}}w(e) for each feasible independent set SVS\subseteq V^{\prime}. Then an enumeration of all such sets gives the desired (1ε)(1-\varepsilon) approximation.

We now explain how to achieve the same goal in one pass, at the expense of higher space requirement.

Theorem 15.

In the edge arrival streaming model (each edge appearing exactly once in the stream), one can extract a (1ε)(1-\varepsilon)-approximate solution of the matroid-constrained maximum vertex cover using O(nkε)O(\frac{nk}{\varepsilon}) variables for uniform, partition, laminar, and transversal matroids.

Proof.

Let ε>0\varepsilon>0. During the streaming phase, we keep track of the weighted degrees of all the vertices, as well as for each vertex vv the set of the 2kε\frac{2k}{\varepsilon} edges incident to vv that have the largest weight. We denote the set of memorized edges as EE^{\prime}.

Then, we can choose, depending on the type of matroid, the value τ\tau corresponding to the right type of matroid (as prescribed in Theorem 8) for the parameter ε2\frac{\varepsilon}{2} and we build the kernel VV^{\prime} that is supposed to contain a (1ε2)(1-\frac{\varepsilon}{2}) approximation of the maximum cover. However, we do not know all the edges between the elements in VV^{\prime}, as only the 2kε\frac{2k}{\varepsilon} heaviest incident edges are known for each vertex.

We will compute the value of SS pretending that the edges in ((S×S)E)\E((S\times S)\cap E)\backslash E^{\prime} are not present. Precisely, for each set SVS\subseteq V, we define

E~G(S)=vSdegw(v)e(S×S)Ew(e)=EG(S)+e((S×S)E)\Ew(e).\tilde{E}_{G}(S)=\sum_{v\in S}\deg_{w}(v)-\sum_{e\in(S\times S)\cap E^{\prime}}w(e)=E_{G}(S)+\sum_{e\in((S\times S)\cap E)\backslash E^{\prime}}w(e).

Notice that E~G(S)EG(S)\tilde{E}_{G}(S)\geq E_{G}(S). Let SVS^{*}\subseteq V^{\prime} be the independent set reaching the maximum E~G(S)\tilde{E}_{G}(S^{*}). This set SS^{*} will be our final output. We next lower-bound its real value EG(S)E_{G}(S^{*}).

Let OO denote the original optimal solution (with respect to the entire graph), and SS^{\prime} denote the optimal vertex cover in the kernel VV^{\prime} (also with respect to the entire graph), so that SVS^{\prime}\subseteq V^{\prime}, SS^{\prime}\in\mathcal{I}, and EG(S)(1ε2)EG(O)E_{G}(S^{\prime})\geq(1-\frac{\varepsilon}{2})\cdot E_{G}(O). Then

E~G(S)E~G(S)EG(S)(1ε2)EG(O).\tilde{E}_{G}(S^{*})\geq\tilde{E}_{G}(S^{\prime})\geq E_{G}(S^{\prime})\geq\left(1-\frac{\varepsilon}{2}\right)\cdot E_{G}(O).

To compare the real value of EG(S)E_{G}(S^{*}) with E~G(S)\tilde{E}_{G}(S^{*}), we just need to compute the total weight of the edges in ((S×S)E)\E((S^{*}\times S^{*})\cap E)\backslash E^{\prime}:

(u,v)((S×S)E)\Ew(u,v)\displaystyle\sum_{(u,v)\in((S^{*}\times S^{*})\cap E)\backslash E^{\prime}}w(u,v) =12vS(uS:(u,v)E\Ew(u,v))\displaystyle=\frac{1}{2}\sum_{v\in S^{*}}\left(\sum_{u\in S^{*}:(u,v)\in E\backslash E^{\prime}}w(u,v)\right)
12vSkdegw(v)ε2k\displaystyle\leq\frac{1}{2}\sum_{v\in S^{*}}k\cdot\deg_{w}(v)\cdot\frac{\varepsilon}{2k}
=ε4vSdegw(v)ε2E~G(S),\displaystyle=\frac{\varepsilon}{4}\sum_{v\in S^{*}}\deg_{w}(v)\leq\frac{\varepsilon}{2}\cdot\tilde{E}_{G}(S^{*}),

where the first inequality comes from the fact that the edges that are not among the 2kε\frac{2k}{\varepsilon} heaviest edges incident on vv must be of weight at most degw(v)ε2k\deg_{w}(v)\cdot\frac{\varepsilon}{2k}. Therefore the real value EG(S)E_{G}(S^{*}) is at least (1ε2)E~G(S)(1ε2)2EG(O)(1ε)EG(O)(1-\frac{\varepsilon}{2})\cdot\tilde{E}_{G}(S^{*})\geq(1-\frac{\varepsilon}{2})^{2}\cdot E_{G}(O)\geq(1-\varepsilon)\cdot E_{G}(O). ∎

Next we consider a particular kind of stream of edges, where each edge appears twice: given an arbitrary order of the vertices, for each vertex, all its incident edges are given in a row. For this incidence streaming model [5] (sometimes called adjacency list model [37]), the next theorem shows that we can use much less space with just a single pass.

Theorem 16.

In the incidence streaming model, one can extract a (1ε)(1-\varepsilon)-approximate solution using O((kε)2)O((\frac{k}{\varepsilon})^{2}) variables for uniform, partition, laminar, and O((kε+k)2)O((\frac{k}{\varepsilon}+k)^{2}) for transversal matroids.

Proof.

Let ε>0\varepsilon>0. Given the type of the matroid \mathcal{M}, choose the corresponding value of τ\tau as prescribed in Theorem 8. Start with an empty kernel V=V^{\prime}=\emptyset. Through the execution of the algorithm, VV^{\prime} will contain the largest independent set in τ\tau\mathcal{M} with respect to the sum of the weighted degrees. When we process a vertex vv (i.e. its set of incident edges) we can compute its weighted degree degw(v)\deg_{w}(v) and store the edges linking vv to elements of VV^{\prime}. If V+vV^{\prime}+v is not independent in τ\tau\mathcal{M}, consider the element with the smallest weighted degree uu in the circuit formed in V+vV^{\prime}+v. Then, set V(V+v)uV^{\prime}\leftarrow(V^{\prime}+v)-u. If vv is added into VV^{\prime}, we keep in memory all the edges linking vv to other vertices of VV^{\prime}. When an element is discarded or evicted from VV^{\prime}, all its incident edges are deleted. As a result, at any time during the execution of the algorithm, only O(τ2)O(\tau^{2}) edges are stored, so the overall memory consumption is O(τ2)O(\tau^{2}).

In the end, we obtain exactly the approximate kernels described in the previous sections, and because we know all the values of the weighted degrees of VV^{\prime} as well as the weights of the edges between them we can find the largest vertex cover in that kernel using brute force. ∎

Remark 17.

This model has an interesting interpretation in the context of coverage function444A coverage function ff over a ground set {1,,m}\{1,\dots,m\}, associated with a universe UU of weighted elements and mm sets A1,,AmA_{1},\dots,A_{m}, where AiUA_{i}\subseteq U for all ii, is defined over all S{1,,m}S\subseteq\{1,\dots,m\} so that f(S)f(S) is the sum of the weight of the elements in iSAi\cup_{i\in S}A_{i}. The frequency of an element of the universe is the number of sets AiA_{i} it appears in. Here in our problem of maximum vertex cover, the vertices correspond to the ground set and the edges to the universe UU. Note that for the special case of a vertex cover, the frequency (the maximum number of sets where an element of the universe appears in) is exactly 2, as an edge has only two endpoints. maximization in the streaming setting— here the sets arrive over time in such a way that the values of singletons f({v})f(\{v\}), for vVv\in V, are revealed one by one. In case where a coverage function has bounded frequency larger than 22, we also present in Appendix B a streaming algorithm.

5 Local Search Algorithms for General Matroids

5.1 A 2/32/3 Polynomial-Time Local Search Approximation Algorithm

In this part we borrow ideas from [19], using a non-oblivious local search technique, meaning that instead of optimizing our objective function EGE_{G} we use a potential function to guide the algorithm. Precisely, we define a potential function gg:

g(S)=eEα#(e,S)w(e)g(S)=\sum_{e\in E}\alpha_{\#(e,S)}w(e) (1)

where #(e,S)\#(e,S) denotes the number of times the edge ee is covered by vertices of SS (hence, #(e,S){0,1,2}\#(e,S)\in\{0,1,2\} in practice). The values α0\alpha_{0}, α1\alpha_{1}, and α2\alpha_{2} have to be chosen carefully to optimize the approximation ratio. We suppose that α2α1α1α0\alpha_{2}-\alpha_{1}\leq\alpha_{1}-\alpha_{0}, which is a quite intuitive assumption of decreasing marginal returns. Moreover, this guarantees that the function gg is submodular (as in [19]). We set α0=0\alpha_{0}=0 and α1=1\alpha_{1}=1 and will decide the value of α2\alpha_{2} later.

Let ε>0\varepsilon>0. The algorithm starts by a standard greedy step, which outputs a 1/21/2 approximation SS of the maximum value of gg for a basis of \mathcal{M}. Then, we have a local search phase that tries to improve SS by exchanging an element of sSs\in S with another element sV\Ss^{\prime}\in V\backslash S if the following inequality holds:

g(Ss+s)>(1+ε)g(S),g(S-s+s^{\prime})>(1+\varepsilon)g(S),

where the factor (1+ε)(1+\varepsilon) allows us to bound the number of improvement steps by log1+ε2\log_{1+\varepsilon}2.

Algorithm 2 Local search algorithm for maximum vertex cover under matroid constraint
1:function Local-Search(,V,E,ε\mathcal{M},V,E,\varepsilon)
2:  SS\leftarrow a basis in \mathcal{M} obtained by the standard greedy algorithm for maximizing gg
3:  while (s,s)S×V\S\exists(s,s^{\prime})\in S\times V\backslash S such that g(Ss+s)>(1+ε)g(S)g(S-s+s^{\prime})>(1+\varepsilon)g(S) and Ss+sS-s+s^{\prime}\in\mathcal{I} do
4:   SSs+sS\leftarrow S-s+s^{\prime}   
5:  return SS

Suppose that the optimal base of our initial problem is OO, and that our local search algorithm stopped at some solution SS. Then there exists a bijection π:SO\pi:S\rightarrow O such that for all sSs\in S we have Ss+π(s)S-s+\pi(s)\in\mathcal{I} and elements of SOS\cap O are fixed points of π\pi (Corollary 39.12a in [41]). Hence,

sS,(1+ε)g(S)g(Ss+π(s)),\forall s\in S,\,(1+\varepsilon)g(S)\geq g(S-s+\pi(s)),

and therefore

k(1+ε)g(S)sSg(Ss+π(s)).k(1+\varepsilon)g(S)\geq\sum_{s\in S}g(S-s+\pi(s)).

Now we define a partition of Ex,y,zE_{x,y,z} of EE, where x,y,z{0,1,2}x,y,z\in\{0,1,2\}, as follows: the set Ex,y,zE_{x,y,z} contains the elements eEe\in E if ee is covered by xx vertices in S\OS\backslash O, by yy vertices in SOS\cap O, and by zz vertices in O\SO\backslash S. By this definition of the partition of EE, we can re-write the previous inequality as

k(1+ε)x,y,zαx+yw(Ex,y,z)x,y,zβx,y,zw(Ex,y,z),k(1+\varepsilon)\sum_{x,y,z}\alpha_{x+y}w(E_{x,y,z})\geq\sum_{x,y,z}\beta_{x,y,z}w(E_{x,y,z}), (2)

where the values of βx,y,z\beta_{x,y,z} are:

β2,0,0\displaystyle\beta_{2,0,0} =(k2)α2+2\displaystyle=(k-2)\alpha_{2}+2
β0,2,0\displaystyle\beta_{0,2,0} =kα2\displaystyle=k\alpha_{2}
β0,0,2\displaystyle\beta_{0,0,2} =2\displaystyle=2
β1,0,1\displaystyle\beta_{1,0,1} =min{(k2)+α2,k}=(k2)+α2\displaystyle=\min\{(k-2)+\alpha_{2},k\}=(k-2)+\alpha_{2}
β1,1,0\displaystyle\beta_{1,1,0} =(k1)α2+1\displaystyle=(k-1)\alpha_{2}+1
β0,1,1\displaystyle\beta_{0,1,1} =(k1)+α2\displaystyle=(k-1)+\alpha_{2}
β1,0,0\displaystyle\beta_{1,0,0} =(k1)\displaystyle=(k-1)
β0,1,0\displaystyle\beta_{0,1,0} =k\displaystyle=k
β0,0,1\displaystyle\beta_{0,0,1} =1\displaystyle=1

The only tricky case is when x=1x=1, y=0y=0, and z=1z=1 because we do not know whether the two elements sSs\in S and oOo\in O covering ee satisfy π(s)=o\pi(s)=o or π(s)o\pi(s)\neq o, giving respectively coefficients of kα1k\alpha_{1} or (k2)α1+α2+α0(k-2)\alpha_{1}+\alpha_{2}+\alpha_{0}, and so we choose the smaller one, using the fact that α2α1α1α0\alpha_{2}-\alpha_{1}\leq\alpha_{1}-\alpha_{0}.

By adding w(O)w(O) to both sides of (2) and re-arranging terms, we have

x,y,z(k(1+ε)αx+yβx,y,z+𝟙y+z1)w(Ex,y,z)w(O).\sum_{x,y,z}(k(1+\varepsilon)\alpha_{x+y}-\beta_{x,y,z}+\mathbbm{1}_{y+z\geq 1})\cdot w(E_{x,y,z})\geq w(O). (3)

We define the coefficients on the left-hand side as

γx,y,z=k(1+ε)αx+yβx,y,z+𝟙y+z1.\gamma_{x,y,z}=k(1+\varepsilon)\alpha_{x+y}-\beta_{x,y,z}+\mathbbm{1}_{y+z\geq 1}.

If, for all x+y1x+y\geq 1 we have γx,y,zθ\gamma_{x,y,z}\leq\theta and γx,y,z0\gamma_{x,y,z}\leq 0 when x=y=0x=y=0,
then θw(S)w(O)\theta\cdot w(S)\geq w(O). Now we write down all these coefficients:

γ2,0,0\displaystyle\gamma_{2,0,0} =(k+kε)α2((k2)α2+2)\displaystyle=(k+k\varepsilon)\alpha_{2}-((k-2)\alpha_{2}+2) =(2+kε)α22θ\displaystyle=(2+k\varepsilon)\alpha_{2}-2\leq\theta
γ0,2,0\displaystyle\gamma_{0,2,0} =(k+kε)α2kα2+1\displaystyle=(k+k\varepsilon)\alpha_{2}-k\alpha_{2}+1 =kεα2+1θ\displaystyle=k\varepsilon\alpha_{2}+1\leq\theta
γ0,0,2\displaystyle\gamma_{0,0,2} =2+1\displaystyle=-2+1 =10\displaystyle=-1\leq 0
γ1,0,1\displaystyle\gamma_{1,0,1} =(k+kε)((k2)+α2)+1\displaystyle=(k+k\varepsilon)-((k-2)+\alpha_{2})+1 =3+kεα2θ\displaystyle=3+k\varepsilon-\alpha_{2}\leq\theta
γ1,1,0\displaystyle\gamma_{1,1,0} =(k+kε)α2((k1)α2+1)+1\displaystyle=(k+k\varepsilon)\alpha_{2}-((k-1)\alpha_{2}+1)+1 =(1+kε)α2θ\displaystyle=(1+k\varepsilon)\alpha_{2}\leq\theta
γ0,1,1\displaystyle\gamma_{0,1,1} =(k+kε)((k1)+α2)+1\displaystyle=(k+k\varepsilon)-((k-1)+\alpha_{2})+1 =2+kεα2θ\displaystyle=2+k\varepsilon-\alpha_{2}\leq\theta
γ1,0,0\displaystyle\gamma_{1,0,0} =(k+kε)(k1)\displaystyle=(k+k\varepsilon)-(k-1) =1+kεθ\displaystyle=1+k\varepsilon\leq\theta
γ0,1,0\displaystyle\gamma_{0,1,0} =(k+kε)k+1\displaystyle=(k+k\varepsilon)-k+1 =1+kεθ\displaystyle=1+k\varepsilon\leq\theta
γ0,0,1\displaystyle\gamma_{0,0,1} =1+1\displaystyle=-1+1 =00\displaystyle=0\leq 0

By setting α2=3/2\alpha_{2}=3/2 we get θ=3/2(1+kε)\theta=3/2\cdot(1+k\varepsilon). We have thus a 23(1+kε)\frac{2}{3(1+k\varepsilon)} approximation. To get a clean 23\frac{2}{3} approximation, we can use the partial enumeration technique of Filmus and Ward [19]. For the sake of completeness, we provide the details here.

Algorithm 3 proceeds by guessing the vertex uOu\in O with the largest weighted degree and then applying the previous algorithm on the subgraph Gu=(Vu,Eδ(u))G_{u}=(V-u,E-\delta(u)), with the contracted matroid u=(Vu,u)\mathcal{M}_{u}=(V-u,\mathcal{I}_{u}) as constraint, and the error term ε=1(3k)2\varepsilon=\frac{1}{(3k)^{2}}. For an element uVu\in V we set u=(Vu,u)\mathcal{M}_{u}=(V-u,\mathcal{I}_{u}) as the contracted matroid of \mathcal{M} by uu such that u={SVu:S+u}\mathcal{I}_{u}=\{S\subseteq V-u:S+u\in\mathcal{I}\}. Note that u\mathcal{M}_{u} is still a matroid.

Algorithm 3 Algorithm providing an approximation guarantee of 2/32/3
1:function Contracted-matroid-search(,V,E\mathcal{M},V,E)
2:  SoptS_{opt}\leftarrow\emptyset
3:  for vVv\in V do
4:   ScurvLocal-Search(v,Vv,Eδ(v),1/(3k)2)S_{cur}\leftarrow v\cup\textsc{Local-Search}(\mathcal{M}_{v},V-v,E-\delta(v),1/(3k)^{2})
5:   if w(Scur)>w(Sopt)w(S_{cur})>w(S_{opt}) then SoptScurS_{opt}\leftarrow S_{cur}      
6:  return SoptS_{opt}

Let SuS_{u} be the solution returned by the procedure Local-Search(u,Vu,Eδ(u),1/(3k)2)\textsc{Local-Search}(\mathcal{M}_{u},V-u,E-\delta(u),1/(3k)^{2}) and Ou=OuO_{u}=O-u. Then 32(1+13k)EGu(Su)EGu(Ou)\frac{3}{2}\cdot(1+\frac{1}{3k})\cdot E_{G_{u}}(S_{u})\geq E_{G_{u}}(O_{u}). Adding degw(u)\deg_{w}(u) to both sides we obtain

32(1+13k)EGu(Su)+degw(u)EG(O).\frac{3}{2}\cdot\left(1+\frac{1}{3k}\right)\cdot E_{G_{u}}(S_{u})+\deg_{w}(u)\geq E_{G}(O).

The left-hand side can be re-written 32(1+13k)EGu(Su)+degw(u)=32EG(S)+12kEGu(Su)12degw(e)32EG(S)\frac{3}{2}\cdot(1+\frac{1}{3k})\cdot E_{G_{u}}(S_{u})+\deg_{w}(u)=\frac{3}{2}\cdot E_{G}(S)+\frac{1}{2k}\cdot E_{G_{u}}(S_{u})-\frac{1}{2}\cdot\deg_{w}(e)\leq\frac{3}{2}E_{G}(S), where the inequality holds because as uu is the vertex with the largest weighted degree in OO, EGu(Su)EG(O)kdegw(u)E_{G_{u}}(S_{u})\leq E_{G}(O)\leq k\cdot\deg_{w}(u). We have thus established that Algorithm 3 gives a 2/32/3 approximation.

In terms of time complexity, Algorithm 3 performs a total of O(nkmlog2log(1+(3k2)1))=O(nmk3)O\left(n\cdot k\cdot m\cdot\frac{\log 2}{\log\left(1+(3k^{2})^{-1}\right)}\right)=O(nmk^{3}) arithmetic operations and O(n2k3)O(n^{2}k^{3}) oracle queries. To see this, observe that a local improvement step in Algorithm 2 sees each edge at most twice, thus taking O(km)O(k\cdot m) arithmetic operations and O(kn)O(k\cdot n) matroid oracle queries. Moreover, there are at most log(1+ε)2\log_{(1+\varepsilon)}2 such steps after the greedy step, which takes O(km)O(k\cdot m) arithmetic operations and oracle queries.

Theorem 18.

Algorithm 3 is a local search algorithm providing a 2/32/3 approximation, and uses O(nmk3)O(nmk^{3}) arithmetic operations and O(n2k3)O(n^{2}k^{3}) matroid oracle queries.

5.2 A 3/43/4 FPT Approximation Algorithm

We show how to improve the approximation ratio to 3/43/4, if one is allowed to use FPT time. The key insight here is that if the local optimal SS is totally disjoint from the optimal OO, then in the preceding proof, we no longer need to be concerned with the coefficients γ0,2,0,γ1,1,0,γ0,1,1,γ0,1,0\gamma_{0,2,0},\gamma_{1,1,0},\gamma_{0,1,1},\gamma_{0,1,0} and their corresponding constraints.

We can slightly modify our algorithm as follows (formally stated in Algorithm 4): each time a local optimum is reached, we guess one of its vertices to be part of the optimal solution and proceed recursively. There can be at most k!k! guesses. By setting α2=5/3\alpha_{2}=5/3 we can ensure that θ=4/3(1+kε)\theta=4/3\cdot(1+k\varepsilon). Again, using the partial enumeration technique allows us to get a clean 3/43/4 approximation.

Algorithm 4 Variant of the local search algorithm
1:function Local-Search-3/43/4(,V,E,ε\mathcal{M},V,E,\varepsilon) SS\leftarrow a basis in \mathcal{M} obtained by the standard greedy algorithm for maximizing gg
2:  while (s,s)S×V\S\exists(s,s^{\prime})\in S\times V\backslash S such that g(Ss+s)>(1+ε)g(S)g(S-s+s^{\prime})>(1+\varepsilon)g(S) and Ss+sS-s+s^{\prime}\in\mathcal{I} do
3:   SSs+sS\leftarrow S-s+s^{\prime}   
4:  SoptSS_{opt}\leftarrow S
5:  for sSs\in S do
6:   ScurLocal-Search-3/4(s,Vs,Eδ(s),ε)+sS_{cur}\leftarrow\text{{Local-Search-$3/4$}($\mathcal{M}_{s},V-s,E-\delta(s),\varepsilon$)}+s
7:   if w(Scur)>w(Sopt)w(S_{cur})>w(S_{opt}) then SoptScurS_{opt}\leftarrow S_{cur}      
8:  return SoptS_{opt}

5.3 Allowing Exchanges of Size pp Does Not Improve the Ratio

One could think that exchanging p>1p>1 elements at the same time instead of only one during an improvement step might allow us to get a better ratio than in Section 5.1. We show in this section that it is not possible, for any choice of α2\alpha_{2}.

When α23/2\alpha_{2}\geq 3/2, let ε>0\varepsilon>0 and consider the example in Figure 3, where the constraint is imposed by a uniform matroid of rank 22. In fact, the subset SVS\subseteq V of size 22 which optimizes gg is {v1,v2}\{v_{1},v_{2}\}, as g({v1,v2})3g(\{v_{1},v_{2}\})\geq 3, but the optimal solution for the maximum cover problem is {v1,v3}\{v_{1},v_{3}\}, giving a value g({v1,v3})=3εg(\{v_{1},v_{3}\})=3-\varepsilon. Therefore the solution given by a local search algorithm using α23/2\alpha_{2}\geq 3/2 cannot have a better approximation guarantee than 2/32/3.

v1v_{1}v2v_{2}v3v_{3}v4v_{4}w(e1)=2w(e_{1})=2w(e2)=1εw(e_{2})=1-\varepsilon
Figure 3: Example when α23/2\alpha_{2}\geq 3/2.

When α2<3/2\alpha_{2}<3/2, we use the example depicted in Figure 4, where the constraint is a uniform matroid of rank kk. We show that for any pp, if kk is large enough, the set S={ai}1ikS=\{a_{i}\}_{1\leq i\leq k} is a local optimum of gg, even if pp simultaneous exchanges at the same time are allowed. As the solution SS has value EG(S)=k2E_{G}(S)=k^{2} while the optimal solution O={bi}1ikO=\{b_{i}\}_{1\leq i\leq k} has value EG(O)=k2+k2/2E_{G}(O)=k^{2}+k^{2}/2, the approximation guarantee of such an algorithm cannot be better than 2/32/3.

We can observe that the most interesting exchanges have to be of the form aibia_{i}\leftrightarrow b_{i}. If we perform pp such exchanges, for instance a1,,apb1,,bpa_{1},\dots,a_{p}\leftrightarrow b_{1},\dots,b_{p} then the gain for the value of gg is:

g(S+{b1,bp}{a1,ap})g(S)\displaystyle\,g(S+\{b_{1},\dots b_{p}\}-\{a_{1},\dots a_{p}\})-g(S)
=p(kp)(α21)\displaystyle=p(k-p)(\alpha_{2}-1) for {ai,bi}\{a_{i},b_{i}\} such that i>p,jpi>p,\,j\leq p
p(kp)\displaystyle\quad-p(k-p) for {ai,bi}\{a_{i},b_{i}\} such that ip,j>pi\leq p,\,j>p
+pk/2\displaystyle\quad+pk/2 for {bi,ci}\{b_{i},c_{i}\} such that ipi\leq p
=p(kp)(α22)+pk/2\displaystyle=p(k-p)(\alpha_{2}-2)+pk/2
=pk(α23/2)+p2(2α2)\displaystyle=pk(\alpha_{2}-3/2)+p^{2}(2-\alpha_{2})

as α2<3/2\alpha_{2}<3/2, when kk is big enough the gain becomes negative. Therefore, with a large kk, S={ai}1ikS=\{a_{i}\}_{1\leq i\leq k} is a local optimum even if pp exchanges are allowed.

a1a_{1}a2a_{2}a3a_{3}\cdotsaka_{k}b1b_{1}b2b_{2}b3b_{3}\cdotsbkb_{k}c1c_{1}c2c_{2}c3c_{3}\cdotsckc_{k}
Figure 4: Example when α2<3/2\alpha_{2}<3/2. The edges between the aia_{i}s and the bib_{i}s are of weight 11, and those between the bib_{i}s and the cic_{i}s are of weight k/2k/2.

What if the degrees are bounded?

Our previous example uses vertices of large degrees, so one is naturally led to ask what happens if the vertex degree is bounded. Could one obtain approximation ratios significantly better than 2/32/3 in this case? In the following, we can assume that α2<3/2\alpha_{2}<3/2 (otherwise the first example in Figure 3 shows the approximation ratio cannot be better than 2/32/3).

Let d2d\geq 2 be the desired bound for the degrees in our graph. We proceed somehow similarly to Lee et al. [31]. Using the result of [30], we know there exists a bipartite, dd-regular graph G=(V,E)G=(V,E) of girth at least 2p+12p+1 (i.e. the smallest circuit in the graph is of length at least 2p+12p+1).555In [30] the construction is specific for a prime power dd^{\prime}, but we can use their construction to obtain our dd-regular bipartite graph for some ddd\leq d^{\prime} easily: by removing iteratively a perfect matching from the graph. Such a perfect matching exists because of Hall’s marriage theorem, e.g.[41]. Let AA and BB be the bi-partition of the graph, so that V=ABV=A\cup B. As it is a bipartite regular graph, there exists a perfect matching MM in that graph. We denote {a1,b1},,{ak,bk}\{a_{1},b_{1}\},\dots,\{a_{k},b_{k}\} such a matching. We build a graph H=(V,E)H=(V^{\prime},E^{\prime}) as follows: we take the vertices and the edges of GG, we add a set of vertices C={c1,,ck}C=\{c_{1},\dots,c_{k}\}, then we add edges {bi,ci}\{b_{i},c_{i}\} for 1ik1\leq i\leq k and we delete the edges of the matching {ai,bi}\{a_{i},b_{i}\} for 1ik1\leq i\leq k. Clearly in HH the degree bound is still dd. We define the weights w({ai,bj})=1w(\{a_{i},b_{j}\})=1 for 1i,jk1\leq i,j\leq k and w({bi,ci})=λw(\{b_{i},c_{i}\})=\lambda (we will set the value of λ\lambda later).

We define a partition matroid =(V,)\mathcal{M}=(V^{\prime},\mathcal{I}) with the partition V1={a1,b1,c1},,Vk={ak,bk,ck}V_{1}=\{a_{1},b_{1},c_{1}\},\dots,V_{k}=\{a_{k},b_{k},c_{k}\} and a bound of one element per set ViV_{i}.

We want to show that AA is a local optimum, whereas the real optimum is BB. In fact, EH(A)=k(d1)E_{H}(A)=k(d-1) and EH(B)=k(λ+d1)E_{H}(B)=k(\lambda+d-1). The only relevant exchanges are of the form aibia_{i}\leftrightarrow b_{i}, as taking cic_{i} is clearly less interesting. Consider the indexes i1,,ipi_{1},\dots,i_{p} of the exchanges tried during a local search step.

g(A+{bi1,,bip}{ai1,,aip})g(A)\displaystyle\,g(A+\{b_{i_{1}},\dots,b_{i_{p}}\}-\{a_{i_{1}},\dots,a_{i_{p}}\})-g(A)
=(p(d1)s)\displaystyle=-(p(d-1)-s) edges in {ai1,,aip}×B\{bi1,,bip}\{a_{i_{1}},\dots,a_{i_{p}}\}\times B\backslash\{b_{i_{1}},\dots,b_{i_{p}}\}
+pλ\displaystyle\quad+p\cdot\lambda for {bij,cij}\{b_{i_{j}},c_{i_{j}}\}, for 1jp1\leq j\leq p
+(α21)(p(d1)s)\displaystyle\quad+(\alpha_{2}-1)(p(d-1)-s) edges in {bi1,,bip}×A\{ai1,,aip}\{b_{i_{1}},\dots,b_{i_{p}}\}\times A\backslash\{a_{i_{1}},\dots,a_{i_{p}}\}
=(α22)(p(d1)s)+pλ\displaystyle=(\alpha_{2}-2)(p(d-1)-s)+p\cdot\lambda
(α22)(p(d2)+1)+pλ\displaystyle\leq(\alpha_{2}-2)(p(d-2)+1)+p\cdot\lambda As sp1s\leq p-1 and α<2/3\alpha<2/3

where ss denote the number of “saved” edges. Precisely, these are the edges between {ai1,,aip}\{a_{i_{1}},\dots,a_{i_{p}}\} and {bi1,,bip}\{b_{i_{1}},\dots,b_{i_{p}}\} in the graph HH. We call them “saved” because they are still covered after the exchange, unlike other edges incident to the aija_{i_{j}}s. We now claim that sp1s\leq p-1. Recall that as the original graph GG has girth at least 2p+12p+1, there cannot be a cycle among the vertices in {ai1,,aip}{bi1,,bip}\{a_{i_{1}},\dots,a_{i_{p}}\}\cup\{b_{i_{1}},\dots,b_{i_{p}}\}. So the subgraph of GG induced by these vertices forms a forest, with at most 2p12p-1 edges. Recall that when constructing HH, we have removed the edges {ai,bi}\{a_{i},b_{i}\} for all ii. Therefore pp edges in the subgraph are gone. We conclude that at most p1p-1 edges of that forest can be the saved edges.

Setting λ=(2α2)((d2)+1/p)\lambda=(2-\alpha_{2})\left((d-2)+1/p\right), the gain becomes non-positive, and EH(B)=k((2α2)((d2)+1/p)+d1)=(3α2)EH(A)k(2α2)(11/p)E_{H}(B)=k((2-\alpha_{2})\left((d-2)+1/p\right)+d-1)=(3-\alpha_{2})E_{H}(A)-k(2-\alpha_{2})(1-1/p), so

EH(B)EH(A)=(3α2)(2α2)(11/p)d1.\frac{E_{H}(B)}{E_{H}(A)}=(3-\alpha_{2})-\frac{(2-\alpha_{2})(1-1/p)}{d-1}.

This implies that the approximation ratio is bounded by 2/3+θ(1/d)2/3+\theta(1/d), as α23/2\alpha_{2}\leq 3/2.

6 Local Search Algorithm for Two Matroids

In this section, we assume that two matroids 1=(V,1)\mathcal{M}_{1}=(V,\mathcal{I}_{1}) and 2=(V,2)\mathcal{M}_{2}=(V,\mathcal{I}_{2}) are imposed on the vertex set VV.

The idea of the exchange graph [41, Section 41.2], is defined as follows. Given I12I\in\mathcal{I}_{1}\cap\mathcal{I}_{2}, an oriented (bipartite) digraph D1,2(I)D_{\mathcal{M}_{1},\mathcal{M}_{2}}(I) has the following two types of edges:

  • for iIi\in I and jV\Ij\in V\backslash I there is an arc (i,j)(i,j) if Ii+j1I-i+j\in\mathcal{I}_{1}

  • for iIi\in I and jV\Ij\in V\backslash I there is an arc (j,i)(j,i) if Ii+j2I-i+j\in\mathcal{I}_{2}

In this exchange graph, a dipath/dicycle AA (whose vertices are denoted V(A)V(A)) is called feasible if IΔV(A)I\Delta V(A) is in 12\mathcal{I}_{1}\cap\mathcal{I}_{2} and if for any sub-dipath AA^{\prime} of AA such that the endpoints of AA^{\prime} are in II (or are the endpoints of AA) then IΔV(A)I\Delta V(A^{\prime}) is also in 12\mathcal{I}_{1}\cap\mathcal{I}_{2}.

The following exchange lemma from [31] will be extremely useful for our purpose.

Lemma 19 (Lemma 2.5 in [31]).

Let I,J12I,J\in\mathcal{I}_{1}\cap\mathcal{I}_{2}. Then there exists an integer s0s\geq 0 and a collection of dipaths/dicycles {D1,,Dt}\{D_{1},\dots,D_{t}\} (possibly with repetitions), feasible in the digraph 𝒟1,2(I)\mathcal{D}_{\mathcal{M}_{1},\mathcal{M}_{2}}(I), using only elements of IΔJI\Delta J, so that each element of IΔJI\Delta J appears in exactly 2s2^{s} dipaths/dicycles DiD_{i}.

Suppose that we have a solution S12S\in\mathcal{I}_{1}\cap\mathcal{I}_{2}. Let O12O\in\mathcal{I}_{1}\cap\mathcal{I}_{2} be the global optimum. By Lemma 19 with I=SI=S and J=OJ=O, there exists s0s\geq 0 and a collection of dipaths/dicycles {D1,,Dt}\{D_{1},\dots,D_{t}\} such that each element of SΔOS\Delta O appears exactly 2s2^{s} times in these dipaths/dicycles. We could potentially perform local search exchanges corresponding to these dipaths and dicycles to improve our solution SS. However, such paths and cycles can be arbitrarily long, thus implying a prohibitively high running time. To overcome this issue, we will use an idea of Lee et al. [31, Lemma 3.1], in which these long paths and cycles are cut into pieces of length O(p)O(p) for some constant pp. Such pieces will then allow us to perform local search in polynomial time.

Precisely, for each dipath/dicycle DiD_{i}, we number the vertices of O\SO\backslash S along the path consecutively. For each DiD_{i}, we create p+1p+1 copies Di,0,,Di,pD_{i,0},\dots,D_{i,p} and in the copy Di,qD_{i,q} we throw away vertices that are labeled qq modulo p+1p+1. By cutting these dipaths/dicycles, now the corresponding exchanges contain only up to 2p2p vertices from O\SO\backslash S and at most 2p+12p+1 vertices from S\OS\backslash O. Notice that these shortened paths AA remain feasible, i.e., IΔV(A)12I\Delta V(A)\in\mathcal{I}_{1}\cap\mathcal{I}_{2}.

Algorithm 5 Local search algorithm for maximum vertex cover under two matroid constraints
1:function Local-Search-2Matroids(,V,E,p,ε\mathcal{M},V,E,p,\varepsilon)
2:  SS\leftarrow a common independent set in 12\mathcal{I}_{1}\cap\mathcal{I}_{2} obtained in polynomial time and providing a constant approximation ratio (for instance the algorithm in [31], or just greedy)
3:  while AS,BV\S\exists A\subseteq S,B\subseteq V\backslash S such that g(SA+B)>(1+ε)g(S)g(S-A+B)>(1+\varepsilon)g(S), |A|2p+1|A|\leq 2p+1, |B|2p|B|\leq 2p, and SA+B12S-A+B\in\mathcal{I}_{1}\cap\mathcal{I}_{2} do
4:   SSA+BS\leftarrow S-A+B   
5:  return SS

Algorithm 5, a local search algorithm allowing exchanges size up to 2p2p, exploits exactly the above idea. Here the potential function gg is defined by (1) as in Section 5.1. Again α0=0\alpha_{0}=0, α1=1\alpha_{1}=1, and we decide the value of α2\alpha_{2} later.

Consider the family {Di,q}1it,0qp\{D_{i,q}\}_{1\leq i\leq t,0\leq q\leq p} and all the exchanges they contain, which are denoted {(Ai,Bi)S\O×O\S}1it\{(A_{i},B_{i})\subseteq S\backslash O\times O\backslash S\}_{1\leq i\leq t^{\prime}}. Each element of O\SO\backslash S appears in exactly p2sp2^{s} exchanges and each element of S\OS\backslash O in (p+1)2s(p+1)2^{s} exchanges. As SS is a local optimum, all these exchanges satisfy the inequality of Algorithm 5:

1it,(1+ε)g(S)g(SAi+Bi),\forall 1\leq i\leq t^{\prime},(1+\varepsilon)g(S)\geq g(S-A_{i}+B_{i}),

and summing over all these inequalities:

t(1+ε)g(S)i=1tg(SAi+Bi).t^{\prime}(1+\varepsilon)g(S)\geq\sum_{i=1}^{t^{\prime}}g(S-A_{i}+B_{i}).

Using the sets Ex,y,zE_{x,y,z} as defined in Section 5, we have the inequality analogous to inequality (2):

t(1+ε)g(S)=t(1+ε)x,y,zαx+yw(Ex,y,z)i=1tg(SAi+Bi)x,y,zβx,y,zw(Ex,y,z)t^{\prime}(1+\varepsilon)g(S)=t^{\prime}(1+\varepsilon)\sum_{x,y,z}\alpha_{x+y}w(E_{x,y,z})\geq\sum_{i=1}^{t^{\prime}}g(S-A_{i}+B_{i})\geq\sum_{x,y,z}\beta^{\prime}_{x,y,z}w(E_{x,y,z})

where the βx,y,z\beta^{\prime}_{x,y,z} are equal to:

β2,0,0\displaystyle\beta^{\prime}_{2,0,0} =(t(p+1)2s)α2\displaystyle=(t^{\prime}-(p+1)2^{s})\alpha_{2}
β0,2,0\displaystyle\beta^{\prime}_{0,2,0} =tα2\displaystyle=t^{\prime}\alpha_{2}
β0,0,2\displaystyle\beta^{\prime}_{0,0,2} =p2sα2\displaystyle=p2^{s}\alpha_{2}
β1,0,1\displaystyle\beta^{\prime}_{1,0,1} =t(2p+1)2s+p2sα2\displaystyle=t^{\prime}-(2p+1)2^{s}+p2^{s}\alpha_{2}
β1,1,0\displaystyle\beta^{\prime}_{1,1,0} =(t(p+1)2s)α2+(p+1)2s\displaystyle=(t^{\prime}-(p+1)2^{s})\alpha_{2}+(p+1)2^{s}
β0,1,1\displaystyle\beta^{\prime}_{0,1,1} =tp2s+p2sα2\displaystyle=t^{\prime}-p2^{s}+p2^{s}\alpha_{2}
β1,0,0\displaystyle\beta^{\prime}_{1,0,0} =t(p+1)2s\displaystyle=t^{\prime}-(p+1)2^{s}
β0,1,0\displaystyle\beta^{\prime}_{0,1,0} =t\displaystyle=t^{\prime}
β0,0,1\displaystyle\beta^{\prime}_{0,0,1} =p2s\displaystyle=p2^{s}

There are only two nontrivial cases: when (x,y,z)=(2,0,0)(x,y,z)=(2,0,0), the worst situation is when, for a given edge ee, all the exchanges involve both of its two endpoints. To see this, recall that the two endpoints appear in total of 2(p+1)2s2(p+1)2^{s} times in the family {Di,q}1it,0qp\{D_{i},q\}_{1\leq i\leq t,0\leq q\leq p}, so if ll exchanges involve both endpoints, the coefficient for this edge is (t2(p+1)2s+l)α2+(2(p+1)2s2l)(t^{\prime}-2(p+1)2^{s}+l)\alpha_{2}+(2(p+1)2^{s}-2l), which is minimized when l=p2sl=p2^{s}. For the other case (x,y,z)=(0,0,2)(x,y,z)=(0,0,2), the worst situation for an edge ee is similarly when all the exchanges involve both of its endpoints.

Similar to the previous section, we can derive an inequality analogous to (3):

x,y,z(k(1+ε)αx+yβx,y,z+p2s𝟙y+z1)w(Ex,y,z)p2sw(O).\sum_{x,y,z}(k(1+\varepsilon)\alpha_{x+y}-\beta^{\prime}_{x,y,z}+p2^{s}\cdot\mathbbm{1}_{y+z\geq 1})\cdot w(E_{x,y,z})\geq p2^{s}\cdot w(O).

Similar to the previous section, we define

γx,y,z=k(1+ε)αx+yβx,y,z+p2s𝟙y+z1.\gamma^{\prime}_{x,y,z}=k(1+\varepsilon)\alpha_{x+y}-\beta_{x,y,z}+p2^{s}\cdot\mathbbm{1}_{y+z\geq 1}.

If for all x+y+z2x+y+z\geq 2 we have γx,y,zθ\gamma^{\prime}_{x,y,z}\leq\theta, and if x=y=0x=y=0 we have rx,y,z0r^{\prime}_{x,y,z}\leq 0, then θw(S)p2sw(O)\theta\cdot w(S)\geq p2^{s}\cdot w(O). We write down all these coefficients and their corresponding constraints:

γ2,0,0\displaystyle\gamma^{\prime}_{2,0,0} =(t+tε)α2(t(p+1)2s)α2\displaystyle=(t^{\prime}+t^{\prime}\varepsilon)\alpha_{2}-(t^{\prime}-(p+1)2^{s})\alpha_{2} =(p+1)2sα2+tεα2θ\displaystyle=(p+1)2^{s}\alpha_{2}+t^{\prime}\varepsilon\alpha_{2}\leq\theta
γ0,2,0\displaystyle\gamma^{\prime}_{0,2,0} =(t+tε)α2tα2+p2s\displaystyle=(t^{\prime}+t^{\prime}\varepsilon)\alpha_{2}-t^{\prime}\alpha_{2}+p2^{s} =p2s+tεα2θ\displaystyle=p2^{s}+t^{\prime}\varepsilon\alpha_{2}\leq\theta
γ0,0,2\displaystyle\gamma^{\prime}_{0,0,2} =p2sα2+p2s\displaystyle=-p2^{s}\alpha_{2}+p2^{s} =p2sα2+p2s0\displaystyle=-p2^{s}\alpha_{2}+p2^{s}\leq 0
γ1,0,1\displaystyle\gamma^{\prime}_{1,0,1} =(t+tε)(t(2p+1)2s+p2sα2)+p2s\displaystyle=(t^{\prime}+t^{\prime}\varepsilon)-(t^{\prime}-(2p+1)2^{s}+p2^{s}\alpha_{2})+p2^{s} =(3p+1)2sp2sα2+tεθ\displaystyle=(3p+1)2^{s}-p2^{s}\alpha_{2}+t^{\prime}\varepsilon\leq\theta
γ1,1,0\displaystyle\gamma^{\prime}_{1,1,0} =(t+tε)α2\displaystyle=(t^{\prime}+t^{\prime}\varepsilon)\alpha_{2}
((t(p+1)2s)α2+(p+1)2s)+p2s\displaystyle\quad-((t^{\prime}-(p+1)2^{s})\alpha_{2}+(p+1)2^{s})+p2^{s} =(p+1)2sα22s+tεα2θ\displaystyle=(p+1)2^{s}\alpha_{2}-2^{s}+t^{\prime}\varepsilon\alpha_{2}\leq\theta
γ0,1,1\displaystyle\gamma^{\prime}_{0,1,1} =(t+tε)(tp2s+p2sα2)+p2s\displaystyle=(t^{\prime}+t^{\prime}\varepsilon)-(t^{\prime}-p2^{s}+p2^{s}\alpha_{2})+p2^{s} =2p2sp2sα2+tεθ\displaystyle=2p2^{s}-p2^{s}\alpha_{2}+t^{\prime}\varepsilon\leq\theta
γ1,0,0\displaystyle\gamma^{\prime}_{1,0,0} =(t+tε)(t(p+1)2s)\displaystyle=(t^{\prime}+t^{\prime}\varepsilon)-(t^{\prime}-(p+1)2^{s}) =(p+1)2s+tεθ\displaystyle=(p+1)2^{s}+t^{\prime}\varepsilon\leq\theta
γ0,1,0\displaystyle\gamma^{\prime}_{0,1,0} =(t+tε)t+p2s\displaystyle=(t^{\prime}+t^{\prime}\varepsilon)-t^{\prime}+p2^{s} =p2s+tεθ\displaystyle=p2^{s}+t^{\prime}\varepsilon\leq\theta
γ0,0,1\displaystyle\gamma^{\prime}_{0,0,1} =p2s+p2s\displaystyle=-p2^{s}+p2^{s} =00\displaystyle=0\leq 0

setting α2=3/2\alpha_{2}=3/2 we get θ=(p+1)2s3/2+tε3/2\theta=(p+1)2^{s}\cdot 3/2+t^{\prime}\varepsilon\cdot 3/2, and therefore

(32(1+1p)+3tε2p2s)w(S)w(O).\left(\frac{3}{2}\left(1+\frac{1}{p}\right)+\frac{3t^{\prime}\varepsilon}{2p2^{s}}\right)\cdot w(S)\geq w(O).

If we denote k=min{k1,k2}k=\min\{k_{1},k_{2}\} the minimum rank among the two matroids, then we know that tk2st^{\prime}\leq k2^{s}, therefore we get:

(32(1+1p)+3kε2p)w(S)w(O).\left(\frac{3}{2}\left(1+\frac{1}{p}\right)+\frac{3k\varepsilon}{2p}\right)\cdot w(S)\geq w(O).

Using the same partial enumeration technique as in Section 5, one can get, for a fixed pp, a polynomial-time algorithm providing a 2/3(11/(p+1))2/3\cdot(1-1/(p+1)) approximation.

Theorem 20.

Algorithm 5 is a local search algorithm providing a 2/3(11/(p+1))2/3\cdot(1-1/(p+1)) approximation using nO(p)n^{O(p)} arithmetic operations and matroid oracle calls.

7 Conclusion and Open Questions

Theorem 8 allows us to generalize the cardinality constraint to some special cases of matroid constraints, and these ideas could be useful for other kernelization algorithms. Regarding the bounds of Theorem 8, tight examples can be built to show that the values of τ\tau provided are the best possible for partition and laminar matroids. For transversal matroids it is less clear whether the bound for τ\tau can be improved or not. The most important open question regarding this result is whether Theorem 8 can be generalized to other types of matroids.

Regarding local search, we have shown some limitations of the current techniques, which cannot exceed a 2/32/3 approximation. Thus to close the gap between local search and LP techniques one would have to use new techniques, for instance by introducing a new type of objective function for this problem.

References

  • [1] Alexander A. Ageev and Maxim Sviridenko. Approximation algorithms for maximum coverage and max cut with given sizes of parts. In Gérard Cornuéjols, Rainer E. Burkard, and Gerhard J. Woeginger, editors, Integer Programming and Combinatorial Optimization, 7th International IPCO Conference, Graz, Austria, June 9-11, 1999, Proceedings, volume 1610 of Lecture Notes in Computer Science, pages 17–30. Springer, 1999.
  • [2] Per Austrin and Aleksa Stankovic. Global cardinality constraints make approximating some max-2-CSPs harder. In Dimitris Achlioptas and László A. Végh, editors, Approximation, Randomization, and Combinatorial Optimization. Algorithms and Techniques, APPROX/RANDOM 2019, September 20-22, 2019, Massachusetts Institute of Technology, Cambridge, MA, USA, volume 145 of LIPIcs, pages 24:1–24:17. Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 2019.
  • [3] Moshe Babaioff, Nicole Immorlica, and Robert Kleinberg. Matroids, secretary problems, and online mechanisms. In Nikhil Bansal, Kirk Pruhs, and Clifford Stein, editors, Proceedings of the Eighteenth Annual ACM-SIAM Symposium on Discrete Algorithms, SODA 2007, New Orleans, Louisiana, USA, January 7-9, 2007, pages 434–443. SIAM, 2007.
  • [4] Édouard Bonnet, Bruno Escoffier, Vangelis Th. Paschos, and Georgios Stamoulis. Purely combinatorial approximation algorithms for maximum k-vertex cover in bipartite graphs. Discret. Optim., 27:26–56, 2018.
  • [5] Vladimir Braverman, Zaoxing Liu, Tejasvam Singh, N. V. Vinodchandran, and Lin F. Yang. New bounds for the CLIQUE-GAP problem using graph decomposition theory. Algorithmica, 80(2):652–667, 2018.
  • [6] Niv Buchbinder, Moran Feldman, Joseph Naor, and Roy Schwartz. A tight linear time (1/2)-approximation for unconstrained submodular maximization. In 53rd Annual IEEE Symposium on Foundations of Computer Science, FOCS 2012, New Brunswick, NJ, USA, October 20-23, 2012, pages 649–658. IEEE Computer Society, 2012.
  • [7] Gruia Călinescu, Chandra Chekuri, Martin Pál, and Jan Vondrák. Maximizing a submodular set function subject to a matroid constraint (extended abstract). In Matteo Fischetti and David P. Williamson, editors, Integer Programming and Combinatorial Optimization, 12th International IPCO Conference, Ithaca, NY, USA, June 25-27, 2007, Proceedings, volume 4513 of Lecture Notes in Computer Science, pages 182–196. Springer, 2007.
  • [8] Gruia Călinescu, Chandra Chekuri, Martin Pál, and Jan Vondrák. Maximizing a monotone submodular function subject to a matroid constraint. SIAM J. Comput., 40(6):1740–1766, 2011.
  • [9] Amit Chakrabarti and Sagar Kale. Submodular maximization meets streaming: Matchings, matroids, and more. In Jon Lee and Jens Vygen, editors, Integer Programming and Combinatorial Optimization - 17th International Conference, IPCO 2014, Bonn, Germany, June 23-25, 2014. Proceedings, volume 8494 of Lecture Notes in Computer Science, pages 210–221. Springer, 2014.
  • [10] Sourav Chakraborty and Oded Lachish. Improved competitive ratio for the matroid secretary problem. In Yuval Rabani, editor, Proceedings of the Twenty-Third Annual ACM-SIAM Symposium on Discrete Algorithms, SODA 2012, Kyoto, Japan, January 17-19, 2012, pages 1702–1712. SIAM, 2012.
  • [11] Chandra Chekuri, Shalmoli Gupta, and Kent Quanrud. Streaming algorithms for submodular function maximization. In Magnús M. Halldórsson, Kazuo Iwama, Naoki Kobayashi, and Bettina Speckmann, editors, Automata, Languages, and Programming - 42nd International Colloquium, ICALP 2015, Kyoto, Japan, July 6-10, 2015, Proceedings, Part I, volume 9134 of Lecture Notes in Computer Science, pages 318–330. Springer, 2015.
  • [12] Rajesh Chitnis, Graham Cormode, Hossein Esfandiari, MohammadTaghi Hajiaghayi, Andrew McGregor, Morteza Monemizadeh, and Sofya Vorotnikova. Kernelization via sampling with applications to finding matchings and related problems in dynamic graph streams. In Robert Krauthgamer, editor, Proceedings of the Twenty-Seventh Annual ACM-SIAM Symposium on Discrete Algorithms, SODA 2016, Arlington, VA, USA, January 10-12, 2016, pages 1326–1344. SIAM, 2016.
  • [13] William H. Cunningham. Testing membership in matroid polyhedra. J. Comb. Theory, Ser. B, 36(2):161–188, 1984.
  • [14] Jack Edmonds and D.R. Fulkerson. Transversals and matroid partition. Journal of Research National Bureau of Standards Section B, 69:147–153, 1965.
  • [15] Uriel Feige and Michael Langberg. Approximation algorithms for maximization problems arising in graph partitioning. J. Algorithms, 41(2):174–211, 2001.
  • [16] Moran Feldman, Paul Liu, Ashkan Norouzi-Fard, Ola Svensson, and Rico Zenklusen. Streaming submodular maximization under matroid constraints. In Mikolaj Bojanczyk, Emanuela Merelli, and David P. Woodruff, editors, 49th International Colloquium on Automata, Languages, and Programming, ICALP 2022, July 4-8, 2022, Paris, France, volume 229 of LIPIcs, pages 59:1–59:20. Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 2022.
  • [17] Moran Feldman, Ola Svensson, and Rico Zenklusen. A simple O(log log(rank))-competitive algorithm for the matroid secretary problem. In Piotr Indyk, editor, Proceedings of the Twenty-Sixth Annual ACM-SIAM Symposium on Discrete Algorithms, SODA 2015, San Diego, CA, USA, January 4-6, 2015, pages 1189–1201. SIAM, 2015.
  • [18] Andreas Emil Feldmann, Karthik C. S., Euiwoong Lee, and Pasin Manurangsi. A survey on approximation in parameterized complexity: Hardness and algorithms. Algorithms, 13(6):146, 2020.
  • [19] Yuval Filmus and Justin Ward. The power of local search: Maximum coverage over a matroid. In Christoph Dürr and Thomas Wilke, editors, 29th International Symposium on Theoretical Aspects of Computer Science, STACS 2012, February 29th - March 3rd, 2012, Paris, France, volume 14 of LIPIcs, pages 601–612. Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 2012.
  • [20] Yuval Filmus and Justin Ward. A tight combinatorial algorithm for submodular maximization subject to a matroid constraint. In 53rd Annual IEEE Symposium on Foundations of Computer Science, FOCS 2012, New Brunswick, NJ, USA, October 20-23, 2012, pages 659–668. IEEE Computer Society, 2012.
  • [21] Yuval Filmus and Justin Ward. Monotone submodular maximization over a matroid via non-oblivious local search. SIAM J. Comput., 43(2):514–542, 2014.
  • [22] Jiong Guo, Rolf Niedermeier, and Sebastian Wernicke. Parameterized complexity of generalized vertex cover problems. In Frank K. H. A. Dehne, Alejandro López-Ortiz, and Jörg-Rüdiger Sack, editors, Algorithms and Data Structures, 9th International Workshop, WADS 2005, Waterloo, Canada, August 15-17, 2005, Proceedings, volume 3608 of Lecture Notes in Computer Science, pages 36–48. Springer, 2005.
  • [23] Anupam Gupta, Euiwoong Lee, and Jason Li. Faster exact and approximate algorithms for k-cut. In Mikkel Thorup, editor, 59th IEEE Annual Symposium on Foundations of Computer Science, FOCS 2018, Paris, France, October 7-9, 2018, pages 113–123. IEEE Computer Society, 2018.
  • [24] Qiaoming Han, Yinyu Ye, Hantao Zhang, and Jiawei Zhang. On approximation of max-vertex-cover. Eur. J. Oper. Res., 143(2):342–355, 2002.
  • [25] Qiaoming Han, Yinyu Ye, and Jiawei Zhang. An improved rounding method and semidefinite programming relaxation for graph partition. Math. Program., 92(3):509–535, 2002.
  • [26] Dorit S Hochbaum and Anu Pathria. Analysis of the greedy approach in covering problems. Naval Research Quarterly, 45:615–627, 1998.
  • [27] Chien-Chung Huang and François Sellier. Matroid-constrained maximum vertex cover: Approximate kernels and streaming algorithms. In Artur Czumaj and Qin Xin, editors, 18th Scandinavian Symposium and Workshops on Algorithm Theory, SWAT 2022, June 27-29, 2022, Tórshavn, Faroe Islands, volume 227 of LIPIcs, pages 27:1–27:15. Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 2022.
  • [28] Sungjin Im and Yajun Wang. Secretary problems: Laminar matroid and interval scheduling. In Dana Randall, editor, Proceedings of the Twenty-Second Annual ACM-SIAM Symposium on Discrete Algorithms, SODA 2011, San Francisco, California, USA, January 23-25, 2011, pages 1265–1274. SIAM, 2011.
  • [29] Naoyuki Kamiyama. A note on robust subsets of transversal matroids. CoRR, abs/2210.09534, 2022.
  • [30] Felix Lazebnik, Vasiliy A Ustimenko, and Andrew J Woldar. A new series of dense graphs of high girth. Bulletin of the American mathematical society, 32(1):73–79, 1995.
  • [31] Jon Lee, Maxim Sviridenko, and Jan Vondrák. Submodular maximization over multiple matroids via generalized exchange properties. Mathematics of Operations Res., 35(4):795–806, 2010.
  • [32] André Linhares, Neil Olver, Chaitanya Swamy, and Rico Zenklusen. Approximate multi-matroid intersection via iterative refinement. In Andrea Lodi and Viswanath Nagarajan, editors, Integer Programming and Combinatorial Optimization - 20th International Conference, IPCO 2019, Ann Arbor, MI, USA, May 22-24, 2019, Proceedings, volume 11480 of Lecture Notes in Computer Science, pages 299–312. Springer, 2019.
  • [33] Daniel Lokshtanov, Fahad Panolan, M. S. Ramanujan, and Saket Saurabh. Lossy kernelization. In Hamed Hatami, Pierre McKenzie, and Valerie King, editors, Proceedings of the 49th Annual ACM SIGACT Symposium on Theory of Computing, STOC 2017, Montreal, QC, Canada, June 19-23, 2017, pages 224–237. ACM, 2017.
  • [34] Pasin Manurangsi. A note on max k-vertex cover: Faster fpt-as, smaller approximate kernel and improved approximation. In Jeremy T. Fineman and Michael Mitzenmacher, editors, 2nd Symposium on Simplicity in Algorithms, SOSA 2019, January 8-9, 2019, San Diego, CA, USA, volume 69 of OASIcs, pages 15:1–15:21. Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 2019.
  • [35] Pasin Manurangsi. Tight running time lower bounds for strong inapproximability of maximum k-coverage, unique set cover and related problems (via t-wise agreement testing theorem). In Shuchi Chawla, editor, Proceedings of the 2020 ACM-SIAM Symposium on Discrete Algorithms, SODA 2020, Salt Lake City, UT, USA, January 5-8, 2020, pages 62–81. SIAM, 2020.
  • [36] Dániel Marx. Parameterized complexity and approximation algorithms. Comput. J., 51(1):60–78, 2008.
  • [37] Andrew McGregor, David Tench, and Hoa T. Vu. Maximum coverage in the data stream model: Parameterized and generalized. In Ke Yi and Zhewei Wei, editors, 24th International Conference on Database Theory, ICDT 2021, March 23-26, 2021, Nicosia, Cyprus, volume 186 of LIPIcs, pages 12:1–12:20. Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 2021.
  • [38] L. Mirsky and H. Perfect. Applications of the notion of independence to problems of combinatorial analysis. Journal of Combinatorial Theory, 2:327–357, 1965.
  • [39] S. Muthukrishnan. Data streams: Algorithms and applications. Found. Trends Theor. Comput. Sci., 1(2), 2005.
  • [40] András Recski. Matroid Theory and its Applications in Electric Network Theory and in Statics. Springer-Verlag, 1989.
  • [41] Alexander Schrijver. Combinatorial optimization: polyhedra and efficiency. Springer, 2003.
  • [42] José A Soto. A simple ptas for weighted matroid matching on strongly base orderable matroids. Electronic Notes in Discrete Mathematics, 37(0):75–80, 2011.
  • [43] D.J.A Welsh. Transversal theory and matroids. Canadian Journal of Mathematics, 21:1323–1302, 1969.

Appendix A An FPT-AS for Hypergraphs

Suppose that we are given a hypergraph G=(V,E)G=(V,E) with edge size bounded by a constant η2\eta\geq 2. We proceed as in Section 2. First, notice that:

EG(S)=EG(Oin)+EG(U)EG(Oin,U).E_{G}(S)=E_{G}(O^{in})+E_{G}(U^{*})-E_{G}(O^{in},U^{*}).

We bound 𝔼[EG(Oin,U)]\mathbb{E}[E_{G}(O^{in},U^{*})] as follows. By construction, [uU]=ε\mathbb{P}[u\in U^{*}]=\varepsilon for all uUu\in U. Then,

𝔼[EG(Oin,U)]=eE,eOinw(e)𝟙[eU]\displaystyle\mathbb{E}[E_{G}(O^{in},U^{*})]=\sum_{e\in E,e\cap O^{in}\neq\emptyset}w(e)\cdot\mathbbm{1}[e\cap U^{*}\neq\emptyset] eE,eOinw(e)(η1)ε\displaystyle\leq\sum_{e\in E,e\cap O^{in}\neq\emptyset}w(e)\cdot(\eta-1)\cdot\varepsilon
=ε(η1)𝔼[EG(Oin)].\displaystyle=\varepsilon\cdot(\eta-1)\cdot\mathbb{E}[E_{G}(O^{in})].

using union bound and the fact that at most η1\eta-1 endpoints can be in UU. Furthermore, the value 𝔼[EG(U)]\mathbb{E}[E_{G}(U^{*})] can be rearranged as follows:

𝔼[EG(U)]=𝔼[uU(degw(u)eδ(u)w(e)|eU|1|eU|)]\displaystyle\mathbb{E}[E_{G}(U^{*})]=\mathbb{E}\left[\sum_{u\in U^{*}}\left(\deg_{w}(u)-\sum_{e\in\delta(u)}w(e)\cdot\frac{|e\cap U^{*}|-1}{|e\cap U^{*}|}\right)\right]
\displaystyle\geq 𝔼[uU(degw(u)eδ(u)w(e)η1η𝟙[eU\{u}])]\displaystyle\,\mathbb{E}\left[\sum_{u\in U^{*}}\left(\deg_{w}(u)-\sum_{e\in\delta(u)}w(e)\cdot\frac{\eta-1}{\eta}\cdot\mathbbm{1}[e\cap U^{*}\backslash\{u\}\neq\emptyset]\right)\right]
\displaystyle\geq 𝔼[uU(degw(u)𝟙[uU]eδ(u)w(e)η1η𝟙[uUeU\{u}])]\displaystyle\,\mathbb{E}\left[\sum_{u\in U}\left(\deg_{w}(u)\cdot\mathbbm{1}[u\in U^{*}]-\sum_{e\in\delta(u)}w(e)\cdot\frac{\eta-1}{\eta}\cdot\mathbbm{1}[u\in U^{*}\wedge e\cap U^{*}\backslash\{u\}\neq\emptyset]\right)\right]
\displaystyle\geq 𝔼[uU(degw(u)εη1ηeδ(u)w(e)(η1)ε2)]\displaystyle\,\mathbb{E}\left[\sum_{u\in U}\left(\deg_{w}(u)\cdot\varepsilon-\frac{\eta-1}{\eta}\sum_{e\in\delta(u)}w(e)\cdot(\eta-1)\cdot\varepsilon^{2}\right)\right]
ε(1ε(η1))(uUdegw(u)).\displaystyle\geq\varepsilon\cdot(1-\varepsilon\cdot(\eta-1))\left(\sum_{u\in U}\deg_{w}(u)\right).

Recall that by robustness, for all uOoutu\in O^{out}, the elements of UuU_{u} have weighted degree no less than the one of uu. Therefore,

𝔼[EG(U)]\displaystyle\mathbb{E}[E_{G}(U^{*})] ε(1ε(η1))(uOoutvUudegw(v))\displaystyle\geq\varepsilon\cdot(1-\varepsilon\cdot(\eta-1))\left(\sum_{u\in O^{out}}\sum_{v\in U_{u}}\deg_{w}(v)\right)
ε(1ε(η1))(uOout1εdegw(u))\displaystyle\geq\varepsilon\cdot(1-\varepsilon\cdot(\eta-1))\left(\sum_{u\in O^{out}}\frac{1}{\varepsilon}\cdot\deg_{w}(u)\right)
(1ε(η1))EG(Oout).\displaystyle\geq(1-\varepsilon\cdot(\eta-1))\cdot E_{G}(O^{out}).

As a result, we get:

𝔼[EG(S)]\displaystyle\mathbb{E}[E_{G}(S)] EG(Oin)+(1ε(η1))EG(Oout)ε(η1)EG(Oin)\displaystyle\geq E_{G}(O^{in})+(1-\varepsilon\cdot(\eta-1))\cdot E_{G}(O^{out})-\varepsilon\cdot(\eta-1)\cdot E_{G}(O^{in})
(1ε(η1))EG(O).\displaystyle\geq(1-\varepsilon\cdot(\eta-1))\cdot E_{G}(O).

By averaging principle, there exists a set SVS\subseteq V^{\prime} such that SS\in\mathcal{I} and such that EG(S)(1(η1)ε)EG(O)E_{G}(S)\geq(1-(\eta-1)\cdot\varepsilon)\cdot E_{G}(O).

Appendix B Streaming FPT-AS Algorithm for Hypergraphs

Here we suppose that we are given a hypergraph G=(V,E)G=(V,E) with edge size bounded by a constant η2\eta\geq 2 as an adjacency list stream. Using the idea of Theorem 16 and the result of Appendix A, one can get in the incidence streaming model a (1(η1)ε)(1-(\eta-1)\cdot\varepsilon) approximation using O(τη)O(\tau^{\eta}) memory, where τ\tau depends on the type of matroid, as prescribed in Theorem 8. In fact, we can maintain through the execution of the algorithm for each subset of at most η\eta elements SVS\subseteq V^{\prime} the sum of the weight of the hyper-edges ee such that eV=Se\cap V^{\prime}=S (just like in the proof of Theorem 16 where we keep track of these values for pairs in VV^{\prime}). For instance, for a uniform, a partition, or a laminar matroid, we could get a (1ε)(1-\varepsilon) approximation using O((2ηkε)η)O((\frac{2\eta\cdot k}{\varepsilon})^{\eta}) variables. This shows that for the special matroids that we studied of rank kk, a weighted coverage function with bounded frequency η\eta can be (1ε)(1-\varepsilon) approximated in streaming. This extends a result of [37] to matroids.

Appendix C Local Search with the Objective Function EGE_{G}

Let ε>0\varepsilon>0. When the cover function EGE_{G} is used for the local search, we use the example depicted in Figure 5, where the constraint is a uniform matroid of rank kk. This example is very similar to the one in Section 5.3. We show that for any pp, if kk is large enough, the set S={ai}1ikS=\{a_{i}\}_{1\leq i\leq k} is a local optimum of EGE_{G}, even if pp simultaneous exchanges at the same time are allowed. As the solution SS has value EG(S)=k2E_{G}(S)=k^{2} while the optimal solution O={bi}1ikO=\{b_{i}\}_{1\leq i\leq k} has value EG(O)=k2+k2(1ε)E_{G}(O)=k^{2}+k^{2}\cdot(1-\varepsilon), the approximation guarantee of such an algorithm cannot be better than 1/21/2.

We can observe that the most interesting exchanges have to be of the form aibia_{i}\leftrightarrow b_{i}. If we perform pp such exchanges, for instance a1,,apb1,,bpa_{1},\dots,a_{p}\leftrightarrow b_{1},\dots,b_{p} then the gain for the value of gg is:

EG(S+{b1,bp}{a1,ap})EG(S)\displaystyle\quad E_{G}(S+\{b_{1},\dots b_{p}\}-\{a_{1},\dots a_{p}\})-E_{G}(S)
=p(kp)\displaystyle=-p(k-p) for {ai,bi}\{a_{i},b_{i}\} such that ip,j>pi\leq p,\,j>p
+pk(1ε)\displaystyle\quad+pk\cdot(1-\varepsilon) for {bi,ci}\{b_{i},c_{i}\} such that ipi\leq p
=p(kp)+pk(1ε)=pkε+p2\displaystyle=-p(k-p)+pk\cdot(1-\varepsilon)=-pk\varepsilon+p^{2}

as ε>0\varepsilon>0, when kk is big enough the gain becomes negative. Therefore, when kk is big enough, S={ai}1ikS=\{a_{i}\}_{1\leq i\leq k} is a local optimum even if pp exchanges are allowed.

a1a_{1}a2a_{2}a3a_{3}\cdotsaka_{k}b1b_{1}b2b_{2}b3b_{3}\cdotsbkb_{k}c1c_{1}c2c_{2}c3c_{3}\cdotsckc_{k}
Figure 5: Example when the function used for local search is EGE_{G}. The edges between the aia_{i}s and the bib_{i}s are of weight 11, and those between the bib_{i}s and the cic_{i}s are of weight k(1ε)k\cdot(1-\varepsilon).