Math 381 Discrete Mathematical Modeling
|
|
- Frederick Flowers
- 5 years ago
- Views:
Transcription
1 Math 381 Discrete Mathematical Modeling Sean Griffin Today: -Equipment Replacement Problem -Min Spanning Tree Problem -Clustering
2 Friday s Plan Intro to LPSolve software Download before class (link on course webpage) Bring laptop to class if you have one!
3 Shortest Path Problem Dijkstra s algorithm Last Time:
4 Application: Equipment Replacement Suppose I want to plan out my car purchases for the next years.
5 Application: Equipment Replacement Suppose I want to plan out my car purchases for the next years. Say a new car costs $1, 000. The cost of maintaining a car during a year depends on its age at the beginning of the year:
6 Application: Equipment Replacement Suppose I want to plan out my car purchases for the next years. Say a new car costs $1, 000. The cost of maintaining a car during a year depends on its age at the beginning of the year: To avoid paying a high maintenance cost for an old car, I may trade in my car and purchase a new car. The trade-in price depends on the age of the car. Age of car Annual Maintenance Trade-in Price
7 Application: Equipment Replacement Suppose I want to plan out my car purchases for the next years. Say a new car costs $1, 000. The cost of maintaining a car during a year depends on its age at the beginning of the year: To avoid paying a high maintenance cost for an old car, I may trade in my car and purchase a new car. The trade-in price depends on the age of the car. Goal: Minimize the net cost = (purchasing cost + maintenance cost money from trade-ins), during the next five years. Age of car Annual Maintenance Trade-in Price
8 V = {1,, 3,,, } Equipment Replacement Graph Node i represents the beginning of year i. E the set of directed edges (i, j) for 1 i < j Edge (i, j) represents buying a car at beginning of year i, and keeping it until beginning of year j. Cost c i,j = Total net cost of purchasing a car in beginning of year i, and trading it in at beginning of year j. = maintenance cost incurred in years i through j 1 + cost of purchasing car at beginning of year i trade-in value received at beginning of year j
9 Equipment Replacement Graph c 1 =, , 000 7, 000 = 7, 000 c 13 = (, 000 +, 000) + 1, 000, 000 = 1, 000 c 1 = (, 000 +, 000 +, 000) + 1, 000, 000 = 1, 000 c 3 = (, 000) + 1, 000 7, 000 = 7, The min cost 1 path tells me when to buy a new car. Homework Exercise 1: Compute the minimum cost path on a smaller version of this graph.
10 Minimum Spanning Tree Problem
11 Motivating Problem Suppose the UW has five supercomputers. The distance between each pair of computers is given by the following graph with edge costs: 1 3 The computers must be interconnected by cable. Question: What is the minimum length of cable required?
12 Min Spanning Tree Problem (setup) Let G be a simple undirected graph, vertices V and edges E. We say G is connected if there is a path between any two vertices in the graph. Connected One connected component. Not Connected Two connected components.
13 Min Spanning Tree Problem (setup) A cycle in G is a path of edges, which starts and ends at the same vertex, and no other vertex is repeated along the way. Formally, it is a sequence of edges e 1, e,..., e k, where e 1 = {v 0, v 1 }, e = {v 1, v },..., e k = {v k 1, v 0 }.
14 Min Spanning Tree Problem (setup) A cycle in G is a path of edges, which starts and ends at the same vertex, and no other vertex is repeated along the way. Formally, it is a sequence of edges e 1, e,..., e k, where e 1 = {v 0, v 1 }, e = {v 1, v },..., e k = {v k 1, v 0 }. e e 1 v 0 v 1 v v 3 e e 3
15 Min Spanning Tree (setup) A collection of edges U E is spanning if every vertex v V is on some edge in U.
16 Min Spanning Tree (setup) A collection of edges U E is spanning if every vertex v V is on some edge in U.
17 Min Spanning Tree (setup) A collection of edges U E is spanning if every vertex v V is on some edge in U. A collection of edges U E is a spanning tree if: (1) U is spanning. () U is connected. (3) U does not contain any cycles.
18 Min Spanning Tree (setup) A collection of edges U E is spanning if every vertex v V is on some edge in U. A collection of edges U E is a spanning tree if: (1) U is spanning. () U is connected. (3) U does not contain any cycles. Spanning, but contains a cycle.
19 Min Spanning Tree (setup) A collection of edges U E is spanning if every vertex v V is on some edge in U. A collection of edges U E is a spanning tree if: (1) U is spanning. () U is connected. (3) U does not contain any cycles. Spanning, but contains a cycle. Spanning Tree
20 Kruskal s Algorithm Minimum Spanning Tree Problem Input: Undirected graph G, costs c e R for all e E. Output: A spanning tree T E minimizing c(t ) := e T c e.
21 Kruskal s Algorithm Minimum Spanning Tree Problem Input: Undirected graph G, costs c e R for all e E. Output: A spanning tree T E minimizing c(t ) := e T c e. The solution is to be... GREEDY!
22 Kruskal s Algorithm Minimum Spanning Tree Problem Input: Undirected graph G, costs c e R for all e E. Output: A spanning tree T E minimizing c(t ) := e T c e. Kruskal s Algorithm Input: A connected graph G with costs c e R for all e E. Output: A minimum spanning tree T of G. (1) Sort the edges so that c e1 c e c em () Set T =. (3) For i = 1,..., m, do: If T {e i } does not contain a cycle: Update T := T {e i }.
23 Example 1 3
24 Example
25 Example
26 Example
27 Example
28 Example We don t add the edge 3, since it would create a cycle!
29 Example We don t add the edge 3, since it would create a cycle!
30 Example We don t add the edge 3, since it would create a cycle! Nor edge for the same reason! 1 3
31 Example We don t add the edge 3, since it would create a cycle! Nor edge for the same reason! 1 3
32 Example We don t add the edge 3, since it would create a cycle! Nor edge for the same reason! Finally, we have a spanning tree, so we stop. The minimum cost of a spanning tree is thus = 9. So 9 units of cable are required to connect the supercomputers. 1 3
33 Idea for Correctness of Kruskal s Why does Kruskal s algorithm output a minimal spanning tree?
34 Idea for Correctness of Kruskal s Why does Kruskal s algorithm output a minimal spanning tree? The basic idea is to prove that, if T is the final output of the algorithm, then there are no edge swaps that can improve T.
35 Idea for Correctness of Kruskal s Why does Kruskal s algorithm output a minimal spanning tree? The basic idea is to prove that, if T is the final output of the algorithm, then there are no edge swaps that can improve T. In other words, if you try to swap a more expensive edge for a less expensive edge, T will no longer be a minimal spanning tree.
36 Idea for Correctness of Kruskal s Why does Kruskal s algorithm output a minimal spanning tree? The basic idea is to prove that, if T is the final output of the algorithm, then there are no edge swaps that can improve T. In other words, if you try to swap a more expensive edge for a less expensive edge, T will no longer be a minimal spanning tree. 1 3
37 Idea for Correctness of Kruskal s Why does Kruskal s algorithm output a minimal spanning tree? The basic idea is to prove that, if T is the final output of the algorithm, then there are no edge swaps that can improve T. In other words, if you try to swap a more expensive edge for a less expensive edge, T will no longer be a minimal spanning tree. 1 3
38 Application: Clustering Given: n points in space, the data of the pairwise distances between any two of these points, and a number k. Problem: Divide the points into k clusters so that the minimum distance between items in different groups is maximized.
39 Application: Clustering Given: n points in space, the data of the pairwise distances between any two of these points, and a number k. Problem: Divide the points into k clusters so that the minimum distance between items in different groups is maximized.
40 Application: Clustering Given: n points in space, the data of the pairwise distances between any two of these points, and a number k. Problem: Divide the points into k clusters so that the minimum distance between items in different groups is maximized. C 1 a C c C 3 Want min{a, b, c} to be large. Call this number the separation of the clustering. b
41 Idea of Algorithm: Application: Clustering Create the graph whose vertices are the points, edges between any two of the points. Cost is the distance between two points. Run Kruskal s Algorithm until the set of edges T has k connected components, then stop. The k connected components are the clusters.
42 k = 3
43 k = 3
44 k = 3
45 k = 3
46 k = 3
47 k = 3
48 k = 3
49 Proof of Correctness Another perspective: Find the minimum spanning tree, then delete the k 1 edges with the highest costs. C 1 C d C 3 Say d = distance of the smallest of these deleted edges. Then the spacing between any two of the clusters is at least d. If C is a different clustering of the points with k clusters, there must be two points p and q which are in the same cluster in C but in different clusters in C.
50 Proof of Correctness If C is a different clustering of the points with k clusters, there must be two points p and q which are in the same cluster in C but in different clusters in C. C m C l p C i q Say p, q C i. Since C i is a connected component, there is a path between the two points in the min spanning tree There must be some edge on this path which passes between clusters C m and C l. Each edge on the path must be distance d, so the distance between C m and C l is d. Hence, the separation of the clustering C is at most d.
51 Question What is a specific example of a real-world problem you might solve with a clustering algorithm?
52 Question What is a specific example of a real-world problem you might solve with a clustering algorithm? Computer vision
53 Next Time Intro to LPSolve software Download before class (link on course webpage) Bring laptop to class if you have one! Converting graph problems to 0-1 IP s
54 References Old to New car image: Greedy pig: pic with logo/179/ vector-a-vector-illustration-of-greedy-cartoon-pig-holdingarmful-of-money jpg
Minimum-Cost Spanning Tree. Example
Minimum-Cost Spanning Tree weighted connected undirected graph spanning tree cost of spanning tree is sum of edge costs find spanning tree that has minimum cost Example 2 4 12 6 3 Network has 10 edges.
More informationWeek 12: Minimum Spanning trees and Shortest Paths
Agenda: Week 12: Minimum Spanning trees and Shortest Paths Kruskal s Algorithm Single-source shortest paths Dijkstra s algorithm for non-negatively weighted case Reading: Textbook : 61-7, 80-87, 9-601
More informationExample. Minimum-Cost Spanning Tree. Edge Selection Greedy Strategies. Edge Selection Greedy Strategies
Minimum-Cost Spanning Tree weighted connected undirected graph spanning tree cost of spanning tree is sum of edge costs find spanning tree that has minimum cost Example 2 4 12 6 3 Network has 10 edges.
More informationCIS 121 Data Structures and Algorithms Minimum Spanning Trees
CIS 121 Data Structures and Algorithms Minimum Spanning Trees March 19, 2019 Introduction and Background Consider a very natural problem: we are given a set of locations V = {v 1, v 2,..., v n }. We want
More informationCS 6783 (Applied Algorithms) Lecture 5
CS 6783 (Applied Algorithms) Lecture 5 Antonina Kolokolova January 19, 2012 1 Minimum Spanning Trees An undirected graph G is a pair (V, E); V is a set (of vertices or nodes); E is a set of (undirected)
More informationMinimum Spanning Trees
CSMPS 2200 Fall Minimum Spanning Trees Carola Wenk Slides courtesy of Charles Leiserson with changes and additions by Carola Wenk 11/6/ CMPS 2200 Intro. to Algorithms 1 Minimum spanning trees Input: A
More informationGraph Algorithms (part 3 of CSC 282),
Graph Algorithms (part of CSC 8), http://www.cs.rochester.edu/~stefanko/teaching/10cs8 1 Schedule Homework is due Thursday, Oct 1. The QUIZ will be on Tuesday, Oct. 6. List of algorithms covered in the
More informationmanaging an evolving set of connected components implementing a Union-Find data structure implementing Kruskal s algorithm
Spanning Trees 1 Spanning Trees the minimum spanning tree problem three greedy algorithms analysis of the algorithms 2 The Union-Find Data Structure managing an evolving set of connected components implementing
More informationLecture 34 Fall 2018 Wednesday November 28
Greedy Algorithms Oliver W. Layton CS231: Data Structures and Algorithms Lecture 34 Fall 2018 Wednesday November 28 Plan Friday office hours: 3-4pm instead of 1-2pm Dijkstra's algorithm example Minimum
More informationCPS 102: Discrete Mathematics. Quiz 3 Date: Wednesday November 30, Instructor: Bruce Maggs NAME: Prob # Score. Total 60
CPS 102: Discrete Mathematics Instructor: Bruce Maggs Quiz 3 Date: Wednesday November 30, 2011 NAME: Prob # Score Max Score 1 10 2 10 3 10 4 10 5 10 6 10 Total 60 1 Problem 1 [10 points] Find a minimum-cost
More informationGraph Algorithms (part 3 of CSC 282),
Graph Algorithms (part of CSC 8), http://www.cs.rochester.edu/~stefanko/teaching/11cs8 Homework problem sessions are in CSB 601, 6:1-7:1pm on Oct. (Wednesday), Oct. 1 (Wednesday), and on Oct. 19 (Wednesday);
More informationMinimum Spanning Tree
Minimum Spanning Tree 1 Minimum Spanning Tree G=(V,E) is an undirected graph, where V is a set of nodes and E is a set of possible interconnections between pairs of nodes. For each edge (u,v) in E, we
More informationProblem set 2. Problem 1. Problem 2. Problem 3. CS261, Winter Instructor: Ashish Goel.
CS261, Winter 2017. Instructor: Ashish Goel. Problem set 2 Electronic submission to Gradescope due 11:59pm Thursday 2/16. Form a group of 2-3 students that is, submit one homework with all of your names.
More informationGreedy Algorithms 1 {K(S) K(S) C} For large values of d, brute force search is not feasible because there are 2 d {1,..., d}.
Greedy Algorithms 1 Simple Knapsack Problem Greedy Algorithms form an important class of algorithmic techniques. We illustrate the idea by applying it to a simplified version of the Knapsack Problem. Informally,
More information1 Non greedy algorithms (which we should have covered
1 Non greedy algorithms (which we should have covered earlier) 1.1 Floyd Warshall algorithm This algorithm solves the all-pairs shortest paths problem, which is a problem where we want to find the shortest
More informationName: Lirong TAN 1. (15 pts) (a) Define what is a shortest s-t path in a weighted, connected graph G.
1. (15 pts) (a) Define what is a shortest s-t path in a weighted, connected graph G. A shortest s-t path is a path from vertex to vertex, whose sum of edge weights is minimized. (b) Give the pseudocode
More informationThe Shortest Path Problem. The Shortest Path Problem. Mathematical Model. Integer Programming Formulation
The Shortest Path Problem jla,jc@imm.dtu.dk Department of Management Engineering Technical University of Denmark The Shortest Path Problem Given a directed network G = (V,E,w) for which the underlying
More informationFall CS598CC: Approximation Algorithms. Chandra Chekuri
Fall 2006 CS598CC: Approximation Algorithms Chandra Chekuri Administrivia http://www.cs.uiuc.edu/homes/chekuri/teaching/fall2006/approx.htm Grading: 4 home works (60-70%), 1 take home final (30-40%) Mailing
More informationCSC 1700 Analysis of Algorithms: Minimum Spanning Tree
CSC 1700 Analysis of Algorithms: Minimum Spanning Tree Professor Henry Carter Fall 2016 Recap Space-time tradeoffs allow for faster algorithms at the cost of space complexity overhead Dynamic programming
More information1 Shortest Paths. 1.1 Breadth First Search (BFS) CS 124 Section #3 Shortest Paths and MSTs 2/13/2018
CS 4 Section # Shortest Paths and MSTs //08 Shortest Paths There are types of shortest paths problems: Single source single destination Single source to all destinations All pairs shortest path In today
More informationCS261: Problem Set #2
CS261: Problem Set #2 Due by 11:59 PM on Tuesday, February 9, 2016 Instructions: (1) Form a group of 1-3 students. You should turn in only one write-up for your entire group. (2) Submission instructions:
More informationGreedy Algorithms. Previous Examples: Huffman coding, Minimum Spanning Tree Algorithms
Greedy Algorithms A greedy algorithm is one where you take the step that seems the best at the time while executing the algorithm. Previous Examples: Huffman coding, Minimum Spanning Tree Algorithms Coin
More informationGreedy Algorithms 1. For large values of d, brute force search is not feasible because there are 2 d
Greedy Algorithms 1 Simple Knapsack Problem Greedy Algorithms form an important class of algorithmic techniques. We illustrate the idea by applying it to a simplified version of the Knapsack Problem. Informally,
More informationDijkstra s algorithm for shortest paths when no edges have negative weight.
Lecture 14 Graph Algorithms II 14.1 Overview In this lecture we begin with one more algorithm for the shortest path problem, Dijkstra s algorithm. We then will see how the basic approach of this algorithm
More informationChapter 9. Greedy Technique. Copyright 2007 Pearson Addison-Wesley. All rights reserved.
Chapter 9 Greedy Technique Copyright 2007 Pearson Addison-Wesley. All rights reserved. Greedy Technique Constructs a solution to an optimization problem piece by piece through a sequence of choices that
More informationDescription of The Algorithm
Description of The Algorithm Dijkstra s algorithm works by solving the sub-problem k, which computes the shortest path from the source to vertices among the k closest vertices to the source. For the dijkstra
More information2. CONNECTIVITY Connectivity
2. CONNECTIVITY 70 2. Connectivity 2.1. Connectivity. Definition 2.1.1. (1) A path in a graph G = (V, E) is a sequence of vertices v 0, v 1, v 2,..., v n such that {v i 1, v i } is an edge of G for i =
More information2.3.4 Optimal paths in directed acyclic graphs
.3.4 Optimal paths in directed acyclic graphs Definition: A directed graph G = (N, A) is acyclic if it contains no circuits. A directed acyclic graph is referred to as DAG. circuit Problem Given a directed
More informationLecture 19 Shortest Path vs Spanning Tree Max-Flow Problem. October 25, 2009
Shortest Path vs Spanning Tree Max-Flow Problem October 25, 2009 Outline Lecture 19 Undirected Network Illustration of the difference between the shortest path tree and the spanning tree Modeling Dilemma:
More informationDefinition: A graph G = (V, E) is called a tree if G is connected and acyclic. The following theorem captures many important facts about trees.
Tree 1. Trees and their Properties. Spanning trees 3. Minimum Spanning Trees 4. Applications of Minimum Spanning Trees 5. Minimum Spanning Tree Algorithms 1.1 Properties of Trees: Definition: A graph G
More informationMath 15 - Spring Homework 2.6 Solutions 1. (2.6 # 20) The following graph has 45 vertices. In Sagemath, we can define it like so:
Math 15 - Spring 2017 - Homework 2.6 Solutions 1. (2.6 # 20) The following graph has 45 vertices. In Sagemath, we can define it like so: dm = {0: [1,15], 1: [2,16,31], 2: [3,17,32], 3: [4,18,33], 4: [5,19,34],
More informationWeek 11: Minimum Spanning trees
Week 11: Minimum Spanning trees Agenda: Minimum Spanning Trees Prim s Algorithm Reading: Textbook : 61-7 1 Week 11: Minimum Spanning trees Minimum spanning tree (MST) problem: Input: edge-weighted (simple,
More informationMinimum spanning trees
Carlos Moreno cmoreno @ uwaterloo.ca EI-3 https://ece.uwaterloo.ca/~cmoreno/ece5 Standard reminder to set phones to silent/vibrate mode, please! During today's lesson: Introduce the notion of spanning
More informationAlgorithms for Minimum Spanning Trees
Algorithms & Models of Computation CS/ECE, Fall Algorithms for Minimum Spanning Trees Lecture Thursday, November, Part I Algorithms for Minimum Spanning Tree Sariel Har-Peled (UIUC) CS Fall / 6 Sariel
More information5 MST and Greedy Algorithms
5 MST and Greedy Algorithms One of the traditional and practically motivated problems of discrete optimization asks for a minimal interconnection of a given set of terminals (meaning that every pair will
More informationMinimum Spanning Tree (undirected graph)
1 Minimum Spanning Tree (undirected graph) 2 Path tree vs. spanning tree We have constructed trees in graphs for shortest path to anywhere else (from vertex is the root) Minimum spanning trees instead
More informationDijkstra s Algorithm Last time we saw two methods to solve the all-pairs shortest path problem: Min-plus matrix powering in O(n 3 log n) time and the
Dijkstra s Algorithm Last time we saw two methods to solve the all-pairs shortest path problem: Min-plus matrix powering in O(n 3 log n) time and the Floyd-Warshall algorithm in O(n 3 ) time. Neither of
More informationCombinatorial Optimization
Combinatorial Optimization Frank de Zeeuw EPFL 2012 Today Introduction Graph problems - What combinatorial things will we be optimizing? Algorithms - What kind of solution are we looking for? Linear Programming
More information5 MST and Greedy Algorithms
5 MST and Greedy Algorithms One of the traditional and practically motivated problems of discrete optimization asks for a minimal interconnection of a given set of terminals (meaning that every pair will
More informationWe ve done. Introduction to the greedy method Activity selection problem How to prove that a greedy algorithm works Fractional Knapsack Huffman coding
We ve done Introduction to the greedy method Activity selection problem How to prove that a greedy algorithm works Fractional Knapsack Huffman coding Matroid Theory Now Matroids and weighted matroids Generic
More informationThe Algorithms of Prim and Dijkstra. Class 19
The Algorithms of Prim and Dijkstra Class 19 MST Introduction you live in a county that has terrible roads a new county commissioner was elected based on her campaign promise to repave the roads she promised
More informationMATH 409 LECTURE 10 DIJKSTRA S ALGORITHM FOR SHORTEST PATHS
MATH 409 LECTURE 10 DIJKSTRA S ALGORITHM FOR SHORTEST PATHS REKHA THOMAS In this lecture we see the first algorithm to compute shortest paths from a given vertex r to all vertices v in a digraph G without
More informationFundamental Algorithms CSCI-GA /Summer Solution to Homework 8
Fundamental Algorithms CSCI-GA.70-00/Summer 206 Solution to Homework 8 Problem (CLRS 23.-6). ( point) Show that a graph has a unique minimum spanning tree if, for every cut of the graph, there is a unique
More informationGraphs and Algorithms 2016
Graphs and Algorithms 2016 Teachers: Nikhil Bansal and Jesper Nederlof TA: Shashwat Garg (Office Hours: Thursday: Pick??) Webpage: www.win.tue.nl/~nikhil/courses/2wo08 (for up to date information, links
More informationCSE 417 Practical Algorithms. (a.k.a. Algorithms & Computational Complexity)
CSE 417 Practical Algorithms (a.k.a. Algorithms & Computational Complexity) Outline for Today > Course Goals & Overview > Administrivia > Greedy Algorithms Why study algorithms? > Learn the history of
More information1 Shortest Paths. 1.1 Breadth First Search (BFS) CS 124 Section #3 Shortest Paths and MSTs 2/13/2018
CS Section # Shortest Paths and MSTs //08 Shortest Paths There are types of shortest paths problems: Single source single destination Single source to all destinations All pairs shortest path In today
More informationCSC 8301 Design & Analysis of Algorithms: Kruskal s and Dijkstra s Algorithms
CSC 8301 Design & Analysis of Algorithms: Kruskal s and Dijkstra s Algorithms Professor Henry Carter Fall 2016 Recap Greedy algorithms iterate locally optimal choices to construct a globally optimal solution
More informationAlgorithms for Data Science
Algorithms for Data Science CSOR W4246 Eleni Drinea Computer Science Department Columbia University Thursday, October 1, 2015 Outline 1 Recap 2 Shortest paths in graphs with non-negative edge weights (Dijkstra
More informationDO 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 informationRecitation 13. Minimum Spanning Trees Announcements. SegmentLab has been released, and is due Friday, November 17. It s worth 135 points.
Recitation 13 Minimum Spanning Trees 13.1 Announcements SegmentLab has been released, and is due Friday, November 17. It s worth 135 points. 73 74 RECITATION 13. MINIMUM SPANNING TREES 13.2 Prim s Algorithm
More informationGreedy 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 informationUnion Find and Greedy Algorithms. CSE 101: Design and Analysis of Algorithms Lecture 8
Union Find and Greedy Algorithms CSE 101: Design and Analysis of Algorithms Lecture 8 CSE 101: Design and analysis of algorithms Union find Reading: Section 5.1 Greedy algorithms Reading: Kleinberg and
More informationSPANNING TREES. Lecture 21 CS2110 Spring 2016
1 SPANNING TREES Lecture 1 CS110 Spring 016 Spanning trees What we do today: Calculating the shortest path in Dijkstra s algorithm Look at time complexity of shortest path Definitions Minimum spanning
More informationSolutions to Assignment# 4
Solutions to Assignment# 4 Liana Yepremyan 1 Nov.12: Text p. 651 problem 1 Solution: (a) One example is the following. Consider the instance K = 2 and W = {1, 2, 1, 2}. The greedy algorithm would load
More informationCSE 521: Design and Analysis of Algorithms I
CSE 521: Design and Analysis of Algorithms I Greedy Algorithms Paul Beame 1 Greedy Algorithms Hard to define exactly but can give general properties Solution is built in small steps Decisions on how to
More informationInfo 2950, Lecture 16
Info 2950, Lecture 16 28 Mar 2017 Prob Set 5: due Fri night 31 Mar Breadth first search (BFS) and Depth First Search (DFS) Must have an ordering on the vertices of the graph. In most examples here, the
More informationOptimization II: Dynamic programming
Optimization II: Dynamic programming Ricardo Fukasawa rfukasawa@uwaterloo.ca Department of Combinatorics and Optimization Faculty of Mathematics University of Waterloo Nov 2, 2016 R. Fukasawa (C&O) Optimization
More informationCMPSCI611: Approximating SET-COVER Lecture 21
CMPSCI611: Approximating SET-COVER Lecture 21 Today we look at two more examples of approximation algorithms for NP-hard optimization problems. The first, for the SET-COVER problem, has an approximation
More informationMath 485, Graph Theory: Homework #3
Math 485, Graph Theory: Homework #3 Stephen G Simpson Due Monday, October 26, 2009 The assignment consists of Exercises 2129, 2135, 2137, 2218, 238, 2310, 2313, 2314, 2315 in the West textbook, plus the
More informationCS383, Algorithms Spring 2009 HW6 Solutions
Prof. Sergio A. Alvarez http://www.cs.bc.edu/ alvarez/ 21 Campanella Way, room 569 alvarez@cs.bc.edu Computer Science Department voice: (617) 552-4333 Boston College fax: (617) 552-6790 Chestnut Hill,
More informationSpanning Trees. Lecture 20 CS2110 Spring 2015
1 Spanning Trees Lecture 0 CS110 Spring 01 1 Undirected trees An undirected graph is a tree if there is exactly one simple path between any pair of vertices Root of tree? It doesn t matter choose any vertex
More informationCSE 431/531: Analysis of Algorithms. Greedy Algorithms. Lecturer: Shi Li. Department of Computer Science and Engineering University at Buffalo
CSE 431/531: Analysis of Algorithms Greedy Algorithms Lecturer: Shi Li Department of Computer Science and Engineering University at Buffalo Main Goal of Algorithm Design Design fast algorithms to solve
More informationCSE 100 Minimum Spanning Trees Prim s and Kruskal
CSE 100 Minimum Spanning Trees Prim s and Kruskal Your Turn The array of vertices, which include dist, prev, and done fields (initialize dist to INFINITY and done to false ): V0: dist= prev= done= adj:
More informationMinimum-Spanning-Tree problem. Minimum Spanning Trees (Forests) Minimum-Spanning-Tree problem
Minimum Spanning Trees (Forests) Given an undirected graph G=(V,E) with each edge e having a weight w(e) : Find a subgraph T of G of minimum total weight s.t. every pair of vertices connected in G are
More informationCS2223: Algorithms D-Term, Assignment 5
CS2223: Algorithms D-Term, 2015 Assignment 5 Teams: To be done individually Due date: 05/01/2015 (1:50 PM) Note: no late submission of HW5 will be accepted; we will talk about the solution of HW5 during
More informationStudent number: Datenstrukturen & Algorithmen page 1
Student number: Datenstrukturen & Algorithmen page 1 Problem 1. / 15 P Please note: 1) In this problem, you have to provide solutions only. You can write them right on this sheet. 2) If you use algorithms
More informationCSE541 Class 2. Jeremy Buhler. September 1, 2016
CSE541 Class 2 Jeremy Buhler September 1, 2016 1 A Classic Problem and a Greedy Approach A classic problem for which one might want to apply a greedy algo is knapsack. Given: a knapsack of capacity M,
More informationExam 3 Practice Problems
Exam 3 Practice Problems HONOR CODE: You are allowed to work in groups on these problems, and also to talk to the TAs (the TAs have not seen these problems before and they do not know the solutions but
More informationNotes. Video Game AI: Lecture 5 Planning for Pathfinding. Lecture Overview. Knowledge vs Search. Jonathan Schaeffer this Friday
Notes Video Game AI: Lecture 5 Planning for Pathfinding Nathan Sturtevant COMP 3705 Jonathan Schaeffer this Friday Planning vs localization We cover planning today Localization is just mapping a real-valued
More informationMinimum spanning trees
CE 367R MINIMUM SPANNING TREES Minimum Spanning Tree Identify a subset of links which form a spanning tree (connecting all nodes), where the total cost of the links in the tree is minimized. Minimum Spanning
More informationPractice Exam #3, Math 100, Professor Wilson. MULTIPLE CHOICE. Choose the one alternative that best completes the statement or answers the question.
Practice Exam #3, Math 100, Professor Wilson MULTIPLE CHOICE. Choose the one alternative that best completes the statement or answers the question. 1) A tree is A) any graph that is connected and every
More informationLecture 6 Basic Graph Algorithms
CS 491 CAP Intro to Competitive Algorithmic Programming Lecture 6 Basic Graph Algorithms Uttam Thakore University of Illinois at Urbana-Champaign September 30, 2015 Updates ICPC Regionals teams will be
More informationGreedy Algorithms. COMP 215 Lecture 6
Greedy Algorithms COMP 215 Lecture 6 Wrapping Up DP A few words on traveling salesperson problem. The problem. Brute force algorithm. Dynamic programming algorithm. Greedy Algorithms If we can view our
More informationMath.3336: Discrete Mathematics. Chapter 10 Graph Theory
Math.3336: Discrete Mathematics Chapter 10 Graph Theory Instructor: Dr. Blerina Xhabli Department of Mathematics, University of Houston https://www.math.uh.edu/ blerina Email: blerina@math.uh.edu Fall
More informationDesign and Analysis of Algorithms
CSE 101, Winter 018 D/Q Greed SP s DP LP, Flow B&B, Backtrack Metaheuristics P, NP Design and Analysis of Algorithms Lecture 8: Greed Class URL: http://vlsicad.ucsd.edu/courses/cse101-w18/ Optimization
More informationApproximation Algorithms
Approximation Algorithms Prof. Tapio Elomaa tapio.elomaa@tut.fi Course Basics A new 4 credit unit course Part of Theoretical Computer Science courses at the Department of Mathematics There will be 4 hours
More informationCSE331 Introduction to Algorithms Lecture 15 Minimum Spanning Trees
CSE1 Introduction to Algorithms Lecture 1 Minimum Spanning Trees Antoine Vigneron antoine@unist.ac.kr Ulsan National Institute of Science and Technology July 11, 201 Antoine Vigneron (UNIST) CSE1 Lecture
More informationWe have already seen the transportation problem and the assignment problem. Let us take the transportation problem, first.
Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras Lecture 19 Network Models In this lecture, we will discuss network models. (Refer
More informationLecture 3 February 9, 2010
6.851: Advanced Data Structures Spring 2010 Dr. André Schulz Lecture 3 February 9, 2010 Scribe: Jacob Steinhardt and Greg Brockman 1 Overview In the last lecture we continued to study binary search trees
More informationGraphs and Network Flows ISE 411. Lecture 7. Dr. Ted Ralphs
Graphs and Network Flows ISE 411 Lecture 7 Dr. Ted Ralphs ISE 411 Lecture 7 1 References for Today s Lecture Required reading Chapter 20 References AMO Chapter 13 CLRS Chapter 23 ISE 411 Lecture 7 2 Minimum
More informationCSE 101 Winter 2018 Programming Assignment (PA) Two
CSE 101 Winter 2018 Programming Assignment (PA) Two Due: Friday February 9, 11:59 PM PST Link to starter code: https://github.com/ucsd-cse101/w18-pa2 PLEASE READ THE FAQ BEFORE POSTING ON PIAZZA https://docs.google.com/document/d/1zjgcrhbtzatpb9gs3xtt50tfw5xxeh_x1
More information2.2 Optimal cost spanning trees
. Optimal cost spanning trees Spanning trees have a number of applications: network design (communication, electrical,...) IP network protocols compact memory storage (DNA)... E. Amaldi Foundations of
More informationCSE 21: Mathematics for Algorithms and Systems Analysis
CSE 21: Mathematics for Algorithms and Systems Analysis Week 10 Discussion David Lisuk June 4, 2014 David Lisuk CSE 21: Mathematics for Algorithms and Systems Analysis June 4, 2014 1 / 26 Agenda 1 Announcements
More informationIntroduction: (Edge-)Weighted Graph
Introduction: (Edge-)Weighted Graph c 8 7 a b 7 i d 9 e 8 h 6 f 0 g These are computers and costs of direct connections. What is a cheapest way to network them? / 8 (Edge-)Weighted Graph Many useful graphs
More informationApproximation Algorithms
Approximation Algorithms Prof. Tapio Elomaa tapio.elomaa@tut.fi Course Basics A 4 credit unit course Part of Theoretical Computer Science courses at the Laboratory of Mathematics There will be 4 hours
More informationECE 242 HOMEWORK 5. In the figure below, one can go from node B to A but not from A to B.
ECE 242 HOMEWORK 5 Question 1: Define the following terms. For lines with multiple terms,differentiate between the terms. Also draw a figure illustrating each term. (a) Directed graph and undirected graph
More informationThe minimum spanning tree problem
The minimum spanning tree problem MST is a minimum cost connection problem on graphs The graph can model the connection in a (hydraulic, electric, telecommunication) network: the nodes are the points that
More informationBasic Graph Theory with Applications to Economics
Basic Graph Theory with Applications to Economics Debasis Mishra February 6, What is a Graph? Let N = {,..., n} be a finite set. Let E be a collection of ordered or unordered pairs of distinct elements
More informationMinimum Spanning Trees Shortest Paths
Minimum Spanning Trees Shortest Paths Minimum Spanning Tree Given a set of locations, with positive distances to each other, we want to create a network that connects all nodes to each other with minimal
More informationLECTURE NOTES OF ALGORITHMS: DESIGN TECHNIQUES AND ANALYSIS
Department of Computer Science University of Babylon LECTURE NOTES OF ALGORITHMS: DESIGN TECHNIQUES AND ANALYSIS By Faculty of Science for Women( SCIW), University of Babylon, Iraq Samaher@uobabylon.edu.iq
More informationDecreasing a key FIB-HEAP-DECREASE-KEY(,, ) 3.. NIL. 2. error new key is greater than current key 6. CASCADING-CUT(, )
Decreasing a key FIB-HEAP-DECREASE-KEY(,, ) 1. if >. 2. error new key is greater than current key 3.. 4.. 5. if NIL and.
More information18 Spanning Tree Algorithms
November 14, 2017 18 Spanning Tree Algorithms William T. Trotter trotter@math.gatech.edu A Networking Problem Problem The vertices represent 8 regional data centers which need to be connected with high-speed
More informationLECTURE 26 PRIM S ALGORITHM
DATA STRUCTURES AND ALGORITHMS LECTURE 26 IMRAN IHSAN ASSISTANT PROFESSOR AIR UNIVERSITY, ISLAMABAD STRATEGY Suppose we take a vertex Given a single vertex v 1, it forms a minimum spanning tree on one
More informationTA: Jade Cheng ICS 241 Recitation Lecture Notes #12 November 13, 2009
TA: Jade Cheng ICS 241 Recitation Lecture Notes #12 November 13, 2009 Recitation #12 Question: Use Prim s algorithm to find a minimum spanning tree for the given weighted graph. Step 1. Start from the
More informationLecture 13. Reading: Weiss, Ch. 9, Ch 8 CSE 100, UCSD: LEC 13. Page 1 of 29
Lecture 13 Connectedness in graphs Spanning trees in graphs Finding a minimal spanning tree Time costs of graph problems and NP-completeness Finding a minimal spanning tree: Prim s and Kruskal s algorithms
More informationJade Yu Cheng ICS 311 Homework 7 Sep 18, 2008
Jade Yu Cheng ICS 3 Homework 7 Sep 8, 008 Question for lecture 8 Problem 3-4 on p. 578 Alternative minimum-spanning-tree algorithms In this problem, we give pseudocode for three different algorithms. Each
More informationMinimum cost spanning tree
Minimum cost spanning tree Doctoral course Optimization on graphs - Lecture 2.2 Giovanni Righini January 15 th, 2013 Definitions - 1 A graph G = (V,E) is a tree if and only if it is connected and acyclic.
More informationSubsequence Definition. CS 461, Lecture 8. Today s Outline. Example. Assume given sequence X = x 1, x 2,..., x m. Jared Saia University of New Mexico
Subsequence Definition CS 461, Lecture 8 Jared Saia University of New Mexico Assume given sequence X = x 1, x 2,..., x m Let Z = z 1, z 2,..., z l Then Z is a subsequence of X if there exists a strictly
More informationThe minimum cost spanning tree problem
The minimum cost spanning tree problem Combinatorial optimization Giovanni Righini Definitions - 1 A graph G = (V,E) is a tree if and only if it is connected and acyclic. Connectivity: for each cut, at
More informationAlgorithm 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