Link: https://math.mit.edu/~goemans/PAPERS/ga-soda06.pdf
Separable Assignment Problem (SAP):
- A set of bins
- A set of items
- Value function
- Each bin has a packing constraint consisting of subsets of items that fit in bin
- Introduces the single-bin sub-problem, an optimization problem over feasible sets
- Goal: assign items to bins with a maximum aggregate value
Single-bin Sub-problem:
- Fixed bin
- Set of items with values
- Packing constraint for bin , that is a lower-ideal of , consisting of feasible subsets of items that can be packed in bin .
- Lower-ideal: for all , .
- Goal: Determine optimal subset of items to pack into bin under some objective .
We assume there is a -approximation algorithm, , for the single-bin subproblem. That is, an algorithm that outputs a subset of items , such that for any other subset ,
Assuming such an algorithm exists, they give a -approximation algorithm based on LP-rounding. They also give a polynomial-time search -approximation algorithm.
Remark: The single-bin subproblem turns out to be a knapsack problem, whose greedy algorithm gives a 1/2-approximation. Knapsack also has a FPTAS giving a -approximation; hence there is a polynomial-time -approximation algorithm for SAP.
LP-Based Approximation Algorithms
They give approximation algorithms under the assumption there is an -approximation algorithm for the single-bin sub-problem.
- Let for be the set of feasible assignments of items to bin (given by single-bin sub-problem)
- For , define to indicate we chose as the subset of items for bin
- Constraints:
- One set per bin (note: ):
- Item can only be assigned to at most one bin:
- Objective: Find assignment of items while maximizing profits:
They take the LP-relaxation, i.e., .
Rounding:
- Solve the relaxed LP above
- For each bin , assign set to with probability
- If an item is in more than one bin, assign to the bin with maximum -value.
Theorem 2.1. The expected value of the rounded solution to the LP-relaxation is at least .
Note: as
Solving the LP
The LP has exponentially many variables, by taking the dual we get polynomial number of variables but exponentially many constraints.
Dual LP:
Define the polytope
Then we can rewrite the dual LP as a fractional covering problem:
Define a -approximation separation algorithm for to be an algorithm that takes in a point and returns either a violated constraint, or ensures that is feasible for . One may approximate the above LP via Lagrangian LP algorithms.
Given a -approximation algorithm for the single-bin subproblem, we can find a subset with value such that for any ,
Two cases: , in which a constraint is violated, or . In the latter case,
Thus, is feasible for .
Solving the Single-bin Sub-problem
The single-bin sub-problem can be written as a knapsack problem which has an efficient FPTAS.
- Single-bin sub-problem:
- Knapsack:
- Define by the following
- Then the single-bin sub-problem can be seen as a knapsack problem:
Local Search Algorithms
Define
- assignment of items to bins, where .
- value of assignment
- total value of items satisfied by bin in
- the value of item in
:
- For each item , set if is assigned to bin in . Otherwise,
- For each item , define marginal value
- Determine the subset of items to pack in bin which gives maximal marginal value using the -approximation algorithm.
Local Search Algorithm:
- Start with empty solution: where
- For a given , run the following -times:
- For each bin , run . Set the marginal value of this solution for bin to be and the set of items with marginal value .
- For each bin , set
- Set bin to be the bin with maximal
- If , set the set of items for bin to