1 Introduction
The bin packing problem is an iconic problem in combinatorial optimization, which has been investigated intensively from many different viewpoints. In particular, it has served as a proving ground for new approaches to the development and analysis of approximation and online algorithms, as well as for the development of average case analysis techniques (see
Coffman Jr. et al. (1997, 2013)).We prove a lower bound for a variant of the bin packing problem, in which the items to be packed are dimensional hypercubes, also referred to as hypercubes or simply hypercubes, when the dimension is clear. More precisely, we prove a tight lower bound for the online bounded space hypercube bin packing problem, settling an open problem raised by Epstein and van Stee (2005). Before we state our result (Theorem 5), we introduce the required concepts and definitions and discuss briefly the relevant literature.
The hypercube bin packing problem (CPP) is defined as follows. We are given a list of items, where each item in is a hypercube of side length , and an unlimited number of bins, each of which is a unit hypercube (that is, a hypercube of side length ). The goal is to find a packing of the items in into the smallest possible number of bins. More precisely, we have to assign each item to a bin, and specify its position in that bin. We require that the items be placed parallel to the axes of the bin and, crucially, we require that the items in a bin should not overlap. The size of the packing is the number of used bins (those with assigned items).
The hypercube bin packing problem (CPP) is in fact a special case of the dimensional bin packing problem (BPP), in which one has to pack dimensional parallelepipeds into dimensional unit bins. For , both problems reduce to the well known bin packing problem.
In the online variant of CPP, the items arrive sequentially and each item must be placed in some bin as soon as it arrives, without knowledge of the next items. The online bounded space variant of CPP is a restricted variant of online CPP. Whenever a new empty bin is used in the packing process, it is considered an open bin and it remains so until it is considered closed, after which point it is not allowed to accept other items. In this variant, regardless of the instance , at every point of the process, not more than bins should be open, where is some constant that does not depend on .
As usual for bin packing problems, we consider the asymptotic performance ratio to measure the quality of algorithms. For an algorithm and an input list , let be the number of bins used by the solution produced by for the list . Furthermore, let , where the minimum is taken over all possible packings of into unit bins. The asymptotic performance ratio of is
(1) 
Given a packing problem , the optimal asymptotic performance ratio for is
(2) 
Many results have been obtained for online BPP and CPP (see, e.g., Balogh et al. (2019, 2012); Blitz et al. (2017); Christensen et al. (2017); Heydrich and van Stee (2016); Seiden (2002); van Vliet (1992)). In our brief discussion of the literature below, we restrict ourselves to the online bounded space versions of BPP and CPP.
For online bounded space BPP, Lee and Lee (1985) gave an algorithm called with asymptotic performance ratio at most , where as , and is a certain explicitly defined constant. These authors also proved that no algorithm for online bounded space BPP can have asymptotic performance ratio smaller than . For online bounded space BPP for general , a lower bound of was implicitly proved by Csirik and van Vliet (1993), and Epstein and van Stee (2005) proved an asymptotically matching upper bound.
For online bounded space CPP, Epstein and van Stee (2005) proved that its asymptotic performance ratio is and , and conjectured that it is . They also gave an optimal algorithm for this problem, but left as an interesting open problem to determine its asymptotic performance ratio. Later, Epstein and van Stee (2007) gave lower and upper bounds for .
Our main contribution is an lower bound for online bounded space CPP. In view of previous results by Epstein and van Stee (2005), we obtain that the asymptotic performance ratio of this problem is , settling an open problem posed by those authors. To prove our lower bound, we follow a well known approach (see Lee and Lee (1985) and Yao (1980)), which requires the proof of the existence of a packing with a suitably large ‘weight’, for a certain definition of weight. The novelty here is that we prove the existence of such a packing with the probabilistic method.
To conclude this section, we mention that the technique that we present here may also be used to obtain lower bounds for the prices of anarchy of a game theoretic version of CPP, called selfish hypercube bin packing game. As this topic requires the introduction of a number of concepts, we just mention the main results for readers familiar with this line of research: for every large enough , the asymptotic price of anarchy (respectively, strong price of anarchy) of the selfish hypercube bin packing game is (respectively, ). The proof of one of the results can be found in Kohayakawa et al. (2017). A preliminary version of this work (Kohayakawa et al. (2018)) appeared in the proceedings of LATIN 2018.
2 Notation and homogeneous packings
The hypercubes defined below will be important in what follows.
Definition 1.
Let be an integer. For every integer and , let
(3) 
be the open hypercube of side length ‘based’ at the origin.
2.1 Homogeneous packings
We shall be interested in certain types of packings of hypercubes into a unit bin.
Definition 2 (Homogeneous packings ).
Let be fixed. For any integer and , a packing of copies of into a unit bin is said to be a packing of type . Packings of type will be called homogeneous packings.
In the definition above, the upper bound on guarantees that copies of can be packed into a unit bin (and hence exists): it suffices to note that, under that assumption on , we have . Homogeneous packings are important because they can be used to create instances for which any bounded space algorithm performs badly (see Epstein and van Stee (2005, 2007)).
3 The central lemma and the main theorem
The key result used in the proof of our main theorem (Theorem 5) is the existence of a certain packing, stated in Lemma 4 below. Since this lemma is somewhat technical, we first informally describe a related result.
Consider the homogeneous packings (), where for a small positive constant . Suppose also that for some small . Suppose we assemble a list of hypercubes from these homogeneous packings by selecting of the members of each such . The following holds: (*) there is a packing of into a single unit bin as long as is sufficiently large. This fact is behind the proof of our central lemma, Lemma 4, stated in what follows. Fact (*) might look surprising at first sight, as the homogeneous packings appear to have reasonably high occupancy.
We now give some definitions needed for the statement of Lemma 4.
Definition 3 (packings).
A packing of hypercubes into a unit bin is called an packing if, for every member of , there is some integer such that is a copy of .
Let be an packing for some . Let
(4) 
For every , let
(5) 
Clearly, we have for every (recall that ). Finally, we define the weight of as
(6) 
We shall be interested in packings with large weight. Our main lemma is as follows.
Lemma 4 (Central lemma).
There is an absolute constant for which the following holds for any . For any , the unit bin admits an packing with
(7) 
In (7) and in what follows, stands for the natural logarithm of . The proof of Lemma 4 is postponed to Section 4. We now deduce our main result, Theorem 5, from Lemma 4, following the approach used by Lee and Lee (1985). For experts in the area, given Lemma 4, the proof of Theorem 5 is routine. The short proof below is included for the benefit of nonexperts.
Theorem 5 (Main Theorem).
There is an absolute constant such that, for any , the asymptotic performance ratio of the online bounded space hypercube bin packing problem is at least .
Proof.
Let be any algorithm for the online bounded space hypercube bin packing problem. Let be the maximum number of bins that leaves open during its execution. To prove that has asymptotic performance ratio at least if is large enough, we construct a suitable instance for .
Let be as in Lemma 4 and suppose . Fix any with and let be a packing as in the statement of Lemma 4. The instance will be constructed as follows. First, we choose a suitable integer and take copies of . We then construct by arranging the hypercubes in these copies in a linear order, with all the hypercubes of the same size appearing together. Let us now formally describe .
Let . Recall that contains copies of for every . Let and suppose . The instance that we shall construct is the concatenation of segments, say , with each segment () composed of a sequence of copies of . This completes the definition of our instance .
The following assertion, to be used later, concerning the offline packing of the hypercubes in is clear, as we obtained by rearranging the hypercubes in copies of .
The hypercubes in can be packed into at most unit bins.  (8) 
We now prove that, when is given the instance above, it will have performance ratio at least as bad as . In view of (7) in Lemma 4, this will complete the proof of Theorem 5.
Let us examine the behaviour of when it is given input . Fix and suppose that has already seen the hypercubes in and it has already packed them somehow. We now consider what happens when examines the hypercubes in , which are all copies of .
Clearly, since , the copies of in cannot be packed into fewer than
(9) 
unit bins. Therefore, even if some hypercubes in are placed in bins still left open after the processing of , the hypercubes in will add at least new bins to the current output of . Thus, the total number of bins that will use when processing is at least
(10) 
In view of (8), it follows that the asymptotic performance ratio of is at least
(11) 
as claimed. This completes the proof of Theorem 5. ∎
4 Proof of Lemma 4
The packing whose existence is asserted in our central lemma, Lemma 4, will be described in terms of certain ‘codes’, that is, sets of ‘codewords’ or simply ‘words’. We shall use such codes to ‘place’ copies of certain in the packing . We make this precise in Section 4.1. The proof of the existence of appropriate codes will be given in Section 4.2. The proof of Lemma 4 is given in Section 4.3.
4.1 Placing hypercubes according to codewords
Let and be fixed. Let a letter word from the alphabet be given. In what follows, we shall fix some and we shall consider translations of the hypercube specified by such words in a certain way (for the definition of , recall (3)). Furthermore, later, we shall consider certain sets of such words and we shall define packings of the form . Note that is composed of copies of . To obtain the packing whose existence is asserted in Lemma 4, we shall consider the union of such packings for , with and certain families (see Lemma 13).
Let us now define , the translation of specified by . For with for every , we let be the translation
(12) 
of , where
(13) 
Thus, while has its ‘base point’ at the origin, has its base point at (see and in Figure 1).
In what follows, we shall always have . Therefore, if for every , then is contained in the unit hypercube , whereas if for some , then with as defined in (13) is not contained in (see in Figure 1). Since we want to be contained in for every , we actually define as in (15) below.
Definition 6 (Base point coordinates of ).
For every and , let
(14) 
For , let
(15) 
Finally, for convenience, for , let
(16) 
We now state three simple facts that the reader may find useful to check on their own to get used to the definitions above. First, note that is a packing of copies of into the unit bin ; that is, is a packing of type (recall Definition 2). Secondly, is not a packing. Finally, is a packing (and is also a packing of type ).
Note that, because , for every , we have
(17) 
(see Figure 1). For every and , let
(18) 
Finally, note that
(19) 
We close this section observing the following.
Fact 7.
The following assertions hold for any positive .

