# Packing problem

{{#invoke:Hatnote|hatnote}} Template:Puzzles Packing problems are a class of optimization problems in mathematics that involve attempting to pack objects together into containers. The goal is to either pack a single container as densely as possible or pack all objects using as few containers as possible. Many of these problems can be related to real life packaging, storage and transportation issues. Each packing problem has a dual covering problem, which asks how many of the same objects are required to completely cover every region of the container, where objects are allowed to overlap.

In a packing problem, you are given:

• 'containers' (usually a single two- or three-dimensional convex region, or an infinite space)
• A set of 'objects' some or all of which must be packed into one or more containers. The set may contain different objects with their sizes specified, or a single object of a fixed dimension that can be used repeatedly.

Usually the packing must be without overlaps between goods and other goods or the container walls. In some variants, the aim is to find the configuration that packs a single container with the maximal density. More commonly, the aim is to pack all the objects into as few containers as possible.[1] In some variants the overlapping (of objects with each other and/or with the boundary of the container) is allowed but should be minimized.

## Packing infinite space

Many of these problems, when the container size is increased in all directions, become equivalent to the problem of packing objects as densely as possible in infinite Euclidean space. This problem is relevant to a number of scientific disciplines, and has received significant attention. The Kepler conjecture postulated an optimal solution for packing spheres hundreds of years before it was proven correct by Thomas Callister Hales. Many other shapes have received attention, including ellipsoids,[2] Platonic and Archimedean solids[3] including tetrahedra,[4][5] and unequal-sphere dimers.[6]

### Hexagonal packing of circles

The hexagonal packing of circles on a 2-dimensional Euclidean plane.

These problems are mathematically distinct from the ideas in the circle packing theorem. The related circle packing problem deals with packing circles, possibly of different sizes, on a surface, for instance the plane or a sphere.

The counterparts of a circle in other dimensions can never be packed with complete efficiency in dimensions larger than one (in a one-dimensional universe, the circle analogue is just two points). That is, there will always be unused space if you are only packing circles. The most efficient way of packing circles, hexagonal packing, produces approximately 91% efficiency.[7]

### Sphere packings in higher dimensions

{{#invoke:main|main}}

In three dimensions, the face-centered cubic lattice offers the best lattice packing of spheres, and is believed to be the optimal of all packings. The 8-dimensional E8 lattice and 24-dimensional Leech lattice are also believed to be optimal.

### Packings of Platonic solids in three dimensions

Cubes can easily be arranged to fill three-dimensional space completely, the most natural packing being the cubic honeycomb. No other Platonic solid can tile space on its own, but some preliminary results are known. Tetrahedra can achieve a packing of at least 85%. One of the best packings of regular dodecahedra is based on the aforementioned face-centered cubic (FCC) lattice.

Tetrahedra and octahedra together can fill all of space in an arrangement known as the tetrahedral-octahedral honeycomb.

Solid Optimal density of a lattice packing
icosahedra 0.836357...[8]
dodecahedra (5+sqrt(5))/8=0.904508...[8]
octahedra 18/19 = 0.947368...[9]

Simulations combining local improvement methods with random packings suggest that the lattice packings for icosahedra, dodecahedra, and octahedra are optimal in the broader class of all packings.[3]

## Packing in 3-dimensional containers

### Spheres into a Euclidean ball

The problem of finding the smallest ball such that ${\displaystyle k}$ disjoint open unit balls may be packed inside it has a simple and complete answer in ${\displaystyle n}$-dimensional Euclidean space if ${\displaystyle \scriptstyle k\leq n+1}$, and in an infinite dimensional Hilbert space with no restrictions. It is worth describing in detail here, to give a flavor of the general problem. In this case, a configuration of ${\displaystyle k}$ pairwise tangent unit balls is available. Place the centers at the vertices ${\displaystyle a_{1},..,a_{k}}$ of a regular ${\displaystyle \scriptstyle (k-1)}$ dimensional simplex with edge 2; this is easily realized starting from an orthonormal basis. A small computation shows that the distance of each vertex from the barycenter is ${\displaystyle \scriptstyle {\sqrt {2{\big (}1-{\frac {1}{k}}{\big )}}}}$. Moreover, any other point of the space necessarily has a larger distance from at least one of the ${\displaystyle \scriptstyle k}$ vertices. In terms of inclusions of balls, the ${\displaystyle \scriptstyle k}$ open unit balls centered at ${\displaystyle \scriptstyle a_{1},..,a_{k}}$ are included in a ball of radius ${\displaystyle \scriptstyle r_{k}:=1+{\sqrt {2{\big (}1-{\frac {1}{k}}{\big )}}}}$, which is minimal for this configuration.

To show that this configuration is optimal, let ${\displaystyle \scriptstyle x_{1},...,x_{k}}$ be the centers of ${\displaystyle \scriptstyle k}$ disjoint open unit balls contained in a ball of radius ${\displaystyle \scriptstyle r}$ centered at a point ${\displaystyle \scriptstyle x_{0}}$. Consider the map from the finite set ${\displaystyle \scriptstyle \{x_{1},..x_{k}\}}$ into ${\displaystyle \scriptstyle \{a_{1},..a_{k}\}}$ taking ${\displaystyle \scriptstyle x_{j}}$ in the corresponding ${\displaystyle \scriptstyle a_{j}}$ for each ${\displaystyle \scriptstyle 1\leq j\leq k}$. Since for all ${\displaystyle \scriptstyle 1\leq i, ${\displaystyle \scriptstyle \|a_{i}-a_{j}\|=2\leq \|x_{i}-x_{j}\|}$ this map is 1-Lipschitz and by the Kirszbraun theorem it extends to a 1-Lipschitz map that is globally defined; in particular, there exists a point ${\displaystyle \scriptstyle a_{0}}$ such that for all ${\displaystyle \scriptstyle 1\leq j\leq k}$ one has ${\displaystyle \scriptstyle \|a_{0}-a_{j}\|\leq \|x_{0}-x_{j}\|}$, so that also ${\displaystyle \scriptstyle r_{k}\leq 1+\|a_{0}-a_{j}\|\leq 1+\|x_{0}-x_{j}\|\leq r}$. This shows that there are ${\displaystyle \scriptstyle k}$ disjoint unit open balls in a ball of radius ${\displaystyle \scriptstyle r}$ if and only if ${\displaystyle \scriptstyle r\geq r_{k}}$. Notice that in an infinite dimensional Hilbert space this implies that there are infinitely many disjoint open unit balls inside a ball of radius ${\displaystyle \scriptstyle r}$ if and only if ${\displaystyle \scriptstyle r\geq 1+{\sqrt {2}}}$. For instance, the unit balls centered at ${\displaystyle \scriptstyle {\sqrt {2}}e_{j}}$, where ${\displaystyle \scriptstyle \{e_{j}\}_{j}}$ is an orthonormal basis, are disjoint and included in a ball of radius ${\displaystyle \scriptstyle 1+{\sqrt {2}}}$ centered at the origin. Moreover, for ${\displaystyle \scriptstyle r<1+{\sqrt {2}}}$, the maximum number of disjoint open unit balls inside a ball of radius r is ${\displaystyle \scriptstyle {\big \lfloor }{\frac {2}{2-(r-1)^{2}}}{\big \rfloor }}$.

### Spheres in a cuboid

Determine the number of spherical objects of given diameter d can be packed into a cuboid of size a × b × c.

## Packing in 2-dimensional containers

### Packing circles

{{#invoke:main|main}}

#### Circles in circle

The optimal packing of 10 circles in a circle

{{#invoke:main|main}} Pack n unit circles into the smallest possible circle. This is closely related to spreading points in a unit circle with the objective of finding the greatest minimal separation, dn, between points.

Optimal solutions have been proven for n≤13, and n=19.

#### Circles in square

The optimal packing of 15 circles in a square

{{#invoke:main|main}} Pack n unit circles into the smallest possible square. This is closely related to spreading points in a unit square with the objective of finding the greatest minimal separation, dn, between points.[10] To convert between these two formulations of the problem, the square side for unit circles will be L=2+2/dn.

Optimal solutions have been proven for n≤30.[11]

#### Circles in isosceles right triangle

The optimal packing of 6 circles in a right isosceles triangle

{{#invoke:main|main}} Pack n unit circles into the smallest possible isosceles right triangle. Good estimates are known for n<300.[12]

#### Circles in equilateral triangle

The optimal packing of 5 circles in an equilateral triangle

{{#invoke:main|main}}

Pack n unit circles into the smallest possible equilateral triangle. Optimal solutions are known for n<13, and conjectures are available for n<28.[13]

### Packing squares

#### Squares in square

The optimal packing of 10 squares in a square

{{#invoke:main|main}} Pack n unit squares into the smallest possible square.

Optimal solutions have been proven for n=1-10, 14-16, 23-25, 34-36, 62-64, 79-81, 98-100, and any square integer.[14]

The wasted space is asymptotically O(a7/11).[15]

#### Squares in circle

Pack n squares in the smallest possible circle.

Minimum solutions:[16]

Number of squares Circle radius
1 0.707...
2 1.118...
3 1.288...
4 1.414...
5 1.581...
6 1.688...
7 1.802...
8 1.978...
9 2.077...
10 2.121...
11 2.214...
12 2.236...

### Packing rectangles

#### Identical rectangles in a rectangle

The problem of packing multiple instances of a single rectangle of size (l,w), allowing for 90° rotation, in a bigger rectangle of size (L,W) has some applications such as loading of boxes on pallets and, specifically, woodpulp stowage.

For example, it is possible to pack 147 rectangles of size (137,95) in a rectangle of size (1600,1230).[17]

#### Different rectangles in a rectangle

The problem of packing multiple rectangles of varying widths and heights in an enclosing rectangle of minimum area (but with no boundaries on the enclosing rectangle's width or height) has an important application in combining images into a single larger image. A web page that loads a single larger image often renders faster in the browser than the same page loading multiple small images, due to the overhead involved in requesting each image from the web server.

An example of a fast algorithm that packs rectangles of varying widths and heights into an enclosing rectangle of minimum area is here.

## Related fields

In tiling or tessellation problems, there are to be no gaps, nor overlaps. Many of the puzzles of this type involve packing rectangles or polyominoes into a larger rectangle or other square-like shape.

There are significant theorems on tiling rectangles (and cuboids) in rectangles (cuboids) with no gaps or overlaps:

An a × b rectangle can be packed with 1 × n strips iff n divides a or n divides b.[18][19]
de Bruijn's theorem: A box can be packed with a harmonic brick a × a b × a b c if the box has dimensions a p × a b q × a b c r for some natural numbers p, q, r (i.e., the box is a multiple of the brick.)[18]

The study of polyomino tilings largely concerns two classes of problems: to tile a rectangle with congruent tiles, and to pack one of each n-omino into a rectangle.

A classic puzzle of the second kind is to arrange all twelve pentominoes into rectangles sized 3×20, 4×15, 5×12 or 6×10.

## Packing of irregular objects

Packing of irregular objects is a problem not lending itself well to closed form solutions; however, the applicability to practical environmental science is quite important. For example, irregularly shaped soil particles pack differently as the sizes and shapes vary, leading to important outcomes for plant species to adapt root formations and to allow water movement in the soil.[20]

## Notes

1. {{#invoke:Citation/CS1|citation |CitationClass=journal }}
2. Template:Cite doi
3. Template:Cite doi
4. Template:Cite doi
5. Template:Cite doi
6. Template:Cite doi
7. http://mathworld.wolfram.com/CirclePacking.html
8. Betke, U. & Henk, M. Densest lattice packings of 3-polytopes. Comput. Geom. 16, 157–186 (2000)
9. Minkowski, H. Dichteste gitterfo¨rmige Lagerung kongruenter Ko¨rper. Nachr. Akad. Wiss. Go¨ttingen Math. Phys. KI. II 311–355 (1904).
10. {{#invoke:citation/CS1|citation |CitationClass=book }}
11. Template:Cite web
12. Template:Cite web
13. Template:Cite doi
14. Erich Friedman, "Packing unit squares in squares: a survey and new results", The Electronic Journal of Combinatorics DS7 (2005).
15. P. Erdős and R. L. Graham, "On packing squares with equal squares", Journal of Combinatorial Theory, Series A 19 (1975), pp. 119–123.
16. http://www2.stetson.edu/~efriedma/squincir/
17. E G Birgin, R D Lobato, R Morabito, "An effective recursive partitioning approach for the packing of identical rectangles in a rectangle", Journal of the Operational Research Society, 2010, 61, pp. 306-320.
18. {{#invoke:citation/CS1|citation |CitationClass=book }}
19. {{#invoke:Citation/CS1|citation |CitationClass=journal }}
20. C.Michael Hogan. 2010. Abiotic factor. Encyclopedia of Earth. eds Emily Monosson and C. Cleveland. National Council for Science and the Environment. Washington DC