Abstract
The network expansion problem is a very important practical optimization problem when there is a need to increment the flow through an existing network of transportation, electricity, water, gas, etc. In this problem, the flow augmentation can be achieved either by increasing the capacities on the existing arcs, or by adding new arcs to the network. Both operations are coming with an expansion cost. In this paper, the problem of finding the minimum network expansion cost so that the modified network can transport a given amount of flow from the source node to the sink node is studied. A strongly polynomial algorithm is deduced to solve the problem.
1. Introduction
Currently, the networks around us are continuously expanded to enlarge the transport capacity of electricity, gas, water, data, etc. This can be done either by increasing the transport capacities of the wires, pipes, or the bandwidth, whenever this is possible, or by adding new connections. Of course, the increase of the capacities is restricted by an upper limit and comes with a cost. Adding new connections also has a cost.
There are two network flow optimization problems that are related to this work since they involve modifications of the capacities on arcs: the inverse and the reverse maximum flow problems. The inverse maximum flow problem is to transform a given feasible flow from a given network G into a maximum flow by modifying the capacities of G as little as possible. The distance between the initial vector of capacities and the modified one is measured using different norms. The inverse maximum flow problem under can be solved in a binary search manner [1]. In the case of norm, a strongly polynomial algorithm is deduced that mainly involves the computation of a minimum cut in a special network [2,3]. The more general case when there are losses or gains on arcs is proved to be NP-Hard [4].
The reverse maximum flow problem was studied by [5]. Here, the goal is to look for a new capacity vector such that the maximum flow value in the new network is lower bounded by a given value , while minimizing the Chebyshev distance between the initial and the new capacity vectors. A polynomial algorithm, which works in two phases, was developed to solve this problem. In the first phase, a binary search is performed to find an interval containing the optimal value of the flow , and, in the second phase, the Newton method [6] is used to obtain the optimal capacity vector.
In an electrical, pipeline, wireless, or road transportation network, the expansion becomes indispensable in time to increment the amount of flow that can be transported through that network [7,8,9,10,11].
The problem of network expansion under budget constraint was studied by [12]. In this problem, given a budget, a maximum possible edge capacity expansion function and a cost function for the expansion of the edge capacity, the objective is to efficiently use the budget, such that the flow in the network is maximized. The problem is known as the budget-constrained flow expansion problem (BFEP). The main idea for solving this problem is to increase the flow in the network, iteratively, by one unit, using the cheapest path from the source to the sink. At each iteration, the remaining budget is updated, and the process stops when the whole budget was used. Their solution is based on two polynomial algorithms. One algorithm returns the edges that need to be expanded in order to increase the flow by one unit at minimum cost. The second one iteratively calls the first and checks if the imposed budget limit was reached.
In the present paper, we analyze the Minimum Cost Network Expansion Problem (MCNEP). Starting with a given network G, the objective is to obtain a new network , by increasing the capacities of the arcs from G within some given limits, or by adding new arcs, such that the cost of the modification is minimum, and in , w units of flow can be transported from source to sink. The cost function for the capacity augmentation/arc insertion operations is a linear function with respect to the modification of the respective capacities. Both problems, MCNEP and BFEP, study the possibility of expansion of an existing network. In BFEP, there is a budget to be spend for the expansion in order to obtain a maximum flow from source to sink, and the amount of money to be spend cannot exceed the given budget. On the other hand, in MCNEP, when the maximum flow that can be transported in the given network from source to sink becomes insufficient, the network should be expanded so that a given amount of flow can be transported in the modified network, and the cost of expansion is minimized.
Our paper is organized as follows. In Section 2, we provide an overview of the network flow problem. In Section 3, the Minimum Cost Network Expansion Problem (MCNEP) is formally described and a strongly polynomial algorithm for solving this problem is presented. Section 4 provides an example and finally, Section 5 concludes our work and points out future research directions.
2. Network Flow
Let be an directed network, where V is the set of so called vertices (nodes), and is the set of so-called arcs (directed edges), each arc connects two nodes i and j from V, s is a special node called source, and t is a node called sink. In G, we define the capacity function . The value is the maximum flow that can be transported from node i to node j on the arc .
If a network has multiple sources and multiple sinks, a super source and a super sink can be introduced. The super source is linked with the initial sources, and the initial sinks are linked with the super sink. The resulting network is equivalent with the initial one [13]. So, without restricting the generality of the problem, we shall consider from now on that the network has one source and one sink, i.e., it is an network.
A (feasible) flow in an directed network G is a function satisfying the boundary restrictions (1) and the conservation conditions from (2).
where is the so-called value of the flow f.
A feasible flow is a maximum flow if it has the maximum value among all the feasible flows in the network G, i.e.,
In (3), represents the maximum amount of flow that can be transported in the network G, from s to t. Now, we suppose that this value must be increased.
3. Flow Increment through Network Expansion
Since the increment of the arcs’ capacities comes with a cost, a cost function is introduced, where is the per unit cost of modification of the capacity on the arc . Therefore, if the capacity of the arc a is increased with d units, the cost of changing the capacity of a is . An upper limit modification function for the capacities is also introduced so that is the maximum capacity allowed on an arc a.
Let Q be the set of arcs that can be added to the network. Of course, , and , i.e., . A cost function is also introduced, where is the per unit cost of the capacity if the arc is added to the network. Therefore, if the arc having the capacity is introduced into the network, then the cost of adding a to the network is . An upper limit function for the capacities of the arcs in Q is also introduced, where is the maximum allowed capacity for the arc if it is introduced into the network, i.e., , where is the capacity of a.
The minimum cost expansion of the network G (by increasing the capacities of the arcs and by adding new arcs) has to be found so that in the resulting network , w units of flow can be transported from s to t, i.e., there exists a feasible flow of value w in . Thus, the following problem is to be solved:
We shall name the problem from Equation (4) as the minimum cost network expansion problem, and denote it as MCNEP. We have the following result:
Theorem 1.
If , where is the maximum flow in the network G, then G is the solution of MCNEP.
Proof.
Let be the maximum flow in the network G. We suppose that . It results that there exists a feasible flow f in G so that . Thus, G is a feasible solution of MCNEP. Since the cost of the objective function in Equation (4) for G is 0, it is clear that G is optimum solution for MCNEP. □
Now, let us study the feasibility of MCNEP. The maximum value of the flow that can be transported from s to t is achieved when the capacities of all the arcs from A are all increased to their maximum and all the arcs from Q are added to the network having the maximum allowed capacities, i.e., the maximum value of flow that can be transported from s to t is obtained in the network , where:
We shall call as the maximum extended network since all the capacities of the arcs from are set to their maximum.
We have the following feasibility theorem for MCNEP:
Theorem 2.
MCNEP is feasible if and only if , where is a maximum flow in .
Proof.
Let us consider that MCNEP is feasible and , where is a maximum flow in . Since MCNEP is feasible, it result that there is a network so that , , , and there is a feasible flow in so that . It is clear from (5) that is a feasible flow in , and since is a maximum flow in the results show that , which is a contradiction with the initial supposition that .
Now, for the inverse implication, we suppose that for the maximum flow in we have . It results that there is a feasible flow in so that . So, is a feasible solution for Equation (4). □
If , where is the maximum flow in the network G (G is not the solution of MCNEP, see Theorem 1) and MCNEP passes the feasibility test given by Theorem 2, a solution for MCNEP exists and has to be found. To do that, a new network denoted is constructed. The set contains the nodes from V, and for each arc , a new node denoted is introduced in , i.e.,
The set contains all the arcs from , and for each arc two new arcs are introduced, , and, respectively, , i.e.,
where:
The capacity function is defined as follows:
The cost function is constructed as follows:
Let be a minimum cost flow of value w in , i.e., is a feasible flow of value w in having the minimum cost among all feasible flows of value w in , where the cost of a feasible flow f in denoted is defined as follows:
The following network denoted is constructed, where:
and
Proof.
We recall the fact that is constructed using a minimum cost flow of value w calculated in the network , i.e., is the solution of the problem:
We have:
We construct the following flow denoted in :
Since is a feasible flow in , the results show that respects the conservation conditions in , and from Equation (13) the results show that satisfies the boundary conditions in . Thus, is a feasible flow in . Using Equation (16)–(19) the results show that is optimum solution of Equation (4). □
Corollary 1.
The cost of network expansion from G to the optimum solution of MCNEP is , where is the minimum cost flow in .
Proof.
The result is immediate from Equation (15). □
Using Theorems 1–3, the following algorithm (Algorithm 1) for solving MCNEP is developed.
| Algorithm 1: Algorithm for solving MCNEP (AMCNEP) |
| Input: ; |
| Output: ; |
| Compute a maximum flow in G; |
| If then |
| It is no need to modify G. A feasible flow of value w can be computed in G; |
| Stop. |
| End if; |
| Build the network using Equation (5); |
| Compute a maximum flow in ; |
| If then |
| MCNEP is not feasible; |
| Stop. |
| End if; |
| Build the network using Equations (6)–(10); |
| Compute a minimum cost flow in ; |
| Build the network using , Equations (12) and (13); |
| The network is the optimum solution for MCNEP. |
Theorem 4.
The time complexity of Algorithm 1 (AMCNEP) is
where n is the number of vertices in G, m is the number of arcs of the network G, and q the number of arcs from Q (that can be added to the network G).
Proof.
Algorithm 1 needs to calculate two maximum flows, one in G, and the other in . Today’s best known algorithm for the maximum flow problem is due to Orlin [14]. It has a time complexity of (when applied in G). In there are n vertices and arcs. Thus, the time complexity of finding the maximum flow in is .
A minimum cost flow has to be calculated in . The algorithms for minimum cost flow are designed to work on integer values [13]. Since in the cost of the arcs from are integer values divided by 2 (see Equation (10), before applying the algorithm for minimum cost flow, all the costs of the arcs from are multiplied by 2, and, in the end, the cost of the obtained flow is divided by 2. Today’s best known algorithm for the minimum cost flow problem is also due to Orlin [15]. Since has nodes and arcs, if applied in , this algorithm for minimum cost flow has a time complexity of .
So, the time complexity of the whole algorithm is . □
4. Example
We shall take an example to illustrate how AMCNEP works. In Figure 1, a given network G is presented. The arcs from Q (that can be added to the network) are drawn using dashed lines. This network is intended to be extended with the minimum cost so that it can support a flow of value .
Figure 1.
Initial network G.
In Figure 2, the maximum flow calculated in G is presented. Its value is . Since , the network from Figure 3 is built next.
Figure 2.
The maximum flow in G.
Figure 3.
The network and the maximum flow .
The maximum flow in has the value . Thus, MCNEP is feasible.
In Figure 4, the network is built. Since the capacity of the arc (2, 3) cannot be increased (), it is no need to introduce the node and the corresponding arcs and . The minimum cost flow of value is computed in . The cost of is .
Figure 4.
The network and the minimum cost flow of value .
In Figure 5, the solution of MCNEP is presented.The modified capacities are in bold. The capacity of the arc was increased from 2 to 5, and the capacity of the arc was increased from 2 to 4. The arc was added with the capacity 2. The total cost of network expansion from G to is . This value can be calculated comparing with G, or using the value of the minimum cost flow from Figure 4 (see Corollary 1).
Figure 5.
The solution of MCNEP.
5. Conclusions
This paper considered the minimum cost network expansion problem (MCNEP). The problem arises in cases where a given network must be modified to allow an increase in the amount of flow going from the source to the sink node. In this study, we considered that the transport capacities can be increased, and new arcs can be added to the network, and the cost of these operations is minimized. A strongly polynomial algorithm (Algorithm 1) was introduced to solve MCNEP.
A future work could consider a generalization of MCNEP, where the cost of the modification of arc capacities and the cost of introducing new arcs are not linear.
Author Contributions
Conceptualization, A.M.D. and L.M.; methodology, A.M.D.; software, A.M.D.; validation, A.M.D. and L.M.; formal analysis, A.M.D.; writing—original draft preparation, A.M.D. and L.M.; writing—review and editing, A.M.D. and L.M.; visualization, A.M.D. and L.M.; supervision, A.M.D.; funding acquisition, A.M.D. and L.M. All authors have read and agreed to the published version of the manuscript.
Funding
This research was funded by University Transilvania of Brașov.
Institutional Review Board Statement
Not applicable.
Informed Consent Statement
Not applicable.
Data Availability Statement
Not applicable.
Conflicts of Interest
The authors declare no conflict of interest.
References
- Deaconu, A. The inverse maximum flow problem considering l∞ norm. RAIRO—Oper. Res. 2008, 42, 401–414. [Google Scholar] [CrossRef][Green Version]
- Deaconu, A. A Cardinality Inverse Maximum Flow Problem. Sci. Ann. Comput. Sci. 2006, 16, 51–62. [Google Scholar]
- Deaconu, A.; Ciurea, E. The inverse maximum flow problem under Lk norms. Carpathian J. Math. 2012, 28, 59–66. [Google Scholar] [CrossRef]
- Tayyebi, J.; Deaconu, A. Inverse Generalized Maximum Flow Problems. Mathematics 2019, 7, 899. [Google Scholar] [CrossRef]
- Tayyebi, J.; Mohammadi, A.; Kazemi, S.M.R. Reverse maximum flow problem under the weighted Chebyshev distance. RAIRO—Oper. Res. 2018, 52, 1107–1121. [Google Scholar] [CrossRef]
- Zhang, Z.; Huang, X. Discrete Newton Method. In Nonlinear Combinatorial Optimization; Du, D.Z., Pardalos, P., Zhang, Z., Eds.; Springer: Berlin, Germany, 2019; pp. 37–56. [Google Scholar]
- Schrijver, A. On the history of the transportation and maximum flow problems. Math. Program. 2002, 91, 437–445. [Google Scholar] [CrossRef]
- Ceder, A. Public Transit Planning and Operation: Theory, Modelling and Practice, 1st ed.; Elsevier, Butterworth-Heinemann: Oxford, UK, 2007. [Google Scholar]
- Karpagam, T.; Sudhakar, V.J.; Arunsankar, N.; Dhanasekaran, M. Flow Based Algorithm. Am. J. Appl. Sci. 2011, 9, 238–239. [Google Scholar]
- Myint, K.; Lin, N. Application of Ford-Fulkerson Algorithm to Maximum Flow in Water Distribution Pipeline Network. Int. J. Sci. Res. 2018, 8, 306–310. [Google Scholar]
- Vasconcelos, C.D.; Lourenço, S.R.; Gracias, A.C.; Cassiano, D.A. Network flows modeling applied to the natural gas pipeline in Brazil. J. Nat. Gas Sci. Eng. 2013, 14, 211–224. [Google Scholar] [CrossRef]
- Elalouf, A.; Adany, R.; Ceder, A. Flow Expansion on Transportation Networks with Budget Constraints. Procedia Soc. Behav. Sci. 2012, 54, 1168–1175. [Google Scholar] [CrossRef]
- Ahuja, R.K.; Magnanti, T.L.; Orlin, J.B. Network Flows: Theory, Algorithms, and Applications, 1st ed.; Prentice Hall: Englewood Cliffs, NJ, USA, 1993. [Google Scholar]
- Orlin, J.B. Max Flows in O(nm) Time, or Better. In Proceedings of the Forty-Fifth Annual ACM Symposium on Theory of Computing, Palo Alto, CA, USA, 2–4 June 2013; Association for Computing Machinery: New York, NY, USA, 2013; pp. 765–774. [Google Scholar]
- Orlin, J.B. A Faster Strongly Polynomial Minimum Cost Flow Algorithm. Oper. Res. 1993, 41, 338–350. [Google Scholar] [CrossRef]
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2021 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).