Covering edges in networks

In this paper we consider the covering problem on a network G = (V, E) with edge demands. The task is to cover a subset J ⊆ E of the edges with a minimum number of facilities within a predefined coverage radius. We focus on both the nodal and the absolute version of this problem. In the latter, facilities may be placed everywhere in the network. While there already exist polynomial time algorithms to solve the problem on trees, we establish a finite dominating set (i.e., a finite subset of points provably containing an optimal solution) for the absolute version in general graphs. Complexity and approximability results are given and a greedy strategy is proved to be a (1 + ln(|J|))‐approximate algorithm. Finally, the different approaches are compared in a computational study.

In spite of its practical relevance and the scientific challenge in dealing with this problem, literature on network location problems with edge demands is rather sparse. Quite often, demand is aggregated at the nodes to model such problems. This may lead to nonoptimal or often infeasible results. The covering problem in networks with edge demands was first introduced by Revelle, Toregas, and Falkson [15]. Motivated by servicing population along street networks, a set of both nodes and edges should be covered by a minimum number of facilities within a maximum service distance. In their model, the candidate sites of the facilities are restricted to the nodes in the network. Complementary and partial coverage of an edge by two facilities are not allowed. In contrast, the model in Sadigh, Mozafari, and Kashan [16] allows complementary coverage of an edge by two facilities. A mixed integer linear programming formulation as well as size reduction rules for the problem is given. The problem is then solved using a modified tabu search algorithm. Again, candidate locations are restricted to the nodes of the network.
In Church and Meadows [6], the idea of edge-covering is applied to the maximal covering location problem. Again, the set of possible facilities is restricted to the nodes of the network. The problem can be stated by computing the so-called network intersection points which mark the border of the maximum coverage distance of the candidate facilities. These points divide the edges of the network into subedges such that all points within such a subedge can be covered by the same nodes. Thus, the problem can be solved by maximizing the total length of subedges covered by the located facilities by integer linear programming. Berman, Verter, and Kara [3] give an alternative formulation for the maximal edge-covering model with fewer number of variables and constraints. The result is a nonlinear mixed integer program. They present a greedy algorithm for solving larger problem instances and conduct a case study addressing the transportation of hazardous materials. In Gurevich, Stockmeyer, and Vishkin [9], a linear time algorithm for solving edge covering problems with complementary coverage on trees is developed. They generalize their algorithm for problems on general graphs leading to an exponential time algorithm. Their idea is to divide the graph into components which are "almost trees." They also showed that facilities of an optimal solution can be located on multiples of 1/2 along the edges when edge lengths are integral. In the most recent paper by Berman, Kalcsics, and Krass [2], the maximum location covering problem with edge-based demand as well as its obnoxious version are introduced. In their work, facilities may also be located along the edges of the network. For the single facility case, a solution algorithm is given which is either exact or approximate depending on the complexity of the demand functions along the edges. For the multifacility problem on trees with constant demand functions, a FDS is established. They present an example establishing that these results are not transferable to general graphs.
The work of Minieka [14] is the first article incorporating edge demands in median and center problems. In his work, he calculates the (absolute) unweighted centers and medians of a graph such that every point on every edge is served. In Handler and Mirchandani [11], the p-median problem with discrete nodal and continuous edge demands is formulated. To solve the problem on trees, a variant of the Goldman algorithm (cf. Goldman [8]) is developed. In Brandeau, Chiu, and Batta [4], Cavalier and Sherali [5], and Sherali and Nordai [17], median problems on special graphs such as trees, cycles, and chain graphs are investigated. Some error bounds for the p-median problem with edge demands when restricting the candidate facilities to the node set are given in Zhao and Batta [19]. They show that in this case, a model with continuous edge demands can be transformed into a model with discrete edge demands.
As we aim to locate facilities everywhere along the edges, the set of possible locations is infinite. In order to reduce this problem to a combinatorial one, one might ask for a finite subset of the solution space in which the optimal solution is contained. Such a set is called a FDS. A survey on such finite sets for different network location problems is given in Hooker, Garfinkel, and Chen [12].
The rest of this paper is structured as follows: in Section 2, the complementary edge covering problem is formally introduced. For general graphs, a FDS is derived. Complexity and approximability results are given in Section 3. A greedy algorithm with approximation guarantee is established in Section 4 using the structural insights of the FDSs. Section 5 presents a mixed-integer linear programming formulation for solving the problem and compares the different solution approaches in a computational study. The paper concludes in Section 6 with a summary and further research interests.

