The Goldberg Rao Algorithm for the Maximum Flow Problem
|
|
|
- Nicholas Wilkins
- 10 years ago
- Views:
Transcription
1 The Goldberg Rao Algorithm for the Maximum Flow Problem COS 528 class notes October 18, 2006 Scribe: Dávid Papp Main idea: use of the blocking flow paradigm to achieve essentially O(min{m 2/3, n 1/2 } m) running time (with some additional logarithmic factors) not only for unit capacity simple networks (for which Dinitz s algorithm achieves precisely this bound), but for general networks. The improvement is achieved by considering a carefully selected binary length function. The running time we prove is precisely O(min{m 2/3, n 1/2 } m log n log nu) (where U is the largest arc capacity in the network), better analysis and more advanced data structures yield O(min{m 2/3, n 1/2 } m log n2 m log U). 1 Preliminaries We are using the following notation: the network is a directed graph G = (V, E) with a source node s and a sink node t. The capacity u(a) of every arc a is an integer between 1 and U. The network has n nodes and m arcs; to simplify notation we define the shorthand Λ := min{m 2/3, n 1/2 }. There is a binary length assigned to every arc. A function d : V Z + is a distance labeling with respect to the length function l if d(t) = 0 and every (v, w) E satisfies d(v) d(w) + l(v, w). If for a residual arc this is satisfied with equality, that is, d(v) = d(w) + l(v, w), then the residual arc (v, w) is called admissible. (This is equivalent to saying that d(v) > d(w) or d(v) = d(w) and l(v, w) = 0, because the length function is binary.) We are going to augment flows by finding blocking flows in the network of admissible arcs with respect to the length function l and distance labels d, denoted by A(f, l, d), where f is the current flow. In accordance with the original blocking flow idea, in order to get a good running time bound, we need to ensure that the algorithm terminates after not too many augmentations by showing that every iteration increases the distance of the source and the sink. This is more difficult with a binary length function than with the usual unit length function, due to the presence of zero length arcs. To overcome this difficulty, two modifications are introduced. First, the algorithm contracts the strongly connected components of the subnetwork formed by zero-length arcs. To make sure that the flow that is directed through a node corresponding to such a contracted component can be routed through the restored component as well, the algorithm bounds from above the size of an augmenting flow by some value, and bounds from below the capacity of zero length arcs. Consequently the length function l, which determines the admissible arcs and the corresponding distance labels, d l, will have to be updated after every augmentation. The second introduced modification is a necessary consequence of the previous one: if the augmenting flow has a bounded value, it is possible that we do not find a blocking flow 1
2 of suitable value. Then we cannot guarantee the increase of the distance of s and t, and hence has to be chosen in a way which ensures that the number of such augmentations is small. The final bit of the algorithm is a stopping condition: we iteratively increment the flow until some upper bound F of the difference of the maximal and the current flow decreases below 1. By the integrality of the capacities this implies that the current flow is maximal. Initially, for the zero flow a trivial estimate is F = nu. The skeleton of the Goldberg Rao algorithm now can be described as follows: while F 1 do update the parameter, the length function l, and distance labels d l; contract the strong components of the network formed by the zero length arcs; determine the network of admissible arcs, A(f, l, d l); find a flow in A(f, l, d l) which is either blocking or has a value ; augment the current flow by the flow found in the previous step; update F ; endwhile In the following we discuss how to set the parameters l and, and how to maintain F in order to ensure the desired running time. 2 Estimating the residual flow The residual capacity u f (S, T ) of any s-t cut (S, T ) can serve as an upper bound on the residual flow (the maximal flow in the residual network corresponding to the current flow). One way to obtain such a bound fast is to consider the canonical cuts only, ie. cuts of the form (S k, T k ), where S k := {v V d(v) k}, T k := V \ S k. Lemma. The minimum capacity canonical cut can be found in O(m) time. Proof. Since every arc has length at most one, every arc may cross at most one canonical cut. We can use this fact to compute the capacities of the canonical cuts in the following way. Initialize every u f (S k, T k ) to be zero. Then for every arc (v, w) if d(v) > d(w), then increase u f (S d(v), T d(v) ) (the capacity of the only canonical cut crossed by (u, v)) by u f (v, w). Finally, find the minimum among the numbers u f (S k, T k ), and set F to this value. Both the correctness and the linear running time is immediate. To obtain a running time bound we will make sure that F will decrease fast enough. A sequence of operations constitutes a phase of the algorithm if it decreases F by a factor of two. To simplify the analysis we do not change F in every iteration. Instead, we change F to the residual capacity of the minimum canonical cut only when the latter decreases to F/2 or below, marking the end of the phase. Clearly, after at most log nu phases the algorithm terminates. 3 Binary blocking flow algorithm The blocking flow algorithm used in the Goldberg Rao algorithm is a variant of the original blocking flow algorithm. Changes are necessary to ensure that after a blocking flow iteration either the distance of s and t strictly increases (in spite of the zero length arcs), or the current flow is increased significantly enough. 2
3 As we have mentioned in the introduction, we will have to bound how much we can increment the current flow in one iteration, and we denoted this bound by. To make the initially claimed running time possible, the number of updates by non-blocking flows cannot exceed Λ per phase, hence we can set = F/Λ. The binary length function for a phase is based on the following definition: { 0 u f (v, w) 3 l(v, w) =, 1 otherwise that is, arcs of very large capacity have zero length. To ensure that the distance of s and t increases after augmenting along a blocking flow we need to modify this in the following way. Let us call an arc (v, w) special if it satisfies the following: 2 u f (v, w) < 3, d(v) = d(w), u f (w, v) 3, and let us define the binary length function we are going to use as follows: { 0 u f (v, w) 3 or (v, w) is special l(v, w) =. 1 otherwise Note that the definition of special arcs does not change the distances: d l = d l. We can now give the details on how we handle the contraction of zero length arcs. Lemma. Suppose that we have found a flow of value at most in the contracted network. Then we can correct this to a flow of the same value in the original network in O(m) time. Proof. Choose an arbitrary vertex in each component as its root. Form an in-tree and an out-tree of each component rooted at their respective roots. Route all the positive balances towards the root using the in-tree arcs, and then route the resulting flow excess from the root to the negative balances using the out-tree arcs. During this process we do not violate any arc capacity constraints, since each zero length arc has capacity at least 2, and at most flow is routed both to and from the root using that arc. The process clearly takes linear time in the number of zero length arcs. The following theorem is crucial to obtain the desired running time. Theorem. Let f be a flow in A(f, l, d l ), let f = f + f be the augmented flow, and let l be the length function corresponding to f. Then 1. d l is a distance labeling with respect to l, 2. d l (s) d l (s), 3. if f is a blocking flow, then d l (s) < d l (s), Remark. Notice that in the theorem l is the modified distance function, which takes special edges into consideration, while l is the basic length function, which assigns an arc length of 1 to special arcs. In the original paper Theorem 4.3 contains a few typos, which confuse the different length functions, making both the theorem and the proof incorrect. 3
4 Proof of Theorem. 1. By definition of the distance labeling, d l (v) l(v, w)+d l (w) is given, and we need to show d l (v) l (v, w) + d l (w). This is trivial if d l (v) d l (w). If d l (v) > d l (w), which is the same as saying that d l(v) > d l(w) (recall that the two distance functions are the same), then (w, v) is not admissible with respect to l. Consequently u f (v, w) u f (v, w), which implies l (v, w) l(v, w). The statement then follows. 2. We prove that any distance labeling d is a lower bound on the actual shortest path distances d l from the sink. This, together with the previous part of the theorem, implies our claim. Suppose otherwise, ie. let d(v) > d l (v) for some node v, and let w be the last node on a shortest v t path Γ which satisfies d(w) > d l (w), and let x be the node that follows w on Γ. (It may be that w = v, but certainly not w = t, and hence x is well-defined.) Then d l (w) < d(w) l(w, x) + d(x) l(w, x) + d l (x), and hence the v w subpath of Γ concatenated with the the shortest w t path is shorter than Γ, contradicting to the selection of Γ. 3. By the first part of the theorem, c(v, w) := d l (w) d l (v) + l (v, w) 0. Summing these up along an s t path Γ in G f (the residual graph corresponding to f ), the d l terms telescope, and l (Γ) = d l (s) + c(γ), where l (Γ) and c(γ) are shorthands for summation of l and c over the arcs of the path. Consequently it is enough to show that along every s t path Γ in G f there is an arc (v, w) satisfying c(v, w) > 0. Since f is blocking in A(f, l, d l ), Γ must contain an arc (v, w) which is not in A(f, l, d l ). Then d l (v) d l (w), either because (v, w) is in G f, and d l (v) > d l (w) would mean that we have to include (v, w) to A(f, l, d l ), or because (v, w) is not in G f, but it appears in G f, which means that (w, v) is in A(f, l, d l ), implying d(w) d(v). Suppose now by contradiction that c(v, w) = 0. Then d l (v) = d l (w) and l (v, w) = 0. The fact that (v, w) is not in A(f, l, d l ) implies that either (v, w) is not in G f (in which case we already showed that (w, v) is in A(f, l, d l )), or (v, w) is in G f, and then l(v, w) = 1. In the latter case, 1 = l(v, w) > l (v, w) = 0 implies that the reverse arc, (w, v), is in A(f, l, d l ). We concluded that in any case, the arc (w, v) is included in A(f, l, d l ). But since d l (w) = d l (v), this can happen only if l(w, v) = 0. This means that during the augmentation we pushed flow (of value at most ) through (w, v), which already satisfied u f (w, v) 3, and this increased the residual capacity of (v, w) to at least 3. (Because l (u, w) = 0.) So u f (v, w) 2, and this together with u f (w, v) 3 and d(v) = d(w) shows that (v, w) was a special arc before the augmentation. We conclude that (v, w) satisfies both d l(v) = d l(w) (from d l (v) = d l (w)) and l(v, w) = 0, and hence (v, w) is in A(f, l, dl ), a contradiction. 4 Time bounds 4.1 Time bounds on the blocking flow algorithm Only one thing is missing to complete the proof of the claimed running time: we have to show that the number of augmentations where we augment along a blocking flow is also 4
5 O(Λ) per phase, just like the number of augmentations by a flow of value. (The latter is immediate, is defined to satisfy this.) It is easy to see that the following is true. Lemma. For a binary length function d l the capacity of the minimum capacity canonical cut, ( S, T ) satisfies u f ( S, T ) mm d l (s), where M is the maximum capacity of a length one arc. Proof. Since every arc has length at most one, each crosses at most one of the canonical cuts. The total capacity of arcs is at most mm, and there are d l (s) canonical cuts, so the minimum capacity canonical cut has capacity at most mm/d l (s). For dense graphs the following lemma gives a better bound. Lemma. With the notations of the previous lemma, u f ( S, T ) ( ) 2n 2 M. d l (s) Proof. Let V k := {v V d(v) = k}. Similarly to the previous proof, it is enough to show that there is a k such that both V k and V k+1 have at most 2n/d l (s) elements. But this dl (s) follows from the pigeonhole-principle: k=0 V k = n, hence V k 2n/d l (s) for at least d l (s)/2 + 1 values of k, so there are two consecutive k s with this property. Using that during a phase of the Goldberg Rao algorithm M 3 by definition, we obtain that Corollary. During a phase of a binary blocking flow algorithm there are at most O(Λ) blocking flow augmentations. Proof. Suppose Λ = m 1/2. Every blocking flow augmentation increases d l (s) by at least one, so after 6 Λ such update steps d l (s) 6m 1/2, and u f ( S, T ) mm d l (s) 3m d l (s) 3m 6m 1/2 F m 1/2 = F 2, thus after this many steps the phase terminates, regardless of the augmentations by flows of value. The case Λ = n 2/3 is similar, 5 Λ augmentations are enough to terminate the phase. 4.2 Bound on the running time of the Goldberg Rao algorithm Theorem. The maximum flow problem can be solved in O(Λm log(n 2 /m) log nu) time by the Goldberg Rao algorithm. Proof. We have seen that the number of phases is O(log nu). In every phase there are two kinds of augmentations: along blocking flows, and along flows of value. We have proven that the number of both is O(Λ). The bottleneck in one iteration is finding a blocking flow or a flow of value. This is of the same complexity as finding a blocking flow, which is O(mn) with naive implementation, O(m log n) using dynamic trees, and O(m log(n 2 /m)) using size-bounded dynamic trees. (Every other step is O(m).) Multiplying these results in the claim. 5
The Binary Blocking Flow Algorithm. Andrew V. Goldberg Microsoft Research Silicon Valley www.research.microsoft.com/ goldberg/
The Binary Blocking Flow Algorithm Andrew V. Goldberg Microsoft Research Silicon Valley www.research.microsoft.com/ goldberg/ Why this Max-Flow Talk? The result: O(min(n 2/3, m 1/2 )mlog(n 2 /m)log(u))
The Binary Blocking Flow Algorithm. Andrew V. Goldberg Microsoft Research Silicon Valley www.research.microsoft.com/ goldberg/
The Binary Blocking Flow Algorithm Andrew V. Goldberg Microsoft Research Silicon Valley www.research.microsoft.com/ goldberg/ Theory vs. Practice In theory, there is no difference between theory and practice.
Minimum cost maximum flow, Minimum cost circulation, Cost/Capacity scaling
6.854 Advanced Algorithms Lecture 16: 10/11/2006 Lecturer: David Karger Scribe: Kermin Fleming and Chris Crutchfield, based on notes by Wendy Chu and Tudor Leu Minimum cost maximum flow, Minimum cost circulation,
Graphs without proper subgraphs of minimum degree 3 and short cycles
Graphs without proper subgraphs of minimum degree 3 and short cycles Lothar Narins, Alexey Pokrovskiy, Tibor Szabó Department of Mathematics, Freie Universität, Berlin, Germany. August 22, 2014 Abstract
Approximation Algorithms
Approximation Algorithms or: How I Learned to Stop Worrying and Deal with NP-Completeness Ong Jit Sheng, Jonathan (A0073924B) March, 2012 Overview Key Results (I) General techniques: Greedy algorithms
A Practical Scheme for Wireless Network Operation
A Practical Scheme for Wireless Network Operation Radhika Gowaikar, Amir F. Dana, Babak Hassibi, Michelle Effros June 21, 2004 Abstract In many problems in wireline networks, it is known that achieving
8.1 Min Degree Spanning Tree
CS880: Approximations Algorithms Scribe: Siddharth Barman Lecturer: Shuchi Chawla Topic: Min Degree Spanning Tree Date: 02/15/07 In this lecture we give a local search based algorithm for the Min Degree
Offline sorting buffers on Line
Offline sorting buffers on Line Rohit Khandekar 1 and Vinayaka Pandit 2 1 University of Waterloo, ON, Canada. email: [email protected] 2 IBM India Research Lab, New Delhi. email: [email protected]
Analysis of Algorithms, I
Analysis of Algorithms, I CSOR W4231.002 Eleni Drinea Computer Science Department Columbia University Thursday, February 26, 2015 Outline 1 Recap 2 Representing graphs 3 Breadth-first search (BFS) 4 Applications
GRAPH THEORY LECTURE 4: TREES
GRAPH THEORY LECTURE 4: TREES Abstract. 3.1 presents some standard characterizations and properties of trees. 3.2 presents several different types of trees. 3.7 develops a counting method based on a bijection
Connectivity and cuts
Math 104, Graph Theory February 19, 2013 Measure of connectivity How connected are each of these graphs? > increasing connectivity > I G 1 is a tree, so it is a connected graph w/minimum # of edges. Every
Fairness in Routing and Load Balancing
Fairness in Routing and Load Balancing Jon Kleinberg Yuval Rabani Éva Tardos Abstract We consider the issue of network routing subject to explicit fairness conditions. The optimization of fairness criteria
Lecture 1: Course overview, circuits, and formulas
Lecture 1: Course overview, circuits, and formulas Topics in Complexity Theory and Pseudorandomness (Spring 2013) Rutgers University Swastik Kopparty Scribes: John Kim, Ben Lund 1 Course Information Swastik
Labeling outerplanar graphs with maximum degree three
Labeling outerplanar graphs with maximum degree three Xiangwen Li 1 and Sanming Zhou 2 1 Department of Mathematics Huazhong Normal University, Wuhan 430079, China 2 Department of Mathematics and Statistics
SHARP BOUNDS FOR THE SUM OF THE SQUARES OF THE DEGREES OF A GRAPH
31 Kragujevac J. Math. 25 (2003) 31 49. SHARP BOUNDS FOR THE SUM OF THE SQUARES OF THE DEGREES OF A GRAPH Kinkar Ch. Das Department of Mathematics, Indian Institute of Technology, Kharagpur 721302, W.B.,
2.3 Convex Constrained Optimization Problems
42 CHAPTER 2. FUNDAMENTAL CONCEPTS IN CONVEX OPTIMIZATION Theorem 15 Let f : R n R and h : R R. Consider g(x) = h(f(x)) for all x R n. The function g is convex if either of the following two conditions
6.852: Distributed Algorithms Fall, 2009. Class 2
.8: Distributed Algorithms Fall, 009 Class Today s plan Leader election in a synchronous ring: Lower bound for comparison-based algorithms. Basic computation in general synchronous networks: Leader election
MATH10212 Linear Algebra. Systems of Linear Equations. Definition. An n-dimensional vector is a row or a column of n numbers (or letters): a 1.
MATH10212 Linear Algebra Textbook: D. Poole, Linear Algebra: A Modern Introduction. Thompson, 2006. ISBN 0-534-40596-7. Systems of Linear Equations Definition. An n-dimensional vector is a row or a column
t := maxγ ν subject to ν {0,1,2,...} and f(x c +γ ν d) f(x c )+cγ ν f (x c ;d).
1. Line Search Methods Let f : R n R be given and suppose that x c is our current best estimate of a solution to P min x R nf(x). A standard method for improving the estimate x c is to choose a direction
Lecture 4: BK inequality 27th August and 6th September, 2007
CSL866: Percolation and Random Graphs IIT Delhi Amitabha Bagchi Scribe: Arindam Pal Lecture 4: BK inequality 27th August and 6th September, 2007 4. Preliminaries The FKG inequality allows us to lower bound
Max Flow, Min Cut, and Matchings (Solution)
Max Flow, Min Cut, and Matchings (Solution) 1. The figure below shows a flow network on which an s-t flow is shown. The capacity of each edge appears as a label next to the edge, and the numbers in boxes
17.3.1 Follow the Perturbed Leader
CS787: Advanced Algorithms Topic: Online Learning Presenters: David He, Chris Hopman 17.3.1 Follow the Perturbed Leader 17.3.1.1 Prediction Problem Recall the prediction problem that we discussed in class.
Shortest Inspection-Path. Queries in Simple Polygons
Shortest Inspection-Path Queries in Simple Polygons Christian Knauer, Günter Rote B 05-05 April 2005 Shortest Inspection-Path Queries in Simple Polygons Christian Knauer, Günter Rote Institut für Informatik,
Adaptive Online Gradient Descent
Adaptive Online Gradient Descent Peter L Bartlett Division of Computer Science Department of Statistics UC Berkeley Berkeley, CA 94709 bartlett@csberkeleyedu Elad Hazan IBM Almaden Research Center 650
Efficiency of algorithms. Algorithms. Efficiency of algorithms. Binary search and linear search. Best, worst and average case.
Algorithms Efficiency of algorithms Computational resources: time and space Best, worst and average case performance How to compare algorithms: machine-independent measure of efficiency Growth rate Complexity
Every tree contains a large induced subgraph with all degrees odd
Every tree contains a large induced subgraph with all degrees odd A.J. Radcliffe Carnegie Mellon University, Pittsburgh, PA A.D. Scott Department of Pure Mathematics and Mathematical Statistics University
SEQUENCES OF MAXIMAL DEGREE VERTICES IN GRAPHS. Nickolay Khadzhiivanov, Nedyalko Nenov
Serdica Math. J. 30 (2004), 95 102 SEQUENCES OF MAXIMAL DEGREE VERTICES IN GRAPHS Nickolay Khadzhiivanov, Nedyalko Nenov Communicated by V. Drensky Abstract. Let Γ(M) where M V (G) be the set of all vertices
The Union-Find Problem Kruskal s algorithm for finding an MST presented us with a problem in data-structure design. As we looked at each edge,
The Union-Find Problem Kruskal s algorithm for finding an MST presented us with a problem in data-structure design. As we looked at each edge, cheapest first, we had to determine whether its two endpoints
CMSC 858T: Randomized Algorithms Spring 2003 Handout 8: The Local Lemma
CMSC 858T: Randomized Algorithms Spring 2003 Handout 8: The Local Lemma Please Note: The references at the end are given for extra reading if you are interested in exploring these ideas further. You are
Scheduling Shop Scheduling. Tim Nieberg
Scheduling Shop Scheduling Tim Nieberg Shop models: General Introduction Remark: Consider non preemptive problems with regular objectives Notation Shop Problems: m machines, n jobs 1,..., n operations
Triangle deletion. Ernie Croot. February 3, 2010
Triangle deletion Ernie Croot February 3, 2010 1 Introduction The purpose of this note is to give an intuitive outline of the triangle deletion theorem of Ruzsa and Szemerédi, which says that if G = (V,
136 CHAPTER 4. INDUCTION, GRAPHS AND TREES
136 TER 4. INDUCTION, GRHS ND TREES 4.3 Graphs In this chapter we introduce a fundamental structural idea of discrete mathematics, that of a graph. Many situations in the applications of discrete mathematics
Lecture 15 An Arithmetic Circuit Lowerbound and Flows in Graphs
CSE599s: Extremal Combinatorics November 21, 2011 Lecture 15 An Arithmetic Circuit Lowerbound and Flows in Graphs Lecturer: Anup Rao 1 An Arithmetic Circuit Lower Bound An arithmetic circuit is just like
Network Flow I. Lecture 16. 16.1 Overview. 16.2 The Network Flow Problem
Lecture 6 Network Flow I 6. Overview In these next two lectures we are going to talk about an important algorithmic problem called the Network Flow Problem. Network flow is important because it can be
Distributed Computing over Communication Networks: Maximal Independent Set
Distributed Computing over Communication Networks: Maximal Independent Set What is a MIS? MIS An independent set (IS) of an undirected graph is a subset U of nodes such that no two nodes in U are adjacent.
A simple criterion on degree sequences of graphs
Discrete Applied Mathematics 156 (2008) 3513 3517 Contents lists available at ScienceDirect Discrete Applied Mathematics journal homepage: www.elsevier.com/locate/dam Note A simple criterion on degree
Finding and counting given length cycles
Finding and counting given length cycles Noga Alon Raphael Yuster Uri Zwick Abstract We present an assortment of methods for finding and counting simple cycles of a given length in directed and undirected
Single-Link Failure Detection in All-Optical Networks Using Monitoring Cycles and Paths
Single-Link Failure Detection in All-Optical Networks Using Monitoring Cycles and Paths Satyajeet S. Ahuja, Srinivasan Ramasubramanian, and Marwan Krunz Department of ECE, University of Arizona, Tucson,
1 Definitions. Supplementary Material for: Digraphs. Concept graphs
Supplementary Material for: van Rooij, I., Evans, P., Müller, M., Gedge, J. & Wareham, T. (2008). Identifying Sources of Intractability in Cognitive Models: An Illustration using Analogical Structure Mapping.
! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. !-approximation algorithm.
Approximation Algorithms Chapter Approximation Algorithms Q Suppose I need to solve an NP-hard problem What should I do? A Theory says you're unlikely to find a poly-time algorithm Must sacrifice one of
Applied Algorithm Design Lecture 5
Applied Algorithm Design Lecture 5 Pietro Michiardi Eurecom Pietro Michiardi (Eurecom) Applied Algorithm Design Lecture 5 1 / 86 Approximation Algorithms Pietro Michiardi (Eurecom) Applied Algorithm Design
arxiv:1112.0829v1 [math.pr] 5 Dec 2011
How Not to Win a Million Dollars: A Counterexample to a Conjecture of L. Breiman Thomas P. Hayes arxiv:1112.0829v1 [math.pr] 5 Dec 2011 Abstract Consider a gambling game in which we are allowed to repeatedly
Section 4.2: The Division Algorithm and Greatest Common Divisors
Section 4.2: The Division Algorithm and Greatest Common Divisors The Division Algorithm The Division Algorithm is merely long division restated as an equation. For example, the division 29 r. 20 32 948
Large induced subgraphs with all degrees odd
Large induced subgraphs with all degrees odd A.D. Scott Department of Pure Mathematics and Mathematical Statistics, University of Cambridge, England Abstract: We prove that every connected graph of order
A REMARK ON ALMOST MOORE DIGRAPHS OF DEGREE THREE. 1. Introduction and Preliminaries
Acta Math. Univ. Comenianae Vol. LXVI, 2(1997), pp. 285 291 285 A REMARK ON ALMOST MOORE DIGRAPHS OF DEGREE THREE E. T. BASKORO, M. MILLER and J. ŠIRÁŇ Abstract. It is well known that Moore digraphs do
α = u v. In other words, Orthogonal Projection
Orthogonal Projection Given any nonzero vector v, it is possible to decompose an arbitrary vector u into a component that points in the direction of v and one that points in a direction orthogonal to v
The Trip Scheduling Problem
The Trip Scheduling Problem Claudia Archetti Department of Quantitative Methods, University of Brescia Contrada Santa Chiara 50, 25122 Brescia, Italy Martin Savelsbergh School of Industrial and Systems
arxiv:cs/0605141v1 [cs.dc] 30 May 2006
General Compact Labeling Schemes for Dynamic Trees Amos Korman arxiv:cs/0605141v1 [cs.dc] 30 May 2006 February 1, 2008 Abstract Let F be a function on pairs of vertices. An F- labeling scheme is composed
Tree-representation of set families and applications to combinatorial decompositions
Tree-representation of set families and applications to combinatorial decompositions Binh-Minh Bui-Xuan a, Michel Habib b Michaël Rao c a Department of Informatics, University of Bergen, Norway. [email protected]
GREATEST COMMON DIVISOR
DEFINITION: GREATEST COMMON DIVISOR The greatest common divisor (gcd) of a and b, denoted by (a, b), is the largest common divisor of integers a and b. THEOREM: If a and b are nonzero integers, then their
6.2 Permutations continued
6.2 Permutations continued Theorem A permutation on a finite set A is either a cycle or can be expressed as a product (composition of disjoint cycles. Proof is by (strong induction on the number, r, of
Scheduling Home Health Care with Separating Benders Cuts in Decision Diagrams
Scheduling Home Health Care with Separating Benders Cuts in Decision Diagrams André Ciré University of Toronto John Hooker Carnegie Mellon University INFORMS 2014 Home Health Care Home health care delivery
Outline BST Operations Worst case Average case Balancing AVL Red-black B-trees. Binary Search Trees. Lecturer: Georgy Gimel farb
Binary Search Trees Lecturer: Georgy Gimel farb COMPSCI 220 Algorithms and Data Structures 1 / 27 1 Properties of Binary Search Trees 2 Basic BST operations The worst-case time complexity of BST operations
Graph Theory Problems and Solutions
raph Theory Problems and Solutions Tom Davis [email protected] http://www.geometer.org/mathcircles November, 005 Problems. Prove that the sum of the degrees of the vertices of any finite graph is
Bargaining Solutions in a Social Network
Bargaining Solutions in a Social Network Tanmoy Chakraborty and Michael Kearns Department of Computer and Information Science University of Pennsylvania Abstract. We study the concept of bargaining solutions,
FACTORING POLYNOMIALS IN THE RING OF FORMAL POWER SERIES OVER Z
FACTORING POLYNOMIALS IN THE RING OF FORMAL POWER SERIES OVER Z DANIEL BIRMAJER, JUAN B GIL, AND MICHAEL WEINER Abstract We consider polynomials with integer coefficients and discuss their factorization
Ph.D. Thesis. Judit Nagy-György. Supervisor: Péter Hajnal Associate Professor
Online algorithms for combinatorial problems Ph.D. Thesis by Judit Nagy-György Supervisor: Péter Hajnal Associate Professor Doctoral School in Mathematics and Computer Science University of Szeged Bolyai
Degree Hypergroupoids Associated with Hypergraphs
Filomat 8:1 (014), 119 19 DOI 10.98/FIL1401119F Published by Faculty of Sciences and Mathematics, University of Niš, Serbia Available at: http://www.pmf.ni.ac.rs/filomat Degree Hypergroupoids Associated
Full and Complete Binary Trees
Full and Complete Binary Trees Binary Tree Theorems 1 Here are two important types of binary trees. Note that the definitions, while similar, are logically independent. Definition: a binary tree T is full
On the Unique Games Conjecture
On the Unique Games Conjecture Antonios Angelakis National Technical University of Athens June 16, 2015 Antonios Angelakis (NTUA) Theory of Computation June 16, 2015 1 / 20 Overview 1 Introduction 2 Preliminary
Data Structures Fibonacci Heaps, Amortized Analysis
Chapter 4 Data Structures Fibonacci Heaps, Amortized Analysis Algorithm Theory WS 2012/13 Fabian Kuhn Fibonacci Heaps Lacy merge variant of binomial heaps: Do not merge trees as long as possible Structure:
We can express this in decimal notation (in contrast to the underline notation we have been using) as follows: 9081 + 900b + 90c = 9001 + 100c + 10b
In this session, we ll learn how to solve problems related to place value. This is one of the fundamental concepts in arithmetic, something every elementary and middle school mathematics teacher should
UPPER BOUNDS ON THE L(2, 1)-LABELING NUMBER OF GRAPHS WITH MAXIMUM DEGREE
UPPER BOUNDS ON THE L(2, 1)-LABELING NUMBER OF GRAPHS WITH MAXIMUM DEGREE ANDREW LUM ADVISOR: DAVID GUICHARD ABSTRACT. L(2,1)-labeling was first defined by Jerrold Griggs [Gr, 1992] as a way to use graphs
Notes from Week 1: Algorithms for sequential prediction
CS 683 Learning, Games, and Electronic Markets Spring 2007 Notes from Week 1: Algorithms for sequential prediction Instructor: Robert Kleinberg 22-26 Jan 2007 1 Introduction In this course we will be looking
How Much Can Taxes Help Selfish Routing?
How Much Can Taxes Help Selfish Routing? Richard Cole Yevgeniy Dodis Tim Roughgarden July 28, 25 Abstract We study economic incentives for influencing selfish behavior in networks. We consider a model
COMBINATORIAL PROPERTIES OF THE HIGMAN-SIMS GRAPH. 1. Introduction
COMBINATORIAL PROPERTIES OF THE HIGMAN-SIMS GRAPH ZACHARY ABEL 1. Introduction In this survey we discuss properties of the Higman-Sims graph, which has 100 vertices, 1100 edges, and is 22 regular. In fact
Why? A central concept in Computer Science. Algorithms are ubiquitous.
Analysis of Algorithms: A Brief Introduction Why? A central concept in Computer Science. Algorithms are ubiquitous. Using the Internet (sending email, transferring files, use of search engines, online
Stationary random graphs on Z with prescribed iid degrees and finite mean connections
Stationary random graphs on Z with prescribed iid degrees and finite mean connections Maria Deijfen Johan Jonasson February 2006 Abstract Let F be a probability distribution with support on the non-negative
Practical Guide to the Simplex Method of Linear Programming
Practical Guide to the Simplex Method of Linear Programming Marcel Oliver Revised: April, 0 The basic steps of the simplex algorithm Step : Write the linear programming problem in standard form Linear
1 Approximating Set Cover
CS 05: Algorithms (Grad) Feb 2-24, 2005 Approximating Set Cover. Definition An Instance (X, F ) of the set-covering problem consists of a finite set X and a family F of subset of X, such that every elemennt
a 11 x 1 + a 12 x 2 + + a 1n x n = b 1 a 21 x 1 + a 22 x 2 + + a 2n x n = b 2.
Chapter 1 LINEAR EQUATIONS 1.1 Introduction to linear equations A linear equation in n unknowns x 1, x,, x n is an equation of the form a 1 x 1 + a x + + a n x n = b, where a 1, a,..., a n, b are given
Continued Fractions and the Euclidean Algorithm
Continued Fractions and the Euclidean Algorithm Lecture notes prepared for MATH 326, Spring 997 Department of Mathematics and Statistics University at Albany William F Hammond Table of Contents Introduction
Prime power degree representations of the symmetric and alternating groups
Prime power degree representations of the symmetric and alternating groups Antal Balog, Christine Bessenrodt, Jørn B. Olsson, Ken Ono Appearing in the Journal of the London Mathematical Society 1 Introduction
Algorithm Design and Analysis
Algorithm Design and Analysis LECTURE 27 Approximation Algorithms Load Balancing Weighted Vertex Cover Reminder: Fill out SRTEs online Don t forget to click submit Sofya Raskhodnikova 12/6/2011 S. Raskhodnikova;
CSE373: Data Structures and Algorithms Lecture 3: Math Review; Algorithm Analysis. Linda Shapiro Winter 2015
CSE373: Data Structures and Algorithms Lecture 3: Math Review; Algorithm Analysis Linda Shapiro Today Registration should be done. Homework 1 due 11:59 pm next Wednesday, January 14 Review math essential
RN-Codings: New Insights and Some Applications
RN-Codings: New Insights and Some Applications Abstract During any composite computation there is a constant need for rounding intermediate results before they can participate in further processing. Recently
ONLINE DEGREE-BOUNDED STEINER NETWORK DESIGN. Sina Dehghani Saeed Seddighin Ali Shafahi Fall 2015
ONLINE DEGREE-BOUNDED STEINER NETWORK DESIGN Sina Dehghani Saeed Seddighin Ali Shafahi Fall 2015 ONLINE STEINER FOREST PROBLEM An initially given graph G. s 1 s 2 A sequence of demands (s i, t i ) arriving
A Note on Maximum Independent Sets in Rectangle Intersection Graphs
A Note on Maximum Independent Sets in Rectangle Intersection Graphs Timothy M. Chan School of Computer Science University of Waterloo Waterloo, Ontario N2L 3G1, Canada [email protected] September 12,
Scheduling Single Machine Scheduling. Tim Nieberg
Scheduling Single Machine Scheduling Tim Nieberg Single machine models Observation: for non-preemptive problems and regular objectives, a sequence in which the jobs are processed is sufficient to describe
Cycles and clique-minors in expanders
Cycles and clique-minors in expanders Benny Sudakov UCLA and Princeton University Expanders Definition: The vertex boundary of a subset X of a graph G: X = { all vertices in G\X with at least one neighbor
THE DIMENSION OF A VECTOR SPACE
THE DIMENSION OF A VECTOR SPACE KEITH CONRAD This handout is a supplementary discussion leading up to the definition of dimension and some of its basic properties. Let V be a vector space over a field
Lecture 17 : Equivalence and Order Relations DRAFT
CS/Math 240: Introduction to Discrete Mathematics 3/31/2011 Lecture 17 : Equivalence and Order Relations Instructor: Dieter van Melkebeek Scribe: Dalibor Zelený DRAFT Last lecture we introduced the notion
Mathematics Course 111: Algebra I Part IV: Vector Spaces
Mathematics Course 111: Algebra I Part IV: Vector Spaces D. R. Wilkins Academic Year 1996-7 9 Vector Spaces A vector space over some field K is an algebraic structure consisting of a set V on which are
Network File Storage with Graceful Performance Degradation
Network File Storage with Graceful Performance Degradation ANXIAO (ANDREW) JIANG California Institute of Technology and JEHOSHUA BRUCK California Institute of Technology A file storage scheme is proposed
Notes on Factoring. MA 206 Kurt Bryan
The General Approach Notes on Factoring MA 26 Kurt Bryan Suppose I hand you n, a 2 digit integer and tell you that n is composite, with smallest prime factor around 5 digits. Finding a nontrivial factor
CONTINUED FRACTIONS AND PELL S EQUATION. Contents 1. Continued Fractions 1 2. Solution to Pell s Equation 9 References 12
CONTINUED FRACTIONS AND PELL S EQUATION SEUNG HYUN YANG Abstract. In this REU paper, I will use some important characteristics of continued fractions to give the complete set of solutions to Pell s equation.
Counting Primes whose Sum of Digits is Prime
2 3 47 6 23 Journal of Integer Sequences, Vol. 5 (202), Article 2.2.2 Counting Primes whose Sum of Digits is Prime Glyn Harman Department of Mathematics Royal Holloway, University of London Egham Surrey
SEMITOTAL AND TOTAL BLOCK-CUTVERTEX GRAPH
CHAPTER 3 SEMITOTAL AND TOTAL BLOCK-CUTVERTEX GRAPH ABSTRACT This chapter begins with the notion of block distances in graphs. Using block distance we defined the central tendencies of a block, like B-radius
On the independence number of graphs with maximum degree 3
On the independence number of graphs with maximum degree 3 Iyad A. Kanj Fenghui Zhang Abstract Let G be an undirected graph with maximum degree at most 3 such that G does not contain any of the three graphs
1.2 Solving a System of Linear Equations
1.. SOLVING A SYSTEM OF LINEAR EQUATIONS 1. Solving a System of Linear Equations 1..1 Simple Systems - Basic De nitions As noticed above, the general form of a linear system of m equations in n variables
Online Bipartite Perfect Matching With Augmentations
Online Bipartite Perfect Matching With Augmentations Kamalika Chaudhuri, Constantinos Daskalakis, Robert D. Kleinberg, and Henry Lin Information Theory and Applications Center, U.C. San Diego Email: [email protected]
Local periods and binary partial words: An algorithm
Local periods and binary partial words: An algorithm F. Blanchet-Sadri and Ajay Chriscoe Department of Mathematical Sciences University of North Carolina P.O. Box 26170 Greensboro, NC 27402 6170, USA E-mail:
Lecture 2: Universality
CS 710: Complexity Theory 1/21/2010 Lecture 2: Universality Instructor: Dieter van Melkebeek Scribe: Tyson Williams In this lecture, we introduce the notion of a universal machine, develop efficient universal
RN-coding of Numbers: New Insights and Some Applications
RN-coding of Numbers: New Insights and Some Applications Peter Kornerup Dept. of Mathematics and Computer Science SDU, Odense, Denmark & Jean-Michel Muller LIP/Arénaire (CRNS-ENS Lyon-INRIA-UCBL) Lyon,
Chapter 11. 11.1 Load Balancing. Approximation Algorithms. Load Balancing. Load Balancing on 2 Machines. Load Balancing: Greedy Scheduling
Approximation Algorithms Chapter Approximation Algorithms Q. Suppose I need to solve an NP-hard problem. What should I do? A. Theory says you're unlikely to find a poly-time algorithm. Must sacrifice one
