Earliest Arrival Flows with Multiple Sources. Imran Rauf

Size: px
Start display at page:

Download "Earliest Arrival Flows with Multiple Sources. Imran Rauf"

Transcription

1 Algorithms and Complexity Group (AG1) Max-Planck-Institut für Informatik Saarbrücken, Germany Earliest Arrival Flows with Multiple Sources Imran Rauf March 2005 Master Thesis in Computer Science Supervisor: Martin Skutella Computer Science Department Saarland University

2

3 Abstract Earliest Arrival Flows with Multiple Sources Imran Rauf, M.Sc. Saarland University 2005 This thesis addresses the earliest arrival flow problem, defined on dynamic networks with several sources and a single sink. A dynamic network is a directed graph with capacities and transit times on its edges. Given an integral supply specified at each source of a dynamic network, the problem is to send exactly the right amount of flow out of each source and into the sink, such that the amount of flow arriving at the sink by time θ is the maximum possible for all θ 0. One obvious approach is to solve the easier static flow problem in a time-expanded network that contains one copy of the same network for each discrete time step. However, this approach is not practical in general due to the exponential size of time-expanded networks. In [3], Fleischer and Skutella describe a fully polynomial approximation scheme to solve this problem, while a special case when all transit times are zero, has been considered by Fleischer [2]. This thesis presents the first exact algorithm that avoids a time-expanded network, and solves a more general class of the earliest arrival flow problem in dynamic networks with multiple sources. The class is characterized by the property that the total supply at the sources is equal to the value of the maximum dynamic flow in time bound T, where T is the minimum time needed to evacuate all supplies.

4

5 Eidesstattliche Erklärung Hiermit erkläre ich an Eides statt, dass ich die vorliegende Mastersarbeit selbständig und ohne fremde Hilfe verfasst habe. Ich habe dazu keine weiteren als die angeführten Hilfsmittel benutzt und die aus anderen Quellen entnommenen Stellen als solche gekennzeichnet. Saarbrücken, den 9. März, 2005 Imran Rauf

6

7 Acknowledgements I am grateful to my supervisor Martin Skutella for his guidance, patience, encouragements and for being a great source of inspiration both as a teacher and as an advisor. I would like to thank Nadine Baumann for helping me a lot in latter parts of this thesis, and for proof reading the manuscript. Many thanks are due to all members of Reactive Systems Group at Saarland University, specially to Anne Proetzsch and Bernd Finkbeiner for their infinite laughs, the environment and the financial assistance they have provided to me so that this work become possible. I am thankful to all my friends at Saarbrücken, without their help I wouldn t be able to survive. Finally I would like to thank my family, specially Ammi and Abbu for their love and prayers.

8

9 Contents 1 Introduction Motivation Thesis outline Preliminaries Definitions Static Network Flows Chain Decomposition of Static Flows The Maximum Flow Problem The Minimum-Cost Flow Problem Dynamic Network Flows Time Expanded Networks Chain Decomposable Flows The Maximum Dynamic Flow Problem The Earliest Arrival Flow Problem The Quickest Transshipment Problem Lex Max Dynamic Flow Problem Testing Dynamic Transshipment Feasibility Dynamic Transshipment Algorithm Multiple-Sources Earliest Arrival Flows Overview Existence and Uniqueness Lex Max Earliest Arrival Flows vii

10 viii CONTENTS 4.4 Earliest Arrival Transshipment Problem Conclusions 37

11 List of Figures 2.1 Feasible Static Flow in a Network & its Residual Network Dynamic Network with Transit Times & Time-Expanded Network Chain Flows and Induced Dynamic Flows Non-Standard Chain Decomposition Earliest Arrival Flow Algorithm Lex Max Dynamic Flow Algorithm Lex Max Earliest Arrival Flow Algorithm ix

12 x LIST OF FIGURES

13 Chapter 1 Introduction Optimizing an objective function over a set of feasible solutions is perhaps one of the earliest problems studied in mathematics and computer science, and one of the simplest and well-studied model for these kind of problems is flows in networks. A network captures the relationship between different entities represented by the nodes of a network. The constraints on edges of a network define the extent to which these entities can interact, and similarly constraints on entities limit their roles in these interactions. A flow in a network corresponds to a solution of the original problem and we are interested in a feasible flow with optimum value. Many interesting problems can be reduced to some kind of flows in networks. Although several researchers have used similar models, Dantzig is the one credited for formalizing the general maximum flow problem [1]. Network flow theory is then popularized by the seminal works of Ford and Fulkerson [5, 6]. 1.1 Motivation An interesting application of network flows is their use in finding optimal evacuation plans automatically. Here, networks correspond to a building or any other site, where nodes represent locations and edges between nodes correspond to paths between locations. The task is to evacuate valuable commodities from dangerous locations (call them sources) to safer locations (sinks). There can be two approaches to solve this problem; the first minimizes the overall amount of time 1

14 2 CHAPTER 1. INTRODUCTION needed to evacuate the commodities, while the second not only minimizes the overall time but also maximizes the amount of commodities evacuated at every intermediate step. Dynamic networks have been used to model the evacuation problems. A dynamic network is defined by a directed graph with integral transit times and capacities on its edges. It is important to note that the word dynamic used here refers to the inclusion of transit-times on the edges of the network. However, we sometimes talk about static flows in dynamic networks. In that case we either ignore transit-times on edges or interpret them as costs. On the other hand, a dynamic flow interprets transit-time on an edge as the amount of time it takes to travel the edge. The maximum dynamic flow problem is to send as much flow as possible from the source to the sink in a given time T. Conversely, in the quickest flow problem, the task is to send a given amount of flow v in minimal overall time. A variation of the maximum dynamic flow problem is the earliest arrival flow problem, where we require that the flow should be maximal for each time instance 0 θ < T. The multiple terminal extension of the above problems can be defined analogously. However, for the maximum dynamic flow problem and the earliest arrival flow problem, the obvious extension, i.e., to maximize the sum of the flow from sources to sinks is trivially reducible to single-source single-sink version of the same problem. A more interesting formulation is to have supplies at sources and demands at sinks and the task is to compute some kind of dynamic flow which satisfies the given supplies and demands. We will define these problems formally in the later chapters. Hoppe and Tardos [11] use a multiple terminal extension of the quickest flow problem to solve the evacuation problem where they minimize the total amount of time needed to evacuate all commodities. However, in case of emergency, it is not known in advance how much time is available, so it is more desirable to have a solution with an earliest arrival property, i.e., the amount of flow should be maximal for every intermediate step. Algorithms to compute earliest arrival flows in single-source single-sink networks have been known for decades. However, there are no known exact algorithms to compute earliest arrival flows in dynamic networks with several sources.

15 1.2. THESIS OUTLINE 3 We give the first exact algorithm that works directly on a dynamic network instead of using time expanded networks to compute a class of earliest arrival flows in dynamic networks with several sources. 1.2 Thesis outline In Chapter 2, we define notations and basic problems studied in the network flows theory. Chapter 3 reviews an algorithm to solve the quickest transshipment problem, a result that inspires the algorithm presented in Chapter 4 to compute a class of earliest arrival flows in dynamic network with several sources. Finally Chapter 5 concludes with issues and further directions to research.

16 4 CHAPTER 1. INTRODUCTION

17 Chapter 2 Preliminaries In this chapter, we will define basic terminologies and notations. We also state some of the standard problems studied in the field of network flows, which are relevant to our work. The notations used in this thesis are mainly taken from Hoppe s thesis [10]. 2.1 Definitions A directed graph (V, E) consists of a set of vertices V and a set of edges E. Each edge in E is an ordered pair of nodes (y, z) for y, z in V. For simplicity, we drop the brackets and write an edge (y, z) as yz. An (s, t)-path P in a directed graph (V, E) is a sequence of vertices of length at least two, P = (y 0, y 1,..., y k ) such that the y i s are pairwise distinct, s = y 0, t = y k and for all 0 i < k, y i y i+1 is an edge. If we allow that y 0 = y k, then P is called a cycle. A loop is a cycle with only one edge. A dynamic network N = (V, E, u, τ, S) consists of directed graph (V, E) with a non-negative integral capacity u yz and integral transit time τ yz associated with each edge yz in E, and a special subset of nodes S V called terminals. We also use the term cost or length to refer to transit times on edges. The length of the path P is the sum of all transit times on the edges of P. We distinguish between two types of terminals, sources and sinks; the set of sources is denoted by S + and the set of sinks by S. In nearly all problems that we address, S contains only 5

18 6 CHAPTER 2. PRELIMINARIES one sink, all other terminals are sources. We denote the set of edges with strictly positive capacities by E +. Let s be a source and t be a sink in a dynamic network N. An (s, t)-cut in N is a set of vertices C V such that s C and t / C. A cut partitions the node set V into two sets C and V \ C. We also say cut to refer to the set of edges that have one endpoint in C and the other in V \ C. The capacity of the cut C is defined by y C,z / C u(yz). For simplicity, we make the following assumptions: 1. E is symmetric: if yz E then zy E. 2. τ is antisymmetric: if yz E then τ yz = τ zy. 3. There are no parallel edges or loops in E. 4. N contains no zero-length cycles. 5. All edges in E + has non-negative transit times and there are no opposite edges in E Sources in N have no incoming edges in E + and sinks have no outgoing edges in E +. We use n to denote V, similarly m = E and k = S. The maximum capacity is denoted by U and the maximum transit-time by T. Let A be a finite set, and 2 A denotes the set of all subsets of A. A set function h : 2 A is called submodular iff the following hold for all subsets Y, Z A. h(y Z) + h(y Z) h(y ) + h(z) 2.2 Static Network Flows Suppose s is a source and t is a sink in a network N. A static (s, t)-flow is a function f : E that satisfies the antisymmetry constraints (2.1) and the flow conservation (2.2). If the flow conservation constraints also hold at the terminals

