SOLVING LARGE CARPOOLING PROBLEMS USING GRAPH THEORETIC TOOLS

Size: px
Start display at page:

Download "SOLVING LARGE CARPOOLING PROBLEMS USING GRAPH THEORETIC TOOLS"

Transcription

1 July, SOLVING LARGE CARPOOLING PROBLEMS USING GRAPH THEORETIC TOOLS Irith Ben-Arroyo Hartman Datasim project - (joint work with Abed Abu dbai, Elad Cohen, Daniel Keren) University of Haifa, Israel

2 July, Outline of talk 1. Background 2. Matching Problem Matching in bipartite graphs The greedy matching algorithm Why is greedy performing so well? The assignment problem 3. General Problem formulation Is there an efficient algorithm? What do we know about the general problem? F-factor in bipartite graphs 4. Heuristics for the general problem Theoretical upper bounds Approximation algorithms 5. Other related problems

3 July, BACKGROUND Why carpool? Defining the graph model

4 July, Why carpool? Reduces the number of cars on the roads. Saves time, petrol, traffic congestion, noise, air pollution, parking spaces, stress, accidents. Encourages sociability

5 July, 2014 Summer School Background In IMOB (Transportation Research Institute University of Hasselt) an automatic service for carpooling is being designed. People register their periodic trip executions (PTE) i.e. a periodic trip on Monday from A to B leaving at about 9:00am Together with information: origin and destination, earliest and latest departure and arrival times, maximal detour distance acceptable, capacity of the car (if available) Information of the person: age, gender, educational level, special interests, etc.

6 July, Summer School-2014 Background The system suggests to individuals to share a car Individuals evaluate the suggestion, negotiate it, and possibly, agree to carpool. After the drive, individuals evaluate each other, the system uses the feedback for future trips.

7 July, Given: The problem informal description 1. a set of trips (Periodic Trip Executions), 2. some owners of trips own a car, and some don t, 3. compatibility measure (wxy) of x riding in the car owned by y, 4. capacity of every car, Can we match between people so as to minimize the number of cars, and maximize the total compatibility between passengers and drivers?

8 July, Defining the Graph Model passenger x Wxy C(y) y Owner of vehicle (driver) Wxy takes into account the origins and destinations of x and y, the times of departure and arrival, maximal detour distance, time flexibility, profiles of passenger and potential driver, feedback of passengers and driver. C(y) is the capacity of the car how many people it can contain including the driver.

9 July, How is wxy being computed? Use Path Similarity: 0 < pathsim(a,b) 1 When is it close to 0? When is it 1?

10 July, How is wxy being computed? Use Time Interval Similarity Use Profile Similarity (age, gender, income category, job type, music preference, etc.) Use Reputation (safety, timeliness)

11 July, Assume we allow one passenger in a car How do we model the problem? What do we optimize?

12 July, THE MATCHING PROBLEM Matchings in bipartite graphs The greedy matching algorithm Why is greedy performing so well? The assignment problem

13 July, Assume we allow one passenger in a car Definitions: A matching in a graph G=(V,E) is a collection of vertex disjoint edges. A matching is maximum (or maximum weight) if there is no other matching of larger cardinality (or larger weight). A matching is maximal (or maximal weight) if there is no other matching containing it which is of larger cardinality (or larger weight).

14 14 Example- matching

15 15 Example- maximal matching A matching is defined on undirected graphs. What do we do if the graph is directed? Prove this is a maximum matching

16 July, Matching in bipartite graphs Definition: A bipartite graph is a graph G=(V,E) where V=V 1 U V 2 and all edges in the graph are between V 1 andv 2. V 1 (passengers) V 2 (drivers)

17 July, Matching algorithms If the graph is bipartite and unweighted we have the Hungarian Algorithm O( V E ), or Hopcroft-Karp O ( E V 1/2 ) If the graph is bipartite and weighted Kuhn-Munkers alg. O( V 2 E ) If the graph is general and unweighted Edmonds (1965) algorithm and improvement by Micali-Vazirani O ( E V 1/2 ) If the graph is general and weighted Edmonds, and improvement by Galil O( V E log V )

18 The greedy algorithm for max weight matching 18 In the worst case greedy / optimal = 1/2

19 July, Worse case scenario of greedy matching Optimal matching

20 July, Worse case scenario of greedy matching Optimal matching Greedy matching

21 Number of graphs July, 2014 Summer School Performance of the Greedy Algorithm 150 Accuracy Histogram Good (and surprising!?) news! graphs, each of size 500x500 and 10% edge density Accuracy (Greedy/K-M)

22 July, 2014 Summer School-2014 Why is the greedy heuristics performing so well? Theorem (P. Erdos 1961): A random graph in G n,p almost surely has stability number at most 2p -1 logn Idea of proof is to look at the random variable X number of stable sets of cardinality k+1 in G, and compute 22 E(X)= When k 2p 1 log n P( X 0) 1as n Implying that a random graph almost surely has stability no at most k.

23 July, 2014 Summer School Why is the greedy heuristics performing so well? 1. We use the fact that if G has a maximal (not maximum!) matching of size n-k then G has a stable set of size at least k. 2. We conclude that in G n,p the greedy matching algorithm will almost surely find a matching of size at least n- 2p -1 logn

24 July, 2014 Summer School Assignment Problem (bipartite weighted graphs) w w

25 July, 2014 Summer School-2014 Incremental Approach: 25 Given an optimal weighted matching M in G, finding quickly an optimal matching M in G. (where G differs from G by a relatively small number of edges. G is also called the perturbed graph.) We can estimate how far w(m) is from the optimal solution of G. We can use the optimal matching and covering in G in order to find quickly an optimal, or good enough solution to the perturbed graph G.

26 CPU-time (seconds) KM-inc total CPU-time/KM total CPU-time July, 2014 Summer School-2014 Comparing K-M to incremental K-M Average Run Time Kuhn-Munkers incremental VS. Kuhn-Munkers 1.1 Run Time Ratio Kuhn-Munkers incremental VS. Kuhn-Munkers KM KM-inc generation Average run-time generation Run-time ratio

