daacentric.blogg.se

Interval scheduling earliest finishing time
Interval scheduling earliest finishing time




Moreover, it 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. For instance, task A might run from 2:00 to 5:00, task B might run from 6:00 to 8:00 and task C might run from 9:00 to 10:00. Each task is represented by an interval describing the time in which it needs to be executed. Using the technique of Linear programming relaxation, it is possible to approximate the optimal scheduling with slightly better approximation factors.Interval scheduling is a class of problems in computer science, particularly in the area of algorithm design. The greedy algorithm selects only 1 interval from group #1, while an optimal scheduling is to select from group #2 and then from group #1.Ī more general approximation algorithm attains a 2-factor approximation for the weighted case. For example, in the following instance of GISMP2:

interval scheduling earliest finishing time

Continue until the set of candidate intervals is empty.Ī formal explanation is given by a Charging argument.Remove x, and all intervals intersecting x, and all intervals in the same group of x, from the set of candidate intervals.Select the interval, x, with the earliest finishing time.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.

interval scheduling earliest finishing time

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). Interval scheduling is a class of problems in computer science, particularly in the area of algorithm design.






Interval scheduling earliest finishing time