Five Problems CSE 421 Richard Anderson Winter 2009, Lecture 3.

Slides:



Advertisements
Similar presentations
1 EE5900 Advanced Embedded System For Smart Infrastructure Static Scheduling.
Advertisements

Vertex Cover Dominating Set These slides are based on the Lecture Notes by David Mount for the course CMSC 451 at the University of Maryland. The Copyright.
Algorithms and Networks
CSE 421 Algorithms Richard Anderson Lecture 23 Network Flow Applications.
Introduction To Algorithms CS 445 Discussion Session 8 Instructor: Dr Alon Efrat TA : Pooja Vaswani 04/04/2005.
Lectures on Network Flows
CSC5160 Topics in Algorithms Tutorial 2 Introduction to NP-Complete Problems Feb Jerry Le
Introduction to Approximation Algorithms Lecture 12: Mar 1.
Maximum Flows Lecture 4: Jan 19. Network transmission Given a directed graph G A source node s A sink node t Goal: To send as much information from s.
CSE 421 Algorithms Richard Anderson Lecture 27 NP Completeness.
CSEP 521 Applied Algorithms
Nattee Niparnan. Easy & Hard Problem What is “difficulty” of problem? Difficult for computer scientist to derive algorithm for the problem? Difficult.
CSE 421 Algorithms Richard Anderson Lecture 24 Network Flow Applications.
CSEP 521 Applied Algorithms Richard Anderson Lecture 10 NP Completeness.
Lecture 16 Maximum Matching. Incremental Method Transform from a feasible solution to another feasible solution to increase (or decrease) the value of.
Approximation Algorithms
CSC 172 P, NP, Etc. “Computer Science is a science of abstraction – creating the right model for thinking about a problem and devising the appropriate.
CSCI 3160 Design and Analysis of Algorithms Tutorial 10 Chengyu Lin.
Data Structures & Algorithms Graphs
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Matching Algorithms and Networks. Algorithms and Networks: Matching2 This lecture Matching: problem statement and applications Bipartite matching Matching.
CSEP 521 Applied Algorithms Richard Anderson Winter 2013 Lecture 1.
CSE 421 Algorithms Richard Anderson Lecture 27 NP-Completeness and course wrap up.
NP-Complete problems.
CS223 Advanced Data Structures and Algorithms 1 Maximum Flow Neil Tang 3/30/2010.
Instructor Neelima Gupta Table of Contents Five representative problems.
CSCI-256 Data Structures & Algorithm Analysis Lecture Note: Some slides by Kevin Wayne. Copyright © 2005 Pearson-Addison Wesley. All rights reserved. 25.
1 EE5900 Advanced Embedded System For Smart Infrastructure Static Scheduling.
CSEP 521 Applied Algorithms Richard Anderson Winter 2013 Lecture 3.
CSCI 256 Data Structures and Algorithm Analysis Lecture 2 Some slides by Kevin Wayne copyright 2005, Pearson Addison Wesley all rights reserved, and some.
CSEP 521 Applied Algorithms Richard Anderson Lecture 8 Network Flow.
CSE 421 Algorithms Richard Anderson Lecture 27 NP-Completeness Proofs.
CSCI-256 Data Structures & Algorithm Analysis Lecture Note: Some slides by Kevin Wayne. Copyright © 2005 Pearson-Addison Wesley. All rights reserved. 3.
COSC 3101A - Design and Analysis of Algorithms 14 NP-Completeness.
CSE 332: NP Completeness, Part II Richard Anderson Spring 2016.
CSC 172 P, NP, Etc.
Richard Anderson Lectures NP-Completeness
Richard Anderson Lecture 26 NP-Completeness
Richard Anderson Lecture 29 NP-Completeness and course wrap-up
Piyush Kumar (Lecture 1: Introduction)
Richard Anderson Lecture 26 NP-Completeness
Piyush Kumar (Lecture 1: Introduction)
Richard Anderson Lecture 25 Min Cut Applications and NP-Completeness
Algorithms and Networks
Algorithm Design and Analysis
Lectures on Network Flows
Richard Anderson Lecture 23 Network Flow
Lecture 22 Network Flow, Part 2
The Taxi Scheduling Problem
Lecture 16 Maximum Matching
Richard Anderson Lecture 25 NP-Completeness
Richard Anderson Lecture 28 NP-Completeness
Richard Anderson Lecture 29 Complexity Theory
CSE 421 Richard Anderson Autumn 2016, Lecture 3
Vertex Covers, Matchings, and Independent Sets
Linear Programming Duality, Reductions, and Bipartite Matching
Richard Anderson Lecture 30 NP-Completeness
CSE 421 Richard Anderson Autumn 2015, Lecture 3
Richard Anderson Autumn 2016 Lecture 7
Flow Networks and Bipartite Matching
Piyush Kumar (Lecture 1: Introduction)
The Theory of NP-Completeness
Richard Anderson Lecture 27 Survey of NP Complete Problems
CSE 417: Algorithms and Computational Complexity
Richard Anderson Winter 2019 Lecture 7
CSE 421, University of Washington, Autumn 2006
Piyush Kumar (Lecture 1: Introduction)
CSE 421 Richard Anderson Winter 2019, Lecture 3
Lecture 22 Network Flow, Part 2
CSE 421 Richard Anderson Autumn 2019, Lecture 3
Presentation transcript:

