Minimum Spanning Trees

Size: px
Start display at page:

Download "Minimum Spanning Trees"

Transcription

1 Minimum Spanning Trees

2 We now know how to compute the minimum cost path from a start node to every other node in a graph. What other interesting problems can we solve using graphs?

3 onstructing a Network

4 onstructing a Network

5 onstructing a Network

6 ycle

7 A cycle in an undirected graph is a path that starts and ends at the same node.

8

9

10

11

12 Spanning Trees

13 A spanning tree in an undirected graph is a set of edges, with no cycles, that connects all nodes.

14

15

16

17

18 A minimum spanning tree (or MST) is a spanning tree with the least total cost.

19 Applications Electric Grids Given a collection of houses, where do you lay wires to connect all houses with the least total cost? This was the initial motivation for studying minimum spanning trees in the early 920's. (work done by zech mathematician Otakar Borůvka) Data lustering More on that later... Maze Generation More on that later...

20 Kruskal's Algorithm Kruskal's algorithm is an efficient algorithm for finding minimum spanning trees. Idea is as follows: Remove all edges from the graph. Place all edges into a priority queue based on their length. While the priority queue is not empty: Dequeue an edge from the priority queue. If the endpoints of the edge aren't already connected to one another, add in that edge. Otherwise, skip the edge.

21 2

22 2

23 2

24 2

25 2

26 2

27 2

28 2

29 2

30 2

31 2

32 2

33 2

34 2

35 2

36 2

37 2

38 A graph graph can can have have many many minimum minimum spanning spanning trees. trees. Here, Here, the the choice choice of of which which length- length- edge edge we we visit visit first first leads leads to to different different results. results. 2

39 2

40 2

41 2

42 2

43 2

44 2

45 2

46 2

47 2

48 2

49 2

50 2

51 2

52 2

53 2

54 2

55 2

56 2

57 2

58 2

59 2

60 2

61 2

62 2

63 Very simple algorithm, tricky proof that it produces a Minimal Spanning Tree

64 Maintaining onnectivity The key step in Kruskal's algorithm is determining whether the two endpoints of an edge are already connected to one another. Typical approach: break the nodes apart into clusters. Initially, each node is in its own cluster. Whenever an edge is added, the clusters for the endpoints are merged together into a new cluster.

65 2

66 2

67 A B D E F 2 G H I J

68 A B D E F 2 G H I J

69 A B D E F 2 D H I J

70 A B D E F 2 D H I J

71 A B D E J 2 D H I J

72 A B D E J 2 D H I J

73 A B I E J 2 I H I J

74 A B I E J 2 I H I J

75 A B I E J 2 I I I J

76 A B I E J 2 I I I J

77 A B I E J 2 I I I J

78 A B I E J 2 I I I J

79 A B E E J 2 E E E J

80 A B E E J 2 E E E J

81 A B E E J 2 E E E J

82 A B E E J 2 E E E J

83 A B E E E 2 E E E E

84 A B E E E 2 E E E E

85 A E E E E 2 E E E E

86 A E E E E 2 E E E E

87 A E E E E 2 E E E E

88 A E E E E 2 E E E E

89 A 2

90 A 2

91 A 2

92 A 2

93 A 2

94 A 2

95 A 2

96 A 2

97 A 2

98 A 2

99 2

100 2

101 Kruskal's with lusters Place every node into its own cluster. Place all edges into a priority queue. While there are two or more clusters remaining: Dequeue an edge from the priority queue. If its endpoints are not in the same cluster: Merge the clusters containing the endpoints. Add the edge to the resulting spanning tree. Return the resulting spanning tree.

102 Kruskal's with lusters Specialized data structures exist for maintaining the clusters in Kruskal's algorithm. One such structure: disjoint-set forest. Not particularly complicated. heck Wikipedia for details. Easy extra credit on the last assignment (details in a bit.)

103 Applications of Kruskal's Algorithm

104 Data lustering

105 Data lustering

106 Data lustering Given a set of points, break those points apart into clusters. Immensely useful across all disciplines: luster individuals by phenotype to try to determine what genes influence which traits. luster images by pixel color to identify objects in pictures. luster essays by various features to see how students learn to write.

107 Data lustering

108 Data lustering

109 Data lustering

110 What makes a clustering good?

111 Maximum-Separation lustering Maximum-separation clustering tries to find a clustering that maximizes the separation between different clusters. Specifically: Maximize the minimum distance between any two points of different clusters. Very good on many data sets, though not always ideal.

112 Maximum-Separation lustering

113 Maximum-Separation lustering

114 Maximum-Separation lustering It is extremely easy to adopt Kruskal's algorithm to produce a maximum-separation set of clusters. Suppose you want k clusters. Given the data set, add an edge from each node to each other node whose length depends on their similarity. Run Kruskal's algorithm until only k clusters remain. The pieces of the graph that have been linked together are k maximally-separated clusters.

115 Maximum-Separation lustering

116 Maximum-Separation lustering

117 Maximum-Separation lustering

118 Mazes with Kruskal's Algorithm

119 Mazes with Kruskal's Algorithm

120 Mazes with Kruskal's Algorithm

121 Mazes with Kruskal's Algorithm

122 Mazes with Kruskal's Algorithm

123 Mazes with Kruskal's Algorithm

124 Mazes with Kruskal's Algorithm

125 Mazes with Kruskal's Algorithm

126 Mazes with Kruskal's Algorithm

127 Mazes with Kruskal's Algorithm

128 Mazes with Kruskal's Algorithm

129 Mazes with Kruskal's Algorithm

130 Mazes with Kruskal's Algorithm

131 Mazes with Kruskal's Algorithm

132 Mazes with Kruskal's Algorithm

133 Mazes with Kruskal's Algorithm

134 Mazes with Kruskal's Algorithm

135 Mazes with Kruskal's Algorithm

136 Mazes with Kruskal's Algorithm

137 Mazes with Kruskal's Algorithm

138 Mazes with Kruskal's Algorithm

139 Mazes with Kruskal's Algorithm

140 Mazes with Kruskal's Algorithm

141 Mazes with Kruskal's Algorithm

142 Mazes with Kruskal's Algorithm

143 Mazes with Kruskal's Algorithm

144 Mazes with Kruskal's Algorithm

145 Mazes with Kruskal's Algorithm

146 Mazes with Kruskal's Algorithm

147 Mazes with Kruskal's Algorithm

148 Mazes with Kruskal's Algorithm

149 Mazes with Kruskal's Algorithm

150 Mazes with Kruskal's Algorithm

151 Mazes with Kruskal's Algorithm

152 Mazes with Kruskal's Algorithm

153 Mazes with Kruskal's Algorithm

154 Mazes with Kruskal's Algorithm

155 Other ool Graph Problems

156 Graph oloring Given a graph G, assign colors to the nodes so that no edge has endpoints of the same color. The chromatic number of a graph is the fewest number of colors needed to color it.

157 Graph oloring

158 Graph oloring is Useful

159 Graph oloring is Useful

160 Graph oloring is Useful

161 Graph oloring is Useful

162 Graph oloring is Useful

163 Graph oloring is Useful

164 Graph oloring is Useful

165 Graph oloring is Hard. No efficient algorithms are known for determining whether a graph can be colored with k colors for any k > 2. Want $,000,000? Find a polynomialtime algorithm or prove that none exists.

166 Minimum ut 0_beta/libs/graph/doc/stoer_wagner_imgs/stoer_wagner-example-min-cut.gif

167 Probabilistic Graphical Models

168 Summary of Graphs Graphs are an enormously flexible framework for encoding relationships between structures. MANY uses for graphs Want to learn more? Take S!

1 Some loose ends from last time

1 Some loose ends from last time Cornell University, Fall 2010 CS 6820: Algorithms Lecture notes: Kruskal s and Borůvka s MST algorithms September 20, 2010 1 Some loose ends from last time 1.1 A lemma concerning greedy algorithms and

More information

Minimum spanning tree

Minimum spanning tree Minimum spanning tree Jean Cousty MorphoGraph and Imagery 2011 J. Cousty : MorphoGraph and Imagery 1/17 Outline of the lecture 1 Minimum spanning tree 2 Cut theorem for MST 3 Kruskal algorithm J. Cousty

More information

Graph-theoretic Problems

Graph-theoretic Problems Graph-theoretic Problems Parallel algorithms for fundamental graph-theoretic problems: We already used a parallelization of dynamic programming to solve the all-pairs-shortest-path problem. Here we are

More information

Contents Lecture 4. Greedy graph algorithms Dijkstra s algorithm Prim s algorithm Kruskal s algorithm Union-find data structure with path compression

Contents Lecture 4. Greedy graph algorithms Dijkstra s algorithm Prim s algorithm Kruskal s algorithm Union-find data structure with path compression Contents Lecture 4 Greedy graph algorithms Dijkstra s algorithm Prim s algorithm Kruskal s algorithm Union-find data structure with path compression Jonas Skeppstedt (jonasskeppstedt.net) Lecture 4 2018

More information

CMPSCI611: The Matroid Theorem Lecture 5

CMPSCI611: The Matroid Theorem Lecture 5 CMPSCI611: The Matroid Theorem Lecture 5 We first review our definitions: A subset system is a set E together with a set of subsets of E, called I, such that I is closed under inclusion. This means that

More information

Sublinear-Time Algorithms

Sublinear-Time Algorithms Lecture 20 Sublinear-Time Algorithms Supplemental reading in CLRS: None If we settle for approximations, we can sometimes get much more efficient algorithms In Lecture 8, we saw polynomial-time approximations

More information

Undirected Graphical Models

Undirected Graphical Models Readings: K&F 4. 4.2 4.3 4.4 Undirected Graphical Models Lecture 4 pr 6 20 SE 55 Statistical Methods Spring 20 Instructor: Su-In Lee University of Washington Seattle ayesian Network Representation irected

More information

Greedy Alg: Huffman abhi shelat

Greedy Alg: Huffman abhi shelat L15 Greedy Alg: Huffman 4102 10.17.201 abhi shelat Huffman Coding image: wikimedia In testimony before the committee, Mr. Lew stressed that the Treasury Department would run out of extraordinary measures

More information

Divide-and-Conquer Algorithms Part Two

Divide-and-Conquer Algorithms Part Two Divide-and-Conquer Algorithms Part Two Recap from Last Time Divide-and-Conquer Algorithms A divide-and-conquer algorithm is one that works as follows: (Divide) Split the input apart into multiple smaller

More information

University of California Berkeley CS170: Efficient Algorithms and Intractable Problems November 19, 2001 Professor Luca Trevisan. Midterm 2 Solutions

University of California Berkeley CS170: Efficient Algorithms and Intractable Problems November 19, 2001 Professor Luca Trevisan. Midterm 2 Solutions University of California Berkeley Handout MS2 CS170: Efficient Algorithms and Intractable Problems November 19, 2001 Professor Luca Trevisan Midterm 2 Solutions Problem 1. Provide the following information:

More information

Algorithm Design and Analysis

Algorithm Design and Analysis Algorithm Design and Analysis LECTURE 8 Greedy Algorithms V Huffman Codes Adam Smith Review Questions Let G be a connected undirected graph with distinct edge weights. Answer true or false: Let e be the

More information

CS 161: Design and Analysis of Algorithms

CS 161: Design and Analysis of Algorithms CS 161: Design and Analysis of Algorithms Greedy Algorithms 3: Minimum Spanning Trees/Scheduling Disjoint Sets, continued Analysis of Kruskal s Algorithm Interval Scheduling Disjoint Sets, Continued Each

More information

Greedy Algorithms and Data Compression. Curs 2018

Greedy Algorithms and Data Compression. Curs 2018 Greedy Algorithms and Data Compression. Curs 2018 Greedy Algorithms A greedy algorithm, is a technique that always makes a locally optimal choice in the myopic hope that this choice will lead to a globally

More information

Algorithm Design and Analysis (NTU CSIE, Fall 2017) Homework #3. Homework #3. Due Time: 2017/12/14 (Thu.) 17:20 Contact TAs:

Algorithm Design and Analysis (NTU CSIE, Fall 2017) Homework #3. Homework #3. Due Time: 2017/12/14 (Thu.) 17:20 Contact TAs: Instructions and Announcements Homework #3 ue Time: 017/1/14 (Thu.) 17:0 Contact TAs: ada-ta@csie.ntu.edu.tw There are four programming problems and two handwritten problems. Programming. The judge system

More information

CS 410/584, Algorithm Design & Analysis: Lecture Notes 3

CS 410/584, Algorithm Design & Analysis: Lecture Notes 3 CS 410/584, : Lecture Notes 3 Amortized Cost Not an algorithm design mechanism per se For analyzing cost of algorithms - - Example: Exercise 17.3-6 Implement a queue with two stacks Why? 1 enqueue(x, Q)

More information

6.867 Machine learning, lecture 23 (Jaakkola)

6.867 Machine learning, lecture 23 (Jaakkola) Lecture topics: Markov Random Fields Probabilistic inference Markov Random Fields We will briefly go over undirected graphical models or Markov Random Fields (MRFs) as they will be needed in the context

More information

CSE 332. Data Abstractions

CSE 332. Data Abstractions Adam Blank Lecture 23 Autumn 2015 CSE 332 Data Abstractions CSE 332: Data Abstractions Graphs 4: Minimum Spanning Trees Final Dijkstra s Algorithm 1 1 dijkstra(g, source) { 2 dist = new Dictionary(); 3

More information

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 17: Combinatorial Problems as Linear Programs III. Instructor: Shaddin Dughmi

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 17: Combinatorial Problems as Linear Programs III. Instructor: Shaddin Dughmi CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 17: Combinatorial Problems as Linear Programs III Instructor: Shaddin Dughmi Announcements Today: Spanning Trees and Flows Flexibility awarded

More information

Minimum Spanning Trees

Minimum Spanning Trees Lecture 6 Minimum Spanning Trees In this lecture, we study another classic graph problem from the distributed point of view: minimum spanning tree construction. Definition 6.1 (Minimum Spanning Tree (MST)).

More information

3 : Representation of Undirected GM

3 : Representation of Undirected GM 10-708: Probabilistic Graphical Models 10-708, Spring 2016 3 : Representation of Undirected GM Lecturer: Eric P. Xing Scribes: Longqi Cai, Man-Chia Chang 1 MRF vs BN There are two types of graphical models:

More information

Spanning Tree Problem of Uncertain Network

Spanning Tree Problem of Uncertain Network Spanning Tree Problem of Uncertain Network Jin Peng Institute of Uncertain Systems Huanggang Normal University Hubei 438000, China Email: pengjin01@tsinghuaorgcn Shengguo Li College of Mathematics & Computer

More information

Minimal Spanning Tree From a Minimum Dominating Set

Minimal Spanning Tree From a Minimum Dominating Set Minimal Spanning Tree From a Minimum Dominating Set M. YAMUNA VIT University School of advanced sciences Vellore, Tamilnadu INDIA myamuna@vit.ac.in K. KARTHIKA VIT University School of advanced sciences

More information

Matroids and submodular optimization

Matroids and submodular optimization Matroids and submodular optimization Attila Bernáth Research fellow, Institute of Informatics, Warsaw University 23 May 2012 Attila Bernáth () Matroids and submodular optimization 23 May 2012 1 / 10 About

More information

25 : Graphical induced structured input/output models

25 : Graphical induced structured input/output models 10-708: Probabilistic Graphical Models 10-708, Spring 2013 25 : Graphical induced structured input/output models Lecturer: Eric P. Xing Scribes: Meghana Kshirsagar (mkshirsa), Yiwen Chen (yiwenche) 1 Graph

More information

Discrete Wiskunde II. Lecture 5: Shortest Paths & Spanning Trees

Discrete Wiskunde II. Lecture 5: Shortest Paths & Spanning Trees , 2009 Lecture 5: Shortest Paths & Spanning Trees University of Twente m.uetz@utwente.nl wwwhome.math.utwente.nl/~uetzm/dw/ Shortest Path Problem "#$%&'%()*%"()$#+,&- Given directed "#$%&'()*+,%+('-*.#/'01234564'.*,'7+"-%/8',&'5"4'84%#3

More information

Worksheet on Relations

Worksheet on Relations Worksheet on Relations Recall the properties that relations can have: Definition. Let R be a relation on the set A. R is reflexive if for all a A we have ara. R is irreflexive or antireflexive if for all

More information

Algorithm Design and Analysis

Algorithm Design and Analysis Algorithm Design and Analysis LECTURE 7 Greedy Graph Algorithms Shortest paths Minimum Spanning Tree Sofya Raskhodnikova 9/14/016 S. Raskhodnikova; based on slides by E. Demaine, C. Leiserson, A. Smith,

More information

Algorithm Design Strategies V

Algorithm Design Strategies V Algorithm Design Strategies V Joaquim Madeira Version 0.0 October 2016 U. Aveiro, October 2016 1 Overview The 0-1 Knapsack Problem Revisited The Fractional Knapsack Problem Greedy Algorithms Example Coin

More information

MASSACHUSETTS INSTITUTE OF TECHNOLOGY Department of Electrical Engineering and Computer Science ALGORITHMS FOR INFERENCE Fall 2014

MASSACHUSETTS INSTITUTE OF TECHNOLOGY Department of Electrical Engineering and Computer Science ALGORITHMS FOR INFERENCE Fall 2014 MASSACHUSETTS INSTITUTE OF TECHNOLOGY Department of Electrical Engineering and Computer Science 6.438 ALGORITHMS FOR INFERENCE Fall 2014 Quiz 2 Wednesday, December 10, 2014 7:00pm 10:00pm This is a closed

More information

CS781 Lecture 3 January 27, 2011

CS781 Lecture 3 January 27, 2011 CS781 Lecture 3 January 7, 011 Greedy Algorithms Topics: Interval Scheduling and Partitioning Dijkstra s Shortest Path Algorithm Minimum Spanning Trees Single-Link k-clustering Interval Scheduling Interval

More information

IS 709/809: Computational Methods in IS Research Fall Exam Review

IS 709/809: Computational Methods in IS Research Fall Exam Review IS 709/809: Computational Methods in IS Research Fall 2017 Exam Review Nirmalya Roy Department of Information Systems University of Maryland Baltimore County www.umbc.edu Exam When: Tuesday (11/28) 7:10pm

More information

25. Minimum Spanning Trees

25. Minimum Spanning Trees 695 25. Minimum Spanning Trees Motivation, Greedy, Algorithm Kruskal, General Rules, ADT Union-Find, Algorithm Jarnik, Prim, Dijkstra, Fibonacci Heaps [Ottman/Widmayer, Kap. 9.6, 6.2, 6.1, Cormen et al,

More information

25. Minimum Spanning Trees

25. Minimum Spanning Trees Problem Given: Undirected, weighted, connected graph G = (V, E, c). 5. Minimum Spanning Trees Motivation, Greedy, Algorithm Kruskal, General Rules, ADT Union-Find, Algorithm Jarnik, Prim, Dijkstra, Fibonacci

More information

Recap from Last Time

Recap from Last Time P and NP Recap from Last Time The Limits of Decidability In computability theory, we ask the question What problems can be solved by a computer? In complexity theory, we ask the question What problems

More information

2.5 Absolute Value Equations and Inequalities

2.5 Absolute Value Equations and Inequalities 5 Absolute Value Equations Inequalities We begin this section by recalling the following definition Definition: Absolute Value The absolute value of a number is the distance that the number is from zero

More information

COMPSCI 611 Advanced Algorithms Second Midterm Exam Fall 2017

COMPSCI 611 Advanced Algorithms Second Midterm Exam Fall 2017 NAME: COMPSCI 611 Advanced Algorithms Second Midterm Exam Fall 2017 A. McGregor 15 November 2017 DIRECTIONS: Do not turn over the page until you are told to do so. This is a closed book exam. No communicating

More information

Control and synchronization in systems coupled via a complex network

Control and synchronization in systems coupled via a complex network Control and synchronization in systems coupled via a complex network Chai Wah Wu May 29, 2009 2009 IBM Corporation Synchronization in nonlinear dynamical systems Synchronization in groups of nonlinear

More information

Ring Sums, Bridges and Fundamental Sets

Ring Sums, Bridges and Fundamental Sets 1 Ring Sums Definition 1 Given two graphs G 1 = (V 1, E 1 ) and G 2 = (V 2, E 2 ) we define the ring sum G 1 G 2 = (V 1 V 2, (E 1 E 2 ) (E 1 E 2 )) with isolated points dropped. So an edge is in G 1 G

More information

Greedy Algorithms My T. UF

Greedy Algorithms My T. UF Introduction to Algorithms Greedy Algorithms @ UF Overview A greedy algorithm always makes the choice that looks best at the moment Make a locally optimal choice in hope of getting a globally optimal solution

More information

Discrete Mathematics, Spring 2004 Homework 9 Sample Solutions

Discrete Mathematics, Spring 2004 Homework 9 Sample Solutions Discrete Mathematics, Spring 00 Homework 9 Sample Solutions. #3. A vertex v in a tree T is a center for T if the eccentricity of v is minimal; that is, if the maximum length of a simple path starting from

More information

Network Design and Game Theory Spring 2008 Lecture 6

Network Design and Game Theory Spring 2008 Lecture 6 Network Design and Game Theory Spring 2008 Lecture 6 Guest Lecturer: Aaron Archer Instructor: Mohammad T. Hajiaghayi Scribe: Fengming Wang March 3, 2008 1 Overview We study the Primal-dual, Lagrangian

More information

Preliminaries. Graphs. E : set of edges (arcs) (Undirected) Graph : (i, j) = (j, i) (edges) V = {1, 2, 3, 4, 5}, E = {(1, 3), (3, 2), (2, 4)}

Preliminaries. Graphs. E : set of edges (arcs) (Undirected) Graph : (i, j) = (j, i) (edges) V = {1, 2, 3, 4, 5}, E = {(1, 3), (3, 2), (2, 4)} Preliminaries Graphs G = (V, E), V : set of vertices E : set of edges (arcs) (Undirected) Graph : (i, j) = (j, i) (edges) 1 2 3 5 4 V = {1, 2, 3, 4, 5}, E = {(1, 3), (3, 2), (2, 4)} 1 Directed Graph (Digraph)

More information

CS 570: Machine Learning Seminar. Fall 2016

CS 570: Machine Learning Seminar. Fall 2016 CS 570: Machine Learning Seminar Fall 2016 Class Information Class web page: http://web.cecs.pdx.edu/~mm/mlseminar2016-2017/fall2016/ Class mailing list: cs570@cs.pdx.edu My office hours: T,Th, 2-3pm or

More information

FINAL EXAM PRACTICE PROBLEMS CMSC 451 (Spring 2016)

FINAL EXAM PRACTICE PROBLEMS CMSC 451 (Spring 2016) FINAL EXAM PRACTICE PROBLEMS CMSC 451 (Spring 2016) The final exam will be on Thursday, May 12, from 8:00 10:00 am, at our regular class location (CSI 2117). It will be closed-book and closed-notes, except

More information

10.3 Matroids and approximation

10.3 Matroids and approximation 10.3 Matroids and approximation 137 10.3 Matroids and approximation Given a family F of subsets of some finite set X, called the ground-set, and a weight function assigning each element x X a non-negative

More information

Similar Shapes and Gnomons

Similar Shapes and Gnomons Similar Shapes and Gnomons May 12, 2013 1. Similar Shapes For now, we will say two shapes are similar if one shape is a magnified version of another. 1. In the picture below, the square on the left is

More information

Large Cliques and Stable Sets in Undirected Graphs

Large Cliques and Stable Sets in Undirected Graphs Large Cliques and Stable Sets in Undirected Graphs Maria Chudnovsky Columbia University, New York NY 10027 May 4, 2014 Abstract The cochromatic number of a graph G is the minimum number of stable sets

More information

Electric Fields and Equipotentials

Electric Fields and Equipotentials Electric Fields and Equipotentials Note: There is a lot to do in this lab. If you waste time doing the first parts, you will not have time to do later ones. Please read this handout before you come to

More information

CS173 Lecture B, November 3, 2015

CS173 Lecture B, November 3, 2015 CS173 Lecture B, November 3, 2015 Tandy Warnow November 3, 2015 CS 173, Lecture B November 3, 2015 Tandy Warnow Announcements Examlet 7 is a take-home exam, and is due November 10, 11:05 AM, in class.

More information

Week Cuts, Branch & Bound, and Lagrangean Relaxation

Week Cuts, Branch & Bound, and Lagrangean Relaxation Week 11 1 Integer Linear Programming This week we will discuss solution methods for solving integer linear programming problems. I will skip the part on complexity theory, Section 11.8, although this is

More information

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

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

More information

CS 70 Discrete Mathematics and Probability Theory Fall 2016 Seshia and Walrand Midterm 1 Solutions

CS 70 Discrete Mathematics and Probability Theory Fall 2016 Seshia and Walrand Midterm 1 Solutions CS 70 Discrete Mathematics and Probability Theory Fall 2016 Seshia and Walrand Midterm 1 Solutions PRINT Your Name: Answer: Oski Bear SIGN Your Name: PRINT Your Student ID: CIRCLE your exam room: Dwinelle

More information

Channel Coding: Zero-error case

Channel Coding: Zero-error case Channel Coding: Zero-error case Information & Communication Sander Bet & Ismani Nieuweboer February 05 Preface We would like to thank Christian Schaffner for guiding us in the right direction with our

More information

CSE613: Parallel Programming, Spring 2012 Date: May 11. Final Exam. ( 11:15 AM 1:45 PM : 150 Minutes )

CSE613: Parallel Programming, Spring 2012 Date: May 11. Final Exam. ( 11:15 AM 1:45 PM : 150 Minutes ) CSE613: Parallel Programming, Spring 2012 Date: May 11 Final Exam ( 11:15 AM 1:45 PM : 150 Minutes ) This exam will account for either 10% or 20% of your overall grade depending on your relative performance

More information

Lecture 12: May 09, Decomposable Graphs (continues from last time)

Lecture 12: May 09, Decomposable Graphs (continues from last time) 596 Pat. Recog. II: Introduction to Graphical Models University of Washington Spring 00 Dept. of lectrical ngineering Lecture : May 09, 00 Lecturer: Jeff Bilmes Scribe: Hansang ho, Izhak Shafran(000).

More information

Discrete Event Simulation. Motive

Discrete Event Simulation. Motive Discrete Event Simulation These slides are created by Dr. Yih Huang of George Mason University. Students registered in Dr. Huang's courses at GMU can make a single machine-readable copy and print a single

More information

Show that the following problems are NP-complete

Show that the following problems are NP-complete Show that the following problems are NP-complete April 7, 2018 Below is a list of 30 exercises in which you are asked to prove that some problem is NP-complete. The goal is to better understand the theory

More information

abhi shelat

abhi shelat L15 4102.17.2016 abhi shelat Huffman image: wikimedia Alice m Bob m Alice m Bob MOSCOW President Vladimir V. Putin s typically theatrical order to withdraw the bulk of Russian forces from Syria, a process

More information

Breadth First Search, Dijkstra s Algorithm for Shortest Paths

Breadth First Search, Dijkstra s Algorithm for Shortest Paths CS 374: Algorithms & Models of Computation, Spring 2017 Breadth First Search, Dijkstra s Algorithm for Shortest Paths Lecture 17 March 1, 2017 Chandra Chekuri (UIUC) CS374 1 Spring 2017 1 / 42 Part I Breadth

More information

Independencies. Undirected Graphical Models 2: Independencies. Independencies (Markov networks) Independencies (Bayesian Networks)

Independencies. Undirected Graphical Models 2: Independencies. Independencies (Markov networks) Independencies (Bayesian Networks) (Bayesian Networks) Undirected Graphical Models 2: Use d-separation to read off independencies in a Bayesian network Takes a bit of effort! 1 2 (Markov networks) Use separation to determine independencies

More information

Discrete Optimization 2010 Lecture 2 Matroids & Shortest Paths

Discrete Optimization 2010 Lecture 2 Matroids & Shortest Paths Matroids Shortest Paths Discrete Optimization 2010 Lecture 2 Matroids & Shortest Paths Marc Uetz University of Twente m.uetz@utwente.nl Lecture 2: sheet 1 / 25 Marc Uetz Discrete Optimization Matroids

More information

Section Handout 5 Solutions

Section Handout 5 Solutions CS 188 Spring 2019 Section Handout 5 Solutions Approximate Q-Learning With feature vectors, we can treat values of states and q-states as linear value functions: V (s) = w 1 f 1 (s) + w 2 f 2 (s) +...

More information

Announcements. Friday Four Square! Problem Set 8 due right now. Problem Set 9 out, due next Friday at 2:15PM. Did you lose a phone in my office?

Announcements. Friday Four Square! Problem Set 8 due right now. Problem Set 9 out, due next Friday at 2:15PM. Did you lose a phone in my office? N P NP Completeness Announcements Friday Four Square! Today at 4:15PM, outside Gates. Problem Set 8 due right now. Problem Set 9 out, due next Friday at 2:15PM. Explore P, NP, and their connection. Did

More information

1 Undirected Graphical Models. 2 Markov Random Fields (MRFs)

1 Undirected Graphical Models. 2 Markov Random Fields (MRFs) Machine Learning (ML, F16) Lecture#07 (Thursday Nov. 3rd) Lecturer: Byron Boots Undirected Graphical Models 1 Undirected Graphical Models In the previous lecture, we discussed directed graphical models.

More information

Algorithm Design and Analysis

Algorithm Design and Analysis Algorithm Design and Analysis LECTURE 5 Greedy Algorithms Interval Scheduling Interval Partitioning Guest lecturer: Martin Furer Review In a DFS tree of an undirected graph, can there be an edge (u,v)

More information

COP 4531 Complexity & Analysis of Data Structures & Algorithms

COP 4531 Complexity & Analysis of Data Structures & Algorithms COP 4531 Complexity & Analysis of Data Structures & Algorithms Lecture 18 Reductions and NP-completeness Thanks to Kevin Wayne and the text authors who contributed to these slides Classify Problems According

More information

Efficient Algorithms and Intractable Problems Spring 2016 Alessandro Chiesa and Umesh Vazirani Midterm 2

Efficient Algorithms and Intractable Problems Spring 2016 Alessandro Chiesa and Umesh Vazirani Midterm 2 CS 170 Efficient Algorithms and Intractable Problems Spring 2016 Alessandro Chiesa and Umesh Vazirani Midterm 2 Name: SID: GSI and section time: Write down the names of the students around you as they

More information

Definition: Absolute Value The absolute value of a number is the distance that the number is from zero. The absolute value of x is written x.

Definition: Absolute Value The absolute value of a number is the distance that the number is from zero. The absolute value of x is written x. R. Absolute Values We begin this section by recalling the following definition. Definition: Absolute Value The absolute value of a number is the distance that the number is from zero. The absolute value

More information

3 Undirected Graphical Models

3 Undirected Graphical Models Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science 6.438 Algorithms For Inference Fall 2014 3 Undirected Graphical Models In this lecture, we discuss undirected

More information

ACO Comprehensive Exam March 20 and 21, Computability, Complexity and Algorithms

ACO Comprehensive Exam March 20 and 21, Computability, Complexity and Algorithms 1. Computability, Complexity and Algorithms Part a: You are given a graph G = (V,E) with edge weights w(e) > 0 for e E. You are also given a minimum cost spanning tree (MST) T. For one particular edge

More information

MATH 408N PRACTICE MIDTERM 1

MATH 408N PRACTICE MIDTERM 1 02/0/202 Bormashenko MATH 408N PRACTICE MIDTERM Show your work for all the problems. Good luck! () (a) [5 pts] Solve for x if 2 x+ = 4 x Name: TA session: Writing everything as a power of 2, 2 x+ = (2

More information

GUIDED NOTES 4.1 LINEAR FUNCTIONS

GUIDED NOTES 4.1 LINEAR FUNCTIONS GUIDED NOTES 4.1 LINEAR FUNCTIONS LEARNING OBJECTIVES In this section, you will: Represent a linear function. Determine whether a linear function is increasing, decreasing, or constant. Interpret slope

More information

4 The Cartesian Coordinate System- Pictures of Equations

4 The Cartesian Coordinate System- Pictures of Equations 4 The Cartesian Coordinate System- Pictures of Equations Concepts: The Cartesian Coordinate System Graphs of Equations in Two Variables x-intercepts and y-intercepts Distance in Two Dimensions and the

More information

9 Forward-backward algorithm, sum-product on factor graphs

9 Forward-backward algorithm, sum-product on factor graphs Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science 6.438 Algorithms For Inference Fall 2014 9 Forward-backward algorithm, sum-product on factor graphs The previous

More information

COMPSCI 611 Advanced Algorithms Second Midterm Exam Fall 2017

COMPSCI 611 Advanced Algorithms Second Midterm Exam Fall 2017 NAME: COMPSCI 611 Advanced Algorithms Second Midterm Exam Fall 2017 A. McGregor 15 November 2017 DIRECTIONS: Do not turn over the page until you are told to do so. This is a closed book exam. No communicating

More information

CMPSCI 611 Advanced Algorithms Midterm Exam Fall 2015

CMPSCI 611 Advanced Algorithms Midterm Exam Fall 2015 NAME: CMPSCI 611 Advanced Algorithms Midterm Exam Fall 015 A. McGregor 1 October 015 DIRECTIONS: Do not turn over the page until you are told to do so. This is a closed book exam. No communicating with

More information

CS 580: Algorithm Design and Analysis

CS 580: Algorithm Design and Analysis CS 580: Algorithm Design and Analysis Jeremiah Blocki Purdue University Spring 2018 Reminder: Homework 1 due tonight at 11:59PM! Recap: Greedy Algorithms Interval Scheduling Goal: Maximize number of meeting

More information

Name Date CUMULATIVE TEST FOR LESSON CLUSTERS 1-4

Name Date CUMULATIVE TEST FOR LESSON CLUSTERS 1-4 Cumulative Test 1 Name Date CUMULATIVE TEST FOR LESSON CLUSTERS 1-4 1. Why can you change ice into water but not into glass? 2. Why can't you see air? 3. Describe the ways in which ice, liquid water, and

More information

Term Definition Example. 3-D shapes or (3 dimensional) acute angle. addend. algorithm. area of a rectangle. array

Term Definition Example. 3-D shapes or (3 dimensional) acute angle. addend. algorithm. area of a rectangle. array Term Definition Example 3-D shapes or (3 dimensional) an object that has height, width, and depth, like any object in the real world. acute angle an angle that is less than 90 addend a number that is added

More information

10.7 Polynomial and Rational Inequalities

10.7 Polynomial and Rational Inequalities 10.7 Polynomial and Rational Inequalities In this section we want to turn our attention to solving polynomial and rational inequalities. That is, we want to solve inequalities like 5 4 0. In order to do

More information

Greedy Algorithms and Data Compression. Curs 2017

Greedy Algorithms and Data Compression. Curs 2017 Greedy Algorithms and Data Compression. Curs 2017 Greedy Algorithms An optimization problem: Given of (S, f ), where S is a set of feasible elements and f : S R is the objective function, find a u S, which

More information

Recitation 9: Graphical Models: D-separation, Variable Elimination and Inference

Recitation 9: Graphical Models: D-separation, Variable Elimination and Inference 10-601b: Machine Learning, Spring 2014 Recitation 9: Graphical Models: -separation, Variable limination and Inference Jing Xiang March 18, 2014 1 -separation Let s start by getting some intuition about

More information

CS 350 Algorithms and Complexity

CS 350 Algorithms and Complexity 1 CS 350 Algorithms and Complexity Fall 2015 Lecture 15: Limitations of Algorithmic Power Introduction to complexity theory Andrew P. Black Department of Computer Science Portland State University Lower

More information

ECE 6504: Advanced Topics in Machine Learning Probabilistic Graphical Models and Large-Scale Learning

ECE 6504: Advanced Topics in Machine Learning Probabilistic Graphical Models and Large-Scale Learning ECE 6504: Advanced Topics in Machine Learning Probabilistic Graphical Models and Large-Scale Learning Topics Markov Random Fields: Representation Conditional Random Fields Log-Linear Models Readings: KF

More information

Computational Boolean Algebra. Pingqiang Zhou ShanghaiTech University

Computational Boolean Algebra. Pingqiang Zhou ShanghaiTech University Computational Boolean Algebra Pingqiang Zhou ShanghaiTech University Announcements Written assignment #1 is out. Due: March 24 th, in class. Programming assignment #1 is out. Due: March 24 th, 11:59PM.

More information

15.1 Matching, Components, and Edge cover (Collaborate with Xin Yu)

15.1 Matching, Components, and Edge cover (Collaborate with Xin Yu) 15.1 Matching, Components, and Edge cover (Collaborate with Xin Yu) First show l = c by proving l c and c l. For a maximum matching M in G, let V be the set of vertices covered by M. Since any vertex in

More information

COMP Analysis of Algorithms & Data Structures

COMP Analysis of Algorithms & Data Structures COMP 3170 - Analysis of Algorithms & Data Structures Shahin Kamali Computational Complexity CLRS 34.1-34.4 University of Manitoba COMP 3170 - Analysis of Algorithms & Data Structures 1 / 50 Polynomial

More information

P P P NP-Hard: L is NP-hard if for all L NP, L L. Thus, if we could solve L in polynomial. Cook's Theorem and Reductions

P P P NP-Hard: L is NP-hard if for all L NP, L L. Thus, if we could solve L in polynomial. Cook's Theorem and Reductions Summary of the previous lecture Recall that we mentioned the following topics: P: is the set of decision problems (or languages) that are solvable in polynomial time. NP: is the set of decision problems

More information

Bayesian Networks. Motivation

Bayesian Networks. Motivation Bayesian Networks Computer Sciences 760 Spring 2014 http://pages.cs.wisc.edu/~dpage/cs760/ Motivation Assume we have five Boolean variables,,,, The joint probability is,,,, How many state configurations

More information

Mathematical Induction Part Two

Mathematical Induction Part Two Mathematical Induction Part Two Recap from Last Time Let P be some predicate. The principle of mathematical induction states that if If it starts true and it stays P(0) is true true and k ℕ. (P(k) P(k+1))

More information

INTRO TO COMPUTATIONAL COMPLEXITY

INTRO TO COMPUTATIONAL COMPLEXITY MA/CSSE 473 Day 38 Problems Decision Problems P and NP Polynomial time algorithms INTRO TO COMPUTATIONAL COMPLEXITY 1 The Law of the Algorithm Jungle Polynomial good, exponential bad! The latter is obvious,

More information

An Intuitive Introduction to Motivic Homotopy Theory Vladimir Voevodsky

An Intuitive Introduction to Motivic Homotopy Theory Vladimir Voevodsky What follows is Vladimir Voevodsky s snapshot of his Fields Medal work on motivic homotopy, plus a little philosophy and from my point of view the main fun of doing mathematics Voevodsky (2002). Voevodsky

More information

Multiple Whole Genome Alignment

Multiple Whole Genome Alignment Multiple Whole Genome Alignment BMI/CS 776 www.biostat.wisc.edu/bmi776/ Spring 206 Anthony Gitter gitter@biostat.wisc.edu These slides, excluding third-party material, are licensed under CC BY-NC 4.0 by

More information

SCI Scientific Investigation_KES

SCI Scientific Investigation_KES SCI-4 4.1 Scientific Investigation_KES [Exam ID:0AJF30] Scan Number:17120 1 Which statement is a prediction? A The frog stayed on the log for 4 minutes. B The frog has stripes. C The frog will jump off

More information

Class Note #20. In today s class, the following four concepts were introduced: decision

Class Note #20. In today s class, the following four concepts were introduced: decision Class Note #20 Date: 03/29/2006 [Overall Information] In today s class, the following four concepts were introduced: decision version of a problem, formal language, P and NP. We also discussed the relationship

More information

Undirected Graphs. V = { 1, 2, 3, 4, 5, 6, 7, 8 } E = { 1-2, 1-3, 2-3, 2-4, 2-5, 3-5, 3-7, 3-8, 4-5, 5-6 } n = 8 m = 11

Undirected Graphs. V = { 1, 2, 3, 4, 5, 6, 7, 8 } E = { 1-2, 1-3, 2-3, 2-4, 2-5, 3-5, 3-7, 3-8, 4-5, 5-6 } n = 8 m = 11 Undirected Graphs Undirected graph. G = (V, E) V = nodes. E = edges between pairs of nodes. Captures pairwise relationship between objects. Graph size parameters: n = V, m = E. V = {, 2, 3,,,, 7, 8 } E

More information

Greedy Algorithms. CSE 101: Design and Analysis of Algorithms Lecture 10

Greedy Algorithms. CSE 101: Design and Analysis of Algorithms Lecture 10 Greedy Algorithms CSE 101: Design and Analysis of Algorithms Lecture 10 CSE 101: Design and analysis of algorithms Greedy algorithms Reading: Kleinberg and Tardos, sections 4.1, 4.2, and 4.3 Homework 4

More information

Homework 1 2/7/2018 SOLUTIONS Exercise 1. (a) Graph the following sets (i) C = {x R x in Z} Answer:

Homework 1 2/7/2018 SOLUTIONS Exercise 1. (a) Graph the following sets (i) C = {x R x in Z} Answer: Homework 1 2/7/2018 SOLTIONS Eercise 1. (a) Graph the following sets (i) C = { R in Z} nswer: 0 R (ii) D = {(, y), y in R,, y 2}. nswer: = 2 y y = 2 (iii) C C nswer: y 1 2 (iv) (C C) D nswer: = 2 y y =

More information

Fall Math 140 Week-in-Review #5 courtesy: Kendra Kilmer (covering Sections 3.4 and 4.1) Section 3.4

Fall Math 140 Week-in-Review #5 courtesy: Kendra Kilmer (covering Sections 3.4 and 4.1) Section 3.4 Section 3.4 A Standard Maximization Problem has the following properties: The objective function is to be maximized. All variables are non-negative. Fall 2017 Math 140 Week-in-Review #5 courtesy: Kendra

More information

Lecture 14: Random Walks, Local Graph Clustering, Linear Programming

Lecture 14: Random Walks, Local Graph Clustering, Linear Programming CSE 521: Design and Analysis of Algorithms I Winter 2017 Lecture 14: Random Walks, Local Graph Clustering, Linear Programming Lecturer: Shayan Oveis Gharan 3/01/17 Scribe: Laura Vonessen Disclaimer: These

More information