Bin packing and Knapsack

Dependencies: None

In the bin packing problem (BP), we are given a set $I$ of items and an infinite supply of identical bins. Our task is to pack the items $I$ into the minimum number of bins. Depending on the kind of items and bins, we can get different versions of the problem.

The minimum number of bins needed to pack $I$ is denoted by $\opt(I)$. The number of items in $I$ is denoted by $|I|$.

In the classical bin packing problem (also called the 1-dimensional bin packing problem or 1BP), each item $i$ has a number $\Size(i) \in (0, 1]$ associated with it, and a set of items fits into the bin iff the sum of their sizes is at most 1. For a set $X$ of items, define $\Size(X) = \sum_{i \in X} \Size(i)$.

In the knapsack problem (KS), we are given a set $I$ of items, and each item $i$ has a profit $p(i) \ge 0$ associated with it. Our task is to pack a maximum-profit subset of the items into a single bin. Here the bin is also called knapsack. In the classical knapsack problem (also called 1-dimensional knapsack or 1KS), each item $i$ has a number $\Size(i) \in (0, 1]$ associated with it, and a set of items fits into a bin iff the sum of their sizes is at most 1.

The profit of a maximum-profit packing of a subset of $I$ into a bin is denoted by $\opt(I)$. Usually, it will be clear from context whether $\opt(I)$ refers to bin packing or knapsack, but when disambiguation is necessary, we will use $\opt_{\mathrm{BP}}(I)$ and $\opt_{\mathrm{KS}}(I)$ for bin packing and knapsack, respectively.

Dependency for:

  1. Bin packing: predecessor of an input instance
  2. Bin packing: config-enum algorithm
  3. Bin packing: union of input instances
  4. Bin packing: removing density restriction from config LP
  5. BP: α(1+ε)-approx solution to config LP using α-approx algorithm for knapsack
  6. Bin packing: configuration LP
  7. Bin packing: density-restricted config LP
  8. BP: α(1+ε)-approx solution to density-restricted config LP using α-approx algorithm for density-restricted knapsack
  9. 1BP: size(I) ≤ lin(I)
  10. Geometric packing problems (BP, KS, SP) and rvol
  11. 1BP is (1.5-ε)-inapprox
  12. 1BP: extending by small items
  13. 1BP: APTAS
  14. Pseudo-polynomial time algorithm for 1D knapsack
  15. 1BP: NextFit(S) ≤ ⌈2size(S)⌉
  16. 1BP: FPTAS for config LP
  17. 1BP: ⌈size(I)⌉ ≤ opt(I)
  18. 1BP: harmonic grouping
  19. FPTAS for 1D knapsack
  20. 1BP: Karmarkar-Karp algorithm (broken)
  21. 1BP: NextFit(I) ≤ ⌈size(I)/(1-ε)⌉ for ε-small items

Info:

Transitive dependencies: None