Two-dimensional packing problems in telecommunications


We present the transcript of the IFORS distinguished lecture delivered by the author on invitation of SOBRAPO and IFORS. The lecture concerned the development of an interdisciplinary research motivated by an application in mobile telecommunication systems, a project jointly developed by four research teams. The presentation follows the typical steps of a classical operations research study, and aims at reviewing the main theoretical and practical results that were obtained.

mobile WiMAX; two-dimensional packing; area packing; computational complexity; approximation; worst case analysis; computational experiments

DEI "Guglielmo Marconi", Università di Bologna. E-mail:


We present the transcript of the IFORS distinguished lecture delivered by the author on invitation of SOBRAPO and IFORS. The lecture concerned the development of an interdisciplinary research motivated by an application in mobile telecommunication systems, a project jointly developed by four research teams. The presentation follows the typical steps of a classical operations research study, and aims at reviewing the main theoretical and practical results that were obtained.

Keywords: mobile WiMAX, two-dimensional packing, area packing, computational complexity, approximation, worst case analysis, computational experiments.


In 2012 the author was jointly invited by SOBRAPO (the Brazilian Society of Operations Research) and IFORS (the International Federation of Operational Research Societies) to deliver an IFORS Distinguished Lecture ( at CLAIO/ SBPO 2012. The conference, that combined the XVI CLAIO (Congreso Latino-Iberoamericano de In-vestigación Operativa) and the XLIV SBPO (Simpósio Brasileiro de Pesquisa Operacional), was held on September 24-28, 2012 in Rio de Janeiro in honor of Nelson Maculan, Hugo Scolnik and Andrés Weintraub on the occasion of their 70th birthday.

We provide the re-edited transcript of the lecture, which concerned an interdisciplinary research arising from an application in mobile telecommunication systems. The project was jointly developed by four research teams:

• Nokia Siemens laboratory: research group on the IEEE 802.16/WiMAX standard;

• University of Pisa: research group on Computer Networking;

• University of Bologna: research group on Combinatorial Optimization;

• Technical University of Eindhoven: research group on Combinatorial Optimization and Theoretical Computer Science.

The evolution of the project followed the classical steps of an operations research study, namely:

1. birth from a real world problem;

2. development of mathematical models for its combinatorial aspects;

3. theoretical analysis;

4. definition of mathematical models for the real world problem;

5. evaluation of the technological constraints;

6. development of solution algorithms;

7. implementation and experimental evaluation on realistic scenarios.

In the next sections we present a synthetic overview of the above steps. A more complete description can be found in Lodi, Martello, Monaci, Cicconetti, Lenzini, Mingozzi, Eklund & Moilanen [5].


In telecommunication systems adopting the IEEE 802.16/WiMAX standard, a series of Wireless Broadband standards authored by the Institute of Electrical and Electronics Engineers, a fixed station transmits and receives data packets to and from other stations, as pictorially shown in Figure 1. All transmissions are performed using [time x frequency] rectangular frames, which are called downlink zones. In the main model considered here each data packet is assigned a frequency of transmission, and it is stored in the downlink zone as a rectangle having a width (time) sufficient to transmit all data. In other words, a data packet can be stored in many different ways, corresponding to different [time x frequency] rectangles having a size sufficient to contain it.

The fixed station must maximize the frame utilization by

(i) selecting the packets to be included in the next transmission phase;

(ii) arranging each selected packet into one or more rectangular regions, and

(iii) allocating the resulting regions to the frame without overlapping.

The Nokia (later Nokia Siemens) research group in charge of designing an efficient scheduler for the base station realized that no satisfactory method was available in literature. They thus contacted two research groups: the computer networking group of the University of Pisa and the combinatorial optimization group of the University of Bologna, and started a 2-year joint research project. It quickly emerged that Steps (ii) and (iii) above identify a special two-dimensional bin packing problem, not studied earlier in the combinatorial optimization literature, that we examine in the next section.


We assume in the following that all data are positive integers. In a standard two-dimensional bin packing problem one has to allocate, without overlapping, a given set of rectangles (items) to the minimum number of identical large rectangles (called bins). Let wj, hj (j = 1, ..., n) denote the width and height of the items to pack, and W, H the width and height of the bins: the Two-Dimensional Bin Packing Problem is to allocate, without overlapping, all rectangles to the minimum number of bins.

In the considered real world problem the items to be allocated are instead the data packets selected for transmission. The j-th data packet is an amount of information, in practice a number, that may be interpreted as an area of size, say, aj. Such area must be arranged as a wj x hj rectangle such that wj hj> aj (or as a number mj of rectangles, called sub-areas, such that wj1 hj1 +... + wjmj. hjmj. > aj), and the resulting rectangles must be optimally allocated to the downlink zone. In addition, each created and allocated rectangle needs information (height, width, coordinates), that has to be included in the downlink zone. In other words, a portion of the zone, proportional to the number of rectangles it contains, is used for the so-called map transmission. Two possible structures of the downlink zone are shown in Figure 2: in case (a) an integer number of columns is reserved for the map, while in case (b) the column on the border is partly used for the map and partly for the data.


When a new optimization problem arises, it is advisable to preliminarily answer some questions. How difficult is the problem? Can it be solved in polynomial time? If not, can it be solved in pseudo-polynomial time? If not, can it be approximated in polynomial time with some worst-case (or asymptotic, or probabilistic) guarantee? Can it be solved efficiently in practice?

To answer these questions, let us consider the simplest combinatorial problem we can "extract" from the industrial problem described in the previous section:

Area Packing: given n areas aj (j = 1, ..., n) and a bin of width and height H (with ), is it possible to arrange each area as a rectangle of width wj and height hj (wj hj > aj) and to allocate all the resulting rectangles to the bin without overlapping?

A simple transformation from a variant of PARTITION shows that this problem is ordinary NP-complete. Sophisticated techniques, using tools from number theory and transformation from a variant of Three-Partition, prove that it is strongly NP-complete. Hence the problem cannot be solved in polynomial time, nor in pseudo-polynomial time, unless P = NP. However, its optimization version can be approximated with worst-case performance guarantee in polynomial time as follows.

As we have seen, in the real world problem the size of the downlink zone that is used for the map transmission is proportional to the number of created sub-areas. Hence a reasonable optimization version of AREA PACKING assumes that any area aj can be arbitrarily split into any number of integer rectangular sub-areas (at most aj unit squares), and asks for packing, without overlapping, all areas into the given bin by minimizing the number of created rectangular sub-areas.

Let us consider the following linear time approximation algorithm, pictorially illustrated in Figure 3:

1. split each area aj into a "large" rectangle of width and height H, and a unit-width strip of height ;

2. pack the large rectangles, side by side, in the leftmost part of the bin;

3. consecutively pack the strips in the remaining rightmost columns, splitting a strip when the current column has no sufficient room for allocating it entirely.

Since each area is allocated to at most three rectangles (the large one, and a strip possibly split in two parts), in the worst case the resulting solution produces three times the minimal number of rectangles. The bound can be shown to be tight.

The complexity analysis of Area Packing and the 3-approximation algorithm above have been analyzed in Hurkens, Lodi, Martello, Monaci & Woeginger [4].


There are three main differences between the theoretical problems outlined in the previous sections and the telecommunication problems at hand:

• the areas (i.e., the data packets) cannot be split in an arbitrary way: for each of them, a list of the feasible sub-areas into which it can be split is provided as part of the input. For each area we must define one (if no splitting occurs) or more rectangles containing the corresponding sub-areas. Note that this can make it impossible to completely pack all areas, even if the sum of all areas to transmit does not exceed the available space in the downlink zone;

• since in general not all input data packets can be included in the next transmission phase, each area has a profit (corresponding to its transmission priority), and the objective function is to maximize the total profit of the packed areas;

• as already mentioned, the mapping of the packing must be stored in the frame, and minimizing the number of rectangles leads to minimizing the size of the map. However, as an additional difficulty, the actual size of the map can only be computed once the packing has been tentatively decided.

In addition, Nokia Siemens required to evaluate four different technological characterizations, corresponding to different models according to which the downlink zone can be implemented. The model implicitly considered so far is the so-called distributed permutation zone model. The two main options, denoted as Problems P1 and P2 in the following, are based on the two structures of the downlink zone shown in Figure 2. A totally different implementation, the adjacent permutation zone model, has a more rigid way of allocating the areas, and will be briefly examined in Section 7. This model too has two options, denoted as Problems P3 and P4.


Independently of the technological variant, the planned transmission system had to be implemented using sets of standard PCs. The technological constraints were extremely tough:

- each PC must perform 500 transmissions per second, i.e.,

- every 2 milliseconds it is necessary to read the input data, execute the optimization algorithm, produce the output (packing and map), and transmit the corresponding packets; however,

- each transmission takes 1 millisecond, i.e.,

- each instance must be completely solved within 1 millisecond!

Although real world instances are relatively "small" (as we will see, they include few tens of data packets), the need of producing a good solution within one millisecond was really a challenging task. By also considering the NT-hardness of the underlying combinatorial optimization problems it was clearly unthinkable to look for exact algorithms. The obvious decision was thus to pursue the implementation and testing of very quick heuristic algorithms, in the hope that they could provide, within the tiny CPU time limit imposed, solutions of sufficient quality.


Different heuristic algorithms were developed for the various optimization problems that emerged from the real-world telecommunication problems.

7.1 Distributed permutation zone model (Problems P1 and P2)

Remind that, for problems P1 and P2, a portion of the downlink zone must store the map (i.e., the information needed to recompose the transmitted data packets), and that the size of such portion can only be computed on the basis of a tentative data packing. The main algorithm was thus implemented through a sort of trial-and-error mechanism, that can be outlined as follows:

1. start by packing a heuristically selected subset of data packets, and compute the size of the corresponding map;

2. at each iteration,

if the current subset and the resulting map were packed successfully in the downlink zone

then make a new attempt with an enlarged subset of data packets

else make a new attempt with a reduced subset of data packets.

The process is iterated until no enlargement/reduction is profitable, or the prefixed time limit has been reached.

At each iteration the packing is obtained through an algorithm, Tiles & Stripes, based on the alternate execution of two very fast heuristics

- algorithm Stripes is derived by the 3-approximation algorithm of Section 4, where it has been described for the downlink zone of Problem P1 (the rectangle shown in Fig. 3 represents the data area of Fig. 2(a)). The adaptation to Problem P2 is quite simple: the additional partial column between map and data (see Fig. 2(b)) is in this case used in Step 1 of the algorithm to accommodate additional (parts of) strips. For both versions, the resulting solution is post-processed by a local search procedure aiming at reducing the number of generated sub-areas.

- algorithm Tiles is based on a totally different heuristic approach, pictorially illustrated in Figure 4, where the rectangle represents the data area of Figure 2(a): the next item is packed either "horizontally" (using the full width of the current free portion of the rectangle) or "vertically" (using the full hight of the current free portion of the rectangle). Both options are evaluated, and the one producing the best filling is selected. In this case too the adaptation to Problem P2 is quite straightforward.

A detailed description of Tiles & Stripes can be found in Cicconetti, Lenzini, Lodi, Martello, Mingozzi & Monaci [1, 3].

7.2 Adjacent permutation zone model (Problems P3 and P4)

This model has a particular structure of the downlink zone, considerably more rigid than the previous one. The data packets cannot be freely allocated as rectangles in the downlink zone, but must grouped together to form so-called logical bands, associated with different frequencies of transmission. The downlink zone is seen as a W x H array in which the rows are partitioned into H/q groups of q rows each, called logical bands. Let denote the number of sub-areas to be possibly transmitted. An associate matrix E having columns and H/q rows gives the number of bytes eij of sub-area j that can be accommodated into a single slot of logical band i (i = 1, ..., H/q, j = 1, ... ). The number of slots needed to allocate a sub-area is then a function of its size aj and of the logical bands the slots belong to. If sub-area j is allocated to one logical band, say i, then the number of slots needed to allocate it is [aj/eij]. If instead the allocation of a sub-area spans over a set of contiguous logical bands then the number of slots needed is computed by using the least efficient ratio in the set. We will not give a more complete description of the resulting optimization problems. The interested reader is referred to Cicconetti, Lenzini, Lodi, Martello, Mingozzi & Monaci [2] for details, and for a complete description of the optimization algorithms that were implemented.

In this case too the allocation problems were proved to be NP-hard in the strong sense (by transformation from the recognition version of the one-dimensional bin packing problem). A careful analysis of the induced optimization problems allowed to identify them as particular variants of the Generalized Assignment Problem. Effective solution algorithms were then obtained by adapting a classical heuristic approach (originally developed by Martello & Toth [6, 7]), based on a maximum regret strategy.


All algorithms were implemented in C and tested on a simulator that generated (for each of the four technological variants) tens of thousands of instances belonging to different classes representing different scenarios of transmission. The experiments were performed on a 1.66 MHz Pentium M Centrino laptop running Cygwin, and the results were extremely satisfactory. For all instances the proposed algorithms produced, within the 1 millisecond time limit, solutions of value very close to the theoretical optimum. Tables 1 and 2 (extracted from [5]) provide samples of the computational results for Problems P2 (distributed permutation zone model) and P4 (adjacent permutation zone model).

The quality of the solutions obtained was pessimistically evaluated by computing a simple upper bound, U , on the maximum area that can potentially be packed. Each line in the tables refers to a class of instances, and gives:

• main characteristics of the instances: size of the bin (W, H), range of the number of areas (n), overall number of instances (n.inst.);

• number of instances for which a provably optimal solution was found (n.opt.);

• number of instances for which the ratio between the best solution found and the maximum packable area was at least 0.9 (n.90%), and average ratio between the best solution found and upper bound U (avg.z/U);

• average and maximum computing time (avg. t, max t) expressed in milliseconds.

The tables show that the optimization algorithms were able to find the optimal solution in the majority of cases. The average percentage filling and the average ratio between the solution found and the upper bound were very high. The CPU times were always below the required time limit (1 ms) and generally very far from it.


We described the essential aspects of an interdisciplinary research that arose from a real-world application in mobile telecommunication systems. The whole project was jointly developed by four research teams, respectively specialized in IEEE 802.16/WiMAX standard, computer networking, combinatorial optimization, and complexity theory. We believe that this is a paradigmatic illustration of the main steps that are involved in a successful operations research study.

Received April 21, 2013

Accepted May 20, 2013

  • [1] Cicconetti C, Lenzini L, Lodi A, Martello S, Mingozzi E & Monaci M. 2010. Efficient two-dimensional data allocation in IEEE 802.16 OFDMA. Proceedings of IEEE INFOCOM 2010, 2160-2168.
  • [2] Cicconetti C, Lenzini L, Lodi A, Martello S, Mingozzi E & Monaci M. 2011. A Fast and Efficient Algorithm to Exploit Multi-user Diversity in IEEE 802.16 BandAMC. Computer Networks, 55: 3680-3693.
  • [3] Cicconetti C, Lenzini L, Lodi A, Martello S, Mingozzi E & Monaci M. 2014. Efficient two-dimensional data allocation in IEEE 802.16 OFDMA. ACM/IEEE Transactions on Networking (to appear).
  • [4] Hurkens CAJ, Lodi A, Martello S, Monaci M & Woeginger GJ. 2012. Complexity and approximation of an area packing problem. Optimization Letters, 6: 1-9.
  • [5] Lodi A, Martello S, Monaci M, Cicconetti C, Lenzini L, Mingozzi E, Eklund C& Moilanen J. 2011. Efficient two-dimensional packing algorithms for mobile WiMAX. Management Science, 57: 2130-2144.
  • [6] Martello S & Toth P. 1981. An algorithm for the generalized assignment problem. J.P. Brans (ed.). Operations Research '81, North-Holland, Amsterdam, 589-603.
  • [7] Martello S & Toth P. 1990. Knapsack Problems: Algorithms and Computer Implementations, John Wiley & Sons, Chichester-New York, xii + 296 pages.

  • Two-dimensional packing problems in telecommunications
    Silvano Martello

Publication Dates

  • Publication in this collection
    08 May 2014
  • Date of issue
    Apr 2014


  • Received
    21 Apr 2013
  • Accepted
    20 May 2013
Sociedade Brasileira de Pesquisa Operacional Rua Mayrink Veiga, 32 - sala 601 - Centro, 20090-050 Rio de Janeiro RJ - Brasil, Tel.: +55 21 2263-0499, Fax: +55 21 2263-0501 - Rio de Janeiro - RJ - Brazil