Integer Programming Formulations for the k -Edge-Connected 3-Hop-Constrained Network Design Problem

In this article, we study the k -edge-connected L -hop- constrained network design problem. Given a weighted graph G = ( V , E ) , a set D of pairs of nodes, two integers L ≥ 2 and k ≥ 2, the problem consists in ﬁnding a minimum weight subgraph of G containing at least k edge-disjoint paths of length at most L between every pair { s , t } ∈ D . We consider the problem in the case where L =2, 3 and | D | ≥ 2. We ﬁrst discuss integer programming formulations introduced in the literature. Then, we introduce new integer programming formulations for the problem that are based on the transformation of the initial undirected graph into directed layered graphs. We present a theoretical comparison of these formulations in terms of LP-bound. Finally, these formulations are tested using CPLEX and compared in a computational study for k =3, 4, 5.


INTRODUCTION
Let G = (V , E) be an undirected graph with node set V and edge set E and D ⊆ V × V a set of pairs of nodes, called demands with |D| = d. If a pair {s, t} is a demand in D, we call s and t demand nodes or terminal nodes. Let L ≥ 2 be a fixed integer. If s and t are two nodes of V, an L-st-path in G is a path between s and t of length at most L, where the length is the number of edges (also called hops).
Given a weight function c : E → R, which associates the weight c(e) to each edge e ∈ E and an integer k ≥ 2, the k-edge-connected L-hop-constrained network design problem (kHNDP for short) consists in finding a minimum cost subgraph of G having at least k edge-disjoint L-st-paths between each demand {s, t} ∈ D.
The kHNDP has applications in the design of survivable telecommunication networks where bounded-length paths are required. Survivable networks must satisfy some connectivity requirements; that is, the networks should still be functional after the failure of certain links. As pointed out in [33] (see also [31]), the topology that seems to be very efficient (and needed in practice) is the uniform topology, that is to say that corresponding to networks that survive after the failure of k − 1 or fewer edges, for some k ≥ 2. However, this requirement is often insufficient regarding the reliability of a telecommunication network. In fact, the alternative paths could be too long to guarantee an effective routing. In data networks, such as the Internet, the elongation of the route of the information could cause a major loss in the transfer speed. For other networks, the signal itself could be degraded by a longer routing. In such cases, the L-path requirement guarantees exactly the needed quality of the alternative routes. Moreover, in a telecommunication network, usually several commodities have to be routed in the network between pairs of terminals. To ensure an effective routing, there must exist a sufficient number of hop-constrained paths between each pair of terminals.
The kHNDP has been extensively investigated when there is only one demand in the network (|D| = 1). In particular, the associated polytope has received special attention. In [30], Huygens et al. study the kHNDP for k = 2 and L = 2, 3. They give an integer programming formulation for the problem and show that the linear programming relaxation of this formulation completely describes the associated polytope. From this, they obtain a minimal linear description of that polytope. They also show that this formulation is no longer valid when L ≥ 4. In [11], Dahl et al. study the kHNDP when L = 2 and k ≥ 2. They give a complete description of the associated polytope in this case and show that it can be solved in polynomial time using linear programming. In [9], Dahl considers the kHNDP for k = 1 and L = 3. He gives a complete description of the dominant of the associated polytope. Dahl and Gouveia [10] consider the directed hop-constrained path problem. They describe valid inequalities and characterize the associated polytope when L ≤ 3. Huygens and Mahjoub [29] study the kHNDP when k = 2 and L ≥ 4. They also study the variant of the problem where k node-disjoint paths of length at most L are required between two terminals. They give an integer programming formulation for these two problems when L = 4.
In [7], Coullard et al. investigate the structure of the polyhedron associated with the st-walks of length L of a graph, where a walk is a path that may go through the same node more than once. They present an extended formulation of the problem, and, using projection, they give a linear description of the associated polyhedron. They also discuss classes of facets of that polyhedron.
The kHNDP has also been studied when |D| ≥ 2. In [12], Dahl and Johannessen consider the case where k = 1 and L = 2. They introduce valid inequalities and develop a branchand-cut algorithm. The problem of finding a minimum cost spanning tree with hop-constraints is also considered in [21,22,24]. Here, the hop-constraints limit to a positive integer H the number of links between the root and any terminal in the network. Dahl [8] studies the problem when H = 2 from a polyhedral point of view, and gives a complete description of the associated polytope when the graph is a wheel. Finally, Huygens et al. [28] consider the problem of finding a minimum cost subgraph with at least two edge-disjoint L-hop-constrained paths between each given pair of terminal nodes. They give an integer programming formulation of that problem for L = 2, 3 and present several classes of valid inequalities. They also devise separation routines. Using these, they propose a branch-and-cut algorithm and discuss some computational results.
Besides hop-constraints, another reliability condition, which is used in to limit the length of the routing, requires that each link of the network belongs to a ring (cycle) of bounded length. In [18], Fortz et al. consider the two-node connected subgraph problem with bounded rings. This problem consists in finding a minimum cost 2-node connected subgraph (V, F) such that each edge of F belongs to a cycle of length at most L. They describe several classes of facetdefining inequalities for the associated polytope and devise a branch-and-cut algorithm for the problem. In [19], Fortz et al. study the edge version of that problem. They give an integer programming formulation for the problem in the space of the natural design variables and describe different classes of valid inequalities. They study the separation problem for these inequalities and discuss branch-and-cut algorithms.
The related k-edge-connected subgraph problem and its associated polytope have also been the subject of extensive research in the past years. Grötschel and Monma [25] and Grötschel et al. [26,27] study the k-edge-connected subgraph problem within the framework of a general survivable model. They discuss polyhedral aspects and devise cutting plane algorithms. Didi Biha and Mahjoub [14] study that problem and give a complete description of the associated polytope when the graph is series-parallel. In [15], Didi Biha and Mahjoub study the Steiner version of that problem and characterize the polytope when k is even. Chopra in [6] studies the dominant of that problem and introduces a class of valid inequalities for its polyhedron. Barahona and Mahjoub [2] characterize the polytope for the class of Halin graphs. In [17], Fonlupt and Mahjoub study the fractional extreme points of the linear programming relaxation of the 2-edgeconnected subgraph polytope. They introduce an ordering on these extreme points and characterize the minimal extreme points with respect to that ordering. As a consequence, they obtain a characterization of the graphs for which the linear programming relaxation of that problem is integral. Didi Biha and Mahjoub [16] extend the results of Fonlupt and Mahjoub [17] to the case k ≥ 3 and introduce some graph reduction operations. Kerivin et al. [32] study that problem in the more general case where each node of the graph has a specific connectivity requirement. They present different classes of facets of the associated polytope when the connectivity requirement of each node is at most 2 and devise a branch-and-cut algorithm for the problem in this case. In [3], Bendali et al. study the k-edge-connected subgraph problem for the case k ≥ 3. They introduce several classes of valid inequalities and discuss the separation algorithm for these inequalities. They devise a branch-and-cut algorithm using the reduction operations of [16] and give some computational results for k = 3, 4, 5. A complete survey on the k-edge-connected subgraph problem can be found in [31].
In this work, we introduce four new integer programming formulations for the kHNDP when L = 2, 3 and k ≥ 2. The paper is organized as follows. In Section 2, we present integer programming formulations introduced in the literature and which are defined on the original graph. Then, in Sections 3 and 4, we propose two new approaches for the problem that are based on directed layered graphs, when L = 2, 3 and k ≥ 2. One approach (called the "separated" approach) uses a layered graph for each hop-constrained subproblem and the other (called the "aggregated" approach) uses a single layered graph for the whole problem. These new approaches yield new integer programming formulations for the problem when L = 2, 3. In Section 5, we compare the different formulations in terms of linear programming relaxation. Finally, in the last section, we test these formulations using CPLEX and present some computational results for k = 3, 4, 5 and L = 2, 3.
The rest of this section is devoted to more definitions and notation. An edge e ∈ E with endnodes u and v is denoted by uv. Given two node subsets W and W , we denote by [W , W ] the set of edges having one endnode in W and the other in We also denote by W the node set V \ W . The set of edges having only one node in W is called a cut and denoted by δ(W ). We will write δ(u) for δ({u}). Given two nodes s, t ∈ V , a cut δ(W ) such that s ∈ W and t ∈ W is called an st-cut.
We will also denote by H = (U, A) a directed graph where U is the set of nodes and A is the set of arcs. An arc a with origin u and destination v will be denoted by (u, v). Given two node subsets W and W of U, we will denote by [W , W ] the set of arcs whose origin is in W and whose destination is in W . As before, we will write [u, W ] for [{u} , W ] and W will denote the node set U \ W . The set of arcs having their origin in W and their destination in W is called a cut or dicut in H and is denoted by δ + (W ). We will also write δ + (u) for δ + ({u}) with u ∈ U. If s and t are two nodes of H such that s ∈ W and t ∈ W , then δ + (W ) will be called an st-cut or st-dicut in H. If W and W are two node subsets of H, then [W , W ] + will denote the set of arcs of H whose origins are in W and destinations are in W . As for undirected graphs, we will write [u, W ] + for [{u} , W ] + .
Given an undirected graph G = (V , E) (resp. a directed graph H = (U, A)) and an edge subset F ⊆ E (resp. an arc subset B ⊆ A), we let x F ∈ R E (resp. y B ∈ R A ) be the incidence vector of F (resp. B), that is, the 0 − 1 vector such that x F (e) = 1 if e ∈ F (resp. y B (a) = 1 if a ∈ B) and 0 otherwise. Given F a subset of E (resp. A) and a vector x ∈ R E (resp. y ∈ R A ), x(F) (resp. y(F)) will represent the term e∈F x(e) (resp. e∈F y(e)).

