3 Euler Tours, Hamilton Cycles, and Their Applications

Size: px
Start display at page:

Download "3 Euler Tours, Hamilton Cycles, and Their Applications"

Transcription

1 3 Euler Tours, Hamilton Cycles, and Their Applications 3.1 Euler Tours and Applications Euler tours Carefully review the definition of (closed) walks, trails, and paths from Section 1... Definition 3.1 An Euler trail in a graph is a trail that contains every edge of the graph. An Euler tour is a closed Euler trail. A graph is called eulerian is it has an Euler tour. The origins of the problem of eulerian graphs and, in fact, the origins of graph theory, go back to the eighteenth century puzzle called the Bridges of Königsberg. In the town of Königsberg in what was then East Prussia, the two branches of the river Pregel converge and flow through to the Baltic Sea. The town is divided into four parts, which are connected to each other by the famous seven bridges (see Figure 11, left). The townspeople want to know if it is possible to take a walk that crosses each of the bridges exactly once before returning to the starting point. The Prussian emperor, Frederick the Great, brought the problem to the attention of the famous Swiss mathematician Leonhard Euler, and Euler proved in 13 that no such walk is possible. A A D B D B C C Figure 11: The bridges of Königsberg. Euler used the graph in Figure 11, right, to model the problem, and showed that this graph has no Euler tour. Explain. A generalization of this result a complete characterization of eulerian graphs is given by our next theorem. Theorem 3. Let G be a connected graph. Then G is eulerian if and only if the degree of every vertex in G is even. Proof. First notice that if G has no edges, then it must be isomorphic to K 1 (since it is connected), and the statement of the theorem is trivially true.. Hence we may assume G is not edgeless. ( ) Assume G has an Euler tour T starting at a vertex v 0. Each time an internal vertex u of the tour is encountered during a traversal of T, two edges incident with u are traversed. Since each edge of the graph is traversed exactly once, u must have even degree. For the initial vertex v 0 of T, the first and the last edge of T each add one to the count, and each 31

2 encounter of v 0 as an internal vertex adds two to the count of edges incident with v 0. Hence v 0 also has even degree. ( ) We must prove that every connected graph with all vertices of even degree is eulerian. We shall prove this by contradiction. Suppose there exists a connected graph with all vertices of even degree that is not eulerian. Among such graphs, let G be one with the smallest number of edges. Let T be a longest trail in G. Since every vertex in G has even degree and T cannot be extended, T must be a closed trail, and since G contains an edge, T has at least one edge. If T uses all the edges of G, then T is an Euler tour of G a contradiction. Hence T does not contain all the edges of G. Consider the graph G = G E(T ). This graph has all vertices of even degree and contains at least one edge. Let H be a non-trivial connected component of G. Hence H is connected, has at least one edge, and has all vertices of even degree. Moreover, H has fewer edges than G, so by the assumption on G, H has an Euler tour T. Now, since G is connected, T and T necessarily have a vertex w in common. We can now join T and T at this vertex w to obtain a closed trail T. But since T has at least one edge, T is longer than T, contradicting the choice of T. We conclude that every connected graph with all vertices of even degree must have an Euler tour. Figure 1: Exercise 3.3. Exercise 3.3 For each of the graphs in Figure 1, determine whether the graph has an Euler tour. Algorithm 3.4 Constructing an Euler Tour procedure Euler(G: eulerian graph) x := first vertex of G T := closed trail in G starting at x E := E(G) E(T ) while E begin G := G[E ] x := vertex on T incident with an edge in G T := closed trail in G starting at x T := trail T enlarged by inserting T into T at vertex x E := E E(T ) end {T is an Euler tour in G} 3

3 Exercise 3. Use Algorithm 3.4 to construct an Euler tour of the graph in Figure 13. Figure 13: Exercise 3.. Exercise 3. Let G be an eulerian graph. (a) Explain in detail how to construct a closed trail starting at a given vertex x of G. Prove that such a trail exists for every x V (G). (b) Prove that if T is a closed tour in G that is not an Euler tour, then there exists a vertex on T that is incident with an edge of G not on T. (c) Use (a) and (b), together with some ideas from the proof of Theorem 3., to show that Algorithm 3.4 correctly constructs an Euler tour of an eulerian graph. Exercise 3. Estimate the time complexity of Algorithm 3.4. Exercise 3.8 Prove that a graph with at least one edge and all vertices of even degree must contain a cycle. Exercise 3. Prove that every closed trail is an edge-disjoint union of cycles. (Hint: First show that every nontrivial closed trail contains a cycle. Then use strong induction on the number of edges to prove the statement.) Exercise 3.10 An open Euler trail in a graph is an Euler trail that is not a tour (i.e. it is not closed). Prove that a connected graph has an open Euler trail if an only if it has exactly two vertices of odd degree. (Hint: Use Theorem 3. for the graph G + uv, where u and v are two appropriately chosen vertices.) Exercise 3.11 For each of the graphs in Figure 1, determine whether the graph has an open Euler trail. Exercise 3.1 Describe an algorithm that determines whether or not a connected graph has an Euler tour or an open Euler trail, and if so, constructs one. 33

4 3.1. The Chinese Postman Problem A letter carrier wishes to deliver mail along every street in a city. There is a cost (travel time) associated with the traversal of every street. How can the carrier deliver the mail and then return to the starting point so that the total cost of her traversal is as small as possible? This problem became known as the Chinese Postman Problem. It asks to find a minimum closed walk in weighted graph that traverses each edge at least once, that is, a minimum postman tour. Definition 3.13 A postman tour in a graph G is a closed walk that traverses each edge of G at least once. A minimum postman tour in a weighted graph G is a postman tour of G of smallest weight. If the graph G is eulerian, then every Euler tour is in fact a minimum postman tour of the graph. If the graph is not eulerian, however, then some of the edges will have to be traversed more than once. In other words, we will have to duplicate some of the edges in G to obtain an eulerian graph from G. It makes sense to choose the edges to be duplicated so that the total weight is as small as possible, however, we have to make sure that the resulting graph is eulerian. Example 3.14 Find a minimum postman tour in the graph in Figure 14, extreme left Figure 14: But what edges should be duplicated if the vertices of odd degree in our graph are not adjacent? The idea of the algorithm of Edmonds and Johnson (Algorithm 3.18) is to pair up the vertices of odd degree so that duplicating the edges along a shortest path between the vertices in each pair gives the minimum total weight of duplicated edges. The algorithm makes use of a procedure that constructs a minimum perfect matching in a complete graph, to be studied in a later chapter. Definition 3.1 A matching in a graph G is a subset M of E(G) such that no two edges of M have an endpoint in common. A perfect matching of G is a matching M of G such that every vertex of G is an endpoint of an edge in M. In other words, a perfect matching of G is a partitioning of V (G) into pairs of adjacent vertices. Exercise 3.1 Show that if a graph has a perfect matching, then it must have an even number of vertices. Does the converse hold? 34

