CS5314 Randomized Algorithms. Lecture 16: Balls, Bins, Random Graphs (Random Graphs, Hamiltonian Cycles)

Save this PDF as:

Size: px
Start display at page:

Download "CS5314 Randomized Algorithms. Lecture 16: Balls, Bins, Random Graphs (Random Graphs, Hamiltonian Cycles)"

Transcription

1 CS5314 Randomized Algorithms Lecture 16: Balls, Bins, Random Graphs (Random Graphs, Hamiltonian Cycles) 1

2 Objectives Introduce Random Graph Model used to define a probability space for all graphs with n vertices Introduce a randomized algorithm for finding Hamiltonian cycle 2

3 Random Graph Model Random Graph Model is used to define a probability space for generating: undirected, simple (no loops, no multiple edges) graphs with n (labeled) vertices There are two common models: 1. The G n,p model 2. The G n,n model 3

4 Let M = n(n-1)/2 The G n,p model M = maximum #edges in an undirected simple graph with n vertices The G n,p model generates a graph with n vertices randomly In particular, for a graph G with a particular set of m edges, Pr(G is generated) = p m (1-p) M-m 4

5 The G n,p model One way to generate a random graph in G n,p is as follows: 1. Start with an empty graph with n vertices 2. Add each edge independently with probability p Question: How many graphs in G n,p model? 5

6 The G n,n model The G n,n model generates a graph with n vertices, N edges uniformly at random One way to generate a random graph in G n,n is as follows: 1. Start with an empty graph with n vertices 2. Add N edges, each time choose an edge uniformly from remaining edges Question: How many graphs in G n,n model? 6

7 G n,p versus G n,n When p = N/M = N/(n(n-1)/2) #edges in a graph in G n,p = Bin(M,p) Its expected value = N, and it is also concentrated around N Also, when #edges of a graph in G n,p is conditioned to be exactly N, it has the same (uniform) distribution as G n,n similar to exact case and Poisson case in balls-and-bins model 7

8 G n,p versus G n,n (2) In fact, there are further similarities E.g., Throwing edges into the graph in G n,n is like throwing balls into bins: Each vertex is a bin, each time we throw two balls E.g., in the coupon collector s problem, we found that when we throw n ln n + cn balls, the probability of having no empty bins converges to e -e-c as n 1, and 8

9 G n,p versus G n,n (3) and similarly, we have the following: Theorem: Let N = (n ln n + cn) / 2 Then the probability that a random graph chosen in G n,n has no isolated vertices converges to e -e-c as n 1 Proof: Left as an exercise (Ex. 5.19) [Idea: Relate this with the balls-and-bins model] 9

10 Why study random graphs? Many graph problems are NP-hard, which are believed to be very difficult E.g., Max Clique, Max Independent Set, Hamilton cycle, Min Vertex Cover, Question: Are these problems difficult for most inputs? Or, only a small fraction of inputs are causing the difficulty? 10

11 Hamiltonian Cycles Definition: A Hamiltonian cycle is a cycle that traverses each vertex exactly once In general, finding a Hamiltonian cycle is very difficult However, we shall show that when input is suitably chosen, we have a randomized algorithm such that : for most input, our algorithm can find a Hamiltonian cycle quickly w.h.p. 11

12 Precisely, we shall show that : Theorem: Hamiltonian Cycles For sufficiently large n, we can design a randomized algorithm which can find a Hamiltonian cycle in a random graph from G n,p w.h.p., whenever p (40 ln n)/n This immediately implies that when p is at least (40 ln n)/n, a random graph from G n,p will contain a Hamilton cycle w.h.p. 12

13 The Algorithm (version 1) The algorithm is like the game snake/nibbles ( 貪吃蛇 ) and make use of a simple operation called rotation We start by picking a random vertex in the graph as the head (of the snake) head 13

14 Then, repeatedly, we choose an adjacent edge of the head. The snake eats this edge and updates the position of the head Eats edge and updates 14

15 The Algorithm (version 1) What to do when the snake tries to eat itself? 15

16 The Algorithm (version 1) Let P = v 1, v 2,, v k be the current snake, v k = head of snake Suppose the snake now eats the edge (v k, v j ) That is, the snake eats itself If v j = tail = v 1 and if all vertices are explored, we obtain an Hamiltonian cycle Otherwise, we change perform rotation to change the snake into: P = v 1, v 2,, v j-1, v j, v k, v k-1, v k-2,, v j+2, v j+1 16

17 The Algorithm (version 1) What to do when the snake tries to eat itself? perform rotation 17

18 The Algorithm (version 1) 18

