Mathematical Thinking

Size: px
Start display at page:

Download "Mathematical Thinking"

Transcription

1 Mathematical Thinking Chapter 2 Hamiltonian Circuits and Spanning Trees It often happens in mathematics that what appears to be a minor detail in the statement of a problem can have a profound effect on its complexity.

2 Hamiltonian Circuits A Hamiltonian circuit is a circuit that includes every vertex exactly once. Hundreds of practical applications routing delivery trucks moving an industrial robot arm

3 Hamiltonian Circuits A Hamiltonian circuit is a circuit that includes every vertex exactly once. Hundreds of practical applications routing delivery trucks moving an industrial robot arm

4 Hamiltonian Circuits It s easy to construct graphs that have no Hamiltonian circuits.

5 Hamiltonian Circuits It s easy to construct graphs that have no Hamiltonian circuits.

6 Hamiltonian Circuits It s easy to construct graphs that have no Hamiltonian circuits. Grid graphs are often of interest when modeling a network of roads. Consider the problem of inspecting traffic lights after a storm. Can you explain why this graph has no Hamiltonian circuit? The vertex colors are a hint.

7 Hamiltonian Circuits It s easy to construct graphs that have no Hamiltonian circuits. This is our textbook s idea for an infinite family of graphs without Hamiltonian circuits. Bipartite graphs

8 Famous Conjecture There does not exist a computationally feasible procedure for finding a Hamiltonian circuit in a given graph, or even for deciding if a graph has a Hamiltonian circuit. If you find such a procedure, or prove that one does not exist, you will become very famous.

9 Min-Cost Hamiltonian Circuits In a weighted graph, find the Hamiltonian circuit of least cost. Cleveland St. Louis 300 Minneapolis 425 Chicago

10 Min-Cost Hamiltonian Circuits In a weighted graph, find the Hamiltonian circuit of least cost. Cleveland St. Louis 300 Minneapolis 425 Chicago

11 Traveling Salesman Problem In a complete graph, every pair of vertices is connected by an edge. The problem of finding a min-cost Hamiltonian circuit in a complete weighted graph is known as the TSP. No known feasible solution.

12 Traveling Salesman Problem Scheduling deliveries (UPS, FedEx, Dominos,...) Shuttling customers between JFK and NYC Soldering connections on a printed circuit Organizing political campaign stops Order-picking in a warehouse Inspecting local franchises Computer network wiring Automated drilling Bus scheduling

13 Solving TSP Cleveland CLE MIN STL CHI 562 STL CHI MIN CHI MIN STL 562 St. Louis CHI STL CHI MIN STL MIN CLE CLE CLE CLE CLE CLE Minneapolis Chicago So all we have to do is add up the edge weights for every tour, keeping track of the smallest sum as we go...?

14 Solving TSP How many different Hamiltonian circuits are there in a complete graph with five vertices? What about the general case of n vertices? How big would the graph have to be for the number of traveling salesman tours to exceed the number of atoms in the observable universe? 100 billion galaxies, each with about a trillion stars on average. Each star has about atoms on average. 80 About 10 atoms in total. Sources: 1 2 How fast do factorials grow?

15 Nearest-Neighbor Heuristic Choose a starting vertex. Go to nearest unvisited neighbor NO Has every vertex been visited? YES Return to starting vertex.

16 Nearest-Neighbor Heuristic Choose a starting vertex. A 70 B Go to nearest unvisited neighbor NO E 75 C Has every vertex been visited? YES D Return to starting vertex.

17 Nearest-Neighbor Heuristic Choose a starting vertex. A 70 B Go to nearest unvisited neighbor NO E 75 C Has every vertex been visited? YES D Return to starting vertex.

18 Nearest-Neighbor Heuristic Choose a starting vertex. A 70 B Go to nearest unvisited neighbor NO E 75 C Has every vertex been visited? YES D Return to starting vertex.

19 Nearest-Neighbor Heuristic Choose a starting vertex. A 70 B Go to nearest unvisited neighbor NO E 75 C Has every vertex been visited? YES D Return to starting vertex.

20 Nearest-Neighbor Heuristic Choose a starting vertex. A 70 B Go to nearest unvisited neighbor NO E 75 C Has every vertex been visited? YES D Return to starting vertex.

21 Nearest-Neighbor Heuristic Choose a starting vertex. A 70 B Go to nearest unvisited neighbor NO E 75 C Has every vertex been visited? YES D Return to starting vertex.

