Approximation Schemes for Machine Scheduling
In the classical problem of makespan minimization on identical parallel machines, or machine scheduling for short, a set of jobs has to be assigned to a set of machines. The jobs have a processing time and the goal is to minimize the latest finishing time of the jobs. Machine scheduling is well known to be NP-hard and thus there is no polynomial time algorithm for this problem that is guaranteed to find an optimal solution unless P=NP. There is, however, a polynomial time approximation scheme (PTAS) for machine scheduling, that is, a family of approximation algorithms with ratios arbitrarily close to one. Whether a problem admits an approximation scheme or not is a fundamental question in approximation theory. In the present work, we consider this question for several variants of machine scheduling. We study the problem where the machines are partitioned into a constant number of types and the processing time of the jobs is also dependent on the machine type. We present so called efficient PTAS (EPTAS) results for this problem and variants thereof. We show that certain cases of machine scheduling with assignment restrictions do not admit a PTAS unless P=NP. Moreover, we introduce a graph framework based on the restrictions of the jobs and use it in the design of approximation schemes for other variants. We introduce an enhanced integer programming formulation for assignment problems, show that it can be efficiently solved, and use it in the EPTAS design for variants of machine scheduling with setup times. For one of the problems, we show that there is also a PTAS in the case with uniform machines, where machines have speeds influencing the processing times of the jobs. We consider cases in which each job requires a certain amount of a shared renewable resource and the processing time is depended on the amount of resource it receives or not. We present so called asymptotic fully polynomial time approximation schemes (AFPTAS) for the problems.