Search Strategies for Rectangle Packing

  • Authors:
  • Helmut Simonis;Barry O'Sullivan

  • Affiliations:
  • Cork Constraint Computation Centre Department of Computer Science, University College Cork, Ireland;Cork Constraint Computation Centre Department of Computer Science, University College Cork, Ireland

  • Venue:
  • CP '08 Proceedings of the 14th international conference on Principles and Practice of Constraint Programming
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

Rectangle (square) packing problems involve packing all squares with sizes 1 ×1 to n×ninto the minimum area enclosing rectangle (respectively, square). Rectangle packing is a variant of an important problem in a variety of real-world settings. For example, in electronic design automation, the packing of blocks into a circuit layout is essentially a rectangle packing problem. Rectangle packing problems are also motivated by applications in scheduling. In this paper we demonstrate that an "off-the-shelf" constraint programming system, SICStus Prolog, outperforms recently developed ad-hoc approaches by over three orders of magnitude. We adopt the standard CP model for these problems, and study a variety of search strategies and improvements to solve large rectangle packing problems. As well as being over three orders of magnitude faster than the current state-of-the-art, we close eight open problems: two rectangle packing problems and six square packing problems. Our approach has other advantages over the state-of-the-art, such as being trivially modifiable to exploit multi-core computing platforms to parallelise search, although we use only a single-core in our experiments. We argue that rectangle packing is a domain where constraint programming significantly outperforms hand-crafted ad-hoc systems developed for this problem. This provides the CP community with a convincing success story.