22 Sorted-Edges Heuristic NO Sort the edges by weight. Select the next acceptable edge of lowest weight. Is the tour complete? An edge is acceptable if: It has not already been chosen. Adding it does not cause a vertex to have valence 3. Adding it does not form a circuit before the tour is complete.

23 Sorted-Edges Heuristic Sort the edges by weight. A 70 B Select the next acceptable edge of lowest weight NO E 75 C Is the tour complete? D

24 Sorted-Edges Heuristic Sort the edges by weight. A 70 B Select the next acceptable edge of lowest weight NO E 75 C Is the tour complete? D

25 Sorted-Edges Heuristic Sort the edges by weight. A 70 B Select the next acceptable edge of lowest weight NO E 75 C Is the tour complete? D

26 Sorted-Edges Heuristic Sort the edges by weight. A 70 B Select the next acceptable edge of lowest weight NO E 75 C Is the tour complete? D

27 Sorted-Edges Heuristic Sort the edges by weight. A 70 B Select the next acceptable edge of lowest weight NO E 75 C Is the tour complete? D

28 Sorted-Edges Heuristic Sort the edges by weight. A 70 B Select the next acceptable edge of lowest weight NO E 75 C Is the tour complete? D

29 Which Heuristic is Better? Results on 1000 complete graphs with random edge weights. Size of Graph Nearest Neighbor Sorted Edges

30 Trees A tree is a connected graph with no circuits.

31 Spanning Trees A spanning tree is a subgraph that is a tree and includes every vertex.

32 Spanning Trees A spanning tree is a subgraph that is a tree and includes every vertex.

33 Spanning Trees A minimum spanning tree in a weighted graph is a spanning tree of lowest possible cost Application: construction of video conferencing networks.

34 Kruskal s Algorithm Add edges in sorted order until a spanning tree is obtained

35 Kruskal s Algorithm Add edges in sorted order until a spanning tree is obtained Cost: 1

36 Kruskal s Algorithm Add edges in sorted order until a spanning tree is obtained Cost: = 2

37 Kruskal s Algorithm Add edges in sorted order until a spanning tree is obtained Cost: = 4

38 Kruskal s Algorithm Add edges in sorted order until a spanning tree is obtained Cost: = 6

39 Kruskal s Algorithm Add edges in sorted order until a spanning tree is obtained Cost: = 9

40 Kruskal s Algorithm Add edges in sorted order until a spanning tree is obtained Cost: = 12

41 Kruskal s Algorithm Add edges in sorted order until a spanning tree is obtained Cost: = 15

42 Kruskal s Algorithm Add edges in sorted order until a spanning tree is obtained Cost: = 19

43 Kruskal s Algorithm Add edges in sorted order until a spanning tree is obtained Cost: = 23

44 Kruskal s Algorithm Add edges in sorted order until a spanning tree is obtained Cost: = 27

45 Kruskal s Algorithm Add edges in sorted order until a spanning tree is obtained Cost: = 27

46 Kruskal s Algorithm Add edges in sorted order until a spanning tree is obtained Cost: = 27

47 Kruskal s Algorithm Add edges in sorted order until a spanning tree is obtained Cost: = 27

48 Kruskal s Algorithm Add edges in sorted order until a spanning tree is obtained Cost: = 33

49 Kruskal s Algorithm Add edges in sorted order until a spanning tree is obtained Cost: = 33

50 Kruskal s Algorithm Alternative interpretation: merging trees

51 Kruskal s Algorithm Alternative interpretation: merging trees

52 Kruskal s Algorithm Alternative interpretation: merging trees

53 Kruskal s Algorithm Alternative interpretation: merging trees

54 Kruskal s Algorithm Alternative interpretation: merging trees

55 Kruskal s Algorithm Alternative interpretation: merging trees

56 Kruskal s Algorithm Alternative interpretation: merging trees

57 Kruskal s Algorithm Alternative interpretation: merging trees

58 Kruskal s Algorithm Alternative interpretation: merging trees

59 Kruskal s Algorithm Alternative interpretation: merging trees

60 Kruskal s Algorithm Alternative interpretation: merging trees

61 Kruskal s Algorithm Alternative interpretation: merging trees

62 Kruskal s Algorithm Alternative interpretation: merging trees

63 Kruskal s Algorithm Alternative interpretation: merging trees

64 Kruskal s Algorithm Alternative interpretation: merging trees

65 Kruskal s Algorithm Alternative interpretation: merging trees

66 Proof Idea When merging two trees, it is always best to use the edge of smallest weight

