# / Approximation Algorithms Lecturer: Michael Dinitz Topic: Steiner Tree and TSP Date: 01/29/15 Scribe: Katie Henry

Save this PDF as:

Size: px
Start display at page:

Download "/ Approximation Algorithms Lecturer: Michael Dinitz Topic: Steiner Tree and TSP Date: 01/29/15 Scribe: Katie Henry"

## Transcription

1 / Approximation Algorithms Lecturer: Michael Dinitz Topic: Steiner Tree and TSP Date: 01/29/15 Scribe: Katie Henry 2.1 Steiner Tree Definition In the Steiner Tree problem the input is a graph G = (V, E) with edge costs C : E R + and terminals T V. A subgraph of G is a feasible solution if it spans all of T. The objective is to minimize the cost. Note that since we are minimizing the cost, without loss of generality the solution is a tree (if some solution has a cycle then we can remove any edge from the cycle and have a subgraph of lesser cost which still spans T ). Trivial cases: If T is everything, solution is MST. If T is two nodes, solution is shortest path. Definition The metric completion C of (G, C) is the metric on V in which for all u, v V, the distance C (u, v) is the cost of the shortest u v path in G under edge costs C. The Metric Steiner Tree problem is the variant of Steiner tree in which we operate in a metric space rather than a graph. In other words, the input is a metric space (V, C) and a set of terminals T V, and the goal is to compute the minimum cost tree spanning T. We will show that it is possible to reduce the general case to the metric case. Lemma Let H be a solution to metric steiner tree on (V, C, T ). Then there is a solution H to the steiner tree problem on (G, C, T ) with C(H) C (H ). Proof: We first get a subgraph Ĥ of G by replacing each edge e = {u, v} of H with a u v path in G of length C (u, v) (some such path exists by the definition of C ). Note that this does not increase the cost. We then let H be an arbitrary spanning tree of Ĥ. Since Ĥ spans every node that H spans (and possibly more), this implies that H is a feasible solution to the original steiner tree problem. And since replacing an edge by the appropriate path does not increase the cost, we have that C(H) C(Ĥ) C (H ). Lemma Let H is a solution to the steiner tree problem on (G, C, T ). Then there is a solution H to the metric steiner tree problem on (V, C, T ) with C (H ) C(H). Proof: H itself is a solution to the metric steiner tree problem on (V, C, T ) with C (H ) C(H), and clearly C (H) C(H ). Thus we can simply let H = H. Theorem If there is an α-approximation for metric Steiner tree, then there is an α-approximation for Steiner tree. 1

2 Proof of Theorem 2.1.5: Let C be the metric completion of (G, C), and let A be an α- approximation algorithm for the metric Steiner tree problem. We first use A on the instance (V, C, T ) of metric Steiner tree to get some H which spans T. We then get Ĥ by replacing each edge e = {u, v} H by a u v path of length C (u, v). Since this is not necessarily a tree any longer, we then let H be an arbitrary spanning tree of Ĥ. Claim H is feasible. Proof: H spans a superset of the nodes spanned by H, and thus spans T. Claim C(H) α OP T Proof: We know that C(H) C(Ĥ) because H is a subtree of Ĥ. We know that C(Ĥ) C (H ) by Lemma Since A is assumed to be an α-approximation for the metric Steiner tree problem, we know that C (H ) α OP T (V, C, T ) (i.e. α times the optimum of the metric instance). Finally, we know that OP T (V, C, T ) OP T (G, C, T ) by Lemma Putting these all together, we get that C(H) α OP T (G, C, T ) as claimed. Claims and together give the theorem Metric Steiner tree So now we want to design an approximation algorithm for the Metric Steiner Tree problem by Theorem this will give the same approximation for the non-metric case. Algorithm 1 Metric Steiner Tree Input: Set of points V metric edge costs C, terminals T V. Let F be minimum spanning tree on T. Return F. F is the solution returned by the metric Steiner tree algorithm. Claim F is feasible. Proof: By definition it spans T. Theorem C(F ) 2(1 1 T )OPT. Proof: Let F be the optimal solution. Our goal is to find some spanning tree F of T with C( F ) 2(1 1 T )C(F ): if we can prove this, then since F is the minimum spanning tree of T we will have proved that C(F ) C( F ) 2(1 1 T )C(F ). In order to prove this, we first need a definition. Definition A graph G is Eulerian if there is a closed tour of G which traverses every edge exactly once. Eulerian graphs are a standard topic in graph theory, in part because it turns out that they have a very simple characterization: Theorem G is Eulerian iff all degrees are even and G is connected. Let 2F be F with two copies of each edge. Now all degrees are even, and thus 2F is Eulerian, 2

