

The following greedy algorithm finds a solution that contains at least 1/2 of the optimal number of intervals: This can be proved by showing an approximation-preserving reduction from MAX 3-SAT-3 to GISMP2. Moreover, GISMPk is MaxSNP-complete, i.e., it does not have a PTAS unless P=NP. A subset of intervals is compatible if no two intervals overlap on the machine/resource. For instance, task A might run from 2:00 to 5:00, task B might run from 4:00 to 10:00 and task C might run from 9:00 to 11:00.

Each task is represented by an interval describing the time in which it needs to be processed by some machine (or, equivalently, scheduled on some resource). it works!).Interval scheduling is a class of problems in computer science, particularly in the area of algorithm design. Corollary: Algo returns an optimal solution (i.e. Schedule All Intervals Thm: Every interval gets a real label. INTERVAL-SCHEDULING( s1, f1, …, sn, fn ).Interval Scheduling Input: Output: Objective: a set of time-intervals a subset of non-overlapping intervals maximize # of selected intervals Idea #4: Select the earliest finishing interval, remove overlapping intervals and recurse. Interval Scheduling Input: Output: Objective: a set of time-intervals a subset of non-overlapping intervals maximize # of selected intervals Idea #3: Select the interval with the fewest conflicts, remove overlapping intervals and recurse. Interval Scheduling Input: Output: Objective: a set of time-intervals a subset of non-overlapping intervals maximize # of selected intervals Idea #2: Select the shortest interval, remove overlapping intervals and recurse. Interval Scheduling Input: Output: Objective: a set of time-intervals a subset of non-overlapping intervals maximize # of selected intervals Idea #1: Select interval that starts earliest, remove overlapping intervals and recurse. Interval Scheduling Input: Output: Objective: a set of time-intervals a subset of non-overlapping intervals maximize # of selected intervals