67 Proof Idea When merging two trees, it is always best to use the edge of smallest weight. 3

Lesson 5.2. The Traveling Salesperson Problem. Explore This

Lesson 5.2. The Traveling Salesperson Problem. Explore This Lesson 5.2 The Traveling alesperson Problem In Lesson 4.5, you explored circuits that visited each vertex of your graph exactly once (Hamiltonian circuits). In this lesson, you will extend your thinking

More information

A path that visits every vertex exactly once is a Hamiltonian path. A circuit that visits every vertex exactly once is a Hamiltonian circuit.

A path that visits every vertex exactly once is a Hamiltonian path. A circuit that visits every vertex exactly once is a Hamiltonian circuit. Math 167 Review of Chapter 2 1 (c) Janice Epstein CHAPTER 2 BUSINESS EFFICENCY A path that visits every vertex exactly once is a Hamiltonian path. A circuit that visits every vertex exactly once is a Hamiltonian

More information

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

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

More information

Design and Analysis of Algorithms CS404/504. Razvan Bunescu School of EECS.

Design and Analysis of Algorithms CS404/504. Razvan Bunescu School of EECS. Welcome Design and Analysis of Algorithms Razvan Bunescu School of EECS bunescu@ohio.edu 1 Course Description Course Description: This course provides an introduction to the modern study of computer algorithms.

More information

Chapter 14 Section 3 - Slide 1

Chapter 14 Section 3 - Slide 1 AND Chapter 14 Section 3 - Slide 1 Chapter 14 Graph Theory Chapter 14 Section 3 - Slide WHAT YOU WILL LEARN Graphs, paths and circuits The Königsberg bridge problem Euler paths and Euler circuits Hamilton

More information

6.2 Initial Problem. Section 6.2 Network Problems. 6.2 Initial Problem, cont d. Weighted Graphs. Weighted Graphs, cont d. Weighted Graphs, cont d

6.2 Initial Problem. Section 6.2 Network Problems. 6.2 Initial Problem, cont d. Weighted Graphs. Weighted Graphs, cont d. Weighted Graphs, cont d Section 6.2 Network Problems Goals Study weighted graphs Study spanning trees Study minimal spanning trees Use Kruskal s algorithm 6.2 Initial Problem Walkways need to be built between the buildings on

More information

Topics Covered. Introduction to Graphs Euler s Theorem Hamiltonian Circuits The Traveling Salesman Problem Trees and Kruskal s Algorithm

Topics Covered. Introduction to Graphs Euler s Theorem Hamiltonian Circuits The Traveling Salesman Problem Trees and Kruskal s Algorithm Graph Theory Topics Covered Introduction to Graphs Euler s Theorem Hamiltonian Circuits The Traveling Salesman Problem Trees and Kruskal s Algorithm What is a graph? A collection of points, called vertices

More information

Notes for Recitation 9

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

More information

Study Guide Mods: Date:

Study Guide Mods: Date: Graph Theory Name: Study Guide Mods: Date: Define each of the following. It may be helpful to draw examples that illustrate the vocab word and/or counterexamples to define the word. 1. Graph ~ 2. Vertex

More information

Warm -Up. 1. Draw a connected graph with 4 vertices and 7 edges. What is the sum of the degrees of all the vertices?

Warm -Up. 1. Draw a connected graph with 4 vertices and 7 edges. What is the sum of the degrees of all the vertices? Warm -Up 1. Draw a connected graph with 4 vertices and 7 edges. What is the sum of the degrees of all the vertices? 1. Is this graph a. traceable? b. Eulerian? 3. Eulerize this graph. Warm-Up Eulerize

More information

1. trees does the network shown in figure (a) have? (b) How many different spanning. trees does the network shown in figure (b) have?

1. trees does the network shown in figure (a) have? (b) How many different spanning. trees does the network shown in figure (b) have? 2/28/18, 8:24 M 1. (a) ow many different spanning trees does the network shown in figure (a) have? (b) ow many different spanning trees does the network shown in figure (b) have? L K M P N O L K M P N

More information

Module 6 NP-Complete Problems and Heuristics

Module 6 NP-Complete Problems and Heuristics Module 6 NP-Complete Problems and Heuristics Dr. Natarajan Meghanathan Professor of Computer Science Jackson State University Jackson, MS 397 E-mail: natarajan.meghanathan@jsums.edu Optimization vs. Decision

More information

Chapter 6. The Traveling-Salesman Problem. Section 1. Hamilton circuits and Hamilton paths.