3 so there is an Eulerian tour C of 2F. This tour hits all of the nodes (multiple times), but we only care about hitting T. So we can obtain a cycle H on T by shortcutting C to T : informally, we walk the Eulerian path to get an ordering of all nodes (where we only consider the first time we see a vertex), and then build the cycle on T defined by this ordering (there are more details about this in Section 2.4 of the book). Because C is a metric space, the cost of each edge in the cycle H is at most the cost of the path (in C) that it replaces. And because 2F is Eulierian, each edge is in at most one of these paths and hence no edge was double counted. Thus C(H) C(2F ) = 2C(F ) = 2OP T. Since H is a cycle, we can remove the most costly edge to get a spanning tree F of T (in fact, a spanning path). By a simple averaging argument the most costly edge has value at least 1 T C(H), and thus C( F ) (1 1 1 T ) C(H) 2(1 T )OPT. A natural question is whether our analysis is tight: is this algorithm actually better than a 2(1 1 T )- approximation? Theorem There is an instance of metric Steiner tree in which the algorithm returns a solution of cost 2(1 1 T ) OP T. Proof: Consider the metric defined by a star (one center and n 1 leaves) in which edges of the star have cost 1 (so the cost of leaf-leaf pairs is 2). The terminals are the leaves. Then the optimal solution is the star itself, which has cost n 1. But the algorithm finds a minimum spanning tree on the leaves, which clearly has cost 2(n 2) = 2(1 1 n 1 )OP T. It turns out that better algorithms do exist: Theorem (Byrka, Grandoni, Rothvoß, Sanita) There is a (ln(4)+ɛ) 1.39-approximation to Steiner Tree. 2.2 TSP: traveling salesman problem Recall that in (metric) TSP the input is a set of points V with metric edge costs c : V V R +. A solution is feasible if it is a Hamiltonian cycle of V (a spanning cycle visiting every vertex exactly once). The objective is to minimize the cost of this cycle. The first algorithm we will consider is similar to the algorithm we used for Steiner Tree. Algorithm 2 TSP Input: Set of points V with metric costs c : V V R + Compute MST T. Double all edges to get 2T (Eulerian), so let C be Eulerian tour. Let H be shortcutted C (treat all nodes as terminals). return H Theorem Algorithm is a 2(1 1 n ) approx. Proof of Theorem 2.2.1: Let H be the optimal solution, and let F be the path obtained by removing the heaviest edge of H. Then F is a spanning tree (actually spanning path) of V of cost 3