27 July, GENERAL PROBLEM FORMULATION Is there an efficient algorithm? What do we know about the general problem? F-factor in bipartite graphs

28 July, What is different if we allow more than one passenger in a car?

29 July, General Problem Formal description Definitions: A directed star, c(r)=5 A Star Partition is a covering of V by disjoint directed stars. Feasible Star Partition is a star partition where each star with root r is of in-degree at most c(r), and r has a loop. Problem formulation: Given G=(V,E), c:v -> N, w:e -> (0,1) Find a feasible star partition of V(G) such that the sum of the weights of all the edges in the stars is maximized.

30 July, General Problem Formulation -LP

31 July, Does this problem minimize no of drivers? Example: Assume the capacity of each vertex is 6. Weights of the edges are denoted in the graph. All other edges in the graph have weight 0. 1

32 Example Summer School-2014 July, What is max Σwij xij subject to the LP constraints? It is 4 with 2 drivers 1 Assume the capacity of each vertex is 6. Weights of the edges are denoted in the graph. All other edges in the graph have weight 0.

33 Example Summer School-2014 July, What is max Σwij xij subject to the LP constraints? It is 4 with 2 drivers. But the minimum no. of drivers is 1 with total weight 3.8 Assume the capacity of each vertex is 5. Weights of the edges are denoted in the graph. All other edges in the graph have weight 0.

34 July, When is optimal star partition = minimum no of drivers? Problem 1: Given G=(V,E), w:e ->R, c:v -> N, find a feasible star partition that covers a set of edges of maximum weight. Problem 2: Given G=(V,E), c:v -> N, find a feasible star partition with a minimum number of stars. Claim: If w ij = 1 for every existing edge (except for loops which have w ii =0) then Problems 1 and 2 are equivalent

35 July, Every star with c legs covers c+1 vertices. If we have a star partition with d stars, then the total no of edges covered by the stars is V - d. Proof of Claim Thus minimizing the number of stars is equivalent to maximizing the number of edges covered by the stars.

36 36

37 July, IS THERE AN EFFICIENT ALGORITHM FOR THE GENERAL CARPOOLING PROBLEM? No! The problem is NP-Complete

38 July, Proof of NP-completeness Claim 1: When the drivers are unknown, and the edge weights are 0/1 the problem is NP-hard. Proof: Reduction from the Minimum Dominating Set Problem. A dominating set in a graph is a subset of vertices such that for every there exists some adjacent to it. u ÏV ' Given a directed graph G = (V, E), and an integer k > 0, does there exist a dominating set of size at most k? - an NP-Complete problem. V ' ÏV v Î V '

39 July, 2014 Summer School Proof of NP-completeness Claim 1: When the drivers are unknown, and the edge weights are 0/1 the problem is NP-hard. Proof: Reduction from the Minimum Dominating Set Problem. G C(v)=max-degree

40 July, 2014 Summer School Proof of NP-completeness Claim 2: When the drivers are unknown, the edge weights are 0/1 and c(v) 3 the problem is NP-hard. Proof: Reduction from the problem of partitioning into paths of length two.

41 July, What about the case when the drivers are known in advance?

42 July, 2014 Summer School What about the case when the drivers are known in advance? C=3. Is this an optimal solution? If yes prove it! No give a better solution. V 1 (passengers) V 2 (drivers)

43 July, An f - factor in a graph Let f :V N. An f-factor is a collection of edges E' E such that E meets every v V in exactly f(v) edges. Q1: What is a 1-factor? Q2: For the carpool problem when the drivers are known and every driver can take at most 4 passengers, what are we looking for?

44 July, example f ( v) 1 2 if if v V v V 1 2 V 1 (passengers) V 2 (drivers)

45 July, How do we find an f-factor, or a maximum partial f-factor in a bipartite graph? Convert G to G, and look for a 1-factor in G. V 1 V 2 V 1 V 2 G G

46 July, How do we find an f-factor, or a maximum partial f-factor in a bipartite graph? Convert G to G, and look for a 1-factor in G. V 1 V 2 V 1 V 2 G G

47 July, What do we know about the general problem? There are 8 possible scenarios, depending on these 3 questions: Capacity 1/2 or general? Capacity 1/2 is a matching problem. there exist efficient algorithms General capacity is a star partition problem- Intractable problem Edge weights 0/1 or (0,1)? 0/1 edge weights is an un-weighted graph. (0,1) edge weights corresponds to a weighted graph Drivers are a-priori known/unknown? If the drivers are known, the graph is bipartite. (edges among passengers, or among drivers are irrelevant). If the drivers are not known, the graph is general. Intractable problem

48 July, Summary of all possible scenarios 1/2 capacity General Capacity 1/2 capacity Known Drivers Max bipartite matching Can be reduced to max bipartite matching 0/1 edge weights Known Drivers Max weighted bipartite matching (assignment Pb) Unknown Drivers Max matching in general graphs NP-hard (even for capacity 3) Unknown Drivers Max weight matching in general graphs General Capacity Can be reduced to max weighted bipartite matching NP-hard (even for capacity 3) General edge weights

49 July, HEURISTICS FOR THE GENERAL PROBLEM Challenges: NP-hard problem for c >2 Theoretical upper bounds Approximation algorithms

50 July, Basic, greedy heuristics for the general carpooling problem Given G=(V,E), c:v -> N, w:e -> (0,1) and a subset D of V consisting of potential drivers. Take heaviest edge as long as it does not violate the star family

51 July, Better (linear) heuristics for the general problem We take into account the following considerations: 1. It is preferable to match non-drivers before potential drivers, since potential drivers, if unmatched, can always drive their own vehicle. 2. Since we would like to minimize the number of vehicles, it is preferable to assign passengers to existing vehicles, (which already contain passengers) than to use 'new' vehicles. 3. If a new vehicle is used, it is preferable to use a vehicle with larger capacity, than to use a small capacity vehicle.

