The Capacity Expansion Path Problem in Networks

This paper considers the general capacity expansion path problem (GCEP) for the telecommunication operators. We investigate the polynomial equivalence between the GCEP problem and the constrained shortest path problem (CSP) and present a pseudopolynomial algorithm for the GCEP problem, no matter the graph is acyclic or not. Furthermore, we investigate two special versions of the GCEP problem. For the minimum number arc capacity expansion path problem (MN-CEP), we give a strongly polynomial algorithm based on the dynamic programming. For the minimum-cost capacity expansion shortest path problem (MCESP), we give a strongly polynomial algorithm by constructing a shortest paths network.


Introduction
Currently Chinese telecommunication operators are under the huge pressure of communication capacity and communication quality, followed by the rapidly increasing users.Shortest path problem plays an important role in the telecommunication networks.In this paper, we consider the network capacity expansion strategy for the telecommunication operators, called the general capacity expansion path problem (GCEP), given a weighted digraph  = (, ; , , ) with  nodes,  arcs, and two fixed nodes , .For each arc  ∈ , nonnegative () is the weight, () is the capacity, and nonnegative () is the cost of expanding the capacity of the arc  by one unit.Given two positive  and , find a path  , from  to  to satisfy two constraints: (1) ( , ) = ∑ ∈ , () ≤  and (2) for some arc  ∈ , if the capacity () < , we must expand the capacity of arc  to .The objective is to minimize the total expansion cost ∑ ∈ , add()() on the path  , , where add() =  − () if () <  and add() = 0 otherwise.In telecommunication network,  is the given maximum length of the path  , , and  is the expected maximum number of the users.If the length of the path  , exceeds , the communication quality would drop quickly.If the capacity (or bandwidth) of the arc is not wide enough, the arc would be congested, and we have to expand this arc to the expected .
Krumke et al. [1] studied budget constrained network upgrading problems.The goal is how to find a minimum cost set of vertices to be upgraded so that the resulting network has a minimum spanning tree of weight no more than the budget.Their upgrading costs are on the vertices.
Zhang et al. [2] studied the problem how to increase the capacities of the elements in an edge set  efficiently so that the capacity of a given family F of subsets of  can be increased to the maximum extent, where the total cost for the increment of capacity is within a given budget bound .Yang and Zhang [3] considered a class of bottleneck capacity expansion problems, which aimed to enhance bottleneck capacity to a certain level with minimum cost.There were two types of expanding models: arc expanding and node expanding.They emphasized the maximum capacity path problem.Our models are different from theirs.For example, when we consider the arc expansion cost of the path in the telecommunication network, on which each signal is sent from the source  via some transferring facility V  to the sink , we must make sure that the transferring length does not exceed the length bound .
Different from our model and method, Seref et al. [4] studied an incremental optimization problem.They started from a feasible solution  0 and made an incremental change in  0 that would result in the greatest improvement in the objective function.For the incremental shortest path problem, they showed that the arc inclusion version is polynomially solvable whereas the arc exclusion version is complete.
In this paper, we present a proof of polynomial equivalence between the GCEP problem and the constrained shortest path problem (CSP), which leads to that the GCEP problem remains -hard.We design a pseudopolynomial algorithm and a FPTAS to solve the GCEP problem.Then we study two special versions of the GCEP problem.For the first version, minimum number arc capacity expansion path problem (MNCEP), we present a strongly polynomial algorithm based on dynamic programming.For the second version, the minimum-cost capacity expansion shortest path problem (MCESP), we construct a shortest path network and present a strongly polynomial algorithm.

The Equivalence between the GCEP Problem and the CSP Problem
Motivated by the polynomial equivalence between the Hitchcock problem and the minimum-cost flow problem [5], we prove that the GCEP problem is polynomially equivalent to the constrained shortest path problem, which leads to Theorem 1. Hassin [6] studied the constrained (or restricted) shortest path problem (CSP) as follows.Let  = (; ) be a weighted digraph with  nodes,  arcs, and two fixed nodes , .Each arc  ∈  has a length () and a transition time ().These numbers are assumed to be positive integers.
For any path  , from  to  in , the length ( , ) and transition time ( , ) are defined as the sum of the lengths and transition times of all arcs on  , , respectively.The CSP problem is to find the minimum length path  , in  such that transition time ( , ) along this path does not exceed a given bound .For convenience, we denote a notation, by { = (, ; , ; , ); } CSP , to represent an instance of the CSP problem.The CSP problem is a classical -hard problem [7].To obtain Theorem 1, we use { = (, ; , , ; , ); ; } GCEP to represent an instance of the GCEP problem.