Chapter 6. The Traveling-Salesman Problem. Section 1. Hamilton circuits and Hamilton paths. Chapter 6. The Traveling-Salesman Problem Section 1. Hamilton circuits and Hamilton paths. Recall: an Euler path is a path that travels through every edge of a graph once and only once; an Euler circuit

More information

Module 6 NP-Complete Problems and Heuristics

Module 6 NP-Complete Problems and Heuristics Module 6 NP-Complete Problems and Heuristics Dr. Natarajan Meghanathan Professor of Computer Science Jackson State University Jackson, MS 97 E-mail: natarajan.meghanathan@jsums.edu Optimization vs. Decision

More information

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

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

More information

(Refer Slide Time: 01:00)

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

More information

Optimal tour along pubs in the UK

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

More information

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

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

More information

Unit 7 Day 6. Section 5.2 Traveling Salesman Problem & Section 5.3 Finding the Shortest Route

Unit 7 Day 6. Section 5.2 Traveling Salesman Problem & Section 5.3 Finding the Shortest Route Unit 7 Day 6 Section 5.2 Traveling Salesman Problem & Section 5.3 Finding the Shortest Route 1 Warm Up Day 7: 1. Draw a planar graph with 6 vertices. 2. Is a K 9,3 graph planar? Explain your reasoning.

More information

Spanning Tree. Lecture19: Graph III. Minimum Spanning Tree (MSP)

Spanning Tree. Lecture19: Graph III. Minimum Spanning Tree (MSP) Spanning Tree (015) Lecture1: Graph III ohyung Han S, POSTH bhhan@postech.ac.kr efinition and property Subgraph that contains all vertices of the original graph and is a tree Often, a graph has many different

More information

Topic 10 Part 2 [474 marks]

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

More information

Partha Sarathi Mandal

Partha Sarathi Mandal MA 515: Introduction to Algorithms & MA353 : Design and Analysis of Algorithms [3-0-0-6] Lecture 39 http://www.iitg.ernet.in/psm/indexing_ma353/y09/index.html Partha Sarathi Mandal psm@iitg.ernet.in Dept.

More information

Outline. Graphs. Divide and Conquer.

Outline. Graphs. Divide and Conquer. GRAPHS COMP 321 McGill University These slides are mainly compiled from the following resources. - Professor Jaehyun Park slides CS 97SI - Top-coder tutorials. - Programming Challenges books. Outline Graphs.

More information

The Traveling Salesman Problem (TSP) is where a least cost Hamiltonian circuit is found. CHAPTER 1 URBAN SERVICES

The Traveling Salesman Problem (TSP) is where a least cost Hamiltonian circuit is found. CHAPTER 1 URBAN SERVICES Math 167 eview 1 (c) Janice Epstein HPE 1 UN SEVIES path that visits every vertex exactly once is a Hamiltonian path. circuit that visits every vertex exactly once is a Hamiltonian circuit. Math 167 eview

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

1. Read each problem carefully and follow the instructions.

1. Read each problem carefully and follow the instructions. SSII 2014 1 Instructor: Benjamin Wilson Name: 1. Read each problem carefully and follow the instructions. 2. No credit will be given for correct answers without supporting work and/ or explanation. 3.

More information

Graph Applications, Class Notes, CS 3137 1 Traveling Salesperson Problem Web References: http://www.tsp.gatech.edu/index.html http://www-e.uni-magdeburg.de/mertens/tsp/tsp.html TSP applets A Hamiltonian

More information

We have already seen the transportation problem and the assignment problem. Let us take the transportation problem, first.

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

Midterm 1 : Correction. Friday, Feb. 23.

Midterm 1 : Correction. Friday, Feb. 23. University of Illinois at Urbana-Champaign Spring 00 Math Group F Midterm : Correction. Friday, Feb... (a) Draw a graph with vertices A, B, C and D in which the valence of vertices A and D is and the valence

More information

CPS 102: Discrete Mathematics. Quiz 3 Date: Wednesday November 30, Instructor: Bruce Maggs NAME: Prob # Score. Total 60

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

CAD Algorithms. Categorizing Algorithms

CAD Algorithms. Categorizing Algorithms CAD Algorithms Categorizing Algorithms Mohammad Tehranipoor ECE Department 2 September 2008 1 Categorizing Algorithms Greedy Algorithms Prim s Algorithm (Minimum Spanning Tree) A subgraph that is a tree

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

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

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

More information