52 July, Greedy heuristics for the general problem

53 July, A different approach by giving potential drivers a weight function

54 July, Other greedy heuristics... Other heuristics are also possible, such as Pick a vertex v (in D) with a highest sum of weights of inedges to v. Add highest c(v) edges to v, remove from the graph, and continue...

55 July, Heaviest driver heuristics-v1

56 July, Heaviest driver heuristics- V3 1. Guess a set of drivers (the heaviest drivers ), 2. Try to match all passengers to the drivers (a bipartite graph problem) 3. If you do not succeed, then add drivers, until you succeed.

57 July, Greedy with local adjustments of weights

58 July, THEORETICAL UPPER BOUNDS

59 July, Naïve upper bound to a star family The number of stars is at least n/c Number of edges chosen is at most (c-1)n/c

60 July, Assume Better upper bound to a star family c(v ) ³ c(v ) ³... ³ c(v ) 1 2 n k 1 c( v ) Take the smallest k s.t. i i Now sort E in descending order by w w(e 1 ) ³ w(e 2 ) ³... ³ w(e m ) n Then max w( H) n k i 1 w( ei )

61 July, How do we evaluate the heuristics? We can compare the weight of the selected star family, w(h) in different heuristics, as well as the amount of all unmatched vertices U. We can compare running times between heuristics We can compare w(h) to a theoretical upper bound:

62 July, 2014 Summer School Comparison with optimal solution for c=2 i.e. finding a maximum weight matching

63 July, 2014 Summer School How do we compare to an optimal solution if we cannot compute the optimal solution? 1. IDEA: Assume c=5, w=1. 2. Plant an optimal solution. 3. Add edges to hide it. 4. Run the heuristic algorithms and see if they find it.

64 July, 2014 Summer School plant an optimal solution

65 July, 2014 Summer School-2014 Add edges to hide it 65

66 July, 2014 Summer School Comparison with a known optimal solution

67 July, Results on real data

68 July, Approximation algorithms An algorithm is a p-approximation algorithm if it has a solution of value f(x) (for input x), where p OPT f ( x) E.g. the greedy matching algorithm is ½-approximation algorithm. What does the greedy star partition algorithm give? OPT

69 July, Greedy star forest is 1/c -approximation E.g.c=5

70 July, Greedy star forest is 1/c -approximation E.g.c=5 Optimal solution

71 July, Greedy star forest is 1/c -approximation E.g.c=5 Optimal solution Greedy solution

72 July, Can we find a heuristics that is better than 1/c - approximation? If the graph is undirected, there is a ½ - approximation algorithm for the star forest problem. [Nguyen, Shen, Hou, Sheng, Miller and Zhang] 1. Take a maximum weight spanning tree t. 2. Pick either the odd layers or the even layers of t whichever is the heaviest. 3. Get a star forest of weight at least ½ the optimum star forest. w( SF 1 ( ) 1 ( ) 1 G) w T OPT G OPT ( G) 2 G 2 t 2 sf

73 July, Example 1. Taking a max weight spanning tree

74 July, Example 1. Pick either the odd or even layers of the tree

75 July, What about directed graphs? 1. Take a maximum weight reverse-arborescence. (Algorithm by Edmonds)

76 July, What are the problems with this algorithm? 1. Is a max weight reverse-arborescence heavier than a max weight star forest? 2. How can we guarantee that the in-degree of every vertex is not greater than its capacity c(v)?

77 July, Solution to problem 1 W=0 G

78 July, Solution to problem 1 W=0 G

79 July, Solution to problem 1 W=0 G

80 July, Carpooling with Aversion: Additional Extensions Some passengers do not want to share a ride with some other specific passengers. We have shown this problem is NP-complete even when the drivers are known. (reduction from the minimum vertex-colouring problem). 2. Carpooling with Attachment: Some passengers prefer to be with other passengers in the same ride. We have shown this problem is NP-complete even when the drivers are known. (reduction from the knapsack problem).

81 July, Additional Extensions 3. Carpooling with VIP passengers. Some passengers do not want to be squeezed in a carpool, they want to share a ride with only few others: NP-Complete same as above.

82 July, Conclusions We have proved that the general carpooling problem is NPhard Found quick algorithms and incremental algorithms for the case of bipartite graphs. Devised and implemented 6 different heuristics for the general problem on real data Compared between the heuristics in terms of running time and performance Compared to the optimal matching in general graphs. (c=2), and to various upper bounds on the general problem. Challenge: Find a good approximation algorithm and show it is close enough to the optimal solution.

83 July, THANK YOU! Questions?

5. Lecture notes on matroid intersection

5. Lecture notes on matroid intersection Massachusetts Institute of Technology Handout 14 18.433: Combinatorial Optimization April 1st, 2009 Michel X. Goemans 5. Lecture notes on matroid intersection One nice feature about matroids is that a

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

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

COMP Analysis of Algorithms & Data Structures

COMP Analysis of Algorithms & Data Structures COMP 3170 - Analysis of Algorithms & Data Structures Shahin Kamali Approximation Algorithms CLRS 35.1-35.5 University of Manitoba COMP 3170 - Analysis of Algorithms & Data Structures 1 / 30 Approaching

More information

CSC 373: Algorithm Design and Analysis Lecture 3

CSC 373: Algorithm Design and Analysis Lecture 3 CSC 373: Algorithm Design and Analysis Lecture 3 Allan Borodin January 11, 2013 1 / 13 Lecture 3: Outline Write bigger and get better markers A little more on charging arguments Continue examples of greedy

More information

The k-center problem Approximation Algorithms 2009 Petros Potikas

The k-center problem Approximation Algorithms 2009 Petros Potikas Approximation Algorithms 2009 Petros Potikas 1 Definition: Let G=(V,E) be a complete undirected graph with edge costs satisfying the triangle inequality and k be an integer, 0 < k V. For any S V and vertex