19 The Algorithm (version 1) When the snake eats the tail and all vertices are visited We get Hamiltonian cycle 19

20 Failure Case of the Algorithm When the snake does not have any edge to eat next (before a Hamiltonian cycle is found), we stop and report FAIL. E.g., Let s start with another vertex: 20

21 The Algorithm (version 1) 21

22 The Algorithm (version 1) When the snake has nothing to eat, it dies Report No Hamiltonian Cycle 22

23 The Algorithm (version 1) The previous algorithm turns out to be very simple, and is likely to be efficient when there are many edges in the graph Question: When will the algorithm fail? difficult to analyze directly Next, we will modify the algorithm to make it a bit stupid, but then we can analyze its performance more easily 23

24 Now, let us define three subroutines: Suppose P = v 1, v 2,, v k is current path, v k = head IsHamilton(P, v) { } The Algorithm (version 1) 1. If v = v 1 and all vertices are visited, return TRUE 2. Else, return FALSE 24

25 The Algorithm (version 1) Rotate(P, j) { 1. Update head to v j+1 } 2. Update P = v 1, v 2,, v j, v k, v k-1,, v j+2, v j+1 Extend(P, v) { 1. Update the head to v 2. Update P = v 1, v 2,, v k, v } 25

26 Then, the current algorithm becomes: 1. Choose a random node as head 2. Repeat until no unused edge is adjacent to head 2.1 Let P = v 1, v 2,, v k, where v k = head 2.2 Choose an unused edge adjacent to v k, say (v k, v), uniformly at random. (i) Mark this edge as used If IsHamilton(P,v), DONE (ii) Else, if v is unvisited, Extend(P, v) (iii) Else, v = v j for some j. Rotate(P, j) 26

27 In the modified algorithm, a used edge can be traversed again (with some prob): 1. Choose a random node as head 2. Repeat until all adjacent nodes of head were visited from head at least once 2.1 Let P = v 1, v 2,, v k, where v k = head 2.2 Let x = #nodes visited from v k before 2.3 Perform randomly one of the following: (a) prob = 1/n: Reverse P, make v 1 as new head 27

28 (b) prob = x/n: Choose a random node v that is visited from v k previously (c) prob = 1-1/n - x/n: Choose a random node v adjacent to v k, which was not visited from v k previously. Mark v as visited from v k 2.4 For (b) and (c) (i) If IsHamilton(P,v), DONE (ii) Else, if v is not on P, Extend(P, v) (iii) Else, v = v j for some j. Rotate(P, j) 28

29 The Algorithm (version 2) Some properties of the modified algorithm: (a good test of our understanding ) If an edge (u,v) is used before, it may be used again A node not visited from the current head before may have been visited from some other node already If u is visited from v before, v may not be visited from u (i.e., visit has direction) 29

30 The Algorithm (version 2) The modified algorithm seems to work for a directed graph Let us define a new random graph model and check the performance of our algo : For each vertex v, For each vertex u v, Set u to be its adjacent vertex with probability q, independently Remark: in this model, if u is an adjacent vertex of v, then v may not be an adjacent vertex to u 30

31 Performance in New Model Let G be a random graph from the new model Suppose we run the modified algorithm on G and it does not FAIL for first t steps Let V t = head after t th steps Lemma: After the t th step, if there is at least one adjacent vertex of V t unvisited from V t, then for any vertex u, Pr(V t+1 = u V t = u t, V t-1 = u t-1,, V 0 = u 0 ) = 1/n Remark: The head seems to be chosen uniformly at random at each step, regardless the history of the process 31

32 Proof Let P = v 1, v 2,, v k be the current path (note: no special relationship between k and t) The vertex u is in one of four cases : Case 1: u = v 1 Case 2: u = v j+1, and v k visits v j before Case 3: u = v j+1, but v k not visit v j before Case 4: u is not on P Cases 1 3: u is on P 32

33 Case 1 (u = v 1 ) : Case 1 and Case 2 The only way that u becomes next head is when path is reversed probability = 1/n Case 2 (u = v j+1, and v k visits v j before before) : u is next head when we choose to perform 2.3(b) and then v j is picked probability = x/n * 1/x = 1/n 33

34 Case 3 Case 3 (u = v j+1, but v k not visit v j before) : u is next head when we choose to perform 2.3(c) and v j is picked prob = (1 1/n-x/n)(1/(n-1-x)) = 1/n Reason: Each vertex was set to an adjacent vertex of v k independently with the same probability q ; By symmetry, each n-1-x unvisited vertex (excluding head) is picked with same probability 34