4 C(F ) (1 1 n )C(H ) = (1 1 n ) OP T. But since T is the minimum spanning tree, we know that C(T ) C(F ). Thus we have that C(H) C(C) = C(2T ) = 2C(T ) 2C(F ) (1 1 T ) OP T. While this is a simple algorithm, there is a better one due to Christofides [1976]. In fact, this was one of the first nontrivial approximation algorithms developed. The key idea is to note that the only reason we had to double all edges of T was to get an Eulierian graph (which we could then shortcut). What if there were a way to get an Eulerian graph of smaller cost? Definition A perfect matching of nodes S is a matching of size S 2 (i.e. everyone is matched). There exists a polytime algorithm to find a min-cost perfect matching. Theorem (Christofides 1976) There is a 3/2-approximation for TSP. In order to prove this, we will first note something simple about degrees in graphs: the sum of the degrees is always even. Lemma Let G be an arbitrary graph, and let d(v) denote the degree of v in G. d(v) is even. v V Then Proof: Clearly v V d(v) = e E 2 = 2 E, since adding the degrees counts every edge twice (once at each endpoint). And obviously 2 E is even. We can now define Christofides s algorithm. Algorithm 3 Christofides TSP Compute MST T. Let D be odd-degree nodes in T. Let M be min-cost perfect matching of D. Let C be Eulerian tour of T + M. return H = shortcutted C. We used the notation T + M to denote the multigraph obtained by taking the union of T and M with multiplicities: if an edge appears in both T and in M then it appears twice in T + M. Theorem Everything is well-defined. Proof: We know from Lemma that D is odd, and since we are in a metric there is an edge between all pairs, so the min-cost perfect matching M is well-defined (we can break ties arbitrarily). Consider some node v. If it has even degree in T then it has even degree in T + M, while if it had odd degree in T then it has even degree in T + M. Thus T + M is Eulerian, so C exists. Theorem Christofides is a 3/2-approximation. Proof: Let H be the optimal solution. Then H spans V and T is the least expensive way of spanning T. So C(T ) OP T (this is the same as in the previous algorithm). So we simply need to show that C(M) 1 2 OP T. To see this, define H D to be H shortcutted to D (so H D is a cycle on D). Without loss of generality we can rename nodes so that H D is the cycle (v 1, v 2,..., v D ). Since D is even, we can partition H D into two perfect matchings: M 1 = {{v 1, v 2 }, (v 3, v 4 },..., {v D 1, v D }}, and 4

5 M 2 = {{v D, v 1 }, (v 2, v 3 },..., {v D 2, v D 1 }} Clearly M 1 and M 2 form a partition of the edges of H D into two perfect matchings of D. Thus C(M 1 ) + C(M 2 ) = C(H D ), so min{c(m 1 ), C(M 2 )} 1 2 C(H D) 1 2 C(H ) = 1 2 OP T. Finally, since M is the minimum cost perfect patching on D we know that C(M) min{c(m 1 ), C(M 2 )}, proving the theorem. 5

### 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

### 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

### Answers to some of the exercises.

Answers to some of the exercises. Chapter 2. Ex.2.1 (a) There are several ways to do this. Here is one possibility. The idea is to apply the k-center algorithm first to D and then for each center in D

### Lecture Steiner Tree Approximation- June 15

Approximation Algorithms Workshop June 13-17, 2011, Princeton Lecture Steiner Tree Approximation- June 15 Fabrizio Grandoni Scribe: Fabrizio Grandoni 1 Overview In this lecture we will summarize our recent

### Combinatorics: The Fine Art of Counting

Combinatorics: The Fine Art of Counting Week 9 Lecture Notes Graph Theory For completeness I have included the definitions from last week s lecture which we will be using in today s lecture along with

### CSL851: Algorithmic Graph Theory Semester I Lecture 1: July 24

CSL851: Algorithmic Graph Theory Semester I 2013-2014 Lecture 1: July 24 Lecturer: Naveen Garg Scribes: Suyash Roongta Note: LaTeX template courtesy of UC Berkeley EECS dept. Disclaimer: These notes have

### 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

### 1 Digraphs. Definition 1

1 Digraphs Definition 1 Adigraphordirected graphgisatriplecomprisedofavertex set V(G), edge set E(G), and a function assigning each edge an ordered pair of vertices (tail, head); these vertices together

### The TSP is a special case of VRP, which means VRP is NP-hard.

