Abstract
We study maximization subject to a budget constraint, where we are given a valuation function v, budget B and a cost \(c_i\) for each item i. The goal is to find a set S that maximizes v(S) subject to \(\Sigma _{i\in S}c_i\le B\). Special cases of this problem are wellstudied problems from submodular optimization. In particular, when the costs are all equal (cardinality constraint), a classic result by Nemhauser et al. shows that the greedy algorithm provides an \(\frac{e}{e1}\) approximation. Motivated by a large body of literature that utilizes demand queries to elicit the preferences of agents in economic settings, we develop algorithms that guarantee improved approximation ratios in the presence of demand oracles. We are able to break the \(\frac{e}{e1}\) barrier: we present algorithms that use only polynomially many demand queries and have approximation ratios of \(\frac{9}{8}+\epsilon \) for the general problem and \(\frac{9}{8}\) for maximization subject to a cardinality constraint. We also consider the more general class of subadditive valuations. Here, if the valuations can only be accessed by value queries, only trivial approximation ratios can be guaranteed. In contrast, we present algorithms that use demand queries and obtain an approximation ratio of \(2+\epsilon \) for the general problem and 2 for maximization subject to a cardinality constraint. We guarantee these approximation ratios even when the valuations are nonmonotone. We show that these ratios are essentially optimal, in the sense that for any constant \(\epsilon >0\), obtaining an approximation ratio of \(2\epsilon \) requires exponentially many demand queries.
Introduction
This paper studies the problem of maximizing a function subject to a budget constraint: let M be a ground set of items (\(M=m\)), and \(v:2^M\rightarrow {\mathbb {R}}^+\) a function. For each item i, let \(c_i\) denote its cost. Given a budget B, the goal is to find a set of items S that maximizes v(S) subject to the constraint that \(\Sigma _{i\in S}c_i\le B\).
This setting was extensively studied when v is submodular (for each two sets S and T, \(v(S)+v(T)\ge v(S\cup T)+v(S\cap T)\)). For example, an important special case is maximization subject to a cardinality constraint: find a set S of size k with the highest value. Many other generalizations and variants of this problem were studied (e.g., [7, 16, 18,19,20, 23, 29, 30]).
We want our algorithms to run in time polynomial in m, the number of items. However, the valuation function is an object of size \(2^m\). Thus it is assumed that v is represented by a black box that can only answer specific queries. The traditional approach is to assume that the valuation function v is accessed by a value queries: given a bundle S, what is v(S).
In this paper we study variants of this classic problem. On one dimension, we allow v to be subadditive (for each two sets S and T, \(v(S)+v(T)\ge v(S\cup T)\)). On another dimension, we allow v to be accessed via the more powerful demand queries: given prices \(p_1,\ldots , p_m\) return a set S such that \(S\in \arg \max _T v(T)\Sigma _{j\in T}p_j\). Whereas the motivation for studying the more general subadditive valuations is straightforward, let us be explicit about our justifications for studying demand queries in the current paper:

Economic interpretation As was argued extensively in the literature (e.g., [5, 6, 21, 26, 27]) demand queries are a natural way for agents to express their preferences. In particular, many algorithms for economic settings, either incentive compatible or not, assume that the valuations are accessed via demand oracles (e.g., [3, 10, 11, 14, 15, 22]).

Better results When the valuation of the buyer is subadditive, it is known that polynomially many value queries cannot guarantee an approximation ratio of \(m^{\frac{1}{2}\epsilon }\) even for maximization subject to a cardinality constraint [10].^{Footnote 1} Hence stronger oracles must be used to achieve reasonable approximation ratios. Since the “standard” set of oracles used in the algorithmic game theory literature contains only value and demand oracles (other oracles are sometimes used but in a more adhoc manner), it is natural to study the power of demand oracles in our setting.

Basic building blocks Algorithms for maximization using demand oracles are often used in the literature. In particular, the algorithms that we develop here were already used in [2, 8] as a subroutine for obtaining sketches of various classes of valuations. Similar algorithms were already used as subroutines in papers that appeared before or with the conference version of this paper (e.g., [4, 12]). The algorithms in this paper can be used to replace the subroutines in those papers and guarantee improved approximation ratios.

Procurement auctions The problem of maximization subject to cardinality constraint can be seen as a procurement auction: each item has a price and the buyer is interested in maximizing his utility subject to some budget constraint (see, e.g., [1, 4, 12, 28] which study incentive compatible algorithms for this problem). In this context it is natural to expect the buyer to answer demand queries, but not ones that involve the budget constraints, as this constraint is often exogenous to the utility function (e.g., set by the management of the firm). Our work lays the algorithmic foundations for studying this natural auction setting.