35 Case 4 Case 4 (u is not on P) : u is next head if we choose to perform 2.3(c) and then u is picked prob = (1 1/n-x/n)(1/(n-1-x)) = 1/n Reason: Again, by symmetry, each n-1-x unvisited vertex (excluding head) is picked with same probability Conclusion: Any vertex becomes next head with same probability 1/n 35

36 Performance in New Model (2) From previous lemma, we see that finding Hamiltonian path (not cycle) in new model is exactly coupon collector s problem: Finding a new vertex to add, when the path has n-k vertex (i.e., k globally unvisited vertex), is k/n Once all vertices are on the path, we get a Hamiltonian cycle if we run 2.3(b) or 2.3(c), and the vertex chosen is v 1 36

37 Performance in New Model (3) Hence, if at least one adjacent vertex of head is unvisited from head before at each step we can expect Hamiltonian path to be found in O(n log n) steps w.h.p., and then get a Hamiltonian cycle in O(n log n) steps w.h.p. (why?) Next, we show that when q (20 ln n) / n, the if condition happens w.h.p. as well 37

38 Performance in New Model (4) Lemma: Suppose the modified algorithm is run on a random graph from the new model, with q (20 ln n) / n Then for sufficiently large n, the algorithm will successfully find a Hamiltonian cycle in 3n ln n iterations of Step 2 w.h.p. How to prove? (Note: We do not assume input graph has a Hamilton cycle) 38

39 Proof For the algorithm to fail, one of the following events must happen: E 1 : It runs for 3n ln n steps, so that at each step, there is adjacent unvisited vertex from head; Yet, the algorithm does not get a Hamiltonian cycle E 2 : At least one vertex has got no adjacent unvisited vertex in the first 3n ln n steps In other words, Pr(fail) Pr(E 1 ) + Pr(E 2 ) 39

40 Previously, we have shown that as long as there is an adjacent unvisited vertex from head, the next head is chosen uniformly at random in each step Probability that a particular vertex not on current path P after 2n ln n steps is: at most (1-1/n) 2n ln n e -2 ln n = 1/n 2 Pr(some vertex not on P after 2n ln n steps) 1/n Proof: Bounding Pr(E 1 ) 40

41 Proof: Bounding Pr(E 1 ) If all vertices are on P, the Hamiltonian path will become a cycle with probability 1/n in each step the probability that after all vertices are on P, we cannot get a Hamiltonian cycle in n ln n steps is at most (1-1/n) n ln n e -ln n = 1/n Pr(E 1 ) 1/n + 1/n = 2/n (why?) 41

42 Proof: Bounding Pr(E 2 ) Now, we bound Pr(E 2 ), the probability that at least one vertex has no adjacent unvisited vertex in the first 3n ln n steps Consider the following events: E 2a : There is a vertex v such that v has been a head at least 10 ln n times (so that its adjacent vertices are used up) E 2b : There is a vertex which has fewer than 10 ln n adjacent vertices initially 42

43 Proof: Bounding Pr(E 2a ) For E 2 to happen, E 2a or E 2b must happen In other words, Pr(E 2 ) Pr(E 2a ) + Pr(E 2b ) For E 2a to happen Let X j = # times vertex j is head Recall: for any vertex u, Pr(u = head in the next step) = 1/n X j = Bin(3n ln n, 1/n) = E[X j ] = 3 ln n 43

44 Proof: Bounding Pr(E 2a ) Pr(E 2a ) j=1 to n Pr(X j 10 ln n) (why?) = n Pr(X 1 10 ln n) n Pr(X 1 9 ln n ) n Pr(X 1 (1+2) ) n (e 2 / (1+2) (1+2) ) (why?) = n (e 2 /27) 3 ln n n (e -1 ) 3 ln n = n (1/n 3 ) 1/n 44

45 Proof: Bounding Pr(E 2b ) Next, we bound Pr(E 2b ), the probability that some vertex initially has fewer than 10 ln n adjacent vertices Let Y j = #adjacent vertices of j initially Y j = Bin(n-1, q) = E[Y j ] = (n-1)q (n-1) 20 ln n /n 19 ln n for sufficiently large n 45

46 Proof: Bounding Pr(E 2b ) Pr(E 2b ) j=1 to n Pr(Y j 10 ln n) (why?) = n Pr(Y 1 10 ln n) n Pr(Y 1 (1 9/19) ) n e - (9/19)2 /2 (why?) n e-81 ln n / 38 n e -2 ln n = n (1/n 2 ) = 1/n 46