19 2.2. STATIC NETWORK FLOWS 7 s, t, then f is called circulation. f yz = f zy, yz E (2.1) f yz = 0, y V \ {s, t} (2.2) z Intuitively, the flow conservation constraint states that the net flow leaving any node except the terminals is equal to the net flow entering it. A flow f is called feasible if it additionally follows the capacity constraint, (2.3). f yz u yz, yz E (2.3) The residual network of a feasible flow f in network N = (V, E, u, τ, S) is defined as N f = (V, E, u f, τ, S), where the residual capacity function is u f yz = u yz f yz. An edge with residual capacity u f yz = 0 is called saturated. Note that a residual network does not necessarily satisfy the assumptions we made about a dynamic network, e.g.; edges in E + may have negative transit-times, there may be opposite edges in E +, and so on. The net flow leaving node y denoted by f y is defined as f y = z f yz. The value of the static (s, t)-flow f denoted by f is f s. Figure 2.1 gives an example of a feasible flow in a network and the corresponding residual network. v u(e)/f(e) v 2/2 1/1 2 1 s 3/2 1/1 3/3 t s t w w Figure 2.1: Feasible Static Flow in a Network & its Residual Network Static flows in multi-terminal networks are defined analogously. For a subset of terminals A S, the net flow out of A, denoted by f A is the sum of net flows leaving each node y in A. Sometimes, a multi-terminal network N is associated

20 8 CHAPTER 2. PRELIMINARIES with a supply vector v in S such that v si 0 for every source s i S + and v si 0 for every sink s i S. The total supply of a subset of the terminals A S is v(a) = s i A v s i. We assume that the total supply of all terminals v(s) is zero. A static flow f is said to satisfy the supply v, if f si = v si for every terminal s i in S Chain Decomposition of Static Flows A chain flow γ = (v, P ) is a static flow of value γ = v along a path (or cycle) P that starts and ends in the terminal set S of a network N. A chain decomposition of a static flow f is a set of chain flows, Γ = {γ 1, γ 2,..., γ r }, that satisfies i γ i = f. We call Γ a standard chain decomposition if all chains in it use the edges in the same direction as f does. An important observation first made by Ford and Fulkerson [6] is that every static flow f has a standard chain decomposition. Theorem 2.1 (Ford and Fulkerson [6]). Let f be an (s, t)-flow in a network N, then there exists a set of chains Γ such that it is a standard chain decomposition of f The Maximum Flow Problem Given a network N with a source s and a sink t, the maximum flow problem looks for a feasible (s, t)-flow f of maximal value. Ford and Fulkerson were the first to provide a solution for this problem [5, 6]. For any (s, t)-cut C in N, it is easy to observe that every unit of flow has to pass through C. Therefore, the capacity of C is an upper bound on the the value of a maximal (s, t)-flow in N. Ford and Fulkerson [6] observe that this bound is tight for a minimal (s, t)-cut, which is one of the most famous results of network flow theory. Theorem 2.2 (Max-flow min-cut theorem). The value of a maximum (s, t)-flow is equal to the minimum capacity of an (s, t)-cut. One consequence of this result is that a minimum cut acts as a certificate of optimality for a maximum flow. In other words, to prove that an (s, t)-flow f is maximal, it is sufficient to provide a matching (s, t)-cut.

21 2.2. STATIC NETWORK FLOWS The Minimum-Cost Flow Problem Given a dynamic network N = (V, E, u, τ, S) with supply vector v, the minimumcost flow problem asks for a feasible static flow that satisfies all the supplies, i.e., f si = v si for all terminals s i in S (if such a flow exists) such that yz τ yzf yz is minimal. We summarize some basic properties and an intuitive algorithm for minimumcost flows in this subsection. For a strongly polynomial algorithm for this problem, consider for example, [17]. We denote the time needed for one minimum-cost flow computation in a network with m edges and n vertices by MCF(m, n). A necessary condition for a flow f to be of minimal cost is that the residual network of f should not contains any negative-cost positive-capacity cycle, because otherwise we can get a flow with smaller cost by augmenting some positive amount of flow on such cycle, thus contradicting the minimality of f. Ford and Fulkerson [6] observe that this condition is also sufficient. Theorem 2.3 (Ford and Fulkerson [6]). A static flow f in a network N is minimum-cost if and only if the residual network N f has no negative-cost positive-capacity cycles. An Algorithm Consider a minimum-cost flow f in a network N. For any nodes y, z in the network, let d f (y, z) be the length of the shortest (y, z)-path in the residual network N f, or infinity if no such path exists. Note that Theorem 2.3 implies that function d f is well-defined. Ford and Fulkerson [6] observe an important property of minimum-cost flows, i.e., a flow remains minimum-cost if we augment a static flow along a shortest residual path. Lemma 2.4 (Ford and Fulkerson [6]). Suppose f is a minimum-cost static flow, s is a source and t is a sink in a network N. Let static flow g augment f along a shortest (s, t)-path in the residual network N f. Then (1) f + g is a minimum-cost static flow in the network N, and (2) for any node y in the network, d f (s, y) d f+g (s, y) and d f (y, t) d f+g (y, t).

22 10 CHAPTER 2. PRELIMINARIES The above observation immediately suggests an algorithm for computing minimum-cost flows in a dynamic network N. Start with a zero flow which is obviously a minimum-cost flow because of Theorem 2.3 and our assumption that the original network contains no positive-capacity edges with negative transit-time. In the subsequent iterations, augment flow along shortest path between some source and sink in residual graph of the previous iterations, until all the supplies are satisfied. This algorithm is known as Successive Shortest Path (SSP) algorithm in the literature. Zadeh [20] shows that SSP has exponential worst case running time. Uniqueness Some of the dynamic flow algorithms we present or refer to, require their minimum-cost subroutines to compute a unique minimum-cost flow for each feasible combination of a network N and a supply vector v. We define our networks to have no zero-length cycles. Lemma 2.5 implies that any minimum-cost flow algorithm given such a network will compute a unique solution. Lemma 2.6 then claims that we lose no generality by assuming networks without zero-length cycles, because we can perturb any cost function lexicographically to guarantee the same property. Lemma 2.5. Suppose the static flow f satisfies a supply v in network N. Then f is the unique minimum-cost flow satisfying v in N if and only if every positivecapacity cycle in the residual network N f has positive cost. Proof. Suppose f is the unique minimum-cost flow satisfying v in N ; then Theorem 2.3 implies that every positive-capacity cycle in N f has non-negative cost. In fact every such cycle must have positive cost because otherwise we can get another minimum-cost flow different from f by augmenting along a positivecapacity zero-cost residual cycle. Suppose every positive-capacity cycle in the residual network N f has positive cost; then Theorem 2.3 implies that f is minimum-cost. It is also unique, because if there were another minimum-cost flow f f satisfying v in N, then f f must consist of zero-cost residual cycle(s) in N f.

23 2.3. DYNAMIC NETWORK FLOWS 11 Lemma 2.6 (Hoppe [10]). Let N be a network with node set V, edge set E, and edge cost function τ. Order the edges of E = {e 1,..., e m } and assign to each edge e i a vector cost τ ei = (τ ei, 2 i ). For any feasible supply v, there is a unique flow f that satisfies the supply v for lexicographically minimum cost with respect to τ; the flow f is also minimum-cost with respect to τ. Furthermore, if network N has no negative-cost positive-capacity cycles, then the zero flow is the unique minimum-cost circulation in this network. 2.3 Dynamic Network Flows Research on dynamic flow problems has taken two approaches. One approach models time in discrete time steps whereas the other models time continuously. For a comparison of both approaches, consider for example, [4]. We model time in a dynamic network as a continuous quantity, but we restrict transit times τ and capacities u on the edges to integral values thus keeping a balance between a realistic model and the one which can be dealt easier. Intuitively, a dynamic flow f assigns the rate of flow (per unit time) entering each edge at each moment of time, whereas capacities on edges limit this rate of flow. Suppose s is a source and t is a sink in network N. Formally, a dynamic (s, t)-flow is a function f : E + that satisfies the following constraints. f zy (θ + τ yz ) = f yz (θ), yz E, θ + (2.4) f yz (θ ) dθ 0, y V \ {s, t}, θ + (2.5) θ θ =0 z V Equation 2.4 is an antisymmetry constraint; inequality 2.5 is a relaxed conservation constraint that allows each non-terminal node to temporarily store a nonnegative amount of holdover flow. Usually, f is defined upto some time horizon T (or it is zero for all time after T ), in this case it is called finite-horizon dynamic flow. A dynamic flow f with time horizon T is feasible if it satisfies the capacity constraints, f yz (θ) u yz, θ [0, T ), yz E (2.6)

24 12 CHAPTER 2. PRELIMINARIES and there is no holdover flow left at non-terminal nodes after time T : T θ=0 z V f yz (θ) dθ = 0, y V \ {s, t}, θ + (2.7) When there is no time horizon, f is called infinite-horizon flow. An infinitehorizon flow is feasible if it satisfies the capacity constraint. For a time bound θ and a node y, the value of f at y is the net dynamic flow that has left y upto time θ. f y θ = θ θ =0 z V f yz (θ ) dθ The value of the dynamic flow upto time θ, denoted by f θ is f s θ. Some of the algorithms discussed in this thesis require the notion of an extended network. Let N be a dynamic network with sources S +, sinks S and time-horizon T. Add a super-terminal ψ to the network, connected to each source s i by an infinite-capacity zero-transit-time edge ψs i and connected to each sink s i by an infinite-capacity edge s i ψ with transit time T. We call the result an extended network, and we denote it by N T Time Expanded Networks Research in dynamic networks traditionally uses time expanded networks to compute solutions. A dynamic flow f with a time horizon T is equivalent to a static flow in the time-expanded network N (T ) = ( V (T ), E(T ), u T, τ T, S(T ) ). Each node y has T copies in V (T ), denoted y(0), y(1),..., y(t 1). Each edge yz has T τ yz copies in E(T ), namely y(θ)z(θ + τ yz ) for θ = 0, 1,..., T τ yz 1. In addition E(T ) contains infinite-capacity holdover edges y(θ)z(θ + 1) for θ = 0, 1,..., T 2. If all chains in a dynamic (s, t)-flow for the time-horizon T in N starts sending flow at integer points in time then it is equivalent to a static (s(0), t(t 1))-flow in N T. Similarly, an infinite-horizon dynamic flow is equivalent to a static flow in an infinite time-expanded network N ( ) defined analogously to N (T ).