49 6. ROUTING PROBLEMS 6.1. VEHICLE ROUTING PROBLEMS Vehicle Routing Problem, VRP: Customers i=1,...,n with demands of a product must be served using a fleet of vehicles for the deliveries. The vehicles,

### 1 Basic Definitions and Concepts in Graph Theory

CME 305: Discrete Mathematics and Algorithms 1 Basic Definitions and Concepts in Graph Theory A graph G(V, E) is a set V of vertices and a set E of edges. In an undirected graph, an edge is an unordered

### Math 443/543 Graph Theory Notes 4: Connector Problems

Math 443/543 Graph Theory Notes 4: Connector Problems David Glickenstein September 19, 2012 1 Trees and the Minimal Connector Problem Here is the problem: Suppose we have a collection of cities which we

### 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

### A tree can be defined in a variety of ways as is shown in the following theorem: 2. There exists a unique path between every two vertices of G.

7 Basic Properties 24 TREES 7 Basic Properties Definition 7.1: A connected graph G is called a tree if the removal of any of its edges makes G disconnected. A tree can be defined in a variety of ways as

### 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

### Homework MA 725 Spring, 2012 C. Huneke SELECTED ANSWERS

Homework MA 725 Spring, 2012 C. Huneke SELECTED ANSWERS 1.1.25 Prove that the Petersen graph has no cycle of length 7. Solution: There are 10 vertices in the Petersen graph G. Assume there is a cycle C

### CSE 20: Discrete Mathematics for Computer Science. Prof. Miles Jones. Today s Topics: Graphs. The Internet graph

Today s Topics: CSE 0: Discrete Mathematics for Computer Science Prof. Miles Jones. Graphs. Some theorems on graphs. Eulerian graphs Graphs! Model relations between pairs of objects The Internet graph!

### Planar Graph and Trees

Dr. Nahid Sultana December 16, 2012 Tree Spanning Trees Minimum Spanning Trees Maps and Regions Eulers Formula Nonplanar graph Dual Maps and the Four Color Theorem Tree Spanning Trees Minimum Spanning

### Graph Theory. Euler tours and Chinese postmen. John Quinn. Week 5

Graph Theory Euler tours and Chinese postmen John Quinn Week 5 Recap: connectivity Connectivity and edge-connectivity of a graph Blocks Kruskal s algorithm Königsberg, Prussia The Seven Bridges of Königsberg

### Lecture 7: Approximation via Randomized Rounding

Lecture 7: Approximation via Randomized Rounding Often LPs return a fractional solution where the solution x, which is supposed to be in {0, } n, is in [0, ] n instead. There is a generic way of obtaining

### 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 }

### 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

### Lecture 6: Approximation via LP Rounding

Lecture 6: Approximation via LP Rounding Let G = (V, E) be an (undirected) graph. A subset C V is called a vertex cover for G if for every edge (v i, v j ) E we have v i C or v j C (or both). In other

### Example 5.5. The heuristics are demonstrated with this example of n=5 vertices and distances in the following matrix:

39 5.3. HEURISTICS FOR THE TSP Notation: f = length of the tour given by the algortihm a f = length of the optimal tour min Most of the following heuristics are designed to solve symmetric instances of

### (a) (b) (c) Figure 1 : Graphs, multigraphs and digraphs. If the vertices of the leftmost figure are labelled {1, 2, 3, 4} in clockwise order from

4 Graph Theory Throughout these notes, a graph G is a pair (V, E) where V is a set and E is a set of unordered pairs of elements of V. The elements of V are called vertices and the elements of E are called

### V. Adamchik 1. Graph Theory. Victor Adamchik. Fall of 2005

V. Adamchik 1 Graph Theory Victor Adamchik Fall of 2005 Plan 1. Basic Vocabulary 2. Regular graph 3. Connectivity 4. Representing Graphs Introduction A.Aho and J.Ulman acknowledge that Fundamentally, computer

### Solutions to Exercises 8