ORIGINAL GRAPH-BASED FORMULATIONS
In this section, we present three integer programming formulations for the kHNDP. The first one is the so-called natural formulation which uses only the design variables. The two other formulations use paths and flows variables in the original space.

Natural Formulation
Let G = (V , E) be an undirected graph, D ⊆ V × V be a demand set, and two integers k ≥ 2 and L ∈ {2, 3}. If an edge subset F ⊆ E induces a solution of the kHNDP, that is, a subgraph (V, F) containing k-edge-disjoint L-st-paths for every {s, t} ∈ D, then its incidence vector x satisfies the following inequalities. (2.1) x(e) ≥ 0 for all e ∈ E, (2.2) x(e) ≤ 1 for all e ∈ E.
In [9], Dahl considers the problem of finding a minimum cost path between two given terminal nodes s and t of length at most L. He studies the polyhedron (the L-path polyhedron) associated with that problem and introduces a class of inequalities as follows.
Let {s, t} ∈ D and let a partition (V 0 , V 1 , . . . , V L+1 ) of V be such that s ∈ V 0 and t ∈ V L+1 , and V i = ∅ for all i = 1, . . . , L. Let T be the set of edges e = uv, where u ∈ V i , v ∈ V j , and |i − j| > 1. Then the inequality is valid for the L-path polyhedron.
Using the same partition, this inequality can be generalized in a straightforward way to the kHNDP polytope as The set T is called an L-st-path-cut, and a constraint of type (2.4) is called an L-st-path-cut inequality. See Figure 1 for an example of an L-st-path-cut inequality with L = 3 and, Note that T intersects every L-st-path in at least one edge and each st-cut δ(W ) intersects every st-path.
Huygens et al. [28] show that the kHNDP can be formulated as an integer program using the design variables when L = 2, 3. (2.5) Formulation (2.5) is called the natural formulation and is denoted by kHNDP Nat . In [28], Huygens et al. study the polytope associated with this formulation and introduce some facet-defining inequalities for the problem. They also develop a branch-and-cut algorithm for the kHNDP when k = 2 and L = 2, 3.
In [4], Bendali et al. study the kHNDP when k ≥ 2, L = 2, 3 and |D| = 1. They study the polyhedral structure of that formulation and give necessary and sufficient conditions under which the L-st-path-cut inequalities (2.4) define facets. In particular, they show that an L-st-path-cut inequality induced by a partition (V 0 , . . . , V L+1 ), with s ∈ V 0 and t ∈ V L+1 , is facet-defining only if |V 0 | = |V L+1 | = 1. One can easily see that this condition also holds even when |D| ≥ 2. Thus, we have the following theorem. inequality (2.4) induced by π defines a facet of the kHNDP polytope only if |V 0 | = |V L+1 | = 1.
Theorem 2.2 points out the fact that an L-st-path-cut inequality induced by a partition (V 0 , . . . , V L+1 ) such that |V 0 | ≥ 2 or |V L+1 | ≥ 2, is redundant with respect to those L-st-path-cut inequalities induced by partitions Therefore, in the remainder of the paper, the only L-st-path-cuts that we will consider are those induced by partitions of the form For all {s, t} ∈ D, let P st be the set of L-st-paths of G, and let μ st (P) be the 0 − 1 variable which equals 1 if the path P ∈ P st is chosen and 0 otherwise.