Module 6 NP-Complete Problems and Heuristics

Module 6 NP-Complete Problems and Heuristics Module 6 NP-Complete Problems and Heuristics Dr. Natarajan Meghanathan Professor of Computer Science Jackson State University Jackson, MS 39217 E-mail: natarajan.meghanathan@jsums.edu P, NP-Problems Class

More information

Assignment 5: Solutions

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

More information

Approximation Algorithms

Approximation Algorithms 15-251: Great Ideas in Theoretical Computer Science Spring 2019, Lecture 14 March 5, 2019 Approximation Algorithms 1 2 SAT 3SAT Clique Hamiltonian- Cycle given a Boolean formula F, is it satisfiable? same,

More information

Real-World Applications of Graph Theory

Real-World Applications of Graph Theory Real-World Applications of Graph Theory St. John School, 8 th Grade Math Class February 23, 2018 Dr. Dave Gibson, Professor Department of Computer Science Valdosta State University 1 What is a Graph? A

More information

Coping with the Limitations of Algorithm Power Exact Solution Strategies Backtracking Backtracking : A Scenario

Coping with the Limitations of Algorithm Power Exact Solution Strategies Backtracking Backtracking : A Scenario Coping with the Limitations of Algorithm Power Tackling Difficult Combinatorial Problems There are two principal approaches to tackling difficult combinatorial problems (NP-hard problems): Use a strategy

More information

Simple Graph. General Graph

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

More information

Chapter 9. Greedy Technique. Copyright 2007 Pearson Addison-Wesley. All rights reserved.

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

Technische Universität München, Zentrum Mathematik Lehrstuhl für Angewandte Geometrie und Diskrete Mathematik. Combinatorial Optimization (MA 4502)

Technische Universität München, Zentrum Mathematik Lehrstuhl für Angewandte Geometrie und Diskrete Mathematik. Combinatorial Optimization (MA 4502) Technische Universität München, Zentrum Mathematik Lehrstuhl für Angewandte Geometrie und Diskrete Mathematik Combinatorial Optimization (MA 4502) Dr. Michael Ritter Problem Sheet 4 Homework Problems Problem

More information

PATH FINDING AND GRAPH TRAVERSAL

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

More information

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

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

Module 6 P, NP, NP-Complete Problems and Approximation Algorithms

Module 6 P, NP, NP-Complete Problems and Approximation Algorithms Module 6 P, NP, NP-Complete Problems and Approximation Algorithms Dr. Natarajan Meghanathan Associate Professor of Computer Science Jackson State University Jackson, MS 39217 E-mail: natarajan.meghanathan@jsums.edu

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

CAD Algorithms. Shortest Path