25 2.3. DYNAMIC NETWORK FLOWS 13 v Time Steps s s t Nodes v w t w Figure 2.2: Dynamic Network with Transit Times & Time-Expanded Network Polynomial vs Pseudopolynomial Algorithms Nearly all dynamic flow algorithms we discuss in this thesis are equivalent to some kind of static flow in time-expanded networks. However this fact is not helpful in general because the size of a time-expanded network is exponential in log T, where log T is the encoding size of T in some suitable encoding scheme. All the algorithms that use time-expanded network have running-time polynomial in T (or equivalently exponential in log T ). We call such algorithms pseudo polynomial in contrast to strongly polynomial algorithms which have run-time polynomial in log T Chain Decomposable Flows Nearly all the solutions computed by the algorithms discussed in this thesis are chain decomposable flows. Ford and Fulkerson first use a special type of chain decomposable flows to compute solutions for some of the dynamic flow problems [6]. Hoppe and Tardos later generalize the idea [11, 12]. Recall that a chain flow γ = (v, P ) is a static flow of value γ = v along a path (or cycle) P that starts and ends in the terminal set S of a dynamic network N. The length of the chain flow τ(γ) is the length of path P, i.e. the sum of all transit times of the edges in P. Given a time horizon T, any chain flow γ = (v, P ) induces a dynamic flow [γ] T by sending the flow at the rate of v units per unit of time through the path P for time interval [0, T τ(γ)). Note that this induced dynamic flow starts arriving at the sink at time τ(γ) and it keeps coming

26 14 CHAPTER 2. PRELIMINARIES till time T. By integrating over this interval we can get the value of this flow as θ=t v dθ = v (T τ(γ)). θ=τ(γ) a) s 0 v w 1 0 t Nodes 0 s v w t Time Steps b) v 3 0 s Time Steps s 3 w 1 t Nodes v w t Figure 2.3: Chain Flows and Induced Dynamic Flows Dynamic flow induced by a chain decomposition of a static flow f can be defined analogously. Let Γ = {γ 1, γ 2,..., γ r } be a set of chain flows, which satisfies i γ i = f. Recall that Γ is a standard chain decomposition if all chains in it use the edges in the same direction as f does. A standard chain decomposition Γ of a feasible flow f induces a dynamic flow by summing up the dynamic flows induced by each of the chain flows. This is called the standard chain decomposable flow and is denoted by [Γ] T. In the absence of any time horizon, Γ induces an infinite horizon dynamic flow by sending flows into each chain endlessly. The resulting dynamic flow is denoted by [Γ]. When some chains in Γ use edges in the opposite direction as f does then

27 2.3. DYNAMIC NETWORK FLOWS 15 we can obtain the induced dynamic flow as before by summing up the dynamic flows induced by each of the chain flows. However, we need to take care about the feasibility of the resulting dynamic flow. Suppose γ is a chain flow which sends a flow along an edge yz in a direction that f does not send flow, as shown in figure 2.4. In order for edge capacity constraints to be met, there must be another chain flow γ that uses the opposite edge to cancel γ on yz. To do this, if chain flow γ arrives at y at time θ then chain flow γ must arrive at y at time θ θ. Similarly, if chain flow γ stops using edge yz at time θ, then γ must continue sending flow from z until time θ θ. These feasible chain-flow-induced dynamic flows are called chain decomposable flows. v Time Steps s s t Nodes v w t w Figure 2.4: Non-Standard Chain Decomposition Finite vs Infinite Horizons The distinction between finite-horizon chain decomposable flows and infinitehorizon chain decomposable flows is not as clear as it first appears in the case of general chain-decomposable flows. Let Γ be a chain decomposition of a flow f in an extended network N T. Let γ be the longest flow in Γ. Notice that for every time θ after τ(γ ), the static flow f exactly characterizes the dynamic flow [Γ], that is [Γ] yz (θ) = f yz. Suppose also that f is a zero flow. If Γ is a standard chain decomposition of f, then the dynamic flow [Γ] is trivially zero, whereas if we allow non-standard chain-decompositions, then [Γ] may be non-zero. Even though [Γ] is non-zero, the fact that f is zero means that [Γ] will be zero by time τ(γ ) and will remain zero forever after. In other words, [Γ] may be a finite-horizon flow.

28 16 CHAPTER 2. PRELIMINARIES Some algorithms discussed in this thesis use the non-standard chain decomposition Γ of the zero flow f in the extended network N T to induce the dynamic flow [Γ]. Each chain flow γ in Γ starts and ends at the super-terminal ψ. This is the most general framework for chain-decomposable flows we use in our work. Every problem solved by standard chain-decomposable flows and finite-horizon chain-decomposable flows [Γ] T can also be solved using this method The Maximum Dynamic Flow Problem Given a dynamic network N = (V, E, u, τ, {s, t}) with source s, sink t and a time horizon T, the maximum dynamic flow problem is to send as much flow as possible from s to t in time T. Ford and Fulkerson [6] introduce this problem and give the first algorithm to solve it. They show that a solution to this problem can be represented as a dynamic flow induced by a standard chain decomposition of some static flow f. Let Γ = {γ 1, γ 2,..., γ r } be a standard chain decomposition of static flow f and that every chain flow in Γ is no longer than T, then the value of the dynamic flow induced by Γ is i 0 T τ(γi ) γ i dθ = (T τ(γ i )) γ i i By rearranging the sum and using the fact that f = i γ i, the above equation equals = T f yz E τ yz f yz which is independent of the path decomposition Γ. This observation suggests an algorithm to solve the maximum dynamic flow problem. The idea is to compute a static flow which maximizes T f yz E τ yzf yz, which in turn can be done by adding an infinite-capacity edge ts with cost τ ts = T and by computing the minimum-cost (static) circulation in the modified network. Lemma 2.7 (Ford and Fulkerson [6]). Finding a maximum dynamic flow in

29 2.3. DYNAMIC NETWORK FLOWS 17 Γ f zero flow while d f (s, t) < T { P shortest (s, t)-path in N f v minimum residual capacity of P augment f by v along P Γ Γ {(v, P )} } return (f, Γ) Figure 2.5: Earliest Arrival Flow Algorithm N with time horizon T reduces to finding a minimum-cost (static) circulation in extended network N T The Earliest Arrival Flow Problem In the earliest arrival flow problem, we are given a dynamic network N with a source s, a sink t and a time horizon T and we look for a feasible dynamic flow that maximizes the amount of flow that arrives at sink for each θ < T. Gale [7] proves the existence of such a solution for an arbitrary discrete dynamic network. Later, Philpott [18] shows it in the continuous time setting. An Algorithm The correspondence between maximum dynamic flows and minimum-cost circulations as described in the last subsection suggest an algorithm for this problem. The idea is to use SSP algorithm for computing a minimum-cost flow in the dynamic network N. Lemma 2.4 implies that the flow remains minimum-cost after

30 18 CHAPTER 2. PRELIMINARIES each iteration of the algorithm. Let γ 1, γ 2,... be the sequence of augmentations, Γ i = {γ 1,..., γ i }, and f i = i j=1 γ j. Then Γ i is a chain decomposition of f i. Lemma 2.4 implies that τ(γ i ) τ(γ i+1 ), and so there is some k 0 such that Γ k is the set of all chain flows γ i no longer than T. The algorithm of Figure 2.5 computes Γ k together with a minimum-cost flow f k. It is due to Fleischer and Tardos [4]. The induced dynamic flow [Γ k ] T clearly sends maximum amount of flow to the sink for each time 0 θ < T. To see this, consider the set of chains Γ k θ = {γ i Γ k : τ(γ i ) θ}. Lemma 2.4 implies that the sum of chain flows in Γ k θ is a minimum-cost flow; in fact, it can be converted to a minimum-cost circulation by adding a return edge ts to the network with length θ. Thus, by Lemma 2.7, Γ k θ induces a maximum dynamic flow with time horizon θ. Note that Γ k Γ k θ has no effect on the flow value until after time θ. Earliest Arrival Circulation Given an earliest arrival flow [Γ] T in dynamic network N, we can extend the chains in Γ to form cycles in the extended network N T. Let Γ be the set of such extended chains. Note that Γ is a chain decomposition of a minimum cost circulation. We call Γ a chain-decomposition of an earliest arrival circulation.

31 Chapter 3 The Quickest Transshipment Problem Our algorithm to compute the earliest arrival flow in a dynamic network with several sources is inspired by an algorithm for quickest transshipment problem by Hoppe and Tardos [12]. The original algorithm presented by Hoppe and Tardos assume a discrete time model. However, Fleischer and Tardos later observe that the same approach also works for continuous time setting [4]. In this chapter, we briefly review the algorithm and main results for quickest transshipment problem and other related problems. Formally, in the quickest transshipment problem, we are given a dynamic network N and a supply vector v, and the task is to find a feasible dynamic flow that satisfies a supply v within the minimum possible time-horizon. Its instance is denoted by (N, v). The first step of the quickest transshipment algorithm is to find the minimum time-horizon T such that it is feasible to satisfies all supplies v in time T. This step gives us an instance of the dynamic transshipment problem, in which we are given a dynamic network N with a time horizon T and a supply vector v, and the task is to find a feasible dynamic flow with the time horizon T that satisfies the supply v. Its instance is denoted by (N, v, T ). The latter problem is similar to the quickest transshipment problem except that the time-horizon is given in the problem description. 19