47 Proof: Bounding Pr(fail) In other words, Pr(E 2 ) Pr(E 2a ) + Pr(E 2b ) 1/n + 1/n = 2/n Combining with previous results, we have: Pr(fail) Pr(E 1 ) + Pr(E 2 ) 2/n + 2/n = 4/n for sufficiently large n 47

48 Performance in G n,p Finally, we relate the new model with G n,p : Theorem: For sufficiently large n, by initializing the adjacent vertices appropriately, we can apply the modified algorithm and find a Hamiltonian cycle in a randomly chosen graph from G n,p w.h.p., when p 40 ln n/ n How to initialize appropriately? 48

49 Proof Instead of working with the random graph G chosen from G n,p, we show how to convert G randomly to some directed graph G and apply the modified algorithm Our conversion is carefully done so that we obtain the random directed graph G as if we choose G from the new model Let q in [0,1] be a value such that p = 2q q 2 49

50 Proof We use the following process: For each edge (u,v) in G, (1) With probability q(1-q)/p, set u to be v s adjacent vertex but v is not u s adjacent (2) With probability q(1-q)/p, set v to be u s adjacent vertex but u is not v s adjacent (3) With remaining probability (q 2 /p), set u to be v s adjacent vertex AND v to be u s adjacent vertex 50

51 Proof (2) Now, for any vertex u, it is initially an adjacent vertex of v with probability: p (q(1-q)/p + q 2 /p) = q Also, for any two vertices u and v, the probability that u is v s adjacent vertex AND v is u s adjacent vertex is p (q 2 /p) = q 2 51

52 Proof (3) Thus, Pr(u is v s adjacent vertex AND v is u s adjacent vertex) = q 2 = Pr(u is v s adjacent vertex) Pr(v is u s adjacent vertex) In other words, exactly the new model!!! (adjacent vertex are independently assigned with probability q) 52

53 Obviously, if a Hamiltonian cycle can be found in the directed graph G, we can find a Hamiltonian cycle in the original G Since p = 2q q 2 2q, for p 40 ln n/ n, we have Proof (4) q p/2 20 ln n/ n By previous theorem, we can find a Hamiltonian cycle for G (thus, G) w.h.p. 53

princeton univ. F 13 cos 521: Advanced Algorithm Design Lecture 6: Provable Approximation via Linear Programming Lecturer: Sanjeev Arora

princeton univ. F 13 cos 521: Advanced Algorithm Design Lecture 6: Provable Approximation via Linear Programming Lecturer: Sanjeev Arora Scribe: One of the running themes in this course is the notion of

Lecture 3: Linear Programming Relaxations and Rounding

Lecture 3: Linear Programming Relaxations and Rounding 1 Approximation Algorithms and Linear Relaxations For the time being, suppose we have a minimization problem. Many times, the problem at hand can

Guessing Game: NP-Complete?

Guessing Game: NP-Complete? 1. LONGEST-PATH: Given a graph G = (V, E), does there exists a simple path of length at least k edges? YES 2. SHORTEST-PATH: Given a graph G = (V, E), does there exists a simple

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

13. Randomized Algorithms Contention Resolution. Randomization. Contention Resolution in a Distributed System. Algorithmic design patterns.

Randomization 13 Randomized Algorithms Algorithmic design patterns! Greed! Divide-and-conquer! Dynamic programming! Network flow! Randomization in practice, access to a pseudo-random number generator Randomization

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.,

Outline. NP-completeness. When is a problem easy? When is a problem hard? Today. Euler Circuits

Outline NP-completeness Examples of Easy vs. Hard problems Euler circuit vs. Hamiltonian circuit Shortest Path vs. Longest Path 2-pairs sum vs. general Subset Sum Reducing one problem to another Clique

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,

8.1 Makespan Scheduling

600.469 / 600.669 Approximation Algorithms Lecturer: Michael Dinitz Topic: Dynamic Programing: Min-Makespan and Bin Packing Date: 2/19/15 Scribe: Gabriel Kaptchuk 8.1 Makespan Scheduling Consider an instance

Artificial Intelligence Methods (G52AIM)

Artificial Intelligence Methods (G52AIM) Dr Rong Qu rxq@cs.nott.ac.uk Constructive Heuristic Methods Constructive Heuristics method Start from an empty solution Repeatedly, extend the current solution

Computer Algorithms. NP-Complete Problems. CISC 4080 Yanjun Li

Computer Algorithms NP-Complete Problems NP-completeness The quest for efficient algorithms is about finding clever ways to bypass the process of exhaustive search, using clues from the input in order

Discrete Mathematics and Probability Theory Fall 2009 Satish Rao, David Tse Note 10