Undirected Path-Based Formulation
If an edge subset F ⊆ E induces a solution of the kHNDP, then the following inequalities are satisfied by its incidence vector x F and (μ st (P), P ∈ P st , for all {s, t} ∈ D). (2.10) Formulation (2.10) is called the undirected path formulation and is denoted by kHNDP U Path . Note that, in many combinatorial optimization problems, path-based formulations imply an exponential number of variables, as the number of paths in a graph is, in general, exponential. This requires one to use appropriate methods like column generation to solve the linear relaxation of the problem. However, for the kHNDP, the number of L-st-paths is bounded by |V | L−1 , for each {s, t} ∈ D. Hence, the number of variables of kHNDP U Path is polynomial (with L = 2, 3) and its linear relaxation can be solved by enumerating all the L-st-paths in a single linear program.

Undirected Flow-Based Formulation
In this section, we introduce a flow-based model for the problem using flow variables in the graph G. A similar formulation has been proposed by Dahl and Gouveia [10] for the kHNDP with k = 1 and |D| = 1, and, to the best of our knowledge, this is the first time that such a formulation is given for k ≥ 2 and |D| ≥ 2.
Let G = (V , A) be the directed graph obtained from G by replacing each edge uv ∈ E by two arcs (u, v) and (v, u). Given a demand {s, t} ∈ D, f st ∈ R A is a flow vector on G between s and t of value k. Thus, for all {s, t} ∈ D, f st satisfies the following constraints. {s, t} ∈ D. In fact, it is not hard to see that these arcs will never be used in an optimal solution of the problem. Thus the corresponding flow variables are set to 0. Also inequalities (2.14) are the linking inequalities which state that if an edge is not taken in the solution, then the two corresponding arcs have a flow equal to 0. They also indicate that for a given demand {s, t} and an edge uv with u, v = s, t, if edge uv is taken in the solution, then only one of the arcs (u, v) and (v, u) can be used by the flow. This comes from the fact that in an optimal solution, the edge uv may be used in an st-path either from u to v (this is arc (u, v)) or from v to u (this is arc (v, u)). In fact, if both arcs (u, v) and (v, u) are used in the solution, then the solution in the original graph contains two 3-st-paths of the form (s, u, v, t) and (s, v, u, t) which share the edge uv. However, by removing the edge uv, these two st-paths are replaced by the two st-paths (s, u, t) and (s, v, t), of length 2, with lower cost. An illustration is given in Figure 2.
To represent the hop-constraint, we have to introduce additional inequalities for all demands {s, t} ∈ D: • when L = 2, it is sufficient to prevent in a solution the selection of an "internal" arc (u, v) ∈ A, that is, an arc incident neither to s nor to t, as follows: (2.17) • when L = 3, we have to add the following inequalities to the system: This formulation will be called the undirected flow formulation and is denoted by kHNDP U Flow .

DEMAND DECOMPOSITION BASED FORMULATIONS
In this section, we will introduce three integer programming formulations for the kHNDP for L = 2, 3 where we use a directed layered graph to model each hop-constrained subproblem. These formulations will be called separated formulations.
In these layered digraphs, any dipath has at most 3 hops. The idea of replacing hop-constrained path subproblems in the original graph by unconstrained path subproblems in an adequate graph has been first suggested in Gouveia [22] and subsequently used in other related works (e.g., [5] and [23]) for more general hop-constrained network design problems. However, the directed graphs proposed here are different from the ones suggested in [22] when L = 3.