32 20 CHAPTER 3. THE QUICKEST TRANSSHIPMENT PROBLEM Before moving on lets define some notation. For any subset of terminals A S, let o(a) denote the maximum amount of flow that the sources in A can send jointly to the sinks in S \ A in time T without regards to the needs of other terminals. Note that this can be computed as a maximum dynamic flow from the super-source connected to all sources in A to the super-sink connected to the sinks outside A. This chapter is organized as follows. Section 3.1 reviews the algorithm for the lexicographically maximum dynamic flow problem, which is encountered as a subroutine in the main algorithm for the quickest transshipment problem. In Section 3.2, we discuss an algorithm to test the feasibility of a dynamic transshipment problem and an approach to find the minimum time-horizon for a given instance of the quickest transshipment problem. Finally, Section 3.3 concludes with an outline of an algorithm to solve the dynamic transshipment problem. 3.1 Lexicographically Maximum Dynamic Flow Problem In the lexicographically maximum dynamic flow problem, we are given a dynamic network N with a time horizon T and an ordering of the terminals S = {s 0,..., s k 1 } and the task is to find a feasible dynamic flow that lexicographically maximizes the amount of flow leaving each terminal in the given order. Note that maximizing the amount of flow leaving a sink is equivalent to minimizing the amount of flow entering it. Let S i denote the high-priority subset of terminal {s 0, s 1,..., s i 1 } for i = 1, 2,..., k and S 0 =. We denote an instance of the lex max dynamic flow problem by a triplet (N, C, T ), where C is the chain of nested high-priority subsets {S 0, S 1,..., S k } of terminals. Lex max dynamic flows are important in the context of this thesis because of their one useful property. Minieka [16] and Megiddo [14] both observe that static lex max flows send as much flow as possible out of each high-priority subset of terminals. This holds for the chain decomposable dynamic lex max flows as well because of the correspondence between the chain decomposable dynamic flows

33 3.1. LEX MAX DYNAMIC FLOW PROBLEM 21 and static flows in time expanded network. Lemma 3.1 (Minieka [16] and Megiddo [14]). Suppose the chain-decomposable flow f solves the lex max dynamic flow problem (N, C, T ). Then f(s i ) T = o(s i ) for every high-priority subset S i C. One approach to solve the lex max dynamic flow problem is to compute some kind of a static flow in the time-expanded network, which is not practical in general because of the pseudo-polynomial size of time-expanded networks. Figure 3.1 presents a strongly polynomial time algorithm for this problem, which is due to Hoppe and Tardos [12]. Beginning with the zero flow and an empty chain decomposition Γ, the algorithm computes successive layers of minimum-cost static flows in the residual networks of previous layers. Each layer yields a standard chain decomposition that is added to set Γ. At the end of the algorithm, [Γ] is a lexicographically maximum dynamic flow. The algorithm starts by adding a superterminal ψ to the input network and connecting ψ to each source s i S + by an infinite-capacity zero-transit-time artificial edge ψs i. Let N k denote the resulting network, f k the zero flow in this network, and Γ k the empty set. The algorithm consists of k iterations indexed in descending fashion. In iteration i = k 1,..., 0 it considers terminal s i. If s i is a source, then it deletes edge ψs i from network N i+1 to create N i, and it computes a minimum-cost maximum (ψ, s i )-flow g i in the residual network of flow f i+1 in network N i. If s i is a sink, it adds an infinite-capacity edge s i ψ with transit time T to network N i+1 to create network N i, and it computes a minimum-cost circulation g i in the residual network of flow f i+1 in network N i. To complete each iteration (for a source or sink), it adds g i to f i+1 to obtain flow f i, compute a standard chain decomposition i of flow g i, and adds i to Γ i+1 to get chain decomposition Γ i. Fleischer and Tardos [4] show that Γ 0 induces a lex max dynamic flow. Theorem 3.2 (Fleischer and Tardos [4]). [Γ 0 ] is a feasible lexicographically maximum dynamic flow in N with time-horizon T. Corollary 3.3. For any lex max dynamic flow problem (N, C, T ), a lex max dynamic flow can be computed in O(k MCF(m, n)) time.

34 22 CHAPTER 3. THE QUICKEST TRANSSHIPMENT PROBLEM V V {ψ} E E {ψs i : s i S + } with u ψsi = and τ ψsi = 0 f k zero flow Γ k for i k 1,..., 0 { if s i S + { delete edge ψs i from E g i minimum-cost maximum (ψ, s i )-flow in N i f i+1 } else { add edge s i ψ to E with u si ψ = and τ si ψ = T g i minimum-cost circulation in N i f i+1 } f i f i+1 + g i i standard chain decomposition of g i Γ i Γ i+1 + i } return Γ 0 Figure 3.1: Lex Max Dynamic Flow Algorithm Proof. The algorithm consists of k iterations, each of which is dominated by one minimum-cost flow computation. The correctness of the algorithm is stated in Theorem 3.2.

35 3.2. TESTING DYNAMIC TRANSSHIPMENT FEASIBILITY Testing Dynamic Transshipment Feasibility In this section, we describe two algorithms: (1) testing the feasibility of a dynamic transshipment problem (N, v, T ), and (2) finding the optimal time T for a quickest transshipment problem (N, v). The first algorithm is used as a subroutine in the second. We have the following result from Fleischer and Tardos [4], which gives us a necessary and sufficient condition for the existence of a dynamic flow for timehorizon T in N that satisfies v. Theorem 3.4 (Fleischer and Tardos [4]). The dynamic transshipment problem (N, v, T ) is feasible if and only if v(a) o(a) for every subset A S. Based on Theorem 3.4, a brute force approach to check the feasibility of a dynamic transshipment problem is to check each and every subset A of the terminal set S. However, this is not practical since there are exponential number of subsets of S. Hoppe and Tardos [12] observe that the function o(a) is submodular, and propose the following approach. Consider a sub-modular function b(a) = o(a) v(a) and find a subset W S that minimizes b(w ). Clearly, if b(w ) is negative, we have v(w ) > o(w ) and the problem is infeasible because of Theorem 3.4. The only question remaining is how to minimize a sub-modular function. There is a great amount of research dealing with this question. The first strongly polynomial time algorithms for sub-modular function minimization were introduced by Grötschel, Lovász and Schrijver [8, 9]. These algorithms use the ellipsoid method. Combinatorial strongly polynomial time algorithms were developed independently by Iwata, Fleischer and Fujischige[13] and by Schrijver [19]. We have the following result from the above mentioned references. Theorem 3.5. Suppose f : 2 S is a sub-modular function. A subset W S minimizing f(w ) can be found in strongly polynomial time. Corollary 3.6. Feasibility of a dynamic transshipment problem (N, v, T ) can be proven in strongly polynomial time. We use FEAS to denote the time needed for one feasibility test of a dynamic transshipment problem (N, v, T ).

36 24 CHAPTER 3. THE QUICKEST TRANSSHIPMENT PROBLEM Using the feasibility test (Corollary 3.6), Hoppe and Tardos [12] describe how to find the minimal time-horizon T in pseudo-polynomial time using binary search as well as in strongly-polynomial time using parametric search of Megiddo [15]. We have the following result from Hoppe and Tardos [12]: Theorem 3.7 (Hoppe and Tardos [12]). The optimal time T for the quickest transshipment problem can be found in time O ( 2 k MCF(m, n) log (nv (S + ) T ) ), or in time O ( k 2 MCF(m, n) log 2 (nuv (S + ) T ) ), and also in strongly polynomial time. Note that the exponential time given in the above theorem is due to the brute force approach, where we check each and every subset A of the terminal set S for the condition v(a) o(a). 3.3 Dynamic Transshipment Algorithm In this section, we briefly describe a reduction from an arbitrary instance (N, v, T ) of the dynamic transshipment problem to an instance (N, C, T ) of the lex max dynamic flow problem. An algorithm for lex max dynamic flow problem is already discussed in Section 3.1. We call a subset A S of terminals tight if v(a) = o(a). It is easy to observe that if some high priority subset S i is tight then a lex max flow sends exactly v(s i ) units of flow from S i because of Lemma 3.1. This implies the following reduction. Theorem 3.8. Suppose C is a chain of nested tight subsets of terminals in the dynamic transshipment problem (N, v, T ) and C = k + 1. Then the dynamic transshipment problem can be solved by a single lex max dynamic flow computation in N. Proof. If C = k + 1, then we can relabel the set of terminals S so that S i = {s 0,..., s i 1 } is a tight set in C for all i = 0,..., k. Lemma 3.1 and definition of tight sets imply that any solution f of the lex max dynamic flow problem (N, C, T ) satisfies f(s i ) T = v(s i ) for all i = 0,..., k and so yields a solution of the dynamic transshipment problem.

37 3.3. DYNAMIC TRANSSHIPMENT ALGORITHM 25 Not every dynamic transshipment problem satisfies the requirements of Theorem 3.8 to be reduced directly to the lex max dynamic flow problem. Hoppe and Tardos [12] describe a strongly polynomial time algorithm to modify a discrete dynamic network such that its terminals form a nested chain of tight subsets. Fleischer and Tardos [4] observe that Hoppe and Tardos algorithm is also valid for continuous dynamic networks. In the following paragraphs, we briefly review the algorithm and the main results. Hoppe and Tardos algorithm creates a new network in two phases by attaching a new set of terminals S to S. In the first phase S contains one terminal x 0 for each x S, connected by edge x 0 x with infinite capacity and zero transit time. Define v : S based on v : S in the obvious manner: v x 0 = v x. Clearly (N, v, T ) is equivalent to (N, v, T ). The first phase initialize the chain C = {, S } with two trivially tight subsets of terminals. The algorithm maintains a chain C whose elements are tight subsets of S ordered by inclusion. The goal of the algorithm is to extend C to a complete chain of size S + 1. Theorem 3.8 implies that a complete chain C reduces the associated dynamic transshipment problem to a single lex max dynamic flow problem on the same network. Call two subsets of terminals Q, R in chain C adjacent, if there is no subset A C, such that Q A R. Later in each iteration, the algorithm considers two adjacent subsets Q, R in chain C such that R \ Q > 1 and adds more tight subsets between Q and R. It achieves this by adding other terminals to S, connected to some original terminal x R \ Q with non-negative capacity and non-negative transit time. The supply of the original terminal x is distributed over the new terminals, x 0, x 1,... S that are attached to x. Every iteration maintains the property that any solution to new problem (N, v, T ) yields a solution to the original problem (N, v, T ). The algorithm terminates with the chain C of nested tight subsets of terminals, such that C = k + 1, where S = k. For further details, see [4, 10, 12]. Theorem 3.9 (Hoppe and Tardos [12]). The dynamic transshipment problem can be reduced to the lex max dynamic flow problem in O (k log (nut ) FEAS) time, and also in strongly polynomial time.

38 26 CHAPTER 3. THE QUICKEST TRANSSHIPMENT PROBLEM

