Skip to main content
Log in

Heuristic algorithms for the multiple knapsack problem

Heuristische Algorithmen zur Packung von mehreren Rucksäcken

  • Published:
Computing Aims and scope Submit manuscript

Abstract

Given a set of items, each having a profit and a weight, and a set of knapsacks, each having a capacity, we consider the problem of inserting items into the knapsacks in such a way that the subset of inserted, items has the maximum total profit without the total weight in each knapsack exceeding its capacity.

The best algorithms for the exact solution of this problem can be applied, with acceptable running times, to cases with a maximum of 200 items and 4 knapsacks, but real world applications (such as, for example, cutting stock and loading problems), often involving a greater number of variables, call for the use of heuristics.

This paper presents methods for finding suboptimal, solutions to the Multiple Knapsack Problem. An extensive computational experience was carried out both on small-size and large-size randomly generated problems; the results indicate that the proposed algorithms have a satisfactory behaviour with regard both to running times and quality of the solutions found.

A Fortrans IV implementation of the algorithms is given.

Zusammenfassung

Vorhanden ist eine Menge von Gegenständen mit gegebenem Gewicht und gegebenem Wert, ferner eine Menge von Rucksäcken mit gegebener Tragfähigkeit. Die Gegenstände sollen so in die Rucksäcke gepackt werden, daß die Tragfähigkeit der einzelnen Rucksäcke nicht überschritten wird und der Gesamtwert der verwendeten Gegenstände möglichst groß ist.

Die besten bekannten Algorithmen liefern mit vertretbarem Rechenaufwand, Lösungen für höchstens 200 Gegenstände und 4 Rucksäcke. Aber praktische, Anwendungen wie z. B. Teilungs-, Lagerhaltungs- und Ladeaufgaben benötigen oft eine größere Zahl von Variablen und verlangen, daher die Verwendung von Heuristik.

Der vorliegende Artikel erläutert Methoden, mit deren Hilfe sich suboptimale Lösungen des Mehr-Rucksack-Problems finden lassen. Numerische Experimente mit Problemen verschiedener, Größe zeigen, daß sich die verschiedenen Algorithmen zufriedenstellend verhalten, sowohl hinsichtlich der Laufzeiten als auch bezüglich der Güte der gefundenen Lösungen.

Eine RORTRAN-IV-Version der Algorithmen ist beigefügt.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Fisk, J. C., Hung, M. S.: A heuristic routine for solving large loading problems. Presented at the TIMS/ORSA Joint National Meeting, New Orleans, May 1979.

  2. Hung, M. S., Fisk, J. C.: An algorithm for 0–1 multiple knapsack problems. Naval Research Logistics Quarterly25, 571–579 (1978).

    Google Scholar 

  3. Martello, S., Toth, P.: Algorithm for the solution of the 0–1 single knapsack problem. Computing21, 81–86 (1978).

    Google Scholar 

  4. Martello, S., Toth, P.: Solution of the 0–1 multiple knapsack problem. Europ. J. Operat. Res.4, 276–283 (1980).

    Google Scholar 

  5. Martello, S., Toth, P.: A bound and bound algorithm for the zero-one multiple knapsack problem. Discrete Applied Mathematics (to appear).

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Martello, S., Toth, P. Heuristic algorithms for the multiple knapsack problem. Computing 27, 93–112 (1981). https://doi.org/10.1007/BF02243544

Download citation

  • Received:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF02243544

Navigation