Graph Transformation
Given G = (V , E) and {s, t} ∈ D, let G st = ( V st , A st ) be the layered digraph obtained from G as follows: Fig. 3 for an illustration with L = 3).
For an edge e = uv ∈ E, we denote by A st (e) the set of arcs of G st corresponding to the edge e: Note that G st may have nodes different from u ∈ N st ∪ N st with indegree or outdegree equal to zero. These nodes can be removed from G st after its construction.  Therefore, each L-st-path in G corresponds to an st-dipath in G st and conversely. We have the following lemma, given without proof. For the proof, the reader can refer to [13]. Note that each graph As a consequence of Lemma 3.1, for L = 2, 3 and every demand {s, t} ∈ D, a set of k edge-disjoint L-st-paths of G corresponds to a set of k arc-disjoint st-dipaths of G st , and k arc-disjoint st-dipaths of G st correspond to k edge-disjoint L-st-paths of G. Therefore, we have the following corollary. Corollary 3.1 suggests at once the following flow-based formulation.

Separated Flow Formulation
Given a demand {s, t}, we let f st ∈ R A st be a flow vector on G st of value k between s and t.
Then f st satisfies the flow conservation constraints (3.1), given by x(e) ≤ 1, for all e ∈ E.
Formulation (3.6) will be called the separated flow formulation and will be denoted by kHNDP Sep Flow .

Separated Path Formulation
As the well-known work by Rardin and Choe [34], it is known that flows can also be modeled by paths. Every solution of the problem can, hence, be represented by directed st-paths in graphs G st , for all {s, t} ∈ D.
For each demand {s, t} ∈ D, let P st be the set of st-dipaths in G st and, for each P ∈ P st , let μ st (P) be a binary variable whose value is 1 if P is used in a solution and 0 if not.
If an edge subset F ⊆ E induces a solution of the kHNDP, then x F and (μ st (P), P ∈ P st , {s, t} ∈ D) satisfy the following inequalities.
The following theorem gives an integer programming formulation for the kHNDP using the path-based model described above.

Theorem 3.2. The kHNDP for L = 2, 3 is equivalent to the following integer program
Formulation (3.12) is called the separated path formulation and is denoted by kHNDP Sep Path . Note that for each demand {s, t} ∈ D, the number of st-paths in the graph G st is bounded by |V | L−1 , which is polynomial for L = 2, 3. Thus, this formulation contains a polynomial number of variables while the number of nontrivial inequalities is at most which is polynomial.
Hence, as for the undirected path-based formulation kHNDP U Path , its linear relaxation can be solved in polynomial time using linear programming and by enumerating all the variables and constraints of the problem.
Still using Rardin and Choe [34], it can be shown that the separated flow and path formulations (3.6) and (3.12) provide the same LP-bound.
Also, one can easily observe that Formulation (3.12) is equivalent to Formulation (2.10), as L-st-paths in the original graph G correspond to st-dipaths in the directed graphs G st , for all {s, t} ∈ D, and vice versa. Thus, these formulations also produce the same LP-bound.

Separated Cut Formulation
The previous two models include constraints guaranteeing that for each demand {s, t} ∈ D, there exists a flow of value k under the arc capacities given by x. By the Max flow-Min cut theorem, such a flow exists if and only if the capacity of any st-dicut, in each graph G st , is at least k. This observation leads at once to the following formulation which provides the same LP bound as the previous separated flow and path formulations.
Let H ⊆ E be an edge subset which induces a solution of the kHNDP in G and let H st be the arc subset of G st , {s, t} ∈ D, corresponding to H. Then, the incidence vector x H of H and the vectors y H st st , {s, t} ∈ D, satisfy the following inequalities. We have the following result which is given without proof as it easily follows from the above discussion.
This formulation is called the separated cut formulation and is denoted by kHNDP Sep Cut . It contains a polynomial number of variables. Indeed, for L = 2, the number of variables is However, the number of constraints is exponential as the number of directed st-cuts is exponential in the size of G st , for all {s, t} ∈ D. As we will see in Section 6, its linear programming relaxation can be solved in polynomial time using a cutting plane algorithm.
In the next section, we introduce a further formulation for the kHNDP also based on directed graphs. However, unlike the separated formulations, this formulation is supported by only one directed graph.

