# An approximation algorithm for the generalized assignment problem

- 1.7k Downloads
- 263 Citations

## Abstract

The generalized assignment problem can be viewed as the following problem of scheduling parallel machines with costs. Each job is to be processed by exactly one machine; processing job*j* on machine*i* requires time*p*_{ ij } and incurs a cost of*c*_{ ij }; each machine*i* is available for*T*_{ i } time units, and the objective is to minimize the total cost incurred. Our main result is as follows. There is a polynomial-time algorithm that, given a value*C*, either proves that no feasible schedule of cost*C* exists, or else finds a schedule of cost at most*C* where each machine*i* is used for at most 2*T*_{ i } time units.

We also extend this result to a variant of the problem where, instead of a fixed processing time*p*_{ ij }, there is a range of possible processing times for each machine—job pair, and the cost linearly increases as the processing time decreases. We show that these results imply a polynomial-time 2-approximation algorithm to minimize a weighted sum of the cost and the makespan, i.e., the maximum job completion time. We also consider the objective of minimizing the mean job completion time. We show that there is a polynomial-time algorithm that, given values*M* and*T*, either proves that no schedule of mean job completion time*M* and makespan*T* exists, or else finds a schedule of mean job completion time at most*M* and makespan at most 2*T.*

## Key words

Approximation algorithms generalized assignment problem scheduling unrelated parallel machines## Preview

Unable to display preview. Download preview PDF.

## References

- [1]J.L. Bruno, E.G. Coffmann Jr. and R. Sethi, “Scheduling independent tasks to reduce mean finishing time,”
*Communications of the ACM*17 (1974) 382–387.Google Scholar - [2]W.A. Horn, “Minimizing average flow time with parallel machines,”
*Operations Research*21 (1973) 846–847.Google Scholar - [3]E.L. Lawler, J.K. Lenstra, A.H.G. Rinnooy Kan and D.B. Shmoys, “Sequencing and scheduling: algorithms and complexity,” in: A.H.G. Rinnooy Kan and P. Zipkin, eds.,
*Handbooks in Operations Research and Management Science, Vol. 4: Logistics of Production and Inventory*(North-Holland, Amsterdam, 1993) pp. 445–522.Google Scholar - [4]J.K. Lenstra, D.B. Shmoys and É. Tardos, “Approximation algorithms for scheduling unrelated parallel machines,”
*Mathematical Programming*46 (1990) 259–271.Google Scholar - [5]J.-H. Lin and J.S. Vitter, “
*ε*-approximations with minimum packing constraint violation,” in:*Proceedings of the 24th Annual ACM Symposium on the Theory of Computing*(1992) pp. 771–782.Google Scholar - [6]L. Lovász and M. Plummer,
*Matching Theory*(Akademiai Kiado, Budapest, and North-Holland, Amsterdam, 1986).Google Scholar - [7]S.A. Plotkin, D.B. Shmoys and É. Tardos, “Fast approximation algorithms for fractional packing and covering problems” Technical Report 999, School of Operations Research and Industrial Engineering, Cornell University (Ithaca, NY, 1992).Google Scholar
- [8]M.A. Trick, “Scheduling multiple variable-speed machines,” in:
*Proceedings of the 1st Conference on Integer Programming and Combinatorial Optimization*(1990) pp. 485–494.Google Scholar - [9]M.A. Trick, “Scheduling multiple variable-speed machines,” unpublished manuscript (1991).Google Scholar