Discrete Mathematics Lent 2009 MA210 Solutions to Exercises 8 (1) Suppose that G is a graph in which every vertex has degree at least k, where k 1, and in which every cycle contains at least 4 vertices.

### Minimum Spanning Trees

Minimum Spanning Trees Algorithms and 18.304 Presentation Outline 1 Graph Terminology Minimum Spanning Trees 2 3 Outline Graph Terminology Minimum Spanning Trees 1 Graph Terminology Minimum Spanning Trees

### 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

### Chapter 4: Trees. 2. Theorem: Let T be a graph with n vertices. Then the following statements are equivalent:

9 Properties of Trees. Definitions: Chapter 4: Trees forest - a graph that contains no cycles tree - a connected forest. Theorem: Let T be a graph with n vertices. Then the following statements are equivalent:

### Algorithms for Virtual Private Network Design

Algorithms for Virtual Private Network Design Diploma Thesis of Thomas Rothvoß Advised by Prof. Dr. Friedrich Eisenbrand Second reviewer PD Dr. Piotr Krysta Fachbereich Informatik Universität Dortmund

### 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

### Graphs and Network Flows IE411 Lecture 1

Graphs and Network Flows IE411 Lecture 1 Dr. Ted Ralphs IE411 Lecture 1 1 References for Today s Lecture Required reading Sections 17.1, 19.1 References AMO Chapter 1 and Section 2.1 and 2.2 IE411 Lecture

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

### CS268: Geometric Algorithms Handout #5 Design and Analysis Original Handout #15 Stanford University Tuesday, 25 February 1992

CS268: Geometric Algorithms Handout #5 Design and Analysis Original Handout #15 Stanford University Tuesday, 25 February 1992 Original Lecture #6: 28 January 1991 Topics: Triangulating Simple Polygons

### 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

### Chapter 4. Trees. 4.1 Basics

Chapter 4 Trees 4.1 Basics A tree is a connected graph with no cycles. A forest is a collection of trees. A vertex of degree one, particularly in a tree, is called a leaf. Trees arise in a variety of applications.

### 10. Graph Matrices Incidence Matrix

10 Graph Matrices Since a graph is completely determined by specifying either its adjacency structure or its incidence structure, these specifications provide far more efficient ways of representing a

### MATHEMATICAL ENGINEERING TECHNICAL REPORTS. An Improved Approximation Algorithm for the Traveling Tournament Problem

MATHEMATICAL ENGINEERING TECHNICAL REPORTS An Improved Approximation Algorithm for the Traveling Tournament Problem Daisuke YAMAGUCHI, Shinji IMAHORI, Ryuhei MIYASHIRO, Tomomi MATSUI METR 2009 42 September

### Graph definition Degree, in, out degree, oriented graph. Complete, regular, bipartite graph. Graph representation, connectivity, adjacency.

Mária Markošová Graph definition Degree, in, out degree, oriented graph. Complete, regular, bipartite graph. Graph representation, connectivity, adjacency. Isomorphism of graphs. Paths, cycles, trials.

### Lecture Notes on Spanning Trees

Lecture Notes on Spanning Trees 15-122: Principles of Imperative Computation Frank Pfenning Lecture 26 April 26, 2011 1 Introduction In this lecture we introduce graphs. Graphs provide a uniform model

### Homework 15 Solutions

PROBLEM ONE (Trees) Homework 15 Solutions 1. Recall the definition of a tree: a tree is a connected, undirected graph which has no cycles. Which of the following definitions are equivalent to this definition

### GRAPH THEORY and APPLICATIONS. Trees

GRAPH THEORY and APPLICATIONS Trees Properties Tree: a connected graph with no cycle (acyclic) Forest: a graph with no cycle Paths are trees. Star: A tree consisting of one vertex adjacent to all the others.

### Planarity Planarity

Planarity 8.1 71 Planarity Up until now, graphs have been completely abstract. In Topological Graph Theory, it matters how the graphs are drawn. Do the edges cross? Are there knots in the graph structure?

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