AGGREGATED FORMULATION FOR THE k HNDP
We denote by S D and T D respectively the sets of source and destination nodes of D. In the case where two demands {s 1 , t 1 } and {s 2 , t 2 } are such that s 1 = t 2 = s, we keep a copy of s in both S D and T D .
In this section, we will introduce a new formulation for the kHNDP which is supported by a single directed graph G = ( V , A) obtained from G as follows: denote by u and u the nodes of N and N corresponding to a node u ∈ V . • A contains 6 kinds of arcs:  Notice that the digraph G may have nodes u ∈ N ∪ N with indegree or outdegree equal to zero. These nodes can be removed from G after its construction. Also, note that when G is simple (that is with no parallel edges), |[u , u ] + | = |[t , t] + | ≤ 1, for every u ∈ V and every t ∈ T D , and is the digraph associated with G, then for an edge e ∈ E, we denote by A(e) the set of arcs of G corresponding to e.
Observe that G is acyclic. Also note that for a given demand {s, t} ∈ D, every st-dipath in G contains at most 3 arcs. An L-st-path P = (s, u, v, t) of G, where u and v may be the same, corresponds to an remainder of this section we will suppose w.l.o.g. that each node of T D is involved, as destination, in only one demand. In fact, in general, if a node t ∈ T D is involved, as destination, in more than one demand, say {s 1 , t} , . . . , s p , t , with p ≥ 2, then one may replace in T D t by p nodes t 1 , . . . , t p and in D each demand We have the following result, given without proof. For a complete proof, the reader can refer to [13].  By Menger's Theorem, G contains k arc-disjoint stdipaths if and only if every st-dicut of G contains at least k arcs. If F ⊆ E is a set of edges of G that induces a solution of the kHNDP, then x ∈ R E and y ∈ R A + satisfy the following inequalities 3) x(e) ≤ 1, for all e ∈ E. (4.4) We have the following theorem, which easily follows from Corollary 4.1. Formulation (4.5) will be called the aggregated formulation and is denoted by kHNDP Ag . Inequalities (4.1) will be called directed st-cut inequalities or st-dicut inequalities and (4.2) will be called linking inequalities. The latter inequalities indicate that an arc a, corresponding to an edge e, is not chosen in the solution of kSNDP if e is not chosen in the solution of kHNDP.
This formulation contains |E| + | A| ≤ |E| + k|V | + s∈S D |δ(s)|+ t∈T D |δ(t)| variables if L = 2 and |E| + | A| ≤ 3|E| + k|V | + s∈S D |δ(s)| + t∈T D |δ(t)| variables if L = 3. The number of constraints is exponential as the st-dicuts are exponential in number. But, as it will turn out, the separation problem for inequalities (4.1) can be solved in polynomial time and, hence, the linear programming relaxation of (4.5) is also.
Notice that the graph transformations introduced in this section do not work for L ≥ 4. In fact, first the natural formulation is no longer valid for L ≥ 4. As shown by Huygens and Mahjoub [29], further valid inequalities are required when L = 4 to have a natural formulation. Also, for L ≥ 5, such a formulation is still unknown. Conversely, these graph transformations are valid only for L = 2, 3 and cannot be extended to the case L ≥ 4. Indeed, as it has been seen above, each L-st-path in the original graph is transformed into a dipath in the transformed graph. The kHNDP then reduces to a Max flow-Min cut problem when restricted to a single demand, which is no longer valid when L ≥ 4. Also, the reduction to a Max flow-Min cut problem does not hold for other graph transformations like that proposed by [5].
In the next section, we present a comparative study of the different formulations presented in the last section. In particular, we will show that the linear programming relaxation of these formulations are as strong as the linear programming relaxation of the natural formulation.

COMPARISON STUDY BETWEEN THE DIFFERENT FORMULATIONS
In this section, we compare the different formulations we have introduced before. We first focus on the number of variables of the different extended formulations. As noticed before, the undirected flow and separated flow formulations as well as the undirected and separated path formulations have a polynomial number of variables and constraints. However, the aggregated graph contains fewer arcs than occur in the union of the separated graphs. Thus, the aggregated formulation contains fewer variables than the separated and undirected formulations. Now, we compare the formulations in terms of LP-bound. In fact, we will show that the extended formulations (undirected flow and path, separated and aggregated formulations) produce the same LP-bound, and this LP-bound is the same as that of the natural formulation.
First, we compare the separated formulations. In fact, as mentioned in Section 3.2, by the Max flow-Min cut Theorem, the separated flow and cut formulations produce the same LPbound. Also, by Rardin and Choe [34], the separated flow and path formulations are equivalent, and, hence, give the same LP-bound. Moreover, as explained in Section 3.3, Formulations (3.12) and (2.10) are equivalent and, hence, give the same LP-bound. Therefore, we have the following theorem. Now we compare the undirected flow and path formulations. In fact, using the same argument as in [10] (see the proof of Proposition 2.2) we can easily show that the undirected flow formulation can be obtained by projecting the undirected path formulation. For a detailed proof, the reader can also refer to [13]. Now we turn our attention to the natural formulation (2.5). We are going to show that the linear programming relaxation of the natural formulation has the same value as that of the separated cut formulation. To this end, we first introduce a procedure which associates with every st-cut and L-st-pathcut of G an st-dicut of G st , for every demand {s, t} ∈ D. This procedure, called Procedure A, produces, from an edge set C ⊆ E and a demand {s, t} ∈ D, an arc subset C of G st obtained as follows.

Procedure A.
(i). For an edge st ∈ C, add the arc (s, t) in C; (ii). for an edge su ∈ C, add the arc (s, u) in C, u ∈ N st ; (iii). for an edge vt ∈ C, add the arc (v , t) in C, v ∈ N st ; (iv). for an edge uv ∈ C, u = v, u, v ∈ V \ {s, t}, (iv.a). if su ∈ C or vt ∈ C, then add (v, u ) in C, with v ∈ N st and u ∈ N st ; (iv.b). if su / ∈ C and vt / ∈ C, then add the arc (u, v ) in C.
Note that each arc of C corresponds to a unique edge of C and vice versa.
Also, observe that the arc set C does not contain any arc of the form (u, u ) with u ∈ N st and u ∈ N st . Also note that C does not contain at the same time two arcs (u, v ) and (v, u ), Conversely, an arc subset C of A st can be obtained from an edge set C ⊆ E, using Procedure A, if C does not contain simultaneously two arcs (u, v ) and (v, u ), u, v ∈ N st , u , v ∈ N st , and does not contain any arc of the form (u, u ) with u ∈ N st , u ∈ N st .
Before going further, we give the following two lemmas whose proof can be found in [4].