Theorem 1. The GCEP problem is polynomially equivalent to the CSP problem.
Proof.It is sufficient to prove that the GCEP problem can be transformed to the CSP problem in polynomial operations, and vice versa.
It is easy to prove the claim: there is an optimal solution to the instance J of the CSP problem with the optimal value  if and only if there is an optimal solution to the instance (J) of the GCEP problem with the optimal value .Moreover, the transformation is executed in polynomial operations.
Since the CSP problem is NP-hard, the proof of Theorem 1 implies that the GCEP problem is NP-hard, even if () = 1.And if () = 1, the GCEP problem is reduced to regular CSP problem.

A Pseudopolynomial Algorithm for the GCEP Problem
According to Theorem 1, for any instance I of the GCEP problem in the acyclic digraphs, by constructing an instance (I) of the CSP problem and utilizing the FPTAS in [6,8] for the CSP problem, we can get a FPTAS to solve the GCEP problem.Now for the GCEP problem, no matter acyclic digraphs or not, by applying the following dynamic programming method which is similar to the Bellman-Ford algorithm [9,10], we give a pseudopolynomial algorithm.To describe our algorithm, for each node  ∈  and two integers  ≥ 0 and  ≥ 0, define   (, ) to be the minimum length of an optimal path  , from  to  with respect to the weight , such that at most  arcs are traversed and the expansion cost along  , is at most .Set   (, ) := +∞ if no such path exists.For convenience, denote addcost() = add()() as the expansion cost for each arc  ∈  and -path as the directed path if its weight is less than or equal to .Set OPT to be the minimum capacity expansion cost of - -path.

End of Algorithm EXACT(𝑊).
Actually algorithm EXACT() is a dynamic programming algorithm, which generalizes the Bellman-Ford method [9,10].Note that OPT is not known but it satisfies OPT = min{ |  −1 (, ) ≤ }. is the maximum number of traversing arcs on the path from node  to , and the algorithm enumerates each (≤  − 1) and each  ∈  for   (, ).To get  −1 (, ), the algorithm computes   (, ) first for  = 1,  = 1, . . .,  − 1, and each  ∈ , then for  = 2,  = 1, . . .,  − 1, and each  ∈  and so on, until the first value of  for which  −1 (, ) ≤ .According to the definition of   (, ),   (, ) is the minimum length of an optimal path  , from  to  with respect to the weight , such that at most  arcs are traversed and the expansion cost along  , is at most . −1 (, ) ≤  indicates the length with respect to weight  on this optimal path  , is less than and equal to  (optimal condition), and  ≤ OPT.Hence OPT is set to this value of .So the complexity of algorithm EXACT() is O(OPT ⋅  2 ), and we obtain Theorem 3.

Theorem 3. For the GCEP problem, the algorithm EXACT(𝑊) produces an optimal solution, and its time complexity is
Moreover, the technique of rounding and scaling for acyclic digraphs in [8] is applied to our pseudopolynomial algorithm EXACT(), and we can present an FPTAS in time O( 2 /) for the GCEP problem even in general digraphs, where  > 0. The construction of our FPTAS for general digraphs is similar to the one due to [8] for acyclic digraphs.The reader can find the algorithm in details from [8]; thus we omit it here.