Techniques for proving impossibilities Up until now we have discussed the importance of developing algorithms for various maximization problems. To complement this picture, one would also like to prove impossibilities on the power of the power of demand queries. Surprisingly, despite the vast popularity of demand queries in algorithmic game theory, most of the impossibilities are for value oracles or for the more general communication model, both are irrelevant to our setting. As we will see, our simple and clean problem statement allows us to develop techniques for explicitly bounding the power of demand queries. Those techniques have already found use in seemingly unrelated settings [9].
Our Results: Algorithms
Our first result concerns submodular functions. A classic result in submodular optimization shows that the greedy algorithm provides an approximation ratio of \(\frac{e}{e1}\) for optimization subject to a cardinality constraint [16]. This is the best possible with a polynomial number of value queries [13, 25]. We show that demand queries allow breaking the \(\frac{e}{e1}\) barrier:
Theorem There exists a \(\frac{9}{8}\)approximation algorithm for the problem of maximizing a monotone submodular function subject to a cardinality constraint that makes a polynomial number of demand queries. For the problem of maximizing a monotone submodular function subject to a knapsack constraint, for every constant \(\epsilon >0\), there exists a \((\frac{9}{8}+\epsilon )\)approximation algorithm that makes a polynomial number of demand queries.
We start the proof of the theorem by presenting a natural linear program. The dual of the linear program has exponentially many constraints but only polynomially many variables, so we show that the dual can be solved via the ellipsoid method, using a demand query as a separation oracle.^{Footnote 2} We show various structural properties of optimal solutions to the LP, e.g., there are at most two sets in their support. We now face an additional challenge: in general, none of these sets (or a part of them, in case they violate the cardinality constraint) provides a good enough approximation. The key step is showing that by taking one set and augmenting it using the other set we get a new combined set that does provide the specified approximation ratio.
Our next result is about the more general class of subadditive valuations. Previously, a constantfactor was known only for maximization subject to a cardinality constraint [12]. We present the first constantapproximation algorithm for maximization subject to the more general knapsack constraint.^{Footnote 3} The best previously known algorithm for knapsack constraint achieved a ratio of \(O(\log m)\) [12] using polynomially many demand queries.
Theorem There exists a 2approximation algorithm for the problem of maximizing a subadditive function subject to a cardinality constraint that makes a polynomial number of demand queries. For the problem of maximizing a subadditive function subject to a knapsack constraint, for every constant \(\epsilon >0\), there exists a \((2+\epsilon )\)approximation algorithm that makes a polynomial number of demand queries.
The 2approximation algorithm slightly improves over the best previously known algorithm for maximization subject to cardinality constraint which achieved a slightly worse factor of \(2+\epsilon \) [12]. Interestingly, the algorithms do not assume monotonicity, and in particular guarantee the specified approximation ratio also for nonmonotone submodular valuations (a class that received much attention recently—see, e.g., [7, 17, 20, 23]). In fact, we once again achieve better results than what possible with value queries: it is known that a 2.03approximation algorithm for maximizing nonmonotone submodular function must use exponentially many value queries [17].
One can also take a more “structural” point of view of our algorithmic results: for every maximization problem we can consider the natural linear program. The results of this paper can be seen as a way to determine the exact integrality gap of the program.
We also show how to obtain purely combinatorial algorithms via a certain type of a natural “ascending auction”, possibly with an additional augmentation step. An exciting direction is to analyze these auctions and similar ones from a more economic point of view, but we do not push this direction further in this paper.
Our Results: Impossibilities
Are our bounds optimal? We provide an example with a matching integrality gap of \(\frac{9}{8}\) for optimizing monotone submodular valuations. For nonmonotone submodular valuations we present an example with a matching integrality gap of 2. Moreover, we show that our bounds are optimal for subadditive valuations and even for fractionally subadditive valuations:
Theorem Fix some constant \(\epsilon >0\). Let A be a (possibly randomized) \((2\epsilon )\)approximation algorithm for maximizing a fractionally subadditive function subject to a cardinality constraint. Then, A makes exponentially many demand queries.
Proving limits on the power of demand queries requires developing some new machinery.^{Footnote 4} We start with some specific valuation v, and obtain a valuation \(v_T\) by “planting” some bundle T of size k with high value. We would like to show that determining whether such planting occurred requires an exponential number of demand queries. The challenge is that a single demand query can verify whether the valuation is \(v_T\) for many bundles T simultaneously. Nevertheless, we show that the power of a single demand query is limited: for every demand query there exists a set of items (relatively small but of significant size) that is contained in all bundles T that the demand query simultaneously verifies. This enables us to upper bound the number of bundles that can be simultaneously verified by a single demand query, and suffices to derive the theorem. We also use this technique to rule out an FPTAS for maximizing a submodular function subject to a knapsack constraint.
Open Questions
In this paper we initiated the systematic study of optimization with demand queries. Let us now mention several intriguing questions that we leave open. The first natural one is to determine the possible approximation ratio when the valuation of the buyer is submodular, both in the monotone and in the nonmonotone cases. Currently, we do not know how to even rule out the possibility of exact algorithms for these cases, although we conjecture that such algorithms do not exist. It is also interesting to understand the possible approximation ratios using different constraints. Examples include optimizing submodular functions subject to matroid constraint [16, 30], multiple knapsacks [19, 20] and their combination [7, 23]. What is the approximation ratio possible if demand queries are available in all these settings? We make a first step in this direction by providing an O(k) approximation algorithm for optimizing subadditive function subject to k knapsack constraints. We do not know neither whether this is the optimal ratio possible nor how to construct good algorithms for the other settings.
Paper Organization
Section 3 presents the LP for the problem and proves some structural properties of optimal solutions. In Sect. 4 we give our \(\frac{9}{8}\)approximation algorithms for submodular valuations. Section 5 provides approximation algorithms for subadditive valuations. We show that the algorithms for subadditive valuations are in fact optimal in Sect. 6. The proof that there is no FPTAS for submodular valuations subject to a knapsack constraint is also in that section.
Preliminaries
Valuations and Problems Definition
Let M be a set of items, \(M=m\). Let \(v:2^M\rightarrow {\mathbb {R}}\) be a set function with \(v(\emptyset )=0\). v is monotone nondecreasing if for each \(S\subseteq T\), \(v(S)\le v(T)\).
We study the following two problems:^{Footnote 5} in the maximization subject to cardinality constraint problem we are given a number k, and want to find the largest value set S, \(S=k\). In the maximization subject to budget constraint problem we are given a budget B and a cost \(c_i\) for each item i. The goal is to find the largestvalue set S such that \(\Sigma _{j\in S}c_j\le B\). We sometimes use the name maximization subject to a knapsack constraint for this problem.
We consider this problem under various restrictions on the valuations. We say that v is submodular if for every \(S,T\subseteq M\) we have that \(v(S)+v(T)\ge v(S\cup T)+v(S\cap T)\). v is subadditive if for every \(S,T\subseteq M\) we have that \(v(S)+v(T)\ge v(S\cup T)\). A valuation is additive if \(v(S)=\Sigma _{j\in S}v(\{j\})\). Notice that every submodular valuation is also subadditive, and every additive valuation is submodular.
Another type of valuations that we consider is fractionally subadditive (or XOS). A valuation is XOS if there exist additive valuations \(v_1,\ldots ,v_l\) such that \(v(S)=\max _iv_i(S)\) (we say that i is a maximizing clause of S). Every XOS valuation is subadditive, every monotone submodular valuation is XOS, and there are subadditive valuations that are not XOS, and XOS valuations that are not submodular [24].
We use the notation v(ST) to denote \(v(S\cup T)v(T)\). For the problem of maximizing a function subject to budget constraint, we sometimes use the notation \(C(S)=\Sigma _{j\in S}c_j\).
Demand Queries
Given prices \(p_1,\ldots , p_m\), a demand query returns a bundle S, \(S\in \arg \max _Tv(T)\Sigma _{j\in T}p_j\). The set of bundles that achieves the maximum is called the demand set of the query. Our algorithms provide the guaranteed approximation ratio without making any assumption about which specific bundle is returned from the demand set. For lower bounds, as pointed out in [26], some unnatural tiebreaking rules may supply unrealistic information about the valuation. Therefore, as in [26], our lower bound assumes any tiebreaking rule that does not depend on the valuation, e.g., return the lexicographicallyfirst bundle in the demand set.
Another type of wellstudied query is value query: given a set S, return v(S). It is known [6] that a value query can be simulated by polynomially many demand queries (but exponentially many value queries may be required to simulate a single demand query). This paper concentrates on designing algorithms with polynomially many demand queries, so we freely assume that we have access to value queries.
The Structure of the LP
Our algorithms are based on finding good roundings of fractional solutions. These fractional solutions are obtained by solving a natural linear relaxation of our problems. The key ingredient is analyzing the structural properties of optimal fractional solutions: we give limits on the number of elements in the support, analyze their costs, and give precise formulas for the weights of the elements in the support. We note that all the results in this section hold for arbitrary set functions. The submodularity or subadditivity of the functions are used only in rounding the fractional solutions.
The LP can be solved using demand oracles. Moreover, we show that there is a combinatorial method of obtaining solutions to the LP, using a process that can be viewed as an ascending auction.
The LP is presented for the more general case of maximization subject to a budget constraint (maximization subject to a cardinality constraint is a special case where for each item i, \(c_i=1\) and \(B=k\)).
Maximize: \(\sum _{S} x_{S} \cdot v(S)\)
Subject to:

\(\sum _{S} x_S\cdot C(S)\le B\).

\(\sum _{S} x_S\le 1\).

For each bundle S: \(x_S\ge 0\).
Although the LP has an exponential number of variables, we show that it can still be solved using a polynomial number of demand queries:
Proposition 3.1
The LP can be solved using a polynomial number of demand queries.
Proof
Consider the dual of the primal LP:
Minimize: \(y\cdot B +z\)
Subject to:

For each bundle S: \(z+y\cdot C(S)\ge v(S)\).

\(y\ge 0\).