Then, the arc set obtained from C by Procedure A is an st-dicut of G st .
Proof. See the proof of Lemma 4.1 in [4].

Given a demand {s, t} ∈ D, let C be an st-dicut of G st such that C does not contain an arc of the form (u, u ), u ∈ V \ {s, t}. Then, there exists an st-cut or an L-st-path-cut C ⊆ E in G such that x(C) ≤ y st ( C).
Proof. See the proof of Lemma 4.2 in [4].

■
We also give the following lemma which will be useful in the remainder of this section. Now to prove the lemma, we show that either |[u, u ] + ∩ C| = k or there exists an st-dicut of G st , not containing an arc of the form (u, u ) and whose weight, with respect to y st , is lower than that of C.
Thus, suppose first that |[u, u ] + ∩ C| = k, for some u ∈ V \{s, t} Then, as y st (a) = 1, for all a ∈ [u, u ] + , u ∈ V \{s, t}, Therefore, the node set W obtained by the above procedure is such that ( W )) ≥ k, which ends the proof of the lemma. ■ Now we give the following theorem which shows that the linear programming relaxation of the natural and separated cut formulations have the same values. Thus, every st-dicut C of G st satisfies y st ( C) ≥ k, for every {s, t} ∈ D. Also, it is not hard to see that satisfies inequalities (3.14) and (3.15), and, hence, induces a solution of the linear programming relaxation of kHNDP Sep Cut with cost Z Nat . Therefore, we get Z Nat ≥ Z Sep Cut , which ends the proof of the theorem. ■ Next, we compare the linear programming relaxation of the aggregated formulation (4.5) and the natural formulation (3.18). But first, we introduce a procedure, called Procedure B, which transforms an edge set C ⊆ E to an arc set C of G. Let C ⊆ E and {s, t} ∈ D, and let C be the arc set of G obtained using the following procedure.

Procedure B.
(i). For an edge st ∈ C, add the arc (s, t ) in C; (ii). for an edge su ∈ C, add the arc (s, u ) in C, u ∈ N ; (iii). for an edge vt ∈ C, add the arc (v , t) in C, v ∈ N ; (iv). for an edge uv with v ∈ N and u ∈ N ; (iv.b). if su / ∈ C and vt / ∈ C, then add the arc (u , v ) in C.
Observe that C does not contain any arc of the form (u , u ) with u ∈ N and u ∈ N , or of the form (t , t) for t ∈ T D . Also note that C does not contain at the same time two arcs corresponding to the same edge of G.
Conversely, an arc subset C of A can be obtained by Procedure B from an edge set C ⊆ E if C does not contain simultaneously two arcs corresponding to the same edge of G, and any arc of the form We have the following two lemmas.

Given a demand {s, t} ∈ D, let C be an st-dicut of G such that C does not contain any arc of the form (u , u ), u ∈ V, or of the form (t , t), t ∈ T D . Then, there exists an st-cut or an L-st-path-cut C ⊆ E in G such that x(C) ≤ y( C).
Proof. The proof is similar to that of Lemma 4.2 in [4].
■ Also, we compare the aggregated formulation with the natural formulation, in terms of linear programming relaxation. We show that their linear programming relaxations also have the same value. Proof. We will show first that Z Ag ≥ Z Nat . For this, we will consider an optimal solution (x, y) of the linear programming relaxation of the kHNDP Ag and show that x induces a solution of the linear programming relaxation of the kHNDP Nat . Let {s, t} ∈ D, and let C ⊆ E be an st-cut or an L-st-path-cut of G induced by a partition (V 0 , . . . , V L+1 ), with |V 0 | = |V L+1 | = 1. Also let C be the arc set obtained from C and {s, t} by application of Procedure B. By Lemma 5.4, the arc set C induces an st-dicut of G. As each arc of C corresponds to a unique edge of C and vice versa, and as y(a) ≤ x(e), for all a ∈ A(e), e ∈ E, we have x(C) ≥ y( C). Moreover, y satisfies all the st-dicut inequalities. Thus, we have x(C) ≥ y( C) ≥ k, and x induces a solution of the linear programming relaxation of kHNDP Nat , yielding Z Ag ≥ Z Nat . Now, we are going to show that Z Nat ≥ Z Ag . To this end, we will show that an optimal solution x of the linear programming relaxation of kHNDP Nat induces a solution of the linear programming relaxation of the kHNDP Ag with cost Z Nat , implying that Z Nat ≥ Z Ag . Let y be the vector of R A obtained from x as described in Lemma 5.5, and let = (x, y). We claim that y satisfies all the st-dicut inequalities (4.1). To prove this, we consider an st-dicut C = δ + ( W ) of G and distinguish four cases. W.l.o.g., we will suppose that W ∩ S D = {s} and ( V \ W ) ∩ T D = {t}. Otherwise, one can easily observe that the st-dicut inequality induced by C is redundant with respect to that induced by the node set ( W \ (S D \ {s})) ∪ (T D \ {t}). ■ Case 1. If C does not contain any arc of the form (u , u ), u ∈ V , or of the form (t , t), t ∈ T D , and does not contain simultaneously two arcs corresponding to the same edge, then C can be obtained by application of Procedure B for an edge set C ⊆ E. From Lemma 5.5, the edge set C is either an st-cut or an L-st-path-cut, and x(C) ≤ y(C). As x is a solution of kHNDP Nat and, hence, x(C) ≥ k, we also have y( C) ≥ k.