5 Exercise 3.1 For each of the graphs in Figure 14, find all perfect matchings of the graph. Which of the perfect matchings is minimum (i.e. has minimum total weight)? The Edmonds and Johnson algorithm starts by constructing a complete graph K with vertex set consisting of all vertices of odd degree in G. To each edge uv in K it then assigns the weight dist G (u, v), that is, the weight of a shortest path from u to v in the weighted graph G. Next, it constructs a minimum perfect matching M in K. Note that to each edge uv in M corresponds a (u, v)-path P (u, v) in G; the edges of P (u, v) (for all uv M) are then duplicated in G to obtain an eulerian graph G. Finally, an Euler tour of G is constructed, giving a minimum postman tour of G. Algorithm 3.18 Minimum Postman Tour (Edmonds and Johnson) procedure P ostman(g: connected graph with edge-weight function w) S := the set of odd-degree vertices of G for all u S {e.g. use Dijkstra s algorithm} for all v S {u} P (u, v) := a shortest (u, v)-path K := complete graph with V (K) = S and weight function c, where c(uv) = w(p (u, v)) M := minimum perfect matching in K {algorithm to be developed later} E := E(G) for all uv M E := E E(P (u, v)) {duplicate the edges of the path P (u, v) in G} G := eulerian graph with vertex set V (G), edge set E, and weight function w T := Euler tour of G {use Algorithm 3.4} {T is an minimum postman tour in G} Exercise 3.1 Apply the Edmonds and Johnson algorithm to each of the graphs in Figure 14 to find a minimum postman tour. Exercise 3.0 In this exercise you will prove correctness of Algorithm Let G be a connected graph and S the set of odd-degree vertices of G. 1. Let K be the complete graph on the vertex set S. Prove that K has a perfect matching.. Let M be a perfect matching in K, and for every edge uv M, let P (u, v) be a (u, v)- path in G. Obtain the graph G from G by duplicating each edge of P (u, v), for all uv M. Prove that G is an eulerian graph, and any Euler tour of G is a postman tour of G. 3. Recall that in Algorithm 3.18, P (u, v) was chosen to be a shortest (u, v)-path for every uv M, and M a minimum matching in K, where the weights of the edges in K are the corresponding distances between the endpoints in G. Prove that it follows that the Euler tour of G is indeed a minimum postman tour of G. 3

6 3. Hamilton Cycles and Applications 3..1 Hamilton cycles In 18, the Irish mathematician Sir William Rowan Hamilton described in a letter to a friend the following game played on the dodecahedron (Figure 1, left): One person sticks five pins into any five consecutive vertices, thus creating a path of length four, while the other person is requires to complete this path to a spanning cycle of the dodecahedron. This game became known as the Icosian Game. In honour of Hamilton, a spanning cycle of a graph is called a Hamilton cycle. Figure 1: The dodecahedron and the Herschel graph. Definition 3.1 A Hamilton cycle (path) is a cycle (path) that contains all vertices of the graph. A graph is called hamiltonian if it contains a Hamilton cycle. Example 3. Try playing the Icosian Game with a friend. You should now be convinced that the dodecahedron is a hamiltonian graph. Example 3.3 Show that the Herschel graph (Figure 1, right) is not hamiltonian. Example 3.4 Show that the two graphs in Figure 1 are not hamiltonian. Figure 1: Example 3.4. Although Hamilton cycles are in some sense analogous to Euler tours, there is no characterization of hamiltonian graphs as simple as the even-degree characterization of eulerian graphs. In fact, the decision problem Is a graph G hamiltonian? is NP-complete. However, some simple sufficient conditions for a graph to be hamiltonian are known. For example, one would expect that the more edges in a graph, the more likely the graph is hamiltonian. The following theorem confirms such a hypothesis and makes it precise. 3

7 Theorem 3. (Dirac) Let G be a simple graph with n vertices and let δ = min{deg(u) : u V (G)}. If n 3 and δ n, then G is hamiltonian. Proof. By contradiction. Suppose G is a maximal simple graph with n 3 vertices and δ n that is not hamiltonian. This means that for any two non-adjacent vertices u and v, the graph G + uv is hamiltonian. Moreover, since G is not hamiltonian, every Hamilton cycle of G + uv must contain the edge uv. Hence G contains a Hamilton path u 1 u... u n with u 1 = u and u n = v. Let Since u n S T, we have Furthermore, S = {u i : u 1 u i+1 } and T = {u i : u i u n }. S T < n. (i) S T = 0 (ii) since if there existed u k S T, then u 1 u... u k u n u n 1... u k+1 u 1 would be a Hamilton cycle in G, a contradiction (see Figure 1). 1 3 k k+1 n-1 n From (i) and (ii) we obtain Figure 1: Theorem 3.. deg(u) + deg(v) = S + T = S T + S T < n, contradicting the hypothesis that deg(u) + deg(v) δ + δ n. Hence every simple graph with n 3 vertices and δ n is hamiltonian. Exercise 3. Let G be a simple graph with n vertices and u, v two non-adjacent vertices in G such that deg(u) + deg(v) n. Use Dirac s Theorem to prove that G is hamiltonian if and only if G + uv is hamiltonian. Exercise 3. A mouse eats his way through a cube of cheese by tunnelling through all of the twenty-seven subcubes. If he starts at one corner and always moves on to an uneaten subcube, can he finish at the centre of the cube? (Hint: represent the cube of cheese by a graph. What are we trying to find in this graph? What properties does this graph have?) Exercise 3.8 For each of the graphs in Figure 18, find a Hamilton cycle in the graph or else, prove that the graph is not hamiltonian. References for Section 3..1: Bondy, Gross 3

8 Figure 18: Exercise The Travelling Salesman Problem A travelling salesman wishes to make a tour of n cities, visiting each city exactly once before returning home, so that the cost of travel is as small as possible (see Figure 1). This problem has become known as the Travelling Salesman Problem (TSP). It asks to find a minimum Hamilton cycle in a weighted graph. We shall be assuming that the weight function is non-negative Figure 1: Weighted graph for a TSP. Since the TSP is, like the Hamilton cycle problem, NP-complete, there is a trade-off between algorithms that guarantee an optimal solution and those that run quickly at the expense of a formal performance guarantee; the latter are called heuristic. Definition 3. A heuristic is a guideline for a decision step in an algorithm that helps to choose from several possible alternatives. A heuristic algorithm is an algorithm whose steps are guided by heuristics. Note that a heuristic may in fact miss the best move, and hence a heuristic algorithm sacrifices the guarantee to find the best solution so that it can terminate quickly. We shall consider two heuristic algorithms for the TSP, the Nearest Neighbour Algorithm and the Tree-Doubling Algorithm. As we shall see, the Tree-Doubling Algorithm in fact performs as a true approximation algorithm (with performance guarantee) for weighted graphs satisfying the triangle inequality. The Nearest Neighbour Algorithm, on the other hand, though very fast and easy to implement, comes with no such guarantee even for these special cases. Definition 3.30 An approximation algorithm is an algorithm that does not necessarily produce an optimal solution, however, the solution is guaranteed to be a fixed percentage away from the optimum. 38

