This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
A Parallel Time/Hardware Tradeoff T.H=O(2/sup n/2/) for the Knapsack Problem
February 1991 (vol. 40 no. 2)
pp. 221-225

A parallel algorithm for solving the knapsack problem on a single-instruction, multiple-data machine with shared memory is presented. The shared memory allows concurrent reading while concurrent writing is forbidden. The knapsack problem is of size n, which the algorithm solves in time T=O(n*(2/sup n/2/)/sup epsilon /) when P=O((2/sup n/2/)/sup (1- epsilon )/), 0>or= epsilon >or=1, processors are available. It is shown that the algorithm needs S=O(2/sup n/2/) memory space in a shared memory. If H (for hardware) is the number of processors plus the number of memory cells used by a parallel algorithm, the parallel algorithm takes a linear time proportional to (n/2) to find a solution when P=O(2/sup n/2/), leading a tradeoff T*H=O(2/sup n/2/).

[1] S. G. Akl, "Optimal parallel algorithms for computing convex hulls and for sorting,"Computing, vol. 33, pp. 1-11, 1984.
[2] S. G. Akl, "An optimal algorithm for parallel selection,"Inform. Processing Lett., vol. 19, pp. 47-50, 1984.
[3] S. G. Akl,Parallel Sorting Algorithms. Orlando, FL: Academic, 1985.
[4] S. G. Akl and N. Santoro, "Optimal parallel merging and sorting without memory conflicts,"IEEE Trans. Comput., vol. C-36, pp. 1367-1369, 1987.
[5] M. Cosnard, A. G. Ferreira, and H. Herbelin, "The two-list algorithm for the knapsack problem on a FPS T20,"Parallel Computing, to be published.
[6] A. G. Ferreira, "Efficient parallel algorithms for the knapsack problem," inParallel Processing, M. Cosnardet al. Eds. North-Holland ,IFIP 1988, pp. 169-179.
[7] A. G. Ferreira, "The knapsack problem in parallel architectures," inParallel and Distributed Algorithms, M. Cosnardet al. Eds. North-Holland, 1989, p. 145-152.
[8] E. Horowitz and S. Sahni, "Computing partitions with applications to the knapsack problem,"J. ACM, vol. 21, pp. 277-292, Apr. 1974.
[9] E. D. Karnin, "A parallel algorithm for the knapsack problem,"IEEE Trans. Comput., vol. C-33, pp. 404-408, May 1984.
[10] R. Karp, "Reducibility among combinatorial problems," inComplexity of Computer Computations, R. E. Miller and J. W. Thather, Eds. New York: Plenum, 1972, pp. 85-104.
[11] D. E. Knuth,The Art of Computer Programming, Vol. 3, Reading, MA: Addison-Wesley, 1973.
[12] F.T. Leighton, "Tight bounds on the complexity of parallel sorting," inProc. 16th Annu. ACM Symp. Theory Computing, Washington, DC, May 1984, pp. 71-80.
[13] G. N. Frederickson and D. B. Johnson, "Generalized selection and ranking: Sorted matrices,"SIAM J. Comput., vol. 13, no. 1, pp. 14-30, Feb. 1984.
[14] F. P. Preparata, "New parallel-sorting schemes,"IEEE Trans. Comput., vol. C-27, pp. 669-673, July 1978.
[15] H. J. Siegel, "The universality of various types of SIMD machine interconnection networks," inProc. Fourth Annu. Symp. Comput. Architecture, Silver Spring, MD, Mar. 1977.
[16] R. Schroeppel and A. Shamir, "AT = O(2n/2), S = O(2n/4)algorithm for certain NP-complete problems,"SIAM J. Comput., vol. 10, no. 3, pp. 456, 464, Aug. 1981.
[17] H. S. Stone, "Parallel processing with the perfect shuffle,"IEEE Trans. Comput., vol. C-20, no. 2, pp. 153-161, Feb. 1971.

Index Terms:
SIMD machine; parallel time/hardware tradeoff; knapsack problem; parallel algorithm; shared memory; concurrent reading; concurrent writing; linear time; computational complexity; parallel algorithms.
Citation:
A.G. Ferreira, "A Parallel Time/Hardware Tradeoff T.H=O(2/sup n/2/) for the Knapsack Problem," IEEE Transactions on Computers, vol. 40, no. 2, pp. 221-225, Feb. 1991, doi:10.1109/12.73593
Usage of this product signifies your acceptance of the Terms of Use.