Suppose and . Then
(20) In particular, the intervals are disjoint from .

For any , the intervals are pairwise disjoint, except for the single pair formed by and .
4.2 Separated families of gapped codes
Let an integer be fixed. We shall consider sets of words for . We refer to such as codes or codes. As discussed in the beginning of Section 4.1, we shall design such to specify packings .
We start with the following definition.
Definition 8 (Gapped codes).
Suppose and let a code be given. We say that misses at coordinate if every word in is such that . Furthermore, is said to be gapped if, for each , either misses at or misses at .
Suppose is a gapped code, and suppose and are distinct words in . Then and do not overlap: this can be checked from (19) and Fact 7(ii). Thus, if is gapped, then
(22) 
is a packing.
We now introduce a certain notion of ‘compatibility’ between two codes and , so that and can be put together to obtain a packing if they come from ‘compatible’ codes and .
Definition 9 (Separated codes).
Suppose and and are given. We say that and are separated if, for any and any , there is some such that .
Suppose and are gapped and separated and suppose and for some (we shall later set to be a certain value ). Consider the packings and as defined in (22). Fact 7(i) and (19) imply that is a packing. Indeed, let and any be given. Then, by definition, there is some such that . This implies that and are disjoint ‘in the th dimension’ (see Fact 7(i)).
Definition 10 (Separated families).
Let be a family of codes . If, for every , the codes and are separated, then we say that is a separated family of codes.
Remark 11.
For , let . Then is a separated family of gapped codes. Fix . Consider with as in (22). Since each is gapped, the are packings. Also, since is a separated family, is a packing. Furthermore, we have (recall (5)) and (recall (6)). The existence of implies a weak form of Theorem 5 (namely, a lower bound of instead of ).
Remark 11 above illustrates the use we wish to make of separated families of gapped codes. Our focus will now shift onto producing much ‘better’ families than the one explicitly defined in Remark 11. Indeed, we now prove Lemma 13 below, which asserts the existence of such better families. We shall need the following auxiliary lemma.
Lemma 12.
There is an absolute constant such that, for any , there are sets such that (i) for every , we have and (ii) for every , we have .
Proof.
Let . We select each () among the element subsets of uniformly at random, with each choice independent of all others. Let . Note that, for any , we have . Let . Let
(23) 
as long as
is large enough. We may now apply a Chernoff bound for the hypergeometric distribution (see,
e.g., Janson et al. (2000), Theorem 2.10, inequality (2.12)) to obtain that(24) 
for every large enough . Therefore, the expected number of pairs with for which is less than , which tends to as . Therefore, for any large enough , a family of sets as required does exist. ∎
We are now ready to state and prove the lemma that asserts the existence of a separated family of gapped codes that is ‘better’ than the one defined in Remark 11.
Lemma 13 (Many large, separated gapped codes).
There is an absolute constant such that, for any , there is a separated family of gapped codes such that
(25) 
for every , where
(26) 
Proof.
Let be as in (26) and let be as in Fact 12. In what follows, we only use the for . For each , we construct in two parts. Suppose first that we have with
(27) 
We then set
(28) 
Note that, by (27) and (28), the code will be gapped ( is missed at every and is missed at every ). We shall prove that there is a suitable choice for the with , ensuring that is separated. Since we shall then have
(29) 
condition (25) will be satisfied and Lemma 13 will be proved. We now proceed with the construction of the codes ().
Fix . For , let , and note that
(30) 
Let be an element of chosen uniformly at random. For every , let us say that is bad if for every . We have
(31) 
for every large enough . Let us say that is bad if it is bad for some . It follows from (31) that
(32) 
if is large enough. Therefore, at least words are not bad, as long as is large enough. We let be the set of such good words.
To complete the proof, it remains to show that the family is separated. More precisely, we show that with the above choice of , the family with as defined in (28) is separated.
To this end, fix . We show that and are separated. Let and be given. By the definition of , there is such that for all . Furthermore, since is not a bad word, it is not bad. Therefore, there is for which we have . Observing that and recalling the definition of , we see that , as required.
The proof of Lemma 13 is now complete. ∎
4.3 The packing in Lemma 4
Fix , a separated family of gapped codes . We now give, for every sufficiently small , the construction of a packing of hypercubes into the unit bin using and prove that is indeed a packing. Choosing as in Lemma 13 above, we shall deduce Lemma 4 by taking .
Definition 14 (Packing ).
In Lemma 15 below, we compile the properties that we need of . For the relevant notation, recall (4), (5) and Definition 3.
Lemma 15.
Suppose is a separated family of nonempty gapped codes . Suppose . Let be the family of all the hypercubes with and . Then the following assertions hold: (i) the hypercubes in are pairwise disjoint and form an packing; (ii) for every , we have ; (iii) .
Proof.
Let us first check that the hypercubes in are pairwise disjoint. We remark that, when introducing the notions of gapped and separated codes, we already discussed the reason why the in are indeed pairwise disjoint. However, we give a formal proof here for completeness. Let and with be given. Consider and . We have to show that
(34) 
Suppose first that . In that case, both and are in and we may suppose that . Thus, there is some such that . Furthermore, since is gapped, either or is missed by at . In particular, the pair cannot be the pair and therefore
(35) 
(recall Fact 7(ii)). Expression (19) applied to and , together with (35), confirms (34) when .
Suppose now that . Since and are separated, there is some such that . Fact 7(i) tells us that
(36) 
Expression (19) applied to and , together with (36), confirms (34) in this case also. We therefore conclude that is indeed a packing.
The hypercubes in are copies of the hypercubes for , and therefore is an packing. This concludes the proof of Lemma 15(i). Assertions (ii) and (iii) are clear. ∎
We are now ready to prove Lemma 4.
Comments
There are no comments yet.