Brief Announcement: A Special Case of Maximum Flow over Time with Network Changes
Abstract
We consider the problem of finding the value of a maximum flow over time in a network with uniform edge lengths where the edge capacities change over time. We assume that the capacity of every edge in the network is a piecewise constant function and parameterize the running time of our algorithm by the total number of pieces in the capacity functions across all edges, denoted . The key technical component in our approach is a condensed version of a Time Expanded Network (that we call a cTEN) whose classical max flow value is the same as the max flow over time on the original network. We show that a graph with nodes, edges, and capacity changes, admits a cTEN with nodes and edges. This implies that the problem can be solved in time using the combinatorial max flow algorithm of Orlin [7], or in time using the algorithm of Chen et al. [2], where is the maximum capacity of any edge and is the time horizon. When , this is faster than previously known algorithms for this problem.
Keywords and phrases:
maximum flow, dynamic flows, flows over timeFunding:
Kristin Sheridan: Additional funding provided by JPMorgan Chase & Co.Copyright and License:
2012 ACM Subject Classification:
Theory of computation Network optimizationFunding:
This research was funded in part by NSF awards CCF-2217069 and CCF-2225259.Editors:
George B. Mertzios and Andréa W. RichaSeries and Publisher:
Leibniz International Proceedings in Informatics, Schloss Dagstuhl – Leibniz-Zentrum für Informatik
1 Introduction
This paper investigates the maximum flow over time problem in temporal networks.333By “temporal” we mean that some network parameters change over time; networks with unchanging parameters are called “static”. Motivated by applications in satellite networks where movement of the satellites causes frequent changes to the network, we study the effect of the number of changes on the computation of a flow over time.444It is important to note that even in static networks (where all network properties stay the same over time), flow over time computation (see, e.g., [8]) can be different from steady-state or classical flow problems (e.g. [3]), as in the former case flow takes time to traverse edges. Our primary question is: Given a temporal network , a source , a sink , and a time , what is the maximum amount of flow that can be moved from to over time horizon ? We call this the maximum flow over time problem on temporal networks.
We focus on the special case of a temporal network where all edge lengths are uniform (the same) and static (unchanging over time), but edge capacities change over time. We assume that all edge capacities are piecewise constant, and denote by the total number of changes across all edges. Our primary result is stated in Theorem 1.
Theorem 1.
Let be an integer, and be a temporal network where each edge has length and its capacity at time is given by .555For integer , we use to denote the set . In particular has elements. We assume that and for all and times are integral. Let denote the number of pieces in the function over the time horizon , and .
Then the maximum - flow value on over time horizon can be found in time , where and is the runtime for a steady-state (classical) max flow algorithm on a network with nodes and edges.
Employing Orlin’s [7] max flow algorithm, we can achieve a strongly polynomial runtime . Alternatively, leveraging the algorithm by Chen et al. [2] allows us to solve the problem in time, where is the maximum edge capacity at any time. Previous results solve the feasibility variant of this problem (checking if a given flow value is feasible) in strongly polynomial time or weakly polynomial time for networks with general edge lengths and piecewise constant capacities [4, 5, 6, 2]. These other techniques can be paired with binary search or parametric search to find the maximum flow value, at a cost of increased runtime, whereas our method directly finds the maximum feasible flow. In the regime where (meaning the graph experiences a large number of changes relative to the number of nodes and edges), our approach yields faster runtimes than existing algorithms in both the strongly and weakly polynomial settings, even compared to algorithms that only test feasibility. If for example , our runtimes improve to and .
2 Definitions and main result
We begin by formally defining the special class of temporal networks we study.
Definition 2.
A temporal network consists of
-
a set of vertices ,
-
a set of directed edges , each of integral length , and
-
capacity functions for each edge that denote the capacity of edges at each integral time.
Note that a network whose edge capacities are piecewise constant and are nonzero only at times in can be specified in space , where is the maximum capacity of any edge at any time, and is the total number of constant pieces across all capacity functions. In particular, the input size is linear in but logarithmic in . Our objective is to design algorithms that run in time polynomial in with no dependence on .
We can now formally define flows over time on temporal networks. A flow is a vector of functions for , where denotes the flow amount carried by edge at time . Let be the net flow into at time under flow . That is, . The value of flow at over time horizon is defined to be , where the network sink is .
Definition 3.
An - flow over time in a network is a set of functions for each such that the following hold:
-
1.
For all integers , (edge capacity constraint)
-
2.
For all : (net flow into a node is always non-negative)
-
3.
For all : (net flow over the whole period is for all but and )
Time Extended Networks (TENs)
We approach the maximum flow over time problem by reducing to a classical max flow problem. The most basic way to relate these two problems is using a Time Extended Network of the temporal network over time horizon , denoted . Specifically, has vertex set , and there is an edge from to of capacity for if and only if and . For all , there is also an edge of infinite capacity from to . The source and sink of this network are and , respectively.
For any and , the value of a maximum - flow over time horizon in is the same as that of a maximum steady-state - flow in [1]. Thus, one solution to this problem is to run any steady-state max flow algorithm on . However, the size of can be exponential in the size of when . To avoid this exponential blow up, we define a “compressed” version of , which we call a condensed time extended network, or (where is a set to be defined). The basic idea is to compress multiple layers of the TEN corresponding to certain intervals of time into a single layer without changing the capacity of the network. The set defines the appropriate time intervals.
Definition 4.
Let be a temporal network with source and sink , and let with . Let denote the times in . We define as a classical (steady-state) flow network as follows:
-
The vertex set is .
-
For all and all , there is an edge from to with infinite capacity.
-
For all and all , there is an edge from to with the following capacity if it is non-zero:
Further, we treat as the source and as the sink. For brevity, we may write if is clear from the context.
Note that is the same as . The size of is polynomial in the size of and , and therefore can be much smaller than the size of when is much smaller than . Furthermore, it is easy to see that can be computed efficiently in time polynomial in the size of and .
Finite cuts and cut functions
Our proof methods primarily involve analyzing minimum cuts on the TEN and cTEN of a network. Note that in , if an - cut has finite capacity, then for all and all . We represent finite capacity cuts in a TEN by a cut function that maps every vertex to the earliest time such that , or to if no such time exists.
Definition 5.
A cut function on maps vertices to the interval with and , where is the source and is the sink. The cut function uniquely represents the - cut with . We let be the cost of the cut defined by .
We analogously define a cut function on a as a map from vertices to the set , that represents the cut .
Note that finite capacity cuts in a cTEN form a subset of finite capacity cuts in a TEN. Our goal is to argue that there is a small cTEN that has the same min cut capacity as the TEN. To this end, we focus on identifying the “critical” times corresponding to edges crossing a min cut in the TEN. For a cut function , The following observation then follows from the correspondence between the cut functions of a cTEN and a TEN.
Observation 6.
Let be such that there exists a cut function corresponding to a min - cut in with . Then, any min - cut in is also a min - cut in . In particular, the capacity of the min cut in is equal to the capacity of the min cut in .
The critical times of a network
Having established the basic structure of cuts in a TEN, we now identify a small set that contains all of the critical times of some min cut of . Such a small set can then be used to construct a small cTEN that captures the min cut capacity of the TEN as per Observation 6. Intuitively, we construct our set of critical times to include all times at which some edge changes capacity, as well as certain “offset” times from each such change. The idea is that information about the change in some edge capacity may propagate down a path of nodes in the network, so the offset values should correspond to some possible path length in the network. As is uniform across all edges, all paths in the network have length for some . Thus, we define our critical times as follows.
Definition 7.
Given a temporal network , let be the set of times at which some changes value: . Then we define
Note that we have , and therefore, . We can now state our main technical lemma, which we discuss further in Section 3.
Lemma 8.
For any there exists a cut function corresponding to a min - cut with .
3 Finding the value of the max flow
In this section we discuss Lemma 8. Our goal is to show the existence of a min cut in with . We first define a local operation on cuts that allows us to move from one min cut to another. Let denote a cut function in . We use to denote vertices that are mapped to or in : . Then for any subset , we can define two variants of the cut function – one where the assignments to vertices in move “up” and the other where the assignments move “down”. Formally,
Definition 9.
Given a cut function in and a set , define the cut functions and as follows:
-
if , and otherwise.
-
if , and otherwise.
Next we identify properties the set needs to satisfy to ensure that and have the same (minimum) capacity as .
Definition 10.
Given a cut function in , a set , and some vertex , define as the union of the following sets:
In the full version of the paper, we prove Lemma 11, which states that if does not fall into one of the “forbidden” points for , then and have the same cost as .
Lemma 11.
Given a network and min - cut function , let satisfy for all . Then .
We briefly outline the idea of this lemma. Note that some number of copies of each edge crosses the cut defined by . We want to show that if incurs some additional cost by having an extra copy of cross it as compared to , then obtains an equivalent “discount” by having one less copy of cross it as compared to . Conversely, gets a total discount equal to the total extra cost of . As neither nor can be cheaper than , it must be the case that all three cuts have the same cost. Figure 1 exhibits an example showing why the property for all is important in the statement of the lemma: if this property does not hold for some and , the costs and discounts described above might not offset each other.
In the full version of the paper, we use Lemma 11 to prove Lemma 8. At a high level, consider a min cut function that maximizes . We show that if , there exists an such that is not offset from any by a multiple of . We define to be and all of the nodes such that is offset from by a multiple of , and we show that meets the criteria of Lemma 11, so is a min cut with , which contradicts how we picked .
References
- [1] E. J. Anderson, P. Nash, and A. B. Philpott. A class of continuous network flow problems. Mathematics of Operations Research, 7(4):501–514, 1982. doi:10.1287/MOOR.7.4.501.
- [2] Li Chen, Rasmus Kyng, Yang P Liu, Richard Peng, Maximilian Probst Gutenberg, and Sushant Sachdeva. Maximum flow and minimum-cost flow in almost-linear time. In 2022 IEEE 63rd Annual Symposium on Foundations of Computer Science (FOCS), pages 612–623. IEEE, 2022. doi:10.1109/FOCS54457.2022.00064.
- [3] Lester Randolph Ford and Delbert R Fulkerson. Maximal flow through a network. Canadian journal of Mathematics, 8:399–404, 1956.
- [4] Bruce Hoppe and Eva Tardos. The quickest transshipment problem. Mathematics of Operations Research, 25(1):36–62, 2000. doi:10.1287/MOOR.25.1.36.15211.
- [5] Yin Tat Lee, Aaron Sidford, and Sam Chiu-wai Wong. A faster cutting plane method and its implications for combinatorial and convex optimization. In 2015 IEEE 56th Annual Symposium on Foundations of Computer Science, pages 1049–1065. IEEE, 2015. doi:10.1109/FOCS.2015.68.
- [6] James B Orlin. A polynomial time primal network simplex algorithm for minimum cost flows. Mathematical Programming, 78(2):109–129, 1997. doi:10.1007/BF02614365.
- [7] James B. Orlin. Max flows in o(nm) time, or better. In Proceedings of the Forty-Fifth Annual ACM Symposium on Theory of Computing, STOC ’13, pages 765–774, New York, NY, USA, 2013. Association for Computing Machinery. doi:10.1145/2488608.2488705.
- [8] Martin Skutella. An introduction to network flows over time. In William Cook, László Lovász, and Jens Vygen, editors, Research Trends in Combinatorial Optimization: Bonn 2008, pages 451–482. Springer Berlin Heidelberg, Berlin, Heidelberg, 2009. doi:10.1007/978-3-540-76796-1_21.
