On the Complexity of Weight-Dynamic Network Algorithms

by   Monika Henzinger, et al.

While operating communication networks adaptively may improve utilization and performance, frequent adjustments also introduce an algorithmic challenge: the re-optimization of traffic engineering solutions is time-consuming and may limit the granularity at which a network can be adjusted. This paper is motivated by question whether the reactivity of a network can be improved by re-optimizing solutions dynamically rather than from scratch, especially if inputs such as link weights do not change significantly. This paper explores to what extent dynamic algorithms can be used to speed up fundamental tasks in network operations. We specifically investigate optimizations related to traffic engineering (namely shortest paths and maximum flow computations), but also consider spanning tree and matching applications. While prior work on dynamic graph algorithms focuses on link insertions and deletions, we are interested in the practical problem of link weight changes. We revisit existing upper bounds in the weight-dynamic model, and present several novel lower bounds on the amortized runtime for recomputing solutions. In general, we find that the potential performance gains depend on the application, and there are also strict limitations on what can be achieved, even if link weights change only slightly.



page 1

page 2

page 3

page 4


Input-dynamic distributed graph algorithms for congested networks

Consider a distributed system, where the topology of the communication n...

Minimum Spanning Trees in Weakly Dynamic Graphs

In this paper, we study weakly dynamic undirected graphs, that can be us...

On the Power of Preprocessing in Decentralized Network Optimization

As communication networks are growing at a fast pace, the need for more ...

Scalable Traffic Engineering for Higher Throughput in Heavily-loaded Software Defined Networks

Existing traffic engineering (TE) solutions performs well for software d...

Exact quantum query complexity of weight decision problems

The weight decision problem, which requires to determine the Hamming wei...

On Fundamental Bounds of Failure Identifiability by Boolean Network Tomography