### Chapter 6 Planarity. Section 6.1 Euler s Formula

Chapter 6 Planarity Section 6.1 Euler s Formula In Chapter 1 we introduced the puzzle of the three houses and the three utilities. The problem was to determine if we could connect each of the three utilities

### 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

### Introduction to Relations

CHAPTER 7 Introduction to Relations 1. Relations and Their Properties 1.1. Definition of a Relation. Definition: A binary relation from a set A to a set B is a subset R A B. If (a, b) R we say a is related

### Discrete Mathematics & Mathematical Reasoning Chapter 10: Graphs

Discrete Mathematics & Mathematical Reasoning Chapter 10: Graphs Kousha Etessami U. of Edinburgh, UK Kousha Etessami (U. of Edinburgh, UK) Discrete Mathematics (Chapter 6) 1 / 13 Overview Graphs and Graph

### Drawing Maps with Advice

Journal of Parallel and Distributed Computing 7() (0) 4 Drawing Maps with Advice Dariusz Dereniowski Andrzej Pelc Abstract We study the problem of the amount of information required to draw a complete

### Forests and Trees: A forest is a graph with no cycles, a tree is a connected forest.

2 Trees What is a tree? Forests and Trees: A forest is a graph with no cycles, a tree is a connected forest. Theorem 2.1 If G is a forest, then comp(g) = V (G) E(G). Proof: We proceed by induction on E(G).

### Resource Allocation with Time Intervals

Resource Allocation with Time Intervals Andreas Darmann Ulrich Pferschy Joachim Schauer Abstract We study a resource allocation problem where jobs have the following characteristics: Each job consumes

### 3. Equivalence Relations. Discussion

3. EQUIVALENCE RELATIONS 33 3. Equivalence Relations 3.1. Definition of an Equivalence Relations. Definition 3.1.1. A relation R on a set A is an equivalence relation if and only if R is reflexive, symmetric,

### CSL851: Algorithmic Graph Theory Semester I Lecture 4: August 5

CSL851: Algorithmic Graph Theory Semester I 2013-14 Lecture 4: August 5 Lecturer: Naveen Garg Scribes: Utkarsh Ohm Note: LaTeX template courtesy of UC Berkeley EECS dept. Disclaimer: These notes have not

### 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 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

### 10.1 Integer Programming and LP relaxation

CS787: Advanced Algorithms Lecture 10: LP Relaxation and Rounding In this lecture we will design approximation algorithms using linear programming. The key insight behind this approach is that the closely

### A note on properties for a complementary graph and its tree graph

A note on properties for a complementary graph and its tree graph Abulimiti Yiming Department of Mathematics Institute of Mathematics & Informations Xinjiang Normal University China Masami Yasuda Department

### 1. Relevant standard graph theory

Color identical pairs in 4-chromatic graphs Asbjørn Brændeland I argue that, given a 4-chromatic graph G and a pair of vertices {u, v} in G, if the color of u equals the color of v in every 4-coloring

### Lecture notes from Foundations of Markov chain Monte Carlo methods University of Chicago, Spring 2002 Lecture 1, March 29, 2002

Lecture notes from Foundations of Markov chain Monte Carlo methods University of Chicago, Spring 2002 Lecture 1, March 29, 2002 Eric Vigoda Scribe: Varsha Dani & Tom Hayes 1.1 Introduction The aim of this

### Planar Tree Transformation: Results and Counterexample

Planar Tree Transformation: Results and Counterexample Selim G Akl, Kamrul Islam, and Henk Meijer School of Computing, Queen s University Kingston, Ontario, Canada K7L 3N6 Abstract We consider the problem

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

### Graph Theory Notes. Vadim Lozin. Institute of Mathematics University of Warwick

