1 / 12

Lecture 20

Lecture 20. CSE 331 Oct 21, 2009. Algorithm for Interval Scheduling. R : set of requests. Set A to be the empty set. While R is not empty. Choose i in R with the earliest finish time. Add i to A. Remove all requests that conflict with i from R. A is optimal. Return A.

brosh
Download Presentation

Lecture 20

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Lecture 20 CSE 331 Oct 21, 2009

  2. Algorithm for Interval Scheduling R: set of requests Set A to be the empty set While R is not empty Choose i in R with the earliest finish time Add i to A Remove all requests that conflict with i from R A is optimal Return A

  3. Run time analysis O(n log n) time sort intervals such that f(i) ≤ f(i+1) O(n) time build array s[1..n]s.t. s[i] = start time for i Set A to be the empty set While R is not empty Choose i in R with the earliest finish time Add i to A Remove all requests that conflict with i from R Return A

  4. Today’s agenda Finish run time analysis A more realistic scheduling problem for end of semester blues

  5. Run time analysis O(n log n) time sort intervals such that f(i) ≤ f(i+1) O(n) time build array s[1..n]s.t. s[i] = start time for i Set A to be the empty set While R is not empty Do the removal on the fly Choose i in R with the earliest finish time Add i to A Remove all requests that conflict with i from R Return A

  6. Algorithm implementation Go through the intervals in order of their finish time 3 How can you tell in O(1) time if any of 2,3 or 4 conflict with 1? Check if s[i] < f(1) 2 1 4 O(n log n) run time In general, if jth interval is the last one chosen Pick smallest i>j such that s[i] ≥ f(j)

  7. Reading Assignment Sec 4.1of [KT]

  8. The “real” end of Semester blues There are deadlines and durations of tasks Write up a term paper Party! Exam study 331 HW Project Monday Tuesday Wednesday Thursday Friday

  9. The “real” end of Semester blues There are deadlines and durations of tasks Write up a term paper Exam study Party! 331 HW Project Monday Tuesday Wednesday Thursday Friday

  10. The algorithmic task YOU decide when to start each task Write up a term paper Exam study You have to do ALL the tasks Party! 331 HW Project Monday Tuesday Wednesday Thursday Friday

  11. Scheduling to minimize lateness All the tasks have to be scheduled GOAL: minimize maximum lateness Write up a term paper Exam study Party! 331 HW Project Monday Tuesday Wednesday Thursday Friday

  12. One possible schedule All the tasks have to be scheduled GOAL: minimize maximum lateness Lateness = 0 Lateness = 2 Exam study Party! 331 HW Write up a term paper Monday Tuesday Wednesday Thursday Friday

More Related