{'fraction_non_alphanumeric': 0.04116708270245938, 'fraction_numerical': 0.00634284077423579, 'mean_word_length': 3.9650548557496954, 'pattern_counts': {'":': 0, '<': 4, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 8, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
On the Complexity of Stackelberg Matroid Pricing Problems

In a Stackelberg pricing problem a distinguished player, the leader, chooses prices for a set of items, and one or several other players, the followers, seeks to buy a feasible subset of the items with minimal costs. The leader’s goal is to maximize her revenue, which is determined by the sold items and their prices. We are interested in cases where the followers’ feasible subsets are given by a combinatorial optimization problem. For example, a pricing problem based on the shortest path problem was used by Labbé et al. [15] to model road-toll setting scenarios. In this paper, we consider Stackelberg pricing problems that are based on matroids. The followers seek to buy a subset that is a basis. More specifically, we consider uniform, partition and laminar matroids. We study the complexity of computing leader-optimal prices for a single and multiple followers. We show that optimal prices can be computed in polynomial time for all three matroids if there is one follower. In general, such pricing problems based on matroids are APX-hard (see [11]). For multiple followers, we show that computing optimal prices for uniform matroids can be done in polynomial time. However, for partition and laminar matroids the pricing problem becomes NP-hard .


Introduction
We study pricing problems in a game-theoretic model known as Stackelberg games or Stackelberg pricing problems. In this model, one player, the leader, chooses prices for a number of items and one or several other players, the followers, are interested in buying subsets of the items. The followers buy subsets that minimize their expenses subject to some constraints while the leader's goal is to maximize her revenue, which is determined by the sold items and their prices. We are interested in the complexity of computing leader-optimal prices depending on the constraints of the followers.
One line of research studies Stackelberg pricing problems where the followers' constraints are given by a combinatorial optimization problem. A well-motivated example of such a pricing problem was introduced by Labbé et al. [15] to compute optimal road-tolls: A road network is modeled by a graph where the edges have costs that have to be paid when traveling along an edge. A subset of the roads or edges belongs to the leader and she can charge a toll which increases their costs. Each follower is given by two nodes s and t in the graph and chooses a minimalcost path connecting s and t. The leader gains revenue in the amount of paid tolls. When deciding on the tolls, the leader has to make to following consideration: On the one hand, low tolls might fail to produce maximum revenue. On the other hand, a large toll might cause the followers to avoid a road entirely resulting in zero revenue. Since the followers "buy" a shortest path, this variant is called Stackelberg shortest path.
Stackelberg minimum spanning tree was analyzed by Cardinal et al. and Bilò et al. [3,11,12]. The followers are again interested in subsets of a graph's edges, but the subsets have to form a spanning tree. This setting has applications, for example, when an internet service provider wants to connect hubs in a network. The leader charges additional costs for some of the edges and collects revenue if they are used by a follower (internet service provider). Moreover, Stackelberg interval scheduling models situations where the leader pays the follower to execute a set of jobs. The leader makes'make or buy'-type decisions (see [6]).
Intuitively, the complexity of the pricing problem depends on the complexity of the followers' optimization problem. Stackelberg shortest path is hard to approximate within a factor of less than 2 (see Briest et al. [7]) and Stackelberg minimum spanning tree was shown to be APX-hard. However, Stackelberg interval scheduling is solvable in polynomial time.
Our Results. We study Stackelberg pricing problems that are based on matroids. A matroid is a family of subsets over a ground set that is subject to a set of constraints. The constraints are a bit technical and we spare them for the next section. As an example, for a matroid, we can think of the subsets of a graph's edges that are acyclic. This matroid is called the graphic matroid. The inclusion-wise maximal subsets of a matroid are its bases. If the elements of the ground set are associated with weights, then a minimal weight basis can be computed by the greedy algorithm. The minimal weight bases of a graphic matroid are the minimum weight spanning trees of the associated graph.
For a Stackelberg pricing problem based on a matroid, the ground set is partitioned into two blocks. One block contains items 1 that have fixed-costs. Think of these fixed-cost items as being offered by the leader's competitors. The second block contains the priceable items for which the leader chooses prices. Each follower comes equipped with a matroid over the ground set and is interested in buying a minimum weight basis. The weight of an item is either its fixedcost or its price. Given prices, the decision which subset a follower buys can be computed by the greedy algorithm. If a follower buys a basis, the leader gains revenue for each contained priceable item in the amount of its price. The leader's goal is to maximize her revenue.
Finding a minimum weight basis of a matroid can be regarded as a rather simple problem since it can be done with the greedy algorithm. Therefore, it is surprising that the pricing problem based on the graphic matroid, Stackelberg minimum spanning tree, is APX-hard. To find cases that can be solved in polynomial time, we have to resort to even simpler matroids.
We study three different classes of matroids in two scenarios. For the simpler scenario, we assume that there is a single follower. Note that this scenario was studied in most of the literature on Stackelberg pricing problems so far. For the second scenario, there are multiple followers which implies a few questions regarding the availability of items and coordination between followers. We assume that the items are available in unlimited supply which makes coordination between the followers unnecessary. The leader sets one price for each item that is valid for all the followers.
The first class are uniform matroids. Here, followers are interested in buying a set of items that has a given size. Different followers may come with different sizes. There is no additional structure on the items and a follower buys a subset of his given size with minimum total weight. We show that leader-optimal prices can be computed in polynomial time for a single and the multiple followers. While the single follower scenario is quite simple, the multiple followers scenario requires a dynamic programming approach.
Second, we consider partition matroids which generalize uniform matroids. A follower is associated with a partition of the ground set into blocks. For each block, the follower buys a subset of a given size. Different followers may be associated with different partitions and sizes. We show that computing leaderoptimal prices for a single follower can be done in polynomial time. For the multiple followers, this computational task is NP-hard. The third class are laminar matroids which generalize partition matroids. A laminar matroid is based on a hierarchical family of subsets of the ground set, i.e., two subsets of the family are either disjoint or one is contained in the other. Such a hierarchical family is also called a laminar family. For each of the subsets of the laminar family, a follower has an upper bound on the number of items that he wants to buy from this subset. Finding leader-optimal prices has the same complexity for laminar matroids as it has for partition matroids. Table 1 summarizes our results. The organization of the paper is as follows. In the next section, we give a more careful definition of matroids and Stackelberg pricing problems. In Sects. 3 and 4, we show how to solve Stackelberg uniform matroid with multiple followers and Stackelberg laminar matroid with one follower, respectively. Section 5 shows that Stackelberg partition matroid is hard with multiple followers. For the missing proofs, we refer to the full version of the paper. Finally, Sect. 6 discusses directions for future research.
Related Work. Additional literature includes surveys on Stackelberg shortest path by van Hoesel [20] and Labbé and Violin [16]. Roche et al. [18] present an algorithm with logarithmic approximation guarantee. The best lower bound is due to Briest et al. [7] showing approximation hardness within a factor of less than 2. This is an improvement over APX-hardness by Joret [13].
A Stackelberg shortest path tree game was studied by Bilo et al. [4] and Cabello [10]. Briest et al. [9] give a polynomial time algorithm for Stackelberg bipartite vertex cover game which was later improved by Baïou and Barahona [1].
Briest et al. [9] give a log(k) approximation algorithm for Stackelberg pricing games where k is the number of items. Independently, a slightly more general result was obtained by Balcan et al. [2]. Their algorithms use a single price strategy which was studied in a more general setting by Böhnlein et al. [5].
Briest et al. [8] study Stackelberg pricing games where the follower is based on a NP-hard optimization problem and runs a known approximation algorithm.

Preliminaries
Stackelberg Pricing Problems. Let E = E f∪ E p be a finite set of items which consists of two blocks E f and E p . E f contains the fixed-cost items and E p contains the priceable items. Let The items in E f have costs given by the function c : We have one leader and followers, for an integer ≥ 1. The leader seeks to sell the items in E p to the followers. But the followers can also buy items in E f paying their costs c. The leader choose prices by specifying a price function p : E p → R. From the followers' perspective, we do not distinguish between priceable and fixed-cost items. Hence, given a price function p, we compose a weight function w : E → R: Each follower i is determined by a family of feasible subsets S i ⊆ 2 E which contains the subsets that he is interested in buying. Given a price function p, the weight of a subset S ∈ S i is defined as The objective of the follower is to buy a feasible subset with minimum total weight which is w * i (p) = min S∈Si w(S, p). A subset S ⊆ E (if bought by a follower) yields revenue for the leader: In case there are several feasible subsets of weight w * i (p), we assume that followers are optimistic and buy a subset that yields maximum revenue for the leader. Hence, follower i buys the following feasible subset: The revenue from follower i is rev(S * i (p)) and the leader's total revenue is The leader's objective is to determine a price function p that maximizes rev(p). A follower's decision is the solution to an optimization problem (given a price function). When the leader decides on the prices, she is aware of the fixed-cost items and their costs as well as the followers' objective functions and feasible subsets, i.e., we are in a full information setting. Moreover, we assume that each follower has a feasible subset that does not contain any priceable items; otherwise, the leader's revenue is unbounded. If there are multiple followers, we assume that items are available in unlimited supply.

stackelberg pricing
Objective: Find prices p : E p → R maximizing rev(p).
Note that stackelberg pricing captures the problems mentioned in the introduction.
Matroids. Given a ground set E, a family of subsets S ⊂ 2 E is a matroid if it satisfies the following conditions: Matroids are a well-studied combinatorial structure (cf. [17]). The bases of a matroid S are its inclusion-wise maximal elements. For example, the acyclic subsets of the edges of a graph G form a matroid. It is called the graphic matroid and its bases are the spanning forests of G.
Given weights w : E → R on the ground sets, a minimum weight basis B can be computed using a greedy algorithm: To compute B, we (starting with B = ∅) consider the elements of E sorted by their weights in non-decreasing order and add an element e to B if B ∪ e ∈ S.
Stackelberg Matroid is an instance of stackelberg pricing where followers are given by a matroid and buy a minimum weight basis. Cardinal et al. [11] show that stackelberg pricing based on the graphic matroid is APX-hard. Theorem 2.1 (Cardinal et al. [11]). stackelberg matroid with one follower is APX-hard.
Cardinal et al. observe that an optimal price function uses only values that appear as fixed-costs in c. Given an instance of stackelberg matroid and a price function p, then E = {e 1 , . . . , e m+n } are the elements of E sorted nondecreasingly by their weights w. If w(e j ) = w(e i ) where e j ∈ E f and e i ∈ E p , then i < j. Hence, the optimistic follower computes his solution greedily based on this order. If p assigns a price that is not a fixed-cost, increasing this price to the next larger fixed-cost does not change the ordering but increases the leader's revenue. This observation also holds if there are multiple followers. Lemma 2.1 (Cardinal et al. [11]). There is an optimal price function that uses only values of the cost function c.
We close this section with some more notation. Let E f = {g 1 , . . . , g m } be the elements of E f sorted non-decreasingly by their costs. Shorthand, we write c(g i ) = c i for the costs of g i ∈ E f . Similarly, given a price function p, let E p = {h 1 , . . . , h n } be the elements of E p sorted non-decreasingly by their price. Usually, the price function is clear from the context and we write p(h i ) = p i .

Uniform Matroid
In light of Theorem 2.1, we consider an arguably simple class of matroids, namely uniform matroids. Given a ground set E and an integer s ≥ 1, the uniform matroid S (of rank s) contains all subsets of E that have size at most s. Formally, The bases of the uniform matroid are the subsets of size exactly s.

Stackelberg Uniform Matroid with One Follower.
Let the follower be based on a uniform matroid of rank s. Since E has no structure, the follower only cares about the weight of an element. Given a price function p, the follower buys the set S * (p) = {e 1 , . . . , e s }.
With the next lemma we analyze the conditions when the follower buys a fixed number a ∈ N of the priceable items, for a ≤ min{s, n}. Proof. First, assume that |S * (p) ∩ E p | = a. It follows that |S * (p) ∩ E f | = s − a, g s−a+1 ∈ S * (p), g s−a ∈ S * (p), and that h a ∈ S * (p). Hence, we must have that p a ≤ c s−a+1 and c s−a < p a+1 . Now, assume that p a ≤ c s−a+1 and c s−a < p a+1 . It follows that |S * (p)∩E p | ≥ a and that To gain maximum revenue when selling a items, the leader chooses the largest prices that satisfy the conditions of Lemma 3.1. It follows that an optimal price function assigns prices c s−a+1 for a many items while the prices of the remaining items must be larger. The revenue of such a price function is a · c s−a+1 , and the maximum revenue rev * can be computed as follows: Böhnlein et al. [5] showed that constant functions are optimal for stackelberg uniform matroid. The second part of Observation 1 follows from Lemma 3.1.
To convince ourselves that an optimal price function does not have to be constant when there are more than one followers, we consider a small example. Assume that there are 4 items with fixed-costs c 1 = 3 and c 2/3/4 = 5 as well as 4 priceable items. We have two followers of rank 1 and 4, respectively. Verify that the constant price functions with values 3 and 5 each yield a revenue of 15. But the price function that assigns prices (3, 5, 5, 5) yields a revenue of 16.
From the small example, we get the intuition that an optimal price function p can have several steps (assuming a non-decreasing ordering of the function's values). To determine these steps or equivalently the step-lengths, we use dynamic programming. We construct an algorithm based on solving elementary cases, in which the leader sells a many priceable items i+1 times and a+b many priceable items i times. The set of all price functions that satisfy these conditions is for a, b ∈ N. With the next lemma we characterize optimal price functions under these conditions.
Proof. Let p ∈ P i a,b be an optimal price function. With Observation 1 we have that p a+1 ≤ . . . ≤ p a+b ≤ c si−(a+b)+1 . Suppose towards a contradiction that p a+1 < c si−(a+b)+1 . But this implies that p a+1 can be increased to c si−(a+b)+1 without changing the followers' decision and increasing the leader's revenue, contradicting that p was optimal.
For i ≤ and a ≤ s i+1 , we compute recursively the maximum revenue that the items h a+1 , . . . , h n can yield under the conditions of P i a,b .
Note that P i a,b can be empty, and for a sound definition max is replaced by sup. For a practical algorithm, we define λ i a,b = −∞ in these cases. Moreover, we set S * +1 = ∅ and s +1 = 0. The main technical feat of this section is the next lemma which derives a recursive formula for λ i a,b .

Lemma 3.4. The leader's maximum revenue can be computed as follows:
max p rev(p) = max b≤min{s ,n} λ 0,b .
The lemmas above imply an algorithm to compute the leader's optimal revenue for stackelberg uniform matroid when there are multiple followers. The running time of the algorithm is of order O( · n 3 ). Hence, the main result of this section is as follows.

Laminar Matroid
We continue with positive results showing that stackelberg matroid based on laminar matroids can be solved in polynomial time if there is only one follower.
Let E be a ground set. Then, F ⊆ 2 E is a laminar family if for all U, V ∈ F, either U ⊆ V , V ⊆ U or U ∩V = ∅. Each element of F has a capacity ϕ : F → N. The laminar matroid S based on F and ϕ is defined as follows Without loss of generality, we assume that E ∈ F. In case E ∈ F, we add E to F and set ϕ(E) = |E| without changing the matroid. Let Observe that laminar families have a hierarchical structure. We can associate a laminar family with a rooted tree where we identify the nodes of the tree with the elements of the laminar family. Set E is the root. The children of a node are its direct subsets and the minimal subsets are leafs.
We say that Observe that F i is again a laminar family on E. Moreover, we define S i to be the laminar matroid based on F i and ϕ| Fi . It holds that S ⊆ S i . Stackelberg Laminar Matroid with One Follower. We are given a ground set E = E f ∪ E p . The follower is determined by a laminar matroid S based on a laminar family F = {M 1 , . . . M s } with a topological order.
To solve the pricing problem, we use a dynamic program whose structure is based on the tree structure of F. First, we compute the optimal revenue for the minimal elements for several configurations. For an inner node of the tree, the optimal revenue is computed based on the configurations of its direct subsets.
Let P = {c(e) : e ∈ E f } be the set of the fixed-costs and P ∞ = P ∪{−∞, ∞}.  For a pair (p, S) ∈ Θ Mi x,Q − ,Q + , S is a minimal weight subset of M i under price function p. Set S has size x and satisfies the capacity constraint of ϕ(M i ). Q − is the weight of maximum weight element of S. Adding an element of M i \ S to S such that the capacity constraints are still met increases the weight of S by at least Q + . Based on Θ Mi x,Q − ,Q + we define λ Mi x,Q − ,Q + as follows: and for a sound definition max is replaced by sup. For a practical algorithm, we set λ Mi x,Q − ,Q + = −∞ for these cases. First, we show that if we indeed know all the values of λ Mi x,Q − ,Q + , we can compute the optimal revenue. Note that each basis of a matroid has the same size and that we can compute this size by computing a basis for any price function.
Our dynamic program computes all values λ Mi x,Q − ,Q + in reverse order of the topological order. First, we derive a direct formula for the minimal elements of F. Second, we derive a recursive formula for the non-minimal elements of F.
We define the set S Mi x,p to contain the x items of M i with the smallest weight under price function p. The priceable items are preferred in this selection.
The set J Mi x,Q − ,Q + contains the numbers of possible priceable items among the x minimum weight items in M i if their maximum weight item has weight Q − and the item in M i with the x + 1 largest weight has weight Q + . The set J Mi otherwise.
We show how to compute J Mi x,Q − ,Q + only in the full version of the paper. Basically, this can be done by simple routines that inspect the fixed-cost items in M i .
With  {N 1 , N 2 , . . .}. In this case, we add N 1 ∪ N 2 to F and set ϕ(N 1 ∪ N 2 ) = ϕ(N 1 ) + ϕ(N 2 ). Observe that F remains a laminar family. And as such it holds that |F| ≤ 2|E| (cf. [19]). For a family where the direct subsets of an element are at most 2, the running time of applying the recursion takes times of order O((m + n) 2 · n 4 ). Finally, we can compute the maximum revenue according to Lemma 4.1. It follows that stackelberg partition matroid with one follower can be solved in polynomial time since laminar matroids generalize partition matroids.

Partition Matroid
For a ground set E, let A be a partition of E into blocks A 1 , . . . , A s . Moreover, there are capacities ϕ : A → N associated with each block of A. The partition matroid S with respect to A and ϕ contains a subsets of E if its intersection with each block is at most the block's capacity. Formally, In this section, we show that stackelberg partition matroid is computationally hard to solve if there are multiple followers. An instance on a ground set E with ≥ 2 followers is given by partition matroids S 1 , . . . S (each with a possibly different partition and capacities).
It follows that stackelberg laminar matroid with multiple followers is also NP-hard since partition matroids are a special case of laminar matroids.
Proof (incomplete). We consider the decision variant of stackelberg partition matroid where we need to decide if the leader can make more revenue than a given threshold. Our reduction is from the hitting set problem which is known to be NP-complete (cf. [14]). Here, we are given a set T , a value t ∈ N and a family of subsets U = {U 1 , . . . U r } of T . The question is if we can find a hitting set H ⊂ T such that H ∩ U = ∅ for all U ∈ U and |H| ≤ t.
Given an instance of hitting set, we construct an instance of stackelberg partition matroid as follows: -We have E f = {g 1 , g 2 } with costs c(g 1 ) = 1 and c(g 2 ) = 2.
In total, there are 2 · r + n followers. The idea of the construction is that the leader chooses a hitting set H by setting p(h) = 1 if h ∈ H and p(h) = 2 if h ∈ H. We claim that H is indeed a hitting set of size at most t if p yields revenue at least 2r − t + 2n. The leader receives a revenue of 1 from each of the two identical follower if for each U i there exists an priceable item h with p(h) = 1. To gain revenue 2 from a followerF h , the leader has to set p(h) = 2.
To complete the proof, we show (in the full version of the paper) that our stackelberg partition matroid instance admits revenue of at least 2r−t+2n if and only if the hitting set instance has a hitting set of size at most t.
The decision version of stackelberg partition matroid is NP-complete since we can compute the leader's revenue for a given price function and compare it to a threshold. Moreover, our reduction covers several special cases. Note that we used only two different fixed-cost values and that the partition of each follower contains only 2 blocks.

Conclusion and Future Work
We make progress towards the more general question of determining the complexity of a Stackelberg pricing problem depending on the complexity of the underlying (follower) optimization problem. With the uniform matroid we identified a case that is solvable in polynomial time if there are more than one followers. We are not aware of another Stackelberg pricing problems of this kind.
A direction for further research is to consider the multiple followers scenario where the items are available in limited supply. Intuitively, pricing problems become harder in this setting (cf. [2]). Several models on how the followers coordinate themselves can be considered. For example, there might be a fixed order in which followers buy a subset of the available item.