\(z\ge 0\).
We use the ellipsoid method to solve the dual LP and thus obtain a solution to the primal LP. For the ellipsoid method to work we need to implement a separation oracle that finds some set S that violates the constraint \(y\cdot C(S)+z\ge v(S)\). To do that, consider the demand query \(\mathfrak {q}=y\cdot (c_1,\ldots , c_m)\), and let T be the bundle that \(\mathfrak {q}\) returns. If \(z\ge v(T)y\cdot C(T)\) then by the definition of demand query for every other set S we have \(z\ge v(T)y\cdot C(T)\ge v(S)y\cdot C(S)\). \(\square \)
A key ingredient of our algorithms is the following structural property of the LP.
Definition 3.2
A fractional solution is a strict solution if there are two variables \(x_{S_1}\) and \(x_{S_2}\), such that \(C(S_1)\le B\), \(C(S_2)>B\), \(x_{S_1}=\alpha \), and \(x_{S_2}=1\alpha \), where \(\alpha =\frac{C(S_2)B}{C(S_2)C(S_1)}\).
Proposition 3.3
Either there exists an optimal integral solution to the LP or there exists an optimal strict solution. Given an optimal solution to the LP, we can transform it in polynomial time to a solution with the same value that is either integral or strict.
Proof
Suppose that for each set S in the support of the solution we have that \(C(S)\le B\). In this case we claim that there is an integral solution, since \(\max (v(S)x_S>0)\ge \sum _{S}x_S v(S)\).
Consider now the other extreme case, where for each set S in the support of the solution we have that \(C(S)> B\). In this case we show that there is a fractional solution with exactly one set in the support. In this case, the “densest” set in the support (the one with the highest value to cost ratio) implies a strict solution:
Let \(S_2=\arg \max (\frac{v(S)}{\sum _{j\in S}c_j}x_S>0)\). In this case we set \(S_1=\emptyset \). Observe that by setting \(\alpha =\frac{C(S_2)B}{C(S_2)}\) we get a strict fractional solution with value at least that of the optimal fractional solution.
The only case that is left to handle is when there are two sets with \(x_{S_1},x_{S_2}>0\) and \(C(S_1)\le B\) and \(C(S_2)>B\). We show a strict fractional solution that is optimal. By complementary slackness we have that \(z+y\cdot C(S_1)=v(S_1)\) and \(z+y\cdot C(S_2)=v(S_2)\). Solving for z and y we get \(z=\frac{v(S_1)C(S_2)v(S_2)C(S_1)}{C(S_2)C(S_1)}\) and \(y=\frac{v(S_2)v(S_1)}{C(S_2)C(S_1)}\). Hence the value of the optimal fractional solution is \(\frac{v(S_1)(C(S_2)B)+v(S_2)(BC(S_1))}{C(S_2)C(S_1)}\).
Consider now the strict fractional solution \(x_{S_1}=\frac{C(S_2)B}{C(S_2)C(S_1)}\), \(x_{S_2}=\frac{BC(S_1)}{C(S_2)C(S_1)}\). Its value is exactly the value of the optimal fractional solution: \( \frac{C(S_2)B}{C(S_2)C(S_1)}\cdot v(S_1)+\frac{BC(S_1)}{C(S_2)C(S_1)}\cdot v(S_2) \)\(\square \)
Solving the LP via an Ascending Auction
We now present a combinatorial method of obtaining strict fractional solutions to the LP. An important advantage of this method is that it uses only uniformprice queries (unlike the previous LPbased approach that requires arbitrary demand queries). We make use of the following simple property of demand queries:
Lemma 3.4
Let \(p=(p_1,...,p_m)\). Let \(S_1\) be some bundle that maximizes the profit in prices \(\lambda _1\cdot p\). Let \(S_2\) be some bundle that maximizes the profit in prices \(\lambda _2\cdot p\). Then \(\lambda _1\le \lambda _2\) if and only if \(\Sigma _{j\in S_1}p_j\ge \Sigma _{j\in S_2}p_j\).
Proof
By the definition of demand query we have \(v(S_2)\lambda _1 \Sigma _{j\in S_2}p_j\le v(S_1)\lambda _1\Sigma _{j\in S_1}p_j\) and \(v(S_1)\lambda _2\Sigma _{j\in S_1}p_j\le v(S_2)\lambda _2\Sigma _{j\in S_2}p_j\). Adding the two inequalities and simplifying we get \((\lambda _1\lambda _2)(\Sigma _{j\in S_2}p_j\Sigma _{j\in S_1}p_j)\ge 0\). This implies the lemma. \(\square \)
Definition 3.5
\(\lambda \ge 0\) is the boundary if there exists \(S_1,S_2\), \(C(S_1)\le B, C(S_2)>B\), such that \(S_2\) is in the demand set in prices \(\lambda \cdot (c_1,\ldots ,c_m)\) and for every small enough \(\delta >0\) we have that \(S_1\) is in the demand set in prices \((\lambda +\delta )\cdot (c_1,\ldots ,c_m)\). We say that \(S_1\) and \(S_2\) are two boundary bundles.
Let us further elaborate on the notion of boundary bundles. For simplicity, this paragraph considers only the simpler cardinality constraint. Consider some prices \(\lambda \cdot (1,\ldots , 1)\). When \(\lambda =0\), the most profitable bundle consists of all items. Lemma 3.4 implies that as the value of \(\lambda \) increases, the size of bundles in the demand set decreases (eventually, when \(\lambda \) is big enough, the demand set will be empty). The boundary is the specific \(\lambda \) for which the demand set in \(\lambda \cdot (1,\ldots , 1)\) contains only bundles that violate the cardinality constraint, but for \((\lambda +\epsilon )\cdot (1,\ldots ,1)\) the demand set contains bundles that respect the cardinality constraint.
The boundary bundles (and \(\lambda \)) can be found by an ascending auction in which we continuously^{Footnote 6} increase the value of \(\lambda \) and obtain a profitmaximizing bundle in the current prices. The boundary is the \(\lambda \) for which the prices \(\lambda \cdot (c_1,\ldots ,c_m)\) are the supremum of the points where supply exceeds demand. Interestingly, the boundary bundles define a highvalue fractional solution:
Lemma 3.6
Let \(S_1\) and \(S_2\) be two boundary bundles and let \(\lambda \) be the boundary. Let \(\alpha =\frac{C(S_2)B}{C(S_2)C(S_1)}\). Then \(x_{S_1}=\alpha \) and \(x_{S_2}=1\alpha \) is a strict solution to the LP. Moreover, let O be the optimal integral solution. Then, \(x_{S_1}v(S_1)+x_{S_2}v(S_2)\ge v(O)\).
Proof
To see that the solution respects the budget constraint:
As for the second part, \(S_1\) and \(S_2\) are in the demand set of their respective prices, therefore:
Multiplying the first inequality by \(\alpha \), the second inequality by \((1\alpha )\), and summing up the two we get that:
The LHS equals \(v(O)\lambda C(O)\alpha \cdot \delta \cdot C(O)\). Since \(\alpha \ge 0\), using \(B\ge C(O)\) we have:
Rearranging we get:
Now when we let \(\delta \) go to 0 we get that \(x_{S_1}v(S_1)+x_{S_2}v(S_2)\ge v(O)\), as needed. \(\square \)
A \(\frac{9}{8}\)Approximation for Monotone Submodular Valuations
As we have shown, any strict solution to the LP with cardinality constraint consists of two bundles, a “large” bundle with more than k items and a “small” bundle with at most k items. A natural approach for an approximation algorithm is to select the maximum of the following two bundles: the “small” bundle, or an highvalue chunk of size k from the “large” bundle. Unfortunately, there are examples that show that this approach cannot provide an approximation ratio better than 2. Hence, our strategy is subtler: we start with the small bundle and grab as much value as we can from the large bundle. We show that this combined bundle provides an approximation ratio of \(\frac{9}{8}\).
We also extend this algorithm to handle maximization subject to a knapsack constraint. Here the approximation ratio we get is slightly worse: \(\frac{9}{8}+\epsilon \). We enumerate over all sets of highcost items, then use a variation of our algorithm for a cardinality constraint as an algorithm for instances with only lowcost items. Before presenting the algorithm, we complement these results by presenting an instance with an integrality gap of \(\frac{9}{8}\), even for maximization subject to cardinality constraint.
Proposition 4.1
There exists a monotone submodular valuation v for which the integrality gap for maximization subject to a cardinality constraint is \(\frac{9}{8}\).
Proof
Towards defining the valuation v, consider a sixelement universe \(U=\{e_1,\ldots , e_6\}\). Define the following four sets: \(m_1=\{e_1,e_2,e_3\}\), \(m_2=\{e_1,e_4\}\), \(m_3=\{e_2,e_5\}\), \(m_4=\{e_3,e_6\}\). Now define the following valuation where the set of items is \(M=\{m_1, m_2, m_3, m_4\}\). Let v be the following valuation: \(v(S)=\cup _{m_i\in S}m_i\), i.e., the number of elements in U that the union of the sets in S covers. This valuation is submodular.
Now let the cardinality constraint be \(k=2\). The optimal solution is to take any set S of size 2. The value of the optimal integral solution is 4. On the other hand, consider the following fractional solution: \(x_{m_1}=\frac{1}{2}\) and \(x_{m_2, m_3, m_4}=\frac{1}{2}\). The fractional solution respects the cardinality constraint and has a value of 4.5. The integrality gap is therefore \(\frac{9}{8}\). \(\square \)
Theorem 4.2
The following algorithms exist:

A \(\frac{9}{8}\)approximation algorithm for the problem of maximizing a monotone submodular function subject to a cardinality constraint that makes a polynomial number of demand queries.