39 Chapter 4 Multiple-Sources Earliest Arrival Flows In the multiple-sources earliest arrival flow problem, we are given a multiplesources single-sink dynamic network N with a supply vector v associated to its terminals, and the problem asks to send the supplies from sources to the sink so that the amount of supplies arriving at the sink by time θ is the maximum possible, for all θ > 0. Its instance is denoted as (N, v) EA. Fleischer [2] solved this problem for special case when all transit times are zero. A polynomial-time approximation scheme with universal performance guarantee of (1 + ɛ) is given by Fleischer and Skutella [3]. At this point, it is worthwhile to mention that no polynomial-time algorithm is known even for single-source single-sink earliest arrival flow problem. The difficulty lies in encoding the output. No strongly polynomial-time algorithm is known even for the case when the output size is known to be polynomial in the input size. In the case of single-source and single-sink network, Gale [7] first shows the existence of earliest arrival flows in discrete-time dynamic networks. For continuous time setting, the existence of earliest arrival flow has been first observed by Philpott [18]. Earliest arrival flows do not necessarily exist for multiple-sources multiple-sinks networks. Fleischer [2] presents an instance with two sources and two sinks for which no earliest arrival flow exists. However, for single-sink net- 27

40 28 CHAPTER 4. MULTIPLE-SOURCES EARLIEST ARRIVAL FLOWS works, it always exists. We prove this fact in section Overview One obvious pseudo-polynomial algorithm for this problem is to compute some kind of static flow in time-expanded network, which turns out to be impractical in most of the cases because of the overhead in computing the time-expanded network and then computing the static flow in this huge network. We present the first algorithm for computing a class of multiple-sources earliest arrival flows that works directly on a dynamic network N instead of using a time-expanded network. It is inspired by an algorithm for the quickest transshipment problem by Hoppe and Tardos [12], which we review in Chapter 3. For a subset A of terminals, recall that v(a) denotes the total supply of A, and o(a) denotes the maximum amount of flow the sources in A can send to sinks in S \ A in a time horizon T regardless of the need of other terminals. Let (N, v) EA be a multiple-sources earliest arrival flow problem and let T be a minimum time-horizon such that it is possible to satisfy all supplies in time T. Note that we can find such a T in strongly polynomial time using Theorem 3.7. We call a multiple-sources earliest arrival problem (N, v) EA together with such T an earliest arrival transshipment problem which is the same as the original problem except that the time-horizon is known. Formally, in the earliest arrival transshipment problem, we are given a multiple-sources single-sink dynamic network N with time horizon T and a supply vector v associated to its terminals. The objective is to find a feasible dynamic flow f that zeroes all supplies within time T such that the amount of flow arriving at the sink by time θ is the maximum possible, for all θ > 0. Its instance is denoted as (N, v, T ) EA. In this thesis, we address a class of multiple-sources earliest arrival flow problems for which v(s + ) = o(s + ) in the corresponding earliest arrival transshipment problem. We call such problems tight. Our algorithm to solve the multiple sources earliest arrival flow problem has the similar structure as the quickest transshipment algorithm. The first step of our algorithm is to find minimum time-horizon T such that it is feasible to satisfy all

41 4.2. EXISTENCE AND UNIQUENESS 29 supplies in time T. This gives an instance of the earliest arrival transshipment problem. In Section 4.2, we prove the existence of an earliest arrival flow for a tight earliest arrival transshipment problem. We then describe an algorithm for lex max earliest arrival flow problem in Section 4.3, which we encounter while solving the earliest arrival transshipment problem, which in turn is the topic of Section Existence and Uniqueness Let (N, v) EA be a tight, multiple-sources earliest arrival flow problem and let T be a minimum time-horizon such that the maximum dynamic flow from all the sources to the sink in N has value v(s + ), or in other words v(s + ) = o(s + ). Furthermore, let (N, v, T ) EA be the corresponding earliest arrival transshipment problem. Theorem 3.4 gives us a necessary and sufficient condition for the existence of a dynamic flow for time-horizon T in N that satisfies v. We call an earliest arrival transshipment problem (N, v, T ) EA feasible if it satisfies the requirement of Theorem 3.4. For a tight and feasible earliest arrival transshipment problem (N, v, T ) EA, we claim that earliest arrival flow exists in N that satisfies supply vector v. Before proving this claim, we need an important result from Minieka [16] which says that departure patterns and arrival patterns are independent in maximal static flows. Theorem 4.1 (Minieka [16]). Let N be a multiple-source multiple-sink network. If there exists a maximum static flow f 1 in N with a(s) units leaving each source and if there exists a maximum static flow f 2 in N with b(t) units entering each sink, then there exists a maximum static flow f 3 in N with a(s) units leaving each source and b(t) units entering each sink. Let N ψ be a network obtained by introducing a super-source ψ in a dynamic network N and connecting it to original sources of N by infinite-capacity and zero transit-time edges. From Philpott [18], we know of the existence of an earliest arrival flow in this single-source single-sink network. Following theorem shows

An Introduction to Network Flows Over Time

An Introduction to Network Flows Over Time An Introduction to Network Flows Over Time Martin Skutella Abstract We give an introduction into the fascinating area of flows over time also called dynamic flows in the literature. Starting from the early

More information

Earliest Arrival Flows in Networks with Multiple Sinks

Earliest Arrival Flows in Networks with Multiple Sinks Electronic Notes in Discrete Mathematics 36 (2010) 607 614 www.elsevier.com/locate/endm Earliest Arrival Flows in Networks with Multiple Sinks Melanie Schmidt 2 Lehrstuhl II, Fakultät für Informatik Technische

More information

Multicommodity flows over time: Efficient algorithms and complexity

Multicommodity flows over time: Efficient algorithms and complexity Theoretical Computer Science 379 (27) 387 44 www.elsevier.com/locate/tcs Multicommodity flows over time: Efficient algorithms and complexity Alex Hall a, Steffen Hippler b, Martin Skutella c, a Institut

More information

Two Applications of Maximum Flow

Two Applications of Maximum Flow Two Applications of Maximum Flow The Bipartite Matching Problem a bipartite graph as a flow network maximum flow and maximum matching alternating paths perfect matchings 2 Circulation with Demands flows

More information

The min cost flow problem Course notes for Optimization Spring 2007

The min cost flow problem Course notes for Optimization Spring 2007 The min cost flow problem Course notes for Optimization Spring 2007 Peter Bro Miltersen February 7, 2007 Version 3.0 1 Definition of the min cost flow problem We shall consider a generalization of the

More information

directed weighted graphs as flow networks the Ford-Fulkerson algorithm termination and running time

directed weighted graphs as flow networks the Ford-Fulkerson algorithm termination and running time Network Flow 1 The Maximum-Flow Problem directed weighted graphs as flow networks the Ford-Fulkerson algorithm termination and running time 2 Maximum Flows and Minimum Cuts flows and cuts max flow equals

More information

The min cost flow problem Course notes for Search and Optimization Spring 2004

The min cost flow problem Course notes for Search and Optimization Spring 2004 The min cost flow problem Course notes for Search and Optimization Spring 2004 Peter Bro Miltersen February 20, 2004 Version 1.3 1 Definition of the min cost flow problem We shall consider a generalization

More information

Lexicographic Flow. Dexter Kozen Department of Computer Science Cornell University Ithaca, New York , USA. June 25, 2009

Lexicographic Flow. Dexter Kozen Department of Computer Science Cornell University Ithaca, New York , USA. June 25, 2009 Lexicographic Flow Dexter Kozen Department of Computer Science Cornell University Ithaca, New York 14853-7501, USA June 25, 2009 Abstract The lexicographic flow problem is a flow problem in which the edges

More information

The maximum flow in dynamic networks

The maximum flow in dynamic networks Computer Science Journal of Moldova, vol.12, no.3(36), 2004 The maximum flow in dynamic networks Maria A. Fonoberova, Dmitrii D. Lozovanu Abstract The dynamic maximum flow problem that generalizes the

More information

Algorithms: COMP3121/3821/9101/9801

Algorithms: COMP3121/3821/9101/9801 NEW SOUTH WALES Algorithms: COMP32/382/90/980 Aleks Ignjatović School of Computer Science and Engineering University of New South Wales LECTURE 7: MAXIMUM FLOW COMP32/382/90/980 / 24 Flow Networks A flow

More information

We say that a flow is feasible for G (or just feasible if the graph and capacity function in question are obvious) if

We say that a flow is feasible for G (or just feasible if the graph and capacity function in question are obvious) if CS787: Advanced Algorithms Lecture 4: Network Flow We devote this lecture to the network flow problem and the max-flow min-cut theorem. A number of other problems can be cast into a maximum flow or minimum

More information

CS 6820 Fall 2014 Lectures, October 3-20, 2014

CS 6820 Fall 2014 Lectures, October 3-20, 2014 Analysis of Algorithms Linear Programming Notes CS 6820 Fall 2014 Lectures, October 3-20, 2014 1 Linear programming The linear programming (LP) problem is the following optimization problem. We are given

More information

The max flow problem. Ford-Fulkerson method. A cut. Lemma Corollary Max Flow Min Cut Theorem. Max Flow Min Cut Theorem

The max flow problem. Ford-Fulkerson method. A cut. Lemma Corollary Max Flow Min Cut Theorem. Max Flow Min Cut Theorem The max flow problem Ford-Fulkerson method 7 11 Ford-Fulkerson(G) f = 0 while( simple path p from s to t in G f ) 10-2 2 1 f := f + f p output f 4 9 1 2 A cut Lemma 26. + Corollary 26.6 Let f be a flow

More information

Flow Network. The following figure shows an example of a flow network:

Flow Network. The following figure shows an example of a flow network: Maximum Flow 1 Flow Network The following figure shows an example of a flow network: 16 V 1 12 V 3 20 s 10 4 9 7 t 13 4 V 2 V 4 14 A flow network G = (V,E) is a directed graph. Each edge (u, v) E has a

More information

Multicommodity Flows and Column Generation

Multicommodity Flows and Column Generation Lecture Notes Multicommodity Flows and Column Generation Marc Pfetsch Zuse Institute Berlin pfetsch@zib.de last change: 2/8/2006 Technische Universität Berlin Fakultät II, Institut für Mathematik WS 2006/07

More information

Maximum Flow. Jie Wang. University of Massachusetts Lowell Department of Computer Science. J. Wang (UMass Lowell) Maximum Flow 1 / 27