CS 70 Discrete Mathematics and Probability Theory Fall 2009 Satish Rao, David Tse Note 10 Introduction to Discrete Probability Probability theory has its origins in gambling analyzing card games, dice,

2.3 Scheduling jobs on identical parallel machines

2.3 Scheduling jobs on identical parallel machines There are jobs to be processed, and there are identical machines (running in parallel) to which each job may be assigned Each job = 1,,, must be processed

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

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

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;

CS 598CSC: Combinatorial Optimization Lecture date: 2/4/2010

CS 598CSC: Combinatorial Optimization Lecture date: /4/010 Instructor: Chandra Chekuri Scribe: David Morrison Gomory-Hu Trees (The work in this section closely follows [3]) Let G = (V, E) be an undirected

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

Divisor graphs have arbitrary order and size

Divisor graphs have arbitrary order and size arxiv:math/0606483v1 [math.co] 20 Jun 2006 Le Anh Vinh School of Mathematics University of New South Wales Sydney 2052 Australia Abstract A divisor graph G

Lecture 7: NP-Complete Problems

IAS/PCMI Summer Session 2000 Clay Mathematics Undergraduate Program Basic Course on Computational Complexity Lecture 7: NP-Complete Problems David Mix Barrington and Alexis Maciel July 25, 2000 1. Circuit

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

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.

Discrete Mathematics and Probability Theory Fall 2009 Satish Rao,David Tse Note 11

CS 70 Discrete Mathematics and Probability Theory Fall 2009 Satish Rao,David Tse Note Conditional Probability A pharmaceutical company is marketing a new test for a certain medical condition. According

CMPSCI611: Approximating MAX-CUT Lecture 20

CMPSCI611: Approximating MAX-CUT Lecture 20 For the next two lectures we ll be seeing examples of approximation algorithms for interesting NP-hard problems. Today we consider MAX-CUT, which we proved to

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

Single machine parallel batch scheduling with unbounded capacity

Workshop on Combinatorics and Graph Theory 21th, April, 2006 Nankai University Single machine parallel batch scheduling with unbounded capacity Yuan Jinjiang Department of mathematics, Zhengzhou University

NP-complete? NP-hard? Some Foundations of Complexity. Prof. Sven Hartmann Clausthal University of Technology Department of Informatics

NP-complete? NP-hard? Some Foundations of Complexity Prof. Sven Hartmann Clausthal University of Technology Department of Informatics Tractability of Problems Some problems are undecidable: no computer

5.1 Bipartite Matching

CS787: Advanced Algorithms Lecture 5: Applications of Network Flow In the last lecture, we looked at the problem of finding the maximum flow in a graph, and how it can be efficiently solved using the Ford-Fulkerson

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

Discrete Mathematics and Probability Theory Fall 2009 Satish Rao, David Tse Note 13. Random Variables: Distribution and Expectation

CS 70 Discrete Mathematics and Probability Theory Fall 2009 Satish Rao, David Tse Note 3 Random Variables: Distribution and Expectation Random Variables Question: The homeworks of 20 students are collected

Midterm Practice Problems

6.042/8.062J Mathematics for Computer Science October 2, 200 Tom Leighton, Marten van Dijk, and Brooke Cowan Midterm Practice Problems Problem. [0 points] In problem set you showed that the nand operator

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. #-approximation algorithm.

Approximation Algorithms 11 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 three

! 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

Solutions for Practice problems on proofs

Solutions for Practice problems on proofs Definition: (even) An integer n Z is even if and only if n = 2m for some number m Z. Definition: (odd) An integer n Z is odd if and only if n = 2m + 1 for some

The Goldberg Rao Algorithm for the Maximum Flow Problem

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 }

Graph Theory Problems and Solutions

raph Theory Problems and Solutions Tom Davis tomrdavis@earthlink.net http://www.geometer.org/mathcircles November, 005 Problems. Prove that the sum of the degrees of the vertices of any finite graph is

Handout #Ch7 San Skulrattanakulchai Gustavus Adolphus College Dec 6, 2010. Chapter 7: Digraphs

MCS-236: Graph Theory Handout #Ch7 San Skulrattanakulchai Gustavus Adolphus College Dec 6, 2010 Chapter 7: Digraphs Strong Digraphs Definitions. A digraph is an ordered pair (V, E), where V is the set

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

Lecture 22: November 10

CS271 Randomness & Computation Fall 2011 Lecture 22: November 10 Lecturer: Alistair Sinclair Based on scribe notes by Rafael Frongillo Disclaimer: These notes have not been subjected to the usual scrutiny

6.3 Conditional Probability and Independence

