Journal of Combinatorial Optimization

, Volume 5, Issue 3, pp 287-297

First online:

On Approximating a Scheduling Problem

  • Pierluigi CrescenziAffiliated withDipartimento di Sistemi e Informatica, Università degli Studi di Firenze
  • , Xiaotie DengAffiliated withDepartment of Computer Science, City University of Hong Kong
  • , Christos H. PapadimitriouAffiliated withComputer Science Division, University of California at Berkeley

Rent the article at a discount

Rent now

* Final gross prices may vary according to local VAT.

Get Access


Given a set of communication tasks (best described in terms of a weighted bipartite graph where one set of nodes denotes the senders, the other set the receivers, edges are communication tasks, and the weight of an edge is the time required for transmission), we wish to minimize the total time required for the completion of all communication tasks assuming that tasks can be preempted (that is, each edge can be subdivided into many edges with weights adding up to the edge's original weight) and that preemption comes with a cost. In this paper, we first prove that one cannot approximate this problem within a factor smaller than \(\frac{7}{6}\) unless P=NP. It is known that a simple approximation algorithm achieves within a ratio of two (H. Choi and S.L. Hakimi, Algorithmica, vol. 3, pp. 223–245, 1988). However, our experimental results show that its performance is worse than the originally proposed heuristic algorithm (I.S. Gopal and C.K. Wong, IEEE Transactions on Communications, vol. 33, pp. 497–501, 1985). We devise a more sophisticated algorithm, called the potential function algorithm which, on the one hand, achieves a provable approximation ratio of two, and on the other hand, shows very good experimental performance. Moreover, the way in which our more sophisticated algorithm derives from the simple one, suggests a hierarchy of algorithms, all of which have a worst-case performance at most two, but which we suspect to have increasingly better performance, both in worst case and with actual instances.

parallel computation communication bipartite graph edge coloring