Maximum Flow. Jie Wang. University of Massachusetts Lowell Department of Computer Science. J. Wang (UMass Lowell) Maximum Flow 1 / 27 Maximum Flow Jie Wang University of Massachusetts Lowell Department of Computer Science J. Wang (UMass Lowell) Maximum Flow 1 / 27 Flow Networks A flow network is a weighted digraph G = (V, E), where the

More information

Mathematics for Decision Making: An Introduction. Lecture 13

Mathematics for Decision Making: An Introduction. Lecture 13 Mathematics for Decision Making: An Introduction Lecture 13 Matthias Köppe UC Davis, Mathematics February 17, 2009 13 1 Reminder: Flows in networks General structure: Flows in networks In general, consider

More information

WEAKLY AND STRONGLY POLYNOMIAL ALGORITHMS FOR COMPUTING THE MAXIMUM DECREASE IN UNIFORM ARC CAPACITIES

WEAKLY AND STRONGLY POLYNOMIAL ALGORITHMS FOR COMPUTING THE MAXIMUM DECREASE IN UNIFORM ARC CAPACITIES Yugoslav Journal of Operations Research 6 (016), Number, 159 171 DOI: 10.98/YJOR14117015G WEAKLY AND STRONGLY POLYNOMIAL ALGORITHMS FOR COMPUTING THE MAXIMUM DECREASE IN UNIFORM ARC CAPACITIES Mehdi GHIYASVAND

More information

Algorithms and Theory of Computation. Lecture 11: Network Flow

Algorithms and Theory of Computation. Lecture 11: Network Flow Algorithms and Theory of Computation Lecture 11: Network Flow Xiaohui Bei MAS 714 September 18, 2018 Nanyang Technological University MAS 714 September 18, 2018 1 / 26 Flow Network A flow network is a

More information

Algorithmica 2007 Springer Science+Business Media, Inc.

Algorithmica 2007 Springer Science+Business Media, Inc. Algorithmica (2007) 47: 299 321 DOI: 10.1007/s00453-006-0196-3 Algorithmica 2007 Springer Science+Business Media, Inc. An FPTAS for Quickest Multicommodity Flows with Inflow-Dependent Transit Times 1 Alex

More information

Lecture 3. 1 Polynomial-time algorithms for the maximum flow problem

Lecture 3. 1 Polynomial-time algorithms for the maximum flow problem ORIE 633 Network Flows August 30, 2007 Lecturer: David P. Williamson Lecture 3 Scribe: Gema Plaza-Martínez 1 Polynomial-time algorithms for the maximum flow problem 1.1 Introduction Let s turn now to considering

More information

Maximum Integer Flows in Directed Planar Graphs with Multiple Sources and Sinks and Vertex Capacities

Maximum Integer Flows in Directed Planar Graphs with Multiple Sources and Sinks and Vertex Capacities Maximum Integer Flows in Directed Planar Graphs with Multiple Sources and Sinks and Vertex Capacities Yipu Wang University of Illinois at Urbana-Champaign ywang298@illinois.edu July 12, 2018 Abstract We

More information

Flows. Chapter Circulations

Flows. Chapter Circulations Chapter 4 Flows For a directed graph D = (V,A), we define δ + (U) := {(u,v) A : u U,v / U} as the arcs leaving U and δ (U) := {(u,v) A u / U,v U} as the arcs entering U. 4. Circulations In a directed graph

More information

Topic: Balanced Cut, Sparsest Cut, and Metric Embeddings Date: 3/21/2007

Topic: Balanced Cut, Sparsest Cut, and Metric Embeddings Date: 3/21/2007 CS880: Approximations Algorithms Scribe: Tom Watson Lecturer: Shuchi Chawla Topic: Balanced Cut, Sparsest Cut, and Metric Embeddings Date: 3/21/2007 In the last lecture, we described an O(log k log D)-approximation

More information

Week 4. (1) 0 f ij u ij.

Week 4. (1) 0 f ij u ij. Week 4 1 Network Flow Chapter 7 of the book is about optimisation problems on networks. Section 7.1 gives a quick introduction to the definitions of graph theory. In fact I hope these are already known

More information

- Well-characterized problems, min-max relations, approximate certificates. - LP problems in the standard form, primal and dual linear programs

- Well-characterized problems, min-max relations, approximate certificates. - LP problems in the standard form, primal and dual linear programs LP-Duality ( Approximation Algorithms by V. Vazirani, Chapter 12) - Well-characterized problems, min-max relations, approximate certificates - LP problems in the standard form, primal and dual linear programs

More information

Scheduling unit processing time arc shutdown jobs to maximize network flow over time: complexity results

Scheduling unit processing time arc shutdown jobs to maximize network flow over time: complexity results Scheduling unit processing time arc shutdown jobs to maximize network flow over time: complexity results Natashia Boland Thomas Kalinowski Reena Kapoor Simranjit Kaur Abstract We study the problem of scheduling

More information

Complexity Theory VU , SS The Polynomial Hierarchy. Reinhard Pichler

Complexity Theory VU , SS The Polynomial Hierarchy. Reinhard Pichler Complexity Theory Complexity Theory VU 181.142, SS 2018 6. The Polynomial Hierarchy Reinhard Pichler Institut für Informationssysteme Arbeitsbereich DBAI Technische Universität Wien 15 May, 2018 Reinhard

More information

Outline. Complexity Theory EXACT TSP. The Class DP. Definition. Problem EXACT TSP. Complexity of EXACT TSP. Proposition VU 181.

Outline. Complexity Theory EXACT TSP. The Class DP. Definition. Problem EXACT TSP. Complexity of EXACT TSP. Proposition VU 181. Complexity Theory Complexity Theory Outline Complexity Theory VU 181.142, SS 2018 6. The Polynomial Hierarchy Reinhard Pichler Institut für Informationssysteme Arbeitsbereich DBAI Technische Universität

More information

Discrete Optimization 2010 Lecture 3 Maximum Flows

Discrete Optimization 2010 Lecture 3 Maximum Flows Remainder: Shortest Paths Maximum Flows Discrete Optimization 2010 Lecture 3 Maximum Flows Marc Uetz University of Twente m.uetz@utwente.nl Lecture 3: sheet 1 / 29 Marc Uetz Discrete Optimization Outline

More information

6.046 Recitation 11 Handout

6.046 Recitation 11 Handout 6.046 Recitation 11 Handout May 2, 2008 1 Max Flow as a Linear Program As a reminder, a linear program is a problem that can be written as that of fulfilling an objective function and a set of constraints

More information

CS675: Convex and Combinatorial Optimization Fall 2014 Combinatorial Problems as Linear Programs. Instructor: Shaddin Dughmi

CS675: Convex and Combinatorial Optimization Fall 2014 Combinatorial Problems as Linear Programs. Instructor: Shaddin Dughmi CS675: Convex and Combinatorial Optimization Fall 2014 Combinatorial Problems as Linear Programs Instructor: Shaddin Dughmi Outline 1 Introduction 2 Shortest Path 3 Algorithms for Single-Source Shortest

More information

Network Flows made simple

Network Flows made simple Network Flows made simple A mild but rigorous introduction to Network Flows Periklis A. Papakonstantinou York University Network Flows is the last algorithmic paradigm we consider. Actually, we only address

More information

On shredders and vertex connectivity augmentation

On shredders and vertex connectivity augmentation On shredders and vertex connectivity augmentation Gilad Liberman The Open University of Israel giladliberman@gmail.com Zeev Nutov The Open University of Israel nutov@openu.ac.il Abstract We consider the

More information

Maximum Flow Problem (Ford and Fulkerson, 1956)

Maximum Flow Problem (Ford and Fulkerson, 1956) Maximum Flow Problem (Ford and Fulkerson, 196) In this problem we find the maximum flow possible in a directed connected network with arc capacities. There is unlimited quantity available in the given

More information

Friendship and Stable Matching

Friendship and Stable Matching Friendship and Stable Matching Elliot Anshelevich Onkar Bhardwaj Martin Hoefer June 10, 2013 Abstract We study stable matching problems in networks where players are embedded in a social context, and may

More information

A Critical Survey on the Network Optimization Algorithms for Evacuation Planning Problems

A Critical Survey on the Network Optimization Algorithms for Evacuation Planning Problems Tanka Nath Dhamala, Urmila Pyakurel, and Stephan Dempe A Critical Survey on the Network Optimization Algorithms for Evacuation Planning Problems PREPRINT 2018-08 Fakultät für Mathematik und Informatik

More information

(1,3) (3,4) (2,2) (1,2) (2,4) t

(1,3) (3,4) (2,2) (1,2) (2,4) t Maximum flows Some catastrophe has happened in some far away place, and help is needed badly. Fortunately, all that is needed is available, but it is stored in some depot that is quite remote from the

More information

A necessary and sufficient condition for the existence of a spanning tree with specified vertices having large degrees

A necessary and sufficient condition for the existence of a spanning tree with specified vertices having large degrees A necessary and sufficient condition for the existence of a spanning tree with specified vertices having large degrees Yoshimi Egawa Department of Mathematical Information Science, Tokyo University of

More information

Algorithms: Lecture 12. Chalmers University of Technology