More information

Copyright 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin Introduction to the Design & Analysis of Algorithms, 2 nd ed., Ch.

Copyright 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin Introduction to the Design & Analysis of Algorithms, 2 nd ed., Ch. Iterative Improvement Algorithm design technique for solving optimization problems Start with a feasible solution Repeat the following step until no improvement can be found: change the current feasible

More information

15-451/651: Design & Analysis of Algorithms November 4, 2015 Lecture #18 last changed: November 22, 2015

15-451/651: Design & Analysis of Algorithms November 4, 2015 Lecture #18 last changed: November 22, 2015 15-451/651: Design & Analysis of Algorithms November 4, 2015 Lecture #18 last changed: November 22, 2015 While we have good algorithms for many optimization problems, the previous lecture showed that many

More information

Models of distributed computing: port numbering and local algorithms

Models of distributed computing: port numbering and local algorithms Models of distributed computing: port numbering and local algorithms Jukka Suomela Adaptive Computing Group Helsinki Institute for Information Technology HIIT University of Helsinki FMT seminar, 26 February

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

Solutions for the Exam 6 January 2014

Solutions for the Exam 6 January 2014 Mastermath and LNMB Course: Discrete Optimization Solutions for the Exam 6 January 2014 Utrecht University, Educatorium, 13:30 16:30 The examination lasts 3 hours. Grading will be done before January 20,

More information

Design and Analysis of Algorithms

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

Approximation Algorithms

Approximation Algorithms Approximation Algorithms Given an NP-hard problem, what should be done? Theory says you're unlikely to find a poly-time algorithm. Must sacrifice one of three desired features. Solve problem to optimality.

More information

Unit 8: Coping with NP-Completeness. Complexity classes Reducibility and NP-completeness proofs Coping with NP-complete problems. Y.-W.

Unit 8: Coping with NP-Completeness. Complexity classes Reducibility and NP-completeness proofs Coping with NP-complete problems. Y.-W. : Coping with NP-Completeness Course contents: Complexity classes Reducibility and NP-completeness proofs Coping with NP-complete problems Reading: Chapter 34 Chapter 35.1, 35.2 Y.-W. Chang 1 Complexity

More information

Bipartite Matching & the Hungarian Method

Bipartite Matching & the Hungarian Method Bipartite Matching & the Hungarian Method Last Revised: 15/9/7 These notes follow formulation originally developed by Subhash Suri in http://www.cs.ucsb.edu/ suri/cs/matching.pdf We previously saw how

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

Solving NP-hard Problems on Special Instances

Solving NP-hard Problems on Special Instances Solving NP-hard Problems on Special Instances Solve it in poly- time I can t You can assume the input is xxxxx No Problem, here is a poly-time algorithm 1 Solving NP-hard Problems on Special Instances

More information

Lecture 4: Primal Dual Matching Algorithm and Non-Bipartite Matching. 1 Primal/Dual Algorithm for weighted matchings in Bipartite Graphs

Lecture 4: Primal Dual Matching Algorithm and Non-Bipartite Matching. 1 Primal/Dual Algorithm for weighted matchings in Bipartite Graphs CMPUT 675: Topics in Algorithms and Combinatorial Optimization (Fall 009) Lecture 4: Primal Dual Matching Algorithm and Non-Bipartite Matching Lecturer: Mohammad R. Salavatipour Date: Sept 15 and 17, 009

More information

On Modularity Clustering. Group III (Ying Xuan, Swati Gambhir & Ravi Tiwari)