Dynamic Programming Algorithm for the MNCEP Problem
In this section, we study the first special version of the GCEP problem, minimum number arc capacity expansion path problem (MNCEP), where for each arc  ∈ , () = 1, add() = 1 if () <  and add() = 0 otherwise.Equivalently, the objective is to find a path  , of , on which the number of arcs to be expanded is minimized.Like the GCEP problem, no matter acyclic digraphs or not, by applying the method similar to Bellman-Ford algorithm [9,10], we can design a strongly polynomial algorithm to solve the MNCEP problem.For each node  ∈ , given two integers  ≥ 0 and  ≥ 0, define (, , ) to be the minimum length of the path  , from  to  with respect to the weight , which traverses at most  arcs with exact  arcs to be expanded.Set (, , ) := +∞ if no such path exists.Algorithm 4 (MNCEP).Comment.Return the minimum number of arcs to be expanded on the path  , from  to  with constraint ( , ) ≤ . Begin Step 1 (initialization).Set (, , ) = 0 and set (, , ) = +∞ if  ̸ = .
End of Algorithm MNCEP.
The algorithm MNCEP is also based on dynamic programming.Different from algorithm EXACT(), no unknown OPT appears in the algorithm. is the maximum number of traversing arcs on the path from node  to , and  is the exact number of arcs to be expanded on this path.So  ≤ .The algorithm enumerates each (≤  − 1), each  ≤ , and each  ∈  till (, , ) ≤ .So the algorithm computes (, , ) first for  = 1,  = 1, 2, . . ., , and each  ∈ , then for  = 2,  = 1, 2, . . ., , and each  ∈ , and so on, until the first value  ≤  − 1 for which (, , ) ≤ .Hence, output OPT = .Thus, the algorithm runs in O( 2 ) time.We obtain Theorem 5.
Theorem 5.For the MNCEP problem, the algorithm MNCEP produces an optimal solution, and its time complexity is O( 2 ).

Strongly Polynomial Algorithm for the MCESP Problem
The second special version of GCEP is the minimumcost capacity expansion shortest path problem (MCESP).In MCESP problem, the bound  is set to be the shortest distance dist(, ) from  to  in , with respect to weight .So the objective of MCESP problem is to find a shortest path  , from  to  with respect to the weight , such that the total expansion cost ∑ ∈ , add()() on the path  , is minimized, where add() =  − () if () <  and add() = 0 otherwise.To solve this MCESP problem optimally, the shortest paths network plays an important role in the algorithm.
Property 1 (see [11]).Let the vector dist represent the shortest paths distances.Then a directed path  ,V from the source node  to the node V is a shortest path if and only if dist(, V) = dist(, ) + (, V) for every arc (, V) ∈  ,V .
Step 2. Find the shortest path  , from  to  in digraph   , with respect to the arc capacity expansion cost addcost.Output OPT = addcost ( , ) and the path  , .
End of Algorithm MCESP.
Theorem 7. The algorithm MCESP optimally solves the MCESP problem, and it runs in the time O( 2 ).
Proof.Property 1 implies the fact: if  ,V is a shortest path from the source  to some node V, then dist(, V) = dist(, ) + (, V) for every arc (, V) ∈  ,V .The converse is also true: if dist(, V) = dist(, ) + (, V) for every arc (, V) in a directed path  ,V from the source  to the node V, then  ,V must be a shortest path.The algorithm MCESP searches all  arcs for dist(, V) = dist(, ) + (, V) in .Hence, the new digraph   includes all minimum distance path from  to  in , with respect to the weight .The Step 2 of the algorithm selects the minimum cost capacity expansion path  , in   .Hence, the algorithm MCESP solves the MCESP problem optimally.
Step 1 of the algorithm needs O( 2 ) steps to compute all (, V) by using Dijkstra algorithm for shortest paths.

Conclusion
In this paper, we focus on the general capacity expansion path problem for telecommunication operators, a new practical capacity expansion model.The polynomial equivalence between the GCEP problem and the CSP problem is proved.Then by utilizing dynamic programming technique and Bellman-Ford method [9,10], we design a pseudopolynomial algorithm for the GCEP problem.We also present two special versions of the GCEP problem: the MNCEP problem and the MCESP problem.For the MNCEP problem, by using dynamic programming method and Bellman-Ford method, we design a strongly polynomial algorithm to solve it.For the MCESP problem, by constructing a shortest paths network, we design a strongly polynomial algorithm.
For further work, we would investigate some other special versions of the GCEP problem and related algorithms, which exist in the current telecommunication networks.
Step 2 needs O() steps to perform breadth-first search.Step 2 needs O( 2 ) steps as Step 1.Hence, the time complexity of the algorithm MCESP is O( 2 ).