222 CHAPTER 6. PROBABILITY 6.3 Conditional Probability and Independence Conditional Probability Two cubical dice each have a triangle painted on one side, a circle painted on two sides and a square painted

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

Discrete Mathematics for CS Fall 2006 Papadimitriou & Vazirani Lecture 22

CS 70 Discrete Mathematics for CS Fall 2006 Papadimitriou & Vazirani Lecture 22 Introduction to Discrete Probability Probability theory has its origins in gambling analyzing card games, dice, roulette

Series Convergence Tests Math 122 Calculus III D Joyce, Fall 2012

Some series converge, some diverge. Series Convergence Tests Math 22 Calculus III D Joyce, Fall 202 Geometric series. We ve already looked at these. We know when a geometric series converges and what it

9th Max-Planck Advanced Course on the Foundations of Computer Science (ADFOCS) Primal-Dual Algorithms for Online Optimization: Lecture 1

9th Max-Planck Advanced Course on the Foundations of Computer Science (ADFOCS) Primal-Dual Algorithms for Online Optimization: Lecture 1 Seffi Naor Computer Science Dept. Technion Haifa, Israel Introduction

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

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

Scheduling. Open shop, job shop, flow shop scheduling. Related problems. Open shop, job shop, flow shop scheduling

Scheduling Basic scheduling problems: open shop, job shop, flow job The disjunctive graph representation Algorithms for solving the job shop problem Computational complexity of the job shop problem Open

I. Pointwise convergence

MATH 40 - NOTES Sequences of functions Pointwise and Uniform Convergence Fall 2005 Previously, we have studied sequences of real numbers. Now we discuss the topic of sequences of real valued functions.

Page 1. CSCE 310J Data Structures & Algorithms. CSCE 310J Data Structures & Algorithms. P, NP, and NP-Complete. Polynomial-Time Algorithms

CSCE 310J Data Structures & Algorithms P, NP, and NP-Complete Dr. Steve Goddard goddard@cse.unl.edu CSCE 310J Data Structures & Algorithms Giving credit where credit is due:» Most of the lecture notes

Topic: Greedy Approximations: Set Cover and Min Makespan Date: 1/30/06

CS880: Approximations Algorithms Scribe: Matt Elder Lecturer: Shuchi Chawla Topic: Greedy Approximations: Set Cover and Min Makespan Date: 1/30/06 3.1 Set Cover The Set Cover problem is: Given a set of

r r + b, r + k P r(r 1 ) = P r(r 2 R 1 ) = r + b + 2k r + 2k b r + b + 3k r(r + k)(r + 2k)b (r + b)(r + b + k)(r + b + 2k)(r + b + 3k).

Stat Solutions for Homework Set 3 Page 6 Exercise : A box contains r red balls and b blue balls. One ball is selected at random and its color is observed. The ball is then returned to the box and k additional

Cpt S 223. School of EECS, WSU

The Shortest Path Problem 1 Shortest-Path Algorithms Find the shortest path from point A to point B Shortest in time, distance, cost, Numerous applications Map navigation Flight itineraries Circuit wiring

2. (a) Explain the strassen s matrix multiplication. (b) Write deletion algorithm, of Binary search tree. [8+8]

