A deterministic fully polynomial time approximation scheme for counting integer knapsack solutions made easy

Research output: Contribution to journalArticlepeer-review

9 Scopus citations

Abstract

Given n elements with nonnegative integer weights w=(w1,…,wn), an integer capacity C and positive integer ranges u=(u1,…,un), we consider the counting version of the classic integer knapsack problem: find the number of distinct multisets whose weights add up to at most C. We give a deterministic algorithm that estimates the number of solutions to within relative error ϵ in time polynomial in n, log⁡U and 1/ϵ, where U=maxi⁡ui. More precisely, our algorithm runs in O(n3log2⁡Uϵlog⁡nlog⁡Uϵ) time. This is an improvement of n2 and 1/ϵ (up to log terms) over the best known deterministic algorithm by Gopalan et al. (2011) [5]. Our algorithm is relatively simple, and its analysis is rather elementary. Our results are achieved by means of a careful formulation of the problem as a dynamic program, using the notion of binding constraints.

Original languageEnglish
Pages (from-to)41-47
Number of pages7
JournalTheoretical Computer Science
Volume645
DOIs
StatePublished - 2016
Externally publishedYes

Bibliographical note

Publisher Copyright:
© 2016

Funding

Partial support for this research was provided by the Recanati Fund of the Jerusalem School of Business Administration .

FundersFunder number
Jerusalem School of Business Administration

    Keywords

    • Approximate counting
    • Binding constraints
    • Dynamic programming
    • Integer knapsack
    • K-approximating sets and functions

    Fingerprint

    Dive into the research topics of 'A deterministic fully polynomial time approximation scheme for counting integer knapsack solutions made easy'. Together they form a unique fingerprint.

    Cite this