Boolean network tomography is a powerful tool to infer the state (workin...

A Correlation Clustering Approach to Link Classification in Signed Networks -- Full Version --

Motivated by social balance theory, we develop a theory of link classifi...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

1 Introduction

As communication networks are often an expensive infrastructure, making best use of the given resources is important. For example, over the last decades, many efficient traffic engineering algorithms have been developed which allow ISPs to improve network utilization and performance [vissicchio2014sweet, b4]. These algorithms typically rely on the optimization of link weights (in particular the IGP link weights), which in turn determine the shortest paths computed by the ECMP protocol [ecmp].

In principle, a more dynamic and adaptive operation of communication networks has the potential to significantly improve the network efficiency: traffic patterns often feature a high degree of temporal structure [sigmetrics20complexity, benson2010understanding, pujol2019steering], which could be exploited for optimizations over time. Motivated by this potential, we have recently seen great efforts to render networks more flexible, adaptive, or even “self-driving” [pieee19, FeamsterR2017, reda2020path, fischer2006replex].

This paper is motivated by the observation that a more dynamic network operation also introduces an algorithmic challenge. Going back to our traffic engineering example, the state-of-the-art approach of re-computing shortest paths or optimal flow allocations from scratch can be time-consuming [pujol2019steering], and may eventually become the bottleneck which limits network reactivity. The high runtimes may further prevent operators to conduct fast what-if analyses, e.g., experimenting with different link weights using tools such as FlowVisor [pujol2019steering]. While such a high runtime may be unavoidable in some cases, in practice it is unlikely that many link weights need to be changed significantly in a short time [vanbever2011seamless]. This introduces an optimization opportunity, and we ask:

  • Given a small change of link weights, can we recompute a solution dynamically, i.e., based on the current solution, significantly faster than recomputing it from scratch?

Link weight changes are not only an important operation in the context of traffic engineering and shortest path routing, but link weights also define other fundamental network structures, such as spanning trees [perlman1985algorithm].

We are in the realm of dynamic graph algorithms, an active research area in theoretical computer science [Henzinger18]. However, while existing literature in this area primarily revolves around the question whether solutions to graph theoretical problems can be recomputed efficiently upon additions and removals of links, given the networking context, we are many times interested in quickly reacting to changes of the link weights only.

Our contributions.

Motivated by the desire to speed up traffic engineering decisions, we present novel weight-dynamic graph algorithms, network algorithms which dynamically recompute solutions upon link weight changes, and initiate the study of lower bounds on the time per operation for weight-dynamic graph algorithms. Our results are summarized in Table 1.

Dynamic algorithms are usually composed of a database that is maintained during input changes. They present trade-offs between two parameters: update time, which is the time it takes to update the database upon a change (edge insertion or deletion, or edge-weight change); and query time, which is the time it take to answer a query using the database (e.g., compute the distance between a pair of nodes). Our algorithms all have a constant query time, and different update times. Our lower bounds show that in some cases, either the update time or the query time must be high.

Problem Sta. upper bound Dyn. upper bound Lower bound Cond.?
Shortest -path [Dijkstra59] [FrigioniMN00]
Thm. 1
Max -flow [Madry16] Thm. 2
Thm. 4
Maximum matching [Madry16] Thm. 5
Thm. 3
MST [KargerPT95] [HolmRW15]
Thm. 8
Table 1: Our results vs. some prior results on edge-dynamic algorithms.
The dynamic upper bounds are for update times, and have constant query time. The conditional lower bounds should be interpreted as follows: in a graph with edges there is no algorithm that has an update time of and a query of for any ; the MST lower bound states there is no algorithm that has an update time of and a query of . The shortest paths lower bound holds even for approximations, for any . denotes the maximum weight of an edge in the graph.

We first consider fundamental problems related to routing, and in particular, the computation of shortest paths and maximum flows. Computing a shortest -path for a new network can be done by a simple application of Dijkstra’s algorithm [Dijkstra59] in time. This can be improved to time per update in a dynamic network with only edge-weight changes [FrigioniMN00]. We prove that the above algorithm is almost optimal:

  • For any two constants , the amortized update time for a -approximation of the shortest -path problem is , even when edge weights can only change by a small additive constant (this bound is consistent with the upper bound, as the lower bound is proved on a graph with ). This yields strong lower bounds on the ability to pre-compute the effect of edge-weight changes on the network flow, even when the changes are only by a constant factor and if a multiplicative error is allowed.

In terms of the maximum flow problem, we show:

  • There is a simple algorithm that maintains the maximum -flow in time per change.

  • The amortized update time for maximum -flow is .

Motivated by these results, we then extend our study of weight-dynamic algorithms to applications related to load balancing: we consider different matching problems, including maximum weight matching, -matching [AhnG14], and semi-matching [HarveyLLT06]. We extend the definition of semi-matchings to weighted graphs in a natural way, and show:

  • For any constant , the amortized update time for a weighted maximum matching, semi-matching, or -matching, is .

The above lower bounds hold under the popular assumption of the OMv conjecture [HenzingerKNS15] from complexity theory, discussed later. Finally, we study another basic network problem, the computation of a minimum weight spanning tree (MST), for which we prove an unconditional lower bound, as follows.

  • There is an algorithm that maintains an MST in amortized time [HolmRW15]. While this algorithm is for edge addition and deletion, it can be adapted to handle edge-weight changes in a trivial manner.

  • The amortized update time of MST is ; this bound is unconditional.

All our lower-bound results hold for deterministic as well as for randomized algorithms with error probability at most 

, and also when amortized over a sequence of changes.

In general, we hope that our insights can inform the networking community what can and cannot be achieved with such dynamic algorithms, and believe that the notion of “weight-dynamic” network algorithm may also be of interest for future research in the theory community.


After defining the weight-dynamic model in Section 2, we consider its application for the shortest -paths problem (Section 3), the maximum -flow problem (Section 4), different matching problems (Section 5), and finally the spanning tree problem (Section 6). We review related work in Section 7 and conclude our contribution in Section 8.

2 Preliminaries

We consider dynamic graphs where only the edge weights change, while the underlying structure of the graph remains intact. We are particularly interested in the practically relevant scenario where link weights do not change dramatically at once: an operator is unlikely to adjust weights quickly and globally [vanbever2011seamless]. Moderate changes render the problem different: for example, in distance-related problems (shortest paths, MST), removing an edge in the “standard” model is equivalent to giving it a very high weight in our model. In this paper, we consider a more restricted model, where between any two consecutive graphs, the edge weight differences are limited by an additive constant.

Interestingly, while dynamic graph algorithms are well explored in the more theoretical literature (see e.g. [Zwick_98, RodittyZ11, RodittyZ12, HenzingerKN16, HenzingerKN16a, HenzingerKN18, GutenbergW20, GutenbergW20a, GutenbergW20b] for work on exact and approximate shortest paths), most existing work considers scenarios where entire links change, and hence these results do not directly apply to network optimization problems such as traffic engineering where only the weights of links change.

2.1 Our model

We consider a simple weighted graph with nodes, edges, and an edge-weight function giving each edge a positive integer weight bounded by some value (that may depend, e.g., on ).

A fixed graph with dynamic edge weights is modeled as a sequences of graphs, finite or infinite, where each has the same topology but possibly a different edge-weight function. All edge weight functions have the same domain, i.e., they are of the form for the same bound .

We focus on bounded edge-weight changes: for a given constant , for any and edge , we have . Our lower bounds hold also in a less strict regime, where the edge weight changes are not bounded by a constant, and can even be multiplicative.

2.2 Problem definitions

We consider several classic problems on weighted graphs, all having important applications in networking.

Shortest -path

An -path in a graph connecting two nodes is a sequence of nodes, such that for each , . The weight (usually representing length) of such a path is . Given two nodes , a shortest -path is an -path with minimal weight, i.e., such that no other -path in has strictly lower weight. The goal in the shortest -path problem is to find such a path, or evaluate its length.

Maximum -flow

An -flow in a graph is a function assigning each directed edge an amount of flow. Formally, we require for each : if then (and specifically ); if then ; and, if then . The value (or amount) of such a flow is defined to be . We define the residual weight of each edge as , and the residual graph as a graph with the same structure but with the residual weights.

Given two nodes , a maximum -flow is an -flow of maximum value. The goal in the maximum -flow problem is to find such a flow its value.


A matching in a graph is a set of its edges such that no two edges intersect, i.e., for each we have . In a weighted graph, the weight of a matching is . We also study the following extensions of matchings; note that they not always constitute a legal matching. A -matching [AhnG14] is a natural extension of the notion of matching, where each node can take part in at most edges of . A further extension of this gives a different bound to each node , as follows. Given a graph

and a vector

where , a -matching in is a set of edges such that for each , . The weight of a -matching is naturally defined as the sum of edge weights in . This definition also applies when is a multi-set. A -matching with the -vector satisfying for all is a (standard) matching.

A graph or is bipartite if there is a bi-partition of its nodes, , such that . A semi-matching in a bipartite graph is a set of edges that intersects every node in exactly once. Semi-matchings in unweighted graphs were defined and discussed in [HarveyLLT06], which presents a cost measure for them, aiming at capturing quantities related to task allocation problems. In Section 5.2 we discuss an extension of this definition to weighted graphs [BrunoCS74].

Minimum weight spanning tree

A spanning tree in a graph is a set of edges that intersects every node in at least once, and contains no cycles (a cycle is a non-trivial path from a node to itself that does not repeat any other node). The weight of a tree in a weighted graph is the sum of its edge weights: . In the minimum weight spanning tree problem (MST), our goal is to find a spanning tree of minimum weight.

Approximation algorithms

For the shortest -path problem, we consider an approximation algorithm with one sided error. That is, if a shortest -path has length , then the -approximation algorithm we consider returns a path of length satisfying . Specifically, this approximated value allows us to distinguish the cases (in which case ) and (in which case ).

2.3 The OMv conjecture

We use the popular OMv conjecture as a condition for some of our lower bounds. In fact, we will not use it as is, but a related conjecture, called the OuMv conjecture. We start by defining the OuMv problem.

Definition 1.

In the Online Boolean Vector-Matrix-Vector Multiplication (OuMv) problem, an algorithm is given an integer and an Boolean matrix . Then, for rounds numbered , the algorithm is given a pair of -dimensional Boolean column vectors and has to compute and output the resulting Boolean value before it can proceed to the next round.

It is conjectured [HenzingerKNS15] that the OuMv problem has no truly subcubic-time algorithm, as stated next. This conjecture is implied by another, popular conjecture—the OMv conjecture. Both conjectures implicitly assume there are non-zero entries in the matrix .

Conjecture 1 (The OuMv conjecture).

For any constant , there is no -time algorithm that solves OuMv with an error probability of at most .

3 Shortest -paths

The computation of shortest paths given the link weights, is a most basic task in communication networks. We will hence start our investigation of weight-dynamic algorithms with this use case.

We focus on maintaining the shortest -path length in an undirected graph. Any algorithm that maintains distances between all pairs of nodes (all pairs shortest paths, or APSP) or between a source and all other nodes (single-source shortest paths, or SSSP) can also be used to compute the shortest -path length, so our lower bounds apply to these problems as well.

In the edge-weight change regime, shortest -path problem has a dynamic algorithm with update time and constant query time for the path length, and query time for the path itself, where is the length of the path [FrigioniMN00]. This problem does not have a truly sub-linear (in ) amortized time algorithm if edge insertions and deletions are both allowed [HenzingerKNS15]. Here, we extend this lower bound construction to the case where only edge weight changes are allowed — note that the lower bound is on a graph with .

Theorem 1.

For any constants , there is no dynamic algorithm maintaining a -approximation for the shortest -path problem with amortized time per edge-weight change and amortized time per query, unless the OMv conjecture is false.

Given a Boolean matrix and two Boolean -dimensional vectors , we define a weighted graph as follows. The graph is a full bipartite graph on , with . The weights of the edges in are for every . The weights of the other edges are and for every . The following claim connects the OuMv problem with the shortest -path problem.

Claim 1.

If then the shortest -path in has weight , and otherwise at least .


If then there exists such that . In this case, the path has weight .

On the other hand, if then for each either , or . Consider a shortest -path: It must start with an edge and end with an edge for some , and contain at least one other edge, in . The edges and have either weight  or . If either has weight , then the path has weight at least . Otherwise, we conclude that , which implies , and thus . Since the graph is bipartite, any path from to must either use the edge , or have length at least ; in both cases, this path has weight at least , and the full -path has weight at least . ∎

Using this claim, we can now prove Theorem 1.

Proof of Theorem 1.

Consider an optimal dynamic algorithm for the shortest -path problem. Using this algorithm we process pairs of vectors arriving as inputs to the OuMv problem with matrix as follows.

First, build the graph for the all--vectors, and execute the initialization phase of the --shortest paths algorithm. Given a pair of vectors arriving online for the OuMv problem, update the edge weights in the graph . Note that the change is only in edges touching or , so edges are changed, and only by an additive factor of .

Now, execute the algorithm on these updates, which takes time . If the algorithm returns a shortest path of length strictly less than , we use Claim 1 to conclude that , and otherwise, . Thus, we have solved the OuMv problem by performing changes and a single query for the simulation of each round, and a total of changes and queries. If the amortized update time of each change is and of each query is , then the total running time would be , contradicting the OuMv conjecture. ∎

4 Maximum -flow

Maximum flow (or throughput) problems are among the most studied network optimization problems, and we hence consider weight-dynamic algorithms for them.

4.1 Maximum -flow algorithms

Theorem 2.

There is a dynamic algorithm for maintaining the maximum -flow in directed or undirected graphs with edge weight increases and decreases, with constant additive changes, in time per operation.

When considering both edge insertions and deletions, no non-trivial algorithm for maintaining max -flow is known. The best strategy for such cases is to execute the state of the art algorithm for static graphs, requiring rounds to complete [Madry16]. Our algorithm constitutes a significant improvement over this strategy.


Let us first consider an edge-weight (capacity) change by a single unit.

We start with the case of a weight decrease, for some edge . If this edge does not currently carry any flow, no changes are required. Otherwise, if the graph is undirected assume w.l.o.g. that the flow on this edge goes from to , and if it is directed, similarly assume the edge is directed from to . Consider the directed graph composed of all the flows. In this graph, we look for a directed path from to , and for a directed graph from to ; both paths must exist since the flow is valid. We then decrease the flow on these two paths by unit, as well as the flow on the edge itself.

Similarly, consider a weight increase on an edge . If the graph is directed, assume w.l.o.g. that the edge is directed from to . In the residual graph, compute similar paths: from to and from to , and if these are found, increase the flow on them and on by unit. If the graph is undirected, apply the procedure twice, with the directed edges  and .

Each of the above procedures takes time. If the weight change is by a larger number of units, we just repeat the same procedure for each unit change, which still takes time units, as claimed. ∎

4.2 Lower bounds for maximum -flow

Dahlgaard [Dahlgaard16] has proved an lower bound on the amortized update time of the maximum cardinality bipartite matching problem, conditioned on the OMv conjecture. From this, he derives a lower bound for the maximum -flow problem using standard techniques.

Dahlgaard’s lower bound is proved using a construction of a sequence of specifically crafted bipartite graphs. Here, we adapt this lower bound to our setting, by using the following result. This is [Dahlgaard16, Lemma 1], along with an observation regarding the number of changes, which is implicit in the graph construction therein.

Lemma 1 ([Dahlgaard16]).

Given an instance of the OuMv conjecture, it is possible to construct a sequence of bipartite graphs such that if then the maximum size of a matching in is , and otherwise it is . In addition, all the graphs have the same bi-partition, with nodes in each side, and the difference between and is in the addition of edges.

From this, we can derive the following lemma.

Lemma 2.

Given an instance of the OuMv conjecture, it is possible to construct a sequence of weighted full bipartite graphs such that if then the maximum weight of a matching in is , and otherwise it is . In addition, all the graphs have nodes, and the difference between and is in the increase of edge weights from to .

Proof of Lemma 2.

As the graphs from Lemma 1 do not differ in their set of nodes or bi-partition, we can consider a full bipartite graph on the same set of nodes and bi-partition, with all edge weights . Let be the graph , with the weight of edges appearing in increased by . Note that the matching from also appears in , and its weight is doubled, i.e., . In addition, this matching matches nodes, and we can also match all the other nodes, since the graph is full bipartite, getting a matching of total weight .

Finally, note that no matching in can contain more weight- edges (since was of maximum size in ), or more edges in total (since matches all the nodes). Hence, is a maximum weight matching in . ∎

Assume there is a dynamic algorithm that solves the MWM problem on a sequence of graphs with edge weight increases, in amortized time per weight increase and amortized time per query. The above lemma shows that, given an instance for the OuMv conjecture of length , we can construct the sequence of graphs, and use the alleged algorithm to solve the instance of the OuMv conjecture. In addition, the graphs have nodes and edges. So this gives an algorithm solving the OuMv problem in time per vector-pair, refuting the conjecture. As the OMv conjecture implies the OuMv conjecture, we get the following theorem.

Theorem 3.

There is no dynamic algorithm maintaining a maximum weight matching in amortized time per weight increase and amortized time per query, for any , unless the OMv conjecture is false.

As -matchings constitute a specific case of matchings, the theorem immediately applies to them as well.

A standard textbook reduction, as the one mentioned in [Dahlgaard16] (see, e.g., [CormanLRS_09]), gives a similar bound for the max -flow, as follows.

Theorem 4.

There is no dynamic algorithm for maintaining a maximum -flow in an undirected graph with edge weight increases in amortized time per weight increase and amortized time per query, for any unless the OMv conjecture is false.

The same results hold for the decremental case (and of course, if both weight increases and decreases are allowed). To see this, consider the same graph sequences, but in the opposite order, in the same way as in [Dahlgaard16].

Following the previous section, one may wonder if it is possible to get similar lower bounds for approximate versions of the maximum flow and maximum matching problems. At least in one case, we know this is impossible: there exist -approximation dynamic algorithms for matching, running in constant time [Solomon2016FullyDM]. Since these dynamic algorithms can also be used in our setting, getting a non-trivial lower bound for -approximation of maximum matching is impossible. The questions of lower approximation factors of matching, and of getting a lower bound for maximum -flow not through a reduction to matching, remain open.

5 Matchings

We next consider applications related to load-balancing, and specifically, matchings. In the previous section, we showed a lower bound for maximum matching, which immediately implies a lower bound for the -matching problem. Here, we present a maximum matching algorithm, and then turn to study a related problem: the computation of semi-matchings. Semi-matchings are traditionally studied in the context of allocating tasks to machines [HarveyLLT06], but also find applications, e.g., when assigning users to points-of-presence [SchmidS13].

5.1 Maximum weight matching algorithm

The aforementioned dynamic algorithm for the maximum -flow problem immediately implies a similar algorithm for the dynamic maximum weight matching problem, through the same standard reduction used for the lower bound (see e.g. [CormanLRS_09]). This gives the following.

Theorem 5.

There is a dynamic algorithm for maintaining a maximum weight matching in graphs with edge weight increases and decreases, with constant additive changes, in time per operation.

5.2 Defining weighted semi-matchings

Consider a weighted bipartite graph where is the set of edges and is an edge-weight function, where no node in is isolated. A semi-matching is a set of edges in such that each node in is incident on exactly one edge of .

Following [BrunoCS74], we study an extension of this classical definition of semi-matchings to the edge-weighted case, which can model task allocation (resp. PoP assignment) problems where a task may have different completion times in different machines (resp. at different sites). We consider a model where the cost of a semi-matching is defined to capture the total makespan of all the tasks (nodes in ), or equivalently, the mean makespan. Since the tasks are no longer identical, each machine sets the order of the tasks allocated to it, in a way that will minimize the total makespan. Formally, we define the cost of for a node (machine) as

where is the set of neighbors of in , , and . The total cost of a matching  is the sum of the costs of nodes in , i.e., . Note that this definition coincides with the definition for unweighted graphs [HarveyLLT06], by setting as the constant function .

In the minimum-cost semi-matching problem, we are given a weighted bipartite graph as above, and the goal is to find in it a semi-matching with a minimal cost.

While semi-matchings resemble -matchings in structure, finding minimum cost matchings of these types constitutes a different algorithmic problem. One reason for this is that in a semi-matching, the effect of a matched edge on the cost is not linear, but also depends on the other edges. Another reason is that in semi-matchings, there is no predefined bound on the number of matching edges touching each node.

5.3 Lower bounds for the semi-matchings problem

The lower bound for the maximum weight matching problem from Theorem 3 also implies a lower bound for maintaining a minimum cost semi-matching as follows.

Theorem 6.

There is no dynamic algorithm for maintaining a minimum cost semi-matching in amortized time per weight increase and amortized time per query, for any , unless the OMv conjecture is false.

To prove this theorem, we use Lemma 1, in a way similar to the one taken in the proof of Lemma 2. Specifically, given a graph from Lemma 1, we construct a graph as follows.

Let be a full bipartite graph on the same set of nodes as and the same bi-partition (all these graphs have the same nodes and partition), with all edge weights set to . Let be the graph with the weights of edges that appear in decreased by . A matching in is also a matching in , with cost . In addition, this matching matches nodes from , and we can also match all the rest of the -nodes without using any of the nodes of twice, as the graph is full bipartite with equal-sized sides. This matching is a semi-matching, with a cost . This gives an upper bound on the minimum weight of a semi-matching in . Finally, note that a semi-matching in cannot use less edges, and cannot use less of weight in , so its cost cannot be smaller. Hence, the minimum cost of a semi-matching in is , yielding the next lemma.

Lemma 3.

Given an instance of the OuMv conjecture, it is possible to construct a sequence of weighted full bipartite graphs such that if then the cost of a semi-matching in is at least , and otherwise it is . In addition, all the graphs have nodes, and the difference between and is in the decrease of edge weights from to .

This lemma immediately implies Theorem 6, in a way similar to the derivation of Theorem 3 from Lemma 2.

6 Minimum weight spanning trees

We conclude with another important application in communication networks: the computation of spanning trees. These are used, e.g., on the Layer 2 of the networking stack to avoid forwarding loops, and also find applications in the context of sensor networks [huang2006dynamic].

6.1 Minimum weight spanning tree construction algorithms

Holm et al. [HolmRW15] gave an algorithm that maintains a minimum spanning tree in a fully dynamic setting, i.e., with both edge insertions and deletions, in amortized time per update, and constant time per MST-size query. This algorithm can be adapted to our setting without any increase in the asymptotic running time: any edge-weight change in our model is simply translate to the deletion of the edge with its old weight, and addition of it with its new weight.

6.2 Lower bounds for minimum weight spanning tree computation

In their seminal works, Pătraşcu and Demaine [PatrascuD06] gave a cell-probe lower bound for the connectivity problem in a dynamic graph. More concretely, they consider a data structure supporting three operations: adding an edge between two nodes, removing an edge, and deciding whether the graph is connected. In this setting, they prove that maintaining any such data structure requires amortized complexity per operation. The complexity measure used in their work is the number memory words accessed, which implies a similar lower bound on the amortized running time.

Theorem 7 ([PatrascuD06, Thm. 2.4 & §9.1]).

There is no dynamic algorithm, even randomized, maintaining graph connectivity in an unweighted graph performing cell probes amortized by edge change and cell probes per query, with cells of size .

We prove our lower bound through a reduction to the bound of Pătraşcu and Demaine, without getting into the details of their construction.

Theorem 8.

There is no dynamic algorithm, even randomized, maintaining minimum weight spanning tree in amortized time per edge-weight change and amortized time per query.


Consider a data structure that supports two operations: setting the weight of a given edge, and checking the MST size. We construct a dynamic graph maintained by this data structure, and show that if this data structure can be maintained in cell-probe operations, and answer queries in cell-probe operation, then so does the connectivity of an unweighted graph , contradicting Theorem 7.

We design a data structure for connectivity, that supports edge addition and deletion and connectivity queries, as follows. Let be an unweighted, dynamic graph, which is initially empty. Our data structure will maintain a graph , which is a complete weighted graph on the same set of nodes as . All the edges of start with weight . Whenever an edge is added to , the weight of the corresponding edge in is reduced to . When an edge is removed from , the weight of the corresponding edge in is increased back to . Finally, for a connectivity query in , we make an MST-size query in , and answer on the affirmative iff the MST size is .

The query complexity lower bound is now immediate, as every operation on is translated to a single operation on . To show correctness note the following invariant: the edges of are exactly the edges that have weight in , while all other edges of have weight . Now, note that if is connected, then it has a spanning tree of edges; in , the same edges form a spanning tree of weight . On the other hand, if has a spanning tree of weight , then this spanning tree must consist solely of edges of weight , i.e., edges that exist in . The same spanning tree thus appears in , which is therefore connected, completing the proof. ∎

7 Related Work

We have recently witnessed many great efforts to render networks more flexible and adaptive, from the application layer, over the transport layer, network layer, link layer, down to the physical layer, to just reference some examples [pieee19]. For the specific case study of traffic engineering considered in this paper, empirical works show that adjusting OSPF weights and hence rerouting traffic multiple times per day, allows to improve network efficiency and account for time-of-day effects and to some extent circadian effects [b4, fischer2006replex]. Accordingly, there has recently been much interest in more dynamic traffic engineering mechanisms [fischer2006replex, kumar2018semi], which also find first deployments [b4]. That said, the earliest approaches date back to the Arpanet [khanna1989revised]. While the high runtime of traffic engineering algorithms was often a main concern in the literature [traffic-engineering1, vissicchio2014sweet, b4], we are not aware of any work on dynamic algorithms to improve performance, which is the focus of this paper.

Dynamic graph algorithms have received much attention in the literature. In the following, we briefly review related work on fully dynamic graph algorithms (both edge insertions and deletions), and refer the reader to surveys on the topic for a further discussion [Henzinger18, DBLP:journals/jda/DemetrescuI06].

For the shortest path problem there is a lower bound conditioned on the OMv conjecture showing that for any and no -approximation algorithm for the shortest problem can achieve amortized time per edge insertion, edge deletion, or query [HenzingerKNS15]. This lower bound even holds in unweighted, undirected graphs. There are also already many interesting upper bounds in different scenarios, depending on whether the graph is directed or undirected, weighted or unweighted, whether the running time is amortized or worst-case, and whether the adversary that generates the sequence of operations is oblivious or adaptive. We restrict ourselves here to amortized running against an adaptive adversary and the results we state apply to weighted, directed and undirected graphs. The fastest fully dynamic exact all-pairs-shortest path algorithm takes time per edge update operation and constant time per query [DBLP:journals/jacm/DemetrescuI04, DBLP:conf/swat/Thorup04]. For single-source shortest paths the fastest exact fully dynamic algorithm is still ; in graphs with real edge weights in there exists a -approximation algorithm in time per update for any small using fast matrix multiplication and preprocessing time [van2019dynamic]. There are also algorithms that realize interesting tradeoffs between approximation ratio and query time [DBLP:journals/corr/abs-2004-10319], e.g., guaranteeing a -approximation with time per operation, or a -approximation with update time.

Dynamicity restricted to edge-weight changes was much less studied. Single source shortest paths can be maintained in this case in worst-case update time in specific graph families, such as graphs with bounded genus, and in update time for general graphs, all with constant query time [FrigioniMN00]. APSP can be maintained in graphs of treewidth in update time and query time [AbrahamCDGW16]. A -approximation for distance queries (i.e., APSP), can be maintained in planar graphs when the edge-weight changes are such that no distance in the graph is stretch by more than a multiplicative factor , in update and query time [AbrahamCDGW16].

There exists no exact fully dynamic - flow algorithm that is faster than recomputation from scratch, and there is a conditional lower bound based on the OMv conjecture of time per operation [Dahlgaard16] and also based on other conjectures [abboud2018matching]. For the case of only edge-weight changes, there is an algorithm that has the same worst-case guarantees as recomputation, but better performance on real-world cases [GoldbergHKKTW15]. The fully dynamic algorithm we present here also leads to an insertions-only or deletions-only algorithm with amortized time per operation [DBLP:journals/corr/abs-1804-01823]. Nonetheless, various approximation algorithms exist: An -approximation in time  [DBLP:journals/corr/abs-2005-02368] and a -approximation in update time [goranci2020expander].

Finally, there exists an lower bound on the time per operation for any fully dynamic minimum spanning tree algorithm [PatrascuD06]. Regarding upper bounds, there is an time exact fully dynamic minimum spanning tree algorithm [HolmRW15] and a -time algorithm for connectivity [HuangHKP17] that can be turned into a -approximate minimum spanning tree algorithm by partitioning the edges into weight classes and maintaining for each weight class a spanning forest that contains all edges of the spanning forests of the smaller weight class.

However, we are not aware of any study on dynamic graph algorithms for link weight changes.

8 Conclusion

Motivated by networking applications in which resource allocations depend on (and are controlled by) link weights, we initiated the study of weight-dynamic network algorithms. Considering different applications, from traffic engineering to spanning tree constructions, we derived bounds on the potential speedup of dynamic algorithms compared to computation from scratch.

While most traffic engineering solutions today are still designed for fairly static scenarios, this can come at the price of a suboptimal resource utilization or performance: by not reacting to specific changes in the demand, a network may temporarily become overutilized (harming performance) or underutilized (harming efficiency), depending on the situation. Since traffic patterns typically indeed feature much temporal structure, this is problematic. We hence believe that our study aligns well with the current trend toward more adaptive communication networks, and can inform the networking community what can and cannot be achieved with such dynamic algorithms. We further believe that our notion of “weight-dynamic” network algorithms may also be of interest to the theory community, and can lead to interesting follow-up work.