Notations and definitions
Let G = (V, E) be an undirected graph with node set V and edge set E. For an edge e ∈ E, its length is given by a positive integer l e ∈ N. (Note the theoretical results presented in this paper carry over to l e ∈ R + , mutatis mutandis.) Although G is undirected, we often refer to an edge as ordered tuple e = (u, v) connecting nodes u, v ∈ V, with an arbitrary but fixed order. This is necessary to define a point x on edge e = (u, v) ∈ E, denoted by x ∈ e given by a tuple x = (e, ), ∈ [0, 1], where is the relative distance of x from u with respect to l e . By (e, [ 1 , 2 ]), we denote the subedge of e ∈ E starting at (e, 1 ) and ending at (e, 2 ) for some 0 By definition, the equality ((u, v), ) = ((v, u),1 − ) holds for every (u, v) ∈ E and ∈ [0, 1]. Note that each nonsingleton node v ∈ G can be considered as a point, since it can be represented by such a tuple by choosing an edge incident to v and setting = 0 or = 1, respectively. We use the notation x ∈ G if we do not want to specify whether x is a node or a point on an edge. For two points x = (e 1 , ), and y = (e 2 , ) with e 1 = (u, v), e 2 = (w, z) ∈ E, e 1 ≠ e 2 , the distance between x and y is defined as For two points x = (e, ), and y = (e, ) on the same edge e = (u, v) ∈ E, < , the distance between x and y is defined as For a given radius ∈ N, Consider the graph given in Figure 1A and a coverage radius = 2. While at least two facilities are needed in the node restricted version, the point x = covers edge e completely. On the other hand, ACEC is not approximable by solving a vertex-covering problem where the end nodes of all edges are covered, see Figure 1B: for unit edge lengths and = 1, a facility located at the center node covers all nodes but none of the points in the interior of the outer edges. By extending the outer cycle, the solution gets arbitrarily bad.

Structural results
The next results establish that we may assume in the following without loss of generality that the length of edges in the network is bounded by .

