Electronic Thesis and Dissertation Repository


Doctor of Philosophy


Computer Science


Solis-Oba, Roberto


A fundamental problem in scheduling is makespan minimization on unrelated parallel machines (R||Cmax). Let there be a set J of jobs and a set M of parallel machines, where every job Jj ∈ J has processing time or length pi,j ∈ ℚ+ on machine Mi ∈ M. The goal in R||Cmax is to schedule the jobs non-preemptively on the machines so as to minimize the length of the schedule, the makespan. A ρ-approximation algorithm produces in polynomial time a feasible solution such that its objective value is within a multiplicative factor ρ of the optimum, where ρ is called its approximation ratio. The best-known approximation algorithms for R||Cmax have approximation ratio 2, but there is no ρ-approximation algorithm with ρ < 3/2 for R||Cmax unless P=NP. A longstanding open problem in approximation algorithms is to reconcile this hardness gap. We take a two-pronged approach to learn more about the hardness gap of R||Cmax: (1) find approximation algorithms for special cases of R||Cmax whose approximation ratios are tight (unless P=NP); (2) identify special cases of R||Cmax that have the same 3/2-hardness bound of R||Cmax, but where the approximation barrier of 2 can be broken.

This thesis is divided into four parts. The first two parts investigate a special case of R||Cmax called the graph balancing problem when every job has one of two lengths and the machines may have one of two speeds. First, we present 3/2-approximation algorithms for the graph balancing problem with one speed and two job lengths. In the second part of this thesis we give an approximation algorithm for the graph balancing problem with two speeds and two job lengths with approximation ratio (√65+7)/8 ≈ 1.88278. In the third part of the thesis we present approximation algorithms and hardness of approximation results for two problems called R||Cmax with simple job-intersection structure and R||Cmax with bounded job assignments. We conclude this thesis by presenting algorithmic and computational complexity results for a generalization of R||Cmax where J is partitioned into sets called bags, and it must be that no two jobs belonging to the same bag are scheduled on the same machine.