A Faster Exponential Time Algorithm for Bin Packing With a Constant Number of Bins via Additive Combinatorics
In the Bin Packing problem one is given n items with weights w_1,…,w_n and m bins with capacities c_1,…,c_m. The goal is to find a partition of the items into sets S_1,…,S_m such that w(S_j) ≤ c_j for every bin j, where w(X) denotes ∑_i ∈ Xw_i. Björklund, Husfeldt and Koivisto (SICOMP 2009) presented an 𝒪^⋆(2^n) time algorithm for Bin Packing. In this paper, we show that for every m ∈𝐍 there exists a constant σ_m >0 such that an instance of Bin Packing with m bins can be solved in 𝒪(2^(1-σ_m)n) randomized time. Before our work, such improved algorithms were not known even for m equals 4. A key step in our approach is the following new result in Littlewood-Offord theory on the additive combinatorics of subset sums: For every δ >0 there exists an ε >0 such that if |{ X⊆{1,…,n } : w(X)=v }| ≥ 2^(1-ε)n for some v then |{ w(X): X ⊆{1,…,n}}|≤ 2^δ n.
READ FULL TEXT