Lemma 2.2.
Given an instance of ACEC with an edge e ∈ J of length l e > 2 . Then, the length of e can be reduced by 2 without affecting the optimal solution except for the facility which can be saved in order to cover the deleted part of the edge.
Proof. Let I be an arbitrary instance of ACEC with l e > 2 for some e = (u, v) ∈ J and let I ′ denote the instance where l e is reduced by 2 . Furthermore, let  * be an optimal solution for instance I. Clearly, there is at least one facility x ∈  * hosted on edge e. We consider two cases (cf. Figure 2): Case 1: (x) ⊂ e, that is, facility x does not cover any points outside of edge e. Thus, facility x splits e into (at most) three parts: the part (e,[t 1 , t 2 ]) for suitable t 1 , t 2 with 0 ≤ t 1 < t 2 ≤ 1 which is covered by x, and the parts (e,[0, In instance I ′ , the edge corresponding to e has length + and thus, the set of facilities  * ⧵ {x} is feasible for I ′ . Assume now that  * ⧵ {x} is not optimal for I ′ . Then there is a solution Since we can cover the additional edge length of 2 by a single facility,  * is not optimal for I, which is a contradiction.
Edge with length greater than 2R. A, Case 1: Illustration of coverage points. A, An exact coverage point. B, A cycle coverage point that is, facility x covers points outside of edge e. Without loss of generality, let dist(x, v) = − for some > 0 (otherwise change the roles of u and v). Following the argument of the first case, the length of edge e reduces from + 2 − in instance I to − > 0 in instance I ′ and hence,  * ⧵ {x} is feasible and optimal for I ′ . ▪ By iteratively applying the last lemma, without loss of generality, instances of ACEC can be restricted to edge lengths smaller than or equal to 2 . The optimal solution for edges with length greater than 2 can be reconstructed by locating ⌊l e /2 ⌋ additional facilities at an interval of 2 , starting from any neighboring facility. Furthermore, restricting the edge lengths to at most can be achieved by splitting those edges with length R < l e ≤ 2 , that is, the number of nodes in the modified graph is bounded by (n + m) and the number of edges is bounded by 2m.

Assumption 2.3.
In the following, we assume that l e ≤ for all e ∈ E.
For the node restricted version of the problem, l e > implies that two facilities have to be placed at both end nodes of edge e ∈ E, whereas infeasibility of the problem instance follows directly if l e > 2 . Thus, Assumption 2.3 also applies to NCEC.
According to Gurevich, Stockmeyer, and Vishkin [9], the set is a FDS for ACEC. However, the size of this set depends on the edge lengths of the network. In this section, we establish an FDS for ACEC which is independent of the edge lengths. In particular, the FDS derived below is a subset of FDS ′ . On the other hand, the new FDS is more difficult to calculate since it is based on cycles. However, it yields some structural insights which can be extended to real valued edge lengths. In Section 4, we derive a greedy approximation algorithm based on these insights. In order to compute the FDS, we need to define the network intersection and exact coverage points (see e.g., [2]).

Definition 2.4. (Network intersection points). A point
The set of all network intersection points is denoted by NIP.

Definition 2.5. (Exact coverage points).
A point x ∈ G is called an exact coverage point of edge e = (u, v) if it exactly covers edge e complementarily through both endpoints of e, that is, there exists some y = (e, ) ∈ e such that dist(x, Figure 3A). The set of all exact coverage points is denoted by EP.
We also need to define a new type of points for the FDS.
Definition 2.6. (Cycle coverage points). Let  G denote the set of all simple cycles in a graph G. Furthermore, we define the length of a cycle C ∈  G as the sum of its edge lengths, denoted by where dist(x, C) = min y ∈ C dist(x, y). The set of all cycle coverage points in a graph is denoted by CCP.
Since p ≔ ⌈l C /2 ⌉ points are needed to cover a cycle C, a cycle coverage point x is reached by shifting one of the facilities as far as possible outside the cycle as illustrated in Figure 3B. Shifting the facility any further would cause a coverage gap on the cycle. Clearly, EP ⊆ CCP by definition.
Then, FDS |J| is a FDS for ACEC for any graph.
Proof. Let  * = {f 1 , …, f p } be an optimal solution of ACEC. Without loss of generality, we can assume that J = E, since we could delete all edges e ∈ E which are not completely covered by  * , otherwise. Choose any arbitrary facility f i ∈  * that does not belong to FDS |J| . Then, f i = (e, ) for some edge e ∈ E and ∈ (0, 1). By either increasing or decreasing , we can move f i along edge e until the optimal solution becomes infeasible. Let f i ′ be the last point that the solution is just feasible or ∈ {0, 1}. In the latter case, f i ′ is located on a node and thus, f i ′ ∈ FDS |J| . Otherwise we consider three cases: • The optimal solution becomes infeasible because f i ′ stops covering an edge completely. In this case, by definition, f i ′ ∈ NIP and thus, f i ′ ∈ FDS |J| . • The optimal solution becomes infeasible because f i ′ stops covering an edge c = (u, v) ∈ J complementarily through both end nodes u and v. Then, by definition, and moving f i ′ any further would cause a gap at the boundaries (cf. Figure 4A). If there exists j with j ∈ {0, 1} then f i ′ ∈ FDS 2 . Otherwise, we continue shifting f i ′ , but to maintain feasibility, we have to either increase or decrease j , for all j ∈ {1, …, k} such that (2) is still satisfied. That is, all neighboring facilities are also moved. Iteratively repeating this process necessarily yields a solution such that the facilities cannot be moved anymore without loosing feasibility, because either: • One of the facilities reaches a vertex. Then, all involved facilities are in FDS |J| since (2) is still satisfied.
• One facility becomes a network intersection point or a cycle coverage point. By the same arguments as before, all involved facilities are in FDS |J| . • There exists a location f l = (e l , l ) which cannot be moved anymore since it is drawn in two different directions, that is, we would simultaneously have to increase and to decrease l (cf. Figure 4B). But this is only possible if there exists a cycle C and a vertex v ∈ C such that a facility f h ∉ C covers node v and a subset of C. Since f l is drawn into two different directions, cycle C is completely covered by facilities lying on C. Moreover, each of these facilities covers distinct parts of C, each of length 2 . Since (2) still holds, facility f h has to be a cycle coverage point, that is, f h ∈ CCP. Hence, all involved facilities are included in FDS |J| .
Fixing the facilities which are already included in FDS |J| and repeating the whole process yield the desired result. ▪ Note that the cardinality of FDS |J| may be exponential in the input size of ACEC since the number of cycles is exponential for a graph in general. However, the result gives structural insights to the locations of optimal facilities. Note that also, FDS |J| is a subset of FDS ′ and thus, contains less candidates. Furthermore, the result implies a FDS of polynomial size whenever the number of simple cycles in the graph is polynomially bounded. The last property implies immediately the following corollary, as the number of simple cycles in cactus graphs is, by definition, in (m).
Corollary 2.8. The size of FDS |J| is polynomially bounded for cactus graphs.

COMPLEXITY AND APPROXIMABILITY OF COMPLEMENTARY EDGE COVER PROBLEMS
In this section, we analyze the complexity and approximability of complementary edge cover problems. As a main result, we first show bounds on approximability and establish a greedy algorithm yielding a (1 + ln|J|)-approximation ratio.

Proof.
a We show that MINIMAL SET COVER is L-reducible to NCEC. The claim then follows since the L-reduction is an approximability preserving reduction, see for example Ausiello et al [1]. Let I = ( , ) be an arbitrary instance of MINIMAL Set Cover, where  = {1, … , m} is a universe and  = {S 1 , … , S n } is a collection of nonempty subsets of  . The problem is to find a subset  ′ ⊆  of minimal cardinality such that  ′ covers  .
Construct a graph G = (V, E) as follows: for every set S i ∈ , create a node in G. Furthermore, add two nodes u and u ′ for every element u ∈  and connect them by an edge (u ′ , u). Finally connect all nodes u ∈  with all nodes S i if and only if u ∈ S i . All edges e ∈ E are assumed to have unit edge lengths, and J is given by {(u, u ′ ) ∈ E|u ∈  } (see Figure 5). By setting the coverage radius = 2 there exists a set cover of cardinality p if and only if there is a solution of NCEC for instance (G, l, J, ) using p facilities located at nodes S 1 , …, S n . Observe that if there is an optimal solution  where facilities are located at a node corresponding to some u ∈  , then this solution can be transformed in linear time to a solution within  ⊆  by relocating all facilities from u to an arbitrary set S i ∈  containing u.
Clearly, for every instance of MINIMAL SET COVER, the instance (G, l, J, ) of NCEC is computable in polynomial time. If the instance of MINIMAL SET COVER has a solution, then the instance of NCEC has a solution, and any (not necessarily optimal) solution of the NCEC-instance can be transformed back in linear time to a solution of the MINIMAL SET COVER instance having the same cardinality. b Follows from the L-reduction of Part (a) and the inapproximability result of MINIMAL SET COVER, which is not approximable within (1 − ) ln(| |), see Ausiello et al [1]. c The L-reduction is analogous to Part (a) since any optimal facility f ∉ {S 1 , …, S n } can be shifted to a node S i ∈  closest to f without worsening the optimal objective value. ▪

Theorem 3.2. NCEC is L-reducible to MINIMAL SET COVER.
Proof. Every node i ∈ V can divide a given edge e = (u, v) ∈ E into at most three parts: one part covers (e,[0, t 1 ]) for a suitable t 1 ∈ [0, 1], the second part covers (e,[t 2 , 1]) for a suitable t 2 with t 1 < t 2 ≤ 1 and the part which is not covered (e,[t 1 , t 2 ]). Thus, iteratively dividing and sorting the intervals on each edge, we can have at most 2|V| + 1 intervals on an edge-adding up to |E|(2|V| + 1) in the worst case. We construct the MINIMAL SET COVER instance as follows: Let  be the universe consisting of all the intervals on the edges in E. The set  = {S 1 , … , S |V| } consists of |V| sets, where u ∈  is contained in the set S i if u is covered by vertex i. Clearly, any feasible solution of the MINIMAL SET COVER instance yields a feasible solution of the NCEC-instance with the same cardinality. Since the intervals on the edges can be calculated using shortest path algorithms, the reduction is polynomial and any solution of the MINIMAL SET COVER instance can be transformed in linear time to a solution of the NCEC-instance.
▪ Proof. By Theorem 3.2 a MINIMAL SET COVER instance with | | ≤ |E|(2|V| + 1) can be computed in polynomial time having the same objective value. In addition any solution of this instance can be transformed back to a solution of the NCEC-instance in linear time. By Johnson [13], the minimal set cover problem can be approximated within 1 + ln| |. Thus, transforming NCEC into a set cover problem and using the algorithm stated in Johnson [13] returns an approximate solution with factor 1 + ln(|E| (2|V| + 1)). This implies the desired result by simple calculations. ▪ Note that the idea of Theorem 3.3 only works for NCEC since the nodes of V are a FDS of polynomial size. However, this does not work for ACEC.

Theorem 3.4. Let I = (G, l, J, ) be the underlying graph of an instance of NCEC and ACEC and let  *
NCEC and  * ACEC denote a corresponding optimal solutions with respect to instance I, respectively. Then, Proof. The first inequality is trivial, since ACEC is a relaxation of NCEC. Let I be an arbitrary instance of ACEC and  * ACEC = {f 1 , … , f p } be an optimal solution of ACEC with respect to I. If f i , i ∈ {1, …, p} is already a nodal location, then we have nothing to show. So let f i ∈ int(e) for some e = (u, v) ∈ E. Replacing f i by two facilities located at u and v, respectively, yields a feasible solution of NCEC. Hence, 2 ⋅ | * ACEC | is an upper bound of | * NCEC |. To show that this bound is tight we consider the graph given in Figure 6 with edge lengths l e = 2 for all edges e ∈ E and coverage radius = 3. In this example, we need 3 facilities f 1 , f 2 and f 3 in the absolute case whereas 6 facilities have to be installed in the nodal case. By concatenating multiple copies of the graph, arbitrarily large instances can be constructed. ▪ Corollary 3.5. ACEC is approximable within a factor 6(1 + ln|V|).
Proof. The proofs of Theorems 3.3 and 3.4 yield an approximation ratio of 2 + 2ln|E| + 2ln(2|V| + 1) implying the desired result. ▪ In the next section we will see that a greedy strategy similar to the greedy algorithm of set cover achieves an even better approximation ratio. We conclude the theoretical results on approximability with the following corollary. Corollary 3.6. ACEC is at least as hard to solve as its node restricted counterpart NCEC.

GREEDY ALGORITHM FOR THE ABSOLUTE COMPLEMENTARY EDGE COVER PROBLEM
In this section, we establish a greedy algorithm extending the procedure introduced in Williamson and Shmoys [18] for approximating the minimal set cover. Their idea to choose in each iteration a set which minimizes the points of uncovered elements is, however, not directly applicable to ACEC. The two main differences are that • the FDS obtained in the last section is of exponential size and • we have to cover continuous sets instead of discrete elements.
In order to salvage the greedy idea we will show subsequently that we can reduce the cardinality of the candidates to polynomial size and introduce a measure for evaluating the "size" of the covered area.
Recall that (x) ≔ {y ∈ G|dist(x, y) ≤ } is the covered area of a given point x ∈ G. To simplify notation, we denote the set of all points on edges of J by G J := {x ∈ e| e ∈ J}. Let  G k = {x 1 , … , x k } be the current solution of the greedy algorithm after iteration k and let  G = {x 1 , …, x l } denote the solution after termination of the algorithm. For k ≤ l, we define C k ≔ G J ∩( G k−1 ) as the set of all points that are covered by the current solution at the beginning of iteration k, and analogously, the set of all points which are not covered yet by U k := G J ∖C k . For arbitrary x ∈ G,Ĉ k (x) denotes the set of points which are covered by

Algorithm 1. Greedy algorithm for ACEC
Input: network G = (V, E) with edge lengths l e for e ∈ E, a subset J ⊆ E Output: a set of facilities covering all edges in J 1: procedure GREEDY 2: U ← U ⧵Ĉ(x k ) 10: end while 11: return  G k 12: end procedure The procedure of the greedy algorithm is outlined in Algorithm 1. The next lemma shows that it is only necessary to consider a subset of FDS |J| which can be computed in polynomial time (cf. line 7).

Lemma 4.2. For any k ≤ l, define
where C k is the current covered area. Then, max x∈G (Ĉ k (x)) = max x∈CAND k (Ĉ k (x)). Furthermore, the cardinality of CAND k is polynomially bounded in the input size.

Proof.
For x ∈ e where e ∈ E, the function (Ĉ k (x)) is a piecewise linear function. The slope of (Ĉ k (x)) changes as the number of (partially) covered edges changes or parts of the edge switch between covered and uncovered. These breakpoints are exactly the points contained in CAND k . It remains to show that the size of CAND k is polynomially bounded.
As l e ≤ for all e ∈ E, in each iteration, at least one additional edge is completely covered that has not been covered before. Thus, l ≤ |J|. We still have to identify the possible candidates for iteration k ≤ |J|.
Since on each edge, there are at most two network intersection points per vertex, the cardinality of NIP is bounded by 2|V|⋅|E|. Moreover, each node v ∈ V and each edge e ∈ J yield at most |E| − 3 exact coverage points since the smallest cycle contains three edges. Thus, In order to estimate the size of the set {x ∈ G | dist(x, C k ) = } we analyze the boundary of C k . On any edge e ∈ E, there are at most two boundary points of C k . Each of those boundary points can cause at most two points on an edge with distance . Hence, Note that this number is independent of the current iteration. In total, we have Since each of these points can be calculated by minimum path algorithms, the greedy algorithm runs in polynomial time. ▪ Analogous to the greedy algorithm for the minimal set cover problem (see [18]), we can prove the following theorem.

Theorem 4.3. (Approximation-ratio of Algorithm 1). Algorithm 1 is a (1 + ln(l))-approximation algorithm for ACEC, where l ≤ |J| denotes the number of iterations of the algorithm.
Proof. Choose any arbitrary iteration k of the greedy algorithm. To shorten the notation, we set A := (G J ) to be the measure of the total area which has to be covered. We establish two bounds used in the proof. The first bound can be derived by simple observation, that is The second bound follows from (Ĉ(x 1 )) ≥ · · · ≥ (Ĉ(x l )) by the choice of the greedy algorithm and is Also note that (U k ) > 0 for all k ≤ l. Let  * denote an optimal solution with value OPT. Then, it follows where the last equality holds because  * is an optimal cover with ( * ) = G J . Since (Ĉ k (x k )) = (U k ) − (U k+1 ), it follows that In total, we have where the last inequality follows since l ≤ |J|. ▪

MIXED-INTEGER PROGRAMMING FORMULATION AND COMPUTATIONAL STUDY
In the following, we derive a mixed-integer linear programming formulation for ACEC which is based on the following lemma.
Lemma 5.1. There exists an optimal solution of ACEC such that no more than one facility is located on the same edge.
Proof. Assume that we have an optimal solution in which two points are located on the same edge e ∈ E with e = (u, v). Let these points be given by f 1 = (e, 1 ) and f 2 = (e, 2 ), where we assume without loss of generality that 0 ≤ 1 ≤ 2 ≤ 1.
Then we can set a 1 = 0 and 2 = 1 and the resulting solution still covers all edges in J and is optimal (since l e ≤ for all e ∈ E). By optimality, neither u nor v is a leaf. Thus, we can set f 1 = (e, 0) and f 2 = (e ′ , 0) for a suitable edge e ′ = (v, w) ∈ E. Since we can repeat this process for all edges on which two facilities are located, this yields the desired result. Note that if the facility on edge e ′ covers edge c completely, the second facility may be chosen arbitrarily. The mixed-integer program is given by: z c e ′ e ′′ ≤ x e ′′ ∀c ∈ J, e ′ , e ′′ ∈ E (6h) The objective (6a) is to minimize the number of edges chosen to host a facility which is the same as minimizing the number of located facilities. An edge e ∈ E is chosen to host a facility if and only if the corresponding binary decision variable x e is set to one. The continuous variable e specifies its exact position. Equations (6b)-(6d) ensure the computation of r ev as deduced before. Inequality (6e) states the covering condition, that is, two facilities are required to cover edge c at least complementarily. Equality (6f) ensures that exactly one combination of edges e ′ , e ′ is assigned for covering edge c = (i,j) ∈ J. Of course, only the combination of edges is eligible that are chosen to host a facility which is guaranteed by (6g) and (6h). Using standard linearization techniques, the mixed integer programming formulation (6) is equivalent for any suitably large A mixed-integer linear programming formulation for the node restricted version NCEC is given by [16]. Since there are only finitely many candidate sites of the facilities, the structure of the linear programs for ACEC and NCEC differ fundamentally. We performed computational tests comparing three solution approaches for ACEC. All instances are solved using the mixed-integer program given above, solving a discrete set cover problem on the 1/2-discretization FDS ′ stated in Equation (1) by integer programming, and using the greedy approach of Algorithm 1. The three approaches are abbreviated as MILP, 1/2-DISC, and GREEDY, respectively. Note that MILP and 1/2-DISC solve ACEC exactly, whereas GREEDY approximates a solution to the problem.
In total, the analysis comprises 3600 random instances of ACEC. Each random graph is generated according to the Erdös-Rényi random graph model, and for each distinct combinations of the parameters |E| ∈ {15, 20, 30, 40, 60, 100, 200, 300} and ∈ {25, 50, 100, 150, 200}, 90 instances are generated. The instances contain both, sparser and denser graphs by varying the number of nodes for each specific number of edges. The edge lengths are chosen randomly, and all edges of the network have to be covered, that is, J = E. All computations have been done on a compute server. 1 For each instance, a time limit of 600 seconds was set, and each instance was restricted to use a single kernel.
The average runtime results of all instances solved within the time limit are summarized in Table 1. Note that with the exception of GREEDY, some instances could not be solved the time limit. In this case the number of solved instances is given in brackets.
As increases (and thus the length of the edges), the runtime of 1/2-DISC heavily increases. This is due to the fact that there are much more candidates in the set cove instance. In contrast, the runtimes of GREEDY only increase slightly, and the runtimes of MILP are not affected (see Figure 8A,B and Table 1). However, for larger instances, 1/2-DISC and MILP were not able to solve the problem in the time limit. In terms of runtime, GREEDY clearly outperforms the other approaches. In fact, GREEDY solves the problem even before the Gurobi model is initialized in all 3600 instances. Even if the time for initializing the Gurobi model is omitted and the time limit of Gurobi is set to the runtime of GREEDY, GREEDY returns in 70% of all instances a solution at least as good as the incumbent solution of 1/2-DISC (30% strictly better, 40% equal, 30% strictly worse). The average error of greedy to the best known solution at the time limit of 600 seconds is 38%, where the average error is given by solution greedy −solution incumbent solution incumbent . The frequency distribution of the average error is shown in Figure 8C.

CONCLUSION AND FURTHER RESEARCH
In this paper, we considered a generalization of the location set cover problem, where demand arises not only at the nodes but along the edges of a graph. The aim was to determine the minimum number of facilities in order to cover all demanding points within a given coverage radius. In order to cover an edge, multiple facilities may be used, that is, an edge may be covered complementarily. We showed that the problem, which is in general NP-hard to solve, is not even approximable within a constant factor. For general graphs, we derived a finite dominating set of exponential size, that is, a finite set containing at least one optimal solution. Although difficult to calculate, this set is a subset of the known discretization in [9] for general graphs and is a polynomially bounded set for special graph classes such as cactus graphs. Using the new structural results, a greedy algorithm based on a polynomially bounded subset of the FDS was proven to be a (1 + ln(|J|))-approximation algorithm of the absolute complementary edge cover problem. We also proposed a mixed-integer linear programming formulation for the problem and tested the performance of greedy in a computational study. An open question is whether there exists a FDS of polynomial size for general graphs. Future research may also address variants of the problem, such as a weighted version of edge cover or the multicover of edges.