CAD Algorithms. Shortest Path lgorithms Shortest Path lgorithms Mohammad Tehranipoor epartment September 00 Shortest Path Problem: ind the best way of getting from s to t where s and t are vertices in a graph. est: Min (sum of the

More information

A region is each individual area or separate piece of the plane that is divided up by the network.

A region is each individual area or separate piece of the plane that is divided up by the network. Math 135 Networks and graphs Key terms Vertex (Vertices) ach point of a graph dge n edge is a segment that connects two vertices. Region region is each individual area or separate piece of the plane that

More information

Greedy Algorithms. Previous Examples: Huffman coding, Minimum Spanning Tree Algorithms

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

Undirected Network Summary

Undirected Network Summary Undirected Network Summary Notice that the network above has multiple edges joining nodes a to d and the network has a loop at node d. Also c is called an isolated node as it is not connected to any other

More information

Exercise 1. D-ary Tree

Exercise 1. D-ary Tree CSE 101: Design and Analysis of Algorithms Winter 2018 Homework 1 Solutions Due: 01/19/2018, 11.59 PM Exercise 1. D-ary Tree A d-ary tree is a rooted tree in which each node has at most d children. Show

More information

CS261: A Second Course in Algorithms Lecture #16: The Traveling Salesman Problem

CS261: A Second Course in Algorithms Lecture #16: The Traveling Salesman Problem CS61: A Second Course in Algorithms Lecture #16: The Traveling Salesman Problem Tim Roughgarden February 5, 016 1 The Traveling Salesman Problem (TSP) In this lecture we study a famous computational problem,

More information

Math 3012 Combinatorial Optimization Worksheet

Math 3012 Combinatorial Optimization Worksheet Math 3012 Combinatorial Optimization Worksheet Combinatorial Optimization is the way in which combinatorial thought is applied to real world optimization problems. Optimization entails achieving the sufficient

More information

Chapter 9 Graph Algorithms

Chapter 9 Graph Algorithms Introduction graph theory useful in practice represent many real-life problems can be if not careful with data structures Chapter 9 Graph s 2 Definitions Definitions an undirected graph is a finite set

More information

IE 102 Spring Routing Through Networks - 1

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

More information

Chapter 9 Graph Algorithms

Chapter 9 Graph Algorithms Chapter 9 Graph Algorithms 2 Introduction graph theory useful in practice represent many real-life problems can be if not careful with data structures 3 Definitions an undirected graph G = (V, E) is a

More information

Traveling Salesperson Problem (TSP)

Traveling Salesperson Problem (TSP) TSP-0 Traveling Salesperson Problem (TSP) Input: Undirected edge weighted complete graph G = (V, E, W ), where W : e R +. Tour: Find a path that starts at vertex 1, visits every vertex exactly once, and

More information

Introduction to Computer Science

Introduction to Computer Science Introduction to Computer Science CSCI 09 Readings St. Amant, Ch. China nhe- Andrew Goodney Fall 08 An algorithm (pronounced AL-go-rithum) is a procedure or formula for solving a problem. The word derives

More information

CS 380 ALGORITHM DESIGN AND ANALYSIS

CS 380 ALGORITHM DESIGN AND ANALYSIS CS 380 ALGORITHM DESIGN AND ANALYSIS Lecture 1: Course Introduction and Motivation Text Reference: Chapters 1, 2 Syllabus Book Schedule Grading: Assignments/Projects/Exams/Quizzes Policies Late Policy

More information

14 More Graphs: Euler Tours and Hamilton Cycles

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

More information

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

Theory of Computing. Lecture 10 MAS 714 Hartmut Klauck

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

More information

Lecture 13. Reading: Weiss, Ch. 9, Ch 8 CSE 100, UCSD: LEC 13. Page 1 of 29

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

Maximum Flows of Minimum Cost

Maximum Flows of Minimum Cost Maximum Flows of Minimum Cost Figure 8-24 Two possible maximum flows for the same network Data Structures and Algorithms in Java 1 Maximum Flows of Minimum Cost (continued) Figure 8-25 Finding a maximum

More information

SHORT ANSWER. Write the word or phrase that best completes each statement or answers the question.

SHORT ANSWER. Write the word or phrase that best completes each statement or answers the question. Chapter 6 Test Review Name SHORT ANSWER. Write the word or phrase that best completes each statement or answers the question. Solve the problem. 1) The number of edges in K12 is 1) 2) The number of Hamilton

More information

Discrete mathematics

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

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

Minimum Spanning Trees

Minimum Spanning Trees Minimum Spanning Trees 04 6 33 135 49 PVD 1 40 146 61 JFK 14 15 0 111 34 Minimum Spanning Trees 1 Outline and Reading Minimum Spanning Trees Definitions A crucial fact The Prim-Jarnik Algorithm Kruskal's

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

Amanur Rahman Saiyed (Indiana State University) THE TRAVELING SALESMAN PROBLEM November 22, / 21

Amanur Rahman Saiyed (Indiana State University) THE TRAVELING SALESMAN PROBLEM November 22, / 21 . Amanur Rahman Saiyed (Indiana State University) THE TRAVELING SALESMAN PROBLEM November 22, 2011 1 / 21 THE TRAVELING SALESMAN PROBLEM Amanur Rahman Saiyed Indiana State University November 22, 2011

More information

Autumn Minimum Spanning Tree Disjoint Union / Find Traveling Salesman Problem

Autumn Minimum Spanning Tree Disjoint Union / Find Traveling Salesman Problem Autumn Minimum Spanning Tree Disjoint Union / Find Traveling Salesman Problem Input: Undirected Graph G = (V,E) and a cost function C from E to the reals. C(e) is the cost of edge e. Output: A spanning

More information

MEI Further Mathematics Support Programme

MEI Further Mathematics Support Programme Further Mathematics Support Programme the Further Mathematics Support Programme www.furthermaths.org.uk Modelling and problem solving with Networks Sharon Tripconey Let Maths take you Further Nov 2009

More information

11.4 Bipartite Multigraphs

11.4 Bipartite Multigraphs 11.4 Bipartite Multigraphs Introduction Definition A graph G is bipartite if we can partition the vertices into two disjoint subsets U and V such that every edge of G has one incident vertex in U and the

More information