Case 2.
If C does not contain any arc of the form (u , u ), u ∈ V , or of the form (t , t), t ∈ T D , but contains two arcs corresponding to the same edge, then, as C is an st-dicut, these two arcs are either (s, u ) and (s , u ) or (v , t ) and (v , t), for some edge su or vt, with u, v ∈ V \ {s, t}. If C contains two arcs (s, u ) and (s , u ), then s, s ⊆ W , and W = W \ s induces an st-dicut. As by construction of G, [s, s ] + = ∅, we have δ t ) and (v , t), then v , v ⊆ W and t / ∈ W . As before, the node set W = W ∪ t induces an stdicut, and as [t , t] + = ∅, we have δ + ( W ) = C \ (v , t ) . By repeating this procedure for every pair of arcs of C corresponding to the same edge, we obtain a minimal arc set C ⊂ C, which does not contain any arc of the form (u , u ), u ∈ V or of the form (t , t), t ∈ T D , and which does not contain two arcs corresponding to the same edge of G. Thus, from Case 1, we have y( C ) ≥ k. As C ⊂ C, we have y( C) ≥ y( C ) and, hence, get y( C) ≥ k. Case 3. Now suppose that C contains an arc of the form (u , u ), for some u ∈ V , but no arc of the form (t , t), for every t ∈ T D . If |[u , u ] + | = k, then, as y(a) = 1, for all a ∈ [u , u ] + , we have y( C) ≥ k. If Therefore, Notice that here also, δ + G ( W ) does not contain any arc of the form (t , t).
By repeating this procedure, one gets a node set W whose induced arc set δ + G ( W ) does not contain any arc of the form (u , u ) and of the form (t , t), and such that Thus, from Cases 1 and 2, we have By repeating this procedure one obtains a node set, say W ⊂ V , such that δ + G ( W ) does not contain any arc of the form (t , t), and such that , Thus, by Cases 1, 2, and 3, we get Therefore, y satisfies every st-dicut inequality (4.1) and, as y(a) = x(e), if a ∈ A(e), for all e ∈ E, and y(a) = 1, otherwise, (x, y) is solution of the linear programming relaxation of kHNDP Ag , whose value is Z Nat . Thus, Z Nat ≥ Z Ag , which ends the proof of the theorem.
One may notice that Theorems 5.3 and 5.4 point out the fact that the separated and aggregated formulations produce the same LP-bound as the natural formulation. Also, by Theorems 5.1 and 5.2, the undirected path and flow formulations produce the same LP-bound as the separated formulation.
As a consequence, the undirected formulations, the separated and aggregated formulations produce the same LPbound as the natural formulation, and all the formulations produce the same LP-bound. These results are summarized in Corollary 5.1 and Figure 6.  (2.20), (3.6), (3.12), (3.18), and (4.5), produce the same LP-bound for the kHNDP.

COMPUTATIONAL RESULTS
In this section, we present a computational study of the different formulations introduced in the paper. The main objective is to check their efficiency for solving the problem for large scale instances, and compare them to each other from a computational point of view.
We solve each formulation using CPLEX 12.5 and Concert Technology, implemented in C++, on a DELL Workstation T3500 with an Intel Xeon Quad-Core 2.26GHz and 3Gb of RAM. For our computational experiments, we use instances from TSPLIB [35] (euclidean complete graphs) with randomly generated demand sets. We consider single-source multi-destination instances and multisource multidestination instances. The number of nodes of the graphs varies from 21 to 52. The number of demands, in turn, varies from 15 to 50, for the rooted case and from 10 to 26 for the arbitrary case.
The following tables give computational results for the separated flow and path formulations, the aggregated formulation and natural formulation. We do not give the results for the separated cut formulation. We will discuss this formulation later.
Note that the linear programming relaxations of the separated flow and path formulations are solved using a linear program, as they contain a polynomial number of variables and constraints. For the aggregated and natural formulations, we use a cutting plane algorithm to solve their linear programming relaxation, as they both contain an exponential number of constraints (st-cut (2.1) and L-st-path-cut inequalities (2.4) for the natural formulation, and st-dicut inequalities (4.1) for the aggregated inequalities). The separation problem associated with these constraints reduces to a maximum flow problem and can be solved in polynomial time (see for example [3] and [19]).
The results given in the following tables are obtained for k = 3 and L = 2, 3.
Each instance is described by the number of nodes and the type of the demand set, indicated by "r" for rooted demands and "a" for arbitrary demands. The other entries of the various tables are:

|V |
: number of nodes, |D| : number of demands, COpt : weight of the best upper bound obtained, Gap : the relative error between the best upper bound (the optimal solution if the problem has been solved to optimality) and the lower bound obtained at the root node (LPRoot) of the branch-and-cut tree, that is, Gap = (COpt − LPRoot)/COpt, NSub : number of subproblems in the branch-and-cut tree, TT : total CPU time in h:min:s In all the tables, the instances indicated with "*" are instances for which the algorithm has reached the maximum CPU time, 5 h, while instances with "**" are those for which the algorithm runs out of resources (lack of memory). For all these instances, we give, in italics, the best results obtained at the end of the execution of the algorithm. Note that, according to Corollary 5.1, the linear relaxations of all the formulations tested here have the same value. However, the computation of the LP-value obtained at the root node of the Branch-and-Cut tree also uses CPLEX general-purpose cutting planes. Thus, this LP-value may be different from one formulation to another and, consequently, the Gap achieved by the Branch-and-Cut algorithm for all the formulations may be different from one another.  1(b) give the results for the separated flow formulation for L = 2 and L = 3, respectively, and k = 3.
By observing Table 1(a), we notice that for L = 2, the problem is solved to optimality by the separated flow formulation for all the instances. The CPU time is less than 1 min in almost all cases, and the gap between the LP-root node and the optimal solution is low (less than 5% for 16 instances over 22, and between 5% and 10% for 5 instances). For L = 3 (Table 2(b)), the separated flow formulation solves to optimality only 10 instances. For the remaining instances, upper bounds are obtained by CPLEX, with a relative gap of at most 23.99%. The problem seems to be easier for this formulation when L = 2 than when L = 3. The same observation applies to the other formulations. More instances are solved to optimality within 5 h when L = 2 than when L = 3. This observation confirms the idea that the kHNDP is easier when L = 2 than when L = 3.
Subsequently, we focus on the comparison of each formulation to the others in terms of CPU time and in terms of best solution. The following tables give the results for the separated path, the aggregated and the natural formulation for L = 2, 3 and k = 3. We start the comparison by considering L = 2. The comparison between Tables 1(a), 2(a), 3(a), and 4(a) shows first that, for L = 2, the separated flow and path formulations produce quite similar results, and that they achieve better results than the aggregated and natural formulations. The formulations having results in the first two tables are able to solve to optimality 100% of the instances, while the aggregated and natural formulations solve 77.27% and 72.72% of the instances to optimality, respectively. Also, for the instances solved to optimality, the total CPU time for the separated flow and path formulations is better than that for the aggregated and natural formulations. This can be explained by the fact that these latter formulations contain an exponential number of constraints and their linear programming relaxation is solved using the cutting plane method. Thus, the difference of CPU time mainly is the time spent by the algorithm for the separation of the cut constraints (4.1) and (2.1), and (2.4). Now, we turn our attention to the case where L = 3. As mentioned before, the problem becomes harder in this case. We compare the different formulations in terms of upper bound. For this, we choose the results 1(b) of the separated flow formulation as reference. The following table gives, for some instances and for each formulation, the difference between the upper bound achieved for a given formulation and the one achieved by the separated flow formulation, that is, G i = COpt i -COpt SFlow , where i is SPath, Agg, or Nat, standing, respectively, for separated path formulation, aggregated and natural formulation. Notice that the results given below measure the ability of CPLEX to efficiently solve each formulation.
The instances reported in the table are those for which at least one formulation does not give the optimal solution.
A negative value in Table 5 for a given formulation indicates that the formulation gives a better bound than that obtained by the separated flow formulation while a positive value indicates a greater bound. From this table, we can see that the separated path formulation produces, for many cases, a better bound than the separated flow formulation. Also, this formulation produces, in most cases, better bounds than the natural and aggregated formulations.
The comparison between the natural and aggregated formulations in Table 5 shows inconclusive results. For 3 instances of 7, the aggregated formulation outperforms the natural formulation, while it is the contrary for the 4 others.
We conclude this series of experiments by making a comment on the separated cut formulation. This formulation produces poor results in terms of CPU time and in terms of upper bound. For several instances, the algorithm is not able to solve the linear programming relaxation of the root node of the branch-and-cut tree after 5 h of CPU time, and this, even for L = 2. And for all of these instances, the algorithm does not produce an upper bound. This is explained by the long time spent by the algorithm in the separation of the cut constraints (3.13). Our next series of experiments concerns the kHNDP when k = 4 and k = 5. For each case, we have solved the problem when L = 2 and L = 3. All the instances previously tested for k = 3 have been solved for k = 4 and k = 5. The results are given only for large size instances, that is, with graphs having 48 or 52 nodes. They are presented in Tables 6-9 for k = 4 and  Tables 10-13 for k = 5.
The first observation is that, for k = 4 (Tables 6-9), almost all the instances are solved to optimality when L = 2 while  been solved to optimality for k = 3 within the CPU time limit. Now comparing the formulations for k = 4 and k = 5, it appears that the problem is easier for k = 5 as both the gap and CPU time are, in general, better for k = 5 than for k = 4. For example, instance r48 − 40 could not be solved to optimality by the natural formulation for k = 3, 4 and L = 2, whereas it has been solved in less than 3 hours for k = 5. The same observation applies for other instances and other formulations.
From all these observation, we believe that the kHNDP becomes easier as k increases for L = 2, 3. This has already been mentioned by Bendali et al. [3] for the k-edgeconnected subgraph problem (kECSP) (which corresponds to the kHNDP with L = |V | and D = V × V ). The computational study they conducted for this latter problem showed that the problem becomes easier as k increases. Also, Gabow et al. [20] considered the minimum size kECSP and the LP relaxation associated with its natural formulation in both directed and undirected graphs. They showed that the ratio of the total weight of fractional edges over all the edges in a minimum size solution is bounded, in undirected graphs, by 1 + 3 k , for k odd, and by 1 + 2 k , for k even, and, in directed graphs, by 1 + 2 k . Clearly, this ratio