Five Problems CSE 421 Richard Anderson Winter 2009, Lecture 3

Theory of Algorithms What is expertise? How do experts differ from novices?

Introduction of five problems Show the types of problems we will be considering in the class Examples of important types of problems Similar looking problems with very different characteristics Problems –Scheduling –Weighted Scheduling –Bipartite Matching –Maximum Independent Set –Competitive Facility Location

What is a problem? Instance Solution Constraints on solution Measure of value

Problem: Scheduling Suppose that you own a banquet hall You have a series of requests for use of the hall: (s 1, f 1 ), (s 2, f 2 ),... Find a set of requests as large as possible with no overlap

What is the largest solution?

Greedy Algorithm Test elements one at a time if they can be members of the solution If an element is not ruled out by earlier choices, add it to the solution Many possible choices for ordering (length, start time, end time) For this problem, considering the jobs by increasing end time works

Suppose we add values? (s i, f i, v i ), start time, finish time, payment Maximize value of elements in the solution

Greedy Algorithms Earliest finish time Maximum value Give counter examples to show these algorithms don’t find the maximum value solution

Dynamic Programming Requests R 1, R 2, R 3,... Assume requests are in increasing order of finish time (f 1 < f 2 < f 3...) Opt i is the maximum value solution of {R 1, R 2,..., R i } containing R i Opt i = Max{ j | f j < s i }[Opt j + v i ]

Matching Given a bipartite graph G=(U,V,E), find a subset of the edges M of maximum size with no common endpoints. Application: –U: Professors –V: Courses –(u,v) in E if Prof. u can teach course v

Find a maximum matching

Augmenting Path Algorithm

Reduction to network flow More general problem Send flow from source to sink Flow subject to capacities at edges Flow conserved at vertices Can solve matching as a flow problem

Maximum Independent Set Given an undirected graph G=(V,E), find a set I of vertices such that there are no edges between vertices of I Find a set I as large as possible

Find a Maximum Independent Set A B J DC K E M N O P R Q I L H T U S G F

Verification: Prove the graph has an independent set of size 8

Key characteristic Hard to find a solution Easy to verify a solution once you have one Other problems like this –Hamiltonian circuit –Clique –Subset sum –Graph coloring

NP-Completeness Theory of Hard Problems A large number of problems are known to be equivalent Very elegant theory

Are there even harder problems? Simple game: –Players alternating selecting nodes in a graph Score points associated with node Remove nodes neighbors –When neither can move, player with most points wins

Competitive Facility Location Choose location for a facility –Value associated with placement –Restriction on placing facilities too close together Competitive –Different companies place facilities E.g., KFC and McDonald’s

Complexity theory These problems are P-Space complete instead of NP-Complete –Appear to be much harder –No obvious certificate G has a Maximum Independent Set of size 10 Player 1 wins by at least 10 points

Summary Scheduling Weighted Scheduling Bipartite Matching Maximum Independent Set Competitive Scheduling