Code No: R05220502 Set No. 1 1. (a) Describe the performance analysis in detail. (b) Show that f 1 (n)+f 2 (n) = 0(max(g 1 (n), g 2 (n)) where f 1 (n) = 0(g 1 (n)) and f 2 (n) = 0(g 2 (n)). [8+8] 2. (a)

Discrete Mathematics Problems

Discrete Mathematics Problems William F. Klostermeyer School of Computing University of North Florida Jacksonville, FL 32224 E-mail: wkloster@unf.edu Contents 0 Preface 3 1 Logic 5 1.1 Basics...............................

Best Monotone Degree Bounds for Various Graph Parameters

Best Monotone Degree Bounds for Various Graph Parameters D. Bauer Department of Mathematical Sciences Stevens Institute of Technology Hoboken, NJ 07030 S. L. Hakimi Department of Electrical and Computer

Introduced by Stuart Kauffman (ca. 1986) as a tunable family of fitness landscapes.

68 Part II. Combinatorial Models can require a number of spin flips that is exponential in N (A. Haken et al. ca. 1989), and that one can in fact embed arbitrary computations in the dynamics (Orponen 1995).

1 The Line vs Point Test

6.875 PCP and Hardness of Approximation MIT, Fall 2010 Lecture 5: Low Degree Testing Lecturer: Dana Moshkovitz Scribe: Gregory Minton and Dana Moshkovitz Having seen a probabilistic verifier for linearity

Problem Set 7 Solutions

8 8 Introduction to Algorithms May 7, 2004 Massachusetts Institute of Technology 6.046J/18.410J Professors Erik Demaine and Shafi Goldwasser Handout 25 Problem Set 7 Solutions This problem set is due in

Exponential time algorithms for graph coloring

Exponential time algorithms for graph coloring Uriel Feige Lecture notes, March 14, 2011 1 Introduction Let [n] denote the set {1,..., k}. A k-labeling of vertices of a graph G(V, E) is a function V [k].

Lecture 5 - CPA security, Pseudorandom functions

Lecture 5 - CPA security, Pseudorandom functions Boaz Barak October 2, 2007 Reading Pages 82 93 and 221 225 of KL (sections 3.5, 3.6.1, 3.6.2 and 6.5). See also Goldreich (Vol I) for proof of PRF construction.

Uniform Multicommodity Flow through the Complete Graph with Random Edge-capacities

Combinatorics, Probability and Computing (2005) 00, 000 000. c 2005 Cambridge University Press DOI: 10.1017/S0000000000000000 Printed in the United Kingdom Uniform Multicommodity Flow through the Complete

CS2 Algorithms and Data Structures Note 11. Breadth-First Search and Shortest Paths

CS2 Algorithms and Data Structures Note 11 Breadth-First Search and Shortest Paths In this last lecture of the CS2 Algorithms and Data Structures thread we will consider the problem of computing distances

1. Prove that the empty set is a subset of every set.

1. Prove that the empty set is a subset of every set. Basic Topology Written by Men-Gen Tsai email: b89902089@ntu.edu.tw Proof: For any element x of the empty set, x is also an element of every set since

Chapter 6: Graph Theory

Chapter 6: Graph Theory Graph theory deals with routing and network problems and if it is possible to find a best route, whether that means the least expensive, least amount of time or the least distance.

HOMEWORK 5 SOLUTIONS. n!f n (1) lim. ln x n! + xn x. 1 = G n 1 (x). (2) k + 1 n. (n 1)!

Math 7 Fall 205 HOMEWORK 5 SOLUTIONS Problem. 2008 B2 Let F 0 x = ln x. For n 0 and x > 0, let F n+ x = 0 F ntdt. Evaluate n!f n lim n ln n. By directly computing F n x for small n s, we obtain the following

5 Directed acyclic graphs

5 Directed acyclic graphs (5.1) Introduction In many statistical studies we have prior knowledge about a temporal or causal ordering of the variables. In this chapter we will use directed graphs to incorporate

3. Mathematical Induction

3. MATHEMATICAL INDUCTION 83 3. Mathematical Induction 3.1. First Principle of Mathematical Induction. Let P (n) be a predicate with domain of discourse (over) the natural numbers N = {0, 1,,...}. If (1)

Homework Exam 1, Geometric Algorithms, 2016

Homework Exam 1, Geometric Algorithms, 2016 1. (3 points) Let P be a convex polyhedron in 3-dimensional space. The boundary of P is represented as a DCEL, storing the incidence relationships between the

(67902) Topics in Theory and Complexity Nov 2, 2006. Lecture 7

(67902) Topics in Theory and Complexity Nov 2, 2006 Lecturer: Irit Dinur Lecture 7 Scribe: Rani Lekach 1 Lecture overview This Lecture consists of two parts In the first part we will refresh the definition

The Graphical Method: An Example

The Graphical Method: An Example Consider the following linear program: Maximize 4x 1 +3x 2 Subject to: 2x 1 +3x 2 6 (1) 3x 1 +2x 2 3 (2) 2x 2 5 (3) 2x 1 +x 2 4 (4) x 1, x 2 0, where, for ease of reference,

ECON 459 Game Theory. Lecture Notes Auctions. Luca Anderlini Spring 2015

ECON 459 Game Theory Lecture Notes Auctions Luca Anderlini Spring 2015 These notes have been used before. If you can still spot any errors or have any suggestions for improvement, please let me know. 1

3 Some Integer Functions

3 Some Integer Functions A Pair of Fundamental Integer Functions The integer function that is the heart of this section is the modulo function. However, before getting to it, let us look at some very simple

Solutions to Homework 6

Solutions to Homework 6 Debasish Das EECS Department, Northwestern University ddas@northwestern.edu 1 Problem 5.24 We want to find light spanning trees with certain special properties. Given is one example

1 Problem Statement. 2 Overview

Lecture Notes on an FPRAS for Network Unreliability. Eric Vigoda Georgia Institute of Technology Last updated for 7530 - Randomized Algorithms, Spring 200. In this lecture, we will consider the problem

Introduction to Algorithms Review information for Prelim 1 CS 4820, Spring 2010 Distributed Wednesday, February 24

Introduction to Algorithms Review information for Prelim 1 CS 4820, Spring 2010 Distributed Wednesday, February 24 The final exam will cover seven topics. 1. greedy algorithms 2. divide-and-conquer algorithms

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

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

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

Recent progress in additive prime number theory

Recent progress in additive prime number theory University of California, Los Angeles Mahler Lecture Series Additive prime number theory Additive prime number theory is the study of additive patterns in

Induction. Margaret M. Fleck. 10 October These notes cover mathematical induction and recursive definition

Induction Margaret M. Fleck 10 October 011 These notes cover mathematical induction and recursive definition 1 Introduction to induction At the start of the term, we saw the following formula for computing

Social Media Mining. Graph Essentials

Graph Essentials Graph Basics Measures Graph and Essentials Metrics 2 2 Nodes and Edges A network is a graph nodes, actors, or vertices (plural of vertex) Connections, edges or ties Edge Node Measures

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. buixuan@ii.uib.no

Tenacity and rupture degree of permutation graphs of complete bipartite graphs

Tenacity and rupture degree of permutation graphs of complete bipartite graphs Fengwei Li, Qingfang Ye and Xueliang Li Department of mathematics, Shaoxing University, Shaoxing Zhejiang 312000, P.R. China

Examples and Proofs of Inference in Junction Trees

Examples and Proofs of Inference in Junction Trees Peter Lucas LIAC, Leiden University February 4, 2016 1 Representation and notation Let P(V) be a joint probability distribution, where V stands for a

4. Continuous Random Variables, the Pareto and Normal Distributions

4. Continuous Random Variables, the Pareto and Normal Distributions A continuous random variable X can take any value in a given range (e.g. height, weight, age). The distribution of a continuous random

The Basics of Graphical Models

The Basics of Graphical Models David M. Blei Columbia University October 3, 2015 Introduction These notes follow Chapter 2 of An Introduction to Probabilistic Graphical Models by Michael Jordan. Many figures

Product irregularity strength of certain graphs

Also available at http://amc.imfm.si ISSN 1855-3966 (printed edn.), ISSN 1855-3974 (electronic edn.) ARS MATHEMATICA CONTEMPORANEA 7 (014) 3 9 Product irregularity strength of certain graphs Marcin Anholcer

3. Eulerian and Hamiltonian Graphs

3. Eulerian and Hamiltonian Graphs There are many games and puzzles which can be analysed by graph theoretic concepts. In fact, the two early discoveries which led to the existence of graphs arose from

A threshold for the Maker-Breaker clique game

A threshold for the Maker-Breaker clique game Tobias Müller Miloš Stojaković October 7, 01 Abstract We study the Maker-Breaker k-clique game played on the edge set of the random graph G(n, p. In this game,

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

Practice problems for Homework 11 - Point Estimation

Practice problems for Homework 11 - Point Estimation 1. (10 marks) Suppose we want to select a random sample of size 5 from the current CS 3341 students. Which of the following strategies is the best:

CMPS 102 Solutions to Homework 1

CMPS 0 Solutions to Homework Lindsay Brown, lbrown@soe.ucsc.edu September 9, 005 Problem..- p. 3 For inputs of size n insertion sort runs in 8n steps, while merge sort runs in 64n lg n steps. For which

Introduction to Logic in Computer Science: Autumn 2006

Introduction to Logic in Computer Science: Autumn 2006 Ulle Endriss Institute for Logic, Language and Computation University of Amsterdam Ulle Endriss 1 Plan for Today Now that we have a basic understanding

IEOR 6711: Stochastic Models I Fall 2012, Professor Whitt, Tuesday, September 11 Normal Approximations and the Central Limit Theorem

IEOR 6711: Stochastic Models I Fall 2012, Professor Whitt, Tuesday, September 11 Normal Approximations and the Central Limit Theorem Time on my hands: Coin tosses. Problem Formulation: Suppose that I have

CHAPTER 6: Continuous Uniform Distribution: 6.1. Definition: The density function of the continuous random variable X on the interval [A, B] is.

Some Continuous Probability Distributions CHAPTER 6: Continuous Uniform Distribution: 6. Definition: The density function of the continuous random variable X on the interval [A, B] is B A A x B f(x; A,

Minimum Makespan Scheduling

Minimum Makespan Scheduling Minimum makespan scheduling: Definition and variants Factor 2 algorithm for identical machines PTAS for identical machines Factor 2 algorithm for unrelated machines Martin Zachariasen,

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: