Discrete Optimization
Cost-sharing mechanisms for scheduling under general demand settings

https://doi.org/10.1016/j.ejor.2011.09.030Get rights and content

Abstract

We investigate cost-sharing mechanisms for scheduling cost-sharing games. We assume that the demand is general—that is, each player can be allocated one of several levels of service. We show how to design mechanisms for these games that are weakly group strategyproof, approximately budget-balanced, and approximately efficient, using approximation algorithms for the underlying scheduling problems. We consider scheduling cost-sharing games in single machine, parallel machine, and concurrent open shop environments.

Introduction

In a general demand cost-sharing game, there is a set of customers who is interested in receiving service from a service provider. The customers’ demand for service is general—that is, each customer can receive various levels of service. Each customer has its own private valuation for the various levels of service. In order to determine which customers to serve, the service provider solicits bids from each customer. Based on these bids and the cost of providing service, the service provider determines the level of service it provides each customer, and how the cost of providing this service is shared by the customers—in other words, how much each customer has to pay. The algorithm that the service provider uses to determine these quantities is called a cost-sharing mechanism.

To illustrate, consider the following example, based on a scheduling problem. In this setting, there is a set of customers, each of which has a number of identical jobs it would like to be processed on a single machine. This machine is maintained by a service provider. Here, the level of service that a customer receives corresponds to the number of its jobs processed on the machine. The service provider solicits bids from the customers, and based on these bids and the processing costs, determines how many of each customer’s jobs to process, and the price to charge each customer for processing its jobs.

There has been considerable work on cost-sharing mechanisms, focusing on designing mechanisms with various desirable properties, such as: (i) truthfulness, the idea that it is optimal for each customer to bid its private valuation, (ii) budget-balance, the notion that the service provider recovers the cost of providing the service, and (iii) efficiency, the idea that the total social welfare of the customers is maximized. Most of the work so far has been on binary demand cost-sharing games—that is, when customers either receive one level of service or none at all. For this case, Moulin, 1999, Moulin and Shenker, 2001 proposed a class of cost-sharing mechanisms, known as Moulin mechanisms, and showed that these mechanisms achieve a notion of truthfulness known as group strategyproofness. Several researchers have studied the design of approximately budget-balanced Moulin mechanisms for a variety of cost-sharing games, such as those arising from network design (e.g., Jain and Vazirani, 2001, Archer et al., 2004, Gupta et al., 2007a, Gupta et al., 2007b, Roughgarden and Sundararajan, 2007), facility location (e.g., Pál and Tardos, 2003, Leonardi and Schäfer, 2004, Könemann et al., 2005, Immorlica et al., 2008), and logistics (e.g., Xu and Yang, 2009). Motivated by impossibility results on the existence of simultaneously truthful, budget-balanced, and efficient mechanisms (Green et al., 1976, Roberts, 1979), Roughgarden and Sundararajan (2009) developed an alternate framework to quantify efficiency in cost-sharing mechanisms. Mehta et al. (2009) proposed a generalization of Moulin mechanisms, called acyclic mechanisms, and showed that they achieve a weaker notion of truthfulness known as weak group strategyproofness for cost-sharing games with binary demand, as well as for those with general demand. Brenner and Schäfer (2008b) developed a framework for obtaining approximately budget-balanced and approximately efficient acyclic mechanisms for binary demand cost-sharing games. Brenner and Schäfer (2010) studied cost-sharing mechanisms in an online setting, in which players arrive over time and reveal their characteristics only at the time of arrival.

One type of cost-sharing game that has received a fair amount of attention is the kind that arises from scheduling problems. Like in the illustrative example described above, in a general demand scheduling cost-sharing game, each customer has a number of jobs that it would like to be processed by a set of machines, maintained by a service provider. Each customer requires that its jobs must be processed in a certain order, and the service level that a customer receives corresponds to the number of its jobs that are processed. The service provider’s cost of processing these jobs is given by the optimal value of an associated scheduling problem (e.g., the minimum sum of weighted completion times). Brenner and Schäfer, 2008a, Bleischwitz and Monien, 2009 studied the design of approximately budget-balanced and approximately efficient Moulin mechanisms for binary-demand cost-sharing games arising from various scheduling problems. In addition, Brenner and Schäfer (2008b) applied their framework for approximately budget-balanced and approximately efficient acyclic mechanisms to binary-demand scheduling cost sharing games. Finally, Brenner and Schäfer (2010) investigated cost-sharing mechanisms for scheduling in online settings.

In this work, we study how to design cost-sharing mechanisms for general demand cost-sharing games. We extend the framework of Brenner and Schäfer (2008b) and show how to use an approximation algorithm for the service provider’s underlying optimization problem to obtain an acyclic mechanism that is approximately budget-balanced and approximately efficient (Theorem 3.1, Theorem 3.2). Then, we give acyclic mechanisms for general demand cost-sharing games that arise from a variety of scheduling problems with concave regular sum objectives. This class of objective functions includes the classic total weighted completion time objective. We consider scheduling cost-sharing games in single machine (Theorem 4.3), identical parallel machine (Theorem 4.7), and concurrent open shop environments (Theorem 4.11). We accomplish this by using the framework with a list scheduling algorithm—an algorithm that schedules according to a permutation of the jobs—for each of the underlying scheduling problems. The budget-balance and efficiency guarantees dictated by the framework hold for these mechanisms, as long as the list scheduling algorithm used is compatible with the customers’ service levels: that is, as long as the customers require their jobs be processed in the same order as the list scheduling algorithm.

Section snippets

Preliminaries on general demand cost-sharing games

In this section, we give a brief introduction to general demand cost-sharing games and cost-sharing mechanisms as studied and presented by Mehta et al. (2009).

Consider a setting with a service provider and a universe U = {1, 2,  , n} of players. Every player i  U is interested in a set of services {1, 2,  , Ri} where Ri is the publicly known maximum service level of player i. These services are ordered so that player i has to obtain all the services {1, 2,   , j  1} before obtaining service j. Hence, the set

General demand singleton mechanisms

In this section, we extend the singleton mechanism framework for binary demand cost-sharing games by Brenner and Schäfer (2008b) to general demand cost-sharing games.

A singleton offer function is an offer function τ such that for any allocation SA,

  • (a)

    τ(i, j, S) < τ(k, ℓ, S) or τ(i, j, S) > τ(k, ℓ, S) for all (i, j), (k, ℓ)  S such that (i, j)  (k,ℓ);

  • (b)

    for any fixed i, τ(i, j, S) is increasing in j.

In other words, τ induces a unique permutation of the (player, service level) pairs in any allocation SA. Note that for

General demand scheduling cost-sharing games

In this section, we apply the framework in the previous section to establish cost-sharing mechanisms for the following general demand scheduling cost-sharing games that arise from well-studied scheduling problems.

  • Single machine environment. Each player i  U has a set of jobs {1, 2,  , Ri} to be processed on a single machine. We alternately refer to player i’s jth job as job (i, j). The jobs {1, 2,  , Ri} correspond to the service levels for player i: if job (i, j) is processed, then jobs (i, 1),  (i, 2),  , (

Conclusion

In this work, we studied cost-sharing mechanisms for general demand cost-sharing games. In particular, we extended the singleton mechanism framework of Brenner and Schäfer (2008b) for binary demand cost-sharing games to general demand cost-sharing games, by showing how to use an approximation algorithm for the underlying optimization problem of a cost-sharing game to design an acyclic mechanism that is approximately budget-balanced and approximately efficient. We applied this framework to

Acknowledgments

The authors thank two anonymous referees for their helpful feedback, which improved this paper considerably.

References (28)

  • J.A. Brenner et al.

    Singleton Acyclic Mechanisms and their Applications to Scheduling Problems

  • J.A. Brenner et al.

    Online Cooperative Cost Sharing

  • W.L. Eastman et al.

    Bounds for the optimal scheduling of n jobs on m processors

    (1964)
  • A. Gupta et al.

    An efficient cost-sharing mechanism for the prize-collecting steiner forest problem

  • View full text