Graph Theory Notes Vadim Lozin Institute of Mathematics University of Warwick 1 Introduction A graph G = (V, E) consists of two sets V and E. The elements of V are called the vertices and the elements

### 14. Trees and Their Properties

14. Trees and Their Properties This is the first of a few articles in which we shall study a special and important family of graphs, called trees, discuss their properties and introduce some of their applications.

### 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

### Steiner Tree Approximation via IRR. Randomized Rounding

Steiner Tree Approximation via Iterative Randomized Rounding Graduate Program in Logic, Algorithms and Computation μπλ Network Algorithms and Complexity June 18, 2013 Overview 1 Introduction Scope Related

### CMSC 451: Graph Properties, DFS, BFS, etc.

CMSC 451: Graph Properties, DFS, BFS, etc. Slides By: Carl Kingsford Department of Computer Science University of Maryland, College Park Based on Chapter 3 of Algorithm Design by Kleinberg & Tardos. Graphs

### 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

### The positive minimum degree game on sparse graphs

The positive minimum degree game on sparse graphs József Balogh Department of Mathematical Sciences University of Illinois, USA jobal@math.uiuc.edu András Pluhár Department of Computer Science University

### Characterizations of Arboricity of Graphs

Characterizations of Arboricity of Graphs Ruth Haas Smith College Northampton, MA USA Abstract The aim of this paper is to give several characterizations for the following two classes of graphs: (i) graphs

### Sample Problems in Discrete Mathematics

Sample Problems in Discrete Mathematics This handout lists some sample problems that you should be able to solve as a pre-requisite to Computer Algorithms Try to solve all of them You should also read

### Lecture 9. 1 Introduction. 2 Random Walks in Graphs. 1.1 How To Explore a Graph? CS-621 Theory Gems October 17, 2012

CS-62 Theory Gems October 7, 202 Lecture 9 Lecturer: Aleksander Mądry Scribes: Dorina Thanou, Xiaowen Dong Introduction Over the next couple of lectures, our focus will be on graphs. Graphs are one of

### 1 Unrelated Parallel Machine Scheduling

IIIS 014 Spring: ATCS - Selected Topics in Optimization Lecture date: Mar 13, 014 Instructor: Jian Li TA: Lingxiao Huang Scribe: Yifei Jin (Polishing not finished yet.) 1 Unrelated Parallel Machine Scheduling

### Partitioning edge-coloured complete graphs into monochromatic cycles and paths

arxiv:1205.5492v1 [math.co] 24 May 2012 Partitioning edge-coloured complete graphs into monochromatic cycles and paths Alexey Pokrovskiy Departement of Mathematics, London School of Economics and Political

### 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

### COLORED GRAPHS AND THEIR PROPERTIES

COLORED GRAPHS AND THEIR PROPERTIES BEN STEVENS 1. Introduction This paper is concerned with the upper bound on the chromatic number for graphs of maximum vertex degree under three different sets of coloring

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.

### A simpler and better derandomization of an approximation algorithm for Single Source Rent-or-Buy

A simpler and better derandomization of an approximation algorithm for Single Source Rent-or-Buy David P. Williamson Anke van Zuylen School of Operations Research and Industrial Engineering, Cornell University,

### On the Complexity of the Asymmetric VPN Problem

On the Complexity of the Asymmetric VPN Problem Thomas Rothvoß and Laura Sanità Institute of Mathematics, EPFL, Lausanne, Switzerland {thomas.rothvoss,laura.sanita}@epfl.ch Abstract We give the first constant

### 1 Polyhedra and Linear Programming

CS 598CSC: Combinatorial Optimization Lecture date: January 21, 2009 Instructor: Chandra Chekuri Scribe: Sungjin Im 1 Polyhedra and Linear Programming In this lecture, we will cover some basic material

### Coloring Eulerian triangulations of the projective plane

Coloring Eulerian triangulations of the projective plane Bojan Mohar 1 Department of Mathematics, University of Ljubljana, 1111 Ljubljana, Slovenia bojan.mohar@uni-lj.si Abstract A simple characterization