For any fixed \(\epsilon >0\), a \((\frac{9}{8}+\epsilon )\)approximation algorithm for the problem of maximizing a monotone submodular valuation subject to a knapsack constraint that makes a \(poly(m,\frac{1}{\epsilon })\) demand queries.
We start with the algorithm for the cardinality constraint. We first present the algorithm, then comment on how it can be efficiently implemented.
The Algorithm

1.
Obtain a strict solution to the LP: \(x_{S_1}=\alpha \) and \(x_{S_2}=1\alpha \). Let \(k_1=S_1\) and \(k_2=S_2\).

2.
Find \(S'\subseteq S_2\), \(S'=k\) such that \(v(S')\ge \frac{k}{k_2}\cdot v(S_2)\).

3.
Find \(S''\subseteq S_2S_1\), \(S''=kk_1\), such that \(v(S''S_1)\ge \frac{kk_1}{S_2S_1}\cdot v(S_2S_1)\).

4.
Output \(\max (v(S_1\cup S''),v(S'))\).
As for the efficient implementation of the algorithm, we have already argued in Proposition 3.3 that an optimal and strict solution to the LP can be found with a polynomial number of demand queries. Alternatively, Step 1 can also be implemented combinatorially as an ascending auction: start with a price per item of 0 and increase it gradually. When supply exceeds demand, consider the boundary bundles, and obtain a strict solution as in Lemma 3.6. Steps 2 and 3 can be implemented using the following folklore lemma (see Lemma 4.6 for a proof of a more general setting).
Lemma 4.3
Let v be a submodular valuation, S be some bundle, and let \(t\le S\) be some integer. Then, there exists a set \(S'\subseteq S\), \(S'=t\) such that \(v(S')\ge \frac{t}{S}v(S)\). In addition, S can be found using a polynomial number of value queries.
Step 2 follows immediately from Lemma 4.3. Step 3 follows by observing that the marginal valuation \(v(\cdot S_1)\) is submodular too, and applying Lemma 4.3 again. We are left with proving the approximation ratio of the algorithm:
Lemma 4.4
Let A be the bundle that the algorithm outputs. Then, \(v(A)\ge \frac{8}{9}\cdot (x_{S_1} v(S_1)+x_{S_2} v(S_2))\).
Proof
Recall that \(v(S''S_1)\ge \frac{kk_1}{S_2S_1}\cdot v(S_2S_1)\). That is (also using \(S_2S_1\le k_2\)):
Rearranging and using \(v(S_2\cup S_1)\ge v(S_2)\) (since v is monotone) we have:
This inequality and the inequality \(v(S')\ge \frac{k}{k_2}\cdot v(S_2)\) are the two main observations that we use. The rest of the proof contains a careful algebraic optimization that shows that the value of the algorithm is at least \(\frac{9}{8}\) of the value of the LP. To illustrate this, we start with a simple proof that the approximation ratio is at least 2. Denote by ALG the value of the bundle that the algorithm outputs:
From the definition of a strict solution, the value of the optimal solution to the LP is:
If \(\frac{k}{k_2} \ge \frac{1}{2}\) we have an approximation ratio of 2 since \(v(S')\ge \frac{k}{k_2}\cdot v(S_2) (\ge OPT)\). Thus assume that \(\frac{k}{k_2} < \frac{1}{2}\). Recalling that \(k_1\le k\), we can then rewrite (3) as \(OPT\le \frac{k_2k}{\frac{1}{2} \cdot k_2}\cdot v(S_1)+ \frac{kk_1}{\frac{1}{2} \cdot k_2}\cdot v(S_2)\). Using (2), the RHS is at least \(2\cdot ALG\), and thus we have that \(ALG\ge \frac{1}{2} OPT\).
A more careful analysis gives us the \(\frac{9}{8} \) ratio:
where the first inequality is due to (1). It remains to bound the value of \(\gamma \). The proof can be found in the “Appendix”:
Claim 4.5
Let \(\gamma =\max _{k_1\le k<k_2}\alpha \frac{k_2}{k_1+k_2k}+(1\alpha \alpha \frac{kk_1}{k_1+k_2k})\frac{k_2}{k}\). Then, \(\gamma \le \frac{9}{8}\).
A \((\frac{9}{8}+\epsilon )\)Approximation Submodular Valuations Subject to a Knapsack Constraint
The algorithm is conceptually similar to the algorithm for maximization subject to cardinality constraint. The basic observation is that when the costs of all items are ”small enough” then a very similar analysis to that of the algorithm for maximization subject to cardinality constraint gives us a similar approximation ratio for maximization under a knapsack constraint. Thus, the idea is to “guess”, using a simple enumeration, which “big” items appear in the optimal solution, discard the rest of the “big” items and compute an approximate solution given our guess. In particular, in the algorithm below we analyze the iteration in which L is the set of the \(\frac{1}{\epsilon ^2}\) items with the highest costs in the optimal solution.
The Algorithm

1.
For each set L, \(L\le \frac{1}{\epsilon ^2}\) such that \(C(L)\le B\), and each set \(L'\subseteq L\), \(L'=\epsilon \cdot L\):

(a)
Let \(T=LL'\).

(b)
Define a new valuation \(v^{L,L'}(S)=v(ST)\). Let \(a=\min _{j\in L}c_j\). Let \(M^{L,L'}=MT\{jc_j>\epsilon \cdot a\}\).

(c)
For the set of items \(M^{L,L'}\), obtain a strict solution to the LP w.r.t. \(v^{L,L'}\) and budget \(B^{L,L'}=BC(T)\): \(x^{L,L'}_{S_1}=\alpha ^{L,L'}\) and \(x^{L,L'}_{S_2}=1\alpha ^{L,L'}\).

(d)
Find \(S'\subseteq S_2\), \(C(S')\le B^{L,L'}\) such that \(v^{L,L'}(S')\ge \frac{B^{L,L'}(1\epsilon )}{C(S_2)}v(S_2)\). If there is no such \(S'\) let \(A^{L,L'}=\emptyset \) and continue to the next iteration.

(e)
Find \(S''\subseteq S_2S_1\), \(C(S')\le B^{L,L'}C(S_1)\), such that \(v^{L,L'}(S')\ge \frac{(B^{L,L'}C(S_1))(1\epsilon )}{C(S_2S_1)}v^{L,L'}(S_2)\). If there is no such \(S'\) let \(A^{L,L'}=\emptyset \) and continue to the next iteration.

(f)
Let \(A^{L,L'}=\arg \max (v(T\cup S_1\cup S''),v(T\cup S'))\).

(a)

2.
Output \(\arg \max _{L,L'}v(A^{L,L'})\).
Notice that if \(\epsilon \) is constant then there are only polynomially many iterations. Since each iteration needs polynomially many demand queries, the total number of demand queries is polynomial too. We will use Lemma 4.6 to implement Steps (1d) and (1e), similarly to the implementation of the algorithm for a cardinality constraint. Notice that \(v^{L,L'}\) is a submodular valuation.
Lemma 4.6
Let v be some submodular valuation, and S be some bundle. Then, there exists a chain \(S_1\subseteq \cdots \subseteq S_{S1}\subseteq S_{S}=S\), where \(S_t=t\) and \(v(S_t)\ge \frac{C(S_t)}{C(S)}v(S)\) for every t.
Proof
We prove the existence of \(S_{t}\) for \(t=S1\). The lemma will then follow as it implies that we can find \(S_1\subseteq S_2\subseteq \cdots \subseteq S_{S1}\subseteq S_{S}=S\), where \(S_t=t\), and for each l, \(S_l+1=S_{l+1}\) and \(v(S_l)\ge \frac{C(S_l)}{C(S_{l+1})} v(S_{l+1})\). Now we will have that
Notice that given \(v(S_l)\) we can find \(v(S_{l1})\) by considering the l subsets of size \(l1\) and taking the one with the highest value.
We now prove the lemma for \(t=S1\). We have that
where the inequality holds because v is submodular and has decreasing marginal utilities. In particular we have that for some item j, \(v(\{j S\{j\}\} )\le \frac{c_j}{C(S)}\), i.e., \(v(S\{j\})\ge \frac{C(S\{j\})}{C(S)}v(S)\). Let \(S'=S\{j\}\). This completes the proof of the lemma. \(\square \)
We only analyze one particular iteration, when L is the set of the \(\frac{1}{\epsilon ^2}\) items with the highest costs in the optimal solution. Furthermore, let \(a_1,\ldots ,a_{L}\) be some order on the items of L so that for every i, \(v(a_i\{1,\ldots ,a_{i1}\})\ge v(a_{i+1}\{1,\ldots ,a_{i}\})\). Such order can be obtained by starting from the empty set and greedily taking the item from L with the highest marginal contribution that has not been taken yet. Let \(L'=\{a_{(1\epsilon )L},\ldots a_{L}\}\). Observe that by submodularity the value of the optimal unrestricted solution in \(ML'\) is at least \((1\epsilon )OPT\), where OPT is the value of the optimal solution. Also notice that for each item \(j\in M^{L,L'}\) we have that \(c_j\le \epsilon B^{L,L'}\) since \(B^{L,L'}>L'\cdot c_j\).
For Step (1d) note that for some \(S_t\) we have by Lemma 4.6 that \(C(S_t)\le B^{L,L'}\) and \(v^{L,L'}(S')\ge \frac{B^{L,L'}(1\epsilon )}{C(S_2)}v(S_2)\). Since for each item \(j\in M^{L,L'}\) we have that \(c_j\le \epsilon B^{L,L'}\) we immediately get \(C(S_t)\ge B^{L,L'}(1\epsilon )\) and Step (1d) follows. Step (1e) follows by observing that the marginal valuation \(v^{L,L'}(\cdot S_1)\) is submodular too and applying Lemma 4.6 similar to Step (1d).
Lemma 4.7
\(\frac{\gamma }{1\epsilon } v^{L,L'}(A^{L,L'})\ge x^{L,L'}_{S_1}v^{L,L'}(S_1)+x^{L,L'}_{S_2}v^{L,L'}(S_2)\).
Proof
Recall that \(v^{L,L'}(S''S_1)\ge \frac{(BC(S_1))(1\epsilon )}{C(S_2S_1)}v^{L,L'}(S_2S_1)\). That is (also using \(C(S_2S_1)\le C(S_2)\)):
Rearranging and using \(v^{L,L'}(S_2\cup S_1)\ge v^{L,L'}(S_2)\) (since v is monotone) we have:
where \(\gamma \le \frac{9}{8}\) by Claim 4.5. \(\square \)
Recall that we lost at most \(\epsilon \cdot OPT \) by discarding items in \(L'\). We therefore have that the value of the solution is at least \(\frac{8(1\epsilon )}{9}(1\epsilon )\cdot OPT\).
A 2Approximation for Subadditive Valuations
We show that there exists a 2approximation algorithm for maximization subject to cardinality constraint. This is the best ratio achievable with a polynomial number of demand queries even if the valuation is XOS, as we show in Sect. 6. While this is only a slight improvement over the \((2+\epsilon )\) approximation algorithm for the setting of [12], we then show how to extend this algorithm to provide a \((1+\frac{k}{1\epsilon })\)approximation for maximization subject to kknapsack constraints. In particular this implies that there exists a \((2+O(\epsilon ))\)approximation algorithm for maximization subject to a knapsack constraint (\(k=1)\). Previously, the best bound was \(O(\log n)\) [12].
Both algorithms provide the same approximation ratio also for nonmonotone subadditive valuations, not just monotone ones. After presenting the algorithm, we show that when the valuation is nonmonotone and submodular the integrality gap is 2.
Theorem 5.1
The following two algorithms exist:

A 2approximation algorithm for maximizing a (not necessarily monotone) subadditive function subject to a cardinality constraint that uses polynomially many demand queries.

A \((1+\frac{k}{1\epsilon })\)approximation algorithm for maximizing a (not necessarily monotone) subadditive function subject to kknapsack constraints that uses polynomially many demand queries, for every constant \(\epsilon >0\) and constant k.
We now present the 2 approximation algorithm. The algorithm is simple: obtain a strict solution to the LP that contain two sets in the support, \(S_1\) and \(S_2\) with \(S_1<S_2\). \(S_1\) is obviously a feasible solution but \(S_2\) contains more items than the cardinality constraint. Now arbitrarily partition \(S_2\) into several bundles, each of size k except maybe one bundle that contains the “leftovers”. The crucial observation is that by subadditivity one such bundle must have high value. We show that either the value of that bundle or the value of \(S_1\) is at least half of the value of the LP.
The Algorithm

1.
Obtain a strict fractional solution \(x_{S_1}=\alpha \) and \(x_{S_2}=1\alpha \).

2.
Arbitrarily divide \(S_2\) into sets \(U_1,\ldots ,U_l\) such that for each \(i<l\), \(U_i=k\) and \(U_l\le k\).

3.
Output \(A=\arg \max (v(S_1),v(U_1),\ldots ,v(U_l))\).
Notice that the above algorithm can be implemented with a polynomial number of demand queries.
Lemma 5.2
Let A be the bundle that the algorithm outputs. Then, \(2v(A)\ge x_{S_1}v(S_1)+x_{S_2}v(S_2)\).
Proof
where the first inequality holds since by subadditivity \(v(S_2)\le \sum _{i=1}^l v(U_i)\), the third uses \(l\le \lceil \frac{k_2}{k}\rceil \), the fourth inequality uses \(x_{S_1}+x_{S_2}\le 1\), and the last inequality holds since by the LP we have that \(x_{S_2}\cdot S_2\le k\). \(\square \)
Proposition 5.3
For every constant \(\epsilon >0\), there exists a nonmonotone submodular valuation v for which the integrality gap for maximization subject to a cardinality constraint is \(2\epsilon \).
Proof
Let the items be \(\{1,\ldots , k^2+1\}\). Define the following nonmonotone submodular valuation:
Then the optimal integral solution has a value of 1, whereas the fractional solution \(x_{\{1\}}=\frac{k}{k+1}\), \(x_{\{2,3,...,k^2+1\}}=\frac{1}{k}\) has value of \(1\cdot \frac{k}{k+1}+k^2\cdot \frac{1}{k+1}=\frac{2k}{k+1}\). As k tends to infinity the integrality gap tends to 2. \(\square \)
An Approximation Algorithm for Subadditive Valuations Subject to kKnapsack Constraints
In this section we study maximization subject to k knapsack constraints. In this problem we have a valuation v and k costs for each item j: \(c^i_1, \ldots , c^i_k\). Let \(C_i(S)=\Sigma _{j\in S}c^i_j\). We also have k budgets \(B_1,\ldots , B_k\). The goal is to find a maximumvalue bundle S such that for every i, \(C_i(S)\le B_i\).
We note that \(\frac{e}{e+1}\)approximation algorithms exist for maximizing a montone submodular valuation subject to k knapsack constraints (the algorithms use only value queries) [7, 20] (note that our algorithms are for the more general subadditive case). Consider a generalization of the LP for a single knapsack constraint:
Maximize: \(\sum _{S} x_{S} \cdot v(S)\)
Subject to:

For each constraint \(i\in [k]\): \(\sum _{S} x_S\cdot C_i(S)\le B_i\).

\(\sum _{S} x_S\le 1\).

For each bundle S: \(x_S\ge 0\).
Proposition 5.4
The LP can be solved with a polynomial number of demand queries.
Proof
Once again we take its dual and give a separation oracle to the dual to solve the LP.
Minimize: \(\sum _{i=1}^k y_i\cdot B_i +z\)
Subject to:

For each bundle S: \(z+\sum _{i=1}^k y_i\cdot C_i(S)\ge v(S)\).

For each constraint \(i\in [k]\): \(y_i\ge 0\).

\(z\ge 0\).
Similar to the case of single knapsack constraint (Proposition 3.1) we can solve this dual LP by ellipsoid method. The separation oracle for the dual is a demand query \(\max _{T}v(T)\sum _{i=1}^k y_i\cdot C_i(T)\). \(\square \)
The final algorithm uses enumeration over “big” items.
Definition 5.5
An item j is called big if \(c^i_j\ge \epsilon \cdot B_i \) for some constraint \(i\in [k]\). An item is called small otherwise.
Let \({\mathcal {B}}\) the set of big items and \({\mathcal {W}}\) be the set of small items.
The Algorithm

1.
For each set \(T\subseteq {\mathcal {B}}\) such that for each constraint \(i\in [k]\): \(C_i(T)\le B_i\):

(a)
Let \(M'=T\cup {\mathcal {W}}\).

(b)
Obtain fractional solution on items from \(M'\).

(c)
Divide each bundle S in the fractional solution into sets, \(U^S_1,U^S_2,\ldots ,U^S_{l_S}\) such that:

i.
Each \(U^{S}_i\) respects all budget constraints.

ii.
\(l_S\le \lceil \sum _{i=1}^k \frac{C_i(S)}{B_i(1\epsilon )}\rceil \).

i.

(d)
Let \(A^T= \arg \max (U^S_j)\).

(a)

2.
Output \(\arg \max _{T\subseteq B} v(A^T\)).
Notice that Step (1c) can be implemented for each S as follows: put the subset \(T\cap S\) in \(U^{S}_1\) and add items from S without violating the budget constraint of \(U^{S}_1\). Now divide the rest of the items S into bundles \(U^S_1,U^S_2,\ldots ,U^S_{l_S}\) so that each such bundle respects the budget constraint and for each i, \(B_iC_i(U^{S}_r)\le \epsilon \cdot B_i\). Since we only have to handle small items, we get that \(l_S\le \lceil \sum _{i=1}^k \frac{C_i(S)}{B_i(1\epsilon )}\rceil \).
As for the number of demand queries we make, notice that in each set T we consider all items are big. Therefore, for this set to respect each of the budget constraints it must be that \(T\le k/\epsilon \), which implies that the number of iterations we make is at most \(m^{\frac{k}{\epsilon }}\). Since in each iteration we make a polynomial number of demand queries, if \(\epsilon \) is constant the total number of queries we make is indeed polynomial.
Lemma 5.6
Let A be the bundle that the algorithm outputs. Then, \((1+\frac{k}{1\epsilon })v(A)\ge \sum _{S} x_{S} v(S)\).
Proof
Consider the set \(A^T\) that was obtained in the iteration where T is exactly the set of big items in the optimal solution O. The optimal fraction solution with respect to \(W\cup T\) has the same value as the unrestricted fractional solution. We can therefore analyze the approximation ratio for this \(A^T\).
where the first inequality holds since by subadditivity \(v(S)\le \Sigma _{i=1}^{l^S}v(U^{S}_i)\), and the second to last inequality holds since \(\sum _{S} x_{S} C_i(S)\le B_i\) (by the constraints of the fractional solution). \(\square \)
Lower Bounds
A Tight Lower Bound for XOS Valuations
We show that our algorithms from Sect. 5 are essentially tight: an approximation ratio of \(2\epsilon \) requires exponentially many demand queries. We note that proving bounds on the power of algorithms with demand queries turned out to be not an easy task, and in particular very different than showing lower bounds on the power of value queries. For example, when we consider value queries there are only finitely many value queries that we have to consider (no more than the number of subsets of M), whereas there is an infinite number of possible demand queries. The crux of our proof is to show that the power of any arbitrary demand query is limited in some formal sense, hence exponentially many demand queries are needed to distinguish between the case that the optimal value is 2, and between the case it is \(1+\epsilon \).
We note that that our bound holds also for randomized mechanisms, and in fact holds also for a the class of fractionally subadditive valuations, a strict subclass of subadditive valuations.
Theorem 6.1
Let A be a randomized algorithm that achieves a \((2\epsilon )\)approximation, for some fixed \(\epsilon >0\). Let \(\alpha \) be such that \(m=k^\alpha \). A makes in expectation at least \(\frac{\frac{1}{2}\cdot k^{\frac{\epsilon k}{100}(\alpha 1)}}{m(\frac{400e}{\epsilon ^2})^{\frac{\epsilon k}{100}} (2e)^{k\frac{\epsilon k}{100}}}\) demand queries, even if the valuation is XOS.
In particular, fix some \(\epsilon , \gamma >0\), and let \(k=m^{1\gamma }\). The theorem says that obtaining a \(2\epsilon \) approximation requires exponential number of demand queries. The following three families of additive valuations will be used in the proof:

1.
For every item j, define the valuation \(I_j\) such that \(I_j(\{j\})=1\) and for every \(t\ne j\), \(I_j(\{t\})=0\).

2.
For every subset T, \(T=k\), , define the valuation \(G_T\) such that \(G_T(\{j\})=\frac{2}{k}\) if \(j\in T\), and for every \(j\notin T\), \(G_T(\{j\})=0\).

3.
The valuation B such that for every item j, \(B(\{j\})=\frac{1+\epsilon }{k}\).
For every T, \(T=k\), let \(v_T(S)=\max (I_1(S),\ldots , I_m(S),B(S), G_T(S))\). In addition, let \(v_\emptyset (S)=\max (I_1(S),\ldots , I_m(S),B(S))\). Notice that the valuations are XOS (i.e., fractionally subadditive) by definition. We will prove that:
Lemma 6.2
Determining whether the valuation is \(v_\emptyset \) (and not \(v_T\), for some T) requires in expectation at least \(\frac{\frac{1}{2}\cdot k^{\frac{\epsilon k}{100}(\alpha 1)}}{m(\frac{400e}{\epsilon ^2})^{\frac{\epsilon k}{100}} (2e)^{k\frac{\epsilon k}{100}}}\) demand queries.
Lemma 6.2 implies Theorem 6.1: the bundle T is of size k and \(v_T(T)=2\). On the other hand, for every bundle S of size k it holds that \(v_\emptyset (S)=1+\epsilon \).
Proof
Specifically, we show that any deterministic algorithm must make in expectation the specified number of demand queries to determine if the valuation is \(v_\emptyset \), when the valuation is chosen uniformly at random from the set \(\{v_\emptyset \}\cup _{T:T=k}v_T \). Yao’s principle delivers the lemma now.
We use the following definition:
Definition 6.3
Fix a demand query \(\mathfrak {q}=(p_1,...,p_m)\). We say that \(\mathfrak {q}\)covers\(v_T\) if the demand set of \(\mathfrak {q}\) in \(v_T\) contains a set S such that \(G_T\) is the maximizing clause of S.
Claim 6.4
Let \(\mathfrak {q}=(p_1,...,p_m)\) be a demand query, and let \(v_T\) be a valuation that is covered by \(\mathfrak {q}\). Let \(S\subseteq T\) be some bundle in the demand set of \(\mathfrak {q}\) in \(v_T\) such that \(G_T\) is the maximizing clause of S. Then, \(\Sigma _{j\in S}p_j\le \frac{2S}{k}1+\frac{2}{k}\). Furthermore, we have that \(S\ge \frac{k}{2}1\).
Proof
Let \(t\in \arg \min _{j\in S}p_j\). \(G_T\) (and not \(I_t\)) is the maximizing clause for S, and thus:
Since S is in the demand set and \(G_T\) is its maximizing clause, for each \(j\in S\), \(p_j\le \frac{2}{k}\) (otherwise \(S\{j\}\) is more profitable than S, and thus S is not in the demand set).
Reorganizing we have that \(\frac{2S}{k}1+\frac{2}{k}\ge \Sigma _{j\in S}p_j\), as needed. As for the second part of the claim, notice that if \(S< \frac{k}{2}1\) then \(v_T(S)=G_T(S)< 1\frac{2}{k}\), and therefore \(G_T\) is not the maximizing clause of S since \(I_T(t)p_t\ge 1\frac{2}{k}\). \(\square \)
The key observation is that if \(v_T\) is not covered by \(\mathfrak {q}\), then the demand set of \(\mathfrak {q}\) is identical in \(v_{\emptyset }\) and \(v_{T}\). In particular, the only information that executing \(\mathfrak {q}\) adds is either to determine that the valuation is some specific \(v_T\) (in case \(v_T\) is covered by \(\mathfrak {q}\)) or to claim that the valuation is not any of the \(v_T\)’s that are covered by \(\mathfrak {q}\). However, to determine whether the valuation is \(v_{\emptyset }\), we need to rule out all possible values of T. The heart of the proof is the following claim:
Claim 6.5
Fix a demand query \(\mathfrak {q}=(p_1,...,p_m)\). The number of bundles that \(\mathfrak {q}\) covers is at most \(\left( {\begin{array}{c}\frac{4k}{\epsilon }\\ \frac{\epsilon k}{100}\end{array}}\right) \cdot \left( {\begin{array}{c}m\frac{\epsilon k}{100}\\ k\frac{\epsilon k}{100}\end{array}}\right) \).
Proof
We give an upper bound on the number of valuations \(v_T\) that \(\mathfrak {q}\) covers by describing a set L of items of size at most \(L\le \frac{4k}{\epsilon }\) with the property that for every \(v_T\) that is covered by \(\mathfrak {q}\), \(L\cap T>\frac{\epsilon k}{100}\). The number of these bundles is at most:
We now describe a process that constructs the set L. After that, we prove that L is indeed of the specified size.

1.
Let \(L_0=\emptyset \), \({\mathcal {T}}=\{Tv_T\) is covered by \(\mathfrak {q}\}\), and \(i=0\).

2.
While \({\mathcal {T}}\ne \emptyset \):

(a)
Let \(i=i+1\).

(b)
Select some \(T_i\in {\mathcal {T}}\).

(c)
Let \(S_{T_i}\) be a set in the demand set of \(\mathfrak {q}\) in \(v_T\) that is maximized in the clause \(G_T\).

(d)
Let \(L_i=L_{i1}\cup S_{T_i}\).

(e)
Let \({\mathcal {T}}=\{Tv_T\) is covered by \(\mathfrak {q}\) and \(L_i\cap T<\frac{\epsilon k}{100}\}\).

(a)

3.
Let \(L=L_i\).
We now show that \(L\le \frac{4k}{\epsilon }\). Specifically, we show that if the number of iterations t is more than \(\frac{4}{\epsilon }\) then the profit of L is at least 2. This means the demand set does not contain bundles of size at most k at all, since their value is at most 2. Hence \(\mathfrak {q}\) covers no valuation \(v_T\) (i.e., \(v(L)\Sigma _{j\in L}p_j\ge v(T)\Sigma _{j\in T}p_j\) for every bundle T of size at most k). Thus, if \(\mathfrak {q}\) covers some valuation \(v_T\) it must hold that \(t\le \frac{4}{\epsilon }\).
For each iteration i, let \(S_i=L_iL_{i1}\). Observe that by Claim 6.4, \(S_{T_i}\ge \frac{k}{2} 1\) and therefore \(S_i\ge \frac{k}{2} 1 \frac{\epsilon k}{100}\). From the same claim we also have that \(\Sigma _{j\in S_{T_i}}p_j\le \frac{2S_{T_i}}{k}1+\frac{2}{k}\). Together this implies that \(\Sigma _{j\in S_{i}}p_j\le \frac{2(S_{i}+\frac{k\cdot \epsilon }{100})}{k}1+\frac{2}{k}\).
We would like to bound the number of iterations t the process goes on. By our discussion above, the process must stop before the profit of L is bigger than 2 (i.e., \(v_\emptyset (L)\Sigma _jp_j > 2\)):
where the second to last inequality follows since for each i, \(S_i\le T_i\le k\). Therefore for the profit of L to be at most 2 it must hold that \(t\le \frac{4}{\epsilon }\). Recall that any iteration we are adding to L at most k items. Therefore \(L\le t\cdot k\le \frac{4k}{\epsilon }\). \(\square \)
Claim 6.5 implies Lemma 6.2: the total number of bundles of size k is \(\left( {\begin{array}{c}m\\ k\end{array}}\right) \). To rule out at least \(\frac{\left( {\begin{array}{c}m\\ k\end{array}}\right) }{2}\) possible bundles, the number of demand queries d we have to make is at least (we use the bounds \(\left( {\begin{array}{c}n\\ r\end{array}}\right) \ge (\frac{n}{r})^r\), \(\left( {\begin{array}{c}n\\ r\end{array}}\right) \le (\frac{ne}{r})^r\) and use \(m=k^{\alpha }\)):
Therefore, until we rule out at least half of the bundles, any additional demand query finds T with probability at most \(\frac{1}{d}\). To rule out half of the bundles we have to make at least d queries, hence after \(\frac{d}{m}\) queries we find T with probability at most o(1). \(\square \)
Ruling Out an FPTAS for Submodular Maximization Subject to a Knapsack Constraint
We show that there is no FPTAS for the problem of optimizing a submodular function subject to a knapsack constraint (an FPTAS is a \((1+\epsilon )\)approximation algorithm that the number of demand queries it makes is \(poly(m,\frac{1}{\epsilon })\)).
Theorem 6.6
Let A be a randomized algorithm that achieves an \(\frac{\frac{m}{2}\frac{1}{3}}{\frac{m}{2}\frac{1}{2}}\)approximation. A makes in expectation at least \(\frac{2}{m} \cdot \left( {\begin{array}{c}\frac{m}{2}\\ \frac{m}{4}\end{array}}\right) \) demand queries.
Notice that the lower bound on the approximation ratio depends polynomially on m and therefore an FPTAS must achieve a better ratio in time \(poly(m,\frac{1}{\epsilon })\). This shows that an FPTAS for this problem is impossible. For proof, we consider the following family of instances. Let A be some set of \(\frac{m}{2}\) items, and let B be the set that contains the rest of the items. For each item \(j\in A\), let \(c_j=\frac{2}{m}\epsilon \) (for some small \(\epsilon >0\)). For each item \(j\in B\), let \(c_j=\frac{2}{m}+\epsilon \). Let the total budget be 1. For every T of size \(\frac{n}{2}\) such that \(T\cap A=\frac{m}{4}\) define the following valuations:
Lemma 6.7
Determining whether the valuation is \(v_\emptyset \) (and not \(v_T\), for some T) requires in expectation at least \(\frac{2}{m} \cdot \left( {\begin{array}{c}\frac{m}{2}\\ \frac{m}{4}\end{array}}\right) \) demand queries.
Lemma 6.7 implies Theorem 6.6: if the valuation is \(v_T\) then \(v_T(T)=\frac{m}{2} \frac{1}{3}\). Otherwise, for every bundle other S of below the budget it holds that \(v_\emptyset (S)\le \frac{m}{2} \frac{1}{2}\).
Proof
We use the following definition:
Definition 6.8
Fix a demand query \(\mathfrak {q}=(p_1,...,p_m)\). We say that \(\mathfrak {q}\)covers\(v_T\) if the demand set of \(\mathfrak {q}\) in \(v_T\) contains T.
Claim 6.9
Let \(\mathfrak {q}=(p_1,...,p_m)\) be a demand query, and let \(v_T, v_{T'}\) be two valuations that are covered by \(\mathfrak {q}\). Then either \(T\cap A=T'\cap A\) or \(T\cap B=T'\cap B\).
Proof
Suppose not. Let \(a,b\in T\) and \(a',b'\in T'\) be such that \(a,b\notin T'\), \(a',b'\notin T\), \(a,a'\in A\), \(b,b'\in B\). Define the following bundles:
If the valuation is \(v_T\), then T is in the demand set and therefore \(v_T(T)p(T)\ge v_T(T_{b'})p(T_{b'})\). Since \(C(T_b)>1\), we have that \(\frac{1}{3} \le p_{b'}p_a\).
If the valuation is \(v_{T'}\), then we have that \(v_{T'}(T')p(T')\ge v_{T'}(T'_{a})p(T'_{a})\). Since \(C(T'_{a})< 1\) we have that \(\frac{1}{6} \ge p_{b'}p_a\). We have reached a contradiction and the claim follows. \(\square \)
Observe that if \(v_T\) is not covered by \(\mathfrak {q}\), then the demand set of \(\mathfrak {q}\) is identical in \(v_{\emptyset }\) and \(v_{T}\). In particular, the only information that executing \(\mathfrak {q}\) adds is either that the valuation is some specific \(v_T\) (in case \(v_T\) is covered by \(\mathfrak {q}\)) or provide a proof that the valuation is not any of the \(v_T\)’s that are covered by \(\mathfrak {q}\). However, to determine whether the valuation is \(v_{\emptyset }\), we need to rule out all possible values of T. Suppose that we have d demand queries that fail. There are \(\left( {\begin{array}{c}\frac{m}{2}\\ \frac{m}{4}\end{array}}\right) \cdot \left( {\begin{array}{c}\frac{m}{2}\\ \frac{m}{4}\end{array}}\right) \) possible values of T (half of the items in T come from A and the other half from B), and by the claim each demand query can rule out at most \(\left( {\begin{array}{c}\frac{m}{2}\\ \frac{m}{4}\end{array}}\right) \) (we keep all items in, say, A, and choose \(\frac{m}{4}\) items from B). Therefore, until we rule out at least half of the bundles, any additional demand query finds T with probability at most \(\frac{1}{2\left( {\begin{array}{c}\frac{m}{2}\\ \frac{m}{4}\end{array}}\right) }\). To rule out half of the bundles we therefore have to make in expectation at least \(\left( {\begin{array}{c}\frac{m}{2}\\ \frac{m}{4}\end{array}}\right) \) queries, hence after \(\frac{2}{m} \cdot \left( {\begin{array}{c}\frac{m}{2}\\ \frac{m}{4}\end{array}}\right) \) queries we find T with probability at most o(1). \(\square \)
Notes
 1.
This bound holds even if the valuation is fractionally subadditive—a valuation is fractionally subadditive (a.k.a. XOS) if it is the maximum of several additive valuations. A formal definition will be presented later.
 2.
 3.
 4.
 5.
We also consider some generalizations, which will be defined in the proper subsections.
 6.
Of course, to obtain a discrete process one may increment \(\lambda \) in some discrete amount. This results in some loss in the approximation ratios of the algorithms that we construct (the loss depends on the size of the increments).
References
 1.
Anari, N., Goel, G., Nikzad, A.: Mechanism design for crowdsourcing: an optimal 11/e competitive budgetfeasible mechanism for large markets. In: 2014 IEEE 55th Annual Symposium on Foundations of Computer Science (FOCS), pp. 266–275. IEEE (2014)
 2.
Badanidiyuru, A., Dobzinski, S., Fu, H., Kleinberg, R., Nisan, N., Roughgarden, T.: Sketching valuation functions. In: SODA, pp. 1025–1035 (2012)
 3.
Balcan, M.F., Blum, A., Mansour, Y.: Item pricing for revenue maximization. In: EC (2008)
 4.
Bei, X., Chen, N., Gravin, N., Lu, P.: Budget feasible mechanism design: from priorfree to Bayesian. In: Proceedings of the FortyFourth Annual ACM Symposium on Theory of Computing, pp. 449–458. ACM (2012)
 5.
Blumrosen, L., Nisan, N.: Combinatorial auctions (a survey). In: Nisan, N., Roughgarden, T., Tardos, E., Vazirani, V. (eds.) Algorithmic Game Theory. Cambridge University Press, Cambridge (2007)
 6.
Blumrosen, L., Nisan, N.: On the computational power of demand queries. SIAM J. Comput. 39(4), 1372–1391 (2009)
 7.
Chekuri, C., Vondrák, J., Zenklusen, R.: Submodular function maximization via the multilinear relaxation and contention resolution schemes. In: STOC (2011)
 8.
Cohavi, K., Dobzinski, S.: Faster and simpler sketches of valuation functions. ACM Trans. Algorithms (TALG) 13(3), 30 (2017)
 9.
Dobzinski, S., Fu, H., Kleinberg, R.: On the complexity of computing an equilibrium in combinatorial auctions. In: Proceedings of the TwentySixth Annual ACMSIAM Symposium on Discrete Algorithms, pp. 110–122. SIAM (2014)
 10.
Dobzinski, S., Nisan, N., Schapira, M.: Approximation algorithms for combinatorial auctions with complementfree bidders. In: STOC (2005)
 11.
Dobzinski, S., Nisan, N., Schapira, M.: Truthful randomized mechanisms for combinatorial auctions. In: STOC (2006)
 12.
Dobzinski, S., Papadimitriou, C., Singer, Y.: Mechanisms for complementfree procurement. In: EC (2011)
 13.
Feige, U.: A threshold of ln n for approximating set cover. J. ACM 45(4), 634–652 (1998)
 14.
Feige, U.: On maximizing welfare where the utility functions are subadditive. In: STOC (2006)
 15.
Feige, U., Vondrák, J.: Approximation algorithms for allocation problems: improving the factor of 11/e. In: FOCS (2006)
 16.
Fisher, M.L., Nemhauser, G.L., Wolsey, L.A.: An analysis of approximations for maximizing submodular set functions: II. Polyhedral Combinatorics. Volume 8 of Mathematical Programming Studies, pp. 73–87. Springer, Berlin (1978)
 17.
Gharan, S.O., Vondrák, J.: Submodular maximization by simulated annealing. In: SODA (2011)
 18.
Khuller, S., Moss, A., Naor, J.: The budgeted maximum coverage problem. Inf. Process. Lett. 70(1), 39–45 (1999)
 19.
Kulik, A., Shachnai, H., Tamir, T.: Maximizing submodular set functions subject to multiple linear constraints. In: SODA (2009)
 20.
Kulik, A., Shachnai, H., Tamir, T.: Approximations for monotone and nonmonotone submodular maximization with knapsack constraints. CoRR. arXiv:1101.2940 [cs.DS] (2011)
 21.
Lahaie, S., Constantin, F., Parkes, D.C.: More on the power of demand queries in combinatorial auctions: learning atomic languages and handling incentives. In: IJCAI (2005)
 22.
Lavi, R., Swamy, C.: Truthful and nearoptimal mechanism design via linear programming. In: FOCS (2005)
 23.
Lee, J., Mirrokni, V.S.., Nagarajan, V., Sviridenko, M.: Nonmonotone submodular maximization under matroid and knapsack constraints. In: STOC (2009)
 24.
Lehmann, B., Lehmann, D., Nisan, N.: Combinatorial auctions with decreasing marginal utilities. In: EC (2001)
 25.
Nemhauser, G.L., Wolsey, L.A.: Best algorithms for approximating the maximum of a submodular set function. Math. Oper. Res. 3(3), 177–188 (1978)
 26.
Nisan, N., Segal, I.: Exponential communication inefficiency of demand queries. In: TARK (2005)
 27.
Sandholm, T., Boutilier, C.: Preference elicitation in combinatorial auctions. In: Cramton, P., Shoham, Y., Steinberg, R. (eds.) Combinatorial Auctions Cramton. MIT Press, Boston (2006)
 28.
Singer, Y.: Budget feasible mechanisms. In: FOCS (2010)
 29.
Sviridenko, M.: A note on maximizing a submodular set function subject to a knapsack constraint. Oper. Res. Lett. 32(1), 41–43 (2004)
 30.
Vondrák, J.: Optimal approximation for the submodular welfare problem in the value oracle model. In: STOC (2008)
Acknowledgements
We thank Bobby Kleinberg for helpful discussions.
Funding
Funding was provided by Israel Science Foundation.
Author information
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
A preliminary version of this paper appeared in EC’12.
Appendix for Section 4
Appendix for Section 4
Proof of Claim 4.5
The proof is basically an algebraic manipulation:
where in (5) we use the fact that the expression is maximized at \(k=\frac{k_1+k_2}{2}\). In the second to last equation we set \(x=\frac{k_2}{k_1}\).
Rights and permissions
About this article
Cite this article
Badanidiyuru, A., Dobzinski, S. & Oren, S. Optimization with Demand Oracles. Algorithmica 81, 2244–2269 (2019). https://doi.org/10.1007/s0045301800532x
Received:
Accepted:
Published:
Issue Date:
Keywords
 Submodular optimization
 Demand queries
 Approximation algorithms