Some Complexity Results for the k-Splittable Flow Minimizing Congestion Problem ()
1. Introduction
In the traditional multi-commodity flow problems, flow being sent from the source nodes to the destination nodes may travel on large number of paths through the network. This effect is undesired or even forbidden in many applications. Such as in the modern broadband communication networks, namely the multiple protocol label-switched networks (MPLS), data packets are gathered under a single label with the aim to limit the routing tables and to increase the quality of data transmission. The label-switched paths (LSPs) must support the routing of data traffic between different terminal nodes, from one endpoint to another. An important feature of MPLS is its ability to set up traffic engineering mechanism (MPLS-TE). It can control the structure of the traffic for each customer by setting restriction on the number of routes the customer used. In order to preserve the QoS requirement, the demand of each customer must be satisfied. Using a single path would possibly increase the congestion of the network, while, on the other hand, a large number of LSPs would decrease the performance of the protocol, and the intermediate situation is considered in the MPLS network.
In 2002, Baier [1] proposed the k-splittable flow problem. Given a directed graph
with arc capacities
and arc cost
. A set of commodities is denoted by
, each commodity
has a certain amount of demand
to transmit from a source node
to a destination node
. The number of paths each commodity can use is restricted, that is commodity
can only use at most
paths to transmit the flow. If each commodity uses exactly
paths and the flow of each path is the same value,
, this problem is called uniformed exactly k-splittable flow problem. If
, this problem is in fact the unsplittable flow problem (UFP) which was introduced by Kleinberg [2] . If
, it is in fact the traditional flow problem.
Kleinberg [2] introduced the following optimization versions of the unsplittable flow problem. Minimum congestion: find the smallest value
such that there exists an unsplittable flow such that violates the capacity of any edge at most by a factor
. Minimum number of rounds: partition the set of commodities into a minimum number of subsets. Maximum routable demand: find a feasible unsplittable flow for a subset of demands maximizing the sum of demands in the subset. In this paper, we are mainly interested in the minimum congestion problem and minimum number of rounds problem.
For the unsplittable flow problem, Erlebach et al. [3] proved that for arbitrary
, obtaining an approximation algorithm for minimizing congestion and cost with performance ratio better than
is NP-hard. The unsplittable flow problem is much easier if all commodities share a common single source node. However, the resulting single-source unsplittable flow problem still remains strongly NP-hard. Researches gave some approximation algorithms for this problem (see references [4] [5] [6] ).
As for the k-splittable flow problem, researchers generalize the above optimization versions and there are a lot of studies on the related problems. Baier et al. [7] solved the maximum Single- and Multi-commodity k-splittable flow problem using approximation algorithms. The authors proved that the maximum single- commodity k-splittable flow problem is NP-hard in the strong sense for directed graphs. Koch et al. [8] studied the single commodity maximum k-splittable flow problem. It is proved that when k is a constant, this problem is strongly NP-hard and obtaining an approximation algorithm with performance ratio better than
is NP-hard. While when k is not a constant, obtaining an approximation algorithm with performance ratio better than 5/6 is NP-hard. Kolliopoulos [9] studied the approximation algorithms for the single source 2-splittable flow problem using rounding down strategy and Salazar et al. [10] considered the single source k-splittable flow problem using rounding up strategy. Truffot et al. [11] [12] [13] and Gamst et al. [14] [15] design branch-and-price exact algorithms for the k-splittable flow problem. Palel [16] used a randomized rounding approach to solve the k-splittable flow problem.
By the current researches, we can see that for the k-splittable flow problem, there is little research on the optimization version of minimizing congestion, especially for the complexity of this problem. In this paper, we give some complexity results for the minimizing congestion k-splittable flow problem. For the k-splittable flow problem, the existence of a feasible solution is strongly NP-hard. When the number of the source nodes is an input, for the uniformly exactly k-splittable flow problem, obtaining an approximation algorithm with performance ratio better than 2 is NP-hard. When k is an input, for the single commodity k-splittable flow problem, obtaining an algorithm with performance ratio better than
is NP-hard. We also study the relationship between minimum congestion and minimum number of rounds.
2. Some Complexity Results
In this section, we will give three complexity results for the minimizing congestion k-splittable flow problem. These results are given by the following Theorems.
Theorem 1: For the k-splittable multi-commodity transmission problem, the existence of a feasible solution is strongly NP-hard.
Proof: Given an instance of the 3-partition problem with 3n elements,
.
. For arbitrary i, we suppose that
. Next construct a simple directed graph G, see Figure 1. The network has 2 nodes, one is source node s, and the other is sink node t. There are 3n parallel directed edges from s to t with edge capacities
, respectively. n commodities from s to t with same demands d need to be transmitted. Each commodity can use at most 3 paths.
If the 3-partition has a solution, that is, the 3n elements can be partitioned into n sets. Each set has 3 elements and the total value of the 3 elements is exactly d. For each commodity, it can use the 3 edges corresponding to one of the n sets to transmit flow. The demands of the n commodities can be transmitted through the 3n edges of G. Thus there is a 3-splittable flow with congestion 1 to satisfy the demands of the n commodities in the network. On the other hand, if there is a feasible 3-splittable flow satisfying the demands in the network, since each edge
Figure 1. Network G obtained by 3-partition instance.
capacity is less than d/2 and larger than d/4 and the number of paths each commodity can use is at most 3, we have that each commodity must use exactly 3 paths to transmit the demand and the total flow value of the paths is d. In this way, we obtain a feasible solution of the 3-partition instance. Partite the 3n elements into n sets, the elements in each set corresponding to the transmitting paths of some commodity and the total value of the 3 elements are exactly d.
Since the 3-partition problem is strongly NP-hard, by the above discussion, we know that the existence of a feasible solution of the k-splittable flow problem is also strongly NP-hard. ,
For the uniformly exactly k-splittable flow problem, by referring the construction strategy used in [2] to prove some complexity result of the unsplittable flow problem, we can obtain the following theorem.
Theorem 2: When the number of the source nodes N is an input, for the uniformly exactly k-splittable flow minimizing congestion problem, obtaining an approximation algorithm with performance ratio better than 2 is NP-hard.
Proof: Given an instance of a 3-D matching. Denote set
, set
, set
. A set
is given with
. Suppose that all the 3n elements in
appear in I. Further, if there is a subset
with
and all the elements in
appear in M, that is each element in
appears exactly one time in M, we say that there is a 3-D matching in I, and so the 3-D matching instance has a solution. Next we construct a directed graph G and an instance
of the k-splittable flow problem. There are N source nodes in G, namely
. Suppose
, appears
times in I, that is there are
triples contains
in I.
For each
, there is only one node in G corresponding to
and there are
nodes in G corresponding to
, denote them by
. For
, there are
sink nodes
and
virtual nodes in G. For
, there are two nodes
in G. The construction of the subgraph of G corresponding to u is showed in Figure 2.
There are directed edges
,
,
,
,
in G. For
, there are
edge-disjoint paths going through the virtual nodes from
to the sink node
, respectively. The edge capacities of
are all
and the capacities of the remaining edges are 1. There are two classes of commodities, one is called C-class commodity, the other is called T-class commodity. The C -class commodity is from
to
with demand 1,
,
. Each C-class commodity can only use one path to transmit flow. The T-class commodity is from
to
with demand
,
,
. Each T-class commodity can use
paths to transmit flow.
If there is a 3-D matching in I, we can prove that there exists a uniformly exactly k-splittable flow in G that satisfying the demands of all commodities with
Figure 2. The subgraph of G corresponding to triple
congestion value 1. Suppose the 3-D matching in I is M. For each triple
in M, there is a path from
to
with flow 1,
. That is the C-class commodity can be satisfied by the subgraphs corresponding the triples in M. For the T-class commodity, they can be satisfied by the subgraphs corresponding to the triples in
. Since
appears
times in I, while in M, it appears exactly once, the remaining
times appears in
, for
, there are
paths from
to
with flow 1.
If there is a uniformly exactly k-splittable flow in G satisfying all commodities, there is a 3-D matching in I. Suppose the triples that satisfying the C-class commodity be M, we will prove that M is in fact a 3-D matching in I. The number of T-class commodity is
and each T-class commodity needs
paths with flow 1 from source node
to sink node
. Each transmitting path of both C-class commodity and T-class commodity contains exactly one edge of kind of
. Since the number of this kind of edges is m and the capacities of these edges are
, the C-class commodity can only use
−
class edge which corresponding to n triples, that is M. For
, the commodity from
to
can only use one triple containing
(the remaining
triples containing
are used by T-class commodity), that is all the elements in A appear in M. Since the total number of incoming edges with capacity 1 of
is
and the total demands of the C-class commodity which must going through the nodes corresponding to elements in set B are
, the triples in M contains all the elements in B. Furthermore, since the number of triples in M is n, there is only one triple contains
. Since the demand of the sink node
is 1 and all the demands of the C-class commodity are satisfied, the triples in M must contain all the elements in C. Similarly, since the number of triples in M is n, there is exactly one triple in M containing
. By the above discussion, we prove that M is indeed a 3-D matching of I.
Since the maximum flow from the source node to the sink node in G is 1, if there is no 3-D matching, it is easy to see that there is no uniformly exactly k-splittable flow in G that satisfying the capacity constraints. When
, the capacity value of all the edges in G is 1. When there is no 3-D matching in I, the congestion values of G is at least 2. Since the 3-D matching problem is a NP-hard problem, for the uniformly exactly k-splittable flow problem, obtaining an approximation algorithm with congestion value less than 2 is NP-hard. ,
Theorem 3: When k is an input, for the single commodity k-splittable flow minimizing congestion problem, obtaining an approximate algorithm with performance ratio better than
is NP-hard, in which
.
Proof: We prove this theorem by SAT reduction, referring the construction strategy used in Baier [1] to prove some NP-hard problem. Given an instance of SAT, the variable set is
and there are m subsets of
, namely
. Next we construct a directed graph G, see Figure 3, the demand of the single commodity from source node s to sink node t is
. Next we will prove that if there is a feasible solution of the SAT problem, that is there existing a 0-1 assignment to
such that each subset
, containing at least one element with value 1, the congestion value of G is 1. Otherwise, if there is no feasible solution of the SAT problem, the congestion value of G is at least
.
There are three steps to construct the directed graph G. Step 1, construct n-parallel chains connected by
directed edges. The n parallel chains correspond to variables
, respectively. For each parallel chain, denote one of it by true chain, the other by false chain. The number of edges in each chain is equal to
. The capacities of all the current constructed edges are
. Step 2, we continue to construct edges for G using the m subsets
. For each
, there are two nodes, namely
, in G corresponding to subset
. The new directed edges are
and
. For each subset
, if
, two adjacent edges in the true chain of
are corresponding to
only. Two new directed edges are constructed:
is connected to the first node of the first edge and the second node of the
Figure 3. The graph G constructed by an instance of the SAT problem.
first edge is connected to
. Similarly, if
, two adjacent edges in the false chain of
are corresponding to
only. Two new directed edges are constructed:
is connected to the first node of the first edge and the second node of the first edge is connected to
. Since each chain contains
directed edges and the number of elements in each subset
is at most 2n, Step 2 can be implemented successfully. If there are more than one subsets contain the same variable, these adjacent edges corresponding to each subset are arranged by the decreasing order of the subset index. Step 3, add
directed edges from s to t. The capacities of all the new constructed edges in Step 2 and Step 3 are equal to 1 (see Figure 3).
If there is a feasible solution of the SAT problem, that is there existing a 0 - 1 assignment to
such that each subset
, contains at least one element with value 1. By the construction of Step 2, we know that there are two adjacent edges corresponding to this 1-value element, denote the first edge by the key edge of
. From s, followed by
, the key edge of
, and node
, we can obtain a
path with flow value 1, denote this path by
. From s, followed by the chains not used by
, we can obtain another
path with flow value
. Together with the
edges from s to t, we obtain
paths with flow value
and the congestion of G is 1. If there is a k-splittable flow satisfying the demand with congestion value 1, there is a feasible solution of the SAT problem. Since the total capacity of the directed edges going out from s is
and the maximum capacity of the
paths is
, furthermore, the commodity can use at most k paths, according the above reasons, we know that there must be
paths with flow 1 and one
path with flow
. Denote P be the path from s followed by
. Assign the variables corresponding to the chains that path P transformed to 1. Since the congestion is 1, P and the path with flow
must be edge-disjoint. Then the path P must go through
and the key edges of
. And so for each
, there must be an element with value 1, and a feasible solution of the SAT is obtained.
Now suppose there is no feasible solution of the SAT problem, the paths from s with length larger than 1 must not be edge-disjoint (otherwise, it contradicts to the hypothesis), the congestion of any k-splittable flow satisfying the demand is at least
or
. Since the SAT problem is NP-hard, for the k-splittable single commodity problem with k as an input, obtaining an approximation algorithm with congestion less than
is NP-hard. ,
3. Minimum Number of Rounds
In this section, we consider the minimum number of rounds of the k-splittable flow problem. The demand
of commodity
can be transformed in multiple times and the total number of the transmission paths cannot be larger than
. The objective of this problem is to transform all commodities but using least times of the network. Minimizing number of rounds reduce the total transmission cost in some extent. In the k-splittable flow problem, there is some relationship between minimum congestion and minimum number of rounds and we have the following Theorem.
Theorem 4: Given a network G and a commodity set L, the commodities in L share a common source node s. Suppose
. If for arbitrary feasible flow x that satisfies all the demands
, there exists a k-splittable flow y that satisfies the demands and the path restrictions, and for arbitrary
,
, we have that for all the commodities with demand not larger
can be transformed in
rounds, in which
.
Proof: Copy the network G in
times, denoting them by
, respectively. For each
, its capacity in
is defined by
. Adding a super source node S and
super sink nodes
. For each
, connect the super source node S to the source node s in
, the sink nodes
is connected to
. The capacities of all the new edges are
. The construction of the new network is showed in Figure 4, denote it by
. In
, there are
commodities with demand
and path restriction number
from source node S to the sink node
, respectively. Denote the commodity set in
by
. Suppose x is a feasible flow in G satisfying all the commodities in L. By the construction of
, we can obtain a feasible flow
from x in
satisfying all the commodities in
. For
, the flow value
of edge
is
. Denote the set
be the commodities in
with demands not larger than
. It is easily to see that we can obtain a feasible flow
from
satisfying
. Since
is not larger than the minimum capacity
of
, by the theorem hypothesis, there is a k-splittable flow y in
satisfying the demands and path restrictions of commodities in
. Further, for any
,
, we have that
That is in y, the flow value of each edge in
is not larger than the capacity of the original graph G. Since in flow y, the paths from S to
can be transformed
into paths from s to
in G, and the number of paths is not larger than
, and then the commodities in L with demands not larger than
can be transformed into
rounds. The transmission paths and their path values in round j are corresponding to the transmission paths with their flow values in y in
. ,
In inference [10] , for the minimizing congestion k-splittable flow problem, there is a theorem as follows.
Theorem 5 [10] : For the single source k-splittable flow problem, suppose the number of paths each commodity can use is all equal to k. For any feasible flow x that satisfying all the demands
, there exists a k-splittable flow y that satisfies the demands and the path restrictions, and for arbitrary
.
In Theorem 5, it is not required that
, similar to the proof in Theorem 4, we can have that for the commodities with demands between in
, if we require these commodities be transmitted in r rounds, as long as the following inequality holds:
By the above inequality, we know that when
, all the commodities with demands not larger than
can be transmitted in 2 rounds. For the general
, all the commodities with demands not larger than
can be transmitted in 3 rounds.
4. Conclusion
In this paper, we give some complexity results of minimizing congestion in the k-splittable flow problem. The two approximation algorithms in [9] and [10] are all relied on the unsplittable flow algorithms. In the future, we will design approximation algorithms for minimizing congestion of the k-splittable flow problem using new strategies.
Acknowledgements
The work is supported by the National Natural Science Foundation of China under Grant No.11701595.