Algorithms: Lecture 12. Chalmers University of Technology Algorithms: Lecture 1 Chalmers University of Technology Today s Topics Shortest Paths Network Flow Algorithms Shortest Path in a Graph Shortest Path Problem Shortest path network. Directed graph G = (V,

More information

Maximum flow problem (part I)

Maximum flow problem (part I) Maximum flow problem (part I) Combinatorial Optimization Giovanni Righini Università degli Studi di Milano Definitions A flow network is a digraph D = (N,A) with two particular nodes s and t acting as

More information

The Steiner Network Problem

The Steiner Network Problem The Steiner Network Problem Pekka Orponen T-79.7001 Postgraduate Course on Theoretical Computer Science 7.4.2008 Outline 1. The Steiner Network Problem Linear programming formulation LP relaxation 2. The

More information

Strongly Polynomial Algorithm for a Class of Minimum-Cost Flow Problems with Separable Convex Objectives

Strongly Polynomial Algorithm for a Class of Minimum-Cost Flow Problems with Separable Convex Objectives Strongly Polynomial Algorithm for a Class of Minimum-Cost Flow Problems with Separable Convex Objectives László A. Végh April 12, 2013 Abstract A well-studied nonlinear extension of the minimum-cost flow

More information

Selected partial inverse combinatorial optimization problems with forbidden elements. Elisabeth Gassner

Selected partial inverse combinatorial optimization problems with forbidden elements. Elisabeth Gassner FoSP Algorithmen & mathematische Modellierung FoSP Forschungsschwerpunkt Algorithmen und mathematische Modellierung Selected partial inverse combinatorial optimization problems with forbidden elements

More information

Robust Network Codes for Unicast Connections: A Case Study

Robust Network Codes for Unicast Connections: A Case Study Robust Network Codes for Unicast Connections: A Case Study Salim Y. El Rouayheb, Alex Sprintson, and Costas Georghiades Department of Electrical and Computer Engineering Texas A&M University College Station,

More information

Chapter 7. Network Flow. Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved.

Chapter 7. Network Flow. Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved. Chapter 7 Network Flow Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved. 7.5 Bipartite Matching Matching Matching. Input: undirected graph G = (V, E). M E is a matching

More information

CS675: Convex and Combinatorial Optimization Fall 2016 Combinatorial Problems as Linear and Convex Programs. Instructor: Shaddin Dughmi

CS675: Convex and Combinatorial Optimization Fall 2016 Combinatorial Problems as Linear and Convex Programs. Instructor: Shaddin Dughmi CS675: Convex and Combinatorial Optimization Fall 2016 Combinatorial Problems as Linear and Convex Programs Instructor: Shaddin Dughmi Outline 1 Introduction 2 Shortest Path 3 Algorithms for Single-Source

More information

Approximation Algorithms for Re-optimization

Approximation Algorithms for Re-optimization Approximation Algorithms for Re-optimization DRAFT PLEASE DO NOT CITE Dean Alderucci Table of Contents 1.Introduction... 2 2.Overview of the Current State of Re-Optimization Research... 3 2.1.General Results

More information

Worst case analysis for a general class of on-line lot-sizing heuristics

Worst case analysis for a general class of on-line lot-sizing heuristics Worst case analysis for a general class of on-line lot-sizing heuristics Wilco van den Heuvel a, Albert P.M. Wagelmans a a Econometric Institute and Erasmus Research Institute of Management, Erasmus University

More information

Branch-and-Bound for the Travelling Salesman Problem

Branch-and-Bound for the Travelling Salesman Problem Branch-and-Bound for the Travelling Salesman Problem Leo Liberti LIX, École Polytechnique, F-91128 Palaiseau, France Email:liberti@lix.polytechnique.fr March 15, 2011 Contents 1 The setting 1 1.1 Graphs...............................................

More information

Lecture 1. 1 Overview. 2 Maximum Flow. COMPSCI 532: Design and Analysis of Algorithms August 26, 2015

Lecture 1. 1 Overview. 2 Maximum Flow. COMPSCI 532: Design and Analysis of Algorithms August 26, 2015 COMPSCI 532: Design and Analysis of Algorithms August 26, 205 Lecture Lecturer: Debmalya Panigrahi Scribe: Allen Xiao Oeriew In this lecture, we will define the maximum flow problem and discuss two algorithms

More information

1 Continuous extensions of submodular functions

1 Continuous extensions of submodular functions CS 369P: Polyhedral techniques in combinatorial optimization Instructor: Jan Vondrák Lecture date: November 18, 010 1 Continuous extensions of submodular functions Submodular functions are functions assigning

More information

Advanced Combinatorial Optimization Updated April 29, Lecture 20. Lecturer: Michel X. Goemans Scribe: Claudio Telha (Nov 17, 2009)

Advanced Combinatorial Optimization Updated April 29, Lecture 20. Lecturer: Michel X. Goemans Scribe: Claudio Telha (Nov 17, 2009) 18.438 Advanced Combinatorial Optimization Updated April 29, 2012 Lecture 20 Lecturer: Michel X. Goemans Scribe: Claudio Telha (Nov 17, 2009) Given a finite set V with n elements, a function f : 2 V Z

More information

Efficient Approximation for Restricted Biclique Cover Problems

Efficient Approximation for Restricted Biclique Cover Problems algorithms Article Efficient Approximation for Restricted Biclique Cover Problems Alessandro Epasto 1, *, and Eli Upfal 2 ID 1 Google Research, New York, NY 10011, USA 2 Department of Computer Science,

More information

The Complexity of Maximum. Matroid-Greedoid Intersection and. Weighted Greedoid Maximization

The Complexity of Maximum. Matroid-Greedoid Intersection and. Weighted Greedoid Maximization Department of Computer Science Series of Publications C Report C-2004-2 The Complexity of Maximum Matroid-Greedoid Intersection and Weighted Greedoid Maximization Taneli Mielikäinen Esko Ukkonen University

More information

The Maximum Flows in Planar Dynamic Networks

The Maximum Flows in Planar Dynamic Networks INTERNATIONAL JOURNAL OF COMPUTERS COMMUNICATIONS & CONTROL ISSN 1841-9836, 11(2):282-291, April 2016. The Maximum Flows in Planar Dynamic Networks C. Schiopu, E. Ciurea Camelia Schiopu* 1. Transilvania

More information

arxiv: v3 [cs.ds] 2 Oct 2014

arxiv: v3 [cs.ds] 2 Oct 2014 Graph Orientation and Flows Over Time Ashwin Arulselvan, Martin Groß, and Martin Skutella arxiv:409.308v3 [cs.ds] Oct 04 Department of Management Science, University of Strathclyde ashwin.arulselvan@strath.ac.uk

More information

A combinatorial algorithm minimizing submodular functions in strongly polynomial time

A combinatorial algorithm minimizing submodular functions in strongly polynomial time A combinatorial algorithm minimizing submodular functions in strongly polynomial time Alexander Schrijver 1 Abstract We give a strongly polynomial-time algorithm minimizing a submodular function f given

More information

Energy minimization via graph-cuts

Energy minimization via graph-cuts Energy minimization via graph-cuts Nikos Komodakis Ecole des Ponts ParisTech, LIGM Traitement de l information et vision artificielle Binary energy minimization We will first consider binary MRFs: Graph

More information

Realization Plans for Extensive Form Games without Perfect Recall

Realization Plans for Extensive Form Games without Perfect Recall Realization Plans for Extensive Form Games without Perfect Recall Richard E. Stearns Department of Computer Science University at Albany - SUNY Albany, NY 12222 April 13, 2015 Abstract Given a game in

More information

Chapter 11. Approximation Algorithms. Slides by Kevin Wayne Pearson-Addison Wesley. All rights reserved.

Chapter 11. Approximation Algorithms. Slides by Kevin Wayne Pearson-Addison Wesley. All rights reserved. Chapter 11 Approximation Algorithms Slides by Kevin Wayne. Copyright @ 2005 Pearson-Addison Wesley. All rights reserved. 1 Approximation Algorithms Q. Suppose I need to solve an NP-hard problem. What should

More information

Colored Bin Packing: Online Algorithms and Lower Bounds

Colored Bin Packing: Online Algorithms and Lower Bounds Noname manuscript No. (will be inserted by the editor) Colored Bin Packing: Online Algorithms and Lower Bounds Martin Böhm György Dósa Leah Epstein Jiří Sgall Pavel Veselý Received: date / Accepted: date

More information

Efficient Algorithms for Flow over Time Evacuation Planning Problems with Lane Reversal Strategy

Efficient Algorithms for Flow over Time Evacuation Planning Problems with Lane Reversal Strategy Urmila Pyakurel, Stephan Dempe, and Tanka Nath Dhamala Efficient Algorithms for Flow over Time Evacuation Planning Problems with Lane Reversal Strategy PREPRINT 2018-07 Fakultät für Mathematik und Informatik

More information

CSC373: Algorithm Design, Analysis and Complexity Fall 2017 DENIS PANKRATOV NOVEMBER 1, 2017

CSC373: Algorithm Design, Analysis and Complexity Fall 2017 DENIS PANKRATOV NOVEMBER 1, 2017 CSC373: Algorithm Design, Analysis and Complexity Fall 2017 DENIS PANKRATOV NOVEMBER 1, 2017 Linear Function f: R n R is linear if it can be written as f x = a T x for some a R n Example: f x 1, x 2 =

More information

CS 580: Algorithm Design and Analysis. Jeremiah Blocki Purdue University Spring 2018

CS 580: Algorithm Design and Analysis. Jeremiah Blocki Purdue University Spring 2018 CS 580: Algorithm Design and Analysis Jeremiah Blocki Purdue University Spring 2018 Recap Network Flow Problems Max-Flow Min Cut Theorem Ford Fulkerson Augmenting Paths Residual Flow Graph Integral Solutions

More information

Optimization of Submodular Functions Tutorial - lecture I

Optimization of Submodular Functions Tutorial - lecture I Optimization of Submodular Functions Tutorial - lecture I Jan Vondrák 1 1 IBM Almaden Research Center San Jose, CA Jan Vondrák (IBM Almaden) Submodular Optimization Tutorial 1 / 1 Lecture I: outline 1

More information

Combinatorial Optimization

Combinatorial Optimization Combinatorial Optimization 2017-2018 1 Maximum matching on bipartite graphs Given a graph G = (V, E), find a maximum cardinal matching. 1.1 Direct algorithms Theorem 1.1 (Petersen, 1891) A matching M is

More information

Extreme Point Solutions for Infinite Network Flow Problems

Extreme Point Solutions for Infinite Network Flow Problems Extreme Point Solutions for Infinite Network Flow Problems H. Edwin Romeijn Dushyant Sharma Robert L. Smith January 3, 004 Abstract We study capacitated network flow problems with supplies and demands

More information

k-blocks: a connectivity invariant for graphs

k-blocks: a connectivity invariant for graphs 1 k-blocks: a connectivity invariant for graphs J. Carmesin R. Diestel M. Hamann F. Hundertmark June 17, 2014 Abstract A k-block in a graph G is a maximal set of at least k vertices no two of which can

More information

Contents. Introduction

Contents. Introduction Introduction Contents Chapter 1. Network Flows 1 1.1. Graphs 1 1.2. Shortest Paths 8 1.3. Maximum Flow 17 1.4. Min Cost Flows 22 List of frequently used Symbols 31 Bibliography 33 Index 37 iii i Introduction

More information

Maximum flow problem

Maximum flow problem Maximum flow problem 7000 Network flows Network Directed graph G = (V, E) Source node s V, sink node t V Edge capacities: cap : E R 0 Flow: f : E R 0 satisfying 1. Flow conservation constraints e:target(e)=v

More information

Generating p-extremal graphs

Generating p-extremal graphs Generating p-extremal graphs Derrick Stolee Department of Mathematics Department of Computer Science University of Nebraska Lincoln s-dstolee1@math.unl.edu August 2, 2011 Abstract Let f(n, p be the maximum

More information

7.5 Bipartite Matching

7.5 Bipartite Matching 7. Bipartite Matching Matching Matching. Input: undirected graph G = (V, E). M E is a matching if each node appears in at most edge in M. Max matching: find a max cardinality matching. Bipartite Matching

More information

The Complexity of Post s Classes

The Complexity of Post s Classes Institut für Informationssysteme Universität Hannover Diplomarbeit The Complexity of Post s Classes Henning Schnoor 7. Juli 2004 Prüfer: Prof. Dr. Heribert Vollmer Prof. Dr. Rainer Parchmann ii Erklärung

More information

Technische Universität München, Zentrum Mathematik Lehrstuhl für Angewandte Geometrie und Diskrete Mathematik. Combinatorial Optimization (MA 4502)

Technische Universität München, Zentrum Mathematik Lehrstuhl für Angewandte Geometrie und Diskrete Mathematik. Combinatorial Optimization (MA 4502) Technische Universität München, Zentrum Mathematik Lehrstuhl für Angewandte Geometrie und Diskrete Mathematik Combinatorial Optimization (MA 4502) Dr. Michael Ritter Problem Sheet 1 Homework Problems Exercise

More information

Flows over time with load-dependent transit times

Flows over time with load-dependent transit times Flows over time with load-dependent transit times Ekkehard Köhler Martin Skutella August 1, 23 Abstract More than forty years ago, Ford and Fulkerson studied maximum s-t-flows over time (also called dynamic

More information

Optimization with additional variables and constraints

Optimization with additional variables and constraints Optimization with additional variables and constraints Alpár Jüttner June 23, 2004 Abstract Norton, Plotkin and Tardos proved that - loosely spoken, an LP problem is solvable in time O(T q k+1 ) if deleting

More information

Notes taken by Graham Taylor. January 22, 2005

Notes taken by Graham Taylor. January 22, 2005 CSC4 - Linear Programming and Combinatorial Optimization Lecture : Different forms of LP. The algebraic objects behind LP. Basic Feasible Solutions Notes taken by Graham Taylor January, 5 Summary: We first

More information

Efficient Reassembling of Graphs, Part 1: The Linear Case

Efficient Reassembling of Graphs, Part 1: The Linear Case Efficient Reassembling of Graphs, Part 1: The Linear Case Assaf Kfoury Boston University Saber Mirzaei Boston University Abstract The reassembling of a simple connected graph G = (V, E) is an abstraction

More information

Min/Max-Poly Weighting Schemes and the NL vs UL Problem

Min/Max-Poly Weighting Schemes and the NL vs UL Problem Min/Max-Poly Weighting Schemes and the NL vs UL Problem Anant Dhayal Jayalal Sarma Saurabh Sawlani May 3, 2016 Abstract For a graph G(V, E) ( V = n) and a vertex s V, a weighting scheme (w : E N) is called

More information

Midterm Exam 2 Solutions

Midterm Exam 2 Solutions Algorithm Design and Analysis November 12, 2010 Pennsylvania State University CSE 565, Fall 2010 Professor Adam Smith Exam 2 Solutions Problem 1 (Miscellaneous). Midterm Exam 2 Solutions (a) Your friend

More information

Price of Stability in Survivable Network Design

Price of Stability in Survivable Network Design Noname manuscript No. (will be inserted by the editor) Price of Stability in Survivable Network Design Elliot Anshelevich Bugra Caskurlu Received: January 2010 / Accepted: Abstract We study the survivable

More information

Topics in Approximation Algorithms Solution for Homework 3

Topics in Approximation Algorithms Solution for Homework 3 Topics in Approximation Algorithms Solution for Homework 3 Problem 1 We show that any solution {U t } can be modified to satisfy U τ L τ as follows. Suppose U τ L τ, so there is a vertex v U τ but v L

More information

An algorithm to increase the node-connectivity of a digraph by one

An algorithm to increase the node-connectivity of a digraph by one Discrete Optimization 5 (2008) 677 684 Contents lists available at ScienceDirect Discrete Optimization journal homepage: www.elsevier.com/locate/disopt An algorithm to increase the node-connectivity of

More information

On Végh s Strongly Polynomial Algorithm for Generalized Flows

On Végh s Strongly Polynomial Algorithm for Generalized Flows On Végh s Strongly Polynomial Algorithm for Generalized Flows by Venus Hiu Ling Lo A thesis presented to the University of Waterloo in fulfillment of the thesis requirement for the degree of Master of

More information

An annotated overview of dynamic network flows

An annotated overview of dynamic network flows An annotated overview of dynamic network flows Balázs Kotnyek To cite this version: Balázs Kotnyek. An annotated overview of dynamic network flows. RR-4936, INRIA. 003. HAL Id: inria-00071643

More information

Chapter 7 Network Flow Problems, I

Chapter 7 Network Flow Problems, I Chapter 7 Network Flow Problems, I Network flow problems are the most frequently solved linear programming problems. They include as special cases, the assignment, transportation, maximum flow, and shortest

More information

Introduction 1.1 PROBLEM FORMULATION

Introduction 1.1 PROBLEM FORMULATION Introduction. PROBLEM FORMULATION This book deals with a single type of network optimization problem with linear cost, known as the transshipment or minimum cost flow problem. In this section, we formulate

More information

Lecture 8 Network Optimization Algorithms

Lecture 8 Network Optimization Algorithms Advanced Algorithms Floriano Zini Free University of Bozen-Bolzano Faculty of Computer Science Academic Year 2013-2014 Lecture 8 Network Optimization Algorithms 1 21/01/14 Introduction Network models have

More information

Lecture notes on the ellipsoid algorithm

Lecture notes on the ellipsoid algorithm Massachusetts Institute of Technology Handout 1 18.433: Combinatorial Optimization May 14th, 007 Michel X. Goemans Lecture notes on the ellipsoid algorithm The simplex algorithm was the first algorithm

More information

Preliminaries and Complexity Theory

Preliminaries and Complexity Theory Preliminaries and Complexity Theory Oleksandr Romanko CAS 746 - Advanced Topics in Combinatorial Optimization McMaster University, January 16, 2006 Introduction Book structure: 2 Part I Linear Algebra

More information

On the Approximate Linear Programming Approach for Network Revenue Management Problems

On the Approximate Linear Programming Approach for Network Revenue Management Problems On the Approximate Linear Programming Approach for Network Revenue Management Problems Chaoxu Tong School of Operations Research and Information Engineering, Cornell University, Ithaca, New York 14853,

More information

Part V. Matchings. Matching. 19 Augmenting Paths for Matchings. 18 Bipartite Matching via Flows

Part V. Matchings. Matching. 19 Augmenting Paths for Matchings. 18 Bipartite Matching via Flows Matching Input: undirected graph G = (V, E). M E is a matching if each node appears in at most one Part V edge in M. Maximum Matching: find a matching of maximum cardinality Matchings Ernst Mayr, Harald

More information

Graphs and Network Flows IE411. Lecture 12. Dr. Ted Ralphs

Graphs and Network Flows IE411. Lecture 12. Dr. Ted Ralphs Graphs and Network Flows IE411 Lecture 12 Dr. Ted Ralphs IE411 Lecture 12 1 References for Today s Lecture Required reading Sections 21.1 21.2 References AMO Chapter 6 CLRS Sections 26.1 26.2 IE411 Lecture

More information

10 Max-Flow Min-Cut Flows and Capacitated Graphs 10 MAX-FLOW MIN-CUT

10 Max-Flow Min-Cut Flows and Capacitated Graphs 10 MAX-FLOW MIN-CUT 10 Max-Flow Min-Cut 10.1 Flows and Capacitated Graphs Previously, we considered weighted graphs. In this setting, it was natural to thinking about minimizing the weight of a given path. In fact, we considered

More information

Agenda. Soviet Rail Network, We ve done Greedy Method Divide and Conquer Dynamic Programming

Agenda. Soviet Rail Network, We ve done Greedy Method Divide and Conquer Dynamic Programming Agenda We ve done Greedy Method Divide and Conquer Dynamic Programming Now Flow Networks, Max-flow Min-cut and Applications c Hung Q. Ngo (SUNY at Buffalo) CSE 531 Algorithm Analysis and Design 1 / 52

More information

Lecture 4 October 18th

Lecture 4 October 18th Directed and undirected graphical models Fall 2017 Lecture 4 October 18th Lecturer: Guillaume Obozinski Scribe: In this lecture, we will assume that all random variables are discrete, to keep notations

More information

A An Overview of Complexity Theory for the Algorithm Designer

A An Overview of Complexity Theory for the Algorithm Designer A An Overview of Complexity Theory for the Algorithm Designer A.1 Certificates and the class NP A decision problem is one whose answer is either yes or no. Two examples are: SAT: Given a Boolean formula

More information

On improving matchings in trees, via bounded-length augmentations 1

On improving matchings in trees, via bounded-length augmentations 1 On improving matchings in trees, via bounded-length augmentations 1 Julien Bensmail a, Valentin Garnero a, Nicolas Nisse a a Université Côte d Azur, CNRS, Inria, I3S, France Abstract Due to a classical

More information

Decomposing oriented graphs into transitive tournaments

Decomposing oriented graphs into transitive tournaments Decomposing oriented graphs into transitive tournaments Raphael Yuster Department of Mathematics University of Haifa Haifa 39105, Israel Abstract For an oriented graph G with n vertices, let f(g) denote

More information