### 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

### 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

### Jade Yu Cheng ICS 311 Homework 10 Oct 7, 2008

Jade Yu Cheng ICS 311 Homework 10 Oct 7, 2008 Question for lecture 13 Problem 23-3 on p. 577 Bottleneck spanning tree A bottleneck spanning tree of an undirected graph is a spanning tree of whose largest

### Graph Isomorphism Completeness for Perfect Graphs and Subclasses of Perfect Graphs

Graph Isomorphism Completeness for Perfect Graphs and Subclasses of Perfect Graphs C. Boucher D. Loker May 2006 Abstract A problem is said to be GI-complete if it is provably as hard as graph isomorphism;

### Euler Paths and Euler Circuits

Euler Paths and Euler Circuits An Euler path is a path that uses every edge of a graph exactly once. An Euler circuit is a circuit that uses every edge of a graph exactly once. An Euler path starts and

### Theorem A graph T is a tree if, and only if, every two distinct vertices of T are joined by a unique path.

Chapter 3 Trees Section 3. Fundamental Properties of Trees Suppose your city is planning to construct a rapid rail system. They want to construct the most economical system possible that will meet the

### Trees and Fundamental Circuits

Trees and Fundamental Circuits Tree A connected graph without any circuits. o must have at least one vertex. o definition implies that it must be a simple graph. o only finite trees are being considered

### 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

### The origins of graph theory are humble, even frivolous. Biggs, E. K. Lloyd, and R. J. Wilson)

Chapter 11 Graph Theory The origins of graph theory are humble, even frivolous. Biggs, E. K. Lloyd, and R. J. Wilson) (N. Let us start with a formal definition of what is a graph. Definition 72. A graph

### Complexity Theory. IE 661: Scheduling Theory Fall 2003 Satyaki Ghosh Dastidar

Complexity Theory IE 661: Scheduling Theory Fall 2003 Satyaki Ghosh Dastidar Outline Goals Computation of Problems Concepts and Definitions Complexity Classes and Problems Polynomial Time Reductions Examples

### A 2-factor in which each cycle has long length in claw-free graphs

A -factor in which each cycle has long length in claw-free graphs Roman Čada Shuya Chiba Kiyoshi Yoshimoto 3 Department of Mathematics University of West Bohemia and Institute of Theoretical Computer Science

### 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

### 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

### 1. Sorting (assuming sorting into ascending order) a) BUBBLE SORT

DECISION 1 Revision Notes 1. Sorting (assuming sorting into ascending order) a) BUBBLE SORT Make sure you show comparisons clearly and label each pass First Pass 8 4 3 6 1 4 8 3 6 1 4 3 8 6 1 4 3 6 8 1

### IE 680 Special Topics in Production Systems: Networks, Routing and Logistics*

IE 680 Special Topics in Production Systems: Networks, Routing and Logistics* Rakesh Nagi Department of Industrial Engineering University at Buffalo (SUNY) *Lecture notes from Network Flows by Ahuja, Magnanti

### Definition. A graph is a collection of vertices, and edges between them. They are often represented by a drawing:

1. GRAPHS AND COLORINGS Definition. A graph is a collection of vertices, and edges between them. They are often represented by a drawing: 3 vertices 3 edges 4 vertices 4 edges 4 vertices 6 edges A graph

### A Turán Type Problem Concerning the Powers of the Degrees of a Graph

A Turán Type Problem Concerning the Powers of the Degrees of a Graph Yair Caro and Raphael Yuster Department of Mathematics University of Haifa-ORANIM, Tivon 36006, Israel. AMS Subject Classification:

### Min-cost flow problems and network simplex algorithm

Min-cost flow problems and network simplex algorithm The particular structure of some LP problems can be sometimes used for the design of solution techniques more efficient than the simplex algorithm.