Problem Set 6 (Due: Wednesday, December 6, 2006)

Problem Set 6 (Due: Wednesday, December 6, 2006) Urban OR Fall 2006 Problem Set 6 (Due: Wednesday, December 6, 2006) Problem 1 Problem 6.6 in Larson and Odoni Problem 2 Exercise 6.7 (page 442) in Larson and Odoni. Problem Suppose we have a network G(N,

More information

Mathematics MD01. General Certificate of Education Advanced Subsidiary Examination. Unit Decision 1

Mathematics MD01. General Certificate of Education Advanced Subsidiary Examination. Unit Decision 1 Centre Number Candidate Number For Examiner s Use Surname Other Names Candidate Signature Examiner s Initials Mathematics Unit Decision 1 General Certificate of Education Advanced Subsidiary Examination

More information

Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras

Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras Lecture 28 Chinese Postman Problem In this lecture we study the Chinese postman

More information

How can we lay cable at minimum cost to make every telephone reachable from every other? What is the fastest route between two given cities?

How can we lay cable at minimum cost to make every telephone reachable from every other? What is the fastest route between two given cities? 1 Introduction Graph theory is one of the most in-demand (i.e. profitable) and heavily-studied areas of applied mathematics and theoretical computer science. May graph theory questions are applied in this

More information

Finite Math A Chapter 6 Notes Hamilton Circuits

Finite Math A Chapter 6 Notes Hamilton Circuits Chapter 6: The Mathematics of Touring (Hamilton Circuits) and Hamilton Paths 6.1 Traveling Salesman Problems/ 6.2 Hamilton Paths and Circuits A traveling salesman has clients in 5 different cities. He

More information

of optimization problems. In this chapter, it is explained that what network design

of optimization problems. In this chapter, it is explained that what network design CHAPTER 2 Network Design Network design is one of the most important and most frequently encountered classes of optimization problems. In this chapter, it is explained that what network design is? The

More information

CSC Design and Analysis of Algorithms. Lecture 4 Brute Force, Exhaustive Search, Graph Traversal Algorithms. Brute-Force Approach

CSC Design and Analysis of Algorithms. Lecture 4 Brute Force, Exhaustive Search, Graph Traversal Algorithms. Brute-Force Approach CSC 8301- Design and Analysis of Algorithms Lecture 4 Brute Force, Exhaustive Search, Graph Traversal Algorithms Brute-Force Approach Brute force is a straightforward approach to solving a problem, usually

More information

SEVENTH EDITION and EXPANDED SEVENTH EDITION

SEVENTH EDITION and EXPANDED SEVENTH EDITION SEVENTH EDITION and EXPANDED SEVENTH EDITION Slide 14-1 Chapter 14 Graph Theory 14.1 Graphs, Paths and Circuits Definitions A graph is a finite set of points called vertices (singular form is vertex) connected

More information

1 The Traveling Salesman Problem

1 The Traveling Salesman Problem Comp 260: Advanced Algorithms Tufts University, Spring 2018 Prof. Lenore Cowen Scribe: Duc Nguyen Lecture 3a: The Traveling Salesman Problem 1 The Traveling Salesman Problem The Traveling Salesman Problem

More information

Institute of Operating Systems and Computer Networks Algorithms Group. Network Algorithms. Tutorial 4: Matching and other stuff

Institute of Operating Systems and Computer Networks Algorithms Group. Network Algorithms. Tutorial 4: Matching and other stuff Institute of Operating Systems and Computer Networks Algorithms Group Network Algorithms Tutorial 4: Matching and other stuff Christian Rieck Matching 2 Matching A matching M in a graph is a set of pairwise

More information

Graph Theory(Due with the Final Exam)

Graph Theory(Due with the Final Exam) Graph Theory(ue with the Final Exam) Possible Walking Tour.. Is it possible to start someplace(either in a room or outside) and walk through every doorway once and only once? Explain. If it is possible,

More information

5105 BHARATHIDASAN ENGINEERING COLLEGE

5105 BHARATHIDASAN ENGINEERING COLLEGE CS 6402 DESIGN AND ANALYSIS OF ALGORITHMS II CSE/IT /IV SEMESTER UNIT I PART A 1. Design an algorithm to compute the area and circumference of a circle?(dec 2016) 2. Define recurrence relation? (Dec 2016)

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

MAS 341: GRAPH THEORY 2016 EXAM SOLUTIONS

MAS 341: GRAPH THEORY 2016 EXAM SOLUTIONS MS 41: PH THEOY 2016 EXM SOLUTIONS 1. Question 1 1.1. Explain why any alkane C n H 2n+2 is a tree. How many isomers does C 6 H 14 have? Draw the structure of the carbon atoms in each isomer. marks; marks

More information

Math for Liberal Arts MAT 110: Chapter 13 Notes

Math for Liberal Arts MAT 110: Chapter 13 Notes Math for Liberal Arts MAT 110: Chapter 13 Notes Graph Theory David J. Gisch Networks and Euler Circuits Network Representation Network: A collection of points or objects that are interconnected in some

More information

CSE 21: Mathematics for Algorithms and Systems Analysis

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

Lecture 1. 2 Motivation: Fast. Reliable. Cheap. Choose two.

Lecture 1. 2 Motivation: Fast. Reliable. Cheap. Choose two. Approximation Algorithms and Hardness of Approximation February 19, 2013 Lecture 1 Lecturer: Ola Svensson Scribes: Alantha Newman 1 Class Information 4 credits Lecturers: Ola Svensson (ola.svensson@epfl.ch)

More information

Matching 4/21/2016. Bipartite Matching. 3330: Algorithms. First Try. Maximum Matching. Key Questions. Existence of Perfect Matching

Matching 4/21/2016. Bipartite Matching. 3330: Algorithms. First Try. Maximum Matching. Key Questions. Existence of Perfect Matching Bipartite Matching Matching 3330: Algorithms A graph is bipartite if its vertex set can be partitioned into two subsets A and B so that each edge has one endpoint in A and the other endpoint in B. A B

More information

1 5,9,2,7,6,10,4,3,8,1 The first number (5) is automatically the first number of the sorted list

1 5,9,2,7,6,10,4,3,8,1 The first number (5) is automatically the first number of the sorted list Algorithms One of the more challenging aspects of Computer Science are algorithms. An algorithm is a plan that solves a problem. When assembling a bicycle based on the included instructions, in this case,

More information

Exact Algorithms for NP-hard problems

Exact Algorithms for NP-hard problems 24 mai 2012 1 Why do we need exponential algorithms? 2 3 Why the P-border? 1 Practical reasons (Jack Edmonds, 1965) For practical purposes the difference between algebraic and exponential order is more

More information

2 Approximation Algorithms for Metric TSP

2 Approximation Algorithms for Metric TSP Comp260: Advanced Algorithms Tufts University, Spring 2002 Professor Lenore Cowen Scribe: Stephanie Tauber Lecture 3: The Travelling Salesman Problem (TSP) 1 Introduction A salesman wishes to visit every

More information

Lecture 13: Minimum Spanning Trees Steven Skiena

Lecture 13: Minimum Spanning Trees Steven Skiena Lecture 13: Minimum Spanning Trees Steven Skiena Department of Computer Science State University of New York Stony Brook, NY 11794 4400 http://www.cs.stonybrook.edu/ skiena Problem of the Day Your job

More information

Reference Sheet for CO142.2 Discrete Mathematics II

Reference Sheet for CO142.2 Discrete Mathematics II Reference Sheet for CO14. Discrete Mathematics II Spring 017 1 Graphs Defintions 1. Graph: set of N nodes and A arcs such that each a A is associated with an unordered pair of nodes.. Simple graph: no

More information

Announcements Problem Set 5 is out (today)!

Announcements Problem Set 5 is out (today)! CSC263 Week 10 Announcements Problem Set is out (today)! Due Tuesday (Dec 1) Minimum Spanning Trees The Graph of interest today A connected undirected weighted graph G = (V, E) with weights w(e) for each

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 9 Minimum Spanning Trees Thanks to the text authors who contributed to these slides Why Minimum Spanning Trees (MST)? Example 1 A

More information

Unit 2: Algorithmic Graph Theory

Unit 2: Algorithmic Graph Theory Unit 2: Algorithmic Graph Theory Course contents: Introduction to graph theory Basic graph algorithms Reading Chapter 3 Reference: Cormen, Leiserson, and Rivest, Introduction to Algorithms, 2 nd Ed., McGraw

More information

Instant Insanity Instructor s Guide Make-it and Take-it Kit for AMTNYS 2006

Instant Insanity Instructor s Guide Make-it and Take-it Kit for AMTNYS 2006 Instant Insanity Instructor s Guide Make-it and Take-it Kit for AMTNYS 2006 THE KIT: This kit contains materials for two Instant Insanity games, a student activity sheet with answer key and this instructor

More information