9 Definition 3.31 A graph G with a weight function w is said to satisfy the triangle inequality if w(xz) w(xy) + w(yz) for every triple of pairwise adjacent vertices x, y, z. The Nearest Neighbour Algorithm is an example of a greedy algorithm: wherever it happens to be, it picks the cheapest way to get somewhere else as long as this move does not create a short cycle. Note that by assigning a very large weight to each missing edge, we may assume that our weighted graph is complete. Algorithm 3.3 Nearest Neighbour Algorithm procedure N earestn eighbour(g: weighted complete graph with n vertices) x := first vertex of G y := x C := trivial path with vertex set {y} {C is a path to become a Hamilton cycle; y is the last vertex on the path C} for i := to n begin z := vertex not in V (C) such that w(yz) is as small as possible C := C + yz y := z end C := C + xy {C is a Hamilton cycle in G} Example 3.33 Use the Nearest Neighbour Algorithm to find a Hamilton cycle in the graph in Figure 1. Is this Hamilton cycle minimum? The Nearest Neighbour Algorithm sometimes performs quite well, however, it can produce arbitrarily bad Hamilton cycles. See the graph in Figure 0 and explain. M Figure 0: A bad example for the Nearest Neighbour Algorithm. The following result shows that performance guarantees for the general TSP are highly unlikely. Theorem 3.34 If there exists a polynomial-time algorithm whose solution to every instance of the general TSP is never worse than some constant times the optimum, then P=NP. 3

10 As mentioned above, algorithms with such guarantees do exist for TSPs satisfying the triangle inequality. However, the Nearest Neighbour Algorithm is not one of them. Theorem 3.3 For every r > 1 there exists a graph G satisfying the triangle inequality such that the solution for the TSP on G obtained by the Nearest Neighbour Algorithm is at least r times the optimum. The Tree-Doubling Algorithm starts by finding a minimum spanning tree T in a weighted complete graph G satisfying the triangle inequality. By doubling each edge in T, it obtains an eulerian graph H, and in H, it constructs an Euler tour T. Finally, it converts T into a Hamilton cycle by taking shortcuts whenever vertex doubling would occur while traversing T. Note that the resulting Hamilton cycle depends on which was the first vertex of the Euler tour T. Algorithm 3.3 Tree-Doubling Algorithm procedure T reedoubling(g: weighted complete graph with n vertices) {assuming the weight function w is non-negative and satisfies the triangle inequality} T := minimum spanning tree in G H := eulerian graph obtained by taking two copies of each edge in T T := Euler tour of H x := first vertex of T y := x {y will be the first endpoint of a new edge on C} C := trivial path with vertex set {y} {C is a path to become a Hamilton cycle of G} z := y {z is the last visited vertex on T } for i := to (n 1) begin u := first vertex on T following z if u V (C) then begin C := C + yu y := u end z := u end C := C + yx {C is a Hamilton cycle in G} Example 3.3 Suppose Figure 1 shows a minimum spanning tree in a complete graph. Using the Tree-Doubling Algorithm, find the corresponding Hamilton cycle starting at (a) vertex 1, (b) vertex. Exercise 3.38 Use the Tree-Doubling Algorithm to find a Hamilton cycle in the graph in Figure 1. Is this Hamilton cycle minimum? 40

11 1 3 4 Figure 1: Example 3.3 In the following theorem we shall prove the performance guarantee for the Tree-Doubling Algorithm, namely, that it always produces a Hamilton cycle whose weight is at most twice the weight of a minimum Hamilton cycle. Theorem 3.3 Let G be a complete weighted graph satisfying the triangle inequality, and C a minimum Hamilton cycle in G. The Tree-Doubling Algorithm produces a Hamilton cycle C with w(c) w(c ). Proof. Let T be the minimum spanning tree obtained by the Tree-Doubling Algorithm. Since C e is a spanning tree for all edges e E(C ), we have w(t ) w(c e) w(c ) (note that we needed the assumption w(e) 0). Clearly, the weight of the Euler tour T is then at most w(c ). Now consider the Hamilton cycle C = u 0 u 1 u... u n 1 u 0 obtained from the Euler tour T by the Tree-Doubling Algorithm. We have w(c) = w(u 0 u 1 ) + w(u 1 u ) w(u n u n 1 ) + (u n 1 u 0 ). Each edge u i u i+1 (subscripts modulo n) of C is obtained from a subtrail T i = u i0 u i1... u ik(i) (where u i0 = u i and u ik(i) = u i+1 ) of the Euler tour T, and T = T 0 T 1... T n 1. Clearly, since G satisfies the triangle inequality, n 1 n 1 w(c) = w(u i u i+1 ) w(u i0 u i1 ) + w(u i1 u i ) w(u ik(i) 1 u ik(i) ) = w(t ) w(c ). i=0 i=0 Cristofides realized that not all of the edges of the minimum spanning tree need to be duplicated to obtain an eulerian graph. The result of his algorithm, a variation of the Tree- Doubling Algorithm using a minimum perfect matching in the subgraph of G induced by the vertices of odd degree in T, is a Hamilton cycle that is never worse than 3 times the optimal. Exercise 3.40 Estimate the order of complexity of the Nearest Neighbour and Tree-Doubling Algorithms. Exercise 3.41 Perform each of the Nearest Neighbour and Tree-Doubling Algorithms on each of the graphs in Figure, starting from vertex a and resolving ties alphabetically. Indicate the edges of the resulting approximation for a minimum Hamilton cycle, as well as its weight. 41

12 e d a 10 c b e d a c b f 3 e a d c b Figure : Exercise 3.4 Minimum Hamilton path.to find a minimum Hamilton path in a weighted complete graph G with V (G) = {u 1,..., u n } and non-negative weight function w, create a graph G by adding to G a new vertex u 0 and edges u 0 u i, for i = 1,..., n, with weights w(u 0 u i ) = 0. (a) Explain how a minimum Hamilton cycle in G corresponds to a minimum Hamilton path in G. (b) Using the Nearest Neighbour and Tree-Doubling Algorithms, find approximations for a minimum Hamilton path in each of the graphs in Figure. Exercise 3.43 Minimum Hamilton path with specified endpoints. (a) Let G be a weighted complete graph with V (G) = {u 1,..., u n } and non-negative weight function w. Explain how to convert the problem of finding a minimum Hamilton path from u 1 to u n to the problem of finding a minimum Hamilton cycle in an appropriate graph G. Describe this graph G. (See Exercise 3.4 for ideas.) (b) Using the Nearest Neighbour and Tree-Doubling Algorithms, find approximations for a minimum Hamilton path from vertex a to vertex d in each of the graphs in Figure. Exercise 3.44 Job Sequencing on a Single Machine. We have n jobs that need to be processed on a single machine. The time required to process job j immediately after job i is c ij. We would like to sequence the n jobs so that the total time is minimized. Describe the graph model that can be used to solve this problem Gray Codes Definition 3.4 A Gray code of order n is an ordering of the n binary strings of length n such that two consecutive binary strings in the sequence (viewed cyclically) differ in exactly one bit. Example 3.4 Construct Gray codes of orders 1,, and 3. Application 3.4 A spacecraft transmits a picture back to earth using long sequences of numbers, where each number represents a darkness value for one of the dots in the picture. Using a Gray code rather than usual binary representation of numbers to encode the picture has the following advantage: if an error from cosmic noise causes one binary digit in a sequence to be misread by the receiver, then the mistaken binary string will be interpreted as a darkness value that is almost the same as the true darkness number. 4

13 Example 3.48 How large can transmission error be when using the usual binary numbers to represent darkness values from 0 to? Compare this to the Gray code ordering. Give an ordering of binary strings of length 3 that yields the greatest possible error in the transmission of one faulty bit. Theorem 3.4 For every positive integer n there exists a Gray code of order n. Proof. A Gray code of order n corresponds to a Hamilton cycle in the n-dimensional cube Q n. Using induction, we prove that Q n is hamiltonian for all n. Q is a 4-cycle and therefore hamiltonian. This proves the basis of induction. Suppose Q n is hamiltonian for some n. Let C = b 1 b... b nb 1 be a Hamilton cycle in Q n. (Here, the b i are binary strings of length n.) Then b 1 0 b 0... b n 10 b n0 b n1 b n b 1 b 1 1 b 1 0 is a Hamilton cycle in Q n+1. By induction, Q n is hamiltonian for all n, and hence there exists a Gray code of order n for all n. Exercise 3.0 Construct Gray codes of orders 4 and from Gray codes of orders 3 and 4, respectively. References for Section 3.: Gross 43

Chapter 3: Paths and Cycles

Chapter 3: Paths and Cycles Chapter 3: Paths and Cycles 5 Connectivity 1. Definitions: Walk: finite sequence of edges in which any two consecutive edges are adjacent or identical. (Initial vertex, Final vertex, length) Trail: walk

More information

Theorem 2.9: nearest addition algorithm

Theorem 2.9: nearest addition algorithm There are severe limits on our ability to compute near-optimal tours It is NP-complete to decide whether a given undirected =(,)has a Hamiltonian cycle An approximation algorithm for the TSP can be used

More information

6.2. Paths and Cycles

6.2. Paths and Cycles 6.2. PATHS AND CYCLES 85 6.2. Paths and Cycles 6.2.1. Paths. A path from v 0 to v n of length n is a sequence of n+1 vertices (v k ) and n edges (e k ) of the form v 0, e 1, v 1, e 2, v 2,..., e n, v n,

More information

Fundamental Properties of Graphs

Fundamental Properties of Graphs Chapter three In many real-life situations we need to know how robust a graph that represents a certain network is, how edges or vertices can be removed without completely destroying the overall connectivity,

More information

Number Theory and Graph Theory

Number Theory and Graph Theory 1 Number Theory and Graph Theory Chapter 7 Graph properties By A. Satyanarayana Reddy Department of Mathematics Shiv Nadar University Uttar Pradesh, India E-mail: satya8118@gmail.com 2 Module-2: Eulerian

More information

Modules. 6 Hamilton Graphs (4-8 lectures) Introduction Necessary conditions and sufficient conditions Exercises...

Modules. 6 Hamilton Graphs (4-8 lectures) Introduction Necessary conditions and sufficient conditions Exercises... Modules 6 Hamilton Graphs (4-8 lectures) 135 6.1 Introduction................................ 136 6.2 Necessary conditions and sufficient conditions............. 137 Exercises..................................

More information

8.2 Paths and Cycles

8.2 Paths and Cycles 8.2 Paths and Cycles Degree a b c d e f Definition The degree of a vertex is the number of edges incident to it. A loop contributes 2 to the degree of the vertex. (G) is the maximum degree of G. δ(g) is

More information

Adjacent: Two distinct vertices u, v are adjacent if there is an edge with ends u, v. In this case we let uv denote such an edge.

Adjacent: Two distinct vertices u, v are adjacent if there is an edge with ends u, v. In this case we let uv denote such an edge. 1 Graph Basics What is a graph? Graph: a graph G consists of a set of vertices, denoted V (G), a set of edges, denoted E(G), and a relation called incidence so that each edge is incident with either one

More information

CHAPTER 10 GRAPHS AND TREES. Alessandro Artale UniBZ - artale/z

CHAPTER 10 GRAPHS AND TREES. Alessandro Artale UniBZ -  artale/z CHAPTER 10 GRAPHS AND TREES Alessandro Artale UniBZ - http://www.inf.unibz.it/ artale/z SECTION 10.1 Graphs: Definitions and Basic Properties Copyright Cengage Learning. All rights reserved. Graphs: Definitions

More information

Math 776 Graph Theory Lecture Note 1 Basic concepts

Math 776 Graph Theory Lecture Note 1 Basic concepts Math 776 Graph Theory Lecture Note 1 Basic concepts Lectured by Lincoln Lu Transcribed by Lincoln Lu Graph theory was founded by the great Swiss mathematician Leonhard Euler (1707-178) after he solved

More information

11.2 Eulerian Trails

11.2 Eulerian Trails 11.2 Eulerian Trails K.. onigsberg, 1736 Graph Representation A B C D Do You Remember... Definition A u v trail is a u v walk where no edge is repeated. Do You Remember... Definition A u v trail is a u

More information

Introduction III. Graphs. Motivations I. Introduction IV

Introduction III. Graphs. Motivations I. Introduction IV Introduction I Graphs Computer Science & Engineering 235: Discrete Mathematics Christopher M. Bourke cbourke@cse.unl.edu Graph theory was introduced in the 18th century by Leonhard Euler via the Königsberg

More information

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

Discrete Mathematics and Probability Theory Fall 2009 Satish Rao,David Tse Note 8 CS 70 Discrete Mathematics and Probability Theory Fall 2009 Satish Rao,David Tse Note 8 An Introduction to Graphs Formulating a simple, precise specification of a computational problem is often a prerequisite

More information

Discrete Mathematics for CS Spring 2008 David Wagner Note 13. An Introduction to Graphs

Discrete Mathematics for CS Spring 2008 David Wagner Note 13. An Introduction to Graphs CS 70 Discrete Mathematics for CS Spring 2008 David Wagner Note 13 An Introduction to Graphs Formulating a simple, precise specification of a computational problem is often a prerequisite to writing a

More information

Discrete mathematics

Discrete mathematics Discrete mathematics Petr Kovář petr.kovar@vsb.cz VŠB Technical University of Ostrava DiM 470-2301/02, Winter term 2018/2019 About this file This file is meant to be a guideline for the lecturer. Many

More information

Elements of Graph Theory

Elements of Graph Theory Elements of Graph Theory Quick review of Chapters 9.1 9.5, 9.7 (studied in Mt1348/2008) = all basic concepts must be known New topics we will mostly skip shortest paths (Chapter 9.6), as that was covered

More information

Varying Applications (examples)

Varying Applications (examples) Graph Theory Varying Applications (examples) Computer networks Distinguish between two chemical compounds with the same molecular formula but different structures Solve shortest path problems between cities

More information

Notes for Recitation 9

Notes for Recitation 9 6.042/18.062J Mathematics for Computer Science October 8, 2010 Tom Leighton and Marten van Dijk Notes for Recitation 9 1 Traveling Salesperson Problem Now we re going to talk about a famous optimization

More information

5 Matchings in Bipartite Graphs and Their Applications

5 Matchings in Bipartite Graphs and Their Applications 5 Matchings in Bipartite Graphs and Their Applications 5.1 Matchings Definition 5.1 A matching M in a graph G is a set of edges of G, none of which is a loop, such that no two edges in M have a common

More information

Section 3.4 Basic Results of Graph Theory

Section 3.4 Basic Results of Graph Theory 1 Basic Results of Graph Theory Section 3.4 Basic Results of Graph Theory Purpose of Section: To formally introduce the symmetric relation of a (undirected) graph. We introduce such topics as Euler Tours,

More information

Discrete Mathematics and Probability Theory Fall 2013 Vazirani Note 7

Discrete Mathematics and Probability Theory Fall 2013 Vazirani Note 7 CS 70 Discrete Mathematics and Probability Theory Fall 2013 Vazirani Note 7 An Introduction to Graphs A few centuries ago, residents of the city of Königsberg, Prussia were interested in a certain problem.

More information

INTRODUCTION TO GRAPH THEORY. 1. Definitions

INTRODUCTION TO GRAPH THEORY. 1. Definitions INTRODUCTION TO GRAPH THEORY D. JAKOBSON 1. Definitions A graph G consists of vertices {v 1, v 2,..., v n } and edges {e 1, e 2,..., e m } connecting pairs of vertices. An edge e = (uv) is incident with

More information

Math 778S Spectral Graph Theory Handout #2: Basic graph theory

Math 778S Spectral Graph Theory Handout #2: Basic graph theory Math 778S Spectral Graph Theory Handout #: Basic graph theory Graph theory was founded by the great Swiss mathematician Leonhard Euler (1707-178) after he solved the Königsberg Bridge problem: Is it possible

More information

PACKING DIGRAPHS WITH DIRECTED CLOSED TRAILS

PACKING DIGRAPHS WITH DIRECTED CLOSED TRAILS PACKING DIGRAPHS WITH DIRECTED CLOSED TRAILS PAUL BALISTER Abstract It has been shown [Balister, 2001] that if n is odd and m 1,, m t are integers with m i 3 and t i=1 m i = E(K n) then K n can be decomposed

More information

Lecture 8: The Traveling Salesman Problem

Lecture 8: The Traveling Salesman Problem Lecture 8: The Traveling Salesman Problem Let G = (V, E) be an undirected graph. A Hamiltonian cycle of G is a cycle that visits every vertex v V exactly once. Instead of Hamiltonian cycle, we sometimes

More information

V1.0: Seth Gilbert, V1.1: Steven Halim August 30, Abstract. d(e), and we assume that the distance function is non-negative (i.e., d(x, y) 0).

V1.0: Seth Gilbert, V1.1: Steven Halim August 30, Abstract. d(e), and we assume that the distance function is non-negative (i.e., d(x, y) 0). CS4234: Optimisation Algorithms Lecture 4 TRAVELLING-SALESMAN-PROBLEM (4 variants) V1.0: Seth Gilbert, V1.1: Steven Halim August 30, 2016 Abstract The goal of the TRAVELLING-SALESMAN-PROBLEM is to find

More information

Topic 10 Part 2 [474 marks]

Topic 10 Part 2 [474 marks] Topic Part 2 [474 marks] The complete graph H has the following cost adjacency matrix Consider the travelling salesman problem for H a By first finding a minimum spanning tree on the subgraph of H formed

More information

Graph Theory CS/Math231 Discrete Mathematics Spring2015

Graph Theory CS/Math231 Discrete Mathematics Spring2015 1 Graphs Definition 1 A directed graph (or digraph) G is a pair (V, E), where V is a finite set and E is a binary relation on V. The set V is called the vertex set of G, and its elements are called vertices

More information

Week 11: Eulerian and Hamiltonian graphs; Trees. 15 and 17 November, 2017

Week 11: Eulerian and Hamiltonian graphs; Trees. 15 and 17 November, 2017 (1/22) MA284 : Discrete Mathematics Week 11: Eulerian and Hamiltonian graphs; Trees http://www.maths.nuigalway.ie/~niall/ma284/ 15 and 17 November, 2017 Hamilton s Icosian Game (Library or the Royal Irish

More information

Classic Graph Theory Problems

Classic Graph Theory Problems Classic Graph Theory Problems Hiroki Sayama sayama@binghamton.edu The Origin Königsberg bridge problem Pregel River (Solved negatively by Euler in 176) Representation in a graph Can all the seven edges

More information

Chapter 11: Graphs and Trees. March 23, 2008

Chapter 11: Graphs and Trees. March 23, 2008 Chapter 11: Graphs and Trees March 23, 2008 Outline 1 11.1 Graphs: An Introduction 2 11.2 Paths and Circuits 3 11.3 Matrix Representations of Graphs 4 11.5 Trees Graphs: Basic Definitions Informally, a

More information

Basic Combinatorics. Math 40210, Section 01 Fall Homework 4 Solutions

Basic Combinatorics. Math 40210, Section 01 Fall Homework 4 Solutions Basic Combinatorics Math 40210, Section 01 Fall 2012 Homework 4 Solutions 1.4.2 2: One possible implementation: Start with abcgfjiea From edge cd build, using previously unmarked edges: cdhlponminjkghc

More information

Intermediate Math Circles Wednesday, February 22, 2017 Graph Theory III

Intermediate Math Circles Wednesday, February 22, 2017 Graph Theory III 1 Eulerian Graphs Intermediate Math Circles Wednesday, February 22, 2017 Graph Theory III Let s begin this section with a problem that you may remember from lecture 1. Consider the layout of land and water

More information

Basics of Graph Theory

Basics of Graph Theory Basics of Graph Theory 1 Basic notions A simple graph G = (V, E) consists of V, a nonempty set of vertices, and E, a set of unordered pairs of distinct elements of V called edges. Simple graphs have their

More information

Math 443/543 Graph Theory Notes 2: Transportation problems

Math 443/543 Graph Theory Notes 2: Transportation problems Math 443/543 Graph Theory Notes 2: Transportation problems David Glickenstein September 15, 2014 1 Readings This is based on Chartrand Chapter 3 and Bondy-Murty 18.1, 18.3 (part on Closure of a Graph).

More information

Characterizing Graphs (3) Characterizing Graphs (1) Characterizing Graphs (2) Characterizing Graphs (4)

Characterizing Graphs (3) Characterizing Graphs (1) Characterizing Graphs (2) Characterizing Graphs (4) S-72.2420/T-79.5203 Basic Concepts 1 S-72.2420/T-79.5203 Basic Concepts 3 Characterizing Graphs (1) Characterizing Graphs (3) Characterizing a class G by a condition P means proving the equivalence G G

More information

Worksheet 28: Wednesday November 18 Euler and Topology

Worksheet 28: Wednesday November 18 Euler and Topology Worksheet 28: Wednesday November 18 Euler and Topology The Konigsberg Problem: The Foundation of Topology The Konigsberg Bridge Problem is a very famous problem solved by Euler in 1735. The process he

More information

Approximation Algorithms

Approximation Algorithms Chapter 8 Approximation Algorithms Algorithm Theory WS 2016/17 Fabian Kuhn Approximation Algorithms Optimization appears everywhere in computer science We have seen many examples, e.g.: scheduling jobs

More information

5.5 The Travelling Salesman Problem

5.5 The Travelling Salesman Problem 0 Matchings and Independent Sets 5.5 The Travelling Salesman Problem The Travelling Salesman Problem A travelling salesman, starting in his own town, has to visit each of towns where he should go to precisely

More information

DO NOT RE-DISTRIBUTE THIS SOLUTION FILE

DO NOT RE-DISTRIBUTE THIS SOLUTION FILE Professor Kindred Math 104, Graph Theory Homework 3 Solutions February 14, 2013 Introduction to Graph Theory, West Section 2.1: 37, 62 Section 2.2: 6, 7, 15 Section 2.3: 7, 10, 14 DO NOT RE-DISTRIBUTE

More information

Graph Theory Part A. Peter Keevash

Graph Theory Part A. Peter Keevash Graph Theory Part A Peter Keevash This course provides a short introduction to Graph Theory (the mathematical theory of networks ). Our approach will be to develop the theory as it is needed for the rigorous

More information

5.1 Min-Max Theorem for General Matching

5.1 Min-Max Theorem for General Matching CSC5160: Combinatorial Optimization and Approximation Algorithms Topic: General Matching Date: 4/01/008 Lecturer: Lap Chi Lau Scribe: Jennifer X.M. WU In this lecture, we discuss matchings in general graph.

More information

Optimal tour along pubs in the UK

Optimal tour along pubs in the UK 1 From Facebook Optimal tour along 24727 pubs in the UK Road distance (by google maps) see also http://www.math.uwaterloo.ca/tsp/pubs/index.html (part of TSP homepage http://www.math.uwaterloo.ca/tsp/

More information

(Refer Slide Time: 01:00)

(Refer Slide Time: 01:00) Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras Lecture minus 26 Heuristics for TSP In this lecture, we continue our discussion

More information

Assignment 5: Solutions

Assignment 5: Solutions Algorithm Design Techniques Assignment 5: Solutions () Port Authority. [This problem is more commonly called the Bin Packing Problem.] (a) Suppose K = 3 and (w, w, w 3, w 4 ) = (,,, ). The optimal solution

More information

CHAPTER 10 GRAPHS AND TREES. Copyright Cengage Learning. All rights reserved.

CHAPTER 10 GRAPHS AND TREES. Copyright Cengage Learning. All rights reserved. CHAPTER 10 GRAPHS AND TREES Copyright Cengage Learning. All rights reserved. SECTION 10.1 Graphs: Definitions and Basic Properties Copyright Cengage Learning. All rights reserved. Graphs: Definitions and

More information

Discrete Mathematics and Probability Theory Spring 2015 Vazirani Note 5

Discrete Mathematics and Probability Theory Spring 2015 Vazirani Note 5 CS 70 Discrete Mathematics and Probability Theory Spring 2015 Vazirani Note 5 1 Graph Theory: An Introduction One of the fundamental ideas in computer science is the notion of abstraction: capturing the

More information

Module 11. Directed Graphs. Contents

Module 11. Directed Graphs. Contents Module 11 Directed Graphs Contents 11.1 Basic concepts......................... 256 Underlying graph of a digraph................ 257 Out-degrees and in-degrees.................. 258 Isomorphism..........................

More information

CMSC 451: Lecture 22 Approximation Algorithms: Vertex Cover and TSP Tuesday, Dec 5, 2017

CMSC 451: Lecture 22 Approximation Algorithms: Vertex Cover and TSP Tuesday, Dec 5, 2017 CMSC 451: Lecture 22 Approximation Algorithms: Vertex Cover and TSP Tuesday, Dec 5, 2017 Reading: Section 9.2 of DPV. Section 11.3 of KT presents a different approximation algorithm for Vertex Cover. Coping

More information

Part II. Graph Theory. Year

Part II. Graph Theory. Year Part II Year 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006 2005 2017 53 Paper 3, Section II 15H Define the Ramsey numbers R(s, t) for integers s, t 2. Show that R(s, t) exists for all s,

More information

14 More Graphs: Euler Tours and Hamilton Cycles

14 More Graphs: Euler Tours and Hamilton Cycles 14 More Graphs: Euler Tours and Hamilton Cycles 14.1 Degrees The degree of a vertex is the number of edges coming out of it. The following is sometimes called the First Theorem of Graph Theory : Lemma

More information

EECS 203 Lecture 20. More Graphs

EECS 203 Lecture 20. More Graphs EECS 203 Lecture 20 More Graphs Admin stuffs Last homework due today Office hour changes starting Friday (also in Piazza) Friday 6/17: 2-5 Mark in his office. Sunday 6/19: 2-5 Jasmine in the UGLI. Monday

More information

The University of Sydney MATH2969/2069. Graph Theory Tutorial 2 (Week 9) 2008

The University of Sydney MATH2969/2069. Graph Theory Tutorial 2 (Week 9) 2008 The University of Sydney MATH99/09 Graph Theory Tutorial (Week 9) 00. Show that the graph on the left is Hamiltonian, but that the other two are not. To show that the graph is Hamiltonian, simply find

More information

1 Variations of the Traveling Salesman Problem

1 Variations of the Traveling Salesman Problem Stanford University CS26: Optimization Handout 3 Luca Trevisan January, 20 Lecture 3 In which we prove the equivalence of three versions of the Traveling Salesman Problem, we provide a 2-approximate algorithm,

More information

Math 170- Graph Theory Notes

Math 170- Graph Theory Notes 1 Math 170- Graph Theory Notes Michael Levet December 3, 2018 Notation: Let n be a positive integer. Denote [n] to be the set {1, 2,..., n}. So for example, [3] = {1, 2, 3}. To quote Bud Brown, Graph theory

More information

Precept 4: Traveling Salesman Problem, Hierarchical Clustering. Qian Zhu 2/23/2011

Precept 4: Traveling Salesman Problem, Hierarchical Clustering. Qian Zhu 2/23/2011 Precept 4: Traveling Salesman Problem, Hierarchical Clustering Qian Zhu 2/23/2011 Agenda Assignment: Traveling salesman problem Hierarchical clustering Example Comparisons with K-means TSP TSP: Given the

More information

Number Theory and Graph Theory

Number Theory and Graph Theory 1 Number Theory and Graph Theory Chapter 6 Basic concepts and definitions of graph theory By A. Satyanarayana Reddy Department of Mathematics Shiv Nadar University Uttar Pradesh, India E-mail: satya8118@gmail.com

More information

Assignment 4 Solutions of graph problems

Assignment 4 Solutions of graph problems Assignment 4 Solutions of graph problems 1. Let us assume that G is not a cycle. Consider the maximal path in the graph. Let the end points of the path be denoted as v 1, v k respectively. If either of

More information

Introduction to Graphs

Introduction to Graphs Introduction to Graphs Historical Motivation Seven Bridges of Königsberg Königsberg (now Kaliningrad, Russia) around 1735 Problem: Find a walk through the city that would cross each bridge once and only

More information

1 The Traveling Salesperson Problem (TSP)

1 The Traveling Salesperson Problem (TSP) CS 598CSC: Approximation Algorithms Lecture date: January 23, 2009 Instructor: Chandra Chekuri Scribe: Sungjin Im In the previous lecture, we had a quick overview of several basic aspects of approximation

More information

Theory of Computing. Lecture 10 MAS 714 Hartmut Klauck

Theory of Computing. Lecture 10 MAS 714 Hartmut Klauck Theory of Computing Lecture 10 MAS 714 Hartmut Klauck Seven Bridges of Königsberg Can one take a walk that crosses each bridge exactly once? Seven Bridges of Königsberg Model as a graph Is there a path

More information

Discrete mathematics II. - Graphs

Discrete mathematics II. - Graphs Emil Vatai April 25, 2018 Basic definitions Definition of an undirected graph Definition (Undirected graph) An undirected graph or (just) a graph is a triplet G = (ϕ, E, V ), where V is the set of vertices,

More information

Graphs and Algorithms 2015

Graphs and Algorithms 2015 Graphs and Algorithms 2015 Teachers: Nikhil Bansal and Jorn van der Pol Webpage: www.win.tue.nl/~nikhil/courses/2wo08 (for up to date information, links to reading material) Goal: Have fun with discrete

More information

GRAPHS, GRAPH MODELS, GRAPH TERMINOLOGY, AND SPECIAL TYPES OF GRAPHS

GRAPHS, GRAPH MODELS, GRAPH TERMINOLOGY, AND SPECIAL TYPES OF GRAPHS GRAPHS, GRAPH MODELS, GRAPH TERMINOLOGY, AND SPECIAL TYPES OF GRAPHS DR. ANDREW SCHWARTZ, PH.D. 10.1 Graphs and Graph Models (1) A graph G = (V, E) consists of V, a nonempty set of vertices (or nodes)

More information

IE 102 Spring Routing Through Networks - 1

IE 102 Spring Routing Through Networks - 1 IE 102 Spring 2017 Routing Through Networks - 1 The Bridges of Koenigsberg: Euler 1735 Graph Theory began in 1735 Leonard Eüler Visited Koenigsberg People wondered whether it is possible to take a walk,

More information

SCHOOL OF ENGINEERING & BUILT ENVIRONMENT. Mathematics. An Introduction to Graph Theory

SCHOOL OF ENGINEERING & BUILT ENVIRONMENT. Mathematics. An Introduction to Graph Theory SCHOOL OF ENGINEERING & BUILT ENVIRONMENT Mathematics An Introduction to Graph Theory. Introduction. Definitions.. Vertices and Edges... The Handshaking Lemma.. Connected Graphs... Cut-Points and Bridges.

More information

Graph Theory. Chapter 4.

Graph Theory. Chapter 4. Graph Theory. Chapter 4. Wandering. Here is an algorithm, due to Tarry, that constructs a walk in a connected graph, starting at any vertex v 0, traversing each edge exactly once in each direction, and

More information

Traveling Salesman Problem. Algorithms and Networks 2014/2015 Hans L. Bodlaender Johan M. M. van Rooij

Traveling Salesman Problem. Algorithms and Networks 2014/2015 Hans L. Bodlaender Johan M. M. van Rooij Traveling Salesman Problem Algorithms and Networks 2014/2015 Hans L. Bodlaender Johan M. M. van Rooij 1 Contents TSP and its applications Heuristics and approximation algorithms Construction heuristics,

More information

PATH FINDING AND GRAPH TRAVERSAL

PATH FINDING AND GRAPH TRAVERSAL GRAPH TRAVERSAL PATH FINDING AND GRAPH TRAVERSAL Path finding refers to determining the shortest path between two vertices in a graph. We discussed the Floyd Warshall algorithm previously, but you may

More information

Notes for Lecture 24

Notes for Lecture 24 U.C. Berkeley CS170: Intro to CS Theory Handout N24 Professor Luca Trevisan December 4, 2001 Notes for Lecture 24 1 Some NP-complete Numerical Problems 1.1 Subset Sum The Subset Sum problem is defined

More information

Decision Problems. Observation: Many polynomial algorithms. Questions: Can we solve all problems in polynomial time? Answer: No, absolutely not.

Decision Problems. Observation: Many polynomial algorithms. Questions: Can we solve all problems in polynomial time? Answer: No, absolutely not. Decision Problems Observation: Many polynomial algorithms. Questions: Can we solve all problems in polynomial time? Answer: No, absolutely not. Definition: The class of problems that can be solved by polynomial-time

More information

Travelling Salesman Problem. Algorithms and Networks 2015/2016 Hans L. Bodlaender Johan M. M. van Rooij

Travelling Salesman Problem. Algorithms and Networks 2015/2016 Hans L. Bodlaender Johan M. M. van Rooij Travelling Salesman Problem Algorithms and Networks 2015/2016 Hans L. Bodlaender Johan M. M. van Rooij 1 Contents TSP and its applications Heuristics and approximation algorithms Construction heuristics,

More information

Characterization of Graphs with Eulerian Circuits

Characterization of Graphs with Eulerian Circuits Eulerian Circuits 3. 73 Characterization of Graphs with Eulerian Circuits There is a simple way to determine if a graph has an Eulerian circuit. Theorems 3.. and 3..2: Let G be a pseudograph that is connected

More information

IMO Training 2008: Graph Theory

IMO Training 2008: Graph Theory IMO Training 2008: Graph Theory by: Adrian Tang Email: tang @ math.ucalgary.ca This is a compilation of math problems (with motivation towards the training for the International Mathematical Olympiad)

More information

Notes 4 : Approximating Maximum Parsimony

Notes 4 : Approximating Maximum Parsimony Notes 4 : Approximating Maximum Parsimony MATH 833 - Fall 2012 Lecturer: Sebastien Roch References: [SS03, Chapters 2, 5], [DPV06, Chapters 5, 9] 1 Coping with NP-completeness Local search heuristics.

More information

Greedy algorithms Or Do the right thing

Greedy algorithms Or Do the right thing Greedy algorithms Or Do the right thing March 1, 2005 1 Greedy Algorithm Basic idea: When solving a problem do locally the right thing. Problem: Usually does not work. VertexCover (Optimization Version)

More information

1 Digraphs. Definition 1

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

More information

Figure 2.1: A bipartite graph.

Figure 2.1: A bipartite graph. Matching problems The dance-class problem. A group of boys and girls, with just as many boys as girls, want to dance together; hence, they have to be matched in couples. Each boy prefers to dance with

More information

Graph Theory. 1 Introduction to Graphs. Martin Stynes Department of Mathematics, UCC January 26, 2011

Graph Theory. 1 Introduction to Graphs. Martin Stynes Department of Mathematics, UCC   January 26, 2011 Graph Theory Martin Stynes Department of Mathematics, UCC email: m.stynes@ucc.ie January 26, 2011 1 Introduction to Graphs 1 A graph G = (V, E) is a non-empty set of nodes or vertices V and a (possibly

More information

v V Question: How many edges are there in a graph with 10 vertices each of degree 6?

v V Question: How many edges are there in a graph with 10 vertices each of degree 6? ECS20 Handout Graphs and Trees March 4, 2015 (updated 3/9) Notion of a graph 1. A graph G = (V,E) consists of V, a nonempty set of vertices (or nodes) and E, a set of pairs of elements of V called edges.

More information

Simple Graph. General Graph

Simple Graph. General Graph Graph Theory A graph is a collection of points (also called vertices) and lines (also called edges), with each edge ending at a vertex In general, it is allowed for more than one edge to have the same

More information

CS270 Combinatorial Algorithms & Data Structures Spring Lecture 19:

CS270 Combinatorial Algorithms & Data Structures Spring Lecture 19: CS270 Combinatorial Algorithms & Data Structures Spring 2003 Lecture 19: 4.1.03 Lecturer: Satish Rao Scribes: Kevin Lacker and Bill Kramer Disclaimer: These notes have not been subjected to the usual scrutiny

More information

K 4 C 5. Figure 4.5: Some well known family of graphs

K 4 C 5. Figure 4.5: Some well known family of graphs 08 CHAPTER. TOPICS IN CLASSICAL GRAPH THEORY K, K K K, K K, K K, K C C C C 6 6 P P P P P. Graph Operations Figure.: Some well known family of graphs A graph Y = (V,E ) is said to be a subgraph of a graph

More information

Graph Traversals. CSC 1300 Discrete Structures Villanova University. Villanova CSC Dr Papalaskari 1

Graph Traversals. CSC 1300 Discrete Structures Villanova University. Villanova CSC Dr Papalaskari 1 Graph Traversals CSC 1300 Discrete Structures Villanova University Villanova CSC 1300 - Dr Papalaskari 1 Graph traversals: Euler circuit/path Major Themes Every edge exactly once Hamilton circuit/path

More information

Advanced Methods in Algorithms HW 5

Advanced Methods in Algorithms HW 5 Advanced Methods in Algorithms HW 5 Written by Pille Pullonen 1 Vertex-disjoint cycle cover Let G(V, E) be a finite, strongly-connected, directed graph. Let w : E R + be a positive weight function dened

More information

Traveling Salesman Problem (TSP) Input: undirected graph G=(V,E), c: E R + Goal: find a tour (Hamiltonian cycle) of minimum cost

Traveling Salesman Problem (TSP) Input: undirected graph G=(V,E), c: E R + Goal: find a tour (Hamiltonian cycle) of minimum cost Traveling Salesman Problem (TSP) Input: undirected graph G=(V,E), c: E R + Goal: find a tour (Hamiltonian cycle) of minimum cost Traveling Salesman Problem (TSP) Input: undirected graph G=(V,E), c: E R

More information

DO NOT RE-DISTRIBUTE THIS SOLUTION FILE

DO NOT RE-DISTRIBUTE THIS SOLUTION FILE Professor Kindred Math 104, Graph Theory Homework 2 Solutions February 7, 2013 Introduction to Graph Theory, West Section 1.2: 26, 38, 42 Section 1.3: 14, 18 Section 2.1: 26, 29, 30 DO NOT RE-DISTRIBUTE

More information

Lecture 5: Graphs. Rajat Mittal. IIT Kanpur

Lecture 5: Graphs. Rajat Mittal. IIT Kanpur Lecture : Graphs Rajat Mittal IIT Kanpur Combinatorial graphs provide a natural way to model connections between different objects. They are very useful in depicting communication networks, social networks

More information

Vertex-Edge Graphs. Vertex-Edge Graphs In the Georgia Performance Standards. Sarah Holliday Southern Polytechnic State University

Vertex-Edge Graphs. Vertex-Edge Graphs In the Georgia Performance Standards. Sarah Holliday Southern Polytechnic State University Vertex-Edge Graphs Vertex-Edge Graphs In the Georgia Performance Standards Sarah Holliday Southern Polytechnic State University Math III MM3A7. Students will understand and apply matrix representations

More information

Some Upper Bounds for Signed Star Domination Number of Graphs. S. Akbari, A. Norouzi-Fard, A. Rezaei, R. Rotabi, S. Sabour.

Some Upper Bounds for Signed Star Domination Number of Graphs. S. Akbari, A. Norouzi-Fard, A. Rezaei, R. Rotabi, S. Sabour. Some Upper Bounds for Signed Star Domination Number of Graphs S. Akbari, A. Norouzi-Fard, A. Rezaei, R. Rotabi, S. Sabour Abstract Let G be a graph with the vertex set V (G) and edge set E(G). A function

More information

Salvador Sanabria History of Mathematics. Königsberg Bridge Problem

Salvador Sanabria History of Mathematics. Königsberg Bridge Problem Salvador Sanabria History of Mathematics Königsberg Bridge Problem The Problem of the Königsberg Bridge There is a famous story from Konigsberg. The city of Konigsberg, Northern Germany has a significant

More information

Graph Theory. Part of Texas Counties.

Graph Theory. Part of Texas Counties. Graph Theory Part of Texas Counties. We would like to visit each of the above counties, crossing each county only once, starting from Harris county. Is this possible? This problem can be modeled as a graph.

More information

An Introduction to Graph Theory

An Introduction to Graph Theory An Introduction to Graph Theory Evelyne Smith-Roberge University of Waterloo March 22, 2017 What is a graph? Definition A graph G is: a set V (G) of objects called vertices together with: a set E(G), of

More information

Graph Algorithms. A Brief Introduction. 高晓沨 (Xiaofeng Gao) Department of Computer Science Shanghai Jiao Tong Univ.

Graph Algorithms. A Brief Introduction. 高晓沨 (Xiaofeng Gao) Department of Computer Science Shanghai Jiao Tong Univ. Graph Algorithms A Brief Introduction 高晓沨 (Xiaofeng Gao) Department of Computer Science Shanghai Jiao Tong Univ. 目录 2015/5/7 1 Graph and Its Applications 2 Introduction to Graph Algorithms 3 References

More information

Algorithm Design and Analysis

Algorithm Design and Analysis Algorithm Design and Analysis LECTURE 29 Approximation Algorithms Load Balancing Weighted Vertex Cover Reminder: Fill out SRTEs online Don t forget to click submit Sofya Raskhodnikova 12/7/2016 Approximation

More information

Matching Theory. Figure 1: Is this graph bipartite?

Matching Theory. Figure 1: Is this graph bipartite? Matching Theory 1 Introduction A matching M of a graph is a subset of E such that no two edges in M share a vertex; edges which have this property are called independent edges. A matching M is said to

More information

Graphs: Definitions Trails, Paths, and Circuits Matrix Representations Isomorphisms. 11. Graphs and Trees 1. Aaron Tan. 30 October 3 November 2017

Graphs: Definitions Trails, Paths, and Circuits Matrix Representations Isomorphisms. 11. Graphs and Trees 1. Aaron Tan. 30 October 3 November 2017 11. Graphs and Trees 1 Aaron Tan 30 October 3 November 2017 1 The origins of graph theory are humble, even frivolous. Whereas many branches of mathematics were motivated by fundamental problems of calculation,

More information

COMP 355 Advanced Algorithms Approximation Algorithms: VC and TSP Chapter 11 (KT) Section (CLRS)

COMP 355 Advanced Algorithms Approximation Algorithms: VC and TSP Chapter 11 (KT) Section (CLRS) COMP 355 Advanced Algorithms Approximation Algorithms: VC and TSP Chapter 11 (KT) Section 35.1-35.2(CLRS) 1 Coping with NP-Completeness Brute-force search: This is usually only a viable option for small

More information

Chapter 3 Trees. 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. 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

More information

6. Lecture notes on matroid intersection

6. Lecture notes on matroid intersection Massachusetts Institute of Technology 18.453: Combinatorial Optimization Michel X. Goemans May 2, 2017 6. Lecture notes on matroid intersection One nice feature about matroids is that a simple greedy algorithm

More information