On Modularity Clustering. Group III (Ying Xuan, Swati Gambhir & Ravi Tiwari) On Modularity Clustering Presented by: Presented by: Group III (Ying Xuan, Swati Gambhir & Ravi Tiwari) Modularity A quality index for clustering a graph G=(V,E) G=(VE) q( C): EC ( ) EC ( ) + ECC (, ')

More information

Greedy algorithms is another useful way for solving optimization problems.

Greedy algorithms is another useful way for solving optimization problems. Greedy Algorithms Greedy algorithms is another useful way for solving optimization problems. Optimization Problems For the given input, we are seeking solutions that must satisfy certain conditions. These

More information

Jessica Su (some parts copied from CLRS / last quarter s notes)

Jessica Su (some parts copied from CLRS / last quarter s notes) 1 Max flow Consider a directed graph G with positive edge weights c that define the capacity of each edge. We can identify two special nodes in G: the source node s and the sink node t. We want to find

More information

Graphs: Introduction. Ali Shokoufandeh, Department of Computer Science, Drexel University

Graphs: Introduction. Ali Shokoufandeh, Department of Computer Science, Drexel University Graphs: Introduction Ali Shokoufandeh, Department of Computer Science, Drexel University Overview of this talk Introduction: Notations and Definitions Graphs and Modeling Algorithmic Graph Theory and Combinatorial

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

Algorithm Design Methods. Some Methods Not Covered

Algorithm Design Methods. Some Methods Not Covered Algorithm Design Methods Greedy method. Divide and conquer. Dynamic Programming. Backtracking. Branch and bound. Some Methods Not Covered Linear Programming. Integer Programming. Simulated Annealing. Neural

More information

Chapter 5 Graph Algorithms Algorithm Theory WS 2012/13 Fabian Kuhn

Chapter 5 Graph Algorithms Algorithm Theory WS 2012/13 Fabian Kuhn Chapter 5 Graph Algorithms Algorithm Theory WS 2012/13 Fabian Kuhn Graphs Extremely important concept in computer science Graph, : node (or vertex) set : edge set Simple graph: no self loops, no multiple

More information

In this lecture, we ll look at applications of duality to three problems:

In this lecture, we ll look at applications of duality to three problems: Lecture 7 Duality Applications (Part II) In this lecture, we ll look at applications of duality to three problems: 1. Finding maximum spanning trees (MST). We know that Kruskal s algorithm finds this,

More information

THE PROBLEM OF WORM PROPAGATION/PREVENTION

THE PROBLEM OF WORM PROPAGATION/PREVENTION THE PROBLEM OF WORM PROPAGATION/PREVENTION I.E. THE MINIMUM VERTEX COVER PROBLEM 1 Prof. Tiziana Calamoneri Network Algorithms A.y. 2017/18 2 THE PROBLEM WORMS (1) A computer worm is a standalone malware

More information

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18 601.433/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18 22.1 Introduction We spent the last two lectures proving that for certain problems, we can

More information

λ -Harmonious Graph Colouring

λ -Harmonious Graph Colouring λ -Harmonious Graph Colouring Lauren DeDieu McMaster University Southwestern Ontario Graduate Mathematics Conference June 4th, 201 What is a graph? What is vertex colouring? 1 1 1 2 2 Figure : Proper Colouring.

More information

Combinatorial Optimization

Combinatorial 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 information

Graph Algorithms Matching

Graph Algorithms Matching Chapter 5 Graph Algorithms Matching Algorithm Theory WS 2012/13 Fabian Kuhn Circulation: Demands and Lower Bounds Given: Directed network, with Edge capacities 0and lower bounds l for Node demands for

More information

Approximation Basics

Approximation Basics Milestones, Concepts, and Examples Xiaofeng Gao Department of Computer Science and Engineering Shanghai Jiao Tong University, P.R.China Spring 2015 Spring, 2015 Xiaofeng Gao 1/53 Outline History NP Optimization

More information

Matching Algorithms. Proof. If a bipartite graph has a perfect matching, then it is easy to see that the right hand side is a necessary condition.

Matching Algorithms. Proof. If a bipartite graph has a perfect matching, then it is easy to see that the right hand side is a necessary condition. 18.433 Combinatorial Optimization Matching Algorithms September 9,14,16 Lecturer: Santosh Vempala Given a graph G = (V, E), a matching M is a set of edges with the property that no two of the edges have

More information

Advanced Algorithms Class Notes for Monday, October 23, 2012 Min Ye, Mingfu Shao, and Bernard Moret

Advanced Algorithms Class Notes for Monday, October 23, 2012 Min Ye, Mingfu Shao, and Bernard Moret Advanced Algorithms Class Notes for Monday, October 23, 2012 Min Ye, Mingfu Shao, and Bernard Moret Greedy Algorithms (continued) The best known application where the greedy algorithm is optimal is surely

More information

GRAPH THEORY and APPLICATIONS. Factorization Domination Indepence Clique

GRAPH THEORY and APPLICATIONS. Factorization Domination Indepence Clique GRAPH THEORY and APPLICATIONS Factorization Domination Indepence Clique Factorization Factor A factor of a graph G is a spanning subgraph of G, not necessarily connected. G is the sum of factors G i, if:

More information

Paths, Trees, and Flowers by Jack Edmonds

Paths, Trees, and Flowers by Jack Edmonds Paths, Trees, and Flowers by Jack Edmonds Xiang Gao ETH Zurich Distributed Computing Group www.disco.ethz.ch Introduction and background Edmonds maximum matching algorithm Matching-duality theorem Matching

More information

CS 580: Algorithm Design and Analysis. Jeremiah Blocki Purdue University Spring 2018

CS 580: Algorithm Design and Analysis. Jeremiah Blocki Purdue University Spring 2018 CS 580: Algorithm Design and Analysis Jeremiah Blocki Purdue University Spring 2018 Chapter 11 Approximation Algorithms Slides by Kevin Wayne. Copyright @ 2005 Pearson-Addison Wesley. All rights reserved.

More information

A List Heuristic for Vertex Cover

A List Heuristic for Vertex Cover A List Heuristic for Vertex Cover Happy Birthday Vasek! David Avis McGill University Tomokazu Imamura Kyoto University Operations Research Letters (to appear) Online: http://cgm.cs.mcgill.ca/ avis revised:

More information

CME 305: Discrete Mathematics and Algorithms Instructor: Reza Zadeh HW#3 Due at the beginning of class Thursday 02/26/15

CME 305: Discrete Mathematics and Algorithms Instructor: Reza Zadeh HW#3 Due at the beginning of class Thursday 02/26/15 CME 305: Discrete Mathematics and Algorithms Instructor: Reza Zadeh (rezab@stanford.edu) HW#3 Due at the beginning of class Thursday 02/26/15 1. Consider a model of a nonbipartite undirected graph in which

More information

Algorithms for Euclidean TSP

Algorithms for Euclidean TSP This week, paper [2] by Arora. See the slides for figures. See also http://www.cs.princeton.edu/~arora/pubs/arorageo.ps Algorithms for Introduction This lecture is about the polynomial time 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

Dr. Amotz Bar-Noy s Compendium of Algorithms Problems. Problems, Hints, and Solutions

Dr. Amotz Bar-Noy s Compendium of Algorithms Problems. Problems, Hints, and Solutions Dr. Amotz Bar-Noy s Compendium of Algorithms Problems Problems, Hints, and Solutions Chapter 1 Searching and Sorting Problems 1 1.1 Array with One Missing 1.1.1 Problem Let A = A[1],..., A[n] be an array

More information

11. APPROXIMATION ALGORITHMS

11. APPROXIMATION ALGORITHMS 11. APPROXIMATION ALGORITHMS load balancing center selection pricing method: vertex cover LP rounding: vertex cover generalized load balancing knapsack problem Lecture slides by Kevin Wayne Copyright 2005

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

Algorithms for Grid Graphs in the MapReduce Model

Algorithms for Grid Graphs in the MapReduce Model University of Nebraska - Lincoln DigitalCommons@University of Nebraska - Lincoln Computer Science and Engineering: Theses, Dissertations, and Student Research Computer Science and Engineering, Department

More information

/ Approximation Algorithms Lecturer: Michael Dinitz Topic: Linear Programming Date: 2/24/15 Scribe: Runze Tang

/ Approximation Algorithms Lecturer: Michael Dinitz Topic: Linear Programming Date: 2/24/15 Scribe: Runze Tang 600.469 / 600.669 Approximation Algorithms Lecturer: Michael Dinitz Topic: Linear Programming Date: 2/24/15 Scribe: Runze Tang 9.1 Linear Programming Suppose we are trying to approximate a minimization

More information

Approximation Algorithms

Approximation Algorithms Presentation for use with the textbook, Algorithm Design and Applications, by M. T. Goodrich and R. Tamassia, Wiley, 2015 Approximation Algorithms Tamassia Approximation Algorithms 1 Applications One of

More information

5 MST and Greedy Algorithms

5 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 information

Approximation Algorithms

Approximation 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 information

1. Lecture notes on bipartite matching February 4th,

1. Lecture notes on bipartite matching February 4th, 1. Lecture notes on bipartite matching February 4th, 2015 6 1.1.1 Hall s Theorem Hall s theorem gives a necessary and sufficient condition for a bipartite graph to have a matching which saturates (or matches)

More information

arxiv: v3 [cs.dm] 12 Jun 2014

arxiv: v3 [cs.dm] 12 Jun 2014 On Maximum Differential Coloring of Planar Graphs M. A. Bekos 1, M. Kaufmann 1, S. Kobourov, S. Veeramoni 1 Wilhelm-Schickard-Institut für Informatik - Universität Tübingen, Germany Department of Computer

More information

Approximation slides 1. An optimal polynomial algorithm for the Vertex Cover and matching in Bipartite graphs

Approximation slides 1. An optimal polynomial algorithm for the Vertex Cover and matching in Bipartite graphs Approximation slides 1 An optimal polynomial algorithm for the Vertex Cover and matching in Bipartite graphs Approximation slides 2 Linear independence A collection of row vectors {v T i } are independent

More information

Ma/CS 6b Class 2: Matchings

Ma/CS 6b Class 2: Matchings Ma/CS 6b Class 2: Matchings By Adam Sheffer Send anonymous suggestions and complaints from here. Email: adamcandobetter@gmail.com Password: anonymous2 There aren t enough crocodiles in the presentations

More information

Approximation Algorithms: The Primal-Dual Method. My T. Thai

Approximation Algorithms: The Primal-Dual Method. My T. Thai Approximation Algorithms: The Primal-Dual Method My T. Thai 1 Overview of the Primal-Dual Method Consider the following primal program, called P: min st n c j x j j=1 n a ij x j b i j=1 x j 0 Then the

More information

CSE 521: Design and Analysis of Algorithms I

CSE 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 information

Introduction to Graph Theory

Introduction to Graph Theory Introduction to Graph Theory Tandy Warnow January 20, 2017 Graphs Tandy Warnow Graphs A graph G = (V, E) is an object that contains a vertex set V and an edge set E. We also write V (G) to denote the vertex

More information

Advanced Algorithms. On-line Algorithms

Advanced Algorithms. On-line Algorithms Advanced Algorithms On-line Algorithms 1 Introduction Online Algorithms are algorithms that need to make decisions without full knowledge of the input. They have full knowledge of the past but no (or partial)

More information

Network monitoring: detecting node failures

Network monitoring: detecting node failures Network monitoring: detecting node failures 1 Monitoring failures in (communication) DS A major activity in DS consists of monitoring whether all the system components work properly To our scopes, we will

More information

5 MST and Greedy Algorithms

5 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 information

Introduction to Algorithms. Lecture 24. Prof. Patrick Jaillet

Introduction to Algorithms. Lecture 24. Prof. Patrick Jaillet 6.006- Introduction to Algorithms Lecture 24 Prof. Patrick Jaillet Outline Decision vs optimization problems P, NP, co-np Reductions between problems NP-complete problems Beyond NP-completeness Readings

More information

Announcements. CSEP 521 Applied Algorithms. Announcements. Polynomial time efficiency. Definitions of efficiency 1/14/2013

Announcements. CSEP 521 Applied Algorithms. Announcements. Polynomial time efficiency. Definitions of efficiency 1/14/2013 Announcements CSEP 51 Applied Algorithms Richard Anderson Winter 013 Lecture Reading Chapter.1,. Chapter 3 Chapter Homework Guidelines Prove that your algorithm works A proof is a convincing argument Give

More information

Introduction to Approximation Algorithms

Introduction to Approximation Algorithms Introduction to Approximation Algorithms Dr. Gautam K. Das Departmet of Mathematics Indian Institute of Technology Guwahati, India gkd@iitg.ernet.in February 19, 2016 Outline of the lecture Background

More information

Lecture notes on: Maximum matching in bipartite and non-bipartite graphs (Draft)

Lecture notes on: Maximum matching in bipartite and non-bipartite graphs (Draft) Lecture notes on: Maximum matching in bipartite and non-bipartite graphs (Draft) Lecturer: Uri Zwick June 5, 2013 1 The maximum matching problem Let G = (V, E) be an undirected graph. A set M E is a matching

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 Suggested Reading: Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science 6.438 Algorithms For Inference Fall 2014 Probabilistic Modelling and Reasoning: The Junction

More information

Code Compaction Using Post-Increment/Decrement Addressing Modes

Code Compaction Using Post-Increment/Decrement Addressing Modes Code Compaction Using Post-Increment/Decrement Addressing Modes Daniel Golovin and Michael De Rosa {dgolovin, mderosa}@cs.cmu.edu Abstract During computation, locality of reference is often observed, and

More information

THE PROBLEM WORMS (1) WORMS (2) THE PROBLEM OF WORM PROPAGATION/PREVENTION THE MINIMUM VERTEX COVER PROBLEM

THE PROBLEM WORMS (1) WORMS (2) THE PROBLEM OF WORM PROPAGATION/PREVENTION THE MINIMUM VERTEX COVER PROBLEM 1 THE PROBLEM OF WORM PROPAGATION/PREVENTION I.E. THE MINIMUM VERTEX COVER PROBLEM Prof. Tiziana Calamoneri Network Algorithms A.y. 2016/17 2 THE PROBLEM WORMS (1)! A computer worm is a standalone malware

More information

Primality Testing. Public-Key Cryptography needs large prime numbers How can you tell if p is prime? Try dividing p by all smaller integers

Primality Testing. Public-Key Cryptography needs large prime numbers How can you tell if p is prime? Try dividing p by all smaller integers Primality Testing Public-Key Cryptography needs large prime numbers How can you tell if p is prime? Try dividing p by all smaller integers Exponential in p (number of bits to represent p) Improvement:

More information

1. Lecture notes on bipartite matching

1. Lecture notes on bipartite matching Massachusetts Institute of Technology 18.453: Combinatorial Optimization Michel X. Goemans February 5, 2017 1. Lecture notes on bipartite matching Matching problems are among the fundamental problems in

More information

Lecture 11: Maximum flow and minimum cut

Lecture 11: Maximum flow and minimum cut Optimisation Part IB - Easter 2018 Lecture 11: Maximum flow and minimum cut Lecturer: Quentin Berthet 4.4. The maximum flow problem. We consider in this lecture a particular kind of flow problem, with

More information

CSE 417 Network Flows (pt 4) Min Cost Flows

CSE 417 Network Flows (pt 4) Min Cost Flows CSE 417 Network Flows (pt 4) Min Cost Flows Reminders > HW6 is due Monday Review of last three lectures > Defined the maximum flow problem find the feasible flow of maximum value flow is feasible if it

More information

Algorithm and Complexity of Disjointed Connected Dominating Set Problem on Trees

Algorithm and Complexity of Disjointed Connected Dominating Set Problem on Trees Algorithm and Complexity of Disjointed Connected Dominating Set Problem on Trees Wei Wang joint with Zishen Yang, Xianliang Liu School of Mathematics and Statistics, Xi an Jiaotong University Dec 20, 2016

More information

CSE 421 Applications of DFS(?) Topological sort

CSE 421 Applications of DFS(?) Topological sort CSE 421 Applications of DFS(?) Topological sort Yin Tat Lee 1 Precedence Constraints In a directed graph, an edge (i, j) means task i must occur before task j. Applications Course prerequisite: course

More information

Optimization I : Brute force and Greedy strategy

Optimization I : Brute force and Greedy strategy Chapter 3 Optimization I : Brute force and Greedy strategy A generic definition of an optimization problem involves a set of constraints that defines a subset in some underlying space (like the Euclidean

More information

Approximation Algorithms

Approximation 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 information

The complement of PATH is in NL

The complement of PATH is in NL 340 The complement of PATH is in NL Let c be the number of nodes in graph G that are reachable from s We assume that c is provided as an input to M Given G, s, t, and c the machine M operates as follows:

More information

4.1 Interval Scheduling

4.1 Interval Scheduling 41 Interval Scheduling Interval Scheduling Interval scheduling Job j starts at s j and finishes at f j Two jobs compatible if they don't overlap Goal: find maximum subset of mutually compatible jobs a

More information

Lecture 7. s.t. e = (u,v) E x u + x v 1 (2) v V x v 0 (3)

Lecture 7. s.t. e = (u,v) E x u + x v 1 (2) v V x v 0 (3) COMPSCI 632: Approximation Algorithms September 18, 2017 Lecturer: Debmalya Panigrahi Lecture 7 Scribe: Xiang Wang 1 Overview In this lecture, we will use Primal-Dual method to design approximation algorithms

More information

Algorithms for Storage Allocation Based on Client Preferences

Algorithms for Storage Allocation Based on Client Preferences Algorithms for Storage Allocation Based on Client Preferences Tami Tamir Benny Vaksendiser Abstract We consider a packing problem arising in storage management of Video on Demand (VoD) systems. The system

More information

11. APPROXIMATION ALGORITHMS

11. APPROXIMATION ALGORITHMS Coping with NP-completeness 11. APPROXIMATION ALGORITHMS load balancing center selection pricing method: weighted vertex cover LP rounding: weighted vertex cover generalized load balancing knapsack problem

More information

Where have all the cars gone? A model for determining traffic flow throughout a road network

Where have all the cars gone? A model for determining traffic flow throughout a road network A model for determining traffic flow throughout a road network Harvey Mudd College Presentation Days 7 May 2008 Traffic monitoring Important Equations Lots of Traffic + Small Roads = Congestion Congestion

More information

PERFECT MATCHING THE CENTRALIZED DEPLOYMENT MOBILE SENSORS THE PROBLEM SECOND PART: WIRELESS NETWORKS 2.B. SENSOR NETWORKS OF MOBILE SENSORS

PERFECT MATCHING THE CENTRALIZED DEPLOYMENT MOBILE SENSORS THE PROBLEM SECOND PART: WIRELESS NETWORKS 2.B. SENSOR NETWORKS OF MOBILE SENSORS SECOND PART: WIRELESS NETWORKS 2.B. SENSOR NETWORKS THE CENTRALIZED DEPLOYMENT OF MOBILE SENSORS I.E. THE MINIMUM WEIGHT PERFECT MATCHING 1 2 ON BIPARTITE GRAPHS Prof. Tiziana Calamoneri Network Algorithms

More information

CSC 505, Fall 2000: Week 12

CSC 505, Fall 2000: Week 12 CSC 505, Fall 000: Week Proving the N P-completeness of a decision problem A:. Prove that A is in N P give a simple guess and check algorithm (the certificate being guessed should be something requiring

More information

15-451/651: Design & Analysis of Algorithms October 11, 2018 Lecture #13: Linear Programming I last changed: October 9, 2018

15-451/651: Design & Analysis of Algorithms October 11, 2018 Lecture #13: Linear Programming I last changed: October 9, 2018 15-451/651: Design & Analysis of Algorithms October 11, 2018 Lecture #13: Linear Programming I last changed: October 9, 2018 In this lecture, we describe a very general problem called linear programming

More information

Analysis of Algorithms Prof. Karen Daniels

Analysis of Algorithms Prof. Karen Daniels UMass Lowell Computer Science 91.503 Analysis of Algorithms Prof. Karen Daniels Spring, 2010 Lecture 2 Tuesday, 2/2/10 Design Patterns for Optimization Problems Greedy Algorithms Algorithmic Paradigm Context

More information

GRAPH THEORY and APPLICATIONS. Matchings

GRAPH THEORY and APPLICATIONS. Matchings GRAPH THEORY and APPLICATIONS Matchings Definition Matching of a graph G: Any subset of edges M E such that no two elements of M are adjacent. Example: {e} {e,e5,e0} {e2,e7,e0} {e4,e6,e8} e4 e7 e8 e e2

More information

val(y, I) α (9.0.2) α (9.0.3)

val(y, I) α (9.0.2) α (9.0.3) CS787: Advanced Algorithms Lecture 9: Approximation Algorithms In this lecture we will discuss some NP-complete optimization problems and give algorithms for solving them that produce a nearly optimal,

More information

CMPSCI 311: Introduction to Algorithms Practice Final Exam

CMPSCI 311: Introduction to Algorithms Practice Final Exam CMPSCI 311: Introduction to Algorithms Practice Final Exam Name: ID: Instructions: Answer the questions directly on the exam pages. Show all your work for each question. Providing more detail including

More information

1 Matchings in Graphs

1 Matchings in Graphs Matchings in Graphs J J 2 J 3 J 4 J 5 J J J 6 8 7 C C 2 C 3 C 4 C 5 C C 7 C 8 6 J J 2 J 3 J 4 J 5 J J J 6 8 7 C C 2 C 3 C 4 C 5 C C 7 C 8 6 Definition Two edges are called independent if they are not adjacent

More information

On Covering a Graph Optimally with Induced Subgraphs

On Covering a Graph Optimally with Induced Subgraphs On Covering a Graph Optimally with Induced Subgraphs Shripad Thite April 1, 006 Abstract We consider the problem of covering a graph with a given number of induced subgraphs so that the maximum number

More information

CME 305: Discrete Mathematics and Algorithms Instructor: Reza Zadeh HW#3 Due at the beginning of class Thursday 03/02/17

CME 305: Discrete Mathematics and Algorithms Instructor: Reza Zadeh HW#3 Due at the beginning of class Thursday 03/02/17 CME 305: Discrete Mathematics and Algorithms Instructor: Reza Zadeh (rezab@stanford.edu) HW#3 Due at the beginning of class Thursday 03/02/17 1. Consider a model of a nonbipartite undirected graph in which

More information

APPROXIMATION ALGORITHMS FOR GEOMETRIC PROBLEMS

APPROXIMATION ALGORITHMS FOR GEOMETRIC PROBLEMS APPROXIMATION ALGORITHMS FOR GEOMETRIC PROBLEMS Subhas C. Nandy (nandysc@isical.ac.in) Advanced Computing and Microelectronics Unit Indian Statistical Institute Kolkata 70010, India. Organization Introduction

More information

Complexity and approximation of satisfactory partition problems

Complexity and approximation of satisfactory partition problems Complexity and approximation of satisfactory partition problems Cristina Bazgan, Zsolt Tuza, and Daniel Vanderpooten LAMSADE, Université Paris-Dauphine, France {bazgan,vdp}@lamsade.dauphine.fr Computer

More information

On some problems in graph theory: from colourings to vertex identication

On some problems in graph theory: from colourings to vertex identication On some problems in graph theory: from colourings to vertex identication F. Foucaud 1 Joint works with: E. Guerrini 1,2, R. Klasing 1, A. Kosowski 1,3, M. Kov²e 1,2, R. Naserasr 1, A. Parreau 2, A. Raspaud

More information

Network Flow and Matching

Network Flow and Matching Chapter 4 Network Flow and Matching In this chapter, we examine the network flow problem, a graph problem to which many problems can be reduced. In fact, some problems that don t even appear to be graph

More information

CS 4407 Algorithms. Lecture 8: Circumventing Intractability, using Approximation and other Techniques

CS 4407 Algorithms. Lecture 8: Circumventing Intractability, using Approximation and other Techniques CS 4407 Algorithms Lecture 8: Circumventing Intractability, using Approximation and other Techniques Prof. Gregory Provan Department of Computer Science University College Cork CS 4010 1 Lecture Outline

More information

Material handling and Transportation in Logistics. Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena

Material handling and Transportation in Logistics. Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena Material handling and Transportation in Logistics Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena Introduction to Graph Theory Graph Theory As Mathematical

More information

Welcome to the course Algorithm Design

Welcome to the course Algorithm Design Welcome to the course Algorithm Design Summer Term 2011 Friedhelm Meyer auf der Heide Lecture 13, 15.7.2011 Friedhelm Meyer auf der Heide 1 Topics - Divide & conquer - Dynamic programming - Greedy Algorithms

More information

Results on the min-sum vertex cover problem

Results on the min-sum vertex cover problem Results on the min-sum vertex cover problem Ralucca Gera, 1 Craig Rasmussen, Pantelimon Stănică 1 Naval Postgraduate School Monterey, CA 9393, USA {rgera, ras, pstanica}@npsedu and Steve Horton United

More information

Graphs and Network Flows IE411. Lecture 21. Dr. Ted Ralphs

Graphs and Network Flows IE411. Lecture 21. Dr. Ted Ralphs Graphs and Network Flows IE411 Lecture 21 Dr. Ted Ralphs IE411 Lecture 21 1 Combinatorial Optimization and Network Flows In general, most